MapR-DB和Hbase之间的区别

Sha*_*shi 4 hadoop hbase mapr

我在MapR中有点新,但我知道hbase.我正在阅读其中一个视频,我发现Mapr-DB是MapR中的NoSQL DB,它与Hbase类似.除此之外,Hbase也可以在MapR上运行.我在MapR-Db和Hbase之间感到困惑.它们之间的确切区别是什么?

何时使用Mapr-DB以及何时使用Hbase?

基本上我有一个java代码在MapR上的Hbase中进行批量加载,现在这里如果我使用我用于Apache hadoop的相同代码,那么代码在这里工作吗?

请帮我避免这种混乱.

小智 7

它们都是NOSQL,广泛的专栏店.

HBase是开源的,可以作为Hadoop安装的一部分安装.

MapR-DB是MapR提供的专有(非开源)NOSQL数据库.MapR将详细介绍MapR-DB(以及它们的文件系统(它们不使用HDFS))的核心区别在于MapR-DB提供了超过HBase的显着性能和可扩展性(无限的表,列,重新架构等等) ).

MapR坚持认为您可以互换使用MapR-DB或HBase.我建议在进行一对一之前对两者进行广泛的测试.您还需要意识到MapR-DB是MapR专有的NOSQL HBase等价物,如果您需要MapR-DB支持,您必须从MapR获得(HBase支持可以来自任何其他Hadoop发行版以及开放来源社区).

您应该查看的一些链接:http : //www.theregister.co.uk/2013/05/01/mapr_hadoop_m7_edition_solr/ https://www.mapr.com/blog/get-real-hadoop-enterprise-grade-nosql #.VVfHuvlVhBc


Ash*_*shu 5

它们相似但不相同.MapR声称MapR DB更快,更高效,因为它们已经迁移了本机C/C++代码中的关键功能,并且接口保持不变.但是,当天结束时,MapR DB是支持性的,并且您依赖于MapR的支持来完成与HBase不同的任何事情.我不喜欢MapR-DB,因为它与Apache Phoenix不兼容(在MapR DB中不存在HBase协处理器) - 访问HBase类NoSQL数据库的SQL方式.我从MapR文档中获取的限制:

  • 不支持自定义HBase过滤器.
  • 不支持列族的用户权限.支持表和列的用户权限.
  • 不支持HBase身份验证.
  • 使用Mirror Volumes处理HBase复制.
  • 不支持使用HFiles解决方法的批量加载,也不是必需的.不支持HBase协处理器.
  • 过滤器使用不同的正则表达式库
    • 不支持Co处理器

所以我先前的第二个答案 - 在太远之前尝试使用(MapR DB与HBase)的解决方案.我不喜欢MapR的MapR DB,因为它具有支持性,代码不是开源的.如果任何Hadoop经销商正在增强hadoop - 他们也应该将其提供给开源社区.为什么在使用开源时应该完全依赖商业支持.

  • “如果任何Hadoop发行商正在增强hadoop,他们也应该将其提供给开源社区”。由于它完全重写了架构差异,因此并没有真正增强Hadoop的实现。他们能完全重写开源代码吗?-是的,也许他们可以。社区也可以采纳并应用MapR实施中的一些想法。 (2认同)
  • 为了补充 IceMan 的评论,我什至不会将其描述为对 Hadoop 的重写。这是一个完全不同的系统,它恰好公开了一些相同的 API 以使转换更容易。 (2认同)