【问题标题】:How are I/O operations defined in Google Cloud SQL?Google Cloud SQL 中如何定义 I/O 操作?
【发布时间】:2012-11-30 06:36:23
【问题描述】:

我想知道如何在 Google Cloud SQL 中定义低级 I/O 操作,至于他们的数据存储,他们定义了对于一个 INSERT 或 UPDATE 执行多个低级 I/O 操作。 SQL 是否也一样,如果是,这些是什么,另外,如果我的数据在 Cloud SQL 中的多台服务器上复制,我是否会支付复制费用,例如,如果我的数据分布在 5 台服务器上,那么我的 1 次插入是否等于到五个 I/O 操作?

【问题讨论】:

    标签: google-app-engine google-cloud-sql


    【解决方案1】:

    操作定义为对 read() 或 fsync() 的调用。如果有大量缓冲数据,write() 也可以触发操作。您可以在 strace 下运行 mysqld 以了解查询将触发多少操作。例如,一个简单的查询,如

    INSERT INTO t VALUES (42);
    

    大概会生成

    write(logfile, 42);
    fsync(logfile);
    write(datafile, 42);
    fsync(datafile);
    

    所以这将算作两个操作。复制包含在成本中,因此这仅算作两个操作,而不是 2 * num_replicas。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-10
      相关资源
      最近更新 更多