すべてはここにある。もしくはAPIでとってくる。

2025年06月03日

住所から国土地理院の緯度経度取得APIを使って、テーブルへ格納するバッチ処理がようやく終了した。全国550万件のデータに対して、およそ1か月かかった。まあ、10万件単位で実行するバッチで、さらにチャンクで分割したうえで、1件1秒スリープをいれて、途中からは都道府県単位のオプションをつけての実行にして、おわっていたら、続きからコマンドをたたくということを日課というか、1日に何回かをやるという日々がおわった。

人間というものははじめると終わりを求め、終わりを迎えると、なぜか寂しい。だからといってこんなことを何のためにやっていたのかと言えば、理論値550万秒の処理は、いったいどれくらいでおわるのか試したかったのである。1日というのは60秒x60分x24時間であるので、86400秒。計算上は63.6574074日。あれ2か月かかるやん。

            usleep(100000); // 0.1秒スリープ(API負荷抑制)

おお、1秒ではなくて、0.1秒で実施していたのだ。6.4日で終わる処理を1か月かけてしまったのである。

その理由は、次の通り。

最初メモリ確保が適切でなかった。

これは、実行時にメモリサイズを指定することで改善された。

php -d memory_limit=1524M artisan corporates:geocode-gsi

そして、緯度経度が取得できずにセットできなかった対象を、毎回処理してエラーを出すという、愚かな仕組みになっていたので、毎回コマンド再実行時は同じエラーを出すための時間となっていた。

北海道からはじまり、まあ、東京あたりまでくるときには、いいかげん、この最初の繰り返し表示される緯度経度が取得できませんでしたという、人生のエンドロールのような繰り返し文にいやけがさして、そうだ!都道府県オプションつけて実行できるようにしたら、この無駄な時間がいらなくなる。

php -d memory_limit=1524M artisan corporates:geocode-gsi --prefecture=千葉県

オプションは大事だよ。

コマンドの作り方は、オプションの指定の仕方が重要。

センスがわかるだろ。

最新のお知らせ

thumb
2026年1月4日
PostgreSQL+pgvector ベクトル検索テスト(Cosine距離 + AI要約)

類似検索(ベクトル)対応:pgvector このpgvectorの記事を...

thumb
2026年1月4日
AIの仕組みについて

Geminiの仕組みにGeminiに聞いてみる。その中身を紐解いていき...

thumb
2025年12月26日
AIの基本をおさらい

1. いま言われる「AI」は何を指しているか 最近話題のAI...

thumb
2025年12月19日
SUNOで生成した楽曲を公開

https://iplusone.co.jp/suno-songs 12/1から開始し...

No Image
2025年12月18日
曲を作るという世界のパラダイムシフト

ギターを弾くとコード進行とかメロディラインとか、フレーズと...

thumb
2025年12月2日
WEBアプリケーションを取り巻く開発環境、開発言語について考える

WEBアプリケーションを取り巻く「開発環境」と「開発言語」につ...

thumb
2025年12月2日
最高なAIのアプリ SUNO

今一番エキサイティングなAIアプリは、このSUNOだろう。音...

No Image
2025年12月2日
事業計画を作るAIチャットを作成する

「事業計画を作るAIチャット」を本気で“実用レベル”に落とし込...

No Image
2025年11月30日
Spotifyのリンクを埋め込みできるようになりました。

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

thumb
2025年11月29日
スピードと量 深みと質の担保

さあ、もうスピードと量についてはAIにお任せして、人間は...