Likelihood to Recommend Apache Cassandra is a NoSQL database and well suited where you need highly available, linearly scalable, tunable consistency and high performance across varying workloads. It has worked well for our use cases, and I shared my experiences to use it effectively at the last Cassandra summit!
http://bit.ly/1Ok56TK It is a NoSQL database, finally you can tune it to be strongly consistent and successfully use it as such. However those are not usual patterns, as you negotiate on latency. It works well if you require that. If your use case needs strongly consistent environments with semantics of a relational database or if the use case needs a data warehouse, or if you need NoSQL with ACID transactions, Apache Cassandra may not be the optimum choice.
Read full review I could think of a couple but the obvious is in Fintech and Retail, because of the amount of transactional and event level data for global operations. It is imperative to have a solution that can handle such large scale date, in real-time and batch delivery for inbound and outbound delivery, and ultimately ensuring that workload management is supported in some cases for around the clock SLAs.
Read full review Pros Continuous availability: as a fully distributed database (no master nodes), we can update nodes with rolling restarts and accommodate minor outages without impacting our customer services. Linear scalability: for every unit of compute that you add, you get an equivalent unit of capacity. The same application can scale from a single developer's laptop to a web-scale service with billions of rows in a table. Amazing performance: if you design your data model correctly, bearing in mind the queries you need to answer, you can get answers in milliseconds. Time-series data: Cassandra excels at recording, processing, and retrieving time-series data. It's a simple matter to version everything and simply record what happens, rather than going back and editing things. Then, you can compute things from the recorded history. Read full review DB2 maintains itself very well. The Task Scheduler component of DB2 allows for statistics gathering and reorganization of indexes and tables without user interaction or without specific knowledge of cron or Windows Task Scheduler / Scheduled jobs. Its use of ASYNC, NEARSYNC, and SYNC HADR (High Availability Disaster Recovery ) models gives you a range of options for maintaining a very high uptime ratio. Failover from PRIMARY to SECONDARY becomes very easy with just a single command or windowed mouse click. Task Scheduler ( DB2 9.7 and earlier ) allows for jobs to be run within other jobs, and exit and error codes can define what other jobs are run. This allows for ease of maintenance without third party softwares. Tablespace usage and automatic storage help keep your data segmented while at rest, making partitioning easier. Ability to run commands via CLI (Command Line Interface) or via Control Center / Data Studio ( DB2 10.x+) makes administration a breeze. Read full review Cons Cassandra runs on the JVM and therefor may require a lot of GC tuning for read/write intensive applications. Requires manual periodic maintenance - for example it is recommended to run a cleanup on a regular basis. There are a lot of knobs and buttons to configure the system. For many cases the default configuration will be sufficient, but if its not - you will need significant ramp up on the inner workings of Cassandra in order to effectively tune it. Read full review The relational model requires a rigid schema that does not necessarily fit with some types of modern development. Proprietary database, requires a lot of Hardware for its good performance and its costs are high. As data grows in production environment, it becomes slow. Read full review Likelihood to Renew I would recommend Cassandra DB to those who know their use case very well, as well as know how they are going to store and retrieve data. If you need a guarantee in data storage and retrieval, and a DB that can be linearly grown by adding nodes across availability zones and regions, then this is the database you should choose.
Read full review The DB2 database is a solid option for our school. We have been on this journey now for 3-4 years so we are still adapting to what it can do. We will renew our use of DB2 because we don’t see. Major need to change. Also, changing a main database in a school environment is a major project, so we’ll avoid that if possible.
Read full review Usability It’s great tool but it can be complicated when it comes administration and maintenance.
Read full review You have to be well versed in using the technology, not only from a GUI interface but from a command line interface to successfully use this software to its fullest.
Read full review Reliability and Availability I have never had DB2 go down unexpectedly. It just works solidly every day. When I look at the logs, sometimes DB2 has figured out there was a need to build an index. Instead of waiting for me to do it, the database automatically created the index for me. At my current company, we have had zero issues for the past 8 years. We have upgrade the server 3 times and upgraded the OS each time and the only thing we saw was that DB2 got better and faster. It is simply amazing.
Read full review Performance The performances are exceptional if you take care to maintain the database. It is a very powerful tool and at the same time very easy to use. In our installation, we expect a DB machine on the mainframe with access to the database through ODBC connectors directly from branch servers, with fabulous end users experience.
Read full review Support Rating Sometimes instead giving straight answer, we ‘re getting transfered to talk professional service.
Read full review Easily the best product support team. :) Whenever we have questions, they have answered those in a timely manner and we like how they go above and beyond to help.
Read full review In-Person Training the material was very clear and all subjects have been handled
Read full review Implementation Rating db2 work well with the application, also the replication tool can keep it up
Read full review Alternatives Considered We evaluated
MongoDB also, but don't like the single point failure possibility. The
HBase coupled us too tightly to the Hadoop world while we prefer more technical flexibility. Also
HBase is designed for "cold"/old historical data lake use cases and is not typically used for web and mobile applications due to its performance concern. Cassandra, by contrast, offers the availability and performance necessary for developing highly available applications. Furthermore, the Hadoop technology stack is typically deployed in a single location, while in the big international enterprise context, we demand the feasibility for deployment across countries and continents, hence finally we are favor of Cassandra
Read full review DB2 was more scalable and easily configurable than other products we evaluated and short listed in terms of functionality and pricing. IBM also had a good demo on premise and provided us a sandbox experience to test out and play with the product and DB2 at that time came out better than other similar products.
Read full review Scalability By using DB2 only to support my IzPCA activities, my knowledge here is somewhat limited.
Anyway, from what I was able to understand, DB2 is extremely scallable.
Maybe the information below could serve as an example of scalability.
Customer have an huge mainframe environment, 13x z15 CECs, around 80 LPARs, and maybe more than 50 Sysplexes (I am not totally sure about this last figure...)
Today we have 7 IzPCA databases, each one in a distinct Syplex.
Plans are underway to have, at the end, an small LPAR, with only one DB2 sub-system, and with only one database, then transmit the data from a lot of other LPARs, and then process all the data in this only one database.
The IzPCA collect process (read the data received, manipulate it, and insert rows in the tables) today is a huge process, demanding many elapsed hours, and lots of CPU.
Almost 100% of the tables are PBR type, insert jobs run in parallel, but in 4 of the 7 database, it is a really a huge and long process.
Combining the INSERTs loads from the 7 databases in only one will be impossible .......,,,,
But, IzPCA recently introduced a new feature, called "Continuous Collector" .
By using that feature, small amounts of data will be transmited to the central LPAR at every 5 minutes (or even less), processed immediately ,in a short period of time, and with small use of CPU , instead of one or two transmissions by day, of very large amounts of data and the corresponding collect jobs occurring only once or twice a day, with long elapsed times, and huge comsumption of CPU
I suspect the total CPU seconds consumed will be more or less the same in both cases, but in the new method it will occur in small bursts many times a day!!
Read full review Return on Investment I have no experience with this but from the blogs and news what I believe is that in businesses where there is high demand for scalability, Cassandra is a good choice to go for. Since it works on CQL, it is quite familiar with SQL in understanding therefore it does not prevent a new employee to start in learning and having the Cassandra experience at an industrial level. Read full review There is great value the solution brings when it comes to building stored procedures and ongoing tasks that allows our team to streamlines processes. The platform has allowed us to see value by providing a solution for data structuring and data hygiene which prevents deduplication of data and lowers costs With the integration capabilities it allows our analytics team to more seamlessly create highly visible dashboards that see directly into the data and pinpoint areas that need attention. Read full review ScreenShots