Pricing

Details about TileDB Cloud Pricing

TileDB Cloud charges in three ways:

  • $0.11 / CPU / hour for the task time: This is the time it takes for a task from beginning to completion. Depending on the task and user parameters, the number of CPUs used will be different. This price of $0.11 per cpu-hour is based on 1 CPU usage. The time is multiplied by the number of CPUs used in the task. At the end of the month, usage is summed up and rounded to the nearest second. In TileDB Cloud, you can perform the following tasks:

    • Array slicing via REST (i.e., when using a tiledb://URI)

    • Serverless SQL

    • Any UDF

  • $0.14 / GB of data egress: This is the egress cost, i.e., the amount of data retrieved from the service to your client, not the data processed by a query. Egress is summed up and rounded to the GB at the end of the month.

  • $0.06 / CPU / hour for the notebook server duration: Notebooks are charged for how long the server is running and based on the size of the server.

Note that in TileDB Cloud you need to register your own data, which you must currently store in your own AWS S3 buckets. TileDB Cloud does not support storage hosting. You just register your already existing S3-stored TileDB arrays, and TileDB enables access and computation on those arrays without unnecessary copying and movement of the data.

All access via the web console, excluding notebook usage, is free and no charges are applied. TileDB Cloud bills you monthly.

The TileDB Cloud pricing suggests that you should minimize the data you request at your client, and instead try to either perform SQL / UDFs that reduce the data, or write the data back to S3 (e.g., which can be done with both SQL and UDFs).

Example Pricing Scenarios

Task
Data
Notebooks
Task

Suppose you run a UDF which takes 300 seconds and returns no data to your client outside TileDB Cloud. Suppose also that the UDF uses 2 CPUs. You will then be charged:

  • Query time: (5 / 60) hours * 2 CPUs * $0.11 = $0.0183

  • Data retrieved: $0.00

  • Total: $0.02

Data

Example 1

Suppose you slice 3 GB from a TileDB array using TileDB Cloud and the read access takes 45 seconds. Suppose the read query uses 16 cpus. You will be charged:

  • Task time: (0.75 / 60) hours * 16 CPUs * $0.11 per cpu-hours= $0.0225

  • Egress: 3 GB * $0.14 per GB = $0.42

  • Total: $0.0225 + $0.42 = $0.44

Example 2

Suppose you write 256 MB to a TileDB array and the write request takes 20 seconds. Suppose the write query uses 16 CPUs. You will be charged:

  • Query time: (0.33 / 60) hours * 16 CPUs * $0.11 per cpu-hour = $0.01

  • Data retrieved: 0 (see note below)

  • Total: $0.01

Each write may read back a few bytes (e.g., for acknowledgements), thus incurring some minimal egress. This is added to the final billing but it is negligible as compared to the query time.

Example 3

Suppose you run a serverless SQL query which performs an aggregation on some TileDB array slice that takes 90 seconds. If the result is 1MB, you are charged:

  • Query time: (05 / 60) hours * 16 CPUs * $0.11 per cpu-hour = $0.044

  • Data retrieved: (1 / 1024) GB * $0.14 per GB = $0.00013671875

  • Total: $0.044

Observe that you pay only for the 1 MB you retrieved (which is negligible), regardless of how many bytes the UDF processed. You can see here the benefit of reductions with serverless computations.

Notebooks

Example 1

Suppose you run a small notebook and keep it active for 8 hours. The small notebook uses 2 CPUs. You will be charged:

  • Notebook time: 8 hours * 2 CPUs * $0.06 per cpu-hour = $0.96

Example 2

Suppose you run a large notebook and keep it active for 30 minutes. the large notebook uses 16 CPUs. You will be charged:

  • Notebook time: 0.5 hours * 16 CPUs * $0.06 per cpu per hour = $0.48

Our pricing is experimental. We are happy to get your feedback. You can also contact us if you need more free credits in case you are in a testing phase.