【書評】「要点整理から攻略するAWS認定データベース – 専門知識」DBS試験対策にとてもおすすめの一冊
クラスメソッドコリアのm.hashimotoです!
DBS試験対策として、「要点整理から攻略するAWS認定データベース - 専門知識」がとても良かったのでご紹介します。
この記事の目次
- 本の概要
- 「要点整理から攻略するAWS認定データベース - 専門知識」書評
- 最後に
- 本のリンク
本の概要
DBS試験にチャレンジする方の最初の一歩として、順番に読み進めていくことができます。
各章には、まとめとしてのポイントが解説されています。
最後に、練習問題が65問あります。
著者
NRIネットコム株式会社 佐々木拓郎、小西秀和、小林恭平
「要点整理から攻略するAWS認定データベース - 専門知識」書評
目次
- 第1章 AWS試験概要と学習方法
- 第2章 リレーショナルデータベースサービス
- 第3章 NoSQLデータベースサービス
- 第4章 その他のデータベースサービス
- 第5章 展開および移行
- 第6章 監視、トラブルシューティング、セキュリティ
- 第7章 AWS Well-Architected
- 第8章 練習問題
各章の概要
第1章 AWS試験概要と学習方法
AWS認定試験の体系や試験の概要、DBS試験で問われるシナリオカテゴリなどの解説がされています。
第2章 リレーショナルデータベースサービス
- 2-1 Amazon Relational Database Service(以下RDS)
- この本では、各項目(この章では、RDS)の可用性、パフォーマンス、セキュリティ、コスト、メンテナンス、バックアップ、モニタリング、トラブルシューティングについて記載されています。
- DBS試験で最も重要な項目の一つだと思います。
- RDSのデータベースエンジンとして、MySQL、MariaDB、Oracle、SQL Server、 PostgreSQLがあります。(*Amazon Auroraについては2-2をご覧ください。)
- セキュリティの部分で、IAMを使用したDBアクセス認証のところが勉強になりました。
- メンテナンスの部分で、メンテナンスウィンドウはお客様からのお問い合わせも多く、普段の業務でも出てくるので、必須の知識かなと思いました。
- バックアップについて、スナップショットの共有とポイントインタイムリカバリの違いや、RPO/RTOにあわせて適切な選択をすることが重要です。
- 運用保守でよく出てくるモニタリングでは、拡張モニタリングやパフォーマンスインサイト等を使って可用性やパフォーマンスを維持することが重要で理解が深まりました。
- 2-2 Amazon Aurora
- Auroraの可用性は一つの特徴なので、Auroraグローバルデータベースやクロスリージョンレプリケーション、Auroraマルチマスタークラスターなどの用語は押さえておくべきポイントかなと思います。
- Aurora Serverlessの仕組みとして、Auroraキャパシティユニット(ACU)と呼ばれる単位の増減により、自動スケーリングが実現されていることが勉強になりました。また、Aurora Serverlessのユースケースを理解しておくこともポイントです。
- セキュリティは通常のRDSと同様ですが、下記3点に注意する必要があります。
- VPC、ネットワークACL、セキュリティグループを使用したアクセス制御
- データ格納時、伝送中の暗号化
- IAMを使用したDBアクセス認証
- バックアップの部分で、Auroraクローンやバックトラック(Aurora DBクラスターの巻き戻し)などAurora独自のバックアップ機能と、通常のRDS同様のバックアップがあるので、この特徴を押さえておくといいかと思います。
- その他の機能として、通常のRDSにはないAurora MySQLからLambda関数の呼び出しなどの知見は参考になりました。
- 2-3 Amazon Redshift
- リーダーノードとコンピュートノードから成るRedshiftの構造や列指向ストレージ、アクセス頻度に応じて活用するRedshift Spectrumについて解説されています。(* DBS試験よりもDAS試験でよく出題されるそうです。)
- 2-4 リレーショナルデータベース まとめ
第3章 NoSQLデータベースサービス
- 3-1 Amazon DynamoDB
- 重要な項目の一つだと思います。
- パーティションの考え方、複合プライマリキー(パーティションキーとソートキー)の場合のパーティション振り分け等、学びに繋がりました。
- DynamoDB AcceleratorやDynamoDBストリーム、DynamoDBグローバルテーブルの各機能を押さえておくことがポイントかと思いました。
- パフォーマンスの部分で、「プロビジョニング済みキャパシティモード」と「オンデマンドキャパシティモード」の違いについて勉強になりました。
- 「ローカルセカンダリインデックス(LSI)」と「グローバルセカンダリインデックス(GSI)」の違いについても解説されています。
- セキュリティの部分では、DynamoDBへのアクセスはIAMによって制御され、ゲートウェイ型のVPCエンドポイントを利用することで、VPCからDynamoDBへのプライベートな通信が行えるので参考になりました。
- メンテナンスについて、データ量を削減する方法として、ItemのTTL(Time to Live)を適切に設定することが重要なポイントです。
- バックアップについて、復元(リストア)時の手動設定が必要な項目は注意が必要です。
- Auto Scalingポリシー
- IAMポリシー
- Amazon CloudWatchのメトリクス及びアラーム
- タグ
- ストリーム設定
- 有効期限(TTL)設定
- モニタリングでは、CloudWatchやCloudTrailを活用しますが、CloudTrailのデフォルトで記録されるのは管理操作(テーブルやバックアップの作成/削除、テーブルの復元や設定変更)のみのため、データ操作(GetItemやPutItem、クエリやスキャン)の履歴も取得したい場合は、設定でデータ操作の取得を有効化する必要があるので注意が必要です。
- 3-2 Amazon DocumentDB
- MongoDB互換のドキュメントデータベースサービスです。
- 個人的にわからないことだらけだったので、可用性からトラブルシューティングまで丁寧に読んでいきました。
- この章の最後で、AuroraとDocumentDBを比較した表がありますので、参考になるかと思います。
- 3-3 NoSQLデータベースサービス まとめ
第4章 その他のデータベースサービス
- 4-1 Amazon ElastiCache
- ここも重要な項目の一つだと思います。
- 「ElastiCache for Memcached(以下、Memcached)」と「ElastiCache for Redis(以下、Redis)」の違いや特徴について解説されています。
- Redisのグローバルデータストアを作成する場合の制限事項がいくつかあるので注意が必要です。
- Redisのデータ永続化の手法としてAOF(Append Only Files)機能があり、障害からの復旧時にデータを復旧する機能として勉強になりました。
- モニタリングでは、キャッシュノードのホストレベルのメトリクス(CPU使用率、メモリの空き容量、スワップの使用量、ネットワークの転送量)とMemcached及びRedisに関するメトリクスを監視します。
- 4-2 Amazon Neptune
- グラフデータベースです。
- 3-2同様にわからないことだらけだったので、可用性からトラブルシューティングまで丁寧に読んでいきました。
- 可用性の部分で、フェイルオーバーの優先度(Auroraと同様)に関して復習できました。
- 1.指定した優先度が高い(より0に近い)リードレプリカ
- 2.優先度が同じ場合はサイズの大きいリードレプリカ
- 3.優先度とサイズが同じ場合は任意のリードレプリカ
- トラブルシューティングの部分で、Neptuneバルクローダーやグラフエンジンのクエリ、DBクラスター管理APIのエラーコードがそれぞれ表にまとまっており、見やすかったです。
- 3-2同様にこの章の最後で、AuroraとNeptuneを比較した表がありますので、参考になるかと思います。
- 4-3 Amazon Quantum Ledger Database(以下、QLDB)
- サーバーレスなフルマネージド型台帳データベースです。
- QLDBの概念とか構造など初めて聞いたことばかりで新鮮でした。(可用性からトラブルシューティングまで丁寧に読んでいきました。)
- 最後のトラブルシューティングでは、データ検証やジャーナルデータエクスポート、QLDBストリームでの一般的なエラーが表にまとまっており、参考になりました。
- 4-4 Amazon Elasticsearch Service(以下、ES)
- データベースサービスからESへのデータ連携例として、プッシュモデルやプルモデルのストリーム連携例が図表で描かれており、勉強になりました。
- 4-5 その他のデータベースサービス まとめ
第5章 展開および移行
- 5-1 AWS CloudFormation
- CloudFormationのDeletionPolicyや、変更セット、ドリフト検出、StackSetsなどの機能について解説されています。
- DeletionPolicyの3種類については下記があります。
- Delete - スタック削除時にリソースも削除する
- Retain - スタック削除時に指定したリソースを削除せずに保持する
- Snapshot - リソースの削除前にスナップショットを取得する
- DeletionPolicyの3種類については下記があります。
- 5-2 移行(マイグレーション)
- Auroraへの移行に関して、移行元のデータベースのパターンに応じて変わるのでその違いについて勉強になりました。(難しい。。)
- Auroraリードレプリカを使用した移行
- スナップショットを使用した移行
- mysqldumpを使用したデータ移行
- S3上のテキストファイルから移行
- アプリケーションの移行
- AWS Schema Conversion Tool(以下、SCT)とAWS Database Migration Service(以下、DMS)について、頻出かと思います。
- SCTがサポートしているOLTP変換の表やSCTデータ抽出エージェントの構成例がわかりやすいです。
- DMSがサポートしているソースとターゲットの表やDirect ConnectまたはSite-to-Site VPNで接続する場合のDMS構成例が理解できました。
- SCTとDMSを組み合わせた移行パターンとして、ダウンタイムを最小化する手順も図で描かれており、理解しやすかったです。
- 5-3 展開および移行 まとめ
第6章 監視、トラブルシューティング、セキュリティ
- 6-1 AWS CloudTrail
- 管理イベントやデータイベントの基本について解説されています。
- 6-2 Amazon CloudWatch
- メトリクス、ログ、アラーム、イベントの基本について解説されています。
- 運用保守の業務でよく出てくるのでわかりやすいです。
- 6-3 AWS Identity and Access Management(以下、IAM)
- IAMの基本機能(ユーザー、グループ、ポリシー、ロール)について解説されています。
- 6-4 AWS Key Management Service(以下、KMS)
- DBS試験のポイントして、下記2点に関して注意が必要です。
- リージョン間でのキー共有不可
- AWS管理CMKはアカウント固有
- KMSよりも厳重にキー管理ができて、より高いコンプライアンス要件が必要な場合、AWS CloudHSMが適しています。
- 6-5 AWS Secrets ManagerとAWS Systems Managerパラメータストア
- 両者の共通点や相違点、比較の部分で参考になりました。
- Systems Managerパラメータストアは認証情報管理にかかるコストを低く抑える場合の選択肢に挙がるそうです。
- 6-6 監視、トラブルシューティング、セキュリティ まとめ
第7章 AWS Well-Architected
- 7-1 AWS Well-Architected
- AWSの基本である「5本の柱」について解説されています。
- 運用の優秀性
- セキュリティ
- 可用性
- パフォーマンス効率
- コスト最適化
- 7-2 AWS Well-Architected まとめ
第8章 練習問題
- 8-1 練習問題
- 8-2 解答と解説
最後に
この本の特徴は以下の通りです。
- 豊富な図解
- 要点整理から攻略するシリーズのうちの一冊なのでわかりやすい
- 巻末に索引がある(サービスのチェックがしやすい)
以上、クラスメソッドコリアのm.hashimotoでした!