CloudSQL 2nd Generation性能評価

CloudSQL 2nd GenerationがGAになったので性能評価をしてみました。 性能と障害発生時の挙動について評価を行いましたが、長くなってしまうので今回は性能編で書いています。 後日障害発生時の挙動について書きますのでお待ち下さい。

CloudSQL構築

評価環境:GCEinstanceからCloudSQLへ負荷をかけます。
・GCEinstance n1-standard-8
・CloudSQL db-n1-standard-16 SSD=668GB

※disk性能の最高値を使うためにSSDを668GBとしています。

・フェイルオーバーレプリカ1台
・リードレプリカ2台
・今回は諸事情でCloud_SQL_ProxyではなくGCEinstanceにMariaDB MaxScaleを用意して接続しています。
・BenchmarkはSysBenchを利用しています。
MySQLのconfigはチューニングされてますので特に気にする必要ありません。
log出力は構築段階で出力設定をしておいて下さい。

構築する段階でいくつか?になる部分があるかと。。。。
■ゾーンを選択する時の「すべて」この言葉の意味!3つのゾーンに作ってくれるの?これ間違えて選んだら3つinstance作られる??ランダムに作るのか?
ちなみにinstance作成後にゾーンを選択してないとweb上からはどこのゾーンに作られた確認出来ません。
おそらくになってしましますが。ランダムで一つのゾーンにinstanceが作成されます。
■メンテナンスの時間枠!?
instanceシャットダウンしていい日にちを選んでねって事なのかちょっと読み解けなかったです。何曜日の何時じゃなくて曜日だけ選ぶの中々厳しい。訂正:曜日を選べば1時間単位でメンテンナス時間を選択可能です。(2016/09/13)
しかも選択しないと任意になります。メンテナンス前に連絡が来るかも不明なので確認しておきたいと思います。
■金額がわかりづらい
db-n1-standard-16=$1112.04/monthly
ストレージSSD =$113.5/monthly
フェイルオーバーレプリカ1台=?
リードレプリカ=?
Backupに関しては使った分の$0.08/GB/monthly GCEでのinstance作成時は右側に金額出てきてわかるんですがちょっとわかりづらいですね。
ちゃんと確認が取れてるわけではありませんが、全く同じ性能のレプリカを用意する場合はmasterと同じ金額がかかるとかと思います。
そのかわりレプリカのCore数、Memory調整が出来ますのでリードレプリカの方は特性にあわせた調整が可能です。

CloudSQL性能評価
さてBenchmark結果です。


read
write
ther
total
transactions
transactions
(per sec.)
read/write requests
read/write requests
(per sec)
other operations
other operations
(per sec)
Thread16 ReadOnly 1266230 0 180890 1447120 90445 1507.16 1266230 21100.26 180890 3014.32
Thread16 ReadWrite 460208 164360 65744 690312 32872 547.56 624568 10403.55 65744 1095.11
Thread128 ReadOnly 2838458 0 405494 3243952 202747 3377.63 2838458 47286.86 405494 6755.27
Thread128 ReadWrite 1255604 448430 179372 1883406 89686 1493.49 1704034 28376.32 179372 2986.98

CloudSQL v1と比べると圧倒的に性能がすごく良くなっています。
検証の仕方間違えた?とか思いました。
今回の検証はパラレルで負荷をかけたわけではないのでもしかたら負荷のかけ方次第で特性が見えてくるかもしれません。
本番利用出来るか否かについては利用可能な領域になっているかと思います。

利用するにあたっての懸念事項
・メンテナンスの時間枠と通知内容
・フェールオーバの仕様

最初にも書きましたが障害発生時の挙動とCloudSQL Proxyについては別記事で書きます。