なぜ私たちは住所正規化エンジンをRustで"再発明"したのか? - FFIによる多言語高速化と開発者体験の裏側 - Sansan Tech Blog
2025/06/21 02:25
人気記事
集中力を高める「音楽」の特徴調査 ADHD症状への効果も示唆【研究紹介】 | レバテックラボ(レバテックLAB)
《“私の立ち食いそば店ベスト3”を特別公開》洗練されたお店を営む“本格派蕎麦職人”があえて「立ち食いそば」を食べ歩きまくる理由が意外すぎた | 文春オンライン
日産「ノート」の輸出を検討 - Yahoo!ニュース
岩井清隆さん、亡くなる - チダイズム
10号玉花火が地上近くで爆発 映像 - Yahoo!ニュース
https://buildersbox.corp-sansan.com/entry/2025/06/20/120000
ずん
「住所データを正規化するのに、なんでRustなんて使うのだ?Pythonでよくないのだ?」
でぇじょうぶ博士
「おっと、それが大間違いでやんす。従来のPythonと比べて約50倍も高速化されたでやんす。数百万件の住所データを処理する時間が数時間から10分に短縮されたでやんす!」
やきう
「ワイ、それ聞いてビビったわ。でもなんでそんなに早くなるんや?」
でぇじょうぶ博士
「GCがないことと、コンパイラの最適化が効くからでやんす。さらにFFIを使って直接関数を呼び出すことで、ネットワークの遅延も排除できるでやんす!」
ずん
「FFIって何なのだ?」
でぇじょうぶ博士
「Foreign Function Interfaceの略でやんす。他の言語からRustの関数を直接呼べる仕組みでやんす。まるで隣の部屋の人を呼ぶような感覚でやんす!」
やきう
「でもそんな住所データ処理って、そんな難しいんか?」
でぇじょうぶ博士
「甘く見てはいけないでやんす。『一丁目』と『1-』の表記揺れ、『ケ』と『ヶ』の使い分け、市町村合併による新旧地名の混在など、日本の住所は世界でも特殊でやんす!」
ずん
「じゃあボク、『とうきょうとちよだくひとつばしいっちょうめ』って入力すれば良いのだ!」
でぇじょうぶ博士
「そんな適当な入力でも、意味的な正規化によって『東京都千代田区一ツ橋1-』に変換できるでやんす。これぞ技術の力でやんす!」
やきう
「せやけど、誤マッチせんのか?『京都市1-1』と『京都市1-2』とか」
でぇじょうぶ博士
「ご安心を。品質ゲートという仕組みがあって、番地が違う場合は絶対にマッチしないでやんす!」
ずん
「なるほど!じゃあボク、住所を『月野うさぎ、セーラームーン城1階』って書いても大丈夫なのだ?」