Lakelet is a single-binary SQL engine for LakeHouse tables. No Spark cluster is needed, query data lake tables directly with SQL.
show catalogs;
use catalog hms;
select * from default.orders limit 10;| Area | Support |
|---|---|
| Catalog | Hive Metastore, AWS Glue, Paimon filesystem, Iceberg REST |
| Table format | Iceberg, Hive, Paimon, Delta Lake |
| File format | Parquet, Hive TextFile |
| Storage | S3 / S3-compatible storage, Aliyun OSS, HDFS |
Install the latest nightly binary into the current directory (Linux and macOS; Windows builds are on the releases page):
curl -fsSL https://lakelet.dev/install.sh | shOr build from source, more details see the docs:
cargo build --release
cp target/release/lakelet .
cp config_demo.toml config.tomlConfigure at least one external catalog in
config.toml:
[[catalog.hms]]
name = "hms"
metastore-uri = "127.0.0.1:9083"
s3-storage = { region = "us-east-1", endpoint = "http://127.0.0.1:9000", access-key = "admin", secret-key = "password", path-style-access = true }Start the SQL shell:
./lakelet --config config.tomlRun one SQL command and exit:
./lakelet --config config.toml --command "show catalogs;"Run SQL from a file:
./lakelet --config config.toml --file query.sqlStart the server:
./lakelet --config config.toml --servershow catalogs;
use catalog hms;
show schemas;
use default;
show tables;
select * from my_table limit 10;You can also use fully qualified table names:
select * from hms.default.my_table limit 10;