Arctic is a timeseries/dataframe database that sits atop MongoDB. Arctic supports serialization of a number of datatypes for storage in the mongo document model. Serializes a number of data types eg. Pandas DataFrames, Numpy arrays, Python objects via pickling etc. so you don't have to handle different datatypes manually. Uses LZ4 compression by default on the client side to get big savings on network / disk. Allows you to version different stages of an object and snapshot the state (In some ways similar to git), and allows you to freely experiment and then just revert back the snapshot. [VersionStore only] Does the chunking (breaking a Dataframe to smaller part for you. Has different types of Stores, each with it's own benefits. Eg. Versionstore allows you to version and snapshot stuff, TickStore is for storage and highly efficient retrieval of streaming data, ChunkStore allows you to chunk and efficiently retrieve ranges of chunks.
Features
- There is a large number of configuration knobs which tune Arctic's performance
- Restricts data access to Mongo
- Prevents ad hoc queries on unindexed / unsharded collections
- Arctic provides a wrapper for handling connections to Mongo
- Arctic provides a wrapper for handling connections to Mongo
- Enable/disable various (experimental) features