The Four Main Challenges with Apache Cassandra™
Enterprises are increasingly flocking to open source technology because of its accessibility, theoretical cost-effectiveness, and ability to attract top talent.
According to the 2018 Open Source Program Management Survey, 53% of companies say their organization has an open source software program or plan to establish one within the next year, and according to the 2016 Global Developer Report, 98% of developers use open source tools—even when they’re not supposed to.
Here at DataStax we’re HUGE Apache Cassandra fans! We based our technology on Cassandra for good reason: it’s fast, flexible, and foundational. Enterprises can form their data management strategies on it and be confident they’ll be able to scale with their growth.
That said, as with other open source tools, Cassandra does present certain challenges at the enterprise level. While these challenges are easily overcome with the right strategy and resources, we think it’s worth exploring exactly what these challenges are, the hidden costs associated with them, and why most enterprises end up needing a little extra help to tap into the full potential of Cassandra.
1. Rising maintenance costs
Open source solutions are becoming more and more popular in the enterprise because they’re easier to adopt and they eliminate licensing fees. They eliminate the need for extensive contract negotiations, which can be stressful and time-consuming.
However, while open source tools may be free to deploy, they do come with hidden ongoing maintenance costs that can have a significant impact on total cost of ownership (TCO) beyond the cost of acquiring the software.
When companies move to open source they end up either investing in internal talent to develop and maintain the technology or depending on a network of third-party developers, especially the open source community. Contributions are voluntary and are made when a contributor has the time and not necessarily when an organization has a need.
Still, companies that use open source depend on these contributions for things like maintenance, bug fixes, and new features.
These dependencies introduce a lot of risk into the equation, making it more difficult for enterprises to meet service-level agreements as well as bringing the potential of downtime and the costs associated with lost business.
2. Security, compliance, and governance risk
HIPAA, Sarbanes-Oxley, GDPR—oh my.
Different industries in different countries are forced to comply with different regulations.
One of the main reasons open source projects fail or run into issues is because of security compliance. It’s often difficult for organizations to implement global security standards to ensure compliance, particularly in hybrid cloud environments. This makes the complete adoption and use of open source software that much more challenging.
Failure to comply with these regulations exposes organizations in regulated industries to significant financial and reputational risk. While Cassandra does offer some built-in security features out of the box—like role-based authentication and authorization—these features, by themselves, can’t guarantee security for organizations that operate in heavily regulated industries.
3. Ad hoc support from multiple sources
Because Cassandra’s free, it’s easy to adopt. This ease of implementation, however, comes with its own challenges.
Individual teams usually end up implementing the database on an ad hoc basis. As the deployment scales and multiplies across the organization, the need for support services increases.
In many cases, organizations end up with a patchwork quilt of support and services from a variety of different sources: some in-house resources, the open source community, and third-party agencies. All of these come with varying levels of Cassandra expertise and response time.
It’s not the most efficient, cost-effective, or reliable approach, to say the least.
4. Limited Apache Cassandra expertise
Cassandra boasts a robust community that offers a rich set of collective knowledge. But much of that knowledge isn’t organized in an intuitive way.
Implementing and configuring Cassandra requires a significant learning curve. Most companies find out that it’s very difficult and costly to hire in-house expertise because there’s a limited supply of talent.
Employees usually end up educating themselves on Cassandra, using a combination of open source documentation, help from the community, and trial and error. This slows down adoption and puts an enormous administrative burden on IT.
While open source software can help organizations achieve their goals, it is not without its drawbacks. Hidden costs, security risks, a patchwork network of support services, and a lack of expertise are all reasons why organizations struggle with open source adoption.