こんにちは、小林寛和(@hiro-koba)と申します。私はデータエンジニアのための勉強会「Data Engineering Study」の共同主催者をやったり、ETL & ワークフローサービス「trocco®︎(トロッコ)」を運営する株式会社primeNumberの取締役CPOを務めているデータエンジニアです。

データエンジニアの皆さんが普段利用されているDWH/ETL/BIツールに関する最新アップデートや、界隈の最新トピックをまとめて配信しております。
お忙しい方や、サクッと最新情報をキャッチアップしたい方向けに、主要なニュースをピックアップして独自にまとめています。

毎月更新でニュースをお届けしていますので、ニュースの新着メール通知をご希望の方はこちらのフォームよりご登録ください。

Google BigQueryのニュースまとめ

BigQuery Migration Service で Redshift からの移行を事前評価できるようになりました(プレビュー)

BigQuery への移行後の費用感、最適化の提案などを Looker Studio で確認することができます。

詳しくは 移行評価 をご覧ください。

クエリの実行グラフを確認できるようになりました (プレビュー)

グラフィカルな実行グラフを元に、クエリの高速化のヒントを得られるようになりました。

実行グラフは、次の方法で確認することができます。

  1. BigQuery のWEBコンソールを開く
  2. [エディタ] で [個人履歴] または [プロジェクト履歴] をクリック
  3. ジョブのリストから、三点リーダーを選択し、[ジョブの詳細を表示]をクリック
  4. [実行グラフ(プレビュー)]をクリック

詳しくは クエリのパフォーマンスに関する分析情報を取得する をご覧ください。

オブジェクトテーブル (プレビュー)

Cloud Storageの非構造データの読み取り専用テーブルである「オブジェクトテーブル」が利用できるようになりました。
オブジェクトテーブルを利用することで、非構造データに対してBigQuery MLやユーザー定義関数で推論/分析を行うことが可能です。

詳しくは オブジェクト テーブルの概要 をご覧ください。
また、Google CloudのYouTubeチャンネルで簡単な紹介がされています。

メタデータキャッシュ (プレビュー)

BigLakeテーブルやオブジェクトテーブルでメタデータキャッシュが利用できるようになりました。

従来ではこれらのテーブルにクエリを発行する際、Cloud Storgaeのファイル一覧を読み取ってメタデータを作成する必要があり、ファイル数が多い場合にクエリの実行時間が増加してしまう問題がありました。メタデータキャッシュを有効化することでクエリのレイテンシを短縮することができます。

詳しくは パフォーマンス向上のためのメタデータ キャッシュ をご覧ください。

LOAD DATA 文を利用したAmazon S3 と Azure Blob Storageからのデータ転送機能 (GA)

LOAD DATA 文 を利用することで Amazon S3 と Azure Blob Storage から BigQuery にデータを転送できる機能が GA となり、以下の機能のサポートが含まれています。

  • Hive パーティション形式のファイルの転送
  • スキーマ定義無しで半構造化 JSON を JSON データ型として転送可能
  • カスタマー管理暗号化鍵を利用した転送先テーブルの暗号化
  • US と US-EAST-4 リージョンへの転送

転送元/先のリージョン制限やファイル形式の制限、オンデマンドスロットしか利用できないなどの制限が存在します。詳しくは下記のドキュメントをご覧ください。

その他GAとなった機能

  • エクスプローラでプロジェクト、データセット、テーブルに”スター”をつけられるようになりました
  • クラウドコンソール上の「データを追加する」から BigQuery と連携できるデータソースの検索と追加ができるようになりました
  • 過去のパフォーマンスメトリクスに基づくスロットの容量要件の見積もりができるようになりました
    • 予約済みスロットを購入する際の参考情報として利用できます

Amazon Redshiftのニュースまとめ

Amazon Aurora と Amazon Redshift のゼロ ETL がリリースされました

AWS re:Invent 2022でAmazon Aurora と Amazon Redshift のゼロ ETLが発表されました。
この機能によりAuroraのトランザクションデータをニアリアルタイムでRedshiftに統合できるようになります。そのため、AuroraとRedshiftでデータパイプラインを構築してETL処理を行っていたのが不要になるようです。

ただし、現在は米国東部 (バージニア北部) リージョンで、MySQL 8.0 と互換性のある Amazon Aurora MySQL 3 の限定プレビューとして公開されています。

S3からの自動コピー機能のリリースされました

これまではS3上からロードするためにCOPYコマンドを実行していましたが、この機能によりCOPYコマンドがCOPYジョブに保存されます。
これにより、指定されたS3上で新しいファイルを検知すると自動データがコピーされます。
COPYジョブは以前に読み込んだファイルを追跡し、取り込みのプロセスから除外します。
また、自動コピーが不要な場合はCOPYジョブを手動で実行しCOPYステートメントの再利用をして、データの重複を防ぐこともできます。

Amazon Athenaのニュースまとめ

クエリ結果の再利用キャッシュ機能を使用して、Athena での繰り返しクエリを高速化

クエリ結果の再利用キャッシュ機能を使用して、繰り返しクエリを高速化できるようになりました。結果の再利用キャッシュにより、結果の生成に必要な時間を短縮できます。
クエリ結果の再利用

Lake Formation のきめ細かいアクセス制御の拡張

AWS Lake Formation を使用できるようになりました。

  • テーブル形式で保存されたデータが対象(Apache Iceberg、Apache Hudi、Apache Hive)
  • データ フィルターを使用してクエリ結果のデータへのアクセスを制限
  • 列レベル、行レベル、およびセル レベルのセキュリティを実現
  • Athena がサポートするすべてのリージョンで、利用可能


詳しくは、公式サイトの「AWS Lake Formation を使用してきめ細かいアクセス制御を管理する」を参照してください。

Athena Federated Queryで大文字と小文字を保持

以前は、 structフィールド名は自動的に小文字になりましたが、今回のアップデートで大文字と小文字を保持できるようになりました。

IPv6 経由で Athena 関数を呼び出すために使用できるインバウンド接続の IPv6 エンドポイントをサポート

  • IPv6 コンプライアンス要件を満たすことが可能
  • IPv4 と IPv6 間のアドレス変換を処理するためのネットワーク機器を追加することが不要に

Apache Iceberg サポートで、拡張 ACID トランザクション機能を提供※Athena エンジン バージョン 3

  • ORC と Avro のサポート
  • MERGE INTO
  • CTAS および VIEW のサポート
  • VACUUM サポート

より詳しく知りたい方は、Iceberg テーブルの使用 を参照してください。

Snowflakeのニュースまとめ

GA(一般公開)となった機能リリース

新しいAccount Usageビュー: PROCEDURES, LOCK_WAIT_HISTORY

PROCEDURES ビューには、アカウント内のストアドプロシージャに関する情報が表示されます。

LOCK_WAIT_HISTORY ビュー は、ブロックされたトランザクションの詳細を返します。出力の各行には、ロックを待機しているトランザクションの詳細と、そのロックを保持しているか、そのロックを待機しているトランザクションの詳細などを確認できるようです。

より詳しく知りたい方は以下の参考リンクも御覧ください。

検索最適化サービス: マスキングポリシーと行アクセスポリシーを使用したテーブルのサポート(プレビュー)

これまではマスキングポリシーまたは行アクセスポリシーを使用するテーブルに検索最適化サービスを利用しようとするとエラーとなり、利用できませんでした。

より詳しく知りたい方は以下の参考リンクも御覧ください。

SELECT *: 特定の列の除外と名前の変更

同じステートメントで EXCLUDE と RENAME を使用できるようになりました。

  • 1つ以上の列を除外するには、列の名前で EXCLUDE を指定します。
SELECT * EXCLUDE <col_name> ...
SELECT * EXCLUDE (<col_name>, <col_name>, ...) ...
  • 1つ以上の列の名前を変更するには、列の元の名前と列の新しい名前で RENAME を指定します。
SELECT * RENAME <col_name> AS <col_alias> ...
SELECT * RENAME (<col_name> AS <col_alias>, <col_name> AS <col_alias>, ...) ...

新しい SQL 関数

  • ARRAY_EXCEPT
    元の入力値に対し、別の配列と比較し、差分となる新しい配列(差集合)を返します。
  • DIV0NULL
    除算演算子(/)のように除算を実行しますが、除数が0または NULL 場合は0を返します。
  • ARRAY_DISTINCT
    入力された配列の重複を除いた配列を返します。

メール通知を送信するための新しいシステムストアドプロシージャ(プレビュー)

SYSTEM$SEND_EMAIL()
というシステムストアドプロシージャがリリースされました。
タスクや独自のストアドプロシージャ、WebUIのセッションからメール通知を送信できるとのことです。

現時点ではAWSプラットフォームの us-west-2, us-east-1, eu-west-1リージョンのみとのことです。

より詳しく知りたい方は以下の参考リンクも御覧ください。

新しいInformation Schemaテーブル関数: NOTIFICATION_HISTORY

このテーブル関数は、次を含む、Snowflakeを介して送信された通知の履歴を返します。

注意点として、この関数は処理された通知(送信の完了または失敗の通知)
に関する情報のみを返し、キュー内の通知は履歴に表示されないとのことです。

Snowpark用に最適化されたウェアハウス(プレビュー)

標準のSnowflake仮想ウェアハウスと比較してノードあたり16倍のメモリを積んでおり
機械学習などの学習処理(モデルのパラメータ自動調整)などのユースケースに推奨しています。
一方で、現在はSnowpark用ウェアハウスではQuery Accelerationがサポートされていなかったり、
scikit-learn(Python用の機械学習ライブラリ)の一部アルゴリズムではウェアハウスのリソースを最適に使用しないなどの制限があるそうです。

より詳しく知りたい方は以下の参考リンクも御覧ください。

アクセス履歴: UDFs およびストアドプロシージャへのサポート追加

このリリースにより、ACCESS_HISTORYビューの中で
UDF、UDTF、外部関数、ストアドプロシージャがサポートされました。

より詳しく知りたい方は以下の参考リンクも御覧ください。

Lookerのニュースまとめ

Looker 22.20 がリリースされました

BI データを可視化する新しい方法が追加されました

  • 時系列によるデータ変更のアニメーション(プレビュー)
  • 2つの新しい散布図可視化構成オプション
  • 個々のピボットを可視化で非表示にする
  • デカルトグラフを拡大することができる
  • ダッシュボード内の全画面表示と拡大ビュー

詳細は以下の公式ドキュメントをご確認ください
Looker 22リリースのハイライト

Google スプレッドシートを用いたデータ分析

Google スプレッドシートと接続することで、LookerMLモデルのデータをスプレッドシートのピボットテーブルとして分析することができます。

この機能はGoogleスプレッドシート側でこの機能がリリースされてからの利用になりますが、2022年12月中に予定されています。

詳細は以下の公式ドキュメントをご確認ください。
Looker 向けコネクテッド シートの使用

Looker iOS アプリでのドリルダウンとアラート

Looker iOS アプリから Looker Web と同様にデータのドリルダウンができるようになりました。
アラートを iOS デバイスで受信できるようになりました。プッシュ通知を受け取って対応できるようになります。

Cookie を使わない埋め込み(プレビュー)

Cookie をブロックするブラウザでは埋め込み iframe のユーザー認証ができないため、Cookie を利用しない認証を選択できるようになりました。設定にはサーバー側構成の変更が必要です。

詳細は以下の公式ドキュメントをご確認ください。
シングルサインオン(SSO)組み込み

Looker Studio(旧: Googleデータポータル)のニュースまとめ

レポートエディターの機能追加

  • コンポーネントプロパティパネルをリサイズできるようになりました
  • キャンバスの描画をズームできるようになりました

Google Analytics API (GA4) への並列リクエスト上限が設定されました

Looker Studio のレポートに Google Analytics API (GA4) を利用しており、並列リクエスト上限を超過した場合に以下のようなエラーが表示されるようになりました。

Exhausted concurrent requests quota.

エラーが表示された場合の対処方法は以下にまとめられています。
Google Analytics 4 quotas exceeded

Power BIのニュースまとめ

Power BIの2022年11月のアップデート(2.111.265.0)をまとめます。
また、Power BIの2022年11月アップデート情報の動画はこちらからご覧ください。

サービス:Power BI および Excel ファイルをアップロードする新しい方法 

Power BI にExcelファイルをアップロードするための新しい方法が提供されました。
ファイルを追加するワークスペースで、[New]ボタンの横に[Upload]ボタンのドロップダウンメニューのオプションに、[OneDrive for Business]または[SharePoint]に保存されているファイルに使用してコンピューターからファイルをアップロードしたりできます。

詳細はこちら:[ビデオ] [ブログ] [記事]

サービス:フィルタが適用されたレポートを購読する

Power BI レポートのビューに対するサブスクリプションを作成できるようになりました。新しい購読を作成するときに、[私の変更を含む] オプションを選択するだけで、適用した変更を含む、現在表示されているレポートのビューを購読することができます。

詳細はこちら:[ビデオ] [ブログ]

サービス:リンクされたメトリクス

リンクされたメトリクスのリリースにより、複数のワークスペースにまたがる複数のスコアカードに同じメトリクスを表示することができるようになりました。
すべてのチェックイン、編集、更新は、すべてのメトリクスの場所に反映され、同じものを追跡する重複したメトリクスを作成しないようにすることが容易になります。例えば、多くの組織では、リーダーシップチームがスコアカードを持っており、各部門が前者の指標と、特定の部門に関連する他の指標を含む独自のスコアカードを持っています。この機能を使えば、このような指標をいくつものスコアカードにリンクさせ、それらを自動的に同期させることができるようになります。

詳細はこちら: [ビデオ] [ブログ]

サービス:情報保護のアップデート

Power BI では、OneDriveまたはSharePoint OnlineからPower BIサービスにファイルをインポートすることができ、Power BI Desktopでの作業とPower BIサービスとの連携が保たれるようになりました。
また、感度ラベルが適用されている場合、OneDriveまたはSharePoint Onlineからファイルをインポートできるようになりました(ドキュメントに記載されているように、一部の例外を除きます)。

詳細はこちら:[ビデオ] [ブログ]

モバイルアプリ:新しい Power BI アクセントカラーの発表

Power BI のアクセントカラーがティール色に更新されました! この変更により、ユーザーインターフェースのカラーコントラストと視認性が向上し、Power BIをより使いやすく、身近に感じていただけるようになりました。

詳細はこちら:モバイルアプリの新機能リリース

dbtのニュースまとめ

今月の大きなアップデートはありませんでした。
以下のdbt-coreのマイナーバージョンがリリースされました。

ETLサービス「trocco(トロッコ)」のニュースまとめ

troccoの直近のアップデートをご紹介します。


おしらせ

認証方法としての HubSpot API キーの利用停止

HubSpot API キーは、2022 年 11 月 30 日以降、HubSpot API にアクセスするための認証方法として使用できなくなります。
今後、認証方式としては OAuth 2.0 をお使いください。
詳しくは、HubSpot API キーへのアクセスを参照ください。

データカタログ

サイドバー・クエリエディタの横幅が可変に 🎉

  • データカタログのサイドバーおよびクエリエディタの幅を自由に変更できるようになりました。
    • 境界線をドラッグして左右に動かすことで、お好きな幅に変更できます。
      imageimage

dbt 連携

実行コマンド”dbt run-operation”が追加、マクロ呼び出しに対応 🎉

  • マクロ呼び出しに対応する実行コマンドdbt run-operationに対応しました。 * dbt run-operationコマンドの引数にマクロ名を入力することで、ジョブ実行時にマクロを呼び出すことができます。
    image

転送設定

転送先 Box

転送先 Box が新たに追加 🎉
  • フォルダのパスを指定することで、Box にファイルを転送できます。
    image

転送先 HubSpot

image
オブジェクトタイプが拡充 🎉
  • 転送先の対象となるオブジェクトタイプが拡充されました。
    今回追加されたオブジェクトタイプは下記のとおりです。
    _ company
    _ deal
    _ product
    _ ticket
    _ line_item
    _ quote
転送モードに INSERT が追加 🎉
  • 転送モードに追記 (INSERT) が追加されました。
転送モード UPSERT にて、UPSERT キーが指定可能に 🎉
  • 転送モードの UPSERT について、UPSERT キーを指定できるようになりました。

転送先 Snowflake

半構造化(json 型)データの取り込みが容易に 🎉
  • json 型カラムが、デフォルトでVARIANT型(半構造化データ型の 1 つ)として取り込まれるようになりました。
    • これまで json 型のカラムは、デフォルトでVARCHAR型で取り込まれていました。
    • Snowflake の半構造化データ型について、詳しくは半構造化データ型を参照ください。
json 型のカラムを VARCHAR 型で取り込みたい場合

これまで同様に、json 型のカラムを VARCHAR 型で取り込みたい場合は、
転送設定編集 STEP2・出力オプションのカラム設定にて、データ型としてVARCHARを選択してください。

転送元・転送先 Google Drive

共有ドライブの転送に対応 🎉
  • 転送元Google Drive にて、共有ドライブ上にあるファイルを転送できるようになりました。
  • 転送先Google Drive にて、共有ドライブ上にあるフォルダに転送できるようになりました。

転送元 TikTok Ads

取得対象のディメンションが拡充 🎉
  • 取得できるディメンションが拡充されました。今回新たに取得対象となったディメンションは下記のとおりです。
    • Basic data metrics
      • reach
      • frequency
      • result
    • Video play metrics
      • video_watched_2s
      • video_watched_6s
      • average_video_play
    • Page Event Metrics
      • web_event_add_to_cart
      • on_web_order
      • initiate_checkout
      • add_billing
      • page_event_search

転送先・転送元 Google BigQuery

データセットのロケーションが拡充 🎉
  • GCP のリージョンに追従し、trocco でも以下 3 つが選択可能になりました。
    • europe-west8 (ミラノ)
    • europe-west9 (パリ)
    • europe-southwest1 (マドリッド)
環境へ配慮した Google Cloud リージョン

パリ・マドリッドは、炭素排出量の低いリージョンです。
Google Cloud リージョンの炭素排出量について、詳しくはCarbon free energy for Google Cloud regionsを参照ください。

接続情報

MongoDB

読み込みたいノードを選択可能に 🎉
  • MongoDB の replica set の中から、読み込みたいノード(メンバー)を選択できるようになりました。
    • これまでは、primary が読み込まれていました。
    • 今後は MongoDB 接続情報の「読み込み設定」にて、以下の 5 つの項目から選択できます。
      • primary
      • primaryPreferred
      • secondary
      • secondaryPreferred
      • nearest
    • 詳しくは、読み込み設定(Read Preference) についてを参照ください。

ワークフロー定義

ワークフローのループ実行に対応 🎉
  • ワークフローに組み込まれた子ワークフローをループ実行できるようになりました。
    • フロー編集画面でワークフローをタスクとして追加し、タスク編集を行うことでループ実行を設定できます。
image
image

UI・UX

転送設定一覧にて、スケジュール一括追加に対応 🎉
  • 転送設定一覧にて、選択した転送設定に一括でスケジュールを追加できるようになりました。 * 以下の手順で一括でスケジュールを追加できます。
    image

API アップデート

Yahoo!広告

API バージョンが、v8からv9へアップデートされました。
新バージョンについて、詳しくは API リファレンスを参照ください。

Twitter Ads
  • API バージョンが、v11 からv12へアップデートされました。
  • 新バージョンについて、詳しくはTwitter Developersのドキュメントを参照ください。
Facebook オフラインコンバージョン
  • 転送先 Facebook オフラインコンバージョンに利用している Facebook API が、v14 からv15へアップデートされました。
  • 新バージョンについて、Meta for Developersのドキュメントを参照ください。

その他、以下のような改修などが加わっております。

  • データマート – Snowflake
    _ 出力先データベースの名前に、ハイフン(-)を含めることができるようになりました。
    _ クエリ実行モードでデータ転送モードを選択したときの出力先データベースにて、名前にハイフンを含むデータベースを指定できます。
    image
  • チーム機能 – リソースグループ詳細 * 接続情報一覧タブにて、接続情報のサービス名が各接続情報に紐づく形で表示されるようになりました。
    image

その他、詳しいアップデートは以下リリースノートをご参照下さい。
https://documents.trocco.io/docs/release-note-2022-11


以上、Data Engineering News 2022年11月のアップデートまとめでした。

毎月更新でニュースをお届けしておりますので、ニュースの新着メール通知をご希望の方はこちらのフォームよりご登録ください。

こんなニュースを知りたい!というようなご意見・ご要望も著者Twitterアカウントまでお気軽にDM下さい!

hirokazu.kobayashi

慶應義塾大学卒業後、2014年より株式会社リブセンスへ入社。データエンジニアとして同社分析基盤立ち上げをリードする。2017年より現職primeNumberに入社。自社プロダクト「systemN」におけるSpark/Redshift活用等のデータエンジニアリング業務を行うかたわら、データ統合業務における工数削減が課題だと感じ、データ統合を自動化するサービス「trocco®」を立ち上げる。