新規S3データソースでマニュフェストファイルをアップロードして
指定S3にあるCSVをデータセットとして取り込んでいます。
上記のようにデータセットを呼び出すと
CSVごとに新しくS3データソースが作成され「既存のデータソース」が無限に増え続けるため
可能であればS3データソースを1つにまとめたいのですが、可能でしょうか。
イメージとしては、Athenaからワークグループごとの
データソースを呼び出すときのように、S3の場合はS3バケットごとに
1つのデータソースにまとめたいのですが、そのような機能はないでしょうか。
@disuisin さん、ご質問ありがとうございます。
S3データソースをバケット単位で一つにまとめたいとのことですが、各データソースで指定されているマニフェストファイルの内容は同一でしょうか?
マニフェストファイルの内容も同一の場合、データソースとしては差分がありませんので、貼付いただいたデータセット作成時の画面で「既存データソースから」配下にある既存のS3データソースを再利用することが可能です。
もしマニフェストファイルの内容が異なる場合、同じS3バケットでも取得するデータとしては異なりますので、データソースとしてはそれぞれ別に管理する形になります。
お答えになっておりますでしょうか?もしご質問の意図と異なるようでしたらご指摘ください。どうぞよろしくお願いいたします。
Hikaru
3
@disuisin さん、その後いかがでしょうか。もし追加のご質問などがあれば気軽に投稿ください。
ございませんようでしたら、上記の回答をSolutionとしてクローズさせていただきます。よろしくお願いいたします。
ご回答いただきありがとうございます。
S3データソースをバケット単位で一つにまとめたいとのことですが、各データソースで指定されているマニフェストファイルの内容は同一でしょうか?
各データソースで指定するマニフェストファイルの内容が異なるため、S3フォルダ内の複数のCSVファイルをそれぞれ別のデータセットとして呼び出すことを想定しています。
AthenaからQuick Sightへデータを呼び出す場合は、同じワークグループを設定していれば、同一のデータソースから複数のテーブル(データセット)を作成できました。
例:データソースA(Athena:ワークグループA)→ データセットa、データセットb、データセットc
データソースの管理を簡素化するため、S3のデータソースもAthenaと同様にまとめられないかと考えた次第です。
ご回答の通り、S3からマニフェストファイルでCSVを指定して呼び出す場合、マニフェストファイル(URI)ごとにデータソースを作成する必要があるとのことですが、
この件に関してもしなにか解決策がございましたらご教示いただけますと幸いです。
現時点で解決策がないようでしたら、本件はクローズとさせていただきます。
再度、ご確認よろしくお願いいたします。
@disuisin さん、お返事いただきありがとうございます。
Athenaのワークグループ自体はワークロード管理を目的とした定義体で、実際のデータモデルとは依存関係にないため同一のデータソースから異なるテーブルのデータセット群を作成することができます。一方、S3の場合はデータソース自体にデータの実体であるCSVファイルを指定しているため、CSVが異なる場合にはデータソースから分けていく必要があります。その意味では同じデータソースでも少し立ち位置が異なると言えるかもしれませんね。
なお、複数のCSVファイルでも同じデータ構造(カラム数、データ型)の場合にはマニフェストファイルで URIPrefixes を使った指定をすることで複数ファイルを一つのデータセットに取り込むことはできるのですが(こちら)、今回はデータ構造そのものが異なる複数のCSVファイルだと思いますので、その場合は特段のワークアラウンドはございません。
以上、よろしくお願いします。