# How can I use TileDB from Julia?

**URL:** https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864
**Category:** Data
**Created:** [December 20, 2018, 7:07pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864 "2018-12-20T19:07:17Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![Juan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juan/32/7657_2.png) [@Juan](https://discourse.julialang.org/u/Juan)
#### Post date: [December 20, 2018, 7:07pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864/1 "2018-12-20T19:07:17Z")

</div>

How can I use TileDB from Julia? Is there any port? I’ve searched on Julia observer but haven’t find anything?  
I’ve also searched on JuliaDB docs but haven’t found anything.

I’m looking for a fast database to deal with large datasets and be able to add new columns on disk. My candidates are hdf5, SciDB, MonetDB, Rasdaman and TileDB, the latter is supposed to be faster and optimized to work with matrices.

---

<div class="post-metadata">

### Author: ![cstjean](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cstjean/32/1444_2.png) [@cstjean](https://discourse.julialang.org/u/cstjean)
#### Post date: [December 20, 2018, 9:32pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864/2 "2018-12-20T21:32:36Z")

</div>

The Julia API is apparently [planned](https://tiledb.io/#rec45684097). You could of course call it via PyCall, but it might not have such great performance.

---

<div class="post-metadata">

### Author: ![Juan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juan/32/7657_2.png) [@Juan](https://discourse.julialang.org/u/Juan)
#### Post date: [December 20, 2018, 11:47pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864/3 "2018-12-20T23:47:09Z")

</div>

Do you have experience with TileDB?  
Do you recommend it over other options?

---

<div class="post-metadata">

### Author: ![ImreSamu](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/imresamu/32/20677_2.png) [@ImreSamu](https://discourse.julialang.org/u/ImreSamu)
#### Post date: [December 21, 2018, 3:02pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864/4 "2018-12-21T15:02:28Z")

</div>

> [@Juan](#):
>
> How can I use TileDB from Julia?

imho: Maybe you can ask this question here : [https://forum.tiledb.io/](https://forum.tiledb.io/)

---

<div class="post-metadata">

### Author: ![ihnorton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ihnorton/32/26_2.png) [@ihnorton](https://discourse.julialang.org/u/ihnorton)
#### Post date: [November 18, 2019, 4:03pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864/5 "2019-11-18T16:03:41Z")

</div>

Hi folks, in order to gauge interest, I just created a votable feature request for Julia bindings for TileDB:

> **[Julia bindings for TileDB | TileDB Core | TileDB](https://feedback.tiledb.com/tiledb-core/p/julia-bindings-for-tiledb)**
>
> Enable use of TileDB from Julia ( www.julialang.org ).

If you are interested, please give an upvote at the link above. We would also be happy for any comments if you have a specific use-case in mind (or send us a note at `hello@tiledb.com`).

As background, TileDB is a chunked array format + storage manager supporting N-dimensional dense and sparse arrays, with built-in support for AWS S3 and HDFS, encryption, and time-traveling, as well as integrations for Spark, Dask, GDAL, PDAL, [VCF](https://docs.tiledb.com/main/use-cases/genomics), and more. The core library provides a C API, and bindings are currently available for Python, R, Go, Java, and C++. Please see [our docs](https://docs.tiledb.com/main/) for more information.

Thanks,  
Isaiah (TileDB, Inc)

---

<div class="post-metadata">

### Author: ![Juan](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juan/32/7657_2.png) [@Juan](https://discourse.julialang.org/u/Juan)
#### Post date: [November 18, 2019, 5:16pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864/6 "2019-11-18T17:16:13Z")

</div>

Do you know how fast is TileDB compared to Clickhouse?

---

<div class="post-metadata">

### Author: ![ihnorton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ihnorton/32/26_2.png) [@ihnorton](https://discourse.julialang.org/u/ihnorton)
#### Post date: [November 18, 2019, 9:16pm UTC](https://discourse.julialang.org/t/how-can-i-use-tiledb-from-julia/18864/7 "2019-11-18T21:16:14Z")

</div>

Hi @Juan,

The core TileDB library is a storage engine that does not implement SQL queries. Rather, it may be used as a columnar store by SQL engines (currently [PrestoDB](https://docs.tiledb.com/developer/prestodb/quickstart), [MariaDB](https://docs.tiledb.com/developer/api-usage/embedded-sql) and [SparkSQL](https://docs.tiledb.com/developer/spark/usage#sparksql-on-tiledb-arrays)). The integrations we have built re-use the existing engine’s SQL capability, but push compute to storage whenever possible (currently ranges, in the future more complex processing). We have been discussing adding TileDB as a data connector to Clickhouse, which would give Clickhouse optimized AWS S3 data access. Users would also enjoy direct data access outside of Clickhouse, e.g., for running Python/R/C++/etc. code directly against the data store.

Thanks,  
Isaiah
