Skip to main content

"A set of interop services to integrate and transfer data between different applications, model and storage technologies for the bclearer framework."

Project description

bclearer-interop-services

A set of I/O and interop connectors for the bclearer framework. It provides adapters to read and write data between in-memory “universe” representations and a variety of storage, file formats, and application services.

Installation

pip install bclearer-interop-services

Key Features

  • Dictionary Service Convert data to and from generic Python dictionaries (e.g., mapping objects to table dictionaries).
  • DataFrame Service Utilities for standardizing, filtering, merging, and converting Pandas (and PySpark) DataFrames.
  • Delimited Text Read/write CSV and other delimited formats.
  • Excel Services Import/export Excel (.xlsx) files.
  • JSON, XML, HDF5, Parquet Native serializers and readers for common data formats.
  • Relational Database Services Access MS Access, SQLite, and other RDBMS via SQL interfaces.
  • Document Store Services MongoDB and JSON file store support.
  • Graph Services Neo4j connector and network analysis utilities.
  • EA Interop Service COM-based, SQL, and XML import/export for Enterprise Architect models.
  • Session & Orchestration Helpers to manage connections, sessions, and orchestrate multi-step data flows.

Basic Usage

Below is a simple example using the Dictionary and DataFrame services:

from bclearer_interop_services.b_dictionary_service.table_as_dictionary_service import TableAsDictionaryFromCsvFileReader
from bclearer_interop_services.b_dictionary_service.table_as_dictionary_service import TableAsDictionaryToDataFrameConverter

# Read data from a CSV file into a table-as-dictionary
reader = TableAsDictionaryFromCsvFileReader()
table_dict = reader.read('data/example.csv')

# Convert the table-as-dictionary to a Pandas DataFrame
converter = TableAsDictionaryToDataFrameConverter()
df = converter.convert(table_dict)

# Standardize column names and filter rows using the DataFrame service
from bclearer_interop_services.dataframe_service.dataframe_helper import DataFrameHelper

helper = DataFrameHelper()
df = helper.standardize_column_names(df)
df_filtered = df[df['status'] == 'ACTIVE']

Documentation

Full documentation and examples can be found in the GitHub repository.

Licence

This project is licensed under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later). See the LICENSE file for the full text.

Commercial licences are available for organisations that cannot comply with the AGPL's network-use and source-disclosure terms. Contact support@ontoledgy.io for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bclearer_interop_services-0.12.2.tar.gz (1.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bclearer_interop_services-0.12.2-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file bclearer_interop_services-0.12.2.tar.gz.

File metadata

File hashes

Hashes for bclearer_interop_services-0.12.2.tar.gz
Algorithm Hash digest
SHA256 03fefc4f2105da50839146a0cf056cc613ab9a550b777f5cb7f71bddcd729d33
MD5 fa3d547eae8094c3119a80677ec713ee
BLAKE2b-256 1e8376b00239b5b4f1ba895fad84a2ff4a45b9eeade3568bf39ddc70b09c7008

See more details on using hashes here.

File details

Details for the file bclearer_interop_services-0.12.2-py3-none-any.whl.

File metadata

File hashes

Hashes for bclearer_interop_services-0.12.2-py3-none-any.whl
Algorithm Hash digest
SHA256 03c37ecb0f02203d4b94ad32821d894f5296a88fda786120bd400ab04c92cbce
MD5 a9db3c7d2ba5737fd679e3606979b310
BLAKE2b-256 e9fa7fc5705d75b597c43c3aa43de88e2532c8a84413fca5cccb34b3520f43b6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page