紆余曲折メモ
rustでgeojsonからpolygonに変換して、並列処理ベンチマークしたら0.5~2.0秒で処理が終わる。そんなに最適化してないのに!
こいつをVPS入れたらメモリ足らなくて困り果てた。(プラン上げるのはイヤだ!なんとかしたい)
<やりたい事>
空間インデックスなくても、ちょっと工夫したら処理できる内容で、常に計算し続けるのでストレージアクセスをしたくない。
geojsonが500Mなので、すべてオンメモリで動作しようとしたが、パース処理でメモリを3ギガ以上食う。
<手法1 パース結果をバイナリで保存>
メインマシンでデータを作って、サーバサイドはそれを使えばいいと思った。
くっちゃくちゃになって頭パー!!
<手法2 パースの仕方を変える>
すべてオンメモリにしてからパースするのが良くないのであって、
構造上1行ずづ処理できる。
最初の4行が不要で、データは1種類で可変構造なので、jsonを無理やり1行ずづ処理できる。
だけど、ぐちゃぐちゃになって頭パー!!になってもうた!なんかrustだと凄い大変なことになってしもた。
連続して頭パー!!AIに込み入ったの作らせるとわけわからんの作り出す。
なんとなくgpt-4oよりgpt-4の方が正確性が高いような気がする・・・
ほどんとが4o使ったとき、くっちゃくちゃにぶっ壊されてた気がする。
対して難しい処理じゃないのに、AIないと組めない体になってしまった・・・年かな?
<そうだ!AI時代にふさわしいDBを使おう!>
考えたくないので、surrealDBにgeojsonを放り込んだ方が楽じゃないかと思い始めてきた。
空間インデックス使えるんだよね?知らんけど。
雑運用するから、フロントからこいつに直で叩けばよかろうもんなのでは?!
https://surrealdb.com/docs/surrealdb/installation/windows
ここに入るから、環境変数のPATHを通しとけ。
"C:\Users\user\SurrealDB\surreal.exe"
0 件のコメント:
コメントを投稿