書籍概要

AWSではじめる実践データマネジメント

著者
発売日
更新日

概要

  • 「データに欠損値や誤りがあり,正しく分析できない」
  • 「データ加工処理が複雑で読み解けない」
  • 「同じ顧客や企業が重複して登録されている」
  • 「データの意味や使い方がわからない」
  • 「部門ごとに見せられるデータが異なり,他部門に横展開できない」
  • 「分析データに含まれる個人情報の取り扱いに苦慮している」

データを活用したいのに,うまくいかない……
その壁を壊すには,データマネジメントが不可欠。

  • データをカタログ化,一元的に管理できる「Amazon DataZone」
  • さまざまなデータソースからデータを見つけ出して加工・統合でき,品質チェックの自動化もできる「AWS Glue」
  • データレイク内のデータに対して,行や列レベルでのきめ細やかなアクセス制御ができる「AWS Lake Formation」

など,データマネジメントに役立つ最新サービスの実践的な使い方をAWS Professional Servicesコンサルタントが解説。

こんな方におすすめ

  • データがあるのにうまく活用できていない組織のエンジニア,データサイエンティスト
  • AWSユーザー

目次

はじめに

1章 データマネジメントとAWS

1.1 データマネジメントとは

  • 1.1.1 なぜ,データマネジメントが必要か
  • 1.1.2 データマネジメントの11領域

1.2 データマネジメントとAWSサービス

  • 1.2.1 データマネジメントにおけるAWSの強み
  • 1.2.2 データマネジメントに関わるAWSサービス一覧

1.3 データストア

  • 1.3.1 Amazon Simple Storage Service(S3)
  • コラム ディレクトリバケットとテーブルバケット
  • 1.3.2 Amazon Redshift
  • 1.3.3 Amazon Relational Database Service (RDS)
  • 1.3.4 Amazon Aurora

1.4 データパイプライン

  • 1.4.1 AWS Glue
  • 1.4.2 AWS Glue DataBrew
  • コラム AWS GlueとGlue DataBrew
  • 1.4.3 AWS Step Functions
  • 1.4.4 Amazon Managed Workflows for Apache Airflow(Amazon MWAA)
  • コラム Step FunctionsとAmazon MWAAの使い分け

1.5 分析

  • 1.5.1 Amazon Athena
  • 1.5.2 Amazon QuickSight

1.6 セキュリティ/ガバナンス

  • 1.6.1 AWS Identity and Access Management(IAM)
  • 1.6.2 AWS IAM Identity Center
  • 1.6.3 AWS Lake Formation
  • 1.6.4 Amazon DataZone
  • 1.6.5 Amazon SageMaker

まとめ

2章 データに欠損値や誤りがあり,正しく分析できない

2.1 データ品質の問題を解決するには

  • 2.1.1 なぜデータに欠損や誤りが発生するのか
  • 2.1.2 データ品質を可視化し,向上させる5つのステップ

2.2 Glue Data Qualityを使って保管されているデータの品質を測定する

  • 2.2.1 ステップ1:Glueデータカタログを作成する(事前準備その1)
  • 2.2.2 ステップ2:必要な実行権限を設定する(事前準備その2)
  • 2.2.3 ステップ3:データ品質ルールを作成する
  • コラム データ品質定義言語(DQDL)とは
  • 2.2.4 ステップ4:保管されているデータの品質を測定する

2.3 Glue Data Qualityを使って,データ処理パイプラインの中でデータ品質を測定する

  • 2.3.1 ステップ1:データとS3バケットを準備する(事前準備その1)
  • 2.3.2 ステップ2:必要な実行権限を設定する(事前準備その2)
  • 2.3.3 ステップ3:Glue StudioでGlueジョブを作成する
  • 2.3.4 ステップ4:Glueジョブの中にデータ品質チェックを組み込む
  • 2.3.5 ステップ5:データ品質チェック結果の出力を選択する
  • 2.3.6 ステップ6:データ品質チェック結果によりデータを分割する
  • 2.3.7 ステップ7:Glueジョブを実行する

2.4 Glue DataBrewを使ってデータ品質を測定する

  • 2.4.1 ステップ1:データとS3バケットを準備する(事前準備その1)
  • 2.4.2 ステップ2:Glue DataBrewのプロジェクトを作成する(事前準備その2)
  • 2.4.3 ステップ3:Glue DataBrewでデータ品質ルールを作成する
  • 2.4.4 ステップ4:DataBrewプロファイルジョブでデータ品質を測定する

まとめ

3章 データ加工処理が複雑で読み解けない

3.1 データ加工処理の問題を解決するには

  • 3.1.1 なぜデータ加工処理は読み解けなくなるのか
  • 3.1.2 ジョブやワークフローを作成するためのAWSサービス
  • 3.1.3 可読性の低いデータ加工処理の例
  • 3.1.4 データに関する前準備
  • コラム AWSでのデータカタログについて

 3.2 Glue Studioによるジョブの作成

  • 3.2.1 処理の分割と流れの整理
  • 3.2.2 Glue Studioによるジョブ作成と実行の基本
  • 3.2.3 売上データをRaw層にロードするジョブの作成と実行
  • 3.2.4 顧客マスターをRaw層にロードするジョブの作成と実行
  • 3.2.5 売上データの返品レコードを削除するジョブの作成と実行
  • コラム 同じ時間を表すカラムでも,利用者が異なると重要視するカラムは異なる
  • 3.2.6 顧客マスターに年代カラムを追加するジョブの作成と実行
  • 3.2.7 売上データと顧客マスターを結合して集計するジョブの作成と実行
  • 3.2.8 集計済みデータが作成されているか確認する

3.3 Step Functionsによるワークフローの構築

  • 3.3.1 SNSトピックを作成する
  • 3.3.2 Step Functionsのステートマシンの作成
  • 3.3.3 通知の処理を加える
  • 3.3.4 テストを実行する
  • コラム メール文面の整形

3.4 Amazon MWAAによるワークフローの構築

  • 3.4.1 DAG作成の前準備
  • 3.4.2 DAGを作成する
  • 3.4.3 DAGを表示する
  • コラム DAGのスケジューリング
  • 3.4.4 テストを実行する

まとめ

4章 同じ顧客や企業が重複して登録されている

4.1 データの重複をなくすには

  • 4.1.1 なぜ,データに表記揺れや重複が発生するのか
  • 4.1.2 名寄せとは
  • 4.1.3 名寄せの方法
  • 4.1.4 名寄せの実施タイミング
  • 4.1.5 名寄せ結果の保持方法
  • 4.1.6 名寄せをおこなうためのAWSサービス
  • 4.1.7 サンプルデータと前提
  • コラム 名寄せのアルゴリズムについて

4.2 AWS Glueを使って,ETLパイプラインの中で名寄せをおこなう
  • ステップ1:データの準備をおこなう(事前準備1)
  • ステップ2:必要な実行権限を作成する(事前準備2)
  • ステップ3:顧客マスターの中の重複を検出するためのGlueジョブを作成する
  • ステップ4:Glueジョブを実行し,重複レコードを特定して名寄せ対象の候補を作成する
  • ステップ5:販売履歴データを加工するためのGlueジョブを作成・実行する
  • コラム 機械学習による名寄せついて
  • まとめ

    5章 データの意味や使い方がわからない

    5.1 メタデータの問題を解決するには

    • 5.1.1 なぜ,データの意味や使い方がわからないような状況が起こるのか
    • 5.1.2 データカタログによる「だれでもデータの意味がわかる世界」の実現
    • 5.1.3 メタデータ管理を実現する要素
    • 5.1.4 データカタログ基盤を構成する要素と構築ステップ

    5.2 メタデータの項目や記載ルールを整備する
  • 5.2.1用語集を作成する
  • 5.2.2 用語を作成する
  • コラム 用語集と用語の検索設計上の考慮
  • 5.2.3 メタデータフォームを作成する
  • 5.3 メタデータの充足化と公開

    • 5.3.1 アセットをAmazon DataZoneに登録する
    • 5.3.2 アセットにメタデータを登録する
    • 5.3.3 メタデータを公開する

    5.4 データカタログを用いてデータの存在と示す意味を把握する

    • 5.4.1 メタデータの検索と参照
    • コラム Amazon DataZoneでのアセット検索方法
    • 5.4.2 データが示す意味を把握する

    5.5 メタデータの品質維持と向上

    • 5.5.1 メタデータ管理/運用の全体像
    • 5.5.2 変化に追従し,陳腐化しないメタデータの管理/運用を実現するには

    まとめ

    6章 部門ごとに見せられるデータが異なり,他部門に横展開できない

    6.1 部門間でのデータ共有を推進するには

    • 6.1.1 データメッシュアーキテクチャで各部門が自律的にデータを管理,公開する

    6.2 組織間でデータを共有する

    • 6.2.1 公開可能なデータを登録する
    • 6.2.2 アセットを公開する
    • コラム データソースからアセットを取り込んだ場合,ビジネスメタデータは付与されない
    • 6.2.3 データを探索し,サブスクライブのリクエストをおこなう
    • コラム カタログボタンからアセットの一覧を確認する
    • 6.2.4 リクエストを承認する
    • 6.2.5 共有されたデータを確認する

    6.3 データの共有範囲の確認と変更

    • 6.3.1 だれに,どのデータを共有したか確認する
    • 6.3.2 データの共有をやめる
    • コラム Amazon DataZoneで管理できないデータ

    まとめ

    7章 分析データに含まれる個人情報の取り扱いに苦慮している

    7.1 データ分析において個人情報の問題を解決するには

    • 7.1.1 分析データに個人情報が含まれることによる弊害
    • 7.1.2 「三原則」で考える
    • コラム だれがコストを負担するか?
    • コラム 匿名加工と仮名加工
    • 7.1.3 三原則の実装に寄与する AWS サービス
    • コラム そのほかの行/列制御技術
    • 7.1.4 PII処理の全体像
    • コラム Lake Formationの認可モードの使い分け
    • コラム Amazon S3バケットの多段構成
    • 7.1.5 事前準備

    7.2 「持ち込ませない」処理の実装

    • 7.2.1 Glueジョブを作成する
    • コラム AWS Glueリソースの命名規則に注意
    • 7.2.2 ジョブの実行と確認

    7.3 「残さない」処理の実装

    • 7.3.1 Glueジョブを作成する
    • 7.3.2 Detect Sensitve Dataノードを追加する
    • コラム 日本語の人名の検出に注意
    • 7.3.3 S3へ出力する
    • 7.3.4 ジョブの実行と確認
    • コラム 行の削除

    7.4 「使わせない」処理の実装

    • 7.4.1 データソースを登録する
    • 7.4.2 アセットフィルターを作成する
    • 7.4.3 アセットを公開する
    • 7.4.4 サブスクリプションリクエストの作成と承認
    • 7.4.5 アクセス制御できているか確認する
    • コラム PIIの外部流出を防止・検知する機能群

    まとめ

    サポート

    ダウンロード

    本書で解説したサンプルコードおよびサンプルファイルをダウンロードして利用することができます。ダウンロード後,解凍してご利用ください。

    (2025年6月3日更新)

    ダウンロード
    sample_AWS_DM.zip

    商品一覧