Integrations
Apache Pinot
This tutorial shows how to integrate Upstash Kafka with Apache Pinot
Apache Pinot is a real-time distributed OLAP
(Online Analytical Processing) data store. It aims to make users able to execute
OLAP queries with low latency. It can consume the data from batch data sources
or streaming sources, which can be Upstash Kafka.
Create a file named docker-compose.yml with the following content.
Go into the directory from your terminal and run the following command to start
Pinot.
Now, Apache Pinot should be up and running. You can check it by running:
You should see the output like this:
Now, you should add table to your Pinot to store the data streamed from Kafka
topic.
You need to open http://localhost:9000/ on your
browser.
Click on “Tables” section.
First, click on “Add Schema” and fill it until you see the following JSON as
your schema config.
Click save and click to “Add Realtime Table” since we will stream the data
real-time.
On this page, table name must be the same name with the schema name, which is
“transcript” in this case.
Then, go below on this page and replace “segmentsConfig” and “tableIndexConfig”
sections in the table config on your browser with the following JSON. Do not
forget to replace UPSTASH-KAFKA-* placeholders with your cluster information.
Now, go back to your Pinot console on your browser. Navigate to “Query Console”
from the left side bar. When you click on “transcript” table, you will see the
result of the following query automatically.
The query result should be as following:
Was this page helpful?