Apache Kafka vs. Apache Solr

Overview
ProductRatingMost Used ByProduct SummaryStarting Price
Apache Kafka
Score 7.7 out of 10
N/A
Apache Kafka is an open-source stream processing platform developed by the Apache Software Foundation written in Scala and Java. The Kafka event streaming platform is used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.N/A
Apache Solr
Score 8.9 out of 10
N/A
Apache Solr is an open-source enterprise search server.N/A
Pricing
Apache KafkaApache Solr
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Apache KafkaApache Solr
Free Trial
NoNo
Free/Freemium Version
NoNo
Premium Consulting/Integration Services
NoNo
Entry-level Setup FeeNo setup feeNo setup fee
Additional Details
More Pricing Information
Community Pulse
Apache KafkaApache Solr
Best Alternatives
Apache KafkaApache Solr
Small Businesses

No answers on this topic

Yext
Yext
Score 8.9 out of 10
Medium-sized Companies
IBM MQ
IBM MQ
Score 9.6 out of 10
Guru
Guru
Score 9.5 out of 10
Enterprises
IBM MQ
IBM MQ
Score 9.6 out of 10
Guru
Guru
Score 9.5 out of 10
All AlternativesView all alternativesView all alternatives
User Ratings
Apache KafkaApache Solr
Likelihood to Recommend
8.0
(0 ratings)
9.0
(0 ratings)
Likelihood to Renew
9.0
(0 ratings)
-
(0 ratings)
Usability
8.0
(0 ratings)
-
(0 ratings)
Support Rating
8.4
(0 ratings)
-
(0 ratings)
User Testimonials
Apache KafkaApache Solr
Likelihood to Recommend
For brokering messages, Confluent Kafka is well suited since it offers a managed solution ready to use. Scenarios where the solution is not very well suited are for example, where pricing is an issue. The solution costs quite a lot for basic usage (for example: for 3 clusters, pricing is above 100k$ a year).
Read full review
Very effective for end-user searching applications and for generating search results. Also very well suited to those looking for high reliability and performance. If [you're doing] fuzzy searching or if you are working on a smaller end-user application or an internal application that does not require high performance and flexible/adapting searching then it may not be necessary to use Solr.
Read full review
Pros
  • Apache Kafka is able to handle a large number of I/Os (writes) using 3-4 cheap servers.
  • It scales very well over large workloads and can handle extreme-scale deployments (eg. Linkedin with 300 billion user events each day).
  • The same Kafka setup can be used as a messaging bus, storage system or a log aggregator making it easy to maintain as one system feeding multiple applications.
Read full review
  • Faceted navigation and field collapsing/grouping : filtering and quick results were what we needed for our websites. Our customers needed to have this functionalities for good and efficient results.
  • We tested them with our customers' registered searches (they received all new goods matching with their registered searches by emails and/or mobile push). Results were incredible by comparison with our old system (old MySQL requests).
  • Note : we didn't put all our data in Solr. Just what we need for searching uses. Other data stayed in our MySQL database.
  • Auto-suggest : our old auto-suggest wasn't performing well. With Apache Solr, our new one was worked really well ! The suggestions came quickly and suggestions were good.
  • We also extended auto-suggestion with geo-spatial data and it worked well.
  • Hit highlighting : we used this functionality and we didn't have problem and nasty surprise.
  • Keep all data status during data upgrading (see next details for improvements)
Read full review
Cons
  • The Kafka Tool is a community-made Java application that looks and feels from the past century.
  • Logging can be confusing. This certainly shows when we have to do troubleshooting.
  • Hybrid scenarios - pub/sub, but there are services in and outside a Kubernetes cluster. Then there are a ~3 options, but only 2 (the harder ones) are production-safe.
Read full review
  • Ease of use -- this is not always the easier platform to configure.
  • Developer Community -- There are not a whole lot of folks out there that understand this stuff so finding talent is difficult.
  • Drupal 8 -- We've been frustrated with slow development on APIs for Drupal 8 integration.
Read full review
Likelihood to Renew
Kafka has suited our use case very well so far. Going forward we are planning to expand our platform manifold so the load on Kafka and our reliance on Kafka is going to increase only.
Read full review
No answers on this topic
Usability
Apache Kafka is highly recommended to develop loosely coupled, real-time processing applications. Also, Apache Kafka provides property based configuration. Producer, Consumer and broker contain their own separate property file
Read full review
It takes some time to deploy and currectly maintein it. And also, to learn how to use and integrate in the enviroment as well. Once you get theses steps done, it usability is very simple, and almost of the time it don't require no further attention on it. Even for maintence, if you deploy it on a cluster mode, it is very reliable and easy to take one host down.
Read full review
Support Rating
Support for Apache Kafka (if willing to pay) is available from Confluent that includes the same time that created Kafka at Linkedin so they know this software in and out. Moreover, Apache Kafka is well known and best practices documents and deployment scenarios are easily available for download. For example, from eBay, Linkedin, Uber, and NYTimes.
Read full review
No answers on this topic
Alternatives Considered
Apache Kafka is built for scale. From high throughput and real-time data streaming, it has a strong advantage over RabbitMQ with its low latency. This put Apache Kafka at the forefront as the platform of choice for large datasets messaging and ensuring scalability when data scale up tremendously. RabbitMQ however has its strengths in traditional messaging. Routing and message delivery reliability are the bedrock of RabbitMQ and this is where RabbitMQ excels. In my previous workplace, RabbitMQ was of choice as reliability matters more than scale. In two words. Apache Kafka for scale, RabbitMQ for reliability. And for cloud deployment and large dataset messaging in what I am doing now, Apache Kafka is the default choice.
Read full review
We switched from search indexes stored in MySQL to soar and it's made a world of difference for our growing businesses. The relational databases are very poor for handling the complex data searches require and Solr delivered all the tools we need to get the performance our end users are demanding.
Read full review
Return on Investment
  • Positive: bursts of traffic on special holidays are easy to handle because Kafka can absorb and buffer all the messages we need to process long enough to let an understaffed set of back-end services catch up on processing. Hard to put a number to it but we probably save $5k a month having fewer machines running.
  • Positive: makes decoupling the web and API services from the deeper back-end services easier by providing topics as an interface. This allowed us to split up our teams and have them develop independently of each other, speeding up software development.
  • Negative: our engineers have made mistakes such as accidentally dropping a few thousand messages due to the CLI being confusing to use, and as a result a customer lost some of their precious data. I'd say that was more our fault than Kafka's though.
Read full review
  • It's enabled us to deliver fast, relevant search results on our new website. The site is still in beta and being actively developed so our complete ROI is still unknown.
  • It integrates very well with Drupal so it has saved us from having to develop a custom solution.
Read full review
ScreenShots