タグ

ブックマーク / www.yasuhisay.info (16)

  • Looker Studioの魅力と便利な使い方を紹介します - yasuhisa's blog

    初めて使ったBIツールはLooker Studioのid:syou6162です。これまでTableau / Looker(≠ Looker Studio) / Metabase / Redash / Connected Sheetsなど色々なBIツールを触ってきましたが、不満は色々ありつつも個人的に一番しっくりきて愛着があるのはLooker Studioです。このエントリでは、その魅力と便利な使い方や注意点について書きます。例によって、社内勉強会向けの内容を外向けに公開しているため、内容の網羅性などは特に担保していないことにご注意ください。 Looker Studioの魅力 利用のハードルが限りなく低い & Google Workspaceとの連携が便利 複雑過ぎることができないので、諦めが付けやすい ちゃんとBIツールになっている Looker Studioの便利な使い方 多様なデータソ

    Looker Studioの魅力と便利な使い方を紹介します - yasuhisa's blog
  • 複数の企業でデータエンジニアとして求められたスキル - yasuhisa's blog

    最近「ああ、これ前職でも前々職でもやったことあるなぁ」という仕事があった。データエンジニア(やその関連職種)として働き始めて約5年、3社でフルタイムとして働いてきて「このスキルは業界や組織規模が変わってもデータエンジニアとしてスキルを求められることが多いな」と感じたものをまとめてみることにした。棚卸し的な意味はあるが、特に転職用などではないです。 前提 どこでも必要とされたスキル データマネジメントに関する概要レベルの知識と実行力 セキュリティや法令に関する知識 事業ドメインに関する興味関心 他職種とのコミュニケーション能力 コスト管理 / コスト削減のスキル ソフトウェアエンジニアとしてのスキル DataOpsやアラートのハンドリング能力 分析用のSQLを書く力 古いテーブルやデータパイプラインを置き換えていくスキルや胆力 あるとやりやすいスキル 関連部署の動きを何となく把握しておく力

    複数の企業でデータエンジニアとして求められたスキル - yasuhisa's blog
  • iTermをやめてVSCodeのターミナルに寄せる - yasuhisa's blog

    背景 担保したいこと 1: ホットキーで一撃で呼び出せる 2: ウィンドウを透過させてターミナルと他のウィンドウを同時に眺められること 調査したこと & 解決方法 ホットキーで呼び出せるか => hammerspoonで割り当てで対応 ターミナルの透過 => 無理そうなので、代替手段で対応 メモ: ターミナル関係のキーバインド tmuxっぽくしたい その他キーバインド 背景 iTermをずいぶん長く使ってきたけど*1、VSCodeのターミナルが急速に進化しているので、乗り換えを検討した。 VSCodeが色々便利になってきた 自分が使っている範囲だと、vimキーバインドも特に問題ない*2 普段のコーディングはVSCode、コマンド操作くらいしかiTermは使っていない 特にCopilot系の進化は目覚ましい、長い物には巻かれろというか長期的にはエコシステムに乗っておきたい エディタだけでなく

    iTermをやめてVSCodeのターミナルに寄せる - yasuhisa's blog
  • 個人的なdbtの推しポイントを書いてみる - yasuhisa's blog

    dbtや同じ系統のDataformなど、ELTの特にTransform部分に強みを持つツールを使い始めて大体3年になる。主観だけど、それなりに使い倒している部類だと思う。 開発効率を計測するデータ基盤の管理にDataformを使ってみた - yasuhisa's blog dbtを触ってみた感想 - yasuhisa's blog dbt カテゴリーの記事一覧 - yasuhisa's blog これらのツールで巷でよく言われる データリネージの可視化ができる データに対するテストが簡単に書ける エンジニア以外の人ともコラボレーションしやすい あたりの話は耳にタコができるくらい聞いていると思うので、ニッチではあるもののそれ以外のdbtの個人的に推しなポイントをダラダラと書いてみたいと思う。データエンジニアやデータガバナンスを推進する人には共感してもらえる内容かもしれない。 推しポイント:

    個人的なdbtの推しポイントを書いてみる - yasuhisa's blog
  • DWH改善に生かす! 入門elementary - yasuhisa's blog

    前提: これは何? dbtを使ったデータプロダクトを作っている社内のチームメンバー向けに書いた勉強会用のドキュメントです 社外に公開できるように少し抽象化して書いてます DWHに限らずdbtを使ったデータプロダクトで生かせる話ですが、分かりやすさのためにDWHを題材にしています 3行まとめ elementaryはdbtを利用しているデータパイプラインに対してData Observabilityを強化するツールであり、付属のリッチなレポートやSlachへのアラート通知が便利です しかし、実はelementaryが内部で生成している成果物はDWHの改善に役に立つものがたくさんあります エントリではelementaryの成果物や役に立つ実例を多めに紹介します 前提: これは何? 3行まとめ 背景: DWHとデータ品質 Observability / Data Observabilityについて

    DWH改善に生かす! 入門elementary - yasuhisa's blog
  • dbtで見やすいER図を生成する - yasuhisa's blog

    背景: dbtを使っていてもER図は欲しい! どうやってER図を生成するか どうやってER図を見やすくするか まとめ 背景: dbtを使っていてもER図は欲しい! dbtはモデル間のリネージなど可視化が得意なツールではありますが、万能なわけではありません。モデルの生成過程などはリネージで担保できますが、分析時に「どれとどのモデルがJOINできて、JOINする際のキーはこれを使って」というER図で扱うような可視化はディフォルトではできません。 DWHを作っている側からすると「このテーブルはあの辺のテーブルと一緒に使うと便利で、いつもあのキーでJOINして」というのが頭の中に入っていることが多いため、ER図がなくてもどうにかなることも多いでしょう。しかし、分析に慣れていない人や分析に慣れている人であっても、普段と異なるドメインのテーブルを触るときはER図が提供してくれる情報は有用です。ちなみに

    dbtで見やすいER図を生成する - yasuhisa's blog
  • dbtのモデルとTableau上で使われているWorkbookの依存関係をexposureで表現して、データ管理を効率的に行なおう - yasuhisa's blog

    3行まとめ dbtのジョブが失敗した際やテーブルの廃止検討の際に、BI上のどのダッシュボードで利用されている(データリネージ)か知るのは重要です TableauGraphQLAPIからWorkbookとBigQuery上のモデルの埋め込みの関係を知ることができます dbtのモデルとTableau上で使われているWorkbookの依存関係をexposureとして出力するスクリプトにより、dbtのジョブの失敗やテーブルの廃止がTableauのダッシュボードに与える影響などを調べやすくなりました 3行まとめ 背景 課題: dbtのexposureとしてダッシュボードを手動で記入し続けるのは難しい 解決方法: TableauGraphQLAPIを使い、 dbtのexposureを自動生成する 発展的話題 背景 業務において、DWHやデータマートの生成にdbtを、BIツールとしてTablea

    dbtのモデルとTableau上で使われているWorkbookの依存関係をexposureで表現して、データ管理を効率的に行なおう - yasuhisa's blog
  • BigQueryのシャーディングテーブル(日付別テーブル)でフルスキャンを避ける方法 with BigQuery Scripting & dbt - yasuhisa's blog

    SQLをレビューしていて、シャーディングテーブル(日付別テーブル)をサブクエリを使ってフィルタしているものがあった。BigQureyのシャーディングテーブルはWHERE句で日付の条件を書いてやるとスキャン範囲を限定することができるので便利ではあるが、サブクエリを使うなど定数でないものが入るとフルスキャンが走ってしまう。 このように書くことによって、スキャン量は from_date ~ to_date までのテーブルしかスキャンしないので全tableのスキャンすることを防ぐことができます。 しかし、このワイルドカードテーブルへのクエリにサブクエリなどの定数式でない条件を使ってしまうと、途端にフルスキャンを行ってしまいます. このこと自体は覚えていたものの「じゃあ、具体的にどうやって回避すればいいの?」というのをぱっと言語化できなかったので、ちょっとまとめておく。 ちなみに、サブクエリを使って

    BigQueryのシャーディングテーブル(日付別テーブル)でフルスキャンを避ける方法 with BigQuery Scripting & dbt - yasuhisa's blog
  • データエンジニア / Analytics Engineer向けの権限管理のためのTerraform紹介 - yasuhisa's blog

    これは何? 背景: 権限管理とTerraform 権限管理の対象 誰に権限を付与するのか どのスコープで権限を付与するのか どの強さで権限を付与するのか Terraformについて Terraformの概要: 権限管理でTerraformを使うと何がうれしいのか 例: roles/bigquery.jobUserを付与してみる コラム: どこでTerraformを実行するか Terraformでの権限管理の例 例: データセットの作成 例: データセットに対する権限付与 サービスアカウントの管理 iam_member関連の注意点: AdditiveとAuthorativeを意識する Terraformで管理されていなかったリソースをTerraform管理下に置く: terraform import Terraformの登場人物 terraform planやterraform applyの

    データエンジニア / Analytics Engineer向けの権限管理のためのTerraform紹介 - yasuhisa's blog
  • 最近の砂場活動その2: ECS/Fargate/AWS Batch編 - yasuhisa's blog

    ゴールデンウィークということもあり、前回に引き続き砂場活動をやりました。前回はCloudFormationを使い、ElastiCache/RDSを立てて、EC2の上でWebアプリを動かすところまでをやりました。 今回はECSやFargate、AWS Batchなどコンテナの恩恵をより受けられるようにしてみようと思います。大分モダンになってきた。 コンテナ化 ECSで動かす on EC2 ECSを構成する概念 ECS用のEC2の準備 タスク定義/サービス定義 オートスケール ECSで動かす on Fargate Batch処理 困ったこと まとめ コンテナ化 ECSで動かすことを見越して、Webアプリをコンテナ化しました。といってもDockerfileを書く程度なので、大したことはない。中間ファイルに吐いていたような状態はRDS/ElastiCache/S3などの外部のDBやストレージに持た

    最近の砂場活動その2: ECS/Fargate/AWS Batch編 - yasuhisa's blog
  • dbtを触ってみた感想 - yasuhisa's blog

    データエンジニア系の勉強会で最近dbtがぱらぱらと話題に出てくるようになった & 4連休ということで、夏休みの自由研究がてらdbtを触ってみました。書いてる人のバックグラウンドは以下の通り。 DWHやデータマートの構築のためのETLツールを模索中(特にTの部分) プライベートではDataformを使っている 前職でも仕事の一部で使っていた 開発効率を計測するデータ基盤の管理にDataformを使ってみた - yasuhisa's blog 定期バッチ処理はArgo Workflows on GKEでやっている 触ってみないと肌感とか自分で運用できるかのイメージが湧かないのでね。 Dataformとの比較 細かいノウハウ 手元や番環境での動作 Argo Workflowとの連携 環境によってDWHの提供するバージョンを差し替える DWHやデータマートの外の情報をデータリネージに加える 既存

    dbtを触ってみた感想 - yasuhisa's blog
  • 社内LTで「本当にあった(ら)怖いデータの話 ~dbtのススメ~」について話しました - yasuhisa's blog

    dbtの紹介 タイトルの通り、モノタロウの(非公式)勉強会でdbtのことについて話してきました。すでに使っている人には新しい情報はほぼないですが、他部門の方に「データ触ってるとこういうところ辛いよね〜」「dbt使うといい感じに解決できるケースもありますよ」という雰囲気の内容で話してます。 合わせて読みたい。 入社してから初の勉強会主催 モノタロウに入社してからまだ半年も経っていないですが、初めて勉強会を主催しました。社内だけど参加者の2/3くらいの方は「zoomでもお話するの初めてでは??」という状態だったのですが、後先何も考えない性格(アホ)だからやれてるんだろうなと思います。ラッキーなことに発表してくれるという方がすぐに集まって OSSへのcontributeの仕方 フロントエンドの開発を爆速にする方法 よい週報の書き方 データメッシュ Cloud Buildとの試行錯誤 など(タイト

    社内LTで「本当にあった(ら)怖いデータの話 ~dbtのススメ~」について話しました - yasuhisa's blog
  • dbtでrunの前にtestを実行したい場合にephemeralを使う - yasuhisa's blog

    dbt運用の小技です。品質の高いデータをユーザーに提供するために一工夫が必要だったので、メモしておきます。 課題感: testを行なってからrunしたい dbtSQLやデータに対してテスト(dbt test)を行なうことができます。データ品質を高めていく上で、重要な機能の一つです。 テーブルやビューに対してテストを行なうわけですが、当然ながら素朴にやるとテーブルやビューがまだ存在していない場合にはテストを実行することができません。無理やり実行すると、こういう感じで失敗します。 Completed with 4 errors and 0 warnings: Runtime Error in test unique_my_first_dbt_model_id (models/example/schema.yml) 404 Not found: Table ml-project:test_te

    dbtでrunの前にtestを実行したい場合にephemeralを使う - yasuhisa's blog
    knj2918
    knj2918 2023/01/25
  • 最近の砂場活動その24: Embulkでのデータ転送を差分転送にする - yasuhisa's blog

    差分転送するモチベーション 機械学習を使った情報推薦を行なうために、RDSのテーブルをBigQueryに定期転送しています。細かいことは気にしたくなかったので、一日一回の洗い替え(全データ送信で全部上書き)していましたが、もう少し鮮度を上げたくなりました(新しい情報に対して推薦ができないため)。何も考えずに定期転送の頻度を上げると 1: 転送のためのCPUコスト 2: AWSからGCPへのデータ転送量 が気になってきます。個人の趣味プロジェクトでは、特に2が大きい。先月のAWSの利用料金を見て、涙を流していました...。というわけで、情報の鮮度は上げつつもう少し効率的に定期転送するべく、Embulkでの差分転送をすることにしました。 やり方 差分だけBigQueryに転送する 基的にはメルカリメソッドそのままです。いつもお世話になっております。 updated_atのような最終更新日時が

    最近の砂場活動その24: Embulkでのデータ転送を差分転送にする - yasuhisa's blog
  • 開発効率を計測するデータ基盤の管理にDataformを使ってみた - yasuhisa's blog

    Dataformを初めて使ってみたので、雑に感想を書いておきます。結構よかった。 使ってみようとした背景 Dataformについて 試してみてどうだったか よかった まだまだこれからっぽいところ & 気になり 参考 使ってみようとした背景 今週、社内の開発合宿に参加していた。変更のリードタイムやデプロイ頻度などのFour Keysにあるような指標を計測できるデータ基盤を作るのが目標。様々なチームの開発のパフォーマンスをトラッキングしやすくして、うまくできているチームがなぜうまくいっているのかを明らかにしたり、改善施策を行なった結果指標も改善しているか定量的に確認できるようにして、開発効率を上げる土台を作るというのが目的。この辺の詳しいことは後々別のエントリで書かれると思う。 自分のチームは3人構成で、在宅のオンラインでやっていた。 id:shiba_yu36さん Mackerelチームでも

    開発効率を計測するデータ基盤の管理にDataformを使ってみた - yasuhisa's blog
  • コロナ禍での転職活動(データエンジニア)についてのメモ - yasuhisa's blog

    Twitterでは先に言っていましたが、現職のはてなを3月末で退職します。3/19が最終出社日でした。はてなでの思い出はこちらに書きました。 そのため、転職活動をしたわけですが、コロナ禍での転職活動は平常時と異なる部分も結構ありました。また、データエンジニアとしての転職は初めての経験でした。誰かの参考になるかもしれないので、私が考えたことや感じたことをメモ書きとして残しておきます。 在宅勤務と就業可能な地域 Web上でのアウトプット データエンジニアという職種の多様性 転職にあたって重視したこと 魅力に感じた点 当然、不安もある 在宅勤務と就業可能な地域 カジュアル面談させてもらった企業さんは、ほぼ在宅勤務に移行済みだった 隔週や月一で物理出社という会社も半々くらい? 緊急自体宣言が出ていない時期(夏〜秋)にカジュアル面談させてもらったので、今は状況が違うかも カジュアル面談、採用面談もz

    コロナ禍での転職活動(データエンジニア)についてのメモ - yasuhisa's blog
  • 1