Upgrade to Pro — share decks privately, control downloads, hide ads and more …

12.0.2 ビュー索引更新の改善

12.0.2 ビュー索引更新の改善

12.0.2のベータ版には確かに紹介されていた機能改善が12.0.2 の製品ドキュメントには記載が見つからない....なぜ?
この疑問から検証を実施し、結果の裏を取るためサポートへ問い合わせました。

2023/1/20 開催の「テクてくLotus技術者夜会」で使用したスライドです。
ブログと併せてご確認ください。
https://harunakano.blogspot.com/

Haruyuki Nakano

January 22, 2023
Tweet

More Decks by Haruyuki Nakano

Other Decks in Education

Transcript

  1. 12.0.2 における
    ビュー索引更新の
    パフォーマンス改善
    2023年1月20日
    テクてくLotus技術者夜会
    中野晴幸 Haruyuki Nakano
    @harunakano (twitter)
    harunakano.blogspot.com (blog)

    View full-size slide

  2. あらすじ
    12.0.2の機能改善である「ビュー索引更新の改善」について、
    HCLでDominoの開発チームの人のツイッターアカウントとその
    人のブログから発信された
    12.0.2 EAP のディスカッションフォーラムにはこの改善につい
    てトライしてほしいと投稿があり、また Drop 2 と Drop 5 の
    What’s New にはこの改善について記載があった。

    View full-size slide

  3. しかも Drop 5 で改善されてる!?
    すごいぞ!!
    Drop 2
    Drop 5

    View full-size slide

  4. そして12.0.2 製品版が出荷されました

    View full-size slide

  5. そして12.0.2 製品版が出荷されました
    ところが...

    View full-size slide

  6. 「ビュー再構築の改善」
    は製品ドキュメントに
    記載がありません

    View full-size slide

  7. アイデアはShippedに変わってますが?

    View full-size slide

  8. アイデアはShippedに変わってますが?
    そこで

    View full-size slide

  9. ビュー更新の
    改善の有無を
    調べてみた
    updall タスクを実行してビュー再構築にかかる時間を記録しました。

    View full-size slide

  10. 検証の環境と方法
    • 仮想マシン構築×2台(ゲストOS:Windows Server 2022)
    • 一方に12.0.1 FP1、他方に 12.0.2 を稼働させる
    • 両方の notes.ini へ CREATE_R12_DATABASES=1 を追加
    • 12.0.2 の notes.ini へ ENABLE_VIEW_MIN_UNTIL=1 を追加
    • 2つのシンプルなビューを持つアプリに100万文書を作成
    • updall –C でビュー索引を作成
    • updall –R でビュー索引の再構築 × 13回

    View full-size slide

  11. 【参考】2つのシンプルなビュー
    ソート列の値:
    全角7文字
    ソート列の値:
    半角7文字
    ※上の図はどちらもビュー索引構築後のものです

    View full-size slide

  12. 再構築にかかる時間を記録(単位:秒)
    [196C:0006-1BA4] load updall viewupdatetest1202.nsf -R
    [0EF0:0002-1A84] QueryResults::NamedFoundsetDeleteOld() has been called
    [0EF0:0002-1A84] Starting enumeration for ENUMACTION_FOUNDSET_DELETE_OLD in namedFoundsetEnumProc()
    [0EF0:0002-1A84] Ending enumeration for ENUMACTION_FOUNDSET_DELETE_OLD in namedFoundsetEnumProc()
    [0EF0:0002-1A84] Deleted 0 old named foundsets in viewupdatetest1202.nsf
    [0EF0:0002-1A84] Named foundset total time used by object: 9.533 ms
    [0EF0:0002-1A84] 2023/01/07 17:34:05 Index update process started: viewupdatetest1202.nsf -R
    [0EF0:0002-1A84] 2023/01/07 17:34:05 Updating views in C:¥Domino¥Data¥viewupdatetest1202.nsf
    [0EF0:0002-1A84] 2023/01/07 17:34:05 Updating views in C:¥Domino¥Data¥viewupdatetest1202.nsf
    [0EF0:0002-1A84] 2023/01/07 17:34:05 QueryResults::NamedFoundsetDeleteOld() completed in 9.533 ms
    [0EF0:0002-1A84] 2023/01/07 17:34:05 Informational, rebuilding view - user specified REBUILD (reading C:¥Domino¥Data¥viewupdatetest1202.nsf view note Title:'by Kanji')
    [0EF0:0002-1A84] 2023/01/07 17:34:06 Updating C:¥Domino¥Data¥viewupdatetest1202.nsf view 'by Kanji'
    [0EF0:0002-1A84] 2023/01/07 17:34:32 Informational, rebuilding view - user specified REBUILD (reading C:¥Domino¥Data¥viewupdatetest1202.nsf default view note Title:'by
    PartNumber partnumber')
    [0EF0:0002-1A84] 2023/01/07 17:34:33 Updating C:¥Domino¥Data¥viewupdatetest1202.nsf view 'by PartNumber'
    [0EF0:0002-1A84] 2023/01/07 17:34:46 Finished updating views in C:¥Domino¥Data¥viewupdatetest1202.nsf
    [0EF0:0002-1A84] 2023/01/07 17:34:46 Index update process shutdown

    View full-size slide

  13. 時間を記録した表
    12.0.1 FP1 (ODS55)
    12.0.2 (ODS55)
    ENABLE_VIEW_MIN_UNTIL=1 あり
    #
    ソート列に
    全角7文字
    (秒)
    ソート列に
    半角7文字
    (秒)
    ソート列に
    全角7文字
    (秒)
    ソート列に
    半角7文字
    (秒)
    1 15:56:14-15:56:41 27 15:56:41-15:56:56 15 17:19:47-17:20:14 27 17:20:15-17:20:27 12
    2 15:56:59-15:57:27 28 15:57:28-15:57:42 14 17:20:44-17:21:08 24 17:21:09-17:21:21 12
    3 15:58:10-15:58:37 27 15:58:38-15:58:52 14 17:21:28-17:21:53 25 17:21:54-17:22:06 12
    4 15:58:57-15:59:24 27 15:59:25-15:59:39 14 17:22:10-17:22:34 24 17:22:35-17:22:47 12
    5 16:01:42-16:02:09 27 16:02:10-16:02:24 14 17:22:51-17:23:16 25 17:23:17-17:23:29 12
    6 16:02:40-16:03:08 28 16:03:08-16:03:23 15 17:27:06-17:27:31 25 17:27:32-17:27:44 12
    7 16:03:27-16:03:55 28 16:03:55-16:04:10 15 17:27:55-17:28:20 25 17:28:21-17:28:33 12
    8 16:04:14-16:04:40 26 16:04:41-16:04:55 14 17:28:39-17:29:05 26 17:29:06-17:29:19 13
    9 16:05:27-16:05:54 27 16:05:55-16:06:09 14 17:29:41-17:30:07 26 17:30:08-17:30:21 13
    10 16:06:18-16:06:45 27 16:06:46-16:07:00 14 17:30:25-17:30:51 26 17:30:52-17:31:04 12
    11 16:07:16-16:07:43 27 16:07:43-16:07:58 15 17:31:07-17:31:33 26 17:31:34-17:31:47 13
    12 16:09:39-16:10:06 27 16:10:07-16:10:21 14 17:33:03-17:33:28 25 17:33:29-17:33:41 12
    13 16:11:40-16:12:07 27 16:12:07-16:12:21 14 17:34:06-17:34:32 26 17:34:33-17:34:46 13
    平均値 27.153846 14.30769 25.38462 12.30769

    View full-size slide

  14. ビュー再構築の高速化が確認できた!
    ソート列の値
    再構築の平均時間
    (秒) 高速化
    (%)
    12.0.1 FP1 12.0.2
    全角7文字 27.15 25.38
    6.52 ↗
    半角7文字 14.31 12.31
    13.98 ↗

    View full-size slide

  15. HCLサポートに
    確認してみた
    機能改善があったことの裏を取ります

    View full-size slide

  16. Q. 12.0.2ではビュー索引の更新機能に改
    善がありますか?

    View full-size slide

  17. Q. 12.0.2ではビュー索引の更新機能に改
    善がありますか
    A. ありません。

    View full-size slide

  18. Q. 12.0.2ではビュー索引の更新機能に改
    善がありますか
    A. ありません。
    いやいやいや?
    ちょっとまって!?

    View full-size slide

  19. くいさがってみた
    • HCLの「Domino Core Application Lead」はご自身のブログで
    12.0.2のビュー更新の改善について詳細を公開している
    • ベータフォーラムではビュー更新の改善について新機能として
    紹介されており、ブログ作者は試してほしいと投稿した
    • Product Ideas Portal にビュー更新の改善のアイデアがあり、
    12.0.2リリース後にステータスはShippedに変わっている

    View full-size slide

  20. サポート側で再確認を実施、その結果は...
    V12.0.2でビュー索引のパフォーマンスが改
    善されているか、
    また、現在のV12.0.2でデフォルトで有効に
    なっているかについて、
    弊社の開発部と協力し、確認致します。
    ■次回連絡日 ご連絡がない場合には、1月23日(月) に、サポートよりご連絡致します。

    View full-size slide

  21. サポート側で再確認を実施、その結果は...
    V12.0.2でビュー索引のパフォーマンスが改
    善されているか、
    また、現在のV12.0.2でデフォルトで有効に
    なっているかについて、
    弊社の開発部と協力し、確認致します。
    ■次回連絡日 ご連絡がない場合には、1月23日(月) に、サポートよりご連絡致します。
    テクてく発表に
    間に合いませんでした...

    View full-size slide

  22. ブログ作者へDMしてみた(昨晩)
    その回答は...

    View full-size slide

  23. HCL サポートへは、本件と併せて
    以下の質問もしています
    • 本改善に関する文書は公開された?
    • 有効にするために notes.ini パラメータの追加は必要?
    • 古いODSバージョンでも機能する?
    • Notesクライアントでも機能する?

    View full-size slide

  24. 続きはブログで。
    https://harunakano.blogspot.com

    View full-size slide