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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for bclearer_interop_services-0.12.0.tar.gz
Algorithm Hash digest
SHA256 015e80163309c6a76ff10de7725f4bb514d61c7c853ffa379d5dd16578bbabb2
MD5 f94e22f7469c3b6f25dff81948688137
BLAKE2b-256 e849b4256e6b743409836bdd998eae9d9d9250a53242ace58f49e8f3a06675ae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bclearer_interop_services-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 18c7edf65fc5d5277e783b3d80860c9997e474221ba0cbcec9689700f8bb3189
MD5 353c55f75b50628a754caad046907fde
BLAKE2b-256 0f3c9371b5e0346d9877206a6eceb339f242a492ee88d60f3a0d103b6edae7d1

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