Google Compute Engine VM磁盘非常慢

时间:2014-05-15 15:58:39

标签: google-compute-engine

我们刚刚切换到Google Compute Engine,并且在磁盘速度方面存在重大问题。它大约是Linode的5%或者更糟。它的写入速度从未超过20M / s,读取速度不超过10M / s。大多数时候,写作速度为15M / s,阅读速度为5M / s。

我们目前正在运行n1-highmem-4(4个vCPU,26 GB内存)计算机。 CPU&记忆不是瓶颈。只需运行一个从PostgreSQL数据库读取行的脚本,处理它们,然后写回PostgreSQL。它只是为了共同的工作来批量更新数据库行。尝试运行20个进程以利用多核,但整体进度仍然缓慢。

我们认为磁盘可能是瓶颈,因为流量异常低。

最后我们决定做基准测试。我们发现它不仅速度慢,而且似乎有一个可重复的主要错误:

  1. 创造&连接到实例
  2. 至少运行三次基准测试:

    dd if=/dev/zero bs=1024 count=5000000 of=~/5Gb.file
    
  3. 我们发现它变得极其缓慢,根本无法完成基准测试。

1 个答案:

答案 0 :(得分:9)

永久磁盘性能与磁盘本身及其连接的VM的大小成正比。磁盘(或VM)越大,性能越高,因此从本质上讲,您为磁盘或VM支付的价格不仅要支付磁盘/ CPU / RAM,还要支付IOPS和吞吐量。

引用Persistent Disk documentation

  

永久磁盘性能取决于卷的大小和   您选择的磁盘类型。更大的卷可以实现更高的I / O级别   比较小的卷。没有单独的I / O费用作为费用   I / O功能包含在永久磁盘的价格中。

     

持久性磁盘性能可以描述如下:

     
      
  • IOPS性能限制随持久磁盘卷的大小呈线性增长。
  •   
  • 吞吐量限制也会线性增长,直至永久磁盘所连接的虚拟机的最大带宽。
  •   
  • 较大的虚拟机比较小的虚拟机具有更高的带宽限制。
  •   

页面上还有一个更详细的定价图表,显示您购买的每GB空间的价格(以下数据是截至2014年8月的最新数据):

                                  Standard disks     SSD persistent disks

Price (USD/GB per month)                $0.04               $0.025
Maximum Sustained IOPS
  Read IOPS/GB                           0.3                  30
  Write IOPS/GB                          1.5                  30
Read IOPS/volume per VM                 3,000               10,000
Write IOPS/volume per VM               15,000               15,000
Maximum Sustained Throughput
  Read throughput/GB (MB/s)              0.12                 0.48
  Write throughput/GB (MB/s)             0.09                 0.48
Read throughput/volume per VM (MB/s)     180                  240
Write throughput/volume per VM (MB/s)    120                  240

并在页面上显示特定磁盘大小的具体示例:

  

作为如何使用性能图表来确定的示例   你想要的磁盘卷,考虑500GB标准持久性   磁盘会给你:

     
      
  • (0.3 x 500)= 150个小随机读数
  •   
  • (1.5 x 500)= 750小型随机写入
  •   
  • (0.12 x 500)= 60 MB / s的大序列读数
  •   
  • (0.09 x 500)= 45 MB / s的大顺序写入
  •