Skip to main content

ArcticDB DataFrame Database

Project description



ArcticDB Website | 📘 ArcticDB Docs | 📰: 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 (Intel/AMD) ✔️ ✔️
Windows (Intel/AMD) ✔️
MacOS Beta️

For conda-forge see the release-info.

Storage compatibility

Linux Windows Mac
S3 ✔️ ✔️ ✔️
LMDB ✔️ ✔️ ✔️
Azure Blob Storage ✔️ ✔️

We have tested against the following S3 backends:

  • AWS S3
  • Ceph
  • MinIO on Linux
  • Pure Storage S3
  • Scality S3
  • VAST Data S3

Installation

Install ArcticDB:

$ pip install arcticdb

or using conda-forge

$ conda install -c conda-forge arcticdb

Import ArcticDB:

>>> import arcticdb as adb

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

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

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

Or create an instance on your local disk:

>>> ac = adb.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
4.0 Business Source License 1.1 Sep 27, 2025
4.1 Business Source License 1.1 Nov 1, 2025
4.2 Business Source License 1.1 Nov 12, 2025
4.3 Business Source License 1.1 Feb 7, 2026
4.4 Business Source License 1.1 Apr 5, 2026

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.5.1rc4-cp311-cp311-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.11 Windows x86-64

arcticdb-4.5.1rc4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.1rc4-cp310-cp310-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-4.5.1rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.2 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.1rc4-cp39-cp39-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-4.5.1rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.1rc4-cp38-cp38-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-4.5.1rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.1rc4-cp37-cp37m-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-4.5.1rc4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.3 MB view details)

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

arcticdb-4.5.1rc4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.3 MB view details)

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

File details

Details for the file arcticdb-4.5.1rc4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 df5cd965a58d2014e2955e3e04567a2f22051190186fec7c9b0869f36dcef208
MD5 4ba09f5f98b95de65bec35f2ba35297a
BLAKE2b-256 4f58defbfa108c2b0995d3a29e06f5358f202515297fbf4c7ff7127379abcc07

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a116164f792e215d08bd34a6c56a808604e9fdafdc8d937f47ea7db7dadb2295
MD5 da136fe899ae4cc46fad3f0787381d60
BLAKE2b-256 83f7a06eb82753dcd703089066c28dfb603034f7a0c34688a29574ba8d572f79

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 790af389ab6a9caf4b095b8aafde5703e7ebedc4aa946b0a7646cf8cf1491216
MD5 d2331d515b8e3a547ef2170257ea288d
BLAKE2b-256 5428c29bd30c529b2a8b631632243dee5f5fd1003638e227cebd6cfc5c133b28

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7706f2c834e6ace44e757f024fa11e355d28f14d7fbdb6169dae50339613eba6
MD5 1917d329d0f80edd224e7201be63a84c
BLAKE2b-256 799d333c2885b0c5f8961adc0eda5bab91fc5b9ab2ecffb9495e19214a86ebfa

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4b63fcbd70f1083b24f2a84bd9c6c25672284fd5eb0e572e9a00bc1e73721a30
MD5 3233f09b486223f75a16a96593754c89
BLAKE2b-256 903f5bfb153c72639b0728491de0b21c0a983f045b3c5fe337737a61912c9b1b

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 facfabbbe35c898bc23e1a18987141dfbc35040facc3f9798af483376ae88f6d
MD5 7f4be77784ca14e77b1b492b648de52f
BLAKE2b-256 7307823a2be83944eeb947b25eeace2fabf9f04b989847689c151be9f39f5545

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d1a2e8792623dca4a58fbe77bd2b88b27105a863e546b80772d09dbccbf2f35f
MD5 0dcf7ad8f407feeb195afc054ca75312
BLAKE2b-256 22761eebb033409abff66f22d9c965b6a885196ff153449647c4cee9be2b6041

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 627410dab9eb339b881c9cdaa83a52e7127c0c61198c6869352302e9a8fb3679
MD5 b7687fc6c9a738189a481a569569dd51
BLAKE2b-256 df754ae6ed28d8ac2a55a709ea13634c9add088273d58c86e809666b36cce022

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 685c0559b003b8604e115d98fa2aac16d13b4584f15face9651b2360f7fa5946
MD5 13c6ac3f89b75f0bc951b9270d7e447f
BLAKE2b-256 e50e9ecadb059adfbb79884efdba90fcda517bed031ede6adf19e0ff29aa00e4

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 206244fb2d5581fb67d7e41151cbe16702582261a48546f0b7317cf087b12137
MD5 19d6cf23f4aa45e21964c6071c4b4798
BLAKE2b-256 2a60a65b7d10fb71ab7f70c1f944b3d2d356a41b37a63468d9d8bbf99382bb21

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.1rc4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.1rc4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 61a577e5cb0885ef1ad762a958eaae295c60519ba5061750190bd16f73272b8d
MD5 a12e0eda7a35151067251f38e3508012
BLAKE2b-256 e2e5aa0240b0d464814a5af2a4d9d5974a457b847b7a9e88030a41c7f774be57

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