Skip to main content

ArcticDB DataFrame Database

Project description



ArcticDB Website | ArcticDB Blog | Press Release | Press Release | Community


ArcticDB is a high performance, serverless DataFrame database built for the Python Data Science ecosystem. Launched in March 2023, it is the successor to Arctic.

ArcticDB offers an intuitive Python-centric API enabling you to read and write Pandas DataFrames to S3 or LMDB utilising a fast C++ data-processing and compression engine.

ArcticDB allows you to:

  • Pandas in, Pandas out: Read and write Pandas DataFrames, NumPy arrays and native types to S3 and LMDB without leaving Python.
  • Built for time-series data: Efficiently index and query time-series data across billions of rows
  • Time travel: Travel back in time to see previous versions of your data and create customizable snapshots of the database
  • Schemaless Database: Append, update and modify data without being constrained by the existing schema
  • Optimised for streaming data: Built in support for efficient sparse data storage
  • Powerful processing: Filter, aggregate and create new columns on-the-fly with a Pandas-like syntax
  • C++ efficiency: Accelerate analytics though concurrency in the C++ data-processing engine

ArcticDB handles data that is big in both row count and column count, so a 20-year history of more than 400,000 unique securities can be stored in a single symbol. Each symbol is maintained as a separate entity with no shared data which means ArcticDB can scale horizontally across symbols, maximising the performance potential of your compute, storage and network.

ArcticDB is designed from the outset to be resilient; there is no single point of failure, and persistent data structures in the storage mean that once a version of a symbol has been written, it can never be corrupted by subsequent updates. Pulling compressed data directly from storage to the client means that there is no server to overload, so your data is always available when you need it.

Quickstart

Prebuilt binary availability

PyPI (Python 3.6 - 3.11) conda-forge (Python 3.8 - 3.11)
Linux ✔️ ✔️
Windows Beta
MacOS (Apple Silicon) ✔️

Storage compatibility

PyPI conda-forge
S3 ✔️ ✔️
LMDB ✔️ ✔️
Azure Blob Storage ✔️ ✔️

Installation

Install ArcticDB:

$ pip install arcticdb

or using conda-forge

$ conda install -c conda-forge arcticdb

Import ArcticDB:

>>> from arcticdb import Arctic

Create an instance on your S3 storage (with or without explicit credentials):

# Leave AWS to derive credential information
>>> ac = Arctic('s3://MY_ENDPOINT:MY_BUCKET?aws_auth=true')

# Manually specify creds
>>> ac = Arctic('s3://MY_ENDPOINT:MY_BUCKET?region=YOUR_REGION&access=ABCD&secret=DCBA')

Or create an instance on your local disk:

>>> ac = Arctic("lmdb:///<path>")

Create your first library and list the libraries in the instance:

>>> ac.create_library('travel_data')
>>> ac.list_libraries()

Create a test dataframe:

>>> import numpy as np
>>> import pandas as pd
>>> NUM_COLUMNS=10
>>> NUM_ROWS=100_000
>>> df = pd.DataFrame(np.random.randint(0,100,size=(NUM_ROWS, NUM_COLUMNS)), columns=[f"COL_{i}" for i in range(NUM_COLUMNS)], index=pd.date_range('2000', periods=NUM_ROWS, freq='h'))

Get the library, write some data to it, and read it back:

>>> lib = ac['travel_data']
>>> lib.write("my_data", df)
>>> data = lib.read("my_data")

To find out more about working with data, visit our docs


Documentation

The source code for the ArcticDB docs are located in the docs folder, and are hosted at docs.arcticdb.io.

License

ArcticDB is released under a Business Source License 1.1 (BSL)

BSL features are free to use and the source code is available, but users may not use ArcticDB for production use or for a Database Service, without agreement with Man Group Operations Limited.

Use of ArcticDB in production or for a Database Service requires a paid for license from Man Group Operations Limited and is licensed under the ArcticDB Software License Agreement. For more information please contact arcticdb@man.com.

The BSL is not certified as an open-source license, but most of the Open Source Initiative (OSI) criteria are met. Please see version conversion dates in the below table:

ArcticDB Version License Converts to Apache 2.0
1.0 Business Source License 1.1 Mar 16, 2025
1.2 Business Source License 1.1 May 22, 2025
1.3 Business Source License 1.1 Jun 9, 2025
1.4 Business Source License 1.1 Jun 23, 2025
1.5 Business Source License 1.1 Jul 11, 2025
1.6 Business Source License 1.1 Jul 25, 2025
2.0 Business Source License 1.1 Aug 29, 2025
3.0 Business Source License 1.1 Sep 13, 2025

Code of Conduct

Code of Conduct

This project has adopted a Code of Conduct. If you have any concerns about the Code, or behaviour that you have experienced in the project, please contact us at arcticdb@man.com.

Contributing/Building From Source

We welcome your contributions to help us improve and extend this project!

Please refer to the Contributing page and feel free to open issues on GitHub.

We are also always looking for feedback from our dedicated community! If you have used ArcticDB please let us know, we would love to hear about your experience!

Our release process is documented here.

Community

We would love to hear how your ArcticDB journey evolves, email us at arcticdb@man.com or come chat to us on Twitter!

Interested in learning more about ArcticDB? Head over to our blog!

Do you have any questions or issues? Chat to us and other users through our dedicated Slack Workspace - sign up for Slack access on our website.

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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

arcticdb-4.0.0rc0-cp311-cp311-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.11 Windows x86-64

arcticdb-4.0.0rc0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-4.0.0rc0-cp310-cp310-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-4.0.0rc0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-4.0.0rc0-cp39-cp39-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-4.0.0rc0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-4.0.0rc0-cp38-cp38-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-4.0.0rc0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

arcticdb-4.0.0rc0-cp37-cp37m-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-4.0.0rc0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

arcticdb-4.0.0rc0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

File details

Details for the file arcticdb-4.0.0rc0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f14c55d565df4af3f3a96bc054cb9384f3c2df063fad11df1c5313a32627431a
MD5 ee1cd2ebcf536a2fb56c622fc07fae00
BLAKE2b-256 dc0c960f036d620f6d91f23e1d86df7f6d79d382eaf130af77a6e914d2b0e51a

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5d050a2c390c79ef080e654ce2fe4138c88d6a5b6f80fb6bbb66a26fb4d3be0d
MD5 05fbaca0ace7e2b8d6a5543e78edbd03
BLAKE2b-256 5537edeb1b13ffb9bdab72105a44041e05053fecbbc7b408e069aff87099b676

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 418e0c6cf3965341213e38e30ad9cc3600398380001c161d4a5a577e8fde9876
MD5 c895d6a0e96218359eba844d67e452a4
BLAKE2b-256 a94836ddb42171c7c0cd7993587f22365af48a4a83245af008cd36e30c445436

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c8ef95558845e6a431e2d216d36f347b6c31ffec01fcc70f18a1a3e29b6d5cc5
MD5 fce11d0fc56c21939740052f7a1d0fe4
BLAKE2b-256 7c32cb09a4df79ea9b8c9eaf44c655067bd3e86fb21c4cad394745f894b5c56c

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 082cd6ed0e24962267f29c5fad515b300dc144451df28b3ffa5978fed47e24e1
MD5 c45b99cda9832fa1f13d386e3d9dfd4a
BLAKE2b-256 6255ea0269f6bc07d52958ce56db0e5b1a5932f61529b1bcad616d1273138534

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a78436bff43abf17a839cb33926e0b5cb3ff028d1e06bc3f61594d6b9fa31bc2
MD5 a4ff725dad8d49acd863242bb65e401e
BLAKE2b-256 31f5c96bc91e018971c8a99118211955c812c17ccda28a54cbba088cf459da4c

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 33d0acfa8d6babf18575a397b831574cf5b2464dffc51a7f6489351bd0aaed6d
MD5 d72e7641440c2695ec491f73c094cd22
BLAKE2b-256 2ecd55e11fe76d1009b37f142aac980081503701e7a553a2ed681bf7635fd9de

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 38a9d01e6e7b742cc75b3225e3b0234bef24ba1248de19256db7908ee03cd1da
MD5 7cda0137a159a4169e23c85381d98b0a
BLAKE2b-256 3fd3de63ace6b50cc4d281ee9a5691be131b7011bc16a0ee8f44d9cb750d9a44

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 813a8e0d69cd93d9359a85dce6102c2f2bdc75bc75c0a194ac90f5905c90b40e
MD5 788157151cbd52476c56f18e13c5aa16
BLAKE2b-256 cc1688483076d155a71edca752944e7fd57a5dc2f7c2c12dfd1de80841ff5ea1

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cbfe58962a01bdb039b771050dbd852344fe85b133e254a51ae646be50b38513
MD5 5fc893b6fe7577936a3578997f356898
BLAKE2b-256 0d8c057c7aab17200d561acc6eace0298fa7cc5ae4add37c74963016e1ad9b6c

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.0.0rc0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.0.0rc0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 738ba79756edbe5ef19f01bcd56a937d33629ead4fc0f3505dbf13004c634491
MD5 63e0f62f7eb79082582ac39276e71ee7
BLAKE2b-256 0a0f56d91bbee8affc3c9cb1ed1f3b402c1d8bc582788bdab1dd5bd49a6da502

See more details on using hashes here.

Provenance

Supported by

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