MicroAd Developers Blog

マイクロアドのエンジニアブログです。インフラ、開発、分析について発信していきます。

Python

Vertex AI Pipelinesを用いたMLバッチのディレクトリ設計

はじめに こんにちは。マイクロアドで機械学習エンジニアをしている大庭です。 マイクロアドの機械学習チームでは機械学習関連のバッチ実行に Vertex AI Pipelines というGoogle Cloud Platformが提供するマネージドのワークフロー実行サービスを利用してい…

【新卒エンジニア向け】マイクロアドエンジニアの技術スタック(バッチ開発ユニット編)

こんにちは! システム開発部BDU(BigData Development Unit)でアプリケーションエンジニアをしている高橋です。 主にマイクロアドが気になっている社外のエンジニアの方やマイクロアドの新入社員の方向けに、自分たちのユニットが使っている技術について共有…

データ基盤移行計画とPySpark(Spark Connect)の検証

マイクロアドでサーバサイドエンジニアをしているタカギです。 今回はデータ基盤移行とPySparkについての話になります。 目次 目次 データ基盤移行の概要 データ基盤移行後のバッチ処理 Spark Connectを導入する Spark Connectの問題点 まとめ 補足 データ基…

Dockerコンテナを使ったHiveクエリの自動テスト

こんにちは!マイクロアドでサーバーサイドエンジニアとしてバッチ開発を担当している根本 (id:realyutanemoto)です。 マイクロアドではHadoop分散ファイルシステム(以下、HDFSとする)にビッグデータを蓄積し、その加工処理(ETL処理)を行うバッチを作って…

redis-pyでRedis Clusterの全キーを取得する

はじめに こんにちは、マイクロアドでサーバーサイドエンジニアをしている高橋です。 主にDigdag1とPythonを使用したETL処理のバッチを開発しています。 今回はredis-pyというPythonライブラリを使ってRedis Clusterに登録されている全キーを取得する方法を…

PyCon JP 2022参加レポート

はじめに こんにちは、マイクロアドでサーバーサイドエンジニアをしている髙橋です。 2022年10月14日(金)~15日(土)の日程で開催された PyCon JP 2022 に初参加しました。 マイクロアドとPython 今までの技術ブログでも記事になっていますが、マイクロアドで…

Digdag REST APIによるバッチの並列実行数の制御

はじめに マイクロアドでサーバサイドエンジニアをしている高橋です。 今までの技術ブログでも記事になっていますが、マイクロアドでは主にDigdagとPythonを用いてデータ処理バッチを開発しています。 developers.microad.co.jp developers.microad.co.jp de…

Python の高速化

はじめに 機械学習エンジニアの大庭です。普段はマイクロアドが提供する広告配信プラットフォーム UNIVERSE Ads に接続する機械学習 API の研究開発をしています。 マイクロアドでは、機械学習モデルの学習側との連携が容易なこととメンテナンス性を重視して…

Pythonアプリから参照するデータをMySQLからBigQueryへ切り替える

はじめに マイクロアドでサーバサイドエンジニアをしているタカギです。 今回はPythonアプリから参照するデータをMySQLからBigQuery1へ切り替えた話になります。 背景 マイクロアドでは様々なデータを扱っています。 広告配信で発生するログはCDH2に蓄積およ…

Pythonのdigdagモジュールを利用してDigdagバッチの処理継続可能なエラーをハンドリングする

はじめに サーバサイドエンジニアの前西です。主にETL処理1のバッチ開発を行っています。 マイクロアドでは、データ処理バッチを主にDigdagとPythonで開発2しています。 今回は、マイクロアドで開発しているDigdagバッチでのエラー処理について、簡単に紹介…

最強のPython型チェッカーmypy

はじめまして!今年マイクロアドに入社してサーバーサイドエンジニアとしてバッチ開発を担当している根本( id:realyutanemoto )といいます! 今回は、マイクロアドのバッチ開発で利用している静的コード解析ツールのmypyについてのご紹介です。 はじめに バ…

RTBにおける落札額・落札確率予測

はじめに こんにちは、機械学習エンジニアの大庭です。昨年の4月に新卒でマイクロアドに入社し、現在はUNIVERSE Adsというプロダクトで入札アルゴリズムの研究開発および実装を担当させていただいてます。 この記事では、僕が現在検証している機械学習による…

Digdagバッチの基本設計とビルドの実例紹介

サーバサイドエンジニアの大澤です。主にETL処理のバッチ開発を行っています。 以前の記事で紹介していますが、マイクロアドではバッチ処理のワークフローを主にDigdagを使用して管理しています。 今回は、Digdagを1年以上使ってきてたどり着いた構成につい…

PythonでDataFrameを省メモリに縦横変換する

マイクロアドの京都研究所で機械学習エンジニアをしている田中です。 機械学習を利用したユーザーの行動予測の研究開発などを担当しています。 今回は、データの前処理に関するお話をしたいと思います。 データの縦横変換 縦横変換するためのpandasの関数 省…

2018年アドベントカレンダー完走

MicroAd Advent Calendar 2018 - Qiita 昨年から参加しているアドベントカレンダー(2017年はこちら)、今年も参加表明してくれたメンバーが頑張ってくれたおかげで完走することができました。年末の忙しい時期に時間を割いて投稿してくれた皆さんお疲れ様で…