Performance Design Tips : View設計での禁じ手? -3- | Lotus Notes/Domino (R) をこよなく愛して。。。。

Performance Design Tips : View設計での禁じ手? -3-

View設計での禁じ手ですが、以前「View設計での禁じ手? -1-」 にViewの列式に@Today/@Nowなどの時間関数を利用するとPerformanceが悪化することを紹介しました。



私も時間関数を使ったViewの扱いがDomino 6以降で変更されていることを知らなかったのですが、ここ に記述されているように、Domino 6以降では時間関数を列に利用したViewの更新はUpdate Taskは無視するように変更されています。


つまり、ユーザーが明示的にViewを更新するか、Agentなどで定期的に更新しない限り、UpdateによるViewの更新は行われなくなってしまいます。



しかし、参照先でも紹介されていますが、ユーザーが更新ボタンを押すと、Viewの列は時間が変わっているため全ての文書に関して更新が行われ、Viewの再構築を行っているのと同じことになります。



そういう意味からもやはり、時間関数を使ったViewは作るべきではないでしょう。



また、Sort可能な列の設定に関する注意点も述べられていますが、これは少し乱暴な言い方かも知れません。


Sortを設定しなければ別のViewを用意されるのではないでしょうか?


そうすると、結局そのViewの更新Costも必要になるわけで、Viewの列のSortと同様になってしまうのです。


無闇やたらとSort可能な列を増やすことはよくないですが、ユーザーの使い勝手の向上のためにSort可能な列を設けてあげることも必要です。



また、Performance Tipsについては、以下にも紹介されていますので、参照ください。



Application Performance Tuning, Part 1


Application Performance Tuning, Part 2