From Minutes to Milliseconds: Verint's Journey to Real-Time Analytics with InfluxDB

Navigate to:

Verint is a customer experience automation platform that helps its customers streamline and improve the efficiency of their customer service teams. Verint’s AI-powered CX tools have resulted in improved customer retention, NPS scores, and cost-savings in the millions.

Challenge

A rapidly growing company, Verint faced scalability challenges storing analytics data with its previous database. The platform needed to store higher granularity data for longer periods to keep up with the increasing volume of monitoring data generated and improve the reliability of its services.

Verint was originally using a relational database that began to struggle with data ingestion and query performance. While scaling hardware resources worked for some time, they hit a performance wall at around 400 million data points per month, and queries that previously took milliseconds began taking minutes to return results.

Verint has 40 different global services, and at its current growth rate it required a database that could scale to billions of data points per month and beyond in the near future.

Looking for solutions

Verint’s search for a new solution led them to evaluate several time series databases, including:

  • OpenTSDB
  • Amazon Timestream
  • TimescaleDB

However, deployment flexibility, maintainability, and performance limitations ruled out many of these options. Verint wanted an on-prem solution for security reasons, which ruled out cloud-based services. It also wanted a database that could be deployed and managed easily within its Kubernetes-based cloud-native architecture. After doing multiple proofs of concept, the Verint team decided to go with InfluxDB Clustered.

InfluxDB benefits

Beyond performance and scalability, Verint chose InfluxDB Clustered for several reasons:

  • On-Prem Deployment: For security reasons, Verint wanted a database that could run on its own infrastructure, ruling out any cloud database services. Running InfluxDB on-prem can also reduce latency, allow for more control over hardware allocation, and enable users to configure how data is partitioned to fine-tune performance for specific workloads.
  • Cloud Native Architecture - InfluxDB 3.0’s decoupled architecture allows Verint to efficiently scale data ingestion and querying without impacting performance as they make data available to more teams internally.
  • Continued InfluxDB Performance Improvements: The Verint team noticed that even during their proof of concept testing with InfluxDB 3.0, its queries continued to get faster as the InfluxDB team continued rolling out performance optimizations. This gave the Verint team even more confidence that building on InfluxDB was a good long-term decision.
  • Columnar Storage with Parquet Files: InfluxDB’s use of Parquet files for storage resonated with Verint’s need for long-term analytical capabilities. Parquet’s format enabled seamless integration with existing analytical tools.
  • Developer Productivity: InfluxDB 3.0 supports FlightSQL, which makes integrating services that write and read data from InfluxDB much easier.
  • Backup and Recovery: Because InfluxDB 3.0 stores data in durable object storage, any potential outage of the cluster doesn’t result in data loss. Competing solutions lacked robust backup capabilities out of the box.

Future plans

Verint is currently ingesting hundreds of millions of data points per month into InfluxDB. As it continues to migrate more services to the new monitoring system, projects are expected to grow into the billions per month in 2025.

The Verint team is particularly excited about an upcoming feature allowing InfluxDB users to take historical snapshots of Parquet files. The team plans to integrate these snapshots with query engines like Trino to make data more easily accessible to other teams and allow more analysis to be done on historical data without impacting real-time monitoring Verint is also experimenting with using Apache Superset to create dashboards and visualizations using the data stored with InfluxDB.