Hi everyone, I’d like to get the community’s persp...
# general
n
Hi everyone, I’d like to get the community’s perspective on the best backend database to pair with Apache Pinot for real-time analytics on sensor data. Has anyone used Cassandra, InfluxDB, or TimescaleDB as the source-of-truth database before streaming into Pinot? What are the pros and cons you’ve seen? Looking forward to your insights!
x
Depends on your workload/requirement/use cases and what your existing architecture looks like. • Cassandra is often the most popular for large-scale, multi-tenant sensor data — especially where long-term durability and availability are key. • InfluxDB is used in setups where sensor data is mostly operational (monitoring/alerting), with Pinot handling aggregated or enriched event streams. • TimescaleDB is less commonly used in massive real-time systems due to scalability limits but is popular in smaller setups or when PostgreSQL compatibility is a must.
Copy code
[Sensors] 
    ↓
[Kafka / MQTT] 
    ↓
[Pinot] & [TimeSeries DB]
    ↓
[Dashboards / Superset / Alerts]
cc: @Shaurya Chaturvedi might have some insights and experience.
s
@Nagaraj Lakkarasu In my former team, we coupled Pinot with Cassandra to serve a disjoint set of queries: • Pinot for the real-time analytics and user cohorting (i.e. give me a set of users which are present in an audience - [an audience is a set of constraints on some user attributes]). • Cassandra for the point queries and updates (i.e. is a single or a set of users a part of this audience)? The ingestion for Pinot and Cassandra were disjoint as well, but we have occassional backfills from Cassandra to Pinot to maintain data parity.
👍 1
n
Thank you @Shaurya Chaturvedi @Xiang Fu!
m
@Nagaraj Lakkarasu I am curious about your ask, could you share a bit more on what you are trying to do?