Skip to main content

ArcticDB DataFrame Database

Project description



ArcticDB Website | 📘 ArcticDB Docs | 📰: 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 (Intel/AMD) ✔️ ✔️
Windows (Intel/AMD) ✔️
MacOS Beta️

For conda-forge see the release-info.

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
4.3 Business Source License 1.1 Feb 7, 2026
4.4 Business Source License 1.1 Apr 5, 2026

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.5.0rc4-cp311-cp311-win_amd64.whl (6.7 MB view details)

Uploaded CPython 3.11 Windows x86-64

arcticdb-4.5.0rc4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.1 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.0rc4-cp310-cp310-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-4.5.0rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.1 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.0rc4-cp39-cp39-win_amd64.whl (6.7 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-4.5.0rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.1 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.0rc4-cp38-cp38-win_amd64.whl (6.8 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-4.5.0rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.1 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

arcticdb-4.5.0rc4-cp37-cp37m-win_amd64.whl (6.7 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-4.5.0rc4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.2 MB view details)

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

arcticdb-4.5.0rc4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.2 MB view details)

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

File details

Details for the file arcticdb-4.5.0rc4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 56f5d6915a1371e6549c0938ec0806880a06cf53826f46465feb3f081bcab106
MD5 f0410785f9c235a14adb470195d5b9da
BLAKE2b-256 0bd0cc7f3e503193e101eb0cd38a1f8e7a4ece8164177d3ed3c9fe7bf67e0075

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2354496261a9849cbccd507dcfae3c823f561774d32bf310da910e65439db995
MD5 2673ad5d9f267cc02847976499fc685e
BLAKE2b-256 4157fb3db3491d4286331ed6adeb0be013a4229e37ee38778c3a5737aa6b5768

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 15163c83945021250c29a186b539842b94a0ae7c3cb2ac7b92fc684578e5c2b6
MD5 365f07bf00089e8cca50f6051de68506
BLAKE2b-256 b561bf25b2bafc18ba200594ebc00214f557dc4eb24d7817728e738a5287358c

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4b9144752b56ab1eadff98eac2de25114b94e2a0a0d68f7ebf85608ed4a7a976
MD5 73ce079b3234089a5bdc8240c0c68f81
BLAKE2b-256 32d5e8c4531ed9796848282110ec1165b6fb091a426b234c476040c0aa238d28

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 96b82523bc1cd52c52e3fba375520d014801c5465f8a40a4f5f18e597e27d4dd
MD5 46d3e5c6a6ee15bd0759fee913b44e57
BLAKE2b-256 172ccb8bbef71437c911deefc8b8855c0bc5a94b2a72b4fa1e5c67932bf74e4a

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 022737429f3447b94643d264bc39de159c9b11aa15aeb16b323e57eb7e84bee9
MD5 e40bae2221a175e343bd5af09561bd8b
BLAKE2b-256 a5dd1860d59b4c2f1e96ce974e9ccc9d60ad235790f3823d5a52bbfc6415e992

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 14cdc36e500d738ba9c91509f8e5b381d79728a5a0b2211f1269067bc3ea2541
MD5 f8c1f9b56f29f9e98b89dc43fe40447d
BLAKE2b-256 de0c50904be74d0a8112465cdf61bbf4a456ca2daa21707c6396a810b4426a7e

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0269eddb51e2f83b7c62d9dc6595594ef2f1aa7befa13f5824f11bc32400243f
MD5 9ada07a5a290bf40c3c6e7a003751d81
BLAKE2b-256 e2c774085055da6e358cbe6095ac21c39261670d6a80710cbee771587f7de7c5

See more details on using hashes here.

Provenance

File details

Details for the file arcticdb-4.5.0rc4-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 a44798188e1c44235a59d41ad4ab710832d9eed6b3d7c17fc49e5022272e56d5
MD5 5611d465f14eb11fc25f006dc4258a0c
BLAKE2b-256 7129f42ac5d40aa7ad224989548b9f3298b7dddca514d6cad27124fe2ad9bacf

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0643dd3843f09ea48735c73c2f1e7ff0e463e01c8716fdbbb8500f5505d5b72a
MD5 5c4ad6cec7b1f3e360e93973f318c5d7
BLAKE2b-256 02b5931b573f6a820b22a6793a637187fcced716c8d8ead04058955c8faa45c4

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-4.5.0rc4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 baf4d489d36c23787b7f380487bb26f6ccc0a9748d0f22a71b231a88afa24687
MD5 b8ffbc156aa0b6c183ad29bb7e62a044
BLAKE2b-256 f9328baad4758e784494f1b2868ec37dc9ebec284bc99eb9df526f912c7cac44

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