paint-brush
Apache Cassandra: The Database that Helps Uber and Apple De-risk Their AI Projectsby@datastax
1,204 reads
1,204 reads

Apache Cassandra: The Database that Helps Uber and Apple De-risk Their AI Projects

by DataStaxAugust 7th, 2023
Read on Terminal Reader
Read this story w/o Javascript

Too Long; Didn't Read

Large-scale users of Cassandra, like Uber and Apple, exemplify how this database system can effectively lower the risk in AI/ML projects.

People Mentioned

Mention Thumbnail
featured image - Apache Cassandra: The Database that Helps Uber and Apple De-risk Their AI Projects
DataStax HackerNoon profile picture


The recent artificial intelligence tsunami has created a lot of pressure to move fast just to keep up. Some might be inclined to sacrifice stability and quality to get rolling quickly with the most cutting-edge tools. Happily, it doesn’t have to be that way.


In the world of AI and machine learning (AI/ML), the choice of a database can significantly affect the success of your project. One of the key factors to consider is the risk associated with the scalability and reliability of the database system. Apache Cassandra, a highly scalable and high-performance distributed database, has proven to be an industry leader in this regard. It offers features that significantly lower the risk associated with AI/ML projects, making it a preferred choice for many organizations.


Large-scale users of Cassandra, like Uber and Apple, exemplify how this database system can effectively lower the risk in AI/ML projects. Uber uses Cassandra for real-time data processing and for holding the feature store directly in Cassandra for predictions. The ability to start small and scale up as needed, coupled with high reliability, enables Uber to manage vast amounts of data without the risk of system failure or performance degradation. Many newer systems built for AI workloads are trying to build scalability around a particular feature, but users that do AI at scale have been using Cassandra for years.


Scalability and performance

AI/ML applications often deal with vast amounts of data and require high-speed processing. Planning for when you need capacity is a difficult task. The best plan? Just avoid it. Instead, go with a database that can scale quickly when you need it and never leave you with overprovisioned capacity.


Cassandra's core ability to scale horizontally still sets it apart from many other databases. As your data grows, you can add more nodes to the Cassandra cluster to handle increased traffic and data. It’s just that simple. This feature is particularly crucial for AI/ML applications, which deal with increasingly growing data sets.


Uber is a hyperscaler and each new product it introduces keeps pushing its scale requirements further. As one of the largest users of Cassandra, it leverages this scalability to handle its ever-increasing and changing data needs. Cassandra's high write and read throughput makes it an excellent choice for the real-time data processing required in its AI and ML applications.


Real-time processing

Real-time data processing is a critical requirement for any modern application. Milliseconds count when users are looking for the best experience. AI/ML applications often need to analyze and respond to data as it arrives, whether it's for real-time recommendations, predictive analytics or dynamic pricing models. Cassandra, with its high write and read throughput, is well-suited for such real-time processing requirements. Cassandra's architecture enables it to handle high volumes of data across many commodity servers, providing high availability with no single point of failure. This means that data can be written to and read from the database almost instantly, making it an excellent choice for applications that require real-time responses.


Uber Eats is a practical example. The application needs to process data in real-time to provide you with food recommendations and estimated delivery times. This real-time processing is made possible by Cassandra's high performance. Not only that, default replication makes infrastructure failures transparent to end users, which keeps them happy and using the application. The constant influx of changing data and wild cycles of usage is where Cassandra shines. Organizations that use Cassandra spend more time worrying about the right application features and far less about the database that supports them.


Going Global with data

With Cassandra, data is automatically replicated to multiple nodes, and these replicas provide redundancy. If one node fails, the data can still be accessed from the replicas. This feature ensures that your AI/ML applications remain up and running, even in the face of hardware failures or network issues.


But Cassandra's distributed architecture not only contributes to its high fault tolerance, it also helps you stay close to your users. Some users almost take its default global data replication for granted.


Companies like Apple and Netflix have spoken about their active-active architectures that span multiple geographies around the world for so long that it’s not even unusual. Besides fault tolerance, the user-centric aspect of this amazing ability is data locality. If you have users in North America, Asia, and Europe, centralizing data in one location will lead to agonizing latencies for some subset of your users. The solution is to just replicate data into each location and give everyone a short latency window for data.


De-risking your project

Choosing the right technology stack is a significant part of de-risking any project. With Cassandra, you can start small and scale up as needed, providing a cost-effective solution for your project. Cassandra has proven its reliability over time, with some companies running their Cassandra clusters for over 10 years without turning them off. Newer technology with features developed specifically for AI is being added, but some of the heaviest AI/ML workloads have been managed quietly and consistently with Cassandra for quite some time. That said, it’s becoming an even more relevant choice for AI/ML workloads today.


Cassandra's scalability, performance, real-time processing capabilities, and longevity have made it an excellent choice for AI/ML applications. As AI applications continue to evolve and become increasingly integral to business operations, the need for robust, reliable, and efficient databases like Cassandra will only grow. By choosing Cassandra, you're not just selecting a database; you're future-proofing your AI/ML applications.


Learn how vector databases like Cassandra and DataStax Astra DB enable large-scale generative AI projects


By Patrick McFadin, DataStax.


Also published here.