AWSビッグデータコンバットLab5-データウェアハウスと視覚化(6)

この演習では、RedshiftおよびAmazonQuickSightプラットフォームを使用してデータ視覚化アプリケーションを構築する方法を学習します。Amazonのデータウェアハウスを使用してデータレイクからデータを読み込み、フルマネージドのデータ視覚化ツールで表示する方法を説明します。

この実験の目的は次のとおりです。

  • 1.Redshiftクラスターを作成します
  • 2.S3データファイルをRedshiftデータベースにバッチでロードします
  • 3.Quicksightを使用してデータテーブルを視覚化します

この実験のアーキテクチャ図は次のとおりです

画像-20210320135740643

データウェアハウスを構築する

1.データを表示する

S3バケット(ここs3://lab-921283538843-wzlinux-com/spark/output)のEMR実験で生成された寄木細工の形式のファイルが存在するかどうかを確認します。

画像-20210320135932095

2.IAMロールを作成します

IAMサービスを選択し、[ロール]-> [ロールの作成]をクリックして、[Redshift]を選択します

画像-20210320140034950

Redshift-Customizableを選択し、Nextpermissionをクリックします

画像-20210320140109645

権限AmazonS3ReadOnlyAccessを選択します

画像-20210320140136981

パーミッション名myRedshiftRoleを追加し、[確認]をクリックします

画像-20210320140206805

3.サブネットグループを作成します

Redshiftクラスターを作成する前に、サブネットグループを作成します。Redshiftサービスを選択し、左側のメニューバーで[CONFIG]-> [Manage SubnetGroup]を選択します

画像-20210320140333267

次に、「クラスターサブネットグループの作成」を選択します。サブネットグループ名はデフォルト名「cluster-subnet-group-1」を受け入れることができ、説明ボックスに説明テキストを入力します。[デフォルトVPC]を選択し、[このVPCのすべてのサブネットを追加する]を選択してから、[クラスターサブネットグループの作成]をクリックして、サブネットグループの作成を完了します。

画像-20210320140432628

4.Redshiftクラスターを作成します

左側のメニューで[クラスター]を選択し、[クラスターの作成]をクリックして、クラスターの名前を設定し(中国語、特殊文字、英語で始まり、数字、マイナス記号を使用できます)、を選択します。ノードタイプdc2.large

画像-20210320140610586

データベース構成はデフォルト値を受け入れ、マスターユーザーパスワードを入力します(入力したパスワードを覚えておいてください)

画像-20210320140856650

クラスターのアクセス許可で、前に作成したmyRedshiftRoleロールを選択し、[IAMロールの関連付け]をクリックします

画像-20210320194526535

他の構成では、デフォルトのVPC、デフォルトのセキュリティグループ、および前に作成したクラスターサブネットグループを選択し、[クラスターの作成]をクリックして確認します。約5分後、クラスターは[使用可能]になります。

5.Redshiftデータベースにアクセスします

Redshiftデータベースにアクセスする方法は2つあります。1つはRedshiftコンソールのクエリエディターを使用する方法、もう1つはSQLクライアント(SQL Workbench / Jクライアントなど)を使用する方法です。

この実験では、操作を簡単にするために、Redshiftコンソールのクエリエディターを使用してデータベースにアクセスします。左側のメニューで「エディタ」を選択し、「データベースに接続」ウィンドウにパラメータを入力してから、「データベースに接続」を選択します

画像-20210320141404147

6.テーブルを作成します

クエリエディタでテーブルを作成し、左側の[スキーマの選択]で[パブリック]を選択してから、SQLステートメントを入力してSQLクエリウィンドウにテーブルを作成します。

create table table1(
    tno varchar(20),
    tdate varchar(15),
    uno varchar(10),
    pno varchar(10),
    tnum int,
    uname varchar(20),
    umobile varchar(20),
    ano varchar(20),
    acity varchar(50),
    aname varchar(50),
    pclass varchar(10),
    pname varchar(50),
    price decimal(10, 2)
);

以下に示すように

画像-20210320141517613

「実行」を選択すると、結果に「完了」と表示されます。

7.S3データをインポートします


新しいSQLクエリウィンドウ(ここではクエリ2)を開き、以下のSQLコマンドを入力してS3データを読み込み、アカウントを実際のアカウントIDに置き換えることに注意して、取得したS3バケットアドレスを確認します。

copy table1 from 's3://lab-921283538843-wzlinux-com/spark/output/' 
credentials 'aws_iam_role=arn:aws:iam::921283538843:role/myRedshiftRole' 
format as parquet; 

以下に示すように

画像-20210320195005679

[実行]をクリックすると、結果が「完了」と表示されます。Query3に「 selectfromtable1 ;」入力して、テーブル内のデータをクエリします。Query4に「selectcount()from table1;」入力すると、テーブル内のデータをクエリする必要があります。これは、S3のデータがRedshiftデータウェアハウスにコピーされたことを示しています。

画像-20210320202703451

8.インターネットアクセスを許可する

次のステップでは、AWSQuicksightを使用してRedshiftでデータを視覚化します。その前に、QuicksightにインターネットからRedshiftへのアクセスを許可する必要があります。このために、最初にEC2メニューでパブリックネットワークエラスティックIPアドレスを作成します(プロセスは省略されています)。次に、Redshiftプロパティを変更して、パブリックアクセスを許可します。

画像-20210320202959325

パブリックアクセス可能を「はい」に変更し、対応するエラスティックパブリックネットワークIPアドレスを選択します。

画像-20210320203019533

この操作にはしばらく時間がかかります。数分お待ちください。

データの視覚化

1.Quicksightを有効にします

Quicksightの有効化については、ここでは紹介しません。Lab3をご覧いただけます。

2.データセットを作成します

Quicksightコンソールインターフェイスに入り、左側のデータセットをクリックして、「新しいデータセット」の作成を選択します

画像-20210320203332064

Redshift(自動検出)データセットを選択します。Redshiftには手動接続方法もありますが、ここでは説明しません。

画像-20210320203413509

接続パラメータを入力し、[データソースの作成]を選択し、対応するRedshiftデータベースを選択し、対応するアドレス、ポート、データベース名、ユーザー名、およびパスワードを構成するように注意してください

画像-20210320203516186

Table1を選択し、[Select]をクリックし、最後に[Virtualize]をクリックして、データセットの作成を完了します(ここでは、データをRedshiftからQuicksighにインポートすることを選択しているため、分析速度がはるかに速くなります)。

画像-20210320203709754

3.データの視覚化

視覚化オブジェクトウィンドウを開き、表示モードを「垂直棒グラフ」として選択します。

画像-20210320203815481

tdateドラッグ&ドロップX axisバー、tnumドラッグvalueバー(システムが自動的にカウント数を選択)

画像-20210320204047396

これで、「日付はX軸、その日の総販売量はY軸の高から低」の表示が完了します。

QRコードをスキャンして注意を払い、より多くの情報を入手することを歓迎します

AWSビッグデータコンバットLab5-データウェアハウスと視覚化(6)

おすすめ

転載: blog.51cto.com/wzlinux/2678128