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 ✔️ Beta ✔️
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
4.0 Business Source License 1.1 Sep 27, 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.1.0rc1-cp311-cp311-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.11 Windows x86-64

arcticdb-4.1.0rc1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-4.1.0rc1-cp310-cp310-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-4.1.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-4.1.0rc1-cp39-cp39-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-4.1.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-4.1.0rc1-cp38-cp38-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-4.1.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

arcticdb-4.1.0rc1-cp37-cp37m-win_amd64.whl (6.6 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-4.1.0rc1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.4 MB view details)

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

arcticdb-4.1.0rc1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.4 MB view details)

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

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f69c353eb41baea3222a80b81fa6c33bac6b6340596f31f75b913098175e5f70
MD5 f3f2d86bc8c73d2cb78770a199cb37b4
BLAKE2b-256 50901f768945dcbdff7fe1231f4a0ee54bd87f3482ca38ecf59c7b888eb9a0b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cb0222eab000daa966df2a60b8aeb471598b068452ccc1f47c9e774491ea749b
MD5 150b6c929e5b7c1adcc619be61ba83f8
BLAKE2b-256 12c6096c9cacccc0edd7ff84f06b83e44c15b7f9f40d51e1191e7c3eac3bc9c4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6e804bde4fb826eda605c12892077e8fa88df132f2f46b1157e8db16f0162ba1
MD5 ac1e6b03be543cb42255ba44e44c8ef2
BLAKE2b-256 5a9e2ef98302b80f4a745910b96694d18b54b9df960dacf8b1e5f26812651fe3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2de827e103614dd94caf6521e3fb820249eba51d0bffdd980eeb3e0ee3f4930d
MD5 a5465cbd1d7204b068059c9897fcbed4
BLAKE2b-256 0dc43264df8a8e3be5833021e089f9080bdaa22dd4ae42c4a7368ad479958ff5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 5aa9d5897a6df753585f59590f55eee037177d7914ef16ae2dc6fbdfd65923b4
MD5 714dc7f44d52d0105086dab56f4ac6a5
BLAKE2b-256 0a354b2ae315c4134c54c784d45e43b9a76177e309effc09136a27b3454c6cfa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aab49b0593ebb706b6494a45b011171ea2502c69b8e25b2d37ab28f81e43e18f
MD5 7522ea2fb4ba49379b145136b9080e21
BLAKE2b-256 3d5df022eb41710c956ee8cc834be8b0026a0e371507c8c03101af07a9562a9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 e4e0a46f635f232e0d3babd51a1f4ff6130f0b05dcc1164c5fe35be127c289b8
MD5 e18488f20bb1f4d9b833430424ded0ac
BLAKE2b-256 22b9554e672b5e9bfc0bdeb8dd1b78e607418bc8b2a98a25e88a049c00ac163e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3d65c0ae3ced509a890071b5ebb5133c78267380abdc4cc2bed09ab962ab78df
MD5 6c14ed32a4ef2765946c06d0a3053889
BLAKE2b-256 4126b0c8525e17bc7452bc74dc79fa4410178a351e21ba9b6da09cf3beac8c75

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 8cf12450f6657dff92ddb6b86791229cb06106383038e51d297b8209b931a64c
MD5 a29223b1ae02916ef9e73e415acdc755
BLAKE2b-256 c23d18995b09ddef78d13f8e53a0250e0ef04872fd48f7f73dea49f5f16c200b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d2d41ba91bf187936a662bc10517b6f5679d06918f7c4334e9817dd3c7af65b7
MD5 1d6c2edbf641f6054c1f3cd56bdedc17
BLAKE2b-256 3ca7edbd18399dba6baf8a5f776a1be48b276d6a360d8e93ead7b5b136758ac0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-4.1.0rc1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c1cd910df896b4d577a357e35611050fae58523676316c7df483e7649de816db
MD5 d8efb3f808f813ec2f20a8d393fd3350
BLAKE2b-256 a354d7c128a0b80ae97534e9bb3b747de89df9907ec1aebd957c7a09280ea3d8

See more details on using hashes here.

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