タグ

ブックマーク / inside.pixiv.blog (12)

  • BigQueryのストレージ料金を大きく減らした話 - pixiv inside

    はじめに 初めまして。プラットフォーム開発部にてデータ基盤を整備しているkashiraと申します。 BigQueryの大規模な料金改定が来ましたね。 cloud.google.com ピクシブでは、ストレージ料金に大きな課題を感じていたので、Preview版の時点からデータセットのストレージ請求モデルを非圧縮から圧縮に切り替えています(安くなるデータセットのみ)。 この記事では、このデータセットのストレージ請求モデルの切り替えがどれくらい効果があったのか、そして切り替え作業で地味に苦労したことについて話したいと思います。 請求モデルの切り替え手順や、詳しい説明は公式ドキュメントをご参照ください。 cloud.google.com TL;DR ピクシブの場合はデータセットのストレージ請求モデルを切り替えるだけで、既存料金の40%程度の料金に抑えることが出来ました。 金額に換算すると年間700

    BigQueryのストレージ料金を大きく減らした話 - pixiv inside
    sh19910711
    sh19910711 2023/04/12
    "ストレージ請求モデルを切り替えるだけで、既存料金の40%程度の料金に抑えることが出来ました + 年間7000万円相当の料金を削減 / 非圧縮のデータ量が6.5 PiB + GA, FAのデータがストレージのほぼ全てを占めています"
  • ピクシブでのデータメッシュについて - pixiv inside

    はじめに 初めまして。プラットフォーム開発部にてデータ基盤を整備しているkashiraと申します。 ピクシブでは中央集権的なデータ組織ではなく、非中央集権的なデータ組織(データの民主化)を目指して活動してきました。 その結果データメッシュに近い形で運用出来ていると感じているので、これについて話したいと思います。 ピクシブで非中央集権データ組織を採用した背景 ピクシブでは社員数に対してプロダクト数が多い事情があります。(2023年3月1日時点で正社員294人、15プロダクト) 正しいデータ分析をすることにおいて深いドメインの理解は必須であり中央のデータチームで全てのデータを分析することは現実的に厳しい事情がありました。 また各チームメンバーが自分のプロダクトにオーナーシップを持って取り組み、ユーザーのためにやれることはやる文化があります。 こういった事情から以下の理想を求めてデータの民主化を

    ピクシブでのデータメッシュについて - pixiv inside
    sh19910711
    sh19910711 2023/03/25
    "データエンジニアリング互助会と呼ばれる社内コミュニティとデータ基盤チームが協力しあって各種ルールの策定 / データ基盤の更新を共有したり、BigQueryやLookerの新機能の共有、各種プロダクトで困っているところの"
  • コンテナ化していないアプリでもコンテナをデプロイに活用する - pixiv inside

    はじめまして、インフラ部でアルバイトをしているmya0です。 コンテナ化していないアプリケーションで、デプロイにコンテナレジストリを活用しました。 GitLab CI実行時にアセットをビルドし、結果をDocker Imageとしてコンテナレジストリに保管し、デプロイ時にこの中身をコピーすることでデプロイを高速化しています。 この方法であれば番環境でコンテナ化したアプリケーションを動作させる準備が整っていない状態でもコンテナレジストリを利用し、徐々にコンテナを利用するように移行していくことができます。 Docker Imageについて DockerのImageはレイヤー毎にtarファイル(layer.tar)として取り出すことができ、 docker saveすると含まれているlayer.tarをすべて確認することができます。 layer.tarの中身にファイルがそのまま保存されているので、

    コンテナ化していないアプリでもコンテナをデプロイに活用する - pixiv inside
    sh19910711
    sh19910711 2023/03/14
    "Docker Registry HTTP API V2を使用することでdockerを介さずにイメージのlayer.tarのみ取得することができる / これをデプロイ時に使用することでコンテナ化していないアプリケーションでもコンテナレジストリを活用"
  • 「鮮度」と「精度」を両立させる広告データ基盤のつくり方 - pixiv inside

    はじめに アドプラットフォーム事業部でアナリティクスエンジニアをしているucchi-です。 ピクシブは、2022年11月24日に「pixiv Ads」という広告ネットワークをリリースしました。広告主は、pixivに広告を少額予算から簡単に出稿できます。 ads.pixiv.net pixiv Adsのデータ基盤では、大きく分けて以下の課題と向き合っています。 鮮度:広告の配信状況をリアルタイムに見たい クライアントは、ユーザーに広告を届けるため、常にお金を払い続けます。広告配信条件を誤ると、それだけお金を無駄にしてしまうため、少なくとも数十分以内に配信状況を確認できる必要があります 精度:広告の支払い金額は1円の誤差も許さない クライアントは、広告の配信ログから集計した配信実績に基づきお金を支払います。請求金額が絡むため、非常に高い精度のデータ品質が求められます これらの課題に対し、データ

    「鮮度」と「精度」を両立させる広告データ基盤のつくり方 - pixiv inside
    sh19910711
    sh19910711 2023/01/30
    "pixiv Adsでは、Lookerのダッシュボードを広告管理画面に埋め込んでいます / 広告配信ログの取り込みにはCloud Loggingのシンク、DBの同期にはDatastream for BigQuery + おおむね数秒〜数十秒の遅延"
  • なぜ自分は「ペアプロ全面導入」という考えに至ったのか - pixiv inside

    この記事はピクシブ株式会社 Advent Calendar 2017のラストを飾る25日目の記事です。 inside.pixiv.blog 去年も一昨年もラストを飾らせていただいたCTO兼福岡オフィス立ち上げ担当の高山(@edvakf)です。 2017年は福岡に移住という大きなライフイベントがありましたが、思い返してみればペアプロで始まりペアプロで終わったペアプロの年でした。 まずは結論から ペアプロは一般的に言われるようにレビューの手間が減るとかコードの品質が向上するとか属人化を防ぐのに良いとかの利点がありますが、自分は「その時間の集中力」こそが実は最大の利点なのではないかと考えています。 一人で集中して何時間もコードを書き続けられる人は別ですが、現代のプログラミングって調べ物をしてる時間のほうが長くありませんか?しかも調べ物のほとんどは、ちょっと詳しい人ならすぐにわかるようなことばかり

    なぜ自分は「ペアプロ全面導入」という考えに至ったのか - pixiv inside
    sh19910711
    sh19910711 2022/12/26
    2017 / "ちょっと詰まったら聞いてみて、二人ともわからなければググったり二人の知恵を絞って解決する / 一人で仕事をしていたときとは時間の密度が全く違います / 「その時間の集中力」こそが実は最大の利点なのでは"
  • DMARC+GASによる大規模メールトラフィックの監視 - pixiv inside

    こんにちは、pixiv開発支援チームのmipsparcです。 ピクシブからは月に2000万通程度のメールが送信されています。しかし、送ったメールが当にユーザーに到達しているかという不安がありました。また、pixivになりすましてメールを送信している悪意のある人がいないかというのも重要な関心事です。 すでにバウンスメールなどはモニタリングしていましたが、追加の対策としてなりすましメール防止に使用されるDMARC(RFC 7489) を使って監視する仕組みをGoogle App Script(GAS)で作りました。 DMARCとは、保有しているドメインがユーザーに見える送信元メールアドレス header-from に設定されたメールについて RFC5321 from (envelope-from; 受信したメールのReturn-Pathに同じ内容が書かれている)と header-from が

    DMARC+GASによる大規模メールトラフィックの監視 - pixiv inside
    sh19910711
    sh19910711 2022/10/12
    2019 / "DNSのTXTレコードに集約レポート先メールアドレスを記載しておくと、受信したメールサーバからおよそ1日に1回ZIP圧縮されたXMLファイルが添付された本文のないメールが届きます"
  • 機械学習バッチ実行環境を整備した話 - pixiv inside

    はじめまして。 機械学習チームにてレコメンドの改善を行っているgumigumi4fです。 記事では、機械学習チームの取り組みの一環として機械学習等のバッチを含むバッチ実行環境を整備した話について話したいと思います。 今までのバッチ実行環境 機械学習チームではピクシブ会社全体のサービスにおけるアイテムのレコメンド等を主に取り組んでおり、そのロジックは多岐に渡ります。 matrix factorizationを用いた手法 item間共起頻度に基づくシンプルなアイテムの推薦手法 ニューラルネットを用いた手法 これらの計算を行うためのバッチは実装者の好きな手法で実装されており、バッチを行う環境に関しても下記にようにバラバラになっていました。 オンプレの機械学習用マシンに各ユーザー毎に設定したcronでバッチが実行 gitlab-ciのスケジューリングによってバッチが実行 BigQueryで完結す

    機械学習バッチ実行環境を整備した話 - pixiv inside
    sh19910711
    sh19910711 2022/09/15
    "Digdagでは同じArgo Workflowと同様にyamlを用いたワークフローの記述をするものの、記述はより単純でわかりやすいためとっつきやすいという点で良いという決断をし、チーム内での導入をすることにしました"
  • Terraform運用事例書きました - pixiv inside

    こんにちは、インフラ部の id:sue445 です。 Terraformなにもわからないけどディレクトリ構成の実例を晒して人類に貢献したい - エムスリーテックブログ や Terraformのディレクトリ構成の模索 - Adwaysエンジニアブログ を読んで影響されたのでピクシブのTerraform運用事例を紹介しようと思います。 Terraformの採用理由 GitLabでのリポジトリ構成 Terraformのファイル構成 moduleがうまく使えたと思っている事例 GitLab CIでTerraformをいい感じにCIする テンプレートの使い方 ピクシブで実際に使っているテンプレートファイル このテンプレートでできること masterブランチ以外 masterブランチ このテンプレートファイルのポイント 最後に Terraformの採用理由 Terraformと同じようなプロビジョニン

    Terraform運用事例書きました - pixiv inside
    sh19910711
    sh19910711 2020/08/08
    "GitLab CIだと resource_group を使うことでこのように「通常はCIのqueueが空いていれば可能な限り並列実行してほしいが特定のジョブだけは1つずつ実行してほしい」という同時実行数の制御ができる"
  • RendertronをGKEとCloud Runで構築しました - pixiv inside

    こんにちは、インフラ部の id:sue445 です。 今回はRendertronをGKEとCloud Runの両方で構築した話をしたいと思います。 tl;dr; 前置き 今までのRendertronの問題点 GKE版Rendertronについて GKEの採用理由について GKE版Rendertronの構成 全体 GKE内部 pod内部 Kubernetesの設定と解説 rendertron-deployment.yaml rendertron-hpa.yaml rendertron-ingress.yaml rendertron-service.yaml Tips nodeのストレージサイズをケチり過ぎたらpodが起動できなくなった N1マシンタイプのnodeとN2マシンタイプのnodeを比較した結果、N2マシンタイプが安くなった Cloud Run版Rendertronについて Clou

    RendertronをGKEとCloud Runで構築しました - pixiv inside
    sh19910711
    sh19910711 2020/06/20
    "GCPのLoad BalancerのTCPセッションタイムアウトが600秒固定なので *5、ここのnginxの keepalive_timeout を明示的に長くしています。(GCLBではこの設定がないとLoad Balancer側で502エラーが多発するので必須)"
  • コーヒーをみんなで飲むとすごくいい☕️ - pixiv inside

    コーヒー、美味しいですよね。 ピクシブにもコーヒー好きは多く、Slackコーヒー好きの人が集まるチャンネル #z-coffee があります。(ピクシブでは業務に関係ない話題で盛り上がれる雑談チャンネルを作れます) そこではコーヒーの美味しい淹れ方やおすすめのお店の情報などがやり取りされていたのですが、2019年5月のオフィス改装でバーカウンターが新設された際に「作業しやすいバーカウンターを使えばコーヒーを手淹れしてみんなで楽しめるのでは」というアイデアがあがりました。 (作業スペースとして目をつけたバーカウンター) このアイデアは無事形になり、そこから #z-coffee メンバーを中心に社内でコーヒーを手淹れする文化が生まれました。 場が行動を促進する、オフィス設計を行ったデザイナーも狙い通りだと満足していることでしょう。 以下にコーヒーを淹れてみんなで楽しむ流れをご紹介します。 コー

    コーヒーをみんなで飲むとすごくいい☕️ - pixiv inside
  • Headless Chromeでデザイン変更履歴を追える魚拓を作ってみた - pixiv inside

    はじめに こんにちは、普段はPawooの開発を担当している新卒エンジニアのabcangです。 最近話題のHeadless Chromeを使って魚拓を作ってみましたので、その話をします。 結論から言うと、こういうものができました。 以下、詳しくお話していきます。 日々行われるデザイン変更をどう把握するか pixivには毎日新機能やUIの変更がデプロイされており、どんどんページが変わっていきます。 ある日、ディレクターから「デザインの変更履歴を追うための魚拓ツールがほしい」と相談されました。魚拓ツールがあると、なにか数値の変動があったときにデザインの崩れを確認したり、過去のデザインを振り返ったりするときに便利とのことです。 ちょうどそのタイミングでHeadless Chromeが利用できるGoogle Chrome 59がリリースされていたので、試すいい機会だと思い引き受けました。 Headl

    Headless Chromeでデザイン変更履歴を追える魚拓を作ってみた - pixiv inside
  • 一筋縄ではいかない、Pawooとマストドンのデータ分析について - pixiv inside

    こんにちは。新卒エンジニアのtohhyとpotato4dです。 今回の記事では、新卒研修の一環として行っている、Pawooのデータ解析基盤の整備業務について紹介します。 Pawooのデータとマストドンの思想について Pawooの開発で社として特に意識している事柄として、マストドン家の思想の尊重があります。 マストドンは成り立ちとして、SNSというもののあり方に対する問題意識からスタートしたOSSであり、設計の根底には開発者の思想があります。 マストドンのランディングページの最下部に特徴として列挙されている項目が、そうした思想の一端を表しています。 この「マストドンの特徴」の中に、トラッキングに関する言及があります。「広告もトラッキングもありません」という記述がそれです。 Pawooは家マストドンからフォークして実装されており、独自の機能を持ってこそいますが、家に対して変更を提案したり

    一筋縄ではいかない、Pawooとマストドンのデータ分析について - pixiv inside
  • 1