概要 asset asset factory pattern job factory pattern 概要 Dagsterのデザインパターンであるjobクラス+asset_factoryメソッドのパターンを理解するために、最も基本的な概念であるasset関数から徐々に理解していくための解説を書きました。 asset もっと…
下記資料でGitHub Actionsのセキュリティの勉強をしていたら、GitHubリポジトリに設定されているsecretや環境変数をPull Requestによって盗めることが分かったので実験してみました。 speakerdeck.com なお、本記事はGitHub Actionsを書く際のセキュリティ意…
結論 BigQueryのSQLとDataformのsqlxはコメントの適用が異なることが分かりました。これらはBigQueryでもDataformでもコメントとして認識されます。 -- SELECT 1 /* SELECT 1 */ #によるコメントは、BigQueryでは(標準SQL導入前のコメント記法で)コメント…
概要 準備 字句解析(Lexical Analysis) 構文解析(Syntax Analysis) 概要 sqlglotというSQLのパーサーツールを用いてSQLのパースの内部処理を体験してみました。 SQLパーサーの内部処理は大きく分けて次の3つがあります。 字句解析 構文解析 意味解析 こ…
概要 単一プロセスでのキャッシュ functools cachetools 複数インスタンス間でのキャッシュ 概要 Pytyhonの関数をキャッシュするデコレータについてです。 キャッシュを考える場合、次の2つの状況を考える必要があります。 単一プロセス内でキャッシュする場…
問題設定 ヤフオクの特定の出品者の商品一覧を毎日決まった時刻に取得したいと考えます。 設計 時間による情報の変化をopに落とし込む 上記の問題を考えた場合、訪れるページの種類は主に3つ挙げられます。 No ページの種類 得たい情報 得たい情報に対しての…
集約 Time Columnに関する関数 1日を3時間単位に丸めるTIMESTAMP_BUCKET(・, INTERVAL 3 HOUR) Value Columnに対する関数 平均・最大・最小 3時間ごとに丸める 下記は「各郵便番号のある時刻における最低気温と最高気温」のテーブルです。 timeがTime Column…
Iceberg界隈で有名な方が、SpotifyにてOpen Table Formatの日本語Podcastを提供して下さっていたため勉強しました。 第1回から第3回まで聞いた内容のまとめを記します。 第1回 OTF誕生の背景 open.spotify.com Icebergが生まれた背景 データレイクに対してTr…
下記記事を読み、SnowflakeでORDER BY句を利用しても問題ない理由をSnowflakeのアーキテクチャを学びながら理解することができたのでまとめました。 zenn.dev Snowflake マイクロパーティション 一般的にSQLは「ORDER BY LIMIT句は遅い」と言われています。 …
2024.08.09にDagster1.8がリリースされ, リリースノートから気になった箇所をまとめました. dagster.io Un-experimentalizing Pipes Pipes APIはLambda, kubernetes, databricks上で動いているコードにdagster moduleをimportしログを吐くように実装すると, …
概要 変更点 一つのExternalAsset 複数のExternalAsset Definition 概要 1.7.9から1.8.0にかけてExternal Assetの仕様が変わっていたため調査を行いました。 changelogは下記のようになっています。 github.com このうちexternal assetに関する記述は下記に…
下記記事を読み、Maestroが他のData Orchestration(主にDagster)と異なる(であろう)点をまとめました. atmarkit.itmedia.co.jp netflixtechblog.com 巡回ワークフローもサポートしている ワークフロー定義はJSONで記述 サブワークフロー ワークフローのステ…
概要 同run内でop/asset単位のリトライ ResetPolicy コード例 異なるrunで失敗したop/assetのみをリトライ dagster.yaml jobのタグに設定 概要 Dagsterのリセットポリシーについてまとめてみました。 Dagsterのリトライの単位は大きく2つあります。 同run内…
概要 dataplexの品質タスクの仕組み 実践内容 権限付与 タスクの定義 結果 概要 dataplexによる品質チェックは、Terraformによる定義しかやったことがなかったため裏で行われていることがわかりませんでした。 そのため、敢えてドキュメント通りに学んでみる…
前提 プロンプト設定 oh-my-posh設定 前提 terraformで作業をしていると、workspaceを切り替えることを忘れ、production環境にapplyをしてしまうようなミスが考えられます。 プロンプトにworkspaceを表示することにより、ヒヤリハットを防ぐことが重要です。…