Hippo

Created by Yash Mehrotra

Resources used:

  • InfluxDB
  • Kafka
  • Telegraf integrations for Grafana

Yash Mehrotra is a final-year college student pursuing a Bachelor of Technology in Information Technology. He enjoys building projects, going to hackathons, and spending time coming up with innovative ideas to solve real world problems. His project had the same pre-thought as he was having issues regarding log-management during one of his internships and thus used InfluxDB with Kafka to solve that problem. Mehrotra loves to go on high altitude treks and dreams of summiting Mount Everest one day.

Customer Success Story: Hippo

Mehrotra used InfluxDB for a personal project to help manage high-streaming server side logs. His project, called Hippo, uses InfluxDB to store high rate data that is produced from gRPC or REST based clients. All the clients (be it REST or gRPC) interact with a Kafka-proxy, and it then publishes those messages to the given Kafka topic. These messages are sent in bulk instead of individually to improve the system’s performance. Once all this is done, the topics flush the data to InfluxDB and are stored there for analysis later on.

Mehrotra likes InfluxDB because of the high ingest, smooth integration with other tools, open source community, performance, query language, and scalability. Since Hippo is meant to be a data ingestor service, high ingestion was a pivotal feature that was required for a DB to have. High performance will be of no use if the DB cannot interact with other services — this is where InfluxDB stood out and was able to interact with Kafka-queues using timberio/vector OS. Hippo uses Kafka as source and InfluxDB as the sink. Now once the data is stored inside the DB, you want to query it like normal databases and need a query language for analysis. All this data is mission-critical and cannot afford to be lost — this is where scalability is the key.

Mehrotra would recommend InfluxDB because of its simplicity and high ingestion rates. Moreover, the community is great and has made sure that you take full advantage of everything InfluxDB has to offer, creating Telegraf integrations for Grafana, Graphite etc. He also notes that InfluxDB also has its own query language that is really simple and easy to learn. Alongside, you have the feature of retention policies that really help in case of determining the lifeline of data.

There are a few concepts that Mehrotra was stuck on while using InfluxDB for the first time and would like to provide the following tips:

  1. Buckets in case of InfluxDB <2.0 is “DB-NAME/RETENTION_POLICY”
  2. When making queries to a particular SERIES, use double quotes
Scroll to Top