🪽

Sigma: Write-back(書き戻し)を使った機能:Input tablesの紹介

に公開

AIと連携し、Excel感覚で操作できるクラウドBIサービス、Sigma(Sigma Computing)。

https://zenn.dev/truestar/articles/d845f87b036153

Sigmaには『Write-back(書き戻し)』という機能・特徴があるということはWrite-back(書き戻し)の機能概要を紹介するエントリで言及しましたが、当エントリではその中の機能の1つである『Input tables』についてその概要を紹介したいと思います。

https://help.sigmacomputing.com/docs/intro-to-input-tables

はじめに

Input tablesは、分析に人間の知性を取り入れる機会を提供します。自動化されたソースにのみ依存するのではなく、ユーザーがデータポイントを直接分析に入力できるようになります。

Input tablesは、基本的なデータ入力に手動データ入力を使用できるようにし、ウェアハウス外のデータをSigma分析およびwhat-if分析に統合するワークブックデータ要素です。

この機能を使用すると、分析に新しいデータポイントを統合し、データプラットフォームから既存のデータを活用して、ソースデータを上書きすることなく、迅速なプロトタイピング、高度なモデリング、予測、仮定分析などを行うことができます。

Input tablesはテーブル、ピボットテーブル、および可視化のソースとして使用するか、ルックアップやジョインを使用してデータを組み込むことができます。また、Input tables用のウェアハウスビューを作成すると、手動で入力したデータを広範なデータエコシステム全体で再利用できます。

このエントリでは、入力テーブルの基本概念(機能、種類、および列)を紹介し、Sigmaがデータをどのように処理するかを説明します。

Input tablesの機能

Input tablesを使用すると、以下のようなことが出来るようになります。

  • 新しい行を追加(空のテーブルとCSV入力テーブルのみ)
  • 新しい列を追加(データ入力、計算、行編集履歴、システム列を含む)
  • CSV データのアップロードと編集(最大 200 MB、UTF-8 のみ)
  • キーボード入力による値の入力
  • クリップボードから一度に最大 50,000 個のセル(2,000 行、25 列)を貼り付ける
  • データ入力権限を設定
  • データ検証を構成
  • 編集を防ぐために列を保護

これら機能の使い方についての詳細は下記ドキュメントで参照可能です。

Input tablesの種類

Sigmaでは、以下3種類のInput tables(の機能)を提供しています。

  • Empty input tables
  • CSV input tables
  • Linked input tables

Empty input tables

Empty input tablesは、既存のデータとは独立して単独のテーブルとしてデータ入力に対応する空白のテーブルです。セル単位でデータを編集したり、編集可能な行や列を追加したりして、ご要望に応じてテーブルを自由に構築できます。

https://www.youtube.com/watch?v=wL9buHs5QHI

CSV input tables

Input tablesは独立したテーブルでのデータ入力にも対応しています、ただし、アップロードしたCSVデータ(最大200MB、UTF-8形式のみ) でテーブルを事前に埋めることも可能です。この機能はCSV input tablesとして提供されています。

CSV input tablesではアップロードしたデータをセル単位で編集したり、他の編集可能な行や列を追加したりして、お好みの形式でテーブルを構築できます。

Linked input tables

Linked input tablesは、同じワークブック内の他の要素から既存のデータと並行してデータを入力する機能をサポートします。

https://www.youtube.com/watch?v=Qekossp-z5M

子要素として、リンクされた入力テーブルには、親要素内のデータに参照する1つ以上のリンクされた列が含まれます。これには、テーブルの粒度を定義する行識別子を含むプライマリキー列が含まれます。その後、親要素から取得したリンクされたデータを補完するために、他の列を追加できます。

入力テーブルの行と親要素のソースデータ間のデータ関係を維持するため、プライマリキー列は静的値を参照する必要があります。その他のリンクされた列は、ソースからのライブデータを反映するために、入力テーブルで継続的に更新される可変データを参照できます。

Input tablesの「列」の種類

Input tablesでは以下の「列」の種類をサポートしています。

タイプ 説明 利用可能な列(のタイプ)
データ入力列
(Data entry column)
個々のセルレベルでの直接的なユーザー入力に対応 - Text
- Number
- Date
- Checkbox
- Multi-select
計算列
(Computed Column)
ユーザー定義の式またはルックアップに
基づいて値を生成
- Calculation
- Via lookup
行編集履歴列
(Row edit history column)
行レベルの編集に関連する
システム生成メタデータを表示
- Last updated at
- Last updated by
- Created at
- Created by
システム列
(System column)
テーブルコンポーネントに関連する
システム生成メタデータを表示
- Row ID
※Empty input tables,
CSV input tablesのみ対応

Input tablesのデータガバナンス

Input tableの機能はSigmaのデータガバナンス機能(データ検証とデータ入力権限)により、データの整合性を維持し、入力テーブルのセキュリティを強化できます。

また、システム生成列(行編集履歴と行ID)を追加することで、監査やその他のデータ管理目的で入力テーブルのメタデータを表示することもできます。

詳細については、以下のドキュメントが参考になります。

Input tablesのデータはどのように処理されるのか

Sigmaでは、データのアドホックな性質のため、入力テーブルを独自の方法で処理します。

Input tablesのデータがどのように格納され、取得され、削除されるかを用途ごとに説明します。

ストレージ(Storage)

Sigmaは、データプラットフォーム内の指定された書き込み戻しスキーマ内のテーブルに、入力テーブルのデータを書き込みます。

この宛先スキーマは、接続の詳細(Admin > Connection)で指定され、Sigmaが上書きできない既存のソースデータとは別に、入力テーブルのデータを格納します。

Sigmaは、Input tablesのデータ格納用のテーブルを作成するだけでなく、ユーザー活動に関連する情報と結果としてのシステム操作を含む、Input tablesの変更を順序付けられた記録として格納する編集ログ(書き込み先ログまたはWALとも呼ばれる)を作成します。

Input tablesのデータを含むテーブルのオブジェクト名はSIGDSでプレフィックスが付与され、編集ログを含むテーブルはSIGDS_WALでプレフィックスが付与されます。

検索(Retrieval)

SigmaはInput tablesのデータをストレージ用に最適化された書き込みバックスキーマに書き込むため、結果のテーブルを直接クエリすることはできません。

Input tablesのデータに間接的ながらクエリに適した形式でアクセスするには、各Input tablesに対してウェアハウスビューを作成し、そのビューからSQLのFROM句を使用してデータを取得します。

除去(Removal)

Sigmaではワークブック内のInput tablesの要素を削除できますが、Sigmaはデータプラットフォームに書き込まれた対応するInput tablesのデータを削除しません。このデータを削除するには、データプラットフォーム内で直接削除する必要があります。

SigmaのInput tables活用シーン・ユースケース

phData社が展開している下記のブログ記事では、「組織内でデータに基づいた意思決定を促進するためのInput tables活用法20選」という見出しでInput tablesの使い所について紹介しています。実に多彩なシチュエーションで活用出来そうな感じですね。
https://www.phdata.io/blog/what-are-input-tables-in-sigma-computing/

- 1.市場調査のためにアンケートの回答を記録し、フィードバックを分析
- 2.顧客エンゲージメント指標を追跡して顧客エクスペリエンスを最適化
- 3.予算編成と将来の収益源の予測のために財務データを入力
- 4.給与管理のために従業員の勤務時間と出勤状況を追跡
- 5.サプライ チェーンの最適化のために小売店の在庫レベルを管理
- 6.顧客からのフィードバックを収集して評価し、製品設計を改善
- 7.ビジネスパフォーマンス分析のために販売データを保存および確認
- 8.ウェブサイトのトラフィックとユーザーの行動を追跡して、オンライン マーケティングの取り組みを強化
- 9.分析と将来の医療の進歩のために医療研究データを記録
- 10.物流の最適化のためにサプライ チェーン データを入力し、確認
- 11.ソーシャル メディア分析を保存および解釈して、ソーシャルメディアマーケティング戦略を強化
- 12.プロジェクトのタスクとタイムラインを管理して、プロジェクトが予定通りに完了することを保証
- 13.教育現場で学生のデータを記録し、解釈して学習成果を向上
- 14.研究分析および開発のための科学研究データの入力および分析 
- 15.顧客サポート チケットを追跡および確認して、顧客サポートサービスを改善
- 16.製造現場で製品の欠陥を記録および分析し、製品の品質を向上
- 17.人事管理のために、従業員の業績や給与などの人事データを入力し、確認
- 18.非営利団体の募金活動を追跡およびレビューして、寄付者への働きかけを最適化
- 19.エネルギー消費を最適化するために、公益事業のエネルギー使用データを保存および解釈
- 20.運送会社の物流データを入力・解釈し、配送ルートを最適化

まとめ

というわけで、SigmaのWrite-back(書き戻し)に関する機能『Input tables』に関する概要紹介でした。イメージはなんとなく出来ましたが、やっぱりこの手のものは実践してみるに限りますね。

ということで別エントリで実践結果をお届け出来ればと思います。

truestarテックブログ
設定によりコメント欄が無効化されています