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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View 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 Slide

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

    View 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 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 Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide