Welcome to the Getting Started with Trino and Backblaze B2 Cloud Storage tutorial repository!
Currently, this repository contains two tutorials with preconfigured Docker Compose environments:
trino-b2
, which until recently lived in the maintrino-getting-started
repository, shows how to configure Trino to use Backblaze B2 for file storage.trino-iceberg-hive-b2
, based ontrino-iceberg-minio
, shows how to configure Trino to use the Iceberg table format, using the Hive metastore for table metadata and Backblaze B2 for file storage.
We anticipate adding more environments showing different aspects of integrating Trino with Backblaze B2, for example, using the Iceberg table format with the Iceberg REST catalog rather than the Hive metastore.
Trino is an open-source distributed SQL query engine designed to query large data sets distributed over one or more heterogeneous data sources. As such, Trino can query data lakes containing files of a variety of formats, including Parquet and ORC, residing in any of a number of storage systems, including cloud object stores such as Backblaze B2 Cloud Storage, using either of the Hive or Iceberg table formats.
As a S3-compatible cloud object store, Backblaze B2 combines with Trino to provide cost-effective, high performance, analytics for large data sets.
In order to use this repository you need to have Docker installed to run your service containers. Check if you have Docker installed by running docker --version
. If Docker isn't found, please install Docker before trying to run these tutorials. If you're on macOS, Linux or Windows, you can install Docker Desktop. Alternatively, if you're on Linux, you can install the Docker Engine.
The first level of directories in this repo are generally organized by connector. The second level of directories contain the actual environment and documents. In order to run the environment, you need to be in one of the directories that has a docker-compose.yml
file in it.
docker compose up -d
docker compose stop
cleans images, containers, and network
docker system prune --all --force
docker volume prune --force
docker images
docker container exec -it <container_id> /bin/bash
docker logs <container_id>
docker container ls
docker compose ps