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

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

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.3.0rc1-cp311-cp311-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.11 Windows x86-64

arcticdb-4.3.0rc1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-4.3.0rc1-cp310-cp310-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-4.3.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-4.3.0rc1-cp39-cp39-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-4.3.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.7 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-4.3.0rc1-cp38-cp38-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-4.3.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

arcticdb-4.3.0rc1-cp37-cp37m-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-4.3.0rc1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.8 MB view details)

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

arcticdb-4.3.0rc1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.8 MB view details)

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

File details

Details for the file arcticdb-4.3.0rc1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ef0595fa8a821c7b89d8316a3d14b7676f6ad6e97c7870f7fd4160d47878c706
MD5 835a681a76f8fc9c9bd7e7f191a945d6
BLAKE2b-256 198c00f6d613ee8327a7cc766c27410eb23df5b665f819f8b46b4f14f6d1a3cf

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5340ec654717ed5b7f51df270c822bb79c7f3ad706f49919d38651f9b0201da1
MD5 834f2267d49f7a9069d11f6252e950c5
BLAKE2b-256 fca3366a10492b971ade2cb174582bc48bff30019c9674960447022b5676332f

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1f70a21c1722a8a7d30148647646717cc8023b57fce90329ad62622434a9b73e
MD5 23f2f242bef409a1f5690e854082991e
BLAKE2b-256 d2fd8380c8d128bf7dd0806930f355b11c333dfbcac05aceb2a8f7464a9d8c57

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3f4ae9fa59314be5433db064457cb9e61ef078f0624f97546f0e130ae8712b59
MD5 dd8e7b2fddc30ba5eed5d45a51af62ba
BLAKE2b-256 66db91aae97ad18f040182d7ac3742247695abd87ac415fd52ffa50becd86daa

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 77907ed6c67900268cd6ebf4af351897247ab8a5dd912b9c355059e1e727c91f
MD5 b3b3359855ec4ef655581ea3a6df5555
BLAKE2b-256 8a9bd4daaf6a89e388ee144088cc5f753e57903f130ab44b031450fdad91c4ad

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6539a7df8b4a36dd8345414dc320dab94f36ad91f5c9c5bb226a9b5d2904354f
MD5 d51ebf54c2774148f6209e6f5355e31e
BLAKE2b-256 e5ee54bcefc5850ad105db6ec7af900ecd3eb3b613ffea7877d0698027d926b4

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 78233c044693feb5bfc6d978f0aef2ca074848eab8e1e17951282733bdd353fd
MD5 332cbd5e985b398fec7a69d7b9213704
BLAKE2b-256 67979034aaf92a141aad13bb74cb08d812207041c31c96443694ec659fcea01e

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b3b728ef99008b88f4a9cf73b6f708c270d8ad654beb6f00f1e32041fe46e963
MD5 544011acabf467c32524bc6b4e21eaac
BLAKE2b-256 982be9615a5e656ab142851d3cdd95017db6e47481875c4726a980c815c2a6fa

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.0rc1-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 d4f840c2f24f1948c2d272e981327db03e8b982d310991be3813d77651f02bdd
MD5 c8d18225a3add30a43b6863b4d9e2690
BLAKE2b-256 4b182638fdce0421b060e8f6ae0bc7f96964046e73d36dca2362472661895cc5

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cc20a1374180b39a700238b92415f9e4aa0933e36c52e7ecd4f70b2aa59d94ac
MD5 7c7541372948cbedadabc8e4736ba09e
BLAKE2b-256 0252ac0a8d23bed3854996be1703913e73d47df9bb895ea0c46658c53a430a7f

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7d468e00f913dccd3e6228cfdd397b83582c9e8c210087d485be08860f94a0f8
MD5 6d7e83d97208121c8bbdae3ac56772aa
BLAKE2b-256 c0ad04c3dc01bca230449ee63d291ac39019b23482925f0f9c5e5f88e121dc5d

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