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

Uploaded CPython 3.11 Windows x86-64

arcticdb-4.3.2rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.6 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-4.3.2rc2-cp310-cp310-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-4.3.2rc2-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.2rc2-cp39-cp39-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-4.3.2rc2-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.2rc2-cp38-cp38-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-4.3.2rc2-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.2rc2-cp37-cp37m-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-4.3.2rc2-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.2rc2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.7 MB view details)

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

File details

Details for the file arcticdb-4.3.2rc2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 83969244e3232cc1f8ff7a1edb86e6bc6a6277d226ab49599d56288055dfcd13
MD5 dbb7b3aac3f2557724955d9530bccba4
BLAKE2b-256 4d9c24843cae183cca5bede450906c14b04c3c895f4624de892d98bc8e7bed40

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ad886942a2e0073ae6bf5e740dbf67a68a3d7cec03d38963948550f18733b58
MD5 2b06b7f074148f627a92a2bcbd3c928c
BLAKE2b-256 76c25a9a17b9ce9ac7952ce5a1a5b619887c235ab9c8057264eadc8bef24f3c8

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f57fefebd64dfc345c589d1f5bb9ef58775b6d5aa74b8113cc8fb4d8dbf749b6
MD5 08623c7cb0479138e2a35e90582f757c
BLAKE2b-256 e738f46d98698081bddf224a81b0f437f4ac7e903f2db250dd73e9dc9500bc13

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c2ca81504448da0e3f803b0029d4b12b1f9978c5151bb62b2b2a3ba0a784876c
MD5 f5c0d45ad8434215f3fab58357e8b70e
BLAKE2b-256 a446290cc2d961a95851d503d4b58d2c438c89ed461597b87c76e959a898fcaf

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 a5d8c2dba0f841cb609a47b8a8eb126683539e2c72a68a5c1b002a8bc09231cc
MD5 7619a0b8beb1c4bb1c0272c700757343
BLAKE2b-256 ce39830e78035170413f4b00aa9426763d33957b9b7b872bec88b032d40960e2

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f6bca21693eb4ec5e55412fac190dd20b7001fe7eab8bbde3bf67975c8449239
MD5 f76949d54cc82f1d2cfd355e859b3156
BLAKE2b-256 27e7cd520d89ca2ba2b4accca8bd6d5b9789cdb7e13c57474decda85e745d561

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 bb1b9288fdaae0e8b4335aca2eff1f50f54cc3bb22839648ea2461c1c6380fa8
MD5 4e65fe0f4c8db0de6f0722f29ac19a79
BLAKE2b-256 96f59d1db6a2ef88c23111653138e7633b6160910045774d992c428921b23f66

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3f3201fc9407673ec2ff205b3e31aae2c1f95f5985d4d8edeb632d002923a752
MD5 b6babc34fe4fce7d1f500aa35ae4aa0a
BLAKE2b-256 40ade15270e49a18ab9f8f0cdb7ae0c35e9fe89240a54f75a956b2ad529c4606

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.3.2rc2-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 2592845133b09836c6adbf041ddd593837ce451ddfd418f433a36744270259f4
MD5 96c2f76ee05941e77a9d2dc662c70876
BLAKE2b-256 edbde2c6f05b48b4f48d7077930550f08271ce6081a06e825048b1d409c35c1c

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 654f1a07dfc8912d381b771499ae5695937f871a369ca7619d5d0c27d401c356
MD5 b634445cfab26f349ec9abc15f5f101c
BLAKE2b-256 8b285f3d9a8baed5c738547c719b4a5f4dfc0fc7a721c3cc36747d20e767db94

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.2rc2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0d03df4f7c693faa6221e2ef4dbb97ab54dc189582f01c9d6e42a9f4542dfe77
MD5 05988b764207080d7c96b45f975f50a8
BLAKE2b-256 cf1b1c3ceb26704df964344188caeb69b415ebb787bbae29266869cdf273c5f1

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