タグ

ブックマーク / developer.feedforce.jp (53)

  • Looker のレイヤー化を本番環境に導入してみた - Feedforce Developer Blog

    こんにちは。自称 Looker エバンジェリストの id:masutaka26 です。 この記事は Looker Advent Calendar 2022 の 5 日目の記事です。 qiita.com 昨日と一昨日は記事がなくて、その前は BASE 永野さん (@glassmonekey) の「アジリティを保ってデータ基盤を作る取り組み」でした。使用した技術そのものよりも、どのように合意形成してこのような体制に出来たのかが気になりました。👀 今回は奇しくも去年の Advent Calendar その後の話になります。全然狙っていませんでした。たまたまです。 developer.feedforce.jp LookML のレイヤー化とは 導入戦略 実際の導入方法 /_base.layer.lkml /_basic.layer.lkml /layers/*.layer.lkml /*.mode

    Looker のレイヤー化を本番環境に導入してみた - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/12/05
    会社のブログ記事を書きました。 #Looker Advent Calendar 2022 の 5 日目の記事です
  • Looker のキャッシュの仕組みを思い出して実装を整理した - Feedforce Developer Blog

    こんにちは。自称 Looker エバンジェリストの id:masutaka26 です。 フィードフォースで Looker を使っているサービスで最近 BigQuery の料金が上がってきました。 当に使われているのならとても良いことですが、Looker のキャッシュが有効に使われずに BigQuery 料金が増えていたら嫌だなと思い、キャッシュの仕組みを思い出しつつ実装を整理してみました。 Looker のキャッシュおさらい 今回のサービスでのキャッシュ設定 変更後のキャッシュ設定 さらなる足掻きからの失敗 もっと足掻いてからの困惑 まとめ さらなるキャッシュへの理解 Looker のキャッシュおさらい Looker にはキャッシュの仕組みがあり、LookML 開発者が適切に設定することで、データベースのクエリ実行を減らすことができます。 全く同じ SQL の実行結果がキャッシュされてい

    Looker のキャッシュの仕組みを思い出して実装を整理した - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/11/11
    会社のブログ記事を書きました。今回はキャッシュの仕組みを思い出して、出来るだけの対策をしました。やっぱりキャッシュは難しい... #Looker #LookML
  • 自分のブログを CloudFront + Heroku から Cloud Run に移行した話をした - Feedforce Developer Blog

    こんにちは id:masutaka26 です。 日、週次の社内勉強会 FFTT で『引っ越ししたら家賃が3分の1になったかも』というタイトルで、実際は Amazon CloudFront + Heroku で動いていた自分のブログを GCP の Cloud Run に移行した話をしました。 モチベーションはスライドにつらつら書きつつも、実際はこの FFTT の発表当番だったからではあります。結果的に満足行く結果にはなったので、これからコード管理などもう少し作り込んでいきます。今後ネタに困ったらまた引っ越せばよいし。 Cloud Run もそうですが、Google Domains や Cloud Monitoring の外形監視(稼働時間チェック)など、便利でライトに使える GCP を知ることが出来たことも収穫でした。 それでは良い週末を!(^^)/ 2022-11-04 追記: 個人ブロ

    自分のブログを CloudFront + Heroku から Cloud Run に移行した話をした - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/09/30
    社内勉強会の当番だったので、ブログに記録を残しました。物理でも引っ越ししようかな?
  • OSS 版 Spectacles を使って、LookML の data tests や validation などを GitHub Actions で継続的に実行させてみた - Feedforce Developer Blog

    こんにちは。自称 Looker エバンジェリストの id:masutaka26 です。 今日は Spectacles というツールを導入して、Looker インスタンスの健全性を高められた話を紹介します。 Spectacles とは 4 種類のテスト 基的な振る舞い どのテストを採用し、どのような課題を解決したのか SQL validation Assert validation Content validation LookML validation どのような GitHub Actions にしたのか CI workflow Schedule workflow 落ち穂拾い 作業ブランチのゴミが残ることがある マシンユーザーを作るか作らないか まとめ Spectacles とは Spectacles は Looker のサードパーティ CI ツールです。継続的に各種テストを実行し、Lo

    OSS 版 Spectacles を使って、LookML の data tests や validation などを GitHub Actions で継続的に実行させてみた - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/09/16
    また会社のブログを書きました。CI は開発初期に導入すると後が楽ですね #Looker
  • Looker User Meetup Online #8 で『BigQuery経由で使うGoogleスプレッドシートのスキーマ管理』の話をした - Feedforce Developer Blog

    こんばんは id:masutaka26 です。 日、Looker User Meetup Online #8 で『BigQuery経由で使うGoogleスプレッドシートのスキーマ管理』の話をしてきました。Looker User Meetup は 5 回目の参加、発表は初めてです。 いくつかネタはあったのですが、今回のテーマは「Lookerまでのデータデリバリー、みんなどうしてる?」ということもあり、この 2 年で確立した方法を紹介することとなりました。 bq CLI ではなく、terraform で管理している方もいらっしゃいました。terraform の更新に追随するのはそれなりに大変だと思いますが、これならスキーマ定義と、実際のスキーマの差異検知は出来そうですね。 「dbt seed」を使っている方もいらっしゃるようでした。今回 2 つの発表があった dbt ですが、全く触ったことが

    Looker User Meetup Online #8 で『BigQuery経由で使うGoogleスプレッドシートのスキーマ管理』の話をした - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/07/21
    さっき Looker User Meetup Online #8 で話してきました。そういえば久々の登壇です #Looker #lookermeetup
  • LAMS を導入して、LookML の再利用性を高められた - Feedforce Developer Blog

    こんにちは、id:masutaka26 です。先週に引き続いてのブログ更新です。 RubyJavaScript などのプログラミング言語では、依存関係を管理することでコードの再利用性を高めるとともに、バグの少ないコードを書くことが出来ます。ただ、LookML はプログラミング言語ではないため、同じ方法が使えません。 今回は LAMS という LookML Linter を導入することで、LookML の再利用性を高める糸口を見つけました。LAMS を紹介しつつ、その知見を共有します。 LAMS とは 導入方法 ルールの免除 LookML の再利用性を高められた F1 ルール 注意事項 まとめ LAMS とは LAMS (Look At Me Sideways) は LookML のスタイルガイドと Linter がセットになったツールです。準公式のツールなのかな? github.co

    LAMS を導入して、LookML の再利用性を高められた - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/06/21
    先週に引き続き、会社のブログを書きました #Looker
  • Looker で困った時の解決手段まとめ - Feedforce Developer Blog

    こんにちは、id:masutaka26 です。 今回は少し前に社内に共有した記事を、このブログでも共有します。Looker は RubyPython 等のプログラミング言語よりはユーザーが少ないはずで、質問相手がいないと当に困ります。この記事がその一助になれば幸いです。 ググる チャット 問い合わせフォーム Looker Community (en) Looker Community (ja) Slack Looker User Group - Japan 番外編: 製品についてのアイディアがありますか? まとめ ググる さすがにこれは基ですね。💦 公式ドキュメント に誘導されることもしばしばです。これが結構よく出来ています。looker table calculation などと英語でググると、解決にたどり着きやすいかもしれません。 マニアックなテクニックとして、ググった U

    Looker で困った時の解決手段まとめ - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/06/17
    会社のブログを更新しました。意外となかったのでまとめました #Looker
  • LookML Validation を 20 秒から 11 秒に高速化出来た - Feedforce Developer Blog

    こんにちは、id:masutaka26 です。 Looker を使い始めて 3 年目に突入しました。変わらず Feedmatic という広告運用コンサルティングのデータ整備をする毎日です。 今回はここ 1 年の懸案だった LookML Validation の堪え難い遅さを改善出来たので、共有します。 2 年間でコード量が肥大化した LookML Validation が堪え難いほど遅くなった My LookML Validator is slow! TL;DR Quick wins Long answer Bonus note include を最適化したら半分弱の時間になった まとめ 余談 追記: LAMS を使って wildcard include を禁止する 2 年間でコード量が肥大化した 2 年前と比べて Feedmatic プロジェクトの .lkml ファイルがものすごく増え、

    LookML Validation を 20 秒から 11 秒に高速化出来た - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/05/30
    会社のブログを更新しました #Looker
  • 『ボッチLookML開発者兼データ整備人を連れてきたよ!』という発表をした - Feedforce Developer Blog

    こんにちは id:masutaka26 です。 日、週次の社内勉強会 FFTT で『ボッチLookML開発者兼データ整備人を連れてきたよ!』というひどいタイトルの発表をしました。 2020 年 4 月から Looker に関わって得たことをまとめた内容であるとともに、1 年半近く前からのアップデートになります。 developer.feedforce.jp 世に出ている Looker の情報はキラキラしているものが多く、ツラい話をそれほど目にしません。絶対にあるはずなのに!😭 それならば!とツラい話や解決が困難な話を散りばめさせてもらいました。課題が共有されて初めて知見が役に立つと思いますからね。解決した課題もあるよ(小声)。 それでは良い週末を!(^^)/

    『ボッチLookML開発者兼データ整備人を連れてきたよ!』という発表をした - Feedforce Developer Blog
    masutaka26
    masutaka26 2022/02/04
    社内勉強会で Looker の話をしたので、会社のブログにも資料を公開しました
  • LookML 開発で使っているディレクトリ構造を紹介する - Feedforce Developer Blog

    こんにちは、id:masutaka26 です。 この記事は Looker Advent Calendar 2021 の 13 日目の記事です。 qiita.com 昨日は Yappli 阿部さんの「Lookerの目標値やストップワードを、Googleスプレッドシート連携でお手軽管理【Sexy Tech for You #9】」でした。Looker を使うとこのような LookML を書くだけで、ビジネスユーザーが SQL を書くことなく、業に集中できるのはとても良いですよね。 個人的には、SQL ベースの派生テーブルの中で join するよりも、explore で join したほうが Looker らしく、メンテナンス性が良い気がしました。symmetric 集計が働くため、ファンアウトも避けられます。wikipedia テーブルに関しては、永続的な派生テーブル(PDT)を使って Bi

    LookML 開発で使っているディレクトリ構造を紹介する - Feedforce Developer Blog
    masutaka26
    masutaka26 2021/12/13
    Looker Advent Calendar 2021 の 13 日目の記事を書きました。意外とこの手の情報はなかった印象です。
  • Looker で Join 先の view の primary_key をいい感じにテストする方法をようやく見つけた - Feedforce Developer Blog

    こんにちは、id:masutaka26 です。 先週はまるっと夏休みにしてました。今日からまた Looker と戯れる日々が始まります。 丸1年 Looker と戯れてきて最近ようやく、Join 先の view でも primary_key が壊れてないことを保証するテストの書き方が分かったので、今回紹介します。 Looker における primary_key の役割 primary_key の実装例 LookML 開発におけるテスト Join 先の view は primary_key をテスト出来ないことがある Join 先の view の primary_key をいい感じにテストする まとめと所感 おまけ Looker における primary_key の役割 Looker には Symmetric Aggregates という、合計を重複させない素晴らしい仕組みがあります。以前こ

    Looker で Join 先の view の primary_key をいい感じにテストする方法をようやく見つけた - Feedforce Developer Blog
    masutaka26
    masutaka26 2021/08/30
    会社のブログを書きました。超ニッチかも #looker
  • 私が1年かけて辿り着いた Looker の情報収集方法を紹介する - Feedforce Developer Blog

    こんばんは、徳川家y id:masutaka26 です。 以前紹介したように、去年から Looker を使ったウェブ広告数値の可視化や BI *1 に取り組んでいます。 LookML 開発者として LookML を書き始めて困ったのが、Looker の情報が少ないように見えたことです。 LookML を含む Looker のドキュメントは充実しているのですが、それらを組み合わせた応用的なフロー情報が少なく感じました。ビジネスユーザー向けの情報も同様です。 現在は網羅的、かつ集約した情報を取得できているので、その方法をご紹介します。 「情報源」をリストアップする 少し脱線... 「情報源」の取得方法への課題 今はどうなったか? 「Looker Community」のフィードが存在した件 「Looker の記事一覧 | DevelopersIO」のフィードを作った件 まとめ 追記 「情報源」を

    私が1年かけて辿り着いた Looker の情報収集方法を紹介する - Feedforce Developer Blog
    masutaka26
    masutaka26 2021/08/16
    会社のブログを書きました。徹底的に Looker の情報をインプットしています 💪 #looker
  • 『ここがつらいよ普段使いのLinux』という発表をした - Feedforce Developer Blog

    こんにちは id:masutaka26 です。いよいよ明後日は RIZIN.28 ですね!東京ドームで MMA(総合格闘技)のイベントが行われるのは、約 17 年半ぶりだそうです(Wikipedia 調べ)。ドキが胸胸します。 日、週次の社内勉強会 FFTT で『ここがつらいよ普段使いのLinux』という発表をしました。タイトルは違いますが、気にしないで下さい。 Mac が重い時に IME 切り替えが一瞬遅れて、例えば「feedforce」とタイプする時に「ふぇえ...」になる現象に悩まされていました。 そこで約 10 年ぶりに Windows PC を購入して、同じく約 10 年ぶりに Linux を普段使いし始めました。 数々の諸問題が発生しましたが、無事全部解決(?)したお話です。 キーボードショートカットがつらい タッチパッドがつらい 指紋認証出来なくてつらい たまにスリープから

    『ここがつらいよ普段使いのLinux』という発表をした - Feedforce Developer Blog
    masutaka26
    masutaka26 2021/06/11
    社内勉強会で Linux の話をしたので、会社のブログにも載せました
  • 全ての esa 新着記事を読みきれないので、最近はこの方法を使ってる - Feedforce Developer Blog

    こんにちは id:masutaka26 です。最近好きな YouTuber はシバターです。シバターかわいいよ...。シバター... フィードフォースでは先日紹介したとおり、ドキュメント共有ツールに esa を使っています。 メンバー数は 90、デイリーアクティブメンバーは 69 くらいです。2/10 の新着記事数は 106 でした。情報共有が活発な会社で、体感でもとても多いです。 全ての新着記事と記事へのコメントは Slack の #esa-notify に通知されます。そこを全部読めば追えはしますが、いかんせんこの数です。 真面目に全部読むと、私の場合はかける時間に見合わないなと感じたので、最近は esa の検索を利用した方法を使っています。 使っている方法 フォローした人の新着記事を読む エゴサーチする 気になるキーワードに言及した新着記事を読む 日報以外の最近更新された記事を読む

    全ての esa 新着記事を読みきれないので、最近はこの方法を使ってる - Feedforce Developer Blog
    masutaka26
    masutaka26 2021/02/15
    会社のブログをまた書きました。今回は社内用 esa に書いた記事のリライトです。
  • 変化に耐え得る esa のカテゴリ設計を徹底的に考えてみた - Feedforce Developer Blog

    こんにちは id:masutaka26 です。夜の散歩(意味深)に勤しむ毎日です。 フィードフォースではドキュメント共有ツールには esa と Google ドキュメント1を、コミュニケーションツールには Slack を採用しています。 情報共有はかなり活発で、2021/2/1 現在の esa 記事数は 81,324 です2。 現在のカテゴリ構成と課題 チームのスピードを上げるための大原則 チームのスピードを上げるための情報整理 1. Flow 型と Stock 型の記事を理解する 2. 基は Flow 型の記事にする 3. 議事録カテゴリは出来るだけ作らない 4. Slack に流れていく情報も Flow 型の記事にする 5. 使い続けられる情報を Stock 記事として引き上げる 6. 整理を頑張らないことで整理の難易度が低くなった 7. esa を全ての情報の起点にする それをチー

    変化に耐え得る esa のカテゴリ設計を徹底的に考えてみた - Feedforce Developer Blog
    masutaka26
    masutaka26 2021/02/03
    社内を見ていて、自分なりの課題感や危機感からから徹底的に考えてみました。中の人以外でここまで考えた人はいないかも。逆にいれば知りたい
  • 『4月から取り組んできたLookerの導入から実装までのお話(Redashとも比較)』という発表をした - Feedforce Developer Blog

    こんにちは id:masutaka26 です。最近の趣味はリハビリと YouTube 鑑賞です。 日、週次の社内勉強会 FFTT で『4月から取り組んできたLookerの導入から実装までのお話(Redashとも比較)』という発表をしました。 4 月から Feedmatic という弊社フィードフォースの広告運用サービスに BI ツールである Looker を導入すべく、検討と実装をしてきました。 関わっているエンジニアは私一人で、社内の他のエンジニアからは何やってきたか分からないと思っていたので、今までのまとめ的な発表をしました。 ネット上を探しても導入時の具体的な話は見つけられなかったので、誰かの参考になることも期待して、外向けも意識しています。 Looker ユーザ向けには P30 から「Symmetric 集計」を頑張って解説しています。説明が雑なのは認めます。🙏 Looker は

    『4月から取り組んできたLookerの導入から実装までのお話(Redashとも比較)』という発表をした - Feedforce Developer Blog
    masutaka26
    masutaka26 2020/10/23
    社内勉強会で Looker の話をしたので、会社のブログにも載せました
  • 個人的に実践している、Slack に振り回されない方法 - Feedforce Developer Blog

    こんにちは id:masutaka26 です。足底筋膜炎は誤診のようでした。リハビリに勤しむ日々です。 今回は社内向けに書いた esa 記事が好評でしたので、少し改変してお届けします。 フィードフォースでは Slack を使っており、リモートワークにおけるコミュニケーションの手段も Slack がメインです。 Slack はチャットツールであるため、ある程度のリアルタイム性を求められますが、ただそれに従っていると振り回されてしまいます。 今回は私が実践しているいくつかの工夫を紹介します。他に良い方法があれば、是非教えてください。 今すぐできないこと(あとでやる&あとで確認する)は自分にリマインドする 自分が他の人に依頼した時もリマインドを設定する チャンネルは優先度を付ける 見なくなったチャンネルからはこまめに抜ける 未読チャンネルはショートカットキーで移動する 今すぐできないこと(あとで

    個人的に実践している、Slack に振り回されない方法 - Feedforce Developer Blog
    masutaka26
    masutaka26 2020/06/29
    会社のブログを書きました
  • 『HerokuでSidekiqを監視する方法を確立した』という発表をした - Feedforce Developer Blog

    こんにちは id:masutaka26 です。最近はドラクエウォークと足底筋膜炎との両立に悩んでいます。 先週の金曜日、週次の社内勉強会 FFTT で『HerokuでSidekiqを監視する方法を確立した』という発表をしました。 Heroku で Sidekiq を監視する知見を見つけられなかったのが、このお題を選んだ経緯です。どなたかが参考になるとうれしいです。 今回は自宅からのリモート発表でした。物理発表と違って、話した内容よりもリアクションの分からなさによる戸惑いが気になってしまいました。(オイ ※ リアクションはしてくれてたみたいです。🙏 複数モニター必須とか、いろいろ知見がありそうなので、今後蓄積出来ると良さそうです。

    『HerokuでSidekiqを監視する方法を確立した』という発表をした - Feedforce Developer Blog
    masutaka26
    masutaka26 2020/03/02
    社内勉強会で発表しました
  • Heroku Ruby Language Metrics のメトリクス収集の仕組みを調べた - Feedforce Developer Blog

    こんにちは。id:masutaka26 です。 半年くらい前から HerokuRuby Language Metrics (Public Beta) を使い始めました。その時、どのようにメトリクスを収集しているか調べたので、この記事にまとめます。(なぜこのタイミング...) 有効にする方法は前述の公式ドキュメントをどうぞ。id:sho7650 の記事も併せて読むと分かりやすいと思います。 qiita.com ところで、いつから Public Beta だったのですかね? GA はいつになるのかな...? 概要 今回は Rails 前提で説明します。このような仕組みでメトリクスの収集と送信が行われます。 heroku/metrics buildpack により、Dyno 起動時に agentmon がインストールされ、常駐する Rails が起動すると、barnes gem がメトリク

    Heroku Ruby Language Metrics のメトリクス収集の仕組みを調べた - Feedforce Developer Blog
    masutaka26
    masutaka26 2020/02/13
    会社のブログを書きました。なにげに Thread.new されたスレッドがどのタイミングで実行されるかの理解に時間がかかってしまった (^^;
  • Heroku Meetup #27 で『デプロイで止まらないバッチ処理を求めて』という話をしてきた #herokujp - Feedforce Developer Blog

    土曜日にこんにちは id:masutaka26 です。 この記事は Heroku Advent Calendar 2019 の 14 日目の記事です。 qiita.com 昨日は @takahito0508 さんの『Salesforce の Org Development 用の Buildpack を作った話』でした。HerokuBuildpack は割と簡単な仕組みなので、ハードルが低いですよね。 さて、同じ日(2019/12/13)に開催された Heroku Meetup #27 "Heroku Vitamin!" で『デプロイで止まらないバッチ処理を求めて』というお題で発表してきました。 Heroku meetup は前々回 #25 以来の参加と登壇です。 developer.feedforce.jp 所感 世の中では割と多くのバッチ処理が動いていると思います。ですが、Hero

    Heroku Meetup #27 で『デプロイで止まらないバッチ処理を求めて』という話をしてきた #herokujp - Feedforce Developer Blog
    masutaka26
    masutaka26 2019/12/14
    会社のブログを更新しました。Heroku Advent Calendar 2019 の 14 日目の記事です。