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!

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

Uploaded CPython 3.11 Windows x86-64

arcticdb-1.4.0-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.4.0-cp310-cp310-win_amd64.whl (6.2 MB view details)

Uploaded CPython 3.10 Windows x86-64

arcticdb-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.9 Windows x86-64

arcticdb-1.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.8 Windows x86-64

arcticdb-1.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.7m Windows x86-64

arcticdb-1.4.0-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.4.0-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.4.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 300f5d586d91a0488ea604585339b9d068b19563e632948750976567aa61d0c7
MD5 7aa25b5acc8a727c8f65a99d474ad3b8
BLAKE2b-256 e394948cf1a62b932ba52f78c1f2dc71db27ee2b6e35bbf92051ca0c86b5048f

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f1cdf990741cd18133521e54e701be9db0232d0657ad48ee9f742be472642162
MD5 d98f4b280fa95791196d1695156ed0b5
BLAKE2b-256 a7e9cb3f6c74a64b650a88b40bf59d08d2e094bbda9e8c4b72fc19d75cb28389

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 349f2b93c79ba7e610ce7a674cc34cd9fa07b4610516d68ad9790c2b45d1ad48
MD5 2a5b6d3da795173ac3b7e2ef2b409827
BLAKE2b-256 a590decde1f35e48c45ba7145b5701cc20c6c35fdc663e0ba5679a5425e301fc

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 08135c3b60784a7a11e1ee973d4f87ab0ad52899b961fb9bd2d6235fa6c1399f
MD5 d74102bbfd98927c9d79a4a6e40e3158
BLAKE2b-256 45546a6acae77759351b03b7086b674a449c92abde2ecf59621a8a91f162dfc4

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: arcticdb-1.4.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.4.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8d85c97ff1a9343820eb13df57b6aff1cd6492705fefaec4efd3c8c51d23d854
MD5 a5d331bbb4b5b56aae653abab29d84c4
BLAKE2b-256 8b4b2b06d7f2aa9404b77b571a66b17b40504aef1fb0efa7d4d41cf171594046

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ebdb9f36aa03fc491ecf19005923fa81dbebfcbb08f5abc0959b6be29cad273
MD5 2a9c4c05a867aa3ddcbe0882f995ba12
BLAKE2b-256 9c85667929298f8e6c64c003bed3f16c4adcc2b360d74927061bbc9625f95485

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: arcticdb-1.4.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.4.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 51984d24fffb0f276a3132bc09a2941c9621e12c72541315864d58f43db5353a
MD5 11d61d4042463c959e2bf19ed3073ee4
BLAKE2b-256 b59d351b47a19b18ad0b038642edcfed200f99ab8877272e3ac0fc341cfbdd83

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8ed15b7c8034467cb33ce7a3831fa7449845556653f41bfdf0b40e0a1a2ed8d6
MD5 1d9f34c5b5d593a5ee578c85ce8a8254
BLAKE2b-256 fca2c4b367a0d2ba71ba1fa51284f6a481e16a96a7405be3fea80ccbbfed211f

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: arcticdb-1.4.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.4.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 cf8132ecec012d0da3f0200be2167cce57ec6219bfb70f134835c59d4a419047
MD5 bbea30418d05357067961ba852d8ddff
BLAKE2b-256 cd501ae3a97f777f1d1d7ca290498623bd0e180118f7295e8d79dd6e4fb79b99

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e98be3c4e10831194e0ef675bc14f3e2294b8c6650185fca8998124fd4cc5440
MD5 f23e0ca0ab4ede4e96a7f2ff8558c1ce
BLAKE2b-256 fe9a540e13b08b5b10a962a693cba7e62c23b2f7a0d33df772555ee4a127415a

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for arcticdb-1.4.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5626e0ec700f3b43f5a4904e99448a171414761988dc01e6c42027fccec7e8b7
MD5 7b9ba68007816c4749f6e8d02a43db85
BLAKE2b-256 89d9a5bef2436f52739ba4771a81f1c980f01fdbe7f8efec7527a37398c41a63

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