満足への果てしない旅
2017/11/28
IT 仕事社内システムの処理高速化を頑張ってみた。
「写真の地図情報を踏まえて社内システムに具備できたので、これでほぼ写真管理システムは完成となりました。」でもお伝えしたように、山口建設ではスマホで撮影した写真が自動的に社内システムに連携されるようになっています。
全ファイルのハッシュ値を重複しているかどうかチェックしてから、登録を実施していたため、一度の処理に6時間程度かかるという難点がありました。
すぐに写真が確認できないという点を改善するために高速化のために頑張ってみました。
対応前
- 該当フォルダ内の全ファイル(約15万ファイル)についてハッシュ値重複チェック(6時間程度)
- 重複していなければファイル登録
対応後
- 該当フォルダの全ファイル(約15万ファイル)のパス名をDBに格納(3分絵程度)
- 万が一の重複チェックをハッシュで確認しつつ対象ファイルをファイル登録(1ファイル2秒程度)
- ファイル登録済のフラグを設定して次回対象から外す
6時間が5分程度まで短縮!
パス名だけで差分判断をしつつも、重複チェックを念のために実施。
書いてて思い当たったものの、既存パス名に新規ファイルがリネームされたときは救えないと思いつつも、そこは運用でカバーしたいと思います。
社内での運用だけではなく、対外的な場面で写真を活用できるような基幹は具備できてきました。
差分チェック相当をどうやって実施するか悩んだものの、ある程度の成果が残せてよかった!