Running Pinot in Docker

Apache Pinot started maintaing the apachepinot/pinot Docker images available on Docker Hub

Prerequisites:

  Install Docker
 Try Kubernetes Quickstart if you already have a minikube cluster or docker kubernetes setup.

Running

Create an isolated bridge network in docker

docker network create -d bridge pinot-demo

We'll be running a docker image apachepinot/pinot:latest to run a quick start, which does the following:

  • Sets up the Pinot cluster QuickStartCluster
  • Creates a sample table and loads sample data

There's 3 types of quick start

Batch

  1. Starts Pinot deployment by starting:

    • Apache Zookeeper
    • Pinot Controller
    • Pinot Broker
    • Pinot Server
  2. Creates a demo table:

    • baseballStats
  3. Launches a standalone data ingestion job:

    • build one Pinot segment for a given csv data file for table baseballStats
    • push built segment to Pinot controller
  4. Issues sample queries to Pinot

    docker run \
    --network=pinot-demo \
    --name pinot-quickstart \
    -p 9000:9000 \
    -d apachepinot/pinot:latest QuickStart \
    -type batch

That's it! We've spun up a Pinot cluster.

It may take a while for all Pinot components to start and for the sample data to be loaded. Use the below command to check the container logs

docker logs pinot-quickstart -f

You can head over to Exploring Pinot to check out the data in the baseballStats, meetupRSVP or the airlineStats table.