Upgrade to Pro — share decks privately, control downloads, hide ads and more …

RDS / Aurora 関連アップデート

hmatsu47
PRO
December 19, 2019

RDS / Aurora 関連アップデート

JAWS-UG 名古屋 AWS re:Invent2019 大復習(+忘年会)LT

hmatsu47
PRO

December 19, 2019
Tweet

More Decks by hmatsu47

Other Decks in Technology

Transcript

  1. RDS / Aurora 関連アップデート
    JAWS-UG 名古屋 AWS re:Invent2019 大復習(+忘年会) 
    2019/12/19
    まつひさ(hmatsu47)

    View Slide

  2. 今回の RDS / Aurora 関連アップデートは…
    ● re:Invent 2019 での言及は少なかったみたい
    ○ たぶん RDS Outposts のプレビュー開始と RDS プロキシぐらい?
    ● re:Invent 2019 の直前にいくつか発表されている
    ○ 通称「re:Invent 落ち」??
    ● とりあえず、11/19 以降 re:Invent 開催中までのアップデー
    トを RDS と Aurora に分けて並べてみました
    ○ 一部、「たまたまこの時期に出ただけ」のものも含みます
    2

    View Slide

  3. Amazon RDS Updates(2019/11/19~)
    ● Amazon RDS for Oracle で 2019 年 10 月 Oracle パッチセットの更新 (PSU) およびリリース更新 (RU) のサポー
    トを開始
    ● Amazon RDS for SQL Server が、追加のインスタンスサイズをサポート開始
    ● Amazon RDS for Oracle が、sqlnet.ora パラメータの ALLOWED_LOGON_VERSION_SERVER および
    ALLOWED_LOGON_VERSION_CLIENT をサポート開始
    ● Amazon RDS for SQL Server でアウトバウンドネットワークアクセスがサポート可能に
    Amazon RDS Performance Insights で Amazon RDS for Oracle の SQL レベルメトリクスをサポート
    ● Amazon RDS for SQL Server が差分復元とログ復元をサポート
    ● Amazon RDS for SQL Server で 高可用性をサポートする AWS リージョンが新たに追加
    ● Amazon RDS for SQL Server が X1 および X1e インスタンスタイプをサポート
    ● Amazon RDS for SQL Server からのログファイルを Amazon CloudWatch へ発行可能に
    ● Amazon RDS for PostgreSQL がマイナーバージョン 11.5 および 10.10 のサポートを開始し、AWS GovCloud
    (米国) リージョンに向けた Amazon RDS のトランスポータブルデータベース機能を追加
    ● Amazon RDS for Oracle が、クロスリージョンリードレプリカと共に管理された災害対策およびデータ近接性のサ
    ポートを開始
    ● Amazon RDS プロキシのご紹介 (プレビュー)
    ● Outposts での Amazon RDS がプレビュー版で利用可能に
    3

    View Slide

  4. ● Amazon Aurora MySQL 5.7 は、サポートされる機能のリストを拡張して、パフォーマンスと管理性を改善
    ● Amazon Aurora が新たなインスタンスサイズをサポート
    ● Amazon RDS Performance Insights が Amazon Aurora での PostgreSQL 互換 SQL レベルメトリクスをサポート
    ● Aurora Global Database が複数のセカンダリリージョンをサポート
    ● Aurora で Global Database へのインプレース変換が可能に
    ● Amazon Aurora MySQL 5.7 がゼロダウンタイムのパッチ修正に対応
    ● Amazon Aurora (PostgreSQL 互換) で PostgreSQL 11.4 のサポートを開始
    ● Amazon Relational Database Service (RDS) Data API Client Library が Java をサポート (プレビュー)
    ● Amazon Aurora がデータベースから機械学習を直接サポート
    ● Aurora Global Database が Amazon Aurora MySQL 5.7 でサポートされます
    ● Amazon RDS プロキシのご紹介 (プレビュー)※RDS 重複
    Amazon Aurora Updates(2019/11/19~)
    4

    View Slide

  5. 多すぎるので、4つだけピックアップ
    ● RDS プロキシ
    ○ Lambda から RDS / Aurora に接続するのに使えるやつ
    ● Aurora MySQL 5.7 互換版のパフォーマンスと管理性の改善
    ○ やっと MySQL 5.6 互換版とほぼ同等の機能が使えるように
    ● Aurora PostgreSQL 11.4 互換版
    ○ ひっそりと登場(本家から 1 年 1 ヶ月遅れ)
    ● Aurora Machine Learning
    ○ SQL で SageMaker と Comprehend が使える謎機能
    5

    View Slide

  6. [1-1] RDS プロキシ
    ● RDS / Aurora へのコネクションをプーリング
    ○ アプリケーションからプロキシへの接続は RDS への接続と同じ方法で
    ○ Secret Manager や IAM による認証も使える
    ○ フェイルオーバーが高速に
    ● Lambda からの接続に便利
    ○ コネクション爆発をうまく受け止めてくれる
    ○ もちろん Lambda 以外からの接続も OK
    ● まだプレビュー
    ○ ただし公開プレビューなのですでに作れるようになってます
    ○ 機能はまだ少ないので今後に期待
    6

    View Slide

  7. [1-2] RDS プロキシ
    7

    View Slide

  8. [2] Aurora MySQL 5.7 互換版の改善
    ● [パフォーマンス] ホット行の競合対策
    ○ アクセスが集中している行(ホット行)に対する処理の改善
    ● [パフォーマンス] ハッシュ結合
    ○ 行数の多い等価結合の処理を高速化
    ● [管理性] Lambda 関数の同期呼び出し
    ○ Lambda 関数を Aurora から lambda_sync 関数で呼び出し
    ● [管理性] Backtrack
    ○ 任意の時点へ高速に PITR
    ● MySQL 5.6 互換版とほぼ同等の機能性を(やっと)確保
    8

    View Slide

  9. [3-1] Aurora PostgreSQL 11.4 互換版
    ● 去年(10.5 互換版・R4 インスタンス)と比較してみた
    ○ https://qiita.com/hmatsu47/items/28d53d8a246d841e1bba
    9

    View Slide

  10. [3-2] Aurora PostgreSQL 11.4 互換版
    ● パーティショニングを試してみた
    ○ https://qiita.com/hmatsu47/items/28d53d8a246d841e1bba
    10

    View Slide

  11. [4-1] Aurora Machine Larning
    ● 試してみた(MySQL 5.7 互換版+Comprehend)
    11

    View Slide

  12. [4-2] Aurora Machine Larning
    ● 試してみた(MySQL 5.7 互換版+Comprehend)
    12

    View Slide

  13. [4-3] Aurora Machine Larning
    ● 試してみた(MySQL 5.7 互換版+Comprehend)
    13

    View Slide

  14. [4-4] Aurora Machine Larning
    ● 試してみた(MySQL 5.7 互換版+Comprehend)
    ○ クラスタパラメータグループ割り当て
    ○ NAT ゲートウェイ or パブリックアクセス有効化
    ○ ルーティングテーブルでインターネットアクセス有効化
    14

    View Slide

  15. [4-5] Aurora Machine Larning
    ● 試してみた(MySQL 5.7 互換版+Comprehend)
    MySQL [mltest]> SELECT lyrics,
    -> aws_comprehend_detect_sentiment(lyrics, 'en') AS sentiment,
    -> aws_comprehend_detect_sentiment_confidence(lyrics, 'en') AS confidence
    -> FROM lyrics
    -> ORDER BY id;
    +------------------------------------------------------------------------------------------------------+-----------+--------------------+
    | lyrics | sentiment | confidence |
    +------------------------------------------------------------------------------------------------------+-----------+--------------------+
    | Jingle bells, jingle bells Jingle all the way, Oh, what fun it is to ride In a one-horse open sleigh | POSITIVE | 0.8357130289077759 |
    | Silent night, holy night All is calm, all is bright | POSITIVE | 0.9700412154197693 |
    +------------------------------------------------------------------------------------------------------+-----------+--------------------+
    2 rows in set (0.11 sec)
    15

    View Slide

  16. [4-6] Aurora Machine Larning
    ● これって必要?
    ○ アプリケーション的に「評価対象と評価が不可分」ならアリかも?
    ● そういえば、MySQL には…
    ○ UDF(関数)やストレージエンジンを自作して MySQL でケーキを焼い
    たり、エアコンの制御をしたり、初音ミクに歌わせたりする文化がある
    ○ 何のことかわからない人は去年と今年のアドカレを見て!
    ■ https://qiita.com/advent-calendar/2018/mysql-casual
    ■ https://qiita.com/advent-calendar/2019/mysql
    ● Aurora でも、AWS オレオレ関数を増やして色々やらせるのも
    良いのかも?
    16

    View Slide