Skip to content

cnatsis/pinot-cluster-docker

Repository files navigation

Apache Pinot cluster using Docker

Create an Apache Pinot cluster using Docker and docker-compose.

Table of contents

Run

Deploy the cluster using the command:

docker-compose up -d

Once all services are up, navigate to Apache Pinot controller in http://localhost:9001.

Ingest sample data

To ingest the tracks.csv dataset, please run the following commands.

# Create temp folders in the container
docker exec pinot-controller-1-1 mkdir -p /tmp/raw_data/tracks
docker exec pinot-controller-1-1 mkdir -p /tmp/definitions/

# Copy files to container
docker cp tracks.csv pinot-controller-1-1:/tmp/raw_data/tracks/
docker cp tracks-schema.json pinot-controller-1-1:/tmp/definitions/
docker cp tracks-table-offline.json pinot-controller-1-1:/tmp/definitions/
docker cp tracks_job_spec.yml pinot-controller-1-1:/tmp/definitions/

# Add schema and table
docker exec -it pinot-controller-1-1 \
    /opt/pinot/bin/pinot-admin.sh AddTable \
    -controllerPort 9001 \
    -schemaFile /tmp/definitions/tracks-schema.json \
    -tableConfigFile /tmp/definitions/tracks-table-offline.json \
    -exec

# Ingest CSV data
docker exec -it pinot-controller-1-1 \
    /opt/pinot/bin/pinot-admin.sh LaunchDataIngestionJob \
    -jobSpecFile /tmp/definitions/tracks_job_spec.yml

The stored tracks table can be queried using Pinot's Query Console.

References

About

Apache Pinot cluster using Docker

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published