pto*_*oos 7 storage azure azure-table-storage
我正在针对ATS运行性能测试,并且在针对同一个表/存储帐户使用多个虚拟机时,它的行为有点奇怪.
整个管道是非阻塞的(等待/异步)并使用TPL进行并发和并行执行.
首先,它非常奇怪,通过这种设置,我只得到大约1200次插入.这是在L VM盒上运行的,即4核+ 800mbps.
我正在插入具有独特PK和唯一RK的100.000行,这应该利用最终分布.
更确定的行为如下.
当我运行1个VM时,每秒大约有1200个插入.当我运行3个VM时,每秒插入一次大约730个.
阅读他们指定目标的博客文章非常幽默. https://azure.microsoft.com/en-gb/blog/windows-azures-flat-network-storage-and-2012-scalability-targets/
单表分区 - 表分区是表中具有相同分区键值的所有实体,通常表具有许多分区.单个表分区的吞吐量目标是:
每秒最多2,000个实体
请注意,这适用于单个分区,而不是单个表.因此,具有良好分区的表可以处理多达20,000个实体/秒,这是上述的整体帐户目标.
我该怎么做才能够每秒使用20k,如何每个VM执行超过1,2k?
-
更新:
我现在还尝试为每个单独的节点使用3个存储帐户,并且仍然获得性能/限制行为.我无法找到合乎逻辑的理由.
-
更新2:
我已经进一步优化了代码,现在我可以执行大约1550.
-
更新3:
我现在也曾在美国西部尝试过.那里的表现更糟糕.降低约33%.
-
更新4:
我尝试从XL机器执行代码.这是8个内核而不是4个内存和带宽的两倍,并且性能提高了2%,所以很明显这个问题不在我身边..
| 归档时间: |
|
| 查看次数: |
3319 次 |
| 最近记录: |