注:本記事は(2021年7月15日)に公開された(Schema Detection Public Preview)を翻訳して公開したものです。

データパイプラインは、モダンアナリティクスにとっての血液のようなもので、より迅速でデータドリブンな意思決定のための主要な推進要素です。Snowflakeの仕事は、組織をデータドリブン型にして競争優位性を獲得できるようにすることであり、データの取り込みはパズルの重要なピースとなります。

この数年間というもの、半構造化データが採用される事例が増え続けています。半構造化データは、異なる属性のネスト化された情報が任意のレベルに階層化されているという柔軟なスキーマを持ちます。Snowflakeの非常に魅力的な機能の1つは、ファイルデータをSnowflakeリレーショナルテーブルにコピーする、またはSnowflake外部テーブルを使用してファイルデータをクエリすることで、半構造化データにネイティブ対応しているところです。両オプションとも最終的には、ファイルに含まれているデータセットのスキーマを、スキーマオンライトまたはスキーマオンリードを通じて提供する必要があります。私たちはSnowflakeのスキーマオンリード機能を改良し、さまざまなソースからのデータを、レポートツールや従来のアプリケーションが求めるスキーマ化された最終形式で迅速にSnowflakeに取り込めるようにしました。スキーマオンライトは、カラム定義を解決するための外部ツールまたは反復的な手動でのスキーマ解決を必要とせずに完了されることになります。ありがたいことに本日は、Parquet、Avro、ORC半構造化ファイル形式に対応したスキーマ検出機能のパブリックプレビュー版について発表させていただく運びとなりました。

Snowflakeはスキーマ検出機能により、レビューのためにステージングされたファイルのスキーマを自動的に判別して返します。それを簡単にレビューし、テーブル、外部テーブル、またはビューの作成に使用できるよう、SnowflakeにDDLを生成させることも可能です。さらに、検出されたスキーマを使用してSnowflakeにテーブルを自動作成させることもできるという点も重要です。これを可能にしているのが、スキーマ検出機能のパブリックプレビュー版で当社が追加した3つの新機能です。

  1. INFER_SCHEMA ステージングされた一連のファイルから、スキーマを取得して返します。
  2. GENERATE_COLUMN_DESCRIPTION テーブル、外部テーブル、またはビューの作成に必要なカラムのリストを返します。オブジェクトの作成を完了する前に、カラムまたはデータ型の修正ができます。
  3. CREATE TABLE … USING TEMPLATE SnowflakeのCREATE TABLE機能で展開し、ステージファイルから検出されたスキーマを使用して、追加入力なしで自動的に構造化テーブルを作成します。

図1:サンプルParquetファイルスキーマ

図 2:検出されたスキーマがSnowflakeテーブルに変換

Snowflakeはスキーマオンリードとスキーマオンライトの両方をサポートしていますが、スキーマ検出機能により、Snowflakeのスキーマオンライト機能が強化され、データ取り込みの初めに要する労力が大幅に低減されます。この機能のメリットは次のとおりです。

  • 大量のマルチカラムファイルのスキーマを手動で処理する労力を軽減する
  • ロードプロセスを開始する前にファイルについての詳細をネイティブに把握できる
  • 視覚化またはレガシーアプリケーションで必要とされるスキーマ化されたテーブルに向けた複数ソースからの新規データ取り込みを迅速化する

今すぐスキーマ検出を試用する

スキーマ検出はSnowflakeにとって、スキーマオンライトのエクスペリエンス向上に向けた投資の手始めにすぎません。ソースファイルスキーマの変更や、CSVやJSONデータといった他のデータ形式への対応も、それぞれ当社のスキーマの進化や推論機能に盛り込まれる予定です。詳しくは、Snowflake Summit 2021で披露されたデモセッションをご覧ください。

スキーマ検出機能を今すぐお試しいただき、データ読み込みプロセスを合理化して、その機能または当社のロードバックについてのフィードバックをお寄せください。機能の使用を開始するには、当社のドキュメンテーションを参照してください。一般的に、プレビュー版は本稼働利用に対応していませんが、正規版リリースが利用可能となった時に本稼働で利用するための準備として最適です。

将来の見通しに関する記述

この投稿には、明示・暗示を問わず、Snowflakeの(i)ビジネス戦略、(ii)製品、サービス、技術(開発中のものを含む)(iii)市場の成長、トレンド、競合に関する考察(iv)当社の製品と第三者プラットフォームとの統合、相互運用性、利用可能性などに関する将来の見通しに関する記述が含まれています。これらの将来の見通しに関する記述は、Snowflakeが証券取引委員会に提出した2021年4月30を末日とする四半期報告書(フォーム10-Q)内の表題「Risk Factors(リスク要素)」以下の記述やその他の記述を含め、若干のリスク、不確かさ、および推測を伴います。これらのリスク、不確かさ、および推測を踏まえると、実際の結果はこれらの将来の見通しに関する記述で予想または暗示された事柄と大きくかつ不利な形で異なる場合があります。よって、これから起こることの予測として、将来の見通しに関する記述に依存することはおやめください。

© 2021 Snowflake Inc.  All rights reserved.  Snowflake、Snowflakeのロゴ、およびその他ここに記載されるすべてのSnowflake製品、機能、サービス名は、米国およびその他の国々におけるSnowflake Inc.の登録商標または商標です。本書で言及または使用されているその他のブランド名やロゴはすべて識別のみを目的としており、それぞれの保有者の商標である可能性があります。Snowflakeとかかる保有者との間には、提携、スポンサー、または推奨関係があるとは限りません。