並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 75件

新着順 人気順

batchの検索結果1 - 40 件 / 75件

batchに関するエントリは75件あります。 awsバッチバッチ処理 などが関連タグです。 人気エントリには 『1000万件オーバーのレコードのデータをカジュアルに扱うための心構え - joker1007’s diary』などがあります。
  • 1000万件オーバーのレコードのデータをカジュアルに扱うための心構え - joker1007’s diary

    自分が所属している会社のメンバーの教育用資料として、それなりの規模のデータを扱う時に前提として意識しておかなければいけないことをざっくりまとめたので、弊社特有の話は除外して公開用に整理してみました。 大規模データ処理、分散処理に慣れている人にとっては今更改めて言うことじゃないだろ、みたいな話ばかりだと思いますが、急激にデータスケールが増大してしまったりすると環境に開発者の意識が追い付かないこともあるかと思います。 そういったケースで参考にできるかもしれません。 弊社は基本的にAWSによって運用されているので、AWSを前提にした様なキーワードやサービス名が出てきます。後、句読点があったり無かったりしますが、ご容赦ください。 追記: 社内用の資料の編集なのでかなりハイコンテキストな内容だから誤解するかもしれませんが、これらはそもそもRDBの話ではありません。(関係無くは無いけど) 1000万オ

      1000万件オーバーのレコードのデータをカジュアルに扱うための心構え - joker1007’s diary
    • バッチ処理 プラクティス

      バッチ処理は既に先人の方々が多くのナレッジを公開してくれていますが、それでもなお難しさが変わらないテーマだと思っています。 この記事は、筆者がこれまでの開発経験で気づいたバッチ処理の実装ナレッジを整理し、体系化を目指して文章にしました。 ここでの内容が、より良い課題解決に貢献できれば幸いです。 自身の断片的な思考整理(メモ書き)の延長で内容を整理したため、一部書き振りが統一されておらず、読みにくいかもしれません。ご了承ください。🙏 バッチ処理の難しさバッチ処理は難しい。 人によっては簡単なテーマかもしれませんが、自分は難しいテーマだと思っています。 「難しさの根源は何か?」を考えると、1. 考慮点が多様にあること 2. 解決する課題によって答えが大きく変わること に整理できました。 この2点は、どのソフトウェア開発にも当てはまる項目ではありますが、ことバッチ処理においては顕著に現れます。

        バッチ処理 プラクティス
      • データ変更を伴うバッチ処理を書く時に考慮していること - shallowな暮らし

        こんにちは、id:shallow1729です。最近はインフラ寄りなお仕事をよくやっていますがこれまでにいくつかデータ移行やデータ基盤構築などのバッチ処理のお仕事をしてきました。以前にも一度そういった経験を元に記事を書いたのですが、MySQLやシステムに関する知識が以前よりも増えた今もう一度書き直したいなと思いました。 なので今回はバッチ処理を書く時のテクニック2022版という感じです。今の仕事の関係でMySQLやrailsを前提にしている話が多いですが、おそらく他のデータベースを使っている人にも役に立つ話が多いのではないかと思います。ただ、今回の記事は経験に基づくものが多く、あまりよくないアイデアもあるかもしれません。改善点や間違いなどあればご指摘ください。 冪等性を持つように 冪等性とは端的に言えばある操作を複数回実行しても一回しか実行しなかった時と同じ結果になる性質の事です。長時間かか

          データ変更を伴うバッチ処理を書く時に考慮していること - shallowな暮らし
        • 大公開!バッチアプリケーションの品質を高めるZOZOの『バッチ開発ガイドライン』 - ZOZO TECH BLOG

          こんにちは。MA部の田島です。 弊社では開発ガイドラインというものを用いて、システムの品質を担保しています。今回私がテックリードを務めているということもあり、バッチアプリケーションを開発するためのガイドラインを作成しました。本記事では「開発ガイドライン」と「バッチ開発ガイドライン」を紹介します。 バッチアプリケーション開発に限定したTipsはまとまっているものが多くないため参考にしていただければと思います。 開発ガイドラインについての紹介 冒頭でも紹介した通り弊社では、開発ガイドラインというものを用いてシステムの品質を担保しています。バッチ開発ガイドラインを紹介する前に、まず開発ガイドラインを紹介します。 開発ガイドラインの種類 開発ガイドラインは現在、以下の種類が存在します。 共通 Android iOS Frontend Backend Infra API Batch DB(Datab

            大公開!バッチアプリケーションの品質を高めるZOZOの『バッチ開発ガイドライン』 - ZOZO TECH BLOG
          • バッチ処理について考える - Qiita

            TL;DR ひとくちにバッチといっても色々ある 夜間バッチをもう作るな オンラインバッチはSQL以前にDB設計がんばれ はじめに Twitterのタイムラインで以下のようなツイートが回ってきました。 バッチ処理をみんな舐めてかかったり、ショボイとか思ってる人多い印象なんだけれども、数十万~数千万件規模のデータを処理したことあるのかな。テンプレ通りのコードじゃ動かないよ?ネットに本にも答え載ってないよ?低レイヤも意識しないと動かないよ? 2020年1月10日 ツイートされたわだっしーさんの意図がどこにあるかは確認してないですが、極限の世界でテンプレート的な処理では対応出来ないのはあるよな、と思いつつもある程度はバッチの作法としての書き方があると思っています。 このツイートとその関連ツイートを読みながら、そういえばバッチ処理に関して書いてある記事はあまり見ないなぁ、とおもったので他のネットや本

              バッチ処理について考える - Qiita
            • AWSでバッチ処理を実装する際の選択肢とサービス比較

              処理が複雑でジョブの依存関係を定義したい場合は、AWS Batch 単体で制御するか、より複雑な場合は Step Functions を用いて Lambda、ECS(Fargate)、AWS Batch(Fargate) を組み合わせる。 AWSにおけるバッチ処理の選択肢 ざっくりとした選択肢は下記。 Lambda ECS(Fargate) AWS Batch(Fargate) これらのサービスに実際は SQS や Step Functions を組み合わせることもあるので選択肢はさらに広がる。 ちなみに、SQS + Fargate(常時起動でポーリング) という構成や、SQS + Lambda + Fargate(都度実行) という構成は、AWS Batch が Fargate に対応した現在は特にメリットがないので取り扱わない。 2021/5/2 追記 「常時リクエストがくるユースケー

                AWSでバッチ処理を実装する際の選択肢とサービス比較
              • 66分かかる同期処理を10分以内に短縮せよ!~商品情報同期システムでの、処理速度と運用の改善~ - MonotaRO Tech Blog

                はじめに この記事では、モノタロウの基幹系を構成するシステムの一つである、商品情報管理システム(PIM:Product Information Management システム)の導入プロジェクトで、商品情報を基幹系と同期するシステム(商品情報同期機能)の性能や運用環境の改善を行った話をご紹介します。 背景 モノタロウの基幹系は、長年内製のシステムで支えられてきました。基幹系のシステムは、少数のWebアプリケーションと多数のバッチから構成されています。中でも商品情報の管理に関するシステムは、在庫や仕入先に関するシステムと一体化していて、商品情報に関する数多くのマスタメンテナンス画面を備えたやや複雑なシステムです(図1)。 図1 基幹系の概略図 当社のシステムは、もともと自分たちのビジネスに必要な機能を提供する手頃なパッケージ製品がなかったため、すべてを内製でまかなってきたという経緯があります

                  66分かかる同期処理を10分以内に短縮せよ!~商品情報同期システムでの、処理速度と運用の改善~ - MonotaRO Tech Blog
                • レガシーとの向き合い方 〜cron から Rundeck へ〜 - DMM inside

                  |DMM inside

                    レガシーとの向き合い方 〜cron から Rundeck へ〜 - DMM inside
                  • AWS でバッチ処理・定期実行する4つの方法

                    4つのバッチ処理・定期実行方式の詳細情報それぞれのバッチ処理・定期実行方式について詳細を見ていきます。 EC2について使用するAWSサービスEC2 処理概要Linux系OSで用いられる定時実行機能であるcronのコマンドを使用する メリット昔からよく使われているcronの知識が使える デメリットEC2インスタンスを起動しておく必要があり、使っていない時間もコストがかかる 障害に弱い。EC2サーバに障害があると終わる サーバが複数になると管理が大変 SQS×ECS使用するAWSサービスEventBridge SQS ECS 処理概要EventBridgeでキューを生成。ECSコンテナでキューを取得して実行する メリットECSを起動しておくため、コンテナの起動時間を要さない。 デメリットEventBridgeでキューを生成するが、EventBridgeはまれに1 つのイベントに対して複数回トリ

                      AWS でバッチ処理・定期実行する4つの方法
                    • バッチシステムをクラウドネイティブにするために考えたこと

                      Cloud Native Days Tokyo 2022 Session: https://event.cloudnativedays.jp/cndt2022/talks/1518

                        バッチシステムをクラウドネイティブにするために考えたこと
                      • Pythonでいい感じにバッチを作ってみる - prefectをはじめよう - JX通信社エンジニアブログ

                        JX通信社シニア・エンジニアで, プロダクトチームのデータ活用とデータサイエンスのあれこれ頑張ってるマン, @shinyorke(しんよーく)です. 最近ハマってるかつ毎朝の日課は「リングフィットアドベンチャー*1で汗を流してからの朝食」です. 35日連続続いています. 話は遡ること今年の7月末になりますが, JX通信社のデータ基盤の紹介&「ETLとかバッチってどのFW/ライブラリ使えばいいのさ🤔」というクエスチョンに応えるため, このようなエントリーを公開しました. tech.jxpress.net このエントリー, 多くの方から反響をいただき執筆してよかったです, 読んでくださった方ありがとうございます! まだお読みでない方はこのエントリーを読み進める前に流して読んでもらえると良いかも知れません. 上記のエントリーの最後で, 次はprefect編で会いましょう. という挨拶で締めさせ

                          Pythonでいい感じにバッチを作ってみる - prefectをはじめよう - JX通信社エンジニアブログ
                        • AWSサーバーレスバッチ処理アーキテクチャの構築 | Amazon Web Services

                          Amazon Web Services ブログ AWSサーバーレスバッチ処理アーキテクチャの構築 この投稿は、AWSソリューションアーキテクトであるReagan RosarioとWWPSソリューションアーキテクトであるMark Curtisによって書かれました。バッチ処理は多くの組織にとって基礎となるもので、大量の情報を効率的に自動化した形で処理することができます。ユースケースとしては、ファイル取り込み処理、キューベースの処理、トランザクションジョブ、さらに重いデータ処理のジョブなど、多岐にわたります。 この記事では、ファイル取り込み処理を実装するためのバッチ処理を、サーバーレスに実現するための方法を説明していきます。今回の例では、オーケストレーションにAWS Step Functions、オンデマンドのコンピューティングにAWS Lambda、データストアにAmazon S3、メールの送

                            AWSサーバーレスバッチ処理アーキテクチャの構築 | Amazon Web Services
                          • 【AWS】大規模なバッチ処理を支える技術選定

                            ここから、表で挙げた内容をそれぞれ解説していきます。 構築難度に関しては、関数を実装するだけで済むLambdaが最も簡単で、バッチ専用に特化されたサービスであるBatchに関しては比較的バッチ構築はしやすい印象ですが、ECSに関してはバッチに特化していないため、バッチ処理を行うようにカスタマイズする必要があります。 タイムアウト制約に関して留意すべきは、Lambdaの実行時間は15分までなので、それ以上を超える処理時間のバッチは実装できないことです。 起動•実行上のオーバーヘッドに関しては、Lambdaにはコールドスタートがあるため起動時にオーバーヘッドを考える必要があり、Batchではジョブをキューに送信して、最適化のために、ある程度のジョブがキューイングしてから実行しようするので、即時性を求める処理には不向きです。 既存バッチを移行したいケースがあると思いますが、Lambdaで動かせる

                              【AWS】大規模なバッチ処理を支える技術選定
                            • Fargateの運用 ~デプロイ自動化や監視等~

                              初めてFargateを触ったので、運用保守の観点で構築時に設定しておいた方が良いポイントをまとめました。 デプロイの自動化と書いているのにデプロイの話薄めになってしまいました…。 こちらはJAWS-UG朝会 #28で発表したものになります。

                                Fargateの運用 ~デプロイ自動化や監視等~
                              • AWS Batch ベストプラクティスまとめ | Amazon Web Services

                                Amazon Web Services ブログ AWS Batch ベストプラクティスまとめ この記事はプリンシパル HPC ソリューションアーキテクトの Pierre-Yves Aquilanti、AWS Batch のプリンシパルプロダクトマネージャの Steve Kendrex とプリンシパル HPC アプリケーションエンジニアの Matt Koop によるものです。 更新: 2021 年 10 月 5 日 セクション 2 に於けるサブネット CIDR ブロックのガイドラインを修正。 AWS Batch は、科学者や技術者が複雑なシステム構成を管理する必要なく、自由にスケールできる計算環境を提供するサービスです。2017 年に登場して以来、疫学、ゲームシミュレーション、大規模機械学習といった諸々のワークロードを稼動させる様々な業種や組織といったお客様に採用されてきました。 この投稿で

                                  AWS Batch ベストプラクティスまとめ | Amazon Web Services
                                • EC2とcronで動いていたバッチ基盤をマネージド化した - Uzabase for Engineers

                                  概要 ソーシャル経済メディア「NewsPicks」SREチームの中川です。 皆さんはバッチ処理基盤はどうされていますでしょうか。 NewsPicks では少し前まではそれらをEC2、cronの組み合わせで動作させていました。 何年も前からこの仕組みだったのですがSREとしてはEC2の面倒見るのも手間ですし、それ以上にcronを変更する際のオペレーションミスが目立ったのが懸念点でした。 その為、まずはAWSマネージド化するための基盤を整備し、その後バッチアプリを載せ替えていくようにしました。 対応前の基盤構成 同じSREチームの安藤さんが CloudNative Days Tokyo 2023 で登壇されたときの資料をお借りします。 ご覧の通り、大体のサービスはマネージド化していましたがバッチ基盤だけは旧来のままEC2インスタンスを利用していました。 10年モノのサービスのインフラを漸進的

                                    EC2とcronで動いていたバッチ基盤をマネージド化した - Uzabase for Engineers
                                  • AWSサービスで実現するバッチ実行環境のコンテナ/サーバレス化/ Container service of batch execution environment realized by AWS service

                                    AWS DevDay Tokyo 2019での発表資料です

                                      AWSサービスで実現するバッチ実行環境のコンテナ/サーバレス化/ Container service of batch execution environment realized by AWS service
                                    • 冪等なデータ処理ジョブを書く - クックパッド開発者ブログ

                                      こんにちは、マーケティングサポート事業部データインテリジェンスグループの井上寛之(@inohiro)です。普段はマーケティングに使われるプライベートDMP(データマネジメントプラットフォーム)の開発を行っています。本稿では、その過程で得られた冪等なデータ処理ジョブの書き方に関する工夫を紹介したいと思います。今回は、RDBMS上で SQL によるデータ処理を前提に紹介しますが、この考え方は他の言語や環境におけるデータ処理についても応用できるはずです。 まずクックパッドのDMPと、冪等なジョブについて簡単に説明し、ジョブを冪等にするポイントを挙げます。また、SQL バッチジョブフレームワークである bricolage を使った、冪等なジョブの実装例を示します。 クックパッドのDMPと冪等なジョブ クックパッドのプライベートDMPは、データウェアハウス(社内の巨大な分析用データベースで、クックパ

                                        冪等なデータ処理ジョブを書く - クックパッド開発者ブログ
                                      • ECS Fargate 楽々構築テンプレート|Dentsu Digital Tech Blog

                                        この記事は電通デジタルアドベントカレンダー2020の22日目の記事になります。前回の記事は「ADH APIを効率的に呼び出すために開発したHooksの紹介」でした。 改めましてこんにちは! Docker使ってますか? AWSでDockerを使おうと思うと以下の3つの選択肢があります。 ・Elastic Container Service ・Elastic Kubernetes Service ・EC2に構築する この中でもECSいいですよね、僕も好きです。運用に手間もかからなくて気軽に使えるところに好感もてます。さすがAWSのマネージドサービス。 ただし実際にECSで構築しようとすると周辺のリソースが色々と必要になるので初心者にとってハードルが高く見えるのも事実です。そんなわけで初心者にも使えるようなテンプレートを提供したいと思います。 このテンプレートでは最低限の機能しか提供しません。何

                                          ECS Fargate 楽々構築テンプレート|Dentsu Digital Tech Blog
                                        • LINEの新しいセルフサービス型バッチデータ収集システム「Frey」の導入

                                          こんにちは、Data Platform室Data Engineering 1チームの徐です。 Data Platform室では、大規模なHadoopクラスタを運用し、データ収集、分析、活用するためのプラットフォームを提供しています。Data Engineering 1チームのミッションの一つは、様々なストレージからのdata ingestionシステムを構築、運用することです。 本記事では、バッチ処理でデータ収集を行うシステムの概要を説明した後に、LINEのセルフサービスツールであるFreyをご紹介します。 課題: このシステムでもデータ収集のバッチ処理を実行・管理するという目的は果たせましたし、ユーザーとタスクの規模が小〜中程度であれば問題はありませんでした。しかし、LINEの全てのプロダクトまでスコープを広げるにつれ、次のような問題に躓くことが増えていきました。 コード記述(ステップ1

                                            LINEの新しいセルフサービス型バッチデータ収集システム「Frey」の導入
                                          • バッチ処理のスケジューリングパターン

                                            この記事はこの記事は Google Cloud Japan Customer Engineer Advent Calendar 2019 の 12日目の記事です。 はじめにGoogle Cloud Platform (GCP) でバッチ処理を起動するための以下のパターンについてご紹介したいと思います。以下、8パターンあげてみました。とはいえ、最後の3つは GCP のバッチスケジューリングという観点からは少し外れますが、バッチの起動時に使われるということでご容赦を。 Cloud Scheduler : フルマネージドな cron ジョブスケジューラです。フルマネージドという点が非常に大きなメリットであり、多くの処理を自動化し実行することが可能です。Google App Engine cron サービス : HTTP GET を利用して、特定の URLを呼び出します。Google AppEng

                                              バッチ処理のスケジューリングパターン
                                            • バッチ処理における冪等性の検討 ─ クラウドネイティブもしくは、はてなダイアリーの自動移行を題材に - Hatena Developer Blog

                                              アプリケーションエンジニアのid:tkzwtksです。今回はバッチ処理の冪等性(べきとうせい、idempotence)について、どう考えるか/考えてきたかをご紹介します。 このエントリを書くきっかけとなったのは、はてなエンジニア有志で定期的に開催しているCloudNative推進会です。ここでは、社内のシステムをクラウドネイティブにしていくため「クラウドネイティブなシステムとはどういうものか?」を考えており、この会での「クラウドネイティブなバッチ処理」の議論も踏まえつつ説明していきます。 バッチ処理における冪等性とは メッセージ送信の信頼性を考慮する クラウドネイティブで可用性を高めるために どのような場合に冪等性を考慮すべきか 冪等な実装における3つのケーススタディ ケース1: n分前までに更新されたレコードを集計する ケース2: DB上の対象レコードを更新する ケース3: 対象ユーザー

                                                バッチ処理における冪等性の検討 ─ クラウドネイティブもしくは、はてなダイアリーの自動移行を題材に - Hatena Developer Blog
                                              • dron: クラウドネイティブなcron代替の紹介 - Classi開発者ブログ

                                                みなさん、こんにちはこんばんは。Classiの基盤バックエンドチームでプロダクトや機能を越えてサーバサイドを中心に困り事を手広く解決する仕事をしているid:aerealです。 今回の記事ではClassiのパフォーマンス改善のため取り組んでいるdronと呼ばれるクラウドネイティブなcron代替 (Cloud Native Cron Alternative) の開発について、運用を見据えてどのような考慮を重ねたのかを紹介します。 背景と課題 現行のワークロード 課題 DBにやさしくない スケールアウトの困難なアーキテクチャ 方針 設計 コンポーネント概説 Facade Job Executor Job Scheduler Endpoint Data Job Data Job Reservation Worker Kicker Worker Endpoint 運用時の考慮事項 追跡・トレーシング

                                                  dron: クラウドネイティブなcron代替の紹介 - Classi開発者ブログ
                                                • 入門Kueue 〜KubernetesのBatchワークロード最前線〜 | gihyo.jp

                                                  こんにちは、CyberAgentの岩井佑樹(@tenzen-y)です。連載「5分でわかる!Kubernetes/CloudNative」の第3回では、Kubernetes上でのBatchワークロードの扱いに触れた後、Kubernetes NativeなJob Queueing基盤を実現するためのOSSである、Kueueについて紹介します。また本記事で紹介するKueueは、記事執筆時点の最新バージョンであるv0.2.1です。 KubernetesとBatchワークロード Kubernetesではこれまで標準機能として、ロードバランシングやローリングアップデートなどのServiceワークロードのための機能や、Container Storage Interface(CSI)、Container Object Storage Interface(COSI)、Storage Capacity Tra

                                                    入門Kueue 〜KubernetesのBatchワークロード最前線〜 | gihyo.jp
                                                  • 広告配信を支えるバッチ基盤をサーバーレス移行した話(ECS Fargate, Step Functions)@ Serverless Meetup Tokyo #16

                                                    Zucks inc. (VOYAGE GROUP inc.) https://serverless.connpass.com/event/165352/ https://youtu.be/dSoIQhobDb8?t=8021

                                                      広告配信を支えるバッチ基盤をサーバーレス移行した話(ECS Fargate, Step Functions)@ Serverless Meetup Tokyo #16
                                                    • 次世代のワークフロー管理ツールPrefectでMLワークフローを構築する CyberAgent Developers Blog | サイバーエージェント デベロッパーズブログ

                                                      ※ DynalystではAWSを全面的に採用しているため、AirflowもManaged版を調査しています。 導入後の状態 Prefect導入後は、以下の構成となりました。 ポイントは以下の点です。 ワークフローをDocker Image化することで、開発・本番環境の差を軽減 staging・productionはECS Taskとしてワークフローを実行、開発ではローカルPC上でコンテナ実行 ML基盤のGitHubレポジトリへのマージで、最新ワークフローが管理画面であるPrefect Cloudへデプロイ 従来のyamlベースのdigdagから、DSに馴染み深いPythonベースのPrefectに移行したことで、コード量が減り開発負荷が軽減しました。 Prefect 入門 ~ 基礎 ~ 注意: 本記事ではPrefect 1系を扱います。Prefect 2系が2022年7月にリリースされてい

                                                        次世代のワークフロー管理ツールPrefectでMLワークフローを構築する CyberAgent Developers Blog | サイバーエージェント デベロッパーズブログ
                                                      • 形態素解析を行うだけのバッチをつくる - クックパッド開発者ブログ

                                                        研究開発部の原島です。今日は表題の渋いバッチをつくった話をします。 あっちでも形態素解析、こっちでも形態素解析 みなさん、形態素解析してますか?してますよね?クックパッドでもさまざまなプロジェクトで形態素解析をしています。 いや、むしろ、しすぎです。プロジェクト A でレシピを解析し、プロジェクト B でもレシピを解析し、プロジェクト C でもレシピを解析し、... といった具合です。ちなみに、形態素解析(の結果)が必要なプロジェクトとしてはレシピの分類やレコメンド、各種分散表現(e.g., word2vec)や BERT の学習などがあります。 もちろん、最終的に得たい解析結果が違うのであれば問題ありません。しかし、私が見たかぎり、ほとんどの場合は同じ(もしくは、同じにできそう)でした。であれば、 解析器をインストール(→ Dockerfile を試行錯誤) 解析対象を取得(→ SQL

                                                          形態素解析を行うだけのバッチをつくる - クックパッド開発者ブログ
                                                        • AWS GlueからAWS Batchにしたことで費用を75%削減した - Classi開発者ブログ

                                                          こんにちは、最近データエンジニア業を多くやっているデータサイエンティストの白瀧です。 これまでClassiのデータ基盤は、Reverse ETLをしたり監視システムを導入したりとさまざまな進化をしてきました。しかし、Classiプロダクトが発展するとともにデータ量が増加し、これまでのデータ基盤では耐えられない状態に近づいてきました。 そこでデータ基盤の一部(DBからのExportを担う部分)のリアーキテクチャを実施したので、この記事で紹介したいと思います。 概要 Classiのデータ基盤では、Amazon RDSからAmazon S3へJSONで出力し、その後GCS→BigQueryという流れでデータを送り、BigQueryからもBIツールやReverse ETLなどで使っています。詳細は、Classiのデータ分析基盤であるソクラテスの紹介 - Classi開発者ブログを参照してください。

                                                            AWS GlueからAWS Batchにしたことで費用を75%削減した - Classi開発者ブログ
                                                          • Cron→Rundeckに乗り換えた話 - MonotaRO Tech Blog

                                                            こんにちは。MonotaROで商品管理や受発注システムの開発を担当している中尾です。 この度、これまでcronで実行していたジョブに対してRundeckを導入し、ジョブのスケジュール管理を効率化することができましたので、導入にあたって苦労した点とその解消方法を中心に紹介いたします。 Rundeck導入の背景 Cronの限界を感じた 過去にも導入しようとしたが・・・ Rundeck導入において苦労した点 Rundeckが落ちた場合の対応の検討 GitでのRundeckジョブのバージョン管理 導入してよかったこと 複数のサーバーに跨ってジョブフローが組めること Cron式が使えること 重複起動制御ができること まとめ Rundeck導入の背景 Cronの限界を感じた MonotaROでは「注文を倉庫に連携する」、「商品の発注を自動で行う」といった様々なバッチ処理が、細かいものも含めると1日数千

                                                              Cron→Rundeckに乗り換えた話 - MonotaRO Tech Blog
                                                            • 入社4ヶ月目で73時間かかるバッチ処理を7倍以上高速化した話 - エムスリーテックブログ

                                                              こんにちは。エンジニアリンググループの武井です。 私は現在、デジカルチームに所属し、クラウド電子カルテ、エムスリーデジカルの開発に携わっています。 昨年夏にエムスリーに入社し、早くも半年が経過しました。 digikar.co.jp この記事では、私が入社してから4ヶ月目に取り組んだ、バッチ処理の運用改善について振り返ります。 特に、新しくチームに加わったメンバーとして意識した点に焦点を当ててみたいと思います。 これから新しいチームに参加する方の参考になれば幸いです。 改善したバッチ 現状の正確な理解 現状に馴染む技術選定 自分なりの+αを加える 改善の結果 We're hiring 改善したバッチ 今回の改善対象は、特定の医療機関に紐づく全患者の全カルテをPDFファイルとして出力する、というバッチです。 デジカルのデータを医療機関側にエクスポートする用途で使われています。 移行前のアーキテ

                                                                入社4ヶ月目で73時間かかるバッチ処理を7倍以上高速化した話 - エムスリーテックブログ
                                                              • Kubernetes (EKS) で構築する
スケーラブルなジョブ実行基盤

                                                                GoのWebプロダクトに途中参加するときのキャッチアップ #layerxgo / How to catch up Go web product

                                                                  Kubernetes (EKS) で構築する
スケーラブルなジョブ実行基盤
                                                                • Amazon LinuxのEOLに伴いバッチをサーバレス化しFargateに移行した話 - クラウドワークス エンジニアブログ

                                                                  はじめまして、2020年3月に中途入社したSREチームの @bayashiok です。 今回は入社後、Fargateでサーバレスバッチ基盤を構築した話を書いていきます。 目次 目次 経緯 Fargateを選んだ理由 1. リソースの見積もりがCPU/Memoryだけですむ 2.スケーリングを考えなくて良くなる 3. セキュリティレベルの向上につながり管理負荷が減る 現行システムで発生している問題点の解消 構成 FargateのトリガーとしてRundeckを採用 理由1: バッチ実行が行われる場所でログを見たかった 理由2: ジョブ失敗やSlack通知の仕組み、リトライ方法やジョブ連携などの作り込みを簡単にしたかった ecs-taskとの連携について デプロイ 1. wrapperコンテナのデプロイ 2. バッチのデプロイ Fargateタスク実行について 移行後の総括 よかった点 悪かった

                                                                    Amazon LinuxのEOLに伴いバッチをサーバレス化しFargateに移行した話 - クラウドワークス エンジニアブログ
                                                                  • たくさんのオンプレサービスをひたすらクラウドに移して得られた知見まとめ - エムスリーテックブログ

                                                                    こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 本記事はエムスリー Advent Calendar 2020 の8日目の記事です。 この記事とかこの記事とかこの記事で 書いているように、弊社ではオンプレ環境で稼動するサービスのAWSやGCPへの移行が進行中で、 ここ数ヶ月でクラウド移行作業が自分の業務の9割を占めています。 いろんなサービスのクラウド移行(主にECS Fargate)をやってきて知見が貯まってきたので一旦まとめてみます。 当初は何を考慮しなければいけないのかもよく分かっていませんでしたが、数をこなした結果、気をつけるポイントが分かってきました。 Docker化してECS Fargateで動かすのが目標ですが、GCPでk8sでも基本的に考える点は共通だと思います。 秩父ミューズパークは、埼玉県秩父市および秩父郡小鹿野町にまたがる地域にある

                                                                      たくさんのオンプレサービスをひたすらクラウドに移して得られた知見まとめ - エムスリーテックブログ
                                                                    • 定時バッチをECS scheduled task + ecscheduleでお手軽管理する - BOOK☆WALKER inside

                                                                      メディアサービス開発部モバイルアプリケーション開発課のtukiyo(id: tukiyo320)です。現在はニコニコ漫画のバックエンド開発を担当しています。 本記事では、Webサービスに付き物の定時バッチについて、ニコニコ漫画では現在どのような方針で管理・実行しているかをご紹介します。 ニコニコ漫画の構成おさらい 以下の記事に詳しいですが、ニコニコ漫画のバックエンドは4系統存在しています。どれも現在はAWS上に乗っており、PHPの現行システム以外はECS(fargate)で管理されています。 現行PHP(独自フレームワーク) 新バックエンド(Ruby on Rails) React向けBFF(Nest.js) 課金サブシステム(Ruby on Rails) developers.bookwalker.jp 本記事で扱うのは、ロジックの書き直しを目的とした新バックエンドが持つバッチとなります

                                                                        定時バッチをECS scheduled task + ecscheduleでお手軽管理する - BOOK☆WALKER inside
                                                                      • Data validation for machine learning 読んだ

                                                                        Breck, Eric, et al. "Data validation for machine learning." Conference on Systems and Machine Learning (SysML). https://mlsys.org/Conferences/2019/doc/2019/167.pdf . 2019. 読み手のコンテキスト現職で機械学習予測モデルをプロダクトに投入する様になって3年程経った。そうもなると開発時に想定していた訓練データの分布と現状の分布が乖離して、予測の動作不良を引き起すケースがしばしば見られる様になった。明らかな予測の不具合として目立っていなくとも性能が落ちている部分はもっとあるはずで、これに早く気づいて対応したいモチベーションがある。かつ運用専任メンバーはいないので、できるだけ運用は手を抜きたい。概要著者らはData Validat

                                                                          Data validation for machine learning 読んだ
                                                                        • MLOpsに必要な情報全部BigQueryに置いたら想像以上に捗った話 - Qiita

                                                                          本記事はMLOps Advent Calendar 2020の13日目の記事です。 こんにちは。昨年本番環境のComposerでやらかしちゃった人です。今年は比較的平穏に機械学習を使用したサービス開発・運用に携われています。 携わっているサービスの1つで「MLOpsに必要な情報BigQueryに全部おいてみた」ところ想像以上に便利だったので、その方法について共有させてい頂ければと思います。 なお本記事でのMLOpsは 予測モデル/ハイパーパラメータのバージョン管理・デプロイ履歴管理 推論結果の精度監視 + 入力データの傾向監視 を指しています。 特に今年はコロナでビジネス環境が日々絶えず変化しているため、これらの施策がサービス品質担保に大きく貢献してくれました。 背景 毎日一回24時間先までバッチで未来予測し、結果をAPIサーバーにキャッシュする単純なMLサービスに携わっています。なお、予

                                                                            MLOpsに必要な情報全部BigQueryに置いたら想像以上に捗った話 - Qiita
                                                                          • GitHub Actionsを使って、個人タスク用のissueを毎日作成する - よしたく blog

                                                                            GitHub の issue で個人的なタスクを管理する方法を知った。 プログラマではないので普段から GitHub を使うことはないのだけれども、タスクの管理場所に迷っていたのでひとまず手を出してみようと思う。 毎日issueを作成するのも大変で、少しでもハードルを下げることを意識してGitHub Actionsで毎日自動的に作成するようにしてみた。 今回はその実現方法を記しておく。 issueのテンプレートを作成する まずはissueを作成するためのテンプレートを作成する。 これから始めるのでまずはシンプルなものを作成し、今後必要があればカスタマイズする方向で進める。 今回はworkリポジトリを作成し、配下に.github/ISSUE_TEMPLATE/todolist.mdを作成した。 --- name: TODO リスト about: 今日終わらせることの終了済み状態を書こう ti

                                                                              GitHub Actionsを使って、個人タスク用のissueを毎日作成する - よしたく blog
                                                                            • AWS Batch, Lambda, ECS Task 比較:バッチやジョブにはどれを使う? - Tech Blog

                                                                              CTOの椎名です。最近弊社では家族アプリFammの印刷・配送・通知など様々な処理を使うために AWS Lambda と AWS Batch を使う量が増えてきて、ECS Fargate も徐々に導入をはじめてきました。 Lambda も Batch も ECS Task も、何かのジョブを単発/定期でサーバー無しで実行するための手段として似ているところがあります。何かのバッチ/ジョブを作る時に「これはLambdaで作るべきか?Batchで作るべきか?」などで迷う事もあります。もちろん製品名の通り「バッチならAWS Batch」と言う考え方もありますが、AWS Batchではオーバーキルな時もあれば、かゆいところに手が届かない時もあります。 今回はこれらの特徴やメリット/デメリットの比較をまとめます。 AWS Lambda 簡単に言うと「コードだけアップロードして実行トリガーを決めればその通

                                                                                AWS Batch, Lambda, ECS Task 比較:バッチやジョブにはどれを使う? - Tech Blog
                                                                              • 転職会議から冪等でないバッチ処理を根絶した話 - LIVESENSE ENGINEER BLOG

                                                                                こんにちは、かたいなかです。 最近転職会議のバッチ処理をすべて冪等にし、処理失敗時に気軽に再実行できるようにすることで運用性を向上させました。 今回の記事ではその取り組みを紹介します。 再実行すると重複送信につながるメール送信バッチ もともと、転職会議では一部のバッチ処理を除いてほとんどのバッチ処理が冪等に作られていました。しかし、残りの冪等ではないバッチ処理では、失敗するたびに毎回アドホックな対応をする必要があり運用性に課題を抱えていました 残っていたもので一番大きな問題を抱えていたのがメール送信バッチです。これは、以下の図のようなアーキテクチャで動いており、ワーカーにメールを送信するように指示するメッセージをSQSにキューイングする処理を行うものです。 このメール送信バッチのキューイング処理が途中で失敗した際に、雑に再実行してしまうと同一のユーザに重複してメールが送信されてしまう事にな

                                                                                  転職会議から冪等でないバッチ処理を根絶した話 - LIVESENSE ENGINEER BLOG
                                                                                • 1秒動画のつくり方 ― 「家族アルバム みてね」における動画エンコードパイプラインとその最適化事例 | gihyo.jp

                                                                                  なお上記の「大量配信」とは、「⁠1~3月分の四季版を4月15日から配信開始し、1週間で全家族に配信完了する」などのように、「⁠新しい期間の1秒動画をはじめて配信してから、その時点で条件を満たす全家族への配信が完了するまで」の期間を指します。1秒動画の生成・配信の大部分はこの大量配信期間に行っていることから、これを「大量配信」と呼んでいます。 生成⁠・配信の流れ 1秒動画の生成・配信は、図1のとおり(1)対象家族抽出、(2)素材選択、(3)動画エンコード、(4)配信、の4段階で実現しています。以下ではその詳細を説明します。 図1 1秒動画の生成・配信の流れ (1)対象家族抽出 1秒動画の生成・配信処理は、基本的にはバッチ処理として毎日実行しています。そのはじめに行うのは、「⁠その日、どの家族に、どのバージョン・どの期間の1秒動画を生成・配信するか」を取り出す対象家族抽出です。この処理は四季版

                                                                                    1秒動画のつくり方 ― 「家族アルバム みてね」における動画エンコードパイプラインとその最適化事例 | gihyo.jp

                                                                                  新着記事