Microsoftから、予告どおりOffice 2004のアップデータが出た。SyncサービスやSpotlightへの対応を行ったものだ。Universal Binaryを提供するアップデータではないということも予告どおりだ。
Syncサービスを用いて、他のアプリケーションとの同期や.Macを介してのデータ同期が行えるようになる、とリリースノートに書かれている。やはり、いろんなアプリケーションにデータが分散して存在するというのはMacBU(MS社内の"Macintosh Bussiness Unit"の略称。実はMac界の開発者のドリームチーム的存在)の連中も「これは、よくないよね」と考えたらしい。
住所の情報がMac OS X標準添付のアドレスブックに入っていたり、はたまたEntourageの中にあるというのでは困るのだ。本件、Office v.XかMac OS X 10.2の登場時に指摘していたよーな気もするのだが、今のいままで解決されてこなかった話なのだ。しかし、このアップデータですっきりした。
以前に、Mac OS X 10.3のリリース時にはSyncサービスがバグバグで、Office側でSyncサービスを利用できなかったという話も聞いていた。本来は1年以上昔に解決されているべき問題だったのだ(MSのせいでなく、US Appleのせいである)。
今回のアップデートによりEntourageがSpotlightに対応し、メールのメッセージもメタデータ検索の対象となった。このため検索対象が大幅に増え、以前よりもSpotlightの応答速度が落ちたような気もするのだが、それはメールを溜め込みすぎているからだろう。
推測の範囲を出るものではないが、Spotlightのデータベースチューニングはそれほどパフォーマンスを重視していないだろう。SpotlightでCPUのパワーを食いすぎると他のアプリケーションの動作に悪影響を与えかねないので……「ほどほど」といったところか(と、アップルの桜庭さんが言っていた)。
だが、このままでは今後データ件数が増えるにしたがって、メタデータ検索の時間もかかるようになるに違いない。Mac OS X 10.5あたりでは、CPUに余裕がある場合には優先順位を上げるとか、「最低限このぐらいのパワーはSpotlightに割り振るよ」と、明示的に指定できるとか、そーゆー機構も欲しいところだ。
で、以前作っておいたAppleScriptに手を加えて、EntourageのメールをSpotlightで検索してみた。
……Entourageのメールメッセージの一覧は抽出できた。だが、フリーのキーワードで探す方法が分からない。SpotlightではSubjectだけでなく本文も検索対象となっているらしく、かなりいろいろと検索条件にひっかかる。だが、AppleScriptからspotlightを叩いて調べてみるものの、いまひとつ絞り込みに成功していない(全部リストアップされて焦る。G5やCore Duoでないとかなりつらいだろう)。
検索結果がどのように示されるのかについて、もんのすごく興味があった。本来、Entourageのメールは1つのデータベースの中に入っているものであり、ファイル単位のSpotlight検索とはなじまない。
どーも、一時的に全メールをファイルシステム上に展開している雰囲気が濃厚である。調べてみたところ、各ユーザーのライブラリの下のキャッシュディレクトリに1000件ずつディレクトリ分けして出力されていた。
こーーれは、HDD容量の少ないノートユーザーには辛い仕様かもしれない。ものすごくHDD容量を圧迫しそうな感じだ。キャッシュディレクトリ下のメールメッセージの総容量を算出してみたら、800Mバイトほどあった。対して、目下Entourageのデータベースは2.7Gバイトほどだ。デスクトップ機なら寛大になれる容量だが、やはりノートにはつらい。あらかじめ「覚悟」が必要だ。
結局、このキャッシュファイルから様々な仕様がさらに判明し、どうにかこうにかキーワードを指定してのメタ検索ができるようになった。ただ、かなり気を利かせて検索キーワードを分解してクエリーを投げてくれているような雰囲気がする(そこまでせんでえーっちゅうに)。さらに研究してみないといけない。
Mac OS X 10.5で検索語句に対して類義語までキーワード展開して検索してくれるようになったらいいのだが……。
