午前4時、ひっそりとした時間にはじめること

2025年05月30日

私のRyzenマシンの空調ファンがうねりをあげている。空冷式であり、かつでかいファンが4つもついている。CPU温度が50度近くを保っているので、冷却効果がなければもっと高いのであろう。いつからかCPUはコア数をあげることであげるようになってきた。さらにCPUだけでなく、グラフィックを担うGPUの高性能化、高速化がゲームや映像を中心とした世界を牽引している。

ゴールデンウイーク中からはじめた法人データ550万件に対しての緯度経度付与のバッチは、いよいよ西へ。いま広島県を処理しています。

膨大な量のデータに対して、処理を行うためには、いくつか考えなければならないことがある。

まず、1度に取り扱う処理対象件数。まさか550万件のループとかできるメモリ量があるマシンで処理できればそれでもよいが、処理始まるまでにどんだけ無駄時間かかるのか。現実的には、サーバ側で処理する場合のメモリ量をどれだけ確保して実行するのかというところでもある。

今どきは自分のマシンは64GBメモリであるが、この処理を行うサーバ側のメモリは4GBです。

そのうえ、PHP+Laravelのバッチとしてつくられていて、制限として512MBというリミッターをつけてあったので、このバッチをを実行する時には、オプションでより大きなメモリ量をプロセスが使いますよと要求するようにしている。そのサイズは3倍の1.5GB。

対象を抽出して処理をするときには、すでに処理したものは対象外にしたうえで、1度の処理件数は10万件としている。さらにそれをチャンクで分割している。

オプションで、都道府県も指定できるようになっているので、バッチが終了したときには、次の実行は、その終了している都道府県を再度実行することで、開始までの時間短縮を見込んでいる。また、これはその都道府県の処理残りがないことも判定できる。

緯度経度がふられていないものを対象に処理するので、あたまから再度やると、毎回ふられていない法人に対して、緯度経度が取得できないとなる。ここは、処理しないようにというTODO。

これとは、別に、鉄道路線の駅に対しての都道府県判定と緯度経度をふるというバッチも動いている。この話は、また別な機会に。

なんなんだ。バッチ屋か。

最新のお知らせ

No Image
2025年11月27日
プログラミングにおけるAIの優位性と人間のだめなところ

プログラミングにおけるAIの優位性と人間のだめなところを...

thumb
2025年11月25日
JAZZを聴きながら

https://open.spotify.com/intl-ja/track/2UiXRej8Fdcc04DFL60...

thumb
2025年11月25日
GTSFエディタの開発

GTSFというのは、弾き語りをするときの楽譜を生成するためのテ...

thumb
2025年11月23日
人生史をヒヤリングするAIアプリケーション

手帳學プロジェクトの中で、人生史を作成する。本来は、現...

thumb
2025年11月22日
ギターコード(和音)の構成音とベース音

コード表を、ルート音とコードの種類、そして、ベース音を...

thumb
2025年11月17日
気をつけろ!AIを利用したシステム開発

AIを利用した開発をしていると、一番の気になるところはAPI...

No Image
2025年11月15日
GTSF:(Guitar Tab and Song Format)弾き語り用楽譜生成テキストフォーマット

GTSF(Guitar Tab and Song text Format)とは、ギターで弾き語...

thumb
2025年11月14日
プロトタイプ(試作)とPoC(概念実証)

プロトタイプ(Prototype)とは、「完成前に作る試作モデル...

thumb
2025年11月14日
見える化による安心感~最先端な要件定義

要件定義ってそんな簡単ではないです。 まずは見える化...

thumb
2025年11月14日
コミュニケーション

人間関係やチームでのコミュニケーション方法(伝え方・傾...