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

This version

1.1.0

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

Uploaded CPython 3.11 Windows x86-64

arcticdb-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

arcticdb-1.1.0-cp310-cp310-win_amd64.whl (6.2 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

arcticdb-1.1.0-cp39-cp39-win_amd64.whl (6.2 MB view details)

Uploaded CPython 3.9 Windows x86-64

arcticdb-1.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

arcticdb-1.1.0-cp38-cp38-win_amd64.whl (6.2 MB view details)

Uploaded CPython 3.8 Windows x86-64

arcticdb-1.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.7m Windows x86-64

arcticdb-1.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

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

arcticdb-1.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.3 MB view details)

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

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 536f14995d6da553427b6242240c73f44fa280999e09661ad40dc6879fa74020
MD5 4c22171837b495f54d32265b6f04d2c3
BLAKE2b-256 cbb0188ee6fb161f07a51d038d738ac96f42c57498c02a28e77c27c2acc0555b

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0f1334365bec30f403aa7b471b77f808b906372e81210c484ae3915bc6cc019b
MD5 5f0d394b6155dd56fd96f6fbb693d1ff
BLAKE2b-256 2916cc33f5f11b267217f4fb3da62a21f206f26e747c45c379f6b3de7d6465c9

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b7c93467c780742471b2d6aa0dfd299fa37c41fd2f86d8d36ce3a1e919a0d349
MD5 c8af3e2f5034432cf84bdbbff21dc490
BLAKE2b-256 23dd21ae30a85a02bc348213a095a323106ee21b7d7eea0cf4a0890575df18f5

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02125fefa3e0e0806199b996974f2dfc4d991199cf806be8fbec6addc7babc47
MD5 00b634f3a2bf0187517696e2fe7929f0
BLAKE2b-256 64423e247f37567b9834003324d0f00cea7a28f0561b3ad389460a86c09aee22

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: arcticdb-1.1.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 6.2 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.1.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4480353755271df89c533e4abacea04ed1768bce9e9e1879f9ccc4eb9434c57a
MD5 7bbb590239c8e972d9110fb32fa6bb1e
BLAKE2b-256 abce7df3e5a7ea7f94c9655b523b18e8d2f45ef0da440c6886db493fec92998b

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 61dbb12f3c370310b051f8e0e1e9179e0be2e0c82706d3a272cc8fac7e9e908e
MD5 8987c3c678399a62f0dfb4de3266f79a
BLAKE2b-256 b6f70ae216dfdd2d329150735a349b3af32e4ea16c0c630c2a5dd872311d0e41

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: arcticdb-1.1.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 6.2 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.1.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 43d001272564e3c995e0e848f6ebbaabc6b9d3e43c224f99ebcd18dbd976a754
MD5 a4ca4fd26f9996eb3ce0e20332d6eeb7
BLAKE2b-256 ee8f04e6c81c892e278fed2104f3208ac0c336ed4558c51626e0dbcba2fcb897

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 14404871fae40ddbe8f4f52b0e9d790aef70b58ce58f41c03e2bf3a157677f4f
MD5 f9c37c4e7b2f1bec8d9977d1a8833c5d
BLAKE2b-256 df2d7ea19a986c7f30791c057faf79b66b6e1bb214ac52d5a178afe70e38e81e

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: arcticdb-1.1.0-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.1.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 df713edeb2906e588501f74c4f13a910ade51bcba1ee531c54492283c37493d8
MD5 027daf42cf2cef5ad33d2231ca24702a
BLAKE2b-256 01c4569e1e99cc47f0d36bd54042cc8b8cd6c8c890df26cdb7cf29972c872fbc

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9ff413c041e03b7670d7e9522b46321f0862b97ea8273929d97454a66bcfc118
MD5 f3bd9146964b527af535dbc868c173ff
BLAKE2b-256 4a1e41bf264ad8a29cacc5dc99440fddff8db67de0b3eb8368afca080614a9d7

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.1.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1de3b79c54bf9b8960e1c894c7b07d327dbf203a1e7c726bb4d780302d5bc0fb
MD5 a5f47902f2176ae187db3c33132ffe46
BLAKE2b-256 e963868b3f5098be7e08a254bb5f8be3de51558bcc9a14e66ab643e4bc39c6be

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