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

⚠️ Pre-built binaries only available for Linux and Windows: MacOS binaries are coming soon!

Install ArcticDB:

$ pip install 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 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.

For each BSL release all associated alpha, beta, major, and minor (point) releases will become Apache Licensed, version 2.0 on the same day two years after the major release date. For the license conversion dates, see the table below.

ArcticDB Version License Converts to Apache 2.0
1.0 Business Source License 1.1 Mar 16, 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!

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-1.2.1-cp311-cp311-win_amd64.whl (6.2 MB view details)

Uploaded CPython 3.11 Windows x86-64

arcticdb-1.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-1.2.1-cp310-cp310-win_amd64.whl (6.3 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-1.2.1-cp39-cp39-win_amd64.whl (6.3 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-1.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-1.2.1-cp38-cp38-win_amd64.whl (6.3 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-1.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.4 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

arcticdb-1.2.1-cp37-cp37m-win_amd64.whl (6.2 MB view details)

Uploaded CPython 3.7m Windows x86-64

arcticdb-1.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.5 MB view details)

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

arcticdb-1.2.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.5 MB view details)

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

File details

Details for the file arcticdb-1.2.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 52fe2f7791f4d5f2302ca89193ea0303f3bfe8873c3341641ad06737473f857f
MD5 18a8204db84c7e9e581e83e9d6efa1d9
BLAKE2b-256 4e78fa6235134c22ae3a40a0d4400985a339dab5dbd4c50ced054d9025ede4ed

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 87c5ac71ecc92e0e3fe14b79f14affb0451885efe55c58695fef87f54f84ee52
MD5 85e1bc4e0430b9f177c268f316f613e8
BLAKE2b-256 32f5b618ebf5a3b46bf62e90f3f5fba1a59114354beb9b2b200cf30a61ca310c

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 badd08f8f1ad00e7e802061d452311a98380f651bc251c80a900a12bace4499e
MD5 99e460c255beee5170ac7c98322611c6
BLAKE2b-256 8755bdcdd73eea70f3648ff8498737d499a0021b80f03caf65fab934c617fd42

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bc32a67fec8dd0411869b331f433d0d54f93b2220ea04cf392a2368db6339843
MD5 fca8a70a2d5382c0d6d41ac31a3fc1c1
BLAKE2b-256 5a3dac0504af78d50ec89c5ee707894c290939730b4252f06962f398bae7861c

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: arcticdb-1.2.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 6.3 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for arcticdb-1.2.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 540bd6cbadc11209ebd0ab81ac4012f28fdeff9421879d6eab613b0f6058e25d
MD5 bff059c956bf55e3917cf057e904c67b
BLAKE2b-256 f972af770b1f48cb5407abcf356313496fc05106ba173ae8b58f6f44e4f4474a

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 59e3eeb5267f206f70d33cbae50e66c7e1c857312c4a94f2ce7f9f4d4a3adc34
MD5 6b226261a6755651ef15c8fd06de3803
BLAKE2b-256 cbdc53198ada9df63dc329a0aba00a8507ec375d35915565056782aa1fb5396d

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: arcticdb-1.2.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 6.3 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for arcticdb-1.2.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 dcad76fdda6ded3ed05291006cc21654b7f70b49878cd4841db3201ba3d393d4
MD5 a563e35f9de0084a5237fe338cd1cff2
BLAKE2b-256 9b25caa79bd82c29525c4bae7f3d611cffb7dea95fdb40102d0896017c16e1e8

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 889a1db39bf0811c90faa35766a76d10e4a5c629ee0966ad3bbc71d7653f0ea8
MD5 8d48788e12d4043b3da60444ecb0326b
BLAKE2b-256 288a97695d667999ec5df2862c431f4812e01511983827b416b49a86a6f1a428

See more details on using hashes here.

File details

Details for the file arcticdb-1.2.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: arcticdb-1.2.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 6.2 MB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for arcticdb-1.2.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 771f8f9293f982739b37497c4899042f284c47318f22a7308e8cc3e1a4ecf5e7
MD5 75a78ba4e4eab7e9523b27f3a4ddc9b8
BLAKE2b-256 93b4ceb7307b22cc0198664ee4927e838503953ba11fd7375f0571d462f65c57

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb06e7555e07278224c55ab4f7ef4a88bd5ca7c3eaad54d1a47d14bf0173ec97
MD5 a4a47f108d59d89f4918866d03e1225e
BLAKE2b-256 6dde9624b9a6659bc046e2bc17068a646dcdbe959bc18e2da0a97357306f6653

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcticdb-1.2.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6bdd64ea69286f0d0d805b6f2b3883d6c2d5d8491ea70331941346de42c419bb
MD5 02f412c67e98a2dfd5b31101d8589293
BLAKE2b-256 a247afc55fc452f7c8778dedff32fdccf7243f81ab44dd032051cf0997d0d42e

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