https://docs.pinot.apache.org/
Data Stream -> Apache Kafka -> Apache Pinot
NOTE: server must have 16 GB of RAM!!!
docker compose up -d --build
- Write schema + config (see docs) (Name files like: TABLENAME_schema.json and TABLENAME_config.json)
- Upload to Pinot with script:
./scripts/db/upload_schema.sh -n TABLENAME
- Write schema + config (see docs) (!! Name file like: TABLENAME_schema.json and TABLENAME_config.json)
- Upload to Pinot with script:
./scripts/db/upload_schema.sh -n TABLENAME
- Create segment config
- Upload and ingest to Pinot with script:
./scripts/db/create_segment.sh -n TABLENAME
.
+-- configs
| +-- Apache Pinot tables configs
|
+-- ingestion_configs
| +-- Apache Pinot configs for data ingestion (offline tables)
|
+-- rawdata
| +-- *csv files to load in tables (offline tables)
|
+-- schemas
| +-- Apache Pinot schemas for tables
|
+-- scripts
| +-- all necessary data processing scripts
|
+-- segments (in .gitignore)
| +-- cached segments for offline tables
|
.
Making file executable:
sudo chmod +x file_path
Making folder executable
sudo chmod -R +x directory_path
!!! careful with
includeFileNamePattern: 'glob:**/*.csv'