Skip to article frontmatterSkip to article content

Integration with Delta Lake

Please refer to Delta Lake if you don’t know what Delta Lake is.

import pfeed as pe

feed = pe.Bybit(use_deltalake=True)
# prepare data definition
product = 'BTC_USDT_PERP'
date = '2025-02-01'
resolution = '1tick'
to_storage = 'local'

Download dataΒΆ

feed.download(
    product,
    start_date=date,
    end_date=date,
    resolution=resolution,
    to_storage=to_storage,
)

Create storage object to get the file pathΒΆ

storage = feed.create_storage(to_storage, product, resolution, date)

Read the Delta TableΒΆ

from deltalake import DeltaTable

dt = DeltaTable(storage.file_path)
print(f"Version: {dt.version()}")
print(f"Files: {dt.files()}")
dt.history()
Version: 1
Files: ['part-00001-fe87dea1-6227-43e9-91d3-962c4a1d2b74-c000.snappy.parquet']
[{'timestamp': 1738511731638, 'operation': 'WRITE', 'operationParameters': {'mode': 'Overwrite'}, 'operationMetrics': {'execution_time_ms': 324, 'num_added_files': 1, 'num_added_rows': 944614, 'num_partitions': 0, 'num_removed_files': 1}, 'clientVersion': 'delta-rs.0.23.1', 'version': 1}, {'timestamp': 1738511616001, 'operation': 'WRITE', 'operationParameters': {'mode': 'Overwrite'}, 'clientVersion': 'delta-rs.0.23.1', 'operationMetrics': {'execution_time_ms': 329, 'num_added_files': 1, 'num_added_rows': 944614, 'num_partitions': 0, 'num_removed_files': 0}, 'version': 0}]