タグ

batchに関するopparaのブックマーク (10)

  • バッチ処理実装時に考慮すべき事項 | メルカリエンジニアリング

    はじめに メルペイバックエンドエンジニアの @r_yamaoka です。この記事は、Merpay Tech Openness Month 2022 の16日目の記事です。 私がつい最近まで所属していた加盟店管理業務を担うマイクロサービス群(以下、加盟店管理システム)では様々なバッチが稼働しています。記事ではそれらの実装において過去に発生したトラブルやヒヤリハットから得た知見を共有したいと思います。 背景 題に入る前に加盟店管理システムでどのような箇所にバッチ処理が採用されているかについて少し解説します。バッチ処理を採用するか否かの観点としては大きく下記2点があります。 機能要件上バッチ処理を採用しなければならない 非機能要件の都合で同期処理を採用できない 前者の例としては「配送業者との伝票情報連携」や「行政システムとの連携処理」というものがあり、これは連携先である配送業者や行政の業務の

    バッチ処理実装時に考慮すべき事項 | メルカリエンジニアリング
  • AWS Batchでシェルスクリプトを実行する典型的パターンのご紹介 | DevelopersIO

    去年のre:Invent 2016で発表された、AWS Batch。みなさん、お使いでしょうか? え、名前はシンプルなのに、案外むずかしい? であれば、自分とまったく同じ印象です。 今回は、AWS Batchを利用して、シェルスクリプトを実行するための典型的パターンをご紹介。シェルスクリプトからは、任意のスクリプト(Pythonとか、Node.js)も呼び出すことができ汎用性が高いので、AWS Batchにおけるアプリケーション処理の実装方式として、参考にしていただければと思います。 ほな、いってみよ! 構成図 今回構築する環境の概要は以下の通り。シェルは大きく2つに別れます。AWSの構成要素は非常にシンプルです。 myjob.sh ユーザーが作成するシェル。アプリケーション処理の体はこちらに記述し、事前に任意のS3バケットにアップロードしておく。 fetch_and_run.sh my

    AWS Batchでシェルスクリプトを実行する典型的パターンのご紹介 | DevelopersIO
  • AWS Batch に EFS をマウントした実行環境をマネジメントコンソールから構築する | DevelopersIO

    AWS Batch で EC2 スポットインスタンスを使い、コンテナには EFS をマウントし、環境を構築するのはマネジメントコンソールから作成して AWS Batch を実行するのに必要なコンポーネントを確認したい。そんなときにちょうど良い資料が見つからなくて困ったので自分で作りました。マネジメントコンソールから作成しても30分もあればジョブ実行テストできる状態になるかと思います。 ブログを見てできるもの AWS Batch + EFS の実行環境をマネジメントコンソールから構築します。 AWS Batch (EC2 Spot)・単一ノードで動作する実行環境 単一ノードは標準ジョブや、配列ジョブに対応、マルチノードの並列実行環境ではない方です AWS Batch に EFS マウント方法 テストジョブでコンテナに EFS がマウントされているか確認できる 前提 AWS Batch を起

    AWS Batch に EFS をマウントした実行環境をマネジメントコンソールから構築する | DevelopersIO
  • バッチ処理における冪等性の検討 ─ クラウドネイティブもしくは、はてなダイアリーの自動移行を題材に - Hatena Developer Blog

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

    バッチ処理における冪等性の検討 ─ クラウドネイティブもしくは、はてなダイアリーの自動移行を題材に - Hatena Developer Blog
  • 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 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
  • Goでバッチ登録するときのイディオム | フューチャー技術ブログ

    はじめにTIG DXユニット 1真野です。 個人利用など、ごく小さなサービスなどでない限り、複数件のレコードを一括でデータストア層へ登録する必要は出てくると思います。この時1件ずつループ処理で登録するのではなく、効率性などの観点で各データストアが提供する一括登録の仕組みを利用すると思います。 RDBであればバルク(Bulk Insert)とかバッチ(Batch Insert)の登録手段が存在すると思います。PostgreSQLであればCopy句で、OracleであればSQL*Loaderを使ってCSVを直接読み込ませる方法があります。 この記事ではCSVなどの一括登録ではなく、Batch Insertの実装について触れていきます。タイトルはバッチ登録ですがバッチ検索でもバッチ削除でも同じように役立つ内容かと思います。 バッチ登録を行う側で気をつけること例えばAWS DynamoDBであれば

    Goでバッチ登録するときのイディオム | フューチャー技術ブログ
  • AWS BatchがジョブレベルでEFSボリュームをサポートするようになっていました | DevelopersIO

    こんにちは。AWS事業部のKyoです。 AWS BatchがジョブレベルでEFSボリュームをサポートするようになっていました。 BatchでEFSを使うためには一手間が必要だったのでより簡単に使えるようになったというアップデートです。 AWS Batch now supports EFS volumes at the job level これまでとこれから、そして何がうれしいのか これまで EFS自体の利用は可能でした。一方で、マウントには起動テンプレートが必要でバッチインスタンス(EC2)レベルでのマウントが必要でした。具体的な方法は以下にあります。 これから ジョブ定義からEFSを指定することでマウントできるようになりました。マウントのための起動テンプレートは不要になります。 何がうれしいのか Batchのストレージに何を使うかは、扱うデータのサイズや求められる計算スピードなどを踏ま

    AWS BatchがジョブレベルでEFSボリュームをサポートするようになっていました | DevelopersIO
  • AWS Batch のジョブパターン (SEQUENTIAL, N_TO_N) の挙動を確認してみた | DevelopersIO

    結果 検証 1~4 、すべて仮説の通りでした。 現在 (2020/12/13) 、コンソールから SEQUENTIAL を実行するとうまく設定されないのか、順番通りに実行されません。 (ここで結構時間を費やしました。。) 一時的な不具合なのか、 AWS Batch でジョブフローを実行するのに、コンソールを使うことがあまりないために誰も気付かなかったのか、CLI や SDK を使わないとうまくできなそうです。。(CLI ver.2 では確認済み) 注意しましょう。 やってみた 前提 下記が構築済み。 [アップデート] AWS Batch がコンピューティング環境での Amazon Linux2 の利用をサポートしました | Developers.IO S3にファイルをアップロード ## csvファイル作成 echo -e 0 > count.csv CodeCommit に登録するスクリプ

    AWS Batch のジョブパターン (SEQUENTIAL, N_TO_N) の挙動を確認してみた | DevelopersIO
  • 初めてのAWS Batch – 必要な各コンポーネントを理解する – | DevelopersIO

    コンニチハ、千葉です。 AWS Batchを導入する機会があり、AWS Batchのコンポーネントを整理してみました。 AWS Batchとは? AWS Batch登場以前、バッチ処理でスケーラビリティをもたせようとすると以下のような構成案がありました。SQSを利用したpull型のバッチ処理です。 処理対象をSQSにキューイング EC2上にデプロイされたプログラムにより、キューを取得、処理、キューを削除 AutoScalingを設定し、キューの数によりスケールアウト、スケールイン この方式を利用する場合、SQS、AutoScaling、AMI(アプリをインストール)を設計・構築する必要があり各サービスを理解して使いこなす必要がありました。 この構成を簡単一発で利用できるようになるのがAWS Batchです。 AWS Batchでは、Dockerを利用したバッチ処理環境が構成できます。FIF

    初めてのAWS Batch – 必要な各コンポーネントを理解する – | DevelopersIO
  • 1