はじめに

本記事では、Flex Tableの概要についてご紹介します。

Flex Tableとは

Flex Tableは、JSON形式などの半構造化データのログやセンサーデータ、ソーシャルデータをそのまま格納でき、通常のSELECT文でそのまま検索することが可能なテーブルです。
テーブル定義では予めカラムを定義する必要がないため、複雑なテーブル設計や事前のデータ変換処理も必要としません。

以下の図は、Flex Tableの定義と半構造化データ(JSON形式)の取り込み、SELECT文によるデータ参照のイメージを表しています。
また、Flex Tableは通常のテーブルほどの高速な検索は行えませんが、ワンステップで通常のテーブルへ変換できるため、柔軟にユーザの性能要件に対応することが可能です。



Flex Tableが解決する課題

半構造化データの取り込みに苦労している

半構造化データを通常のテーブルに取り込むためには、事前にETLツールなどで変換する必要があり、それに伴うバッチ処理の開発/保守が必要となる。



異なるフォーマットのデータを1つのテーブルで容易に管理できない

異なる設備やセンサーから出力される複数のフォーマット毎にテーブルを用意して格納する必要がある。また、それらのデータを横断的に分析する際には、複雑なクエリとなり、処理時間も掛かってしまう。



鮮度の高いデータ参照ができない

構造化データへの変換やデータ転送のための時間を必要とするため、ニアリアルタイムなデータ参照要件への対応が難しい。




※フレックステーブルは通常のテーブルと比較して課金設定を低く抑えています。
 ライセンスの詳細に関心がある方は、本ぺージの一番下にあるお問い合わせ先へお問い合わせください。

参考情報

Using Flex Tables
https://www.vertica.com/docs/9.2.x/HTML/Content/Authoring/FlexTables/FlexTableHandbook.htm

JSONデータをVerticaのテーブルにロードする方法(Flex Table 基本編)
http://vertica-tech.ashisuto.co.jp/flex_table_data_road/

Flex Table 8.1新機能 CREATE TABLE AS SELECTのサポート
http://vertica-tech.ashisuto.co.jp/flex_table_create_as_select/

ネストされたデータを持つJSONファイルをFlex Tableへロードする
http://vertica-tech.ashisuto.co.jp/flex_table_nested/

検証バージョンについて

この記事の内容はVertica 9.2で確認しています。

更新履歴

2019/10/17 本記事を公開