Hbase 当属性writeBehindEnbled设置为true时,插入速率降低

Hbase 当属性writeBehindEnbled设置为true时,插入速率降低,hbase,ignite,Hbase,Ignite,我通过将write-through设置为true来使用Ignite的缓存适配器 场景1: 在write-through中,我将数据持久化到HBase 为此,我在Ignite和HBase中分别插入了100000个对象,所需时间约为82秒 场景2: 我把“写在财产后面”改为“真” 我在Ignite中插入了100000个对象,然后在HBase中插入,这需要大约124秒的时间 下面是结果 Write-behind Objects Time in ms tr

我通过将write-through设置为true来使用Ignite的缓存适配器

场景1:

  • 在write-through中,我将数据持久化到HBase
  • 为此,我在Ignite和HBase中分别插入了100000个对象,所需时间约为82秒
场景2:

  • 我把“写在财产后面”改为“真”
  • 我在Ignite中插入了100000个对象,然后在HBase中插入,这需要大约124秒的时间
下面是结果

    Write-behind      Objects      Time in ms

     true             1,00,000      81962
     false            1,00,000      123517
据我所知,如果我们使用write-behind缓存,它将作为异步模式工作
但它正在产生意想不到的结果。我哪里出了问题

你在这里期待什么结果?Write-behind模式只是将存储更新安排在以后,这比每次缓存更改时立即更新快得多


要调整它的行为,您可以检查,,。

谢谢您的响应,实际上,当write behind属性设置为true时,我希望插入速度更快。但它让我看到了完全的反差。由于write-behind是一种异步操作,因此它不应该等待HBase中的持久数据。write-behind提供较小的延迟,但在您的情况下,吞吐量是经过测量的。当未刷新的数据集大小达到某个阈值(默认值为
getWriteBehindFlushSize
的1.5)时,存储开始以直写模式工作,刷新线程也会对GC施加额外的压力。尝试将
setWriteBehindFlushSize
设置为100000。Write-behindFlushSize使插入缓存的延迟更快。底层存储更新是异步的,因此可能会延迟,因此可能需要“更长的时间”。感谢您的输入。我想对ignite和hbase进行基准测试。对于HBase,我使用YCSB。有什么工具可以让我对Ignite进行基准测试吗。