Skip to main content

No project description provided

Reason this release was yanked:

AWS Timestream record write bug - use version 1.0.0 or higher.

Project description

Ebb Time Series

EbbCarbon package for working with time series data and databases. Time series data is a type of data that is collected over certain time intervals and is used to analyze trends, patterns, and behavior over time. This ebb-time-series package is built to be used in tandem with the ebb-events package to assist in the flow of time series data from event messages to various time series databases and and to read from various time series databases to export and analyze the data.

For writing to time series databases: Once an event is consumed off of a message broker, use this package to write the event's data to your desired database for storage and further analysis. The combined use of these two EbbCarbon packages will enable you to streamline your data pipeline from edge node all the way to the cloud. NOTE: In order to use this package, the event writers expect to receive ebb-event EventConsumer objects with payloads of the ebb-event structure.

For reading and exporting from time series databases: TBD...

Use:

Install the ebb-time-series package from pip installer via: pip install ebb-time-series. Use ebb-time-series to write your event message data to a database.

from ebb_time_series.writers.aws_timestream_data_writer import AwsTimestreamDataWriter
from ebb_events.consumers.event_consumer import EventConsumer

my_ebb_event_payload = {...}  # payload matching ebb-event structure from message broker
my_consumer = EventConsumer(payload=my_ebb_event_payload)
my_writer = AwsTimestreamDataWriter(aws_region="my-aws-region", db_name="my-db-name", table_name="my-table-name")

# Parsing of data in my_consumer is abstracted away in this write_event_records method
try:
    my_writer.write_event_records(consumer=my_consumer)
except EbbTimeSeriesWriteException
    # handle exception here

Data Structure:

The time series writer parses the data in the event payload expecting the data to follow this structure:

{
    "my_variable_1": {
        "value": ___,
        "unites": ___,
    },
    "my_variable_2": {
        "value": ___,
        "unites": ___,
    },
    "my_variable_3": {
        "value": ___,
        "unites": ___,
    },
    ...
}

Release new version to PyPI:

In order to release a new version to PyPI, run the following command pre-merging of PR:

  1. poetry version patch/minor/major
  2. poetry build

Once the PR is approved and merged. Checkout main, pull the latest, and run:

  1. poetry publish

Check that your new release was successfully pushed to PyPI here!

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

ebb_time_series-0.5.5.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

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

ebb_time_series-0.5.5-py3-none-any.whl (10.4 kB view details)

Uploaded Python 3

File details

Details for the file ebb_time_series-0.5.5.tar.gz.

File metadata

  • Download URL: ebb_time_series-0.5.5.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.12 Darwin/24.6.0

File hashes

Hashes for ebb_time_series-0.5.5.tar.gz
Algorithm Hash digest
SHA256 ead0e6af0f8511ec81457bc0c438b92910ce87642c88d9c8d3efb1288e985a2a
MD5 ddb70a969606fa7b0fab461f496ef0dd
BLAKE2b-256 53e16af7bcc36e20d1d40bfcae3e60de94eed0b4f8b9e5cc49e72e6ecc8b3f43

See more details on using hashes here.

File details

Details for the file ebb_time_series-0.5.5-py3-none-any.whl.

File metadata

  • Download URL: ebb_time_series-0.5.5-py3-none-any.whl
  • Upload date:
  • Size: 10.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.12 Darwin/24.6.0

File hashes

Hashes for ebb_time_series-0.5.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3aca1a3628ee5f414a8450aac9959ccf9a2e3a272477acc8a29dbd99e925dbad
MD5 8a2ef513adfd27b3d2476e265d3f0a32
BLAKE2b-256 b8071e648102132c2a28cfbf503eac8b9ed14dfbd5347ed0dc5e6e831187d076

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