hdfs mongodb的区别是什么

  • 来源:网络
  • 更新日期:2020-08-24

摘要:hdfs mongodb的区别是:1、MongoDB适合无严格事务性要求的各种数据,而HDFS对大量小文件的存储开销比较大,适合大文件处理;2、MongoDB适合做缓存,而更加适合写入一次,读取多次的应用

hdfs mongodb的区别是:1、MongoDB适合无严格事务性要求的各种数据,而HDFS对大量小文件的存储开销比较大,适合大文件处理;2、MongoDB适合做缓存,而更加适合写入一次,读取多次的应用场景。

hdfs mongodb的区别是:

MongoDB: 日志的采集和存储,小文件的分布式存储,类似互联网微博应用的数据存储

1)适合无严格事务性要求的各种数据,如对象数据,JSON格式数据

2)由于性能非常高,非常适合实时的插入,更新与查找,并具备高度伸缩性

3)适合做缓存

HDFS:适合大文件存储,可append,但不可修改。适合Hadoop离线数据分析,Apache Spark的数据存储。

1)HDFS对大量小文件的存储开销比较大,适合大文件处理,如果有多个小文件,可以合并为大文件再处理

2)HDFS适用于高吞吐量,而不适合低时间延迟的访问

3)HDFS适用于流式读取的方式,不适合多用户写入一个文件、随机写以及文件的覆盖操作

4)HDFS更加适合写入一次,读取多次的应用场景

mongodb适用于以下场景:

a.网站数据:mongo非常适合实时的插入,更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。

b.缓存:由于性能很高,mongo也适合作为信息基础设施的缓存层。在系统重启之后,由mongo搭建的持久化缓存可以避免下层的数据源过载。

c.大尺寸、低价值的数据:使用传统的关系数据库存储一些数据时可能会比较贵,在此之前,很多程序员往往会选择传统的文件进行存储。

d.高伸缩性的场景:mongo非常适合由数十或者数百台服务器组成的数据库。

e.用于对象及JSON数据的存储:mongo的BSON数据格式非常适合文档格式化的存储及查询。

不适合的场景:

a.高度事物性的系统:例如银行或会计系统。传统的关系型数据库目前还是更适用于需要大量原子性复杂事务的应用程序。

b.传统的商业智能应用:针对特定问题的BI数据库会对产生高度优化的查询方式。对于此类应用,数据仓库可能是更合适的选择。

c.需要SQL的问题。

HDFS适用场景

GB、TB、甚至PB级数据

百万规模以上的文件数量

10K+节点规模