【ノーコード】SAP Analytics Cloud でRedshift のデータを分析する方法
SAP Analytics Cloud は、クラウドベースのビジネスインテリジェンスプラットフォームです。CData API Server は、Redshift の仮想データベースを作成し、Redshift のOData API(Analytics Cloud でネイティブに使用可能)を生成するために使用できます。SAP Analytics Cloud をCData API Server とペアリングすることで、すべてのSaaS およびBig Data とNoSQL ソースへの、データを移行したり統合したりする必要のない接続が可能になります。ほかのOData サービスと同様に、API Server に接続するだけで、すべてのデータに瞬時にライブアクセスできます。
この記事では、API Server でのRedshift への接続と、Analytics Cloud からのAPI Server への接続について説明し、モデルと簡単なダッシュボードを作成します。
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなRedshift OData サービスを作成していきましょう。
Redshift への接続
SAP Analytics Cloud からRedshift のデータを操作するには、まずRedshift への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Redshift」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、Redshift への接続設定を行っていきましょう!
-
Amazon Redshift への接続
それでは、早速Amazon Redshift に接続していきましょう。データに接続するには、以下の接続パラメータを指定します。
- Server:Amazon Redshift データベースをホスティングしているサーバーのホスト名またはIP アドレス
- Database:Amazon Redshift クラスター用に作成したデータベース
- Port(オプション):Amazon Redshift データベースをホスティングしているサーバーのポート。デフォルトは5439です
これらの値は、以下のステップでAWS マネージメントコンソールから取得できます。
- Amazon Redshift コンソールを開きます(http://console.aws.amazon.com/redshift)
- Clusters ページで、クラスター名をクリックしてください
- Configuration タブの"Cluster Database Properties" セクションからプロパティを取得します。接続プロパティの値は、ODBC URL で設定された値と同じになります
Amazon Redshiftへの認証
CData 製品では幅広い認証オプションに対応しています。標準認証情報からIAM クレデンシャル、ADFS、Ping Federate、Microsoft Entra ID(Azure AD)、Azure AD PKCE まで利用可能です。標準認証
ログイン資格情報を使用してAmazon Redshift に接続するには、以下のプロパティを設定してみましょう。- AuthScheme:Basic
- User:認証するユーザーのログイン情報
- Password:認証するユーザーのパスワード
その他の認証方法については、ヘルプドキュメントをご確認ください。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
Amazon Redshift への接続
それでは、早速Amazon Redshift に接続していきましょう。データに接続するには、以下の接続パラメータを指定します。
- Server:Amazon Redshift データベースをホスティングしているサーバーのホスト名またはIP アドレス
- Database:Amazon Redshift クラスター用に作成したデータベース
- Port(オプション):Amazon Redshift データベースをホスティングしているサーバーのポート。デフォルトは5439です
これらの値は、以下のステップでAWS マネージメントコンソールから取得できます。
- Amazon Redshift コンソールを開きます(http://console.aws.amazon.com/redshift)
- Clusters ページで、クラスター名をクリックしてください
- Configuration タブの"Cluster Database Properties" セクションからプロパティを取得します。接続プロパティの値は、ODBC URL で設定された値と同じになります
Amazon Redshiftへの認証
CData 製品では幅広い認証オプションに対応しています。標準認証情報からIAM クレデンシャル、ADFS、Ping Federate、Microsoft Entra ID(Azure AD)、Azure AD PKCE まで利用可能です。標準認証
ログイン資格情報を使用してAmazon Redshift に接続するには、以下のプロパティを設定してみましょう。- AuthScheme:Basic
- User:認証するユーザーのログイン情報
- Password:認証するユーザーのパスワード
その他の認証方法については、ヘルプドキュメントをご確認ください。
API Server のユーザー設定
次に、API Server 経由でRedshift にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
Redshift 用のAPI エンドポイントの作成
ユーザーを作成したら、Redshift のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でRedshift への接続を設定してユーザーを作成し、API Server でRedshift データのAPI を追加しました。これで、OData 形式のRedshift データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
(オプション)Cross-Origin Resource Sharing (CORS) を構成する
Ajax などのアプリケーションから複数の異なるドメインにアクセスして接続すると、クロスサイトスクリプティングの制限に違反する恐れがあります。その場合には、[OData]->[Settings]でCORS 設定を構成します。
- Enable cross-origin resource sharing (CORS):ON
- Allow all domains without '*':ON
- Access-Control-Allow-Methods:GET, PUT, POST, OPTIONS
- Access-Control-Allow-Headers:Authorization
SAP Analytics Cloud でRedshift のデータのモデルを作成する
Redshift への接続が設定されてOData エンドポイントが作成されると、SAP Analytics Cloud でRedshift のデータのモデルを作成できるようになります。
- Analytics Cloud インスタンスにログインし、メニューから「Create」->「Model」と進みます。
- 「Get data from a datasource」から「OData Services」を選択します。
- API Server OData への既存の接続を選択、または新しい接続を作成します。
- 「Connection Name」を設定します。
- 「Data Service URL」をOData API のBase URL に設定します。(通常はCONNECT_SERVER_URL/api.rsc)
- 「Authentication Type」をBasic Authentication に設定します。
- 「User Name」を構成済みのAPI Server ユーザーに設定します。
- 「Password」を上記のユーザーの認証トークンに設定します。
- 「Create a new query」を選択して「Next」をクリックします。
- クエリに名前を付け、OData エンドポイント(redshiftdb_Orders など)を選択して「Next」をクリックします。
- 使用したいカラムを「Selected Data」ワークスペースにドラッグし、「Create」をクリックします。
- この時点でドラフトデータソースが作成されるため、ドラフトをクリックしてモデルを完成させます。
- 計算ディメンション、場所ディメンションの作成、データソースの結合などの変換を実行し、「Create Model」をクリックします。
- モデルに名前を付け、「OK」をクリックします。
SAP Analytics Cloud でダッシュボードを構築する
モデルが作成されたら、Redshift のデータを使用してSAP Analytics Cloud でダッシュボードを作成できるようになります。
- メニューから「Create」->「Story」とクリックします。
- SAP Analytics Template をクリックします。(この記事では、「Dashboard」テンプレートを使用します。)
- レイアウトを選択して「Apply」をクリックします。
- 「More」メニューから挿入するビジュアライゼーション(チャート)を選択します。
- ビジュアライズするモデルを選択します。
- 構造と必要なメジャー、ディメンションを選択します。
- ストーリーを保存します。
おわりに
これで、リアルタイムRedshift のデータから簡単で強力なダッシュボードが作成できました。Redshift(および250 以外のデータソース)のOData フィードを作成する方法の詳細については、API Server ページにアクセスしてください。無料トライアルにサインアップして、SAP Analytics Cloud でリアルタイムRedshift のデータの操作を開始してください。