抽出ファイル更新のタスク実行を実践してみるAWS特集Tableau『カスタマーストーリー』を支えるツール特集RDSRedshift2015年08月19日しんや(674)12この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。Serverには『抽出の更新』というタスクをスケジュール実行する機能があります。Serverにアップロード(Tableau用語では"パブリッシュ(Publish)"と呼びます)し、所定の設定を行う事でデータの中身のアップデートを適宜行なってくれるという代物です。抽出更新タスクの自動化この機能ではリアルタイム接続せずに済ませる事が出来、また抽出ファイル自体リアルタイム接続で取得するデータソースよりも容量が少なく済みますので何かと便利なのですが、手順については些か面倒というか分かりづらい部分もあったりします。そこで当エントリでは『抽出ファイルの更新』を実際に行なってみて、実施には何が必要なのか、どういう手順で進めれば実施出来るのかという点について解説してみたいと思います。抽出ファイル更新スケジュールの実行確認まとめ事前準備まずは『抽出ファイルの更新』を行うにあたっての環境・データ等を整えたいと思います。Serverとデータソースの準備です。Redshiftを使用する事としますが、基本的にはどのデータソースでも仕組みについては変わりありません。Serverを用意します。既存の環境をお持ちであればそれを用いる形で問題ありません。Serverをインストールしておいてください。EC2環境に於ける環境導入手順については以下エントリで解説していますので宜しければご参照ください。Redshiftのクラスタを用います。こちらも既存環境がある場合、その環境を用いる形で差し支えありません。無い場合は別途環境を構築しておいてください。クラスタ環境が準備出来たら、今回検証用で用いるデータを用意します。Tableau製品デモ実演時の御用達(?)サンプルデータ、Superstoreのデータをここでも使いたいと思います。Community今回検証用のテーブルを作成し、データを投入。8369サンプルで用いたデータについては2012年までしか無かったので、2013年/14年のデータを既存データから作成してINSERTしてみました。4209ここまでのデータ件数を確認してみます。2014年までのデータがある、という体(てい)の準備は整いました。スケジュールの作成ではここから本題に取り掛かりたいと思います。タスク実践の実行サイクルを決める『スケジュール』の作成です。管理者でログインし、[スケジュール]タブからスケジュール一覧に遷移、[新しいスケジュール]をクリック。タスク実行に関するスケジュールの実行サイクルに関する要素の作成を行います。ここでは検証用に『毎時00分、1時間おきに実行』するスケジュールを作ってみました。スケジュール作成完了。一覧に要素が追加されました。次はデータソースの作成及び抽出ファイルの作成を行います。Redshiftでデータソースを作成します。Desktopを起動後、対象データソースの種類を選択し、任意の接続情報を用いて接続。Desktop編集画面に遷移したらデータソースを右クリックし、[データの抽出]を選択。抽出ファイル作成に関する情報の設定を行います。ここでは増分更新を選択、受注日(order_date)を増分更新の際の判断基準として設定しました。この流れで抽出ファイルを任意の名前で保存します。Serverにパブリッシュ(アップロード)します。所定のURL、認証情報を用いてサインイン。サインイン後、データソース(抽出ファイル)を右クリックし、[サーバーにパブリッシュ]を選択します。パブリッシュの際の設定を行います。ここでのポイントは『抽出の更新』の部分。Server上で作成したスケジュールで指定しています。この部分の設定で、任意の抽出ファイルの更新を任意の実行サイクルで実行する、という紐付けが為される訳ですね。併せて完全更新の設定、また認証情報の埋め込みも行なっています。Serverの[データソース]欄に、パブリッシュしたデータソースを確認する事が出来ます。今回は実際に処理は行いませんが、データソースを選択した状態で[アクション]→[抽出の更新]を選択してみると、このような形でデータソースに実行スケジュールが紐付けられている事を確認する事が出来ます。Redshiftのデータソースから作った抽出ファイルが乗っかりました。このデータソースを元にしたTableauワークブックを作ってみたいと思います。Server』を選択。Serverのサインインを求められるので従います。サインインが完了するとサーバ内に展開されているデータソースの一覧が表示されます。先程パブリッシュしたデータソースを選択し、ワークシートに移動。Serverにパブリッシュした抽出ファイルを使ってビューやダッシュボードを作成する事が出来ます。試しに年毎の売り上げ情報を棒グラフで表示ししてみました。この時点では2014年までのデータが存在しています。Serverにパブリッシュします。パブリッシュ時の内容は特に設定変更せず、そのままです。Redshiftデータの追加ここからはデータ追記を行います。抽出ファイルの更新スケジュール実施前であればRedshiftのデータを追記しても抽出ファイルに影響は無い事を確認してみます。追加するデータは以下の内容。2015/01/01付のデータを追加するイメージです。rows)#データ投入実施。計5件のデータが追加されました。Server上でもコンテンツを確認してみます。更新ボタンを押下しても、抽出ファイルの中身が変わって居ないのでデータはそのままです。抽出ファイル更新スケジュールの実行確認スケジュールでは毎時00分の1時間毎と設定していましたので、しばし待機。Serverのスケジュール状況を確認します。実施がされているようです。タスクの詳細内容を確認してみます。この情報については、管理者であれば『バックグラウンドタスク』としてその内容を確認する事が可能です。以下の様な内容で抽出ファイルの更新が実行され、成功している事を確認出来ました。併せて、ワークブックの内容も確認してみます。データ件数が少ないので若干見づらくはありますが、ちゃんと2015年のデータが抽出ファイルに追記され、ワークブックの内容にも反映されている事が確認出来ました。Serverの『スケジュール』機能を活用したTableau抽出ファイルの更新実践のご紹介でした。大人数のコンテンツアクセスがあるような場合だと、このような形で抽出ファイルを活用する方法はとても有用な手段となります。状況に応じてこの辺りは活用して行きたいところですね。こちらからは以上です。6,748,245まとめ職人→出張ブロガー(初代)→AWSエンジニア→ビッグデータ系エンジニアDevelopers.IO全投稿のうち1,000本を書いています。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。カフェ店長のオカノです。使いたいときの注意点を書きました。本が出ていたので読んでみたところよかったので紹介させていただきます。EC2)環境において、不要な踏み台サーバをなくすことができる便利なアップデートです。臼田佳祐295ワークフロー自動化OSSのn8nをAWS環境で建てて検証してみました。非常に期待できるサービスです。Fargateの勉強をしています。使ってみたい方は参考にしてください。洋介252SnowflakeがAWSの東京リージョン上で稼働するようになりました。データを日本に置けます。芳賀健232こんにちは!猫様の忠実なるしもべ、芳賀健です。Tokyoで開催されました。カフェ店長のオカノです。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。