龍光9月に入り肌寒くなってきましたね。この夏に久しぶりにサッカーをしてバテバテだった製品開発部の大澤です。選手のプレイゾーンやホットゾーンをよく見かけることがあります。※あるプレーヤのホットゾーンです。左サイドで攻撃的なプレーをしてますね!これは選手が試合中フィールドのどこで最もプレーしているかを色の濃さで表し濃いと多くその場所でプレーし、薄いとそこではあまりプレーしないというデータを可視化し戦略に活かしているものです。3つのデータの取り方があるようです。1.人間の目で確認しデータを打ち込みデータ化する。(大変そう!!)2.専用のカメラで選手の動きを分析しデータ化する。(カメラが何台もあるみたいです!)3.選手に小さなセンサーチップを装着してデータ化する。(チップはレガースや首のあたりにいれるようです。サーバにデータが送られる!IoT!)上記のような方法で取得したデータをデータベースへ保存後BIツールでデータを分析し、可視化しているようです。上記ケースのように3通りのデータの取り方で行っていてさらに保存されたデータのフォーマットや保存先が違う場合に同じグラフ上で可視化をしたい場合、ひと手間必要です。業務よりですと、各支店のデータベースやExcelファイルやCSVファイルを同じグラフでみたい!でもデータが細かいとこでバラバラ。このままだとグラフの精度が落ちてしまう!!そんなときEAIツールを使用して、コーディングなしでそれぞれの保存先からデータを吸い上げ、コーディングなしでフォーマットを整えてひとつのデータベースにまとめることできるのはEAIツールの強みです。Redshiftアダプタを紹介します。RedshiftへのCOPYコマンドを自由に実行することが可能です。自由って具体的にどういうコマンド!?ということで今回はデータロード時に基本の構文とよく使うオプションをご紹介します。基本的な構文は以下になります。S3のCSVファイルをRedshiftにCOPYを行なうコマンドとなります。'aws_access_key_id=XXX;aws_secret_access_key=YYY'CSV;■行ごとに解説します。COPYとその後ろに格納するテーブル名を指定します。行では対象のデータソースを指定します。例ではS3のCSVファイルを指定しています。データソースのCSVファイルの順序は指定したテーブルの定義と列を合わせる必要があります。後はオプションを指定します。オプションパラメータの中で必須なCREDENTIALSを指定します。FROMで指定したデータソースを読み取るためのクレデンシャル情報を入力します。データソースがCSVファイルのため、CSVオプションを指定することでCSV形式で読み取ります。記述例MANIFESTFROMにマニフェストファイルを指定します。データファイルやソースを直接指定するとは別にマニフェストファイルを指定し、マニフェストファイルに記載されている複数のデータソースを指定することが可能です。[{"url":"s3://bucket-usa/datas/data.1","mandatory":true},{"url":"s3://bucket-japan/datas/data.1","mandatory":true},{"url":"s3://bucket-japan/datas/data.2","mandatory":false}]}JSON形式でデータソースのURLを複数指定します。データソースが見つからない場合処理を終了させたい場合オプションのmandatoryフラグをtrueに指定します。デフォルトはfalseです。'aws_access_key_id=XXX;aws_secret_access_key=YYY'MANIFEST;JSONデータソースにJSONファイルの場合指定します。JSONPathファイルを指定します。これはテーブルとデータソースの紐付け定義ファイルとなります。's3://aws-bucket/mapping/jasonpath.json';FIXEDWIDTHデータソースが固定長ファイルの場合の固定長の定義を指定します。'id:3,name:25,city:12,state:2,seats:6';DELIMITERデータソースのデリミタ文字(区切り文字)を指定します。データソースがRedshiftと別のリージョンにある場合リージョンを指定します。'us-east-1';ENCRYPTEDデータソースが暗号化されている場合に指定します。暗号化のマスターキーはクレデンシャルで指定します。'aws_access_key_id=XXX;aws_secret_access_key=YYY;master_symmetric_key=ZZZ'ENCRYPTED;ENCODINGデータソースのエンコードを指定します。デフォルトはUTF-8です。LZOPデータソースがgzipファイルまたはlzopファイルをロード時に解凍します。'aws_access_key_id=XXX;aws_secret_access_key=YYY'GZIP;MAXERRORデータソースからロード時エラーとなる件数を指定します。エラーデータがあっても指定した数よりエラーレコード数が少ない場合は正常終了となります。※記述例の場合は9件以下の場合は正常終了となります。型データのフォーマットを指定します。指定された行数をヘッダーとして扱い、読み取り対象外とします。データソースの空行は読み取りません。データソースのロードは行わずに、データソースの検証を行ないます。※データを検証したい場合にMAXERRORオプションと組み合わせて使うことで効率よくデータチェックが行えます。すべてデータが正常になってからロードが行うことができます。自動圧縮エンコードを自動的に適用するかどうかを制御します。デフォルトはONです。ON;STATUPDATEテーブルの統計を最新のものにします。データロードごとに統計を最新のものにすることが推奨されています。専用のテーブルにエラーが出力されていないかいちいち確認しないといけません。Redshiftアダプタなら処理後エラーデータを取得しますので、エラー時の対応も簡潔に作成可能です。エラーデータがある場合メールにて原因をお知らせまとめそれぞれの拠点にありフォーマットが整っていないひと手間必要なデータをレポーティングしたい場合SkyOnDemandで多方向(接続先)のデータ、多フォーマットなデータを収集、フォーマットを整える機能と今回ご紹介したCOPYコマンドを組み合わせてつかうことでレポーティング業務が大幅に捗ることが見込めます。Analytics」が話題ですよね!日本での正式サポートも待ち遠しいですね。~Salesforceへ大容量のファイルをアップロード関連するキーワードSkyOnDemandTerraSkyBaseについてTerraSkyBaseはクラウドサービスを手掛ける株式会社テラスカイのコンテンツプラットフォームです。