This contains information on the available methods to interact with a deployed instance of Sleeper.
This will assume you have a deployed instance of Sleeper, and you've built the system locally in a builder container. See the getting started guide for how to set that up. Also see the deployment guide for more information on deploying an instance.
If you just want to test locally, see the documentation on deploying to localstack. This has very limited functionality compared to a deployed instance.
Data in Sleeper is held in a table. You can always add or remove Sleeper tables from an instance. See the tables documentation for how to define and edit a table.
Data is ingested in large, sorted files which are then added to a Sleeper table. There are a number of options available for creating these files and adding data to the system. See the ingest documentation for details.
See the data retrieval documentation for ways to query a Sleeper table.
In the future it will be possible to export Sleeper table data in bulk. See the data export documentation.
There are clients and scripts in the scripts/deploy
and scripts/utility
directories that can be used to work with an
existing instance.
Also see the tables documentation for scripts to add/edit Sleeper tables.
We have provided a command line client that will enable you to:
- List Sleeper instance properties
- List Sleeper table names
- List Sleeper table properties
- Change an instance/table property
- Get status reports (also see checking the status of the system)
This client will prompt you for things like your instance ID as mentioned above and/or the name of the table you want to look at. To adjust property values it will open a text editor for a temporary file.
You can run this client with the following command:
./scripts/utility/adminClient.sh ${INSTANCE_ID}
If you want to fully compact all files in leaf partitions, but the compaction strategy is not compacting files in a partition, you can run the following script to force compactions to be created for files in leaf partitions that were skipped by the compaction strategy:
./scripts/utility/compactAllFiles.sh ${INSTANCE_ID} <table-name-1> <table-name-2> ...
See the Python API documentation for details of the Python client library for Sleeper.
Experimental integrations are available to interact with Sleeper via Athena and Trino.