Amazon Redshift 入門ガイド
Amazon Redshift: 入門ガイド Copyright 2018 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon.
Table of Contents ご利用開始にあたって... 1 ステップ 1: 前提条件の設定... 1 AWS にサインアップする... 2 SQL クライアントのトライバーとツールのインストール... 2 ファイアウォールルールの決定... 3 ステップ 2: IAM ロールを作成する... 3 Amazon Redshift 用の IAM ロールを作成するには... 3 ステップ 3: クラスターを起動する... 4 Amazon Redshift クラスターを起動するには... 4 ステップ 4: クラスターへのアクセスの許可... 9 VPC セキュリティグループ (EC2-VPC Platform) を設定するには... 10 Amazon Redshift セキュリティグループを設定するには... 11 ステップ 5: クラスターに接続する... 11 接続文字列を取得するには... 12 SQL Workbench/J からクラスターに接続するには... 12 ステップ 6: サンプルデータをロードする... 14 ステップ 7: 他のリソースの検索と環境のリセット... 18 ここからどこへ進むべきですか?... 18 ドキュメント履歴... 22 iii
ステップ 1: 前提条件の設定 Amazon Redshift の使用開始 ガイドへようこそ Amazon Redshift は クラウド内での完全マネージ ド型 ペタバイトスケールのデータウェアハウスサービスです Amazon Redshift データウェアハウス は ノードと呼ばれるコンピューティングリソースのコレクションであり これらはクラスターと呼ばれ るグループを構成します 各クラスターは 1 つの Amazon Redshift エンジンを実行し 1 つ以上のデー タベースを含みます Amazon Redshift を初めて使用する方には 次のセクションを初めに読むことをおすすめします Amazon Redshift Management Overview このトピックでは Amazon Redshift の概要を説明します サービスのハイライトと価格設定 この製品詳細ページには Amazon Redshift の価値提案 サービス のハイライト 価格設定が掲載されています (本ガイド) 本ガイドでは Amazon Redshift を使用してサンプルクラス ターを作成し サンプルデータを操作する方法を実践的に説明します Amazon Redshift で PoC (概念実証) ソリューションを構築する場合 Amazon Redshift の PoC (概念実証) の構築を読まれることを推奨します 本ガイドは Amazon Redshift のサンプルクラスターを作成する手順を説明するために設計されたチュー トリアルです このサンプルクラスターは Amazon Redshift サービスを評価するのに使用できます 本 チュートリアルでは 次の手順を実行します ステップ 1: 前提条件の設定 (p. 1) ステップ 2: IAM ロールを作成する (p. 3) ステップ 3: Amazon Redshift サンプルクラスターの起動 (p. 4) ステップ 4: クラスターへのアクセスの許可 (p. 9) ステップ 5: サンプルクラスターに接続する (p. 11) ステップ 6: Amazon S3 のサンプルデータをロードする (p. 14) ステップ 7: 他のリソースの検索と環境のリセット (p. 18) 本チュートリアルを完了した後は ここからどこへ進むべきですか? (p. 18)で Amazon Redshift に関 する詳細と次に行うステップを説明しています Important 作成するサンプルクラスターは ライブ環境で実行されます 本チュートリアルで設計されるサ ンプルクラスターの使用については サンプルクラスターを削除するまでのオンデマンドレー トが 1 時間あたり 0.25 USD になります 料金表の詳細については Amazon Redshift の料金 表ページを参照してください ご質問がある場合や問題が発生した場合は ディスカッション フォーラム に投稿することで Amazon Redshift チームに問い合わせることができます 本チュートリアルでは 運用環境での使用を想定していないため オプションについては詳しく説明しま せん 本チュートリアルの手順を完了したら その他のリソース (p. 18)セクションを参照して クラス ターの計画 展開 保守や データウェアハウスのデータの操作について より詳細な情報を得ることが できます ステップ 1: 前提条件の設定 Amazon Redshift クラスターの設定を開始する前に このセクションに記載する前提条件を満たしている ことを確認してください AWS にサインアップする (p. 2) 1
AWS にサインアップする SQL クライアントのトライバーとツールのインストール (p. 2) ファイアウォールルールの決定 (p. 3) AWS にサインアップする まだ AWS アカウントをお持ちでない場合は サインアップしてアカウントを作成してください すでに アカウントをお持ちの場合は この前提条件をスキップして既存のアカウントを使用します 1. https://aws.amazon.com/ を開き [Create an AWS Account] を選択します Note 過去に AWS マネジメントコンソール にサインインした場合は お使いのブラウザで使用で きないことがあります その場合は [Sign in to a different account] を選択し 次に [Create a new AWS account] を選択します 2. オンラインの手順に従います サインアップ手順の一環として 通話呼び出しを受け取り 電話のキーパッドを用いて PIN を入力す ることが求められます SQL クライアントのトライバーとツールのインストー ル Amazon Redshift クラスターへの接続には Amazon Redshift JDBC または ODBC のドライバーを使用 するほとんどの SQL クライアントツールを使用できます 本チュートリアルでは SQL Workbench/J を 使って接続する方法を説明します これは無料で使える DBMS に依存しないクロスプラットフォームの SQL クエリツールです このチュートリアルを完了させるために SQL Workbench/J を使用する場合は 次の手順に従って Amazon Redshift JDBC ドライバーおよび SQL Workbench/J をセットアップしてくだ さい SQL Workbench/J のインストールの詳細な手順については Amazon Redshift Cluster Management Guide の SQL Workbench/J クライアントのセットアップ を参照してください Amazon EC2 インスタ ンスをクライアントコンピュータとして使う場合は そのインスタンスに SQL Workbench/J および必要 なドライバーをインストールします Note サードパーティ製データベースツールでクラスターに使用したいものがあれば 別途インストー ルする必要があります Amazon Redshift によりサードパーティ製のツールやライブラリが提供 されたり インストールされることはありません クライアントコンピュータに SQL Workbench/J をインストール するには 1. 2. 3. SQL Workbench/J のソフトウェアライセンスを確認します SQL Workbench/J ウェブサイト に移動し 使用するオペレーティングシステムに適したパッケージ をダウンロードします Installing and starting SQL Workbench/J ページ にアクセスして SQL Workbench/J をインストール します Important 4. SQL Workbench/J に必要な Java ランタイムのバージョンを確認して 必ずそのバージョン を使用してください 違うバージョンでは SQL Workbench/J が動作しません JDBC 接続を設定する を参照して Amazon Redshift JDBC ドライバーをダウンロードし SQL Workbench/J をクラスターに接続できるようにします 2
ファイアウォールルールの決定 Amazon Redshift JDBC または ODBC ドライバの使用の詳細については Amazon Redshift での接続の 設定 を参照してください ファイアウォールルールの決定 本チュートリアルの一部として Amazon Redshift クラスターを起動するときのポートを指定します ま た このポートを経由するクラスターへのアクセスを許可するために インバウンド進入ルールをセキュ リティグループに作成します お使いのクライアントコンピュータがファイアウォールの内側にある場合は SQL クライアントツールか らクラスターに接続してクエリを実行できるように 使用可能な開いているポートを把握しておく必要が あります ポートが分からない場合は ネットワークファイアウォールルールを把握している担当者の協 力を得て ファイアウォールの開いているポートを判別する必要があります Amazon Redshift はデフォ ルトでポート 5439 を使用しますが お使いのファイアウォールでこのポートが開いていない場合は接続 できません Amazon Redshift クラスターの作成後にポート番号を変更することができないため 起動処 理の際には必ず お使いの環境で機能する開いているポートを指定してください ステップ 2: IAM ロールを作成する COPY コマンドを使用して Amazon S3 からデータをロードするなど 他の AWS リソースのデータにア クセスする操作については クラスターはユーザーに代わって リソースおよびリソースのデータへの アクセス許可が必要です クラスターにアタッチされている IAM ロールを通して または必要なアクセ ス権限を持つ IAM ユーザー用の AWS アクセスキーを提供することによって AWS Identity and Access Management を使用してこれらのアクセス許可を提供します 機密データおよび AWS 認証情報を保護するために IAM ロールを作成し クラスターにアタッチするこ とをお勧めします アクセス許可の提供の詳細については 他の AWS のリソースにアクセスするため のアクセス権 を参照してください このステップでは Amazon Redshift が Amazon S3 バケットからデータをロードできるようにする新しい IAM ロールを作成します 次のステップでは クラスターにロールをアタッチします Amazon Redshift 用の IAM ロールを作成するには 1. 2. 3. AWS マネジメントコンソール にサインインし IAM コンソール https://console.aws.amazon.com/ iam/ を開きます 左のナビゲーションペインで [Roles] を選択します [Create role] を選択します 4. 5. [AWS Service] グループの [Redshift.] を選択します [Select your use case] で [Redshift - Customizable] [Next: Permissions] の順に選択します 6. [Attach permissions policies] ページで [AmazonS3ReadOnlyAccess] [Next: Review] の順に選択し ます 7. [Role name] に ロールの名前を入力します このチュートリアルでは myredshiftrole を入力し ます 8. 情報を確認してから [Create Role] を選択します 9. 作成したロールのロール名を選択します 10. clipboard に [Role ARN] をコピーします この値は 作成したロール用の Amazon Resource Name (ARN) です ステップ 6: Amazon S3 のサンプルデータをロードする (p. 14) で COPY コマン ドを使用してデータをロードする際にこの値を使用します 新しいロールを作成したら 次はクラスターにアタッチします ロールは 新しいクラスターの起動時に アタッチするか 既存のクラスターにアタッチできます 次のステップでは 新しいクラスターにロール をアタッチします 3
ステップ 3: クラスターを起動する ステップ 3: Amazon Redshift サンプルクラスター の起動 前提条件を満たしたら Amazon Redshift クラスターを起動することができます Important ここで起動するクラスターはライブとなります (サンドボックスで実行されるわけではありませ ん) クラスターを削除するまで そのクラスターについて Amazon Redshift 標準使用料が発生し ます ここで説明したチュートリアルを 1 種類の設定だけで実行し 完了した時点でクラスター を削除すれば 課金される合計料金はごくわずかです Amazon Redshift クラスターを起動するには 1. AWS マネジメントコンソールにサインインし Amazon Redshift コンソール https:// console.aws.amazon.com/redshift/ を開きます Important IAM ユーザー認証情報を使う場合は そのユーザーにクラスター操作を実行するために必要 な権限があるか確認してください 詳細については Amazon Redshift Cluster Management Guide の IAM ユーザーへのアクセスの制御 をご覧ください 2. メインメニューで クラスターを作成するリージョンを選択します このチュートリアルでは [米国 西部 (オレゴン)] を選択します 3. Amazon Redshift ダッシュボードで [Launch Cluster] を選択します Amazon Redshift ダッシュボードは 以下のような内容です 4. [Cluster Details] ページで 次の値を入力してから [Continue] をクリックします 4
Amazon Redshift クラスターを起動するには [Cluster Identifier]: examplecluster と入力します [Database Name]: このボックスは空欄のままにします Amazon Redshift により デフォルト名 dev でデータベースが作成されます [Database Port]: データベースへの接続を受け入れるポート番号を入力します このポート番号に は 本チュートリアルの前提条件のステップで決定した番号を使用します クラスターの起動後に ポートを変更することはできないので SQL クライアントツールからクラスターのデータベースに 接続できるように お使いのファイアウォールの開いているポート番号を確認しておきます [Master User Name]: masteruser と入力します クラスターが使用可能になったら このユー ザー名とパスワードを使用してデータベースに接続します [Master User Password] と [Confirm Password]: マスターユーザーアカウントのパスワードを入力し ます 5. [Node Configuration] ページで 次の値を選択してから [Continue] を選択します [Node Type]: dc2.large [Cluster Type]: Single Node 5
Amazon Redshift クラスターを起動するには 6. [Additional Configuration] ページでは お使いの AWS アカウントによって異なるオプションが表示 されます このアカウントにより クラスターで使用するプラットフォームのタイプが決まります 本チュートリアルでは 話を単純にするため EC2-Classic と EC2-VPC のプラットフォームの違い を理解する必要はありません チュートリアルの後で その他のリソース (p. 18)の情報を利用し てAmazon Redshift Cluster Management Guideを参照し さらに詳しい情報を得ることができます EC2-VPC 選択したリージョンにデフォルトの VPC が存在する場合は EC2-VPC プラットフォームを使用して クラスターを起動します 画面は次のようになります 6
Amazon Redshift クラスターを起動するには EC2-VPC プラットフォームでクラスターを起動する場合は 次の値を使用します [Cluster Parameter Group]: デフォルトのパラメータグループを選択します Encrypt Database: None [Choose a VPC]: デフォルトの VPC (vpc-xxxxxxxx) [Cluster Subnet Group]: デフォルト [Publicly Accessible]: Yes [Choose a Public IP Address]: No Enhanced VPC Routing: No [Availability Zone]: No Preference [VPC Security Groups]: デフォルト (sg-xxxxxxxx) Create CloudWatch Alarm: No メンテナンストラック: Current (最新) EC2-Classic VPC が存在しない場合は EC2-Classic プラットフォームを使用してクラスターを起動します 画面 は次のようになります 7
Amazon Redshift クラスターを起動するには EC2-Classic プラットフォームでクラスターを起動する場合は 次の値を使用します [Cluster Parameter Group]: デフォルトのパラメータグループを選択します Encrypt Database: None [Choose a VPC]: Not in VPC [Availability Zone]: No Preference [Cluster Security Groups]: デフォルト Create CloudWatch Alarm: No メンテナンストラック: Current (最新) 7. IAM ロールとクラスターを関連付けます [AvailableRoles] で [myredshiftrole] を選択し [Continue] を選択します 8. [Review] ページで 選択した内容を確認してから [Launch Cluster] を選択します 画面は次のようになります 8
ステップ 4: クラスターへのアクセスの許可 9. 確認ページが表示され クラスターの処理が完了するまで数分かかります [Close] を選択して クラ スターのリストに戻ります 10. [Clusters] ページで 先ほど起動したクラスターを選択し [Cluster Status] 情報を確認します 本 チュートリアルで後ほどデータベースに接続する前に [Cluster Status] が available に [Database Health] が healthy になっていることを確認します ステップ 4: クラスターへのアクセスの許可 前のステップでは Amazon Redshift クラスターを起動しました クラスターに接続する前に アクセス を許可するためのセキュリティグループを構成する必要があります 9
VPC セキュリティグループ (EC2VPC Platform) を設定するには EC2-VPC プラットフォームでクラスターを起動した場合は VPC セキュリティグループ (EC2-VPC Platform) を設定するには (p. 10)の手順に従います EC2-Classic プラットフォームでクラスターを起動した場合は Amazon Redshift セキュリティグルー プを設定するには (p. 11)の手順に従います Note これらの 2 種類のセキュリティグループのうち 設定するのはどちらかでかまいません クラス ターを起動したプラットフォームに対応する手順に従います VPC セキュリティグループ (EC2-VPC Platform) を設 定するには 1. Amazon Redshift コンソールのナビゲーションペインで [Clusters] を選択します 2. examplecluster を選択してこのクラスターを開き [Configuration] タブが表示された状態にしま す 3. [Cluster Properties] の下の [VPC Security Groups] で セキュリティグループを選択します 4. セキュリティグループが Amazon EC2 コンソールで開いたら [Inbound] タブを選択します 5. [Edit] を選択し 次のように入力してから [Save] を選択します [Type]: Custom TCP Rule [Protocol]: TCP [Port Range]: クラスターの起動時に使用したのと同じポート番号を入力します Amazon Redshift のデフォルトのポートは 5439 ですが お使いのポートはこれと異なる場合があります [Source]: [Custom IP] を選択し 0.0.0.0/0 と入力します Important 0.0.0.0/0 と入力するとインターネット上のすべてのコンピュータからアクセス可能になる ため デモ目的以外での使用は推奨しません 実際の環境では お使いのネットワーク設 定に基づいてインバウンドルールを作成します 10
Amazon Redshift セキュリティグループを設定するには Amazon Redshift セキュリティグループを設定するに は 1. Amazon Redshift コンソールのナビゲーションペインで [Clusters] を選択します 2. examplecluster を選択してこのクラスターを開き [Configuration] タブが表示された状態にしま す [Cluster Properties] の下の [Cluster Security Groups] で [default] を選択して デフォルトのセキュリ ティグループを開きます 3. 4. [Security Groups] タブのクラスターセキュリティグループリストで ルールを管理するクラスターセ キュリティグループを選択します 5. [Security Group Connections] タブで [Add Connection Type] を選択します 6. [Connection Type] ボックスで [CIDR/IP] を選択します [CIDR/IP to Authorize] に 0.0.0.0/0 と入力し [Authorize] を選択します Important 0.0.0.0/0 と入力するとインターネット上のすべてのコンピュータからアクセス可能になるた め デモ目的以外での使用は推奨しません 実際の環境では お使いのネットワーク設定に 基づいてインバウンドルールを作成します ステップ 5: サンプルクラスターに接続する 次に SQL クライアントツールを使用してクラスターに接続し シンプルなクエリを実行して接続をテス トします PostgreSQL と互換性があるほとんどの SQL クライアントツールを使用できます 本チュート 11
接続文字列を取得するには リアルでは 前提条件のセクションでインストールした SQL Workbench/J クライアントを使用します 次の手順に従って このセクションを実行します 接続文字列を取得するには (p. 12) SQL Workbench/J からクラスターに接続するには (p. 12) このステップを終了した後は ステップ 6: Amazon S3 のサンプルデータをロードする (p. 14) に進 んで Amazon S3 からサンプルデータをロードするか ここからどこへ進むべきですか? (p. 18) で Amazon Redshift に関する情報を参照して環境をリセットするかを選択できます 接続文字列を取得するには 1. Amazon Redshift コンソールのナビゲーションペインで [Clusters] を選択します 2. examplecluster を選択してこのクラスターを開き [Configuration] タブが表示された状態にしま す 3. [Configuration] タブで [Cluster Database Properties] の下にある クラスターの JDBC URL をコピー します Note クラスターのエンドポイントは クラスターが作成されて使用可能な状態になるまで使用で きません SQL Workbench/J からクラスターに接続するには このステップでは ステップ 1: 前提条件の設定 (p. 1) で SQL Workbench/J をインストールしたこ とを前提としています 1. SQL Workbench/J を開きます 2. [File] を選択し [Connect window] を選択します 3. [Create a new connection profile] を選択します 4. [New profile] テキストボックスに プロファイルの名前を入力します 5. [Manage Drivers] を選択します [Manage Drivers] ダイアログが開きます 6. [Create a new entry] ボタンを選択します [Name] テキストボックスに ドライバの名前を入力しま す 12
SQL Workbench/J からクラスターに接続するには [Library] ボックスの横にあるフォルダアイコンを選択し 目的のドライバーの場所まで移動してその ドライバーを選択します 次に [Open] を選択します [Please select one driver] ダイアログボックスが表示されたら [com.amazon.redshift.jdbc4.driver] または [com.amazon.redshift.jdbc41.driver] を選択し [OK] を選択します [Classname] ボックス は SQL Workbench/J によって自動入力されます [Sample URL] ボックスは空白のままにしておい て [OK] を選択します 7. [Driver] ボックスで 追加したドライバーを選択します 8. [URL] で Amazon Redshift console から JDBC URL をコピーし ここに貼り付けます 9. [Username] に masteruser と入力します 10. [Password] に マスターユーザーアカウントに関連付けられたパスワードを入力します 11. [Autocommit] ボックスをオンにします 12. 次に示す [Save profile list] アイコンを選択します 13
ステップ 6: サンプルデータをロードする 13. [OK] を選択します ステップ 6: Amazon S3 のサンプルデータをロード する これでデータベース dev を作成し それに接続できました 次はこのデータベースにテーブルを作成し テーブルにデータをアップロードして クエリを実行してみます すぐにロードして使えるサンプルデー タを Amazon S3 バケットに用意しました Note 次に進む前に SQL Workbench/J クライアントをクラスターに接続しておいてください このステップを完了したら Amazon Redshift に関するより多くの情報を検索したり ここからどこへ 進むべきですか? (p. 18) で環境をリセットすることができます 1. テーブルを作成する 以下の create table ステートメントをコピーして実行し dev データベースにテーブルを作成し ます シンタックスの詳細については Amazon Redshift Database Developer Guide の CREATE TABLE に進みます create table users( userid integer not null distkey sortkey, username char(8), firstname varchar(30), lastname varchar(30), city varchar(30), state char(2), email varchar(100), 14
ステップ 6: サンプルデータをロードする phone char(14), likesports boolean, liketheatre boolean, likeconcerts boolean, likejazz boolean, likeclassical boolean, likeopera boolean, likerock boolean, likevegas boolean, likebroadway boolean, likemusicals boolean); create table venue( venueid smallint not null distkey sortkey, venuename varchar(100), venuecity varchar(30), venuestate char(2), venueseats integer); create table category( catid smallint not null distkey sortkey, catgroup varchar(10), catname varchar(10), catdesc varchar(50)); create table date( dateid smallint not null distkey sortkey, caldate date not null, day character(3) not null, week smallint not null, month character(5) not null, qtr character(5) not null, year smallint not null, holiday boolean default('n')); create table event( eventid integer not null distkey, venueid smallint not null, catid smallint not null, dateid smallint not null sortkey, eventname varchar(200), starttime timestamp); create table listing( listid integer not null distkey, sellerid integer not null, eventid integer not null, dateid smallint not null sortkey, numtickets smallint not null, priceperticket decimal(8,2), totalprice decimal(8,2), listtime timestamp); create table sales( salesid integer not null, listid integer not null distkey, sellerid integer not null, buyerid integer not null, eventid integer not null, dateid smallint not null sortkey, qtysold smallint not null, pricepaid decimal(8,2), commission decimal(8,2), saletime timestamp); 15
ステップ 6: サンプルデータをロードする 2. COPY コマンドを使用して Amazon S3 からサンプルデータをロードします Note Amazon S3 または DynamoDB から大容量のデータセットを Amazon Redshift にロードす るために COPY コマンドを使用することをお勧めします COPY 構文の詳細については Amazon Redshift Database Developer Guide の COPY を参照してください このチュートリアルのサンプルデータがあるのは Amazon Redshift が所有する Amazon S3 バケット 内です このバケットの権限は すべての認証された AWS ユーザーにサンプルデータファイルへの 読み込みアクセスを許可する設定になっています サンプルデータをロードするには ユーザーに代わってクラスターが Amazon S3 にアクセスする ための認証を提供する必要があります ロールベースの認証またはキーベースの認証を提供でき ます ロールベースの認証を使用することをお勧めします 両方のタイプの認証の詳細について は Amazon Redshift Database Developer Guide の CREDENTIALS を参照してください この手順では 前の手順で作成し クラスターにアタッチした IAM ロールを参照して 認証を提供し ます Note Amazon S3 への適切なアクセス許可がない場合 COPY コマンドを実行する と S3ServiceException: Access Denied というエラーメッセージが表示されます COPY コマンドには 次の例のように IAM ロール ARN のプレースホルダーが含まれます copy users from 's3://awssampledbuswest2/tickit/allusers_pipe.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter ' ' region 'us-west-2'; IAM ロールを使用してアクセスを許可するには CREDENTIALS パラメータ文字列の <iam-rolearn> を ステップ ステップ 2: IAM ロールを作成する (p. 3) で作成した IAM ロールのロール ARN と置き換えます COPY コマンドは 次の例のようになります copy users from 's3://awssampledbuswest2/tickit/allusers_pipe.txt' credentials 'aws_iam_role=arn:aws:iam::123456789012:role/myredshiftrole' delimiter ' ' region 'us-west-2'; サンプルデータをロードするには 次の COPY コマンドの <iam-role-arn> をロール ARN と置き 換えます 次に SQL クライアントツールでコマンドを実行します copy users from 's3://awssampledbuswest2/tickit/allusers_pipe.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter ' ' region 'us-west-2'; copy venue from 's3://awssampledbuswest2/tickit/venue_pipe.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter ' ' region 'us-west-2'; copy category from 's3://awssampledbuswest2/tickit/category_pipe.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter ' ' region 'us-west-2'; copy date from 's3://awssampledbuswest2/tickit/date2008_pipe.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter ' ' region 'us-west-2'; 16
ステップ 6: サンプルデータをロードする copy event from 's3://awssampledbuswest2/tickit/allevents_pipe.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter ' ' timeformat 'YYYY-MM-DD HH:MI:SS' region 'us-west-2'; copy listing from 's3://awssampledbuswest2/tickit/listings_pipe.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter ' ' region 'us-west-2'; copy sales from 's3://awssampledbuswest2/tickit/sales_tab.txt' credentials 'aws_iam_role=<iam-role-arn>' delimiter '\t' timeformat 'MM/DD/YYYY HH:MI:SS' region 'us-west-2'; 3. 次にサンプルクエリを実行します 詳細については Amazon Redshift 開発者ガイド の SELECT を参照してください -- Get definition for the sales table. SELECT * FROM pg_table_def WHERE tablename = 'sales'; -- Find total sales on a given calendar date. SELECT sum(qtysold) FROM sales, date WHERE sales.dateid = date.dateid AND caldate = '2008-01-05'; -- Find top 10 buyers by quantity. SELECT firstname, lastname, total_quantity FROM (SELECT buyerid, sum(qtysold) total_quantity FROM sales GROUP BY buyerid ORDER BY total_quantity desc limit 10) Q, users WHERE Q.buyerid = userid ORDER BY Q.total_quantity desc; -- Find events in the 99.9 percentile in terms of all time gross sales. SELECT eventname, total_price FROM (SELECT eventid, total_price, ntile(1000) over(order by total_price desc) as percentile FROM (SELECT eventid, sum(pricepaid) total_price FROM sales GROUP BY eventid)) Q, event E WHERE Q.eventid = E.eventid AND percentile = 1 ORDER BY total_price desc; 4. オプションとして Amazon Redshift コンソールから実行したクエリを確認できます [Queries] タブ に 指定期間内に実行されたクエリの一覧が表示されます デフォルトでは コンソールは現在実行 中のクエリを含め 最近 24 時間以内に実行されたクエリを表示します AWS マネジメントコンソールにサインインし Amazon Redshift コンソール https:// console.aws.amazon.com/redshift/ を開きます 右ペインのクラスターリストで examplecluster を選択します [Queries] タブを選択します コンソールに実行したクエリの一覧が下の例のように表示されます 17
ステップ 7: 他のリソースの検索と環境のリセット クエリに関する詳細情報を表示するには Query 列でクエリ ID リンクを選択するか または拡大鏡 のアイコンを選択します 次の例は 前のステップで実行したクエリの詳細を表示したものです ステップ 7: 他のリソースの検索と環境のリセット このチュートリアルを完了したら このガイドで説明した概念について Amazon Redshift の他のリソー スでさらに知識を深めることも 環境を元の状態にリセットすることもできます 他の Amazon Redshift ガイドのタスクを試す意向がある場合は 実行しているサンプルクラスターを維持することもできます ただし クラスターを実行している間は継続して課金されるので 注意してください 不要になったクラ スターは 課金を停止するために アクセスを取り消して削除する必要があります ここからどこへ進むべきですか? その他のリソース 次のリソースを使用して このガイドで説明した概念についてさらに詳細な説明をご覧になることを推奨 します Amazon Redshift Management Overview このトピックでは Amazon Redshift の概要を説明します 18
ここからどこへ進むべきですか? Amazon Redshift Cluster Management Guide: このガイドは本を基礎とし て構成されており クラスターの作成 管理 および監視に関する概念とタスクの詳細情報を提供しま す Amazon Redshift Database Developer Guide: このガイドは 本を基礎とし て構成されており データウェアハウスを構成するデータベースの構築 クエリ および保守に関する 詳細情報をデータベース開発者向けに提供します 環境のリセット このチュートリアルを完了したら 次の手順を実行して環境を以前の状態にリセットします アクセスを許可したポートおよび CIDR/IP アドレスへのアクセスを取り消します EC2-VPC プラットフォームを使用してクラスターを起動した場合は VPC セキュリティグループから のアクセスを取り消すには (p. 19)の手順を実行します EC2-Classic プラットフォームを使用してクラスターを起動した場合は クラスターセキュリティグ ループからのアクセスを取り消すには (p. 20)の手順を実行します サンプルクラスターを削除します クラスターを削除するまで そのクラスターについて Amazon Redshift サービスの使用料が継続して発生します サンプルクラスターを削除するには (p. 20) の 手順を実行します VPC セキュリティグループからのアクセスを取り消すには 1. Amazon Redshift コンソールのナビゲーションペインで [Clusters] を選択します 2. examplecluster を選択してこのクラスターを開き [Configuration] タブが表示された状態にします 3. [Cluster Properties] の下の vpc セキュリティグループを選択します 4. デフォルトのセキュリティグループを選択した状態で [Inbound] タブを選択し [Edit] を選択します 5. ポートに対して作成したカスタム TCP/IP 進入ルールと CIDR/IP アドレス 0.0.0.0/0 を削除しま す All traffic ルールなど セキュリティグループに対してデフォルトで作成されたその他のルールは 削除しないでください [Save] を選択します 19
ここからどこへ進むべきですか? クラスターセキュリティグループからのアクセスを取り消すには 1. Amazon Redshift コンソールのナビゲーションペインで [Clusters] を選択します 2. examplecluster を選択してこのクラスターを開き [Configuration] タブが表示された状態にします 3. [Cluster Properties] の下の [Cluster Security Groups] で [default] を選択して デフォルトのセキュリ ティグループを開きます 4. [Security Groups] タブのクラスターセキュリティグループリストで デフォルトクラスターセキュリ ティグループを選択します 5. [Security Group Connections] タブで CIDR/IP アドレス 0.0.0.0/0 に対して作成したカスタム CIDR/ IP 進入ルールを選択し [Revoke] を選択します サンプルクラスターを削除するには 1. Amazon Redshift コンソールのナビゲーションペインで [Clusters] を選択します 2. examplecluster を選択してこのクラスターを開き [Configuration] タブが表示された状態にします 3. [Cluster] メニューで [Delete] を選択します 20
ここからどこへ進むべきですか? 4. [Delete Cluster] ウィンドウで [Create snapshot] に [No] を選択して [Delete] を選択します 5. クラスターの詳細ウィンドウで [Cluster Status] にクラスターが削除処理中であると表示されます 21
ドキュメント履歴 次の表は 最新版リリース以降に更新された重要な変更点をまとめたも のです ドキュメント最新更新日: 2015 年 28 月 7 日 変更 説明 リリース日 新機能 Amazon Redshift ダッシュボードからクラスターを起動す るようにガイドを更新しました 2015 年 7 月 28 日 新機能 新しいノードタイプ名を使用するようにガイドを更新しま した 2015 年 6 月 9 日 ドキュメントの更新 VPC セキュリティグループの設定のスクリーンショット と手順を更新しました 2015 年 4 月 30 日 ドキュメントの更新 現在のコンソールに合致するようにスクリーンショットと 手順を更新しました 2014 年 11 月 12 日 ドキュメントの更新 見つけやすくするために Amazon S3 からのデータの ロードに関する説明を独立したセクションに移動し 次の ステップセクションを最終ステップに移動しました 2014 年 5 月 13 日 ドキュメントの更新 ようこそページを削除し そのコンテンツをメインの使用 開始ページに組み込みました 2014 年 3 月 14 日 ドキュメントの更新 これは カスタマーフィードバックとサービスの更新情報 を反映した の新しいリリース です 2014 年 3 月 14 日 新規ガイド これは の初版リリースで す 2013 年 2 月 14 日 22