グーグルのクラウドを支えるテクノロジー > 第36回 社内横断データセット検索システム「Goods」(パート2)
私が編集支援しているCTC教育サービスのコラム「グーグルのクラウドを支えるテクノロジー > 第36回 社内横断データセット検索システム「Goods」(パート2) 」が公開されました。
興味がある方はご覧ください。
###
はじめに
前回に引き続き、2016年に公開された論文「Goods: Organizing Google's Datasets」をもとにして、Google社内のデータストアを横断的に検索可能にするツール「Goods(Google Dataset Search)」を紹介します。
前回説明したように、すべてのデータセットからカタログ情報を抽出するのは、データ量の観点から現実的ではありません。そこで、類似のデータセットをクラスタリングした上で、各クラスターからのサンプリングにより、カタログ情報の抽出を行います。また、カタログ情報の中には、データセットのスキーマやデータセット間の依存関係など、データそのものだけを見ても判断が付かない情報があります。今回は、データセットのクラスタリングの手法、および、カタログ情報の生成方法について解説を進めます。
データセットのクラスタリング
データセットをクラスタリングする目的は、カタログ情報を抽出する対象となるデータセット、すなわち、実際にデータの中身を分析するデータセットの数を削減することです。したがって、ここでは、データの詳細に踏み込まずに高速にクラスタリングを行う手法が必要となります。そこで、Goodsの開発チームが着目したのは、ファイルのパス名でした。たとえば、GFS(Google File System)上のあるデータセットには、"/dataset/2015-10-10/daily_scan" というファイルパスが割り当てられていたとします。まず、「daily_scan」というキーワードから、日次のバッチ処理に関連したファイルだと予想が付きます。さらに、「年・月・日」というタイムスタンプが含まれており、タイムスタンプの部分だけが異なるデータセットは、同一のバッチジョブからの出力と期待することができます。したがって、"/dataset/2015-*-*/daily_scan" というワイルドカードを適用すれば、2015年のすべての出力をまとめることができます。
この続きは以下をご覧ください
https://www.school.ctc-g.co.jp/columns/nakai2/nakai236.html