IndexCreator の概要とバージョン別の機能
IndexCreator は、プリザンターのサイト設定と DB の既存索引を読み、追加の索引(インデックス)を計画・作成・整理するコンソールアプリです。同じ接続設定で、サイト一覧と選択肢マスタの SQL View も生成できます。プリザンター本体のソースは変更しません。ソースと配布物は GitHub で公開されています(AGPL-3.0-or-later)。
本マニュアルは、最新版の v0.3.0(2026-10-10 公開)のソースで内容を確かめています。ツールの版は本体(プリザンター)の版とは別で、各ページの見出しにある「v0.2.0 以降」のようなバッジはツールの版を表します。
- 変更履歴: 版ごとの追加・変更・更新時の作業
- 導入と接続設定: 配布 ZIP の選び方、配置、接続設定
- 索引の計画と運用: 計画の読み方、適用、整理、失敗時の再実行
- サイト・選択肢の SQL View: 一覧 View と選択肢 View
できること
図を読み込み中…
| 機能 | コマンド | 概要 |
|---|---|---|
| 索引の計画 | plan | 保存ビュー・リンク・サマリなどから索引候補を計算し、DB を変更せず差分を表示 |
| 索引の適用 | _rds(apply) | 計画した追加索引を作成・修復。/prune で不要な管理索引を削除 |
| サイト一覧 View | views / _views | 一覧の表示列を投影した SQL View |
| 選択肢マスタ View | choice-lists / _choice-lists | 項目の選択肢を Value / Text / TextMini で返す SQL View |
版の一覧
| 版 | 公開日(日本時間) | 要点 |
|---|---|---|
| v0.3.0 | 2026-10-10 | 配布 ZIP を OS・アーキテクチャ共通の 1 つに統合。DLL 名を変更。ヘルプの版表示を修正 |
| v0.2.0 | 2026-10-09 | 索引候補の拡張(自分が担当・期限・複数範囲・リンク選択肢の条件・項目連携) |
| v0.1.1 | 2026-10-09 | Windows x86 の配布 ZIP を追加(Windows 版 Azure Kudu 向け) |
| v0.1.0 | 2026-10-08 | 初回リリース |
詳細は 変更履歴 を参照してください。
機能 × バージョンの対応表
「○」はその版で使えることを表します。「-」は未対応です。コマンド・オプション・設定項目・生成する View の列・対応 DB は、v0.1.0 から v0.3.0 の間でソース(Options.cs・Program.cs・SqlDialect.cs など)に変更がないことを、タグ間の差分で確認しました。
索引の対象範囲
| 機能 | v0.1.0 | v0.1.1 | v0.2.0 | v0.3.0 |
|---|---|---|---|---|
| 保存ビューの等価・範囲・前方一致フィルタ、関数を伴わない並べ替え | ○ | ○ | ○ | ○ |
リンク項目・サマリ(SiteId とリンク項目) | ○ | ○ | ○ | ○ |
| 既定の並べ替え(SQL Server・MySQL) | ○ | ○ | ○ | ○ |
| 範囲・前方一致が複数あるとき | 最初の範囲列だけ | 最初の範囲列だけ | 1 列ずつ別の候補 | 1 列ずつ別の候補 |
| 自分が担当(Own) | - 未対応 | - 未対応 | ○ Manager / Owner の分岐ごと | ○ |
| Issues の期限が近い・期限超過 | - | - | ○ | ○ |
| リンク選択肢の View 条件(リンク先 Results / Issues) | - | - | ○ | ○ |
| 項目連携(子マスタの単一選択の親リンク列) | - | - | ○ | ○ |
| 項目連携・連携先不足・件数不足・式条件の診断 | - | - | ○ | ○ |
v0.1.0 のソースでは、Own と全文検索の条件を「通常の索引計画の対象外」と診断していました。v0.2.0 で Own は対象になりました。
コマンドと設定
| 項目 | 導入版 | 備考 |
|---|---|---|
plan / _rds(apply)、views / _views、choice-lists / _choice-lists | v0.1.0 | v0.3.0 まで同じ |
/p /y /c /f(CodeDefiner と同じ書式) | v0.1.0 | オプションは / で始める |
/sites /dbms /schema /output | v0.1.0 | /sites は計画専用 |
/min-records(既定 10000)/mysql-prefix(既定 100、1〜191)/include-filter-columns | v0.1.0 | |
/offline /lock-timeout(既定 5 秒、1〜3600) | v0.1.0 | |
/prune | v0.1.0 | 索引と View の整理 |
/exclude-tree /exclude-site(View の対象除外) | v0.1.0 | 索引には使えない |
/names label|column(一覧 View の列名) | v0.1.0 | 既定は label |
環境変数 INDEXCREATOR_CONNECTION_STRING・INDEXCREATOR_DBMS・INDEXCREATOR_SCHEMA | v0.1.0 | |
Rds.json の DisableIndexChangeDetection=true(索引の適用に必要) | v0.1.0 |
生成する View
| 項目 | 導入版 | 備考 |
|---|---|---|
サイト一覧 View(GridColumns の順に投影、Results / Issues / Wikis) | v0.1.0 | 名前は View_vvplic_{ReferenceType}_{SiteId}_{SiteName} |
選択肢 View の列(Value / Text / TextMini) | v0.1.0 | 列は固定 |
| 固定選択肢の展開、稼働中の適用 | v0.1.0 | 選択肢の編集は再作成なしで反映 |
| Wiki をリンク先にした選択肢(JSON 形式のリンクを含む) | v0.1.0 | 本体の画面とは差がある(SQL View を参照) |
Results / Issues をリンク先にした選択肢、動的な選択肢([[Users]] など) | 対象外 | 計画時に停止 |
対応 DB・実行環境・配布物
| 項目 | v0.1.0 | v0.1.1 | v0.2.0 | v0.3.0 |
|---|---|---|---|---|
| SQL Server / PostgreSQL / MySQL | ○ | ○ | ○ | ○ |
| .NET Runtime 10 | 必要 | 必要 | 必要 | 必要 |
| Windows x64、Linux x64、Linux arm64 | RID 別 ZIP | RID 別 ZIP | RID 別 ZIP | 共通 ZIP |
| Windows x86(Azure Kudu) | - | ○ RID 別 ZIP | ○ RID 別 ZIP | ○ 共通 ZIP |
| 実行する DLL | IndexCreator.dll | IndexCreator.dll | IndexCreator.dll | VehicleVision.PleasanterTools.IndexCreator.dll |
| ZIP の名前 | IndexCreator-<RID>.zip | IndexCreator-<RID>.zip | IndexCreator-<RID>.zip | VehicleVision.PleasanterTools.IndexCreator-<版>-portable.zip |
| ヘルプ先頭行の版表示 | 0.1.0 | 0.1.0 | 0.1.0(実際の版と不一致) | アセンブリの版 |
選択肢 View を SQL Server で使う条件は、v0.1.0 から変わらず SQL Server 2022 以降または Azure SQL(互換性レベル 130 以上)です。
版ごとの互換性と更新時の注意
- v0.1.0 から v0.1.1: 索引・View の生成ロジックとコマンドの書式は同じです。Windows 版 Azure Kudu で x86 の
dotnetを使う場合に、x86 版の ZIP を選べるようになりました。 - v0.1.1 から v0.2.0: コマンドの書式は同じです。索引の候補が増える場合があります。最初に
plan /output indexes-plan.sqlでキー列と本数を確認してください。/pruneを付けない限り、既存の管理索引は削除されません。 - v0.2.0 から v0.3.0: 実行する DLL 名と ZIP 名が変わります。旧版のフォルダーに上書き展開すると旧 DLL が残るため、
IndexCreatorフォルダーを入れ替えてください。dotnet VehicleVision.PleasanterTools.IndexCreator.dll ...を呼ぶスクリプト・ジョブ、ZIP のダウンロード処理は新しい名前に直します。索引候補の規則と View の生成規則は v0.2.0 と同じです。
DB に作成済みの索引・View は、版を上げても名前や定義が変わりません。再実行すると、現在の候補との差分だけが計画に出ます。
次に読むページ
| 目的 | ページ |
|---|---|
| 初めて配置する | 導入と接続設定 |
| 索引を計画して適用する、警告を読む | 索引の計画と運用 |
| SQL View で一覧や選択肢を参照する | サイト・選択肢の SQL View |
| 自分の版との差を調べる | 変更履歴 |
| 索引の設計の考え方 | DB が遅くなる理由とインデックス設計 |