我想了解使用RDBMS进行Hive元数据而不是文件系统的设计原则。
在我看来,正在提供-
并发控制
酸性质
亚秒延迟等。
文件系统可以提供-
数据复制
可以通过使用动物园管理员来实现并发
在蜂巢的设计过程中,还有什么其他事情影响到这个决定吗?
发布于 2016-05-30 06:21:01
您可以在论文中找到hive为什么使用RDBMS的原因:"Hive:基于地图的仓库解决方案--约简框架“。
它描述如下:
“应该为具有随机访问和更新的在线事务优化亚稳态存储系统。像HDFS这样的文件系统不适合用于顺序扫描而不是随机访问。因此,亚稳态使用传统的关系数据库(如MySQL、甲骨文)或文件系统(如本地、NFS、AFS),而不是HDFS。因此,只访问元数据对象的HiveQL语句的执行延迟非常低。然而,Hive必须显式地维护元数据和数据之间的一致性。”
发布于 2016-02-19 07:43:57
据我所知,他们选择在关系数据库管理系统( RDBMS )中存储单元表的元信息的这种方法,而不是将这些信息存储在中,因为它们需要元存储(模式、分区、其他信息)非常低的延迟。
发布于 2017-06-29 10:25:13
使用RDBMS存储元数据的原因: CRUD操作不可能,不允许编辑HDFS中的文件或数据,元数据存储元数据使用RDBMS提供较低的查询延迟,HDFS读写操作是耗时的过程。
https://stackoverflow.com/questions/35498992
复制相似问题