我是hbase的新手,想了解更多。我只想知道hbase中是否有自动提交的概念?
htzpubme1#
hbase文档—它不是符合acid的数据库。但是,它确实保证了某些特定的属性。本规范列举了hbase的酸性特性。它们是hbase中的autoflush概念,类似于autocommit。但是,如果您使用apachephoenix获取或更新hbase中的数据,那么您可以设置属性 phoenix.connection.autoCommit 如果默认为true,则为false。
phoenix.connection.autoCommit
iq0todco2#
提交主要出现在两个位置:insert/update(放入hbase)和delete(在hbase中删除)由于我们处在大数据环境中,当您摄取大量数据时,需求将有所不同。正如文档中所提到的,autocommit应该设置为false,以获得更好的性能,而不是单独维护每个记录。它通常有助于处理缓冲区,并在hbase的区域服务器上进行加载。删除hbase不会就地修改数据,因此删除是通过创建称为逻辑删除的新标记来处理的。这些墓碑,连同死亡的价值观,被清理的主要紧凑关于phoenix的最后一句话,hbase之上的任何层最终都将基于hbase体系结构工作。希望这对你的设计有帮助
2条答案
按热度按时间htzpubme1#
hbase文档—它不是符合acid的数据库。但是,它确实保证了某些特定的属性。本规范列举了hbase的酸性特性。
它们是hbase中的autoflush概念,类似于autocommit。
但是,如果您使用apachephoenix获取或更新hbase中的数据,那么您可以设置属性
phoenix.connection.autoCommit
如果默认为true,则为false。iq0todco2#
提交主要出现在两个位置:insert/update(放入hbase)和delete(在hbase中删除)
由于我们处在大数据环境中,当您摄取大量数据时,需求将有所不同。
正如文档中所提到的,autocommit应该设置为false,以获得更好的性能,而不是单独维护每个记录。它通常有助于处理缓冲区,并在hbase的区域服务器上进行加载。
删除
hbase不会就地修改数据,因此删除是通过创建称为逻辑删除的新标记来处理的。这些墓碑,连同死亡的价值观,被清理的主要紧凑
关于phoenix的最后一句话,hbase之上的任何层最终都将基于hbase体系结构工作。希望这对你的设计有帮助