目次
はじめに
本記事では、外部テーブル(External Table)の概要についてご紹介します。外部テーブルとは
外部テーブルは、Hadoop HDFSやAWS S3、NFSマウントされた外部ストレージ上のデータに対して、Verticaにデータを取り込まずに、SQLで直接参照できるテーブルです。Verticaに格納される通常のテーブルとは異なり、更新処理(INSERT/UPDATE/DELETE)や通常のテーブルほどの高速な検索は行えませんが、データレイク上のデータもそのままVerticaで活用できるなど、様々な課題の解決に役立ちます。
外部テーブルが解決する課題
データレイク上のデータ分析処理が遅い
・Hadoopのエコシステム(Hive、Drill等)では、多くの分析時間を必要とし、複雑なSQLも処理できない。・AWS S3上の外部データをVerticaで高速に分析したい。
Verticaで腹持ちせずに利用したい
・Verticaに取り込んで頻繁に分析するHOTデータではないが、外部のCOLDデータもVerticaで手軽に分析したい。・機械学習の学習データをVerticaに取り込むことなく、予測モデルを作成する時だけ参照したい。
・データを二重持ちしないことで、常に最新のデータをストリーミング処理を行わずに参照したい。
すべてのデータをVerticaに移行できない
・Verticaは格納データのサイズに対して課金されるので、全てのデータをVerticaに移行して利用するにはコスト的に厳しい。・使用頻度の低いデータは外出ししているが、Verticaで分析する際のデータの取り込みや利用後の削除に時間がかかっている。
※ParquetファイルまたはORCファイルを外部テーブルとして参照する場合、通常ライセンスと比較して安価な専用のライセンスがございます。ライセンスの詳細に関心がある方は、本ぺージの一番下にあるお問い合わせ先へお問い合わせください。
参考情報
Working with External Datahttps://www.vertica.com/docs/9.2.x/HTML/Content/Authoring/AdministratorsGuide/Tables/ExternalTables/Intro.htm
CSVファイルを外部テーブルとして利用する方法
http://vertica-tech.ashisuto.co.jp/external-table-on-vertica/
外部テーブル用のCSVファイルを配置する場所
http://vertica-tech.ashisuto.co.jp/place_for_csv_file_as_external_table/
S3のデータをVerticaにロードする/外部テーブルを使用してS3内のデータファイルを検索する
http://vertica-tech.ashisuto.co.jp/copy_directly_s3/
テーブルデータをParquetファイルとして出力する方法
http://vertica-tech.ashisuto.co.jp/export_to_paquet/
Management Consoleで外部テーブルの利用状況を確認する方法(9.1新機能)
http://vertica-tech.ashisuto.co.jp/monitor_external_data/
検証バージョンについて
この記事の内容はVertica 9.2で確認しています。更新履歴
2019/9/12 本記事を公開- 投稿タグ
- external table, 外部テーブル