[レポート]一気に学ぶ!AWSでの最適なデータベースの選び方 #reinvent #DAT251-G

2020.12.14

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちはオンジーです!

今一度AWSのデータベースサービスについて学んでおきたいと思っていたところにちょうど良い日本語セッションがあったので拝聴してきました。

ぜひこちらからご視聴ください!

セッション概要

スピーカー:吉田 成利 氏 (AWSJ パートナーソリューションアーキテクト)

タイトル:一気に学ぶ!AWSでの最適なデータベースの選び方

迅速なイノベーションを実現するには、用途に合わせたデータベースの選択が重要です。AWS では現在、リレーショナルデータベースだけでなく、Key-Value、ドキュメント、インメモリ、グラフ、時系列、台帳データベースを含む専用データベースサービスから、目的にあったデータベースをお選びいただけます。本セッションでは AWS が提供するデータベースサービスの概要と使い分けのポイントをお伝えいたします。

セッションのポイント

従来のデータベース

従来のアプリケーションでオンプレミスのRDBMSはたくさん使われてきましたし今でも現役でたくさん稼働していますよね。課題としては以下のようなものが挙げられます。

オンプレミスのデータベース管理者が何に時間を使っているかのアンケート結果が次のスライドになります。本当に注力したいところ以外にたくさん時間を使っているのが分かりますね。

AWSにおけるマネージドサービス

従来のデータベースの課題を確認したところで、ではAWSのマネージドサービスを使うと何が嬉しいのでしょうか?

セッションではマネージド=「任せることができる」というメリットをまず挙げていました。どんなところを任せることができるかというと次のようにバックアップやセキュリティやメンテナンスなどの本来注力したいところ以外の部分です。

Purpose built

このスライドから分かるようにアプリケーションに求められる要件は上がってきています。そしてこれらの要件にオンプレミスのRDBのみで応えるのはかなり難しいです。

セッションではここで「Purpose built」というキーワードが出てきます。聞き慣れない言葉だったのですが「目的別に作られたもの(DB)を選ぼう」という意味でした。

AWSのDBは次のスライドのような目的と用途でサービスが別れています。これらのデータベースをワークロードに応じて適切に選んでいこう、というのが本セッションでの重要なメッセージだと感じました。

AWSのデータベースの種類

データベースのカテゴリとそれに対応するAWSのデータベースサービスを紹介していきます。

1.Relational

特徴としては次のようなものがあります。

  • トランザクション(データのやりとり)を一貫性を持って記憶するのに長けている
  • 複数の表を関係性(リレーション)で繋げてスキーマを構成する
  • SQLを使って柔軟な条件を設定して結果セットを取得するのに向いている

Amazon RDSが対応しています。

またRDSが対応しているデータベースエンジンの1つにAWSがクラウド向けに再設計したAmazon Auroraがあります。

2.key-value / Wide column

データがkeyとvalueという1対1のシンプルな関係になっているのでRDBMSに比べて高速な読み書きができます。

Amazon DynamoDBが対応しています。

key-valueを拡張したWide columnなデータベースにはAmazon Keyspacesが対応しています。こちらはOSSであるApache Cassandraと互換性があるサービスになってます。

3.Document

JSON-likeなドキュメントで保存することができるのでJSONをRDBMSのスキーマにマッピングする手間が省けます。

Amazon DocumentDBが対応しています。OSSのMongoDB互換です。

4.In-memory

ゲームのランキングのように短い応答時間で高速にクエリできることを目的としたデータの使い方です。

Amazon ElastiCacheが対応しています。

5.Graph

トラバーサル(データの関係性から検索)をやりやすくします。ECサイトのレコメンド機能などがユースケースとして考えられます。

Amazon Neptuneが対応しています。

6.Time-Series

時系列データを扱います。Amazon Timestreamは最近(2020/9)GAされたばかりで記憶に新しいですよね!

7.Ledger

レッジャーは初めて聞きました。日本語で言うと「台帳」になります。特徴としてイミュータブル、つまり変更や削除が不可能になります。

変更履歴の保存が目的で前の変更点を踏まえてハッシュ値を記録していくことで変更が改竄されていないことを保証できます。

Amazon Quantum Ledger Databaseが対応しています。

所感

AWSのデータベースサービスの全体を30分で学ぶことができるとても良いセッションでした。よく使うサービスに関しては良い復習になりましたし、自分の知らなかったサービスに出会うことができました。本レポートではポイントのみご紹介しましたがセッションでは各データベースの仕組みや用途について具体的に触れています。また見やすい資料もダウンロードできますので視聴をオススメします!

AWS re:Invent 2020 Virtualは 〜12/19までと1/12 - 1/14(JST)で開催中です!

参加がまだの方は、この機会にぜひこちらのリンクからレジストレーションして豊富なコンテンツを楽しみましょう!

AWS re:Invent | Amazon Web Services

またクラスメソッドではポータルサイトで最新情報を発信中です!

AWS re:Invent 2020 JAPAN PORTAL | クラスメソッド