1<a href="https://tiledb.com"><img src="https://github.com/TileDB-Inc/TileDB/raw/dev/doc/source/_static/tiledb-logo_color_no_margin_@4x.png" alt="TileDB logo" width="400"></a> 2 3[![Azure Pipelines](https://dev.azure.com/TileDB-Inc/CI/_apis/build/status/TileDB-Inc.TileDB?branchName=dev)](https://dev.azure.com/TileDB-Inc/CI/_build/latest?definitionId=2&branchName=dev) ![](doc/anaconda.svg)[![Anaconda download count badge](https://anaconda.org/conda-forge/TileDB/badges/downloads.svg)](https://anaconda.org/conda-forge/TileDB) 4 5# The Universal Storage Engine 6 7TileDB is a powerful engine for storing and accessing **dense and sparse multi-dimensional arrays**, which can help you model any complex data efficiently. It is an embeddable C++ library that works on Linux, macOS, and Windows. It is open-sourced under the permissive MIT License, developed and maintained by [TileDB, Inc](https://tiledb.com/). To distinguish this project from other TileDB offerings, we often refer to it as *TileDB Embedded*. 8 9TileDB includes the following features: 10 11* Support for both **dense** and **sparse arrays** 12* Support for **dataframes** and **key-value stores** (via sparse arrays) 13* **Cloud storage** (AWS S3, Google Cloud Storage, Azure Blob Storage) 14* **Chunked** (tiled) arrays 15* Multiple **compression**, **encryption** and **checksum** filters 16* Fully **multi-threaded** implementation 17* **Parallel IO** 18* **Data versioning** (rapid updates, time traveling) 19* Array **metadata** 20* Array **groups** 21* Numerous **APIs** on top of the C++ library 22* Numerous **integrations** (Spark, Dask, MariaDB, GDAL, etc.) 23 24You can use TileDB to store data in a variety of applications, such as Genomics, Geospatial, Finance and more. The power of TileDB stems from the fact that any data can be modeled efficiently as either a dense or a sparse multi-dimensional array, which is the format used internally by most data science tooling. By storing your data and metadata in TileDB arrays, you abstract all the data storage and management pains, while efficiently accessing the data with your favorite data science tool. 25 26## Quickstart 27 28You can install the TileDB library as follows: 29 30```bash 31# Homebrew (macOS): 32$ brew update 33$ brew install tiledb-inc/stable/tiledb 34 35# Or Conda (macOS, Linux, Windows): 36$ conda install -c conda-forge tiledb 37``` 38 39Alternatively, you can use the Docker image we provide: 40 41```bash 42$ docker pull tiledb/tiledb 43$ docker run -it tiledb/tiledb 44``` 45 46We include several [examples](https://github.com/TileDB-Inc/TileDB/tree/dev/examples). You can start with the following: 47 48* [Dense array example](https://github.com/TileDB-Inc/TileDB/blob/dev/examples/cpp_api/quickstart_dense.cc) 49* [Sparse array example](https://github.com/TileDB-Inc/TileDB/blob/dev/examples/cpp_api/quickstart_sparse.cc) 50 51## Documentation 52 53You can find the detailed TileDB documentation at [https://docs.tiledb.com](https://docs.tiledb.com). 54 55## Building from source 56 57Please see [building from source](https://docs.tiledb.com/main/solutions/tiledb-embedded/installation/building-from-source) in 58the documentation. 59 60## Format Specification 61 62The TileDB data format is open-source and can be found [here](format_spec/FORMAT_SPEC.md). 63 64## APIs 65 66The TileDB team maintains a variety of APIs built on top of the C++ library: 67 68* [Python](https://github.com/TileDB-Inc/TileDB-Py) 69* [R](https://github.com/TileDB-Inc/TileDB-R) 70* [Java](https://github.com/TileDB-Inc/TileDB-Java) 71* [Go](https://github.com/TileDB-Inc/TileDB-Go) 72 73## Integrations 74 75TileDB is also integrated with several popular databases and data science tools: 76 77* [Spark](https://docs.tiledb.com/spark/) 78* [Dask](https://docs.tiledb.com/dask/) 79* [MariaDB](https://docs.tiledb.com/mariadb/) 80* [PrestoDB](https://docs.tiledb.com/prestodb/) 81* [Geospatial](https://docs.tiledb.com/geospatial/) (GDAL, PDAL, Rasterio) 82* [Genomics](https://docs.tiledb.com/genomics/) (gVCF) 83 84## Get involved 85 86TileDB Embedded is an open-source project and welcomes all forms of contributions. Contributors to the project should read over the [contribution docs](https://github.com/TileDB-Inc/TileDB/blob/dev/CONTRIBUTING.md) for more information. 87 88We'd love to hear from you. Drop us a line at [hello@tiledb.com](mailto:hello@tiledb.com), visit our [forum](https://forum.tiledb.com/) or [contact form](https://tiledb.com/contact), or [follow us on Twitter](https://twitter.com/tiledb) to stay informed of updates and news. 89