RDSにMySQL互換のデータベースAmazon Aurora登場 - AWS re:Invent 2014 参加レポート #4

sparkgene
7

こんにちは、sparkgeneです。

初日のKeynoteで発表がありましたAmazon Auroraのセッションを聞いてきました。

元々のスケジュールでは公開されておらず(当然か)、Keynote後に新規セッションとして登場しました。

もちろん登場してすぐに申し込みをして、早めに移動したので会場には入れました。

今のDBは70年台に登場した構成から大きく変わっていないと言うことで、AWSでは今のクラウドの時代にあった形にre:imageしてみましたと。
IMG_3551

AWSが出した結果が Amazon Aurora

  • サービスオリエンテッド
  • スケールアウトが容易でマルチテナント(まずはストレージから)
  • MySQL5.6互換で、既存のアプリケーションでも動く

IMG_3553

 

ロギングとキャッシュ、ストレージレイヤーを分離して、スケールアウトが容易にできるようにした。

AWSの他のサービスと連携した作りで、バックアップはS3を使います。

IMG_3554

 

デフォルトでハイアベイラビリティー。1つのAZに2つのコピーを持ちます。

ストレージはSSD。最大で64TByteまで利用可能で、シームレスに拡張可能。料金は使っているデータ量のみ。

IMG_3555

 

クラッシュリカバリ

  • 方法既存のDB:最後のチェックポイントからredoログを元に復帰。
  • Aurora:ディスク読み込みの機能として、ブロック毎に持っているredoログからオンデマンドで反映

IMG_3556

 

Auroraのキャッシュはデータベースのプロセスから切り離されてます。その為DBを再起動してもキャッシュは残っている。そのため復帰が速い

IMG_3557

 

Auroraのレプリカ
MySQL:binlogを反映しなければならない。Masterへ負荷がかかる。フェイルオーバーではデータを消失する可能性がある。
Aurora:データストレージは共有されるから、binlogを使って反映する必要がない。15台のレプリカまでであれば、Masterへの負担は少ないストレージを共有しているので、フェイルオーバーしてもデータの消失はない

IMG_3558

 

障害のシュミレートがSQLの発行で可能

  • ノード障害
  • ディスク障害
  • ネットワーク障害

IMG_3559

 

パフォーマンス(r3.8xlarge [コア32 メモリ244GB])

  • 書き込み
    • DMLスループット:105,000/sec
    • DBコネクション:4000

IMG_3560

  • 読み出し
    • SELECTスループット:546,000/sec
    • DBコネクション:1000

IMG_3561

 

  • レプリケーション遅延
    • Aurora:13,800件の更新/secで7.27msぐらい
    • MySQL:2,000件の更新/secで2secぐらい

IMG_3562

 

テーブル数が増えてもMySQLの用に劣化することがほとんど無いIMG_3563

 

コネクション数が増えて同時に処理が走っても、劣化が少ない

IMG_3564

 

キャッシュを有効(デフォルトON)にすると更に速いと

IMG_3565

 

更新処理が増えたとしても、リードレプリカの遅延も大きく劣化しない。

「MySQLなんて秒だよw(ドヤ顔)」で説明してました。

IMG_3566

 

Auroraはデータベースを運用するのをもっと簡単にします。

IMG_3567

 

料金

r3.largeを24時間30日使っても、24,000円を切る(114円=$1)

IMG_3568

 

現在はベータ版で2015年の早い段階でリリース予定

プレビュー版を申し込めます→https://aws.amazon.com/jp/rds/aurora/preview/

IMG_3569

 

Auroraの開発チームの皆様

IMG_3570

 

質疑応答

Q:データの暗号化は対応しているか?

A:プレビュー版ではまだ暗号化のサポートは していない

Q:ローカルで動作確認できるバージョンは提供されるのか?

A:Local versionは存在しない。開発ではMySQLを使えばいいい。

Q:今後出てくるMySQLのバージョンとも互換性はあるか?

A:どのような機能が入ってくるかはわかないから、今後出てくるバージョンのことはまだわからない。

Q:オーロラから、MySQLへのデータ移行はできるか

A:ダンプしたデータをインポートすればいい

Q:オーロラは何ベース?

A:ストレージとかはAmazon製。それ以外は・・・。

Q:クライアントライブラリはあるのか?

A:MySQL互換なので、ODBC、JDBCドライバは同じものが使える

 

他にも質問はありましたが、聞き取れたものだけ書いてます。