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 ✔️

Support for Azure Blob Storage in conda-forge is tracked in #519.

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

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

This version

1.6.2

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-1.6.2-cp311-cp311-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.11 Windows x86-64

arcticdb-1.6.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.9 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-1.6.2-cp310-cp310-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-1.6.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-1.6.2-cp39-cp39-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-1.6.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.9 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-1.6.2-cp38-cp38-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-1.6.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.9 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

arcticdb-1.6.2-cp37-cp37m-win_amd64.whl (6.5 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-1.6.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.0 MB view details)

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

arcticdb-1.6.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.0 MB view details)

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

File details

Details for the file arcticdb-1.6.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9a2bee092f0be854d7bf9ace5731dba0b3d2aebed30763fdc5151f4791143708
MD5 2d75e36cf264b7b6b9f3588889eeeda1
BLAKE2b-256 b3580f4067cb6ba8274bd084cad2e3a83d2c103f30665bb1cbc34cd80115f43e

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e655436b088deffe8fddf5be7d0f8fc0f0721d9a2b5f673956b54c3c9c674dae
MD5 145c765cbc55d9e10a4409a991eb2594
BLAKE2b-256 52bedd9c459398b429173e4612dedd898031ec7dc0474d5f257eaeadfb1fc73a

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 24404a051f4575721c8321d589be1841bda40f97435c898c01a639c84e470487
MD5 085f2b9763087eed3ebdeee6ab29f785
BLAKE2b-256 0442909b84af23e7d423353ab00bdc81bec451586d8ddb5a8ab9400ae0f81faa

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 096afef138f85447ada71ef44b0237bb161a2ddb3b72e3881042ea3a362ed931
MD5 c35a11e3cc3005c5ad6bca5ca1630f2e
BLAKE2b-256 e95881a1b502c819b677733cbd3c92123af7e3d09edf90fd4d63f89cc1cc728e

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: arcticdb-1.6.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 6.5 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for arcticdb-1.6.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 720d1e7bbabff8a476252172e71fd6e3611194b7649e1f65407bc848f4de444b
MD5 4fd9f0d52a6b38176f0ecd5022a8fed6
BLAKE2b-256 d0ccccc2c5de2e2ffe2c33efa828d8b34d3980be032eb531b6db21fd090369ac

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cc962eced862757c19ed4e611df74beb8cb0cb66a23e39ec49c65fc78098ed26
MD5 c6faa50bfc4d3663a4db237d00afd3d1
BLAKE2b-256 bf8fdd9ee4e5e01fc55997f3fcea8f9d7db6801fd5656dd45ff42c3ddadb623f

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: arcticdb-1.6.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 6.5 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for arcticdb-1.6.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 91fc495d042cde1cb1abc979c7aabac712faac2de6cdaa60f29991c71c21c039
MD5 d5acb5db7a744b9b279a9b7ec104f380
BLAKE2b-256 cf9f11319d4e64225cf9e361aa6263b4aed4ae1bbfb32d1d9fd016341a67f677

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 86ebf983fb5309b1c7a7c63fea29469315c8fc50e66dacde79ae3b313e05ee06
MD5 08bc0ca3353996b63fdc07bc18d7817e
BLAKE2b-256 34906adb86f5bc69db632638b90032321a11e6baaf874fdeca416e580f69a94d

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-1.6.2-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: arcticdb-1.6.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 6.5 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for arcticdb-1.6.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 dc4184b4b20fb52f2992a1237112911f41d69296abaa1346a2ff1356dab04386
MD5 9282b4c499345a6128fc334bdc5ccb2a
BLAKE2b-256 01588f913e7aa3300a3cd22d8b14b5de8165050b08143b64a877b55f4e5082ab

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d39e671657eb69f4ec919e987da53e09732ae100bf02e6fc038f056e61b03622
MD5 47c61cf02dbe7928c5bd5afe2a6a729e
BLAKE2b-256 f854c5e52ca8fe998d4ece9db6a2260abf236ee272a7cc0af07674415bf814d5

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.6.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2746c401a3af22b82eb1052f8cd5baf368c85928792740ad17cda4a84a850891
MD5 f2a0e27acfcef324341173187ca9731e
BLAKE2b-256 f4582d8e56544b8b704430eb565feae050d0ba7d311e582e011a07d5e66ef146

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