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.1.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.1-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for bclearer_interop_services-0.12.1.tar.gz
Algorithm Hash digest
SHA256 e53029171854c8b3870813e52a356cbae1964537f6b304ed91e157b902932b6d
MD5 2b6bc27589d9818ba18376af70fa9e64
BLAKE2b-256 1723436b2c74764ace01993db15f3f37d4bc04eb656d4070aa035b1430adb0e0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bclearer_interop_services-0.12.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3b8424cd35e7c3f08e61a0ec1c3da117dcd85612744dbaab7db27f6cae0888a5
MD5 33421a2d8139dcf061c44a9a4af726b4
BLAKE2b-256 a58b7f15657730570b9ffe624fc40bbe12ed59968a9a78ac0443be19ec46f1a0

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