---
title: インデックス削除がパフォーマンスに及ぼす影響を調査/検証してみた
tags:  #wealthnavi #java #インデックス削除  
author: [ウェルスナビ株式会社 技術広報チーム](https://www.docswell.com/user/WN_Tech-PR)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/3EK5W65GJD.jpg?width=480
description: 2025年6月25日に開催された「【非公式】JJUG CCC 2025 Spring 後夜祭」で使用した資料です
published: June 25, 25
canonical: https://www.docswell.com/s/WN_Tech-PR/ZQ19JY-2025-06-25-195535
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/3EK5W65GJD.jpg)

インデックス削除がパフォーマンスに
及ぼす影響を調査/検証してみた
⼭⼝ 裕也
【⾮公式】JJUG CCC 2025 Spring 後夜祭
1


# Page. 2

![Page Image](https://bcdn.docswell.com/page/L73K16K575.jpg)

⾃⼰紹介
山口裕也 （Yamaguchi Yuya）
ウェルスナビ株式会社
SWEチーム / ソフトウェアエンジニア
ウェルスナビでは
● 2023年末にウェルスナビに参画
● Aurora MySQLのv2 → v3へのアップグレード担当していた
ひとこと
● MySQL 8.4互換のAurora MySQLはいつくる？
2
@2025 WealthNavi Inc.


# Page. 3

![Page Image](https://bcdn.docswell.com/page/87D3XV3YJG.jpg)

資産運用ロボアドバイザー
「 WealthNavi 」
3
※ ⼀般社団法⼈⽇本投資顧問業協会「契約資産状況（最新版）（2024年9⽉末現在）
『ラップ業務』『投資⼀任業』」を基にネット専業業者を⽐較 ウエルスアドバイザー
社調べ（2024年12⽉時点）
※ 画⾯はイメージです。


# Page. 4

![Page Image](https://bcdn.docswell.com/page/VJP4PV4278.jpg)

アジェンダ
1. 検証に至った背景
2. インデックスを削除する理由
3. 検証した内容
4. インデックスを削除した検証結果
5. さいごに
4
@2025 WealthNavi Inc.


# Page. 5

![Page Image](https://bcdn.docswell.com/page/2EVX2ZXXJQ.jpg)

1. 検証に至った背景
2. インデックスを削除する理由
3. 検証した内容
4. インデックスを削除した検証結果
5. さいごに
5
@2025 WealthNavi Inc.


# Page. 6

![Page Image](https://bcdn.docswell.com/page/57GVR4VR7L.jpg)

検証に⾄った背景
2024年に30億レコード弱なら2030年にはどうなる？
6
@2025 WealthNavi Inc.


# Page. 7

![Page Image](https://bcdn.docswell.com/page/4EQ6VG6YEP.jpg)

検証に⾄った背景
2024年に30億レコード弱なら2030年には100億レコードを超過する？
7
@2025 WealthNavi Inc.


# Page. 8

![Page Image](https://bcdn.docswell.com/page/KJ44M54ZJ1.jpg)

1. 検証に至った背景
2. インデックスを削除する理由
3. 検証した内容
4. インデックスを削除した検証結果
5. さいごに
8
@2025 WealthNavi Inc.


# Page. 9

![Page Image](https://bcdn.docswell.com/page/LE148W4DEG.jpg)

インデックスを削除する理由
● RDBのままでなんとかする
○ テーブルを廃⽌する
○ テーブル構成を変更する
○ パーティションを活⽤する
○ シャーティングする
○ インデックスを削除する
● RDBからNoSQLや分散SQLなどに移⾏する
○ Amazon DynamoDB
○ Aurora DSQL
9
@2025 WealthNavi Inc.


# Page. 10

![Page Image](https://bcdn.docswell.com/page/GEWXZ6X872.jpg)

インデックスを削除する理由
MySQL 8.0でInvisible Index(不可視のインデックス)が導⼊された
公式ドキュメントからの抜粋
MySQL では、不可視のインデックス (オプティマイザで使⽤されないインデックス) がサポートされ
ています。 この機能は、主キー以外のインデックス (明⽰的または暗黙的) に適⽤されます。
~~
不可視のインデックスを使⽤すると、インデックスが必要になった場合に元に戻す必要がある破壊的
な変更を⾏わずに、クエリーのパフォーマンスに対するインデックスの削除の影響をテストできま
す。 ⼤規模なテーブルの場合、インデックスを削除して再追加するとコストがかかる可能性がありま
すが、インデックスを⾮表⽰にして可視にすると、⾼速なインプレース操作になります。
https://dev.mysql.com/doc/refman/8.0/ja/invisible-indexes.html
10
@2025 WealthNavi Inc.


# Page. 11

![Page Image](https://bcdn.docswell.com/page/47Z61Y6973.jpg)

インデックスを削除する理由
インデックスのメンテナンスはinsert操作に おいて最も重い処理
であると⾔えるでしょう。それは、図8.1, 「インデックスの数に
よる挿⼊のパフォーマンス変化」を⾒ても明⽩です。テーブルに
全くインデックスが ない時は、実⾏時間はほとんど分からないく
らい短くなります。しかし、1つインデックスを増やしただけで実
⾏時間は百倍近くも増えてしまいます。 さらにインデックスを増
やすと、実⾏時間はどんどん⻑くなっていきます。
https://use-the-index-luke.com/ja/sql/dml/insert
11
@2025 WealthNavi Inc.


# Page. 12

![Page Image](https://bcdn.docswell.com/page/YJ62LD2D7V.jpg)

インデックスを削除する理由
12
@2025 WealthNavi Inc.


# Page. 13

![Page Image](https://bcdn.docswell.com/page/GJ521328J4.jpg)

インデックスを削除する理由
sys.schema_unused_indexes ビューとは
公式ドキュメントからの抜粋
これらのビューには、使⽤されていないことを⽰すイベントがないインデックスが表⽰されます。 デフォ
ルトでは、⾏はスキーマおよびテーブルでソートされます。
このビューは、サーバーが稼働しており、ワークロードが代表的であるほど⻑く処理されている場合に最も
役⽴ちます。 そうしないと、このビューにインデックスが存在しても意味がない場合があります。
https://dev.mysql.com/doc/refman/8.0/ja/sys-schema-unused-indexes.html
13
@2025 WealthNavi Inc.


# Page. 14

![Page Image](https://bcdn.docswell.com/page/LE3K16KGE5.jpg)

1. 検証に至った背景
2. インデックスを削除する理由
3. 検証した内容
4. インデックスを削除した検証結果
5. さいごに
14
@2025 WealthNavi Inc.


# Page. 15

![Page Image](https://bcdn.docswell.com/page/8ED3XV3N7G.jpg)

検証した内容
● 主キーと通常のインデックス6個の計7個インデックスあるテーブルを利⽤する
○ 通常のインデックスはすべて同じデータ型の単⼀カラムである
● 10億レコードを事前にインサートしておく
● インデックスを1個ずつ削除しつつ1億レコードを挿⼊するのにかかった時間を計測す
る
● ローカルPCのDocker上に⽤意したMySQLを利⽤する
15
@2025 WealthNavi Inc.


# Page. 16

![Page Image](https://bcdn.docswell.com/page/V7P4PV4NE8.jpg)

1. 検証に至った背景
2. インデックスを削除する理由
3. 検証した内容
4. インデックスを削除した検証結果
5. さいごに
16
@2025 WealthNavi Inc.


# Page. 17

![Page Image](https://bcdn.docswell.com/page/2JVX2ZXY7Q.jpg)

検証結果
インデックス数が少ない⽅がインサートの処理時間が短い
17
@2025 WealthNavi Inc.


# Page. 18

![Page Image](https://bcdn.docswell.com/page/5EGVR4VWEL.jpg)

1. 検証に至った背景
2. インデックスを削除する理由
3. 検証した内容
4. インデックスを削除した検証結果
5. さいごに
18
@2025 WealthNavi Inc.


# Page. 19

![Page Image](https://bcdn.docswell.com/page/4JQ6VG6QJP.jpg)

さいごに
不要になったインデックスをメンテナンス(削除)する価値はあるかも
● インデックスの利⽤状況はsysスキーマから確認することができる
● インデックスを削除する前に不可視インデックスを利⽤することができる
● インデックスを削除することでインサートのコストを下げることができる
19
@2025 WealthNavi Inc.


# Page. 20

![Page Image](https://bcdn.docswell.com/page/K744M54Y71.jpg)

ご清聴ありがとうございました
20
@2025 WealthNavi Inc.


# Page. 21

![Page Image](https://bcdn.docswell.com/page/LJ148W4NJG.jpg)

【重要な注意事項】
● 本資料は、断定的判断を提供するものではなく、情報を提供することのみを⽬的としており、いか
なる種類の商品も勧誘するものではありません。最終的な決定は、お客様⾃⾝で判断するものと
し、当社はこれに⼀切関与せず、また、⼀切の責任を負いません。
● 本資料には将来の出来事に関する予想が含まれている場合がありますが、それらは予想であり、ま
た、本資料の内容の正確性、信頼性、完全性、適時性等を⼀切保証するものではありません。本資
料に基づいて被ったいかなる損害についても、当社は⼀切の責任を負いません。また、当社は、新
しい情報や将来の出来事その他の情報について、更新⼜は訂正する義務を負いません。
● 本資料を利⽤することによりお客様に⽣じた直接的損害、間接的損害、派⽣的損害その他いかなる
損害についても、当社は⼀切の責任を負いません。
商号等：ウェルスナビ株式会社
金融商品取引業者 関東財務局長（金商）
第2884号 加入協会：日本証券業協会 一般社団法人日本投資顧問業協会
21
@2025 WealthNavi Inc.


# Page. 22

![Page Image](https://bcdn.docswell.com/page/GJWXZ6ZME2.jpg)

Appendix 1
定期的にWealthNaviの開発（技術‧組織）に関する情報を発信しています。
開発者ブログ
●
技術広報に関する
お問い合わせ先
●
https://zenn.dev/p/wn_engineering
ブックマーク追加や記事への「いいね」していただけると嬉しいです
ウェルスナビ 技術広報チーム（dev_pr@wealthnavi.com）
22
@2025 WealthNavi Inc.


# Page. 23

![Page Image](https://bcdn.docswell.com/page/4EZ61Y1ME3.jpg)

Appendix 2
ウェルスナビでは複数の開発系ポジションで採⽤を強化しています。
主な採⽤中職種
●
●
●
●
●
モバイル開発エンジニア
エンジニアリングマネージャー
バックエンド開発エンジニア
QAエンジニア
データエンジニア
採⽤情報詳細
●
下記URL（QRコード）よりご確認ください。
https://recruit.wealthnavi.com/
採⽤に関する
お問い合わせ先
●
●
「カジュアルに話を聞いてみたい」という温度感でも構いません。
ウェルスナビ採⽤チーム（recruiting@wealthnavi.com）までご連
絡お待ちしております。
23
@2025 WealthNavi Inc.


