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

Uploaded CPython 3.11 Windows x86-64

arcticdb-4.3.0rc2-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.0rc2-cp310-cp310-win_amd64.whl (7.0 MB view details)

Uploaded CPython 3.10 Windows x86-64

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

Uploaded CPython 3.9 Windows x86-64

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

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.7m Windows x86-64

arcticdb-4.3.0rc2-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.0rc2-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.0rc2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 eabd625897e04e2ea95dff1a9d16720d31eea049eb6c83613ea69152f2253569
MD5 b430338eaf3139cb5bbc711634c4c070
BLAKE2b-256 f019e73e60b609fbcec94151c8bbd5675184c66f7ee3cd20d6727e250ff7780f

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 45f99b0dcf509e48c9f902b91e11f6aada787b0db78d9de895238c475780dca3
MD5 06cf84d23ec77827b473699a69136114
BLAKE2b-256 8f7adad257d22a110a974ee7002c99975ee70190d37c61da87a36b56661b7083

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 fbce2ece293ce79b777380d7d1ce4196c5fe7b4168fa7a77ba3d10678f608f13
MD5 20d95a34d5563d2de8f1e1ba958a213f
BLAKE2b-256 1355da453e02111bfb9c0095c520254a75b43a0da8998e48d16b53f50ae024ff

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 81b71022896c44ab175dc2622935dc9da2ea9b9c478ae9ce814debc8007daf49
MD5 8c85e085f38c4fefb9de0fb8e0798644
BLAKE2b-256 7e91cecf3867632a2cb52169b0593dfcee0fdeaebe6aed47514adec7baed58bc

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 7af1addd0b1a17e1a6c5203666819b2f838706ec6c0e1d75938c112c0b921688
MD5 674e083976cc6d46402ba529e99d30b9
BLAKE2b-256 7f2d3a57632927a06fa65417a4b1be00818049bac7b8c588aeee058760976d3f

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e3d26c24ad101ef30da6137c0fc020b360439cc993506554eb22d935903653f6
MD5 7357670f8d5724e1c7b7951cf7184c25
BLAKE2b-256 b884b4967f9fa70256df092283acfc270ef0a8ac853081fea5d299fdaed2e1cc

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 6c4d1d49a7602188a35ac3d0febcf31151997cb939cc13394018e3c2c5e4c705
MD5 046504ce1b10e761695a07812429f7c4
BLAKE2b-256 12439fc887563927e862a164752ae6655d5c023f5f8c447d686bde2922aff1c4

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b8d27239b65b85277dbfd291d6ee5f3aa3d74dddb4579eacde0bc8ad28f47bb6
MD5 a40497419373f524bd35a0a569d44438
BLAKE2b-256 3ebf6ee70d5dbdc7342c880c6706edd72d095d051b744b176f7b39d560889c76

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 ce6c1e653ae7b8eba9175401fc53896cb167d5e24ba35ecdc763b0ea6d81d361
MD5 4731b28161369785075518a469a72ee9
BLAKE2b-256 2e6c29ae7431f15f36af8c82a77ed25d734e3547f28b1aad76a5a0a36312b6f8

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 77faf8924ea82c2c5095c67fcdfac19a97082a3703c474dbbecdd31af517f2f1
MD5 3c17450a2ad53c0bf1a765d9238d9fd2
BLAKE2b-256 9ba352be64368d0cccb5d06f8738447e9686dce9550f7edc71e59520039a020a

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.3.0rc2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9e2f43f9b8d4b05259c14ed139d4c11ea4e3dfe5781d6062fc3897b3454a72ba
MD5 5f2d34af33bb48e3a1c9562d221823bc
BLAKE2b-256 d1cb083ab97470ad7e1d2ec4377279e365e453ed5f0da8049ba6832720a6e31e

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