33** Run Snowflake SQL dialect on your data lake in 30 seconds. Zero dependencies.**
44
55[ ![ License] ( https://img.shields.io/badge/License-Apache_2.0-blue.svg )] ( https://opensource.org/licenses/Apache-2.0 )
6- [ ![ SQL Logic Test Coverage] ( https://raw.githubusercontent.com/Embucket/embucket/assets/assets/badge.svg )] ( test/README.md )
7- [ ![ dbt Gitlab run results] ( https://raw.githubusercontent.com/Embucket/embucket/assets_dbt/assets_dbt/dbt_success_badge.svg )] ( test/dbt_integration_tests/dbt-gitlab/README.md )
86
97## Quick start
108
@@ -17,26 +15,50 @@ docker run --name embucket --rm -p 3000:3000 embucket/embucket
1715Run the Snowflake CLI against the local endpoint:
1816
1917``` bash
18+ pip install snowflake-cli
2019snow sql -c local -a local -u embucket -p embucket -q " select 1;"
2120```
2221
2322** Done.** You just ran Snowflake SQL dialect against the local Embucket instance with zero configuration.
2423
25- ### Bootstrap external volumes via config
24+ ### Create external volumes via config
2625
27- You can pre-create volumes, databases, and schemas by pointing ` embucketd ` at a YAML config file. This
28- is handy when you want to mount an S3 Tables bucket at startup without sending API calls after the
29- process is online.
26+ ** Important ** : External volumes must be created via YAML configuration at startup. REST API-based volume creation is not supported.
27+
28+ Pre-create volumes, databases, and schemas by pointing ` embucketd ` at a YAML config file:
3029
3130``` bash
3231cargo run -p embucketd -- \
3332 --no-bootstrap \
34- --metastore-config config/metastore.s3tables.demo.yaml
33+ --metastore-config config/metastore.yaml
34+ ```
35+
36+ ** Sample configuration** (` config/metastore.yaml ` ):
37+
38+ ``` yaml
39+ volumes :
40+ # S3 Tables volume - connects to AWS S3 Table Bucket
41+ - ident : demo
42+ type : s3-tables
43+ database : demo
44+ credentials :
45+ credential_type : access_key
46+ aws-access-key-id : YOUR_ACCESS_KEY
47+ aws-secret-access-key : YOUR_SECRET_KEY
48+ arn : arn:aws:s3tables:us-east-2:123456789012:bucket/my-table-bucket
49+
50+ # S3 volume - connects to standard S3 bucket
51+ # - ident: s3_volume
52+ # type: s3
53+ # bucket: my-data-bucket
54+ # endpoint: https://s3.amazonaws.com
55+ # credentials:
56+ # credential_type: access_key
57+ # aws-access-key-id: YOUR_ACCESS_KEY
58+ # aws-secret-access-key: YOUR_SECRET_KEY
3559```
3660
37- The sample config under ` config/metastore.s3tables.demo.yaml ` provisions a ` demo ` database backed by an
38- S3 Tables bucket using the credentials provided in the file. Update the file with your own secrets
39- for real deployments.
61+ Update the credentials and ARN/bucket details with your own values for real deployments.
4062
4163## What just happened?
4264
@@ -58,7 +80,6 @@ Perfect for teams who want Snowflake's simplicity with bring-your-own-cloud cont
5880Built on proven open source:
5981- [ Apache DataFusion] ( https://datafusion.apache.org/ ) for SQL execution
6082- [ Apache Iceberg] ( https://iceberg.apache.org/ ) for ACID table metadata
61- - A lightweight in-memory metastore purpose-built for Embucket
6283
6384## Why Embucket?
6485
@@ -70,16 +91,8 @@ Built on proven open source:
7091- ** Horizontal scaling** - Add nodes for more throughput
7192- ** Zero operations** - No external dependencies to manage
7293
73- ## Next steps
74-
75- ** Ready for more?** Check out the comprehensive documentation:
76-
77- [ Quick start] ( https://docs.embucket.com/essentials/quick-start/ ) - Detailed setup and first queries
78- [ Architecture] ( https://docs.embucket.com/essentials/architecture/ ) - How the zero-disk lakehouse works
79- [ Configuration] ( https://docs.embucket.com/essentials/configuration/ ) - Production deployment options
80- [ dbt Integration] ( https://docs.embucket.com/guides/dbt-snowplow/ ) - Run existing dbt projects
94+ ## Build from source
8195
82- ** From source:**
8396``` bash
8497git clone https://github.com/Embucket/embucket.git
8598cd embucket && cargo build
0 commit comments