こんにちは、小林寛和(@hiro-koba)と申します。私はデータエンジニアのための勉強会「Data Engineering Study」の共同主催者をやったり、ETL & ワークフローサービス「trocco®︎(トロッコ)」を運営する株式会社primeNumberの取締役CPOを務めているデータエンジニアです。
データエンジニアの皆さんが普段利用されているDWH/ETL/BIツールに関する最新アップデートや、界隈の最新トピックをまとめて配信しております。
お忙しい方や、サクッと最新情報をキャッチアップしたい方向けに、主要なニュースをピックアップして独自にまとめています。
毎月更新でニュースをお届けしていますので、ニュースの新着メール通知をご希望の方はこちらのフォームよりご登録ください。
Google BigQueryのニュースまとめ
BigQuery パートナーセンター が開設しました (Preview)
BigQuery をより活用するためのパートナーツールを紹介するBigQuery パートナーセンターが誕生しました。
その他GAとなった機能
- 容量コミットメントやReservationsを変更する ALTER CAPACITY SET OPTIONS 文と ALTER RESERVATION SET OPTIONS 文 が利用可能になりました
- 加えて、CREATE CAPACITY, CREATE RESERVATION, CREATE ASSIGNMENT 文で OPTIONS を渡せるようになりました
- BigQuery セッションで以下の機能が利用可能になりました
- 一時的な関数 (temporary functions) がセッション終了まで維持されるようになりました
- “TEMP” を含むクエリに対しても、”OR REPLACE” や ”IF NOT EXISTS” を含められるようになりました
- データセットにタグ付けできる機能が利用可能になりました
- タグ付けにより、IAMでの柔軟な権限管理が行えるようになります
- BigQuery Omni で Azure 連携 ID を利用した Azure Blob Storage へのアクセスが利用可能になりました
- Azure Workload Identity 連携 を利用して、Google Cloud 側に認証情報を保存することなく、データにアクセスができるようです
Amazon Redshiftのニュースまとめ
今月の大きなアップデートはありませんでした。
Amazon Athenaのニュースまとめ
Google Cloud Storageへのクエリがサポートされました
Amazon AthenaからGoogle Cloud Storageのデータに対してクエリを実行することができるようになりました。
詳しい設定方法などはを公式ドキュメントご覧ください。
Snowflakeのニュースまとめ
新しいSQL関数 MIN_BY / MAX_BY
MIN_BY / MAX_BY
- 指定された列の最小値または最大値を含む行を検索し、その行にある別の列の値を返します。
より詳しく知りたい方は以下の参考リンクも御覧ください。
- 公式リリースノート
- リファレンス
Amazon S3 互換ストレージの使用(プレビュー)
Amazon S3 API 準拠したオンプレミスまたはプライベートクラウド内のソフトウェア
外部ステージおよび外部テーブルを作成することができるようになりました。
利用の際はSnowflakeサポートへの連絡が必要になります。
また、public test suiteというテスト環境も提供されており、事前に検証することもできるようです。
より詳しく知りたい方は以下の参考リンクも御覧ください。
- 公式リリースノート
- リファレンス
Python表形式ストアドプロシージャ(プレビュー)
Snowparkデータフレームを使用してPythonストアドプロシージャから表形式のデータを返すことができるようになりました。
例)従業員のテーブルを作成し、ストアドプロシージャを使用して、列が文字列と一致する行をフィルターする
- 従業員テーブルを作成する
CREATE OR REPLACE TABLE employees(id NUMBER, name VARCHAR, role VARCHAR); INSERT INTO employees (id, name, role) VALUES (1, 'Alice', 'op'), (2, 'Bob', 'dev'), (3, 'Cindy', 'dev');
- ストアドプロシージャを定義する
CREATE OR REPLACE PROCEDURE filterByRole(tableName VARCHAR, role VARCHAR) RETURNS TABLE(id NUMBER, name VARCHAR, role VARCHAR) LANGUAGE PYTHON RUNTIME_VERSION = '3.8' PACKAGES = ('snowflake-snowpark-python') HANDLER = 'filter_by_role' AS $$ from snowflake.snowpark.functions import col def filter_by_role(session, table_name, role): df = session.table(table_name) return df.filter(col("role") == role) $$;
- 実行例
CALL filterByRole('employees', 'dev'); >> +----+-------+------+ | ID | NAME | ROLE | +----+-------+------+ | 2 | Bob | dev | | 3 | Cindy | dev | +----+-------+------+
RETURNS TABLE(...)
の列型として、GEOGRAPHY型は指定できないようです。
より詳しく知りたい方は以下の参考リンクも御覧ください。
- 公式リリースノート
- リファレンス
メモ化可能な関数(Memoizable Functions)のサポート(プレビュー)
メモ化可能な関数(Memoizable Functions)は
ユーザー定義関数 (UDF) を呼び出した結果をキャッシュし、
後で出力が必要になったときにキャッシュされた結果を返します。
行アクセスポリシーやマスキングポリシー内で参照されるマッピングテーブルでの複数列のなど、
複雑なクエリなどでパフォーマンスを向上させることが期待できそうです。
より詳しく知りたい方は以下の参考リンクも御覧ください。
- 公式リリースノート
- リファレンス
新規ビューテーブル
Snowflakeアカウント情報の各種管理情報が取得できるビューが追加されました。
- OBJECT_DEPENDENCIES ビュー
- PASSWORD_POLICIES ビュー
- SESSION_POLICIES ビュー
より詳しく知りたい方は以下の参考リンクも御覧ください。
- 公式リリースノート
- リファレンス
Snowflakeスクリプト変数をストアドプロシージャからのスカラー戻り値に設定する
CALL ステートメントで新しい INTO句を用いて
Snowflakeスクリプト変数のストアドプロシージャからスカラー戻り値をキャプチャできます。
DECLARE ret1 NUMBER; BEGIN CALL my_procedure('Manitoba', 127.4) into :ret1; RETURN ret1; END;
より詳しく知りたい方は以下の参考リンクも御覧ください。
Snowsight ワークシートのバージョン履歴の保持
90日分のワークシートのバージョン履歴とその結果を保持するようになりました。
それ以降のデータは定期的に削除されます。
より詳しく知りたい方は以下の参考リンクも御覧ください。
GA(一般公開)となった機能リリース
- カラムリネージ(列の変更履歴)機能
- INSERT、MERGE、CTASなどのテーブルへの変更操作に対し
列単位での履歴情報が参照できるようになりました。 - 2022年10月にプレビューで発表されました。Data Engineering Newでの紹介記事はこちら
- INSERT、MERGE、CTASなどのテーブルへの変更操作に対し
Lookerのニュースまとめ
Looker 23.0 がリリースされました
埋め込みダッシュボードのテーマ設定
埋め込みダッシュボードのテーマ設定用のラボ機能が追加されました。
詳細は以下の公式ドキュメントをご確認ください。
埋め込みダッシュボードと Explore のテーマの作成と適用 | Looker | Google Cloud
BI Engine が最適化されました
Bi Engine が最適化され、BigQuery 接続を使用する LookML クエリのパフォーマンスが向上しました。この機能はクエリランタイムの変更のみでクエリ結果に影響はありません。
Looker Studio Connector が GA になりました
Looker Studio と接続し、Looker Studio のデータソースとして追加することで、Looker Studio 内で Looker Explore にアクセスできるようになります。
詳細は以下の公式ドキュメントをご確認ください。
Looker Studio に接続する | Google Cloud
Looker Studio(旧: Googleデータポータル)のニュースまとめ
BigQuery ジョブにラベルがつくようになりました
Looker Studio から発行された BigQuery ジョブに requestor:looker_studio
ラベルがつくようになりました。
Looker コネクタが GA になりました
Looker Studio レポートのデータソースとして、Looker Explore を追加できるようになりました。
詳細は以下の公式ドキュメントをご確認ください。
Looker Studio に接続する | Google Cloud
レポートエディター内の検索性が向上しました
データパネル内の検索において、コンポーネントを選択すると選択中のコンポーネント内のフィールドを検索し、なにも選択していない状態だと、レポートに含まれるデータソース内を検索するようになりました。
Cloud SQL for MySQL コネクタでプライベートIP接続をサポート
Cloud SQL for MySQL でプライベートIP構成を使用できるようになりました。
Looker Studio からプライベート接続でのクエリを許可するには、Cloud SQL for MySQL のインスタンス設定で有効化する必要があります。
詳細は以下の公式ドキュメントをご確認ください。[
インスタンスの作成 | Cloud SQL for MySQL | Google Cloud
dbtのニュースまとめ
dbt-core v1.4がリリースされました。
詳細はhttps://github.com/dbt-labs/dbt-core/releases/tag/v1.4.0をご覧ください。
dbt CloundのIDEが改善されました。
Syntax HighlightなどのIDE上での開発体験が向上されました。
詳細は公式のリリースノートをご覧ください
dbt Labsは今後数ヶ月に渡ってIDEの体験向上に注力していくようで、自動保存、個別ファイルのリバート機能、Linting/SQL Fluffを含める(研究開発)、などが予定されているようです。
ETLサービス「trocco(トロッコ)」のニュースまとめ
troccoの直近のアップデートをご紹介します。
データカタログ
Snowflake版データカタログが公開 🎉
- Snowflake版のデータカタログ機能が公開されました。
- Snowflakeアカウントに紐づくデータに対して、データカタログを作成できます。
- Snowflake版データカタログが対応する機能について、詳しくは各データストア対応機能一覧を参照ください。
ワークフロー定義
ワークフロー定義の複製が可能に 🎉
- ワークフロー定義が、詳細画面右上より複製できるようになりました。
ワークフロー定義の複製はさまざまな用途にお使いいただけます。
以下で、かんたんに運用例を紹介します。
- テスト環境の構築
- 本番運用しているワークフロー定義を複製し、一部分をテスト環境用に差し替えることで、素早くテスト環境を構築できます。
- テンプレートの運用
- あらかじめ、あるワークフロー定義をテンプレートとして用意します。テンプレートを複製することで、類似するワークフローを手軽に複数作成できます。
- また、複製機能を使うことでGoogle BigQueryデータチェックも、かんたんに再利用できるようになりました。
dbt連携
対応バージョンがv1.3にアップデート 🎉
- troccoが対応するdbtのバージョンが、v1.2からv1.3へアップデートされました。
- 新バージョンについて、詳しくはdbt-core v1.3.0を参照ください。
接続情報
PostgreSQL接続情報にて、JDBCドライバーのバージョンが選択可能に 🎉
- PostgreSQLサーバーに接続するJDBCドライバーのバージョンを選択できるようになりました。
- ご利用のPostgreSQLのバージョンに合わせて、ドライバーのバージョンを選択してください。
- PostgreSQL 8.2以上の場合:
JDBC Driver 42.5.1
- PostgreSQL 8.2未満の場合:
9.4 1205 JDBC 41
- PostgreSQL 8.2以上の場合:
転送設定
転送元Google Adsにて、取得できるリソースタイプが追加 🎉
- 取得できるリソースタイプ(レポート種別)として、以下が追加されました。
- ad_group_asset
- customer_asset
APIアップデート
転送元Facebook Ad Insights・転送先Facebook オフラインコンバージョン
- 上記に利用しているFacebook APIが、v14からv15へアップデートされました。
- 新バージョンについて、Meta for Developersのドキュメントを参照ください。
その他、以下のような改修などが加わっております。
- データカタログ – テーブル情報画面
- テーブル情報画面に、カラム参照一覧へのリンクが追加されました。
- リンクをクリックすると、該当テーブル内に定義されているカラム参照の一覧が表示されます。
その他、詳しいアップデートは以下リリースノートをご参照下さい。
https://documents.trocco.io/docs/release-note-2023-01
以上、Data Engineering News 2023年01月のアップデートまとめでした。
毎月更新でニュースをお届けしておりますので、ニュースの新着メール通知をご希望の方はこちらのフォームよりご登録ください。
こんなニュースを知りたい!というようなご意見・ご要望も著者Twitterアカウントまでお気軽にDM下さい!