Likelihood to Recommend Hbase is well suited for large organizations with millions of operations performing on tables, real-time lookup of records in a table, range queries, random reads and writes and online analytics operations. Hbase cannot be replaced for traditional databases as it cannot support all the features, CPU and memory intensive. Observed increased latency when using with MapReduce job joins.
Read full review Neo4J is great for creating network graphs or illustrating how things are related. It is also good for finding individuals or things that have greater influence than others in a system. It is not appropriate if you have standard data sets that can be analyzed using conventional methods or visualized using
Tableau , for example.
Read full review Pros Scalability. HBase can scale to trillions of records. Fast. HBase is extremely fast to scan values or retrieve individual records by key. HBase can be accessed by standard SQL via Apache Phoenix. Integrated. I can easily store and retrieve data from HBase using Apache Spark. It is easy to set up DR and backups. Ingest. It is easy to ingest data into HBase via shell, Java, Apache NiFi, Storm, Spark, Flink, Python and other means. Read full review Mature Query language, I found Cypher QL to be mature in handling all sorts of problems we throw at it. Its expressive enough to be intuitive while providing rich features for various scenarios. Native support for REST API, that makes interacting with Neo4J intuitive and easy. Support for Procedures in Java, procedures are custom code that could be added to the Neo4J to write custom querying of data. The best part about the procedures is it could be invoked using the REST API. This allows us to overcome any shortcomings from their Cypher query language. Nice UI and interface for executing the Query and visualizing the response. UI access controlled by User credentials allows for neat access controls. Awesome free community edition for small-scale projects. Read full review Cons There are very few commands in HBase. Stored procedures functionality is not available so it should be implemented. HBase is CPU and Memory intensive with large sequential input or output access while as Map Reduce jobs are primarily input or output bound with fixed memory. HBase integrated with Map-reduce jobs will result in random latencies. Read full review One of the hardest challenges that Neo4j had to solve was the horizontal scaling problem. I am not updated on recent developments, but at the time of my use, I couldn't find a viable solution. Neo4j does not play with other open source APIs like Blueprint. You have to use the native Neo4j API. There wasn't a visual tool to see your data. Of course, third party tools are always available, but I would have loved something which came with the Neo4j bundle. I love that Docker comes bundled with Kitematic, so it's not wrong to hope that Neo4j could also ship with some default visualization software. Read full review Likelihood to Renew There's really not anything else out there that I've seen comparable for my use cases. HBase has never proven me wrong. Some companies align their whole business on HBase and are moving all of their infrastructure from other database engines to HBase. It's also open source and has a very collaborative community.
Read full review Usability [Based on] Query Language, Performance on small and large data sets, integration and deployment, analysis, API support, Interactive UI.
Read full review Alternatives Considered Cassandra os great for writes. But with large datasets, depending, not as great as HBASE.
Cassandra does support parquet now. HBase still performance issues.
Cassandra has use cases of being used as time series. HBase, it fails miserably. GeoSpatial data, Hbase does work to an extent. HA between the two are almost the same.
Read full review Neo4j is a graph store and has different use cases compared to another NoSQL Document store like
MongoDB .
MongoDB is a bad choice when joins are common as existing operators for joining two documents (similar to tables in a relational store) as Mongo 3.5 use SQL like join algorithms which are expensive.
MongoDB is a great choice when distributed schemaless rich document structures are important requirements. Cross document transaction support is not native to
MongoDB yet, whereas Neo4J is ACID complaint with all its operations.
Read full review Return on Investment As Hbase is a noSql database, here we don't have transaction support and we cannot do many operations on the data. Not having the feature of primary or a composite primary key is an issue as the architecture to be defined cannot be the same legacy type. Also the transaction concept is not applicable here. The way data is printed on console is not so user-friendly. So we had to use some abstraction over HBase (eg apache phoenix) which means there is one new component to handle. Read full review Positive: Less complex queries on graph structures, than in relational databases. Negative: maintenance is a huge deal, things doesn't work and break, requiring lengthy restore operations. Read full review ScreenShots