250 Views
October 21, 26
スライド概要
2026年9月16日の「技術的負債に向き合うConference 2026」での登壇資料
LIFULL HOME'Sを運営する株式会社LIFULLのアカウントです。 LIFULLが主催するエンジニア向けイベント「Ltech」等で公開されたスライド等をこちらで共有しております。
2026.09.16 「動いている」を言い訳にしない ― 壊さず変える DB移行5年の記録 © 2026 LIFULL Co., Ltd.
LIFULL / 技術的負債に向き合うConference 2026 登壇者紹介 渡部⻯也 [写真] テクノロジー本部事業基盤部 アーキテクトグループ シニアエンジニア ● ● ● © 2026 LIFULL Co., Ltd. 2012年LIFULL入社 バックエンド開発からデータ基盤構築、海外版プロ ダクト開発まで幅広く担当 現在はアーキテクトGにて、LIFULL HOME’Sの基 盤DB移行プロジェクトを推進中 2
LIFULL / 技術的負債に向き合うConference 2026 LIFULLについて 設⽴ 上場市場 従業員数 主⼒サービス 1997 東証プライム 1,054名 LIFULL HOME'S 3⽉12⽇ 証券コード 2120 2026年3⽉31⽇現在 不動産‧住宅情報サービス 社会課題を、事業を通じて解決する 住まいを中⼼に、⼀⼈ひとりの暮らしと⼈⽣へ © 2026 LIFULL Co., Ltd. 3
LIFULL / 技術的負債に向き合うConference 2026 LIFULLが⼤切にするもの あらゆるLIFEを、FULLに。 世界中の⼀⼈ひとりの暮らしや⼈⽣を、安⼼と喜びで満たす 社是 ガイドライン ガイドライン 利他主義 ⼤胆に挑戦する ⾃ら動く、⾃ら変える みんなを幸せにしたい 過去にとらわれず挑む 課題の中⼼に⼊り解決する 価値観が、挑戦と改善の意思決定を⽀える。 © 2026 LIFULL Co., Ltd. 4
LIFULL / 技術的負債に向き合うConference 2026 住まい探しの「業界初」を、LIFULLから 2019 2022 2024 ⾃動⾮掲載 街歩きAR Vision Pro 募集終了情報を連携 業界初 ARグラス時代を⾒据える 不動産業界初 没⼊型モデルルーム 国内不動産ポータル初 2019年の仕組みは、現在 ⽉約10万件 の物件広告を⾃動⾮掲載※ ※「初」は各発表時点の⾃社調べ。2019年は管理会社連携型の⾃動⾮掲載。⽉約10万件は2024年2⽉時点。 © 2026 LIFULL Co., Ltd. 5
LIFULL / 技術的負債に向き合うConference 2026 新しいものを作る。その⼀⽅で⸺ CREATE SUSTAIN 新しい体験を 最速で社会へ 1997年から 育ててきたシステム AI / AR / 空間コンピューティング 変化する事業と、積み重なる意思決定 © 2026 LIFULL Co., Ltd. 6
LIFULL / 技術的負債に向き合うConference 2026 システム健全化を「⽇常」にする 10% 業務時間の10%を 改善に使う⽅針を明確化 リファクタリングやシステム改 善を、個⼈任せではなく組織の 習慣へ。 © 2026 LIFULL Co., Ltd. Refactoring Day Refactoring Week そして、部⾨横断の“祭り”へ 7
LIFULL / 技術的負債に向き合うConference 2026 エンジニア部⾨横断「負債解消祭り」 負債解消は、攻めの投資。 2026.03.18 11:00‒17:30 グループ単位で集中実施 最後に3〜5分の成果発表 ⽂化 技術 越境 負債解消を ⽌めない AI等で 最⼩⼯数‧最 ⼤成果 グループを越 えて 知⾒を共有 成果の⼀例 Visual Regression Testing(VRT)を導⼊ © 2026 LIFULL Co., Ltd. 画⾯の⾒た⽬の差分を ⾃動で検知する仕組み 8
技術的負債に向き合うことは、 未来をつくること。 「動いている」を言い訳にしない ― 壊さず変える DB移行5年の記録 © 2026 LIFULL Co., Ltd.
想像を超える、移⾏対象の圧倒的な規模 TARGET SCALE TARGET SCALE 42 5,749 移⾏対象リポジトリ数 移⾏対象SQL‧PL/SQL リポジトリ © 2026 LIFULL Co., Ltd. 本 10
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
課題 1|DMS同期ラグによるデータ不整合の発生 更新直後の参照クエリで「最新データが未反映」となるリスク ① WRITE 📱 アプリ / バッチ ・データ更新(WRITE) ・更新直後の参照(SELECT) ② DMS同期 (※同期ラグ発生 ) 🗄 Oracle DB (移行元 / 最新デー タ) 🐘 PostgreSQL (移行先 / 参照試行 ) ❌ ③ 直後SELECT:ラグにより古いデータを取得! 【結論】データ最新性が必須な機能では、参照( SELECT)のみの先行移行が不可能に
課題 2|複数JOINによる「移行不可」の連鎖(ドミノ倒し) 1つの不整合リスクが、 JOINに含まれる全テーブルの移行をブロック 🔍 複合SELECTクエリの構造 SELECT * FROM Table_A (更新直後参照 ) JOIN Table_B JOIN Table_C JOIN Table_D; Table_A 1つでも「リアルタイム参照必須」であれば、このクエ リ全体をPG側へ切り替えられない。 ① Table_A が移行不可(Oracleに残す必要あり) ⛓ 連鎖的に増大する移行不能領域 ② JOIN相手の Table_B, C, D も連鎖して移行不可に ③ 段階移行の範囲が狭まり、移行規模が巨大化 【影響】参照の段階切り替えが阻まれ移行規模が肥大化 ➔ 対策「二面書き」の採用へ
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.
© 2026 LIFULL Co., Ltd.