(57)【要約】【解決手段】外部サーバおよび外部データベースシステムを利用する大規模企業において、一意の電子メールメッセージを識別するシステムおよび方法である。メッセージの一意性は、電子メッセージのプロパティ（５００）に基づき、各メッセージへのメッセージタグの割り当てにより確定される。メッセージタグ（５０６）は、索引および比較操作の速度を上げるため、ハッシュアルゴリズム（５０４０を用いて計算される。メッセージタグ（５０６）は、既存の電子メールメッセージと関連付けられたメッセージタグのインデックスファイルと比較される。インデックスファイル内において一致する電子メールメッセージが見つかった場合、そのメッセージは一意ではない。それに対して、見つからなかった場合は、その電子メールメッセージは一意であり、そのメッセージタグはインデックスファイル（４０６）に加えられる。本システムは、インデックスファイルを格納するための関連型データベースを含んでもよい。さらに、本発明の一意性検査機能を用いるアーカイブシステムおよび方法も開示される。【選択図】図５
2005501308.tif 000002
【特許請求の範囲】
【請求項１】
電子メールメッセージングシステムから抽出された複数の電子メールメッセージにおいて一意の電子メールメッセージを識別する方法であって、
前記電子メールメッセージングシステムのメールボックスから複数のメッセージプロパティを含むメッセージを取り出し、
前記複数のメッセージプロパティの少なくとも一部からメッセージタグを算出し、
インデックスファイルに格納されているメッセージタグのリストを検査し、
前記メッセージタグがインデックスファイルの中に発見できるか否かに基づいて前記メッセージが一意であるか否かを判断すること
を備える方法。
【請求項２】
請求項１に記載の方法であって、前記メッセージタグは、前記複数のメッセージプロパティから選択された少なくとも２種類のプロパティを結合することによって算出される方法。
【請求項３】
請求項２に記載の方法であって、前記メッセージタグはさらに、所定の長さを有する均一の列を形成するために、前記メッセージタグにハッシュアルゴリズムを適用することによって算出される方法。
【請求項４】
請求項３に記載の方法であって、前記ハッシュアルゴリズムは、ＭＤ５ハッシュアルゴリズムである方法。
【請求項５】
請求項１に記載の方法であって、前記複数のメッセージプロパティは、送信者名と送信者による送信時刻とを含み、かつ前記メッセージタグは、前記送信者名と前記送信者による送信時刻とを結合することにより算出される方法。
【請求項６】
請求項１に記載の方法であって、前記複数のメッセージプロパティは、送信者名、送信者による送信時刻および件名を含み、前記メッセージタグは、前記送信者名および前記件名と前記送信者による送信時刻とを結合することにより算出される方法。
【請求項７】
請求項１に記載の方法であって、前記インデックスファイルはリレーショナルデータベースシステムに格納されている方法。
【請求項８】
電子メールメッセージングシステムの外部のシステムにおいて複数の電子メールメッセージをアーカイブする方法であって、
前記電子メールメッセージングシステムの第１のメールボックスから少なくとも第１の送信者名と少なくとも第１の送信者による送信時刻とを含む第１のメッセージを読み、
前記第１の送信者名と前記第１の送信者による送信時刻とから第１のメッセージタグを算出し、
メッセージアーカイブに前記第１のメッセージを格納するとともに前記メッセージアーカイブに関連付けられたインデックスファイルに前記第１のメッセージタグを格納し、
前記電子メールメッセージングシステムの第２のメールボックスから少なくとも第２の送信者名と少なくとも第２の送信者による送信時刻とを含む第２のメッセージを読み、
前記第２の送信者名と前記第２の送信者による送信時刻とから第２のメッセージタグを算出し、
前記第２のメッセージタグと前記第１のメッセージタグとを比較し、
前記第１のメッセージタグと前記第２のメッセージタグとが同一でない場合、前記メッセージアーカイブに前記第２のメッセージを格納するとともに前記インデックスファイルに前記第２のメッセージタグを格納すること
を備える方法。
【請求項９】
請求項８に記載の方法であって、前記第１のメッセージタグは、第１のメッセージ列を形成するために前記第１の送信者名と前記第１の送信者による送信時刻とを結合することにより算出され、かつ前記第２のメッセージタグは、第２のメッセージ列を形成するために前記第２の送信者名と前記第２の送信者による送信時刻とを結合することにより算出される方法。
【請求項１０】
請求項９に記載の方法であって、前記第１のメッセージタグはさらに、所定の長さを有する第１の均一な列を形成するために、前記第１のメッセージ列にハッシュアルゴリズムを適用することにより算出され、前記第２のメッセージタグはさらに、所定の長さを有する第２の均一な列を形成するために、前記第２のメッセージ列にハッシュアルゴリズムを適用することにより算出される方法。
【請求項１１】
請求項１０に記載の方法であって、前記ハッシュアルゴリズムはＭＤ５ハッシュアルゴリズムである方法。
【請求項１２】
請求項８に記載の方法であって、前記第１のメールボックスおよび前記第２のメールボックスは、前記電子メールメッセージングシステム上の異なるメールボックスである方法。
【請求項１３】
請求項８に記載の方法であって、前記インデックスファイルはリレーショナルデータベースシステムに格納されている方法。
【請求項１４】
請求項８に記載の方法であって、前記メッセージアーカイブはリレーショナルデータベースシステムである方法。
【請求項１５】
一意の電子メールメッセージを識別する電子メールメッセージングシステムの外部のシステムであって、
前記電子メールメッセージングシステムのメールボックスから複数のメッセージプロパティを含む電子メールメッセージを読みこむ手段と、
前記複数のメッセージプロパティより選択された少なくとも２種類のプロパティからメッセージタグを算出する手段と、
前記メッセージタグをインデックスファイルに格納されたメッセージタグのリストと比較する手段と、
前記メッセージタグが前記インデックスファイルに存在しない場合はそのメッセージは一意であると判断する手段と
を備えるシステム。
【請求項１６】
請求項１５に記載のシステムであって、前記少なくとも２種類のプロパティは送信者名と送信者の送信時刻とを含むシステム。
【請求項１７】
請求項１５に記載のシステムであって、前記メッセージタグは、第１のメッセージ列を形成するためにプロパティの少なくとも２種類を結合することによって算出されるシステム。
【請求項１８】
請求項１７に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することによって算出されるシステム。
【請求項１９】
請求項１８に記載のシステムであって、前記ハッシュアルゴリズムはＭＤ５ハッシュアルゴリズムであるシステム。
【請求項２０】
請求項１５に記載のシステムであって、前記インデックスファイルはリレーショナルデータベースシステムに格納されているシステム。
【請求項２１】
一意の電子メールメッセージを識別する電子メールメッセージングシステムの外部システムであって、
前記電子メールメッセージングシステムと通信する一意性チェッカと、
複数の所定のメッセージタグを含むインデックスファイルと
を備え、
前記一意性チェッカは、前記電子メールメッセージングシステムからのメッセージを読みこむよう構成され、前記メッセージは前記メッセージと関連付けられた複数のプロパティを含み、前記一意性チェッカは、前記プロパティの少なくとも２種類を用いてメッセージに対するメッセージタグを算出し、前記算出されたメッセージタグと前記インデックスファイルとを比較して、前記算出されたメッセージタグが前記インデックスファイル内のエントリと一致した場合、前記一意性チェッカは、前記メッセージが一意ではないと判断し、前記算出されたメッセージタグが前記インデックスファイルのエントリと一致しない場合は、前記算出されたメッセージタグは前記インデックスファイルに加えられるシステム。
【請求項２２】
請求項２１に記載のシステムであって、前記メッセージタグは、メッセージ列を形成するために前記プロパティの少なくとも２種類を結合することによって算出されるシステム。
【請求項２３】
請求項２２に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することによって算出されるシステム。
【請求項２４】
請求項２３に記載のシステムであって、前記ハッシュアルゴリズムはＭＤ５ハッシュアルゴリズムであるシステム。
【請求項２５】
請求項２１に記載のシステムであって、前記一意性チェッカは、電子メールメッセージングシステムのメールボックスから前記メッセージを読みこむシステム。
【請求項２６】
請求項２１に記載のシステムであって、前記複数のプロパティは、送信者名と送信者の送信時刻とを備えるシステム。
【請求項２７】
請求項２６に記載のシステムであって、前記複数のプロパティはさらに件名の列を含み、前記メッセージタグはメッセージ列を形成するために、前記送信者名、前記送信者による送信時刻、および前記件名の列を結合することにより算出されるシステム。
【請求項２８】
請求項２７に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することにより算出されるシステム。
【請求項２９】
請求項１５に記載のシステムであって、前記インデックスファイルはリレーショナルデータベースシステムに格納されているシステム。
【請求項３０】
複数の電子メールメッセージをアーカイブする電子メールメッセージングシステムの外部システムであって、
前記電子メールメッセージングシステムの第１のメールボックスから少なくとも第１の送信者名と第１の送信者による送信時刻とを含む第１のメッセージを読みこむ手段と、
前記第１の送信者名と前記第１の送信者による送信時刻とから第１のメッセージタグを算出する手段と、
前記第１のメッセージをメッセージアーカイブに格納するとともに前記第１のメッセージタグを前記メッセージアーカイブと関連付けられたインデックスファイルに格納する手段と、
前記電子メールメッセージングシステムの第２のメールボックスから、少なくとも第２の送信者名と第２の送信者による送信時刻とを含む第２のメッセージを読みこむ手段と、
前記第２の送信者名と前記第２の送信者による送信時刻とから第２のメッセージタグを算出する手段と、
前記第２のメッセージタグと前記第１のメッセージタグとを比較する手段と、
前記第１のメッセージタグと前記第２のメッセージタグとが同一でない場合、前記第２のメッセージを前記メッセージアーカイブに格納するとともに、前記第２のメッセージタグをインデックスファイルに格納する手段と
を備えるシステム。
【請求項３１】
請求項３０に記載のシステムであって、前記第１のメッセージタグは、第１のメッセージ列を形成するために前記第１の送信者名と前記第１の送信者による送信時刻とを結合することによって算出され、前記第２のメッセージタグは、第２のメッセージ列を形成するために前記第２の送信者名と前記第２の送信者による送信時刻とを結合することにより算出されるシステム。
【請求項３２】
請求項３１に記載のシステムであって、前記第１のメッセージタグはさらに、所定の長さを有する第１の均一な列を形成するために前記第１のメッセージタグにハッシュアルゴリズムを適用することにより算出され、前記第２のメッセージタグはさらに、所定の長さを有する第２の均一な列を形成するために前記第２のメッセージタグにハッシュアルゴリズムを適用することにより算出されるシステム。
【請求項３３】
請求項３２に記載のシステムであって、前記ハッシュアルゴリズムはＭＤ５ハッシュアルゴリズムであるシステム。
【請求項３４】
請求項３０に記載のシステムであって、前記第１のメッセージはさらに第１の件名列を含み、かつ前記第２のメッセージはさらに第２の件名列を含み、前記第１のメッセージタグは、第１のメッセージ列を形成するために、前記第１の送信者名、前記第１の送信者による送信時刻および前記第１の件名列を結合することにより算出され、前記第２のメッセージタグは、第２のメッセージ列を形成するために、前記第２の送信者名、前記第２の送信者による送信時刻および前記第２の件名列を結合することにより算出されるシステム。
【請求項３５】
請求項３０に記載のシステムであって、前記インデックスファイルはリレーショナルデータベースシステムに格納されているシステム。
【請求項３６】
請求項３０に記載の方法であって、前記メッセージアーカイブはリレーショナルデータベースシステムである方法。
【請求項３７】
電子メールメッセージングシステムから選択された複数の電子メールメッセージを外部においてアーカイブするシステムであって、
前記電子メールメッセージングシステムと通信するアーカイブサーバと、
前記アーカイブサーバと通信する一意性チェッカと、
前記アーカイブサーバと通信するアーカイブメッセージストアと
を備え、
前記アーカイブサーバが前記電子メールメッセージングシステムからメッセージを読みこむ際、前記メッセージと関連付けられた複数のプロパティが前記アーカイブサーバから前記一意性チェッカへと送信され、
前記一意性チェッカは、前記プロパティの少なくとも２種類を用いて前記メッセージのメッセージタグを算出し、前記算出されたメッセージタグとインデックスファイルとを比較し、前記算出されたメッセージタグが前記インデックスファイル内のエントリと一致した場合には、その一意性チェッカは前記アーカイブサーバに前記メッセージは一意ではないことを示し、かつ前記算出されたメッセージタグが前記インデックスファイル内のエントリと一致しない場合には、前記算出されたメッセージタグは前記インデックスファイルに加えられ、前記メッセージが一意である場合には、前記アーカイブサーバは前記メッセージを前記アーカイブメッセージストアに格納するシステム。
【請求項３８】
請求項３７に記載のシステムであって、前記メッセージタグは、メッセージ列を形成するために前記プロパティの少なくとも２種類を結合することによって算出されるシステム。
【請求項３９】
請求項３８に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することにより算出されるシステム。
【請求項４０】
請求項３９に記載のシステムであって、前記ハッシュアルゴリズムはＭＤ５ハッシュアルゴリズムであるシステム。
【請求項４１】
請求項３７に記載のシステムであって、前記アーカイブサーバは、前記電子メールメッセージングシステムのメールボックスよりメッセージを読みこむシステム。
【請求項４２】
請求項４１に記載のシステムであって、前記複数のプロパティは、送信者名と送信者による送信時刻とを含むシステム。
【請求項４３】
請求項４２に記載のシステムであって、前記複数のプロパティはさらに件名列を含み、前記メッセージタグはメッセージ列を形成するために、前記送信者名、前記送信者による送信時刻、および前記件名を結合することにより算出されるシステム。
【請求項４４】
請求項４３記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することによって算出されるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、電子メールメッセージおよびメッセージングシステムの管理に関する。より具体的には、本発明は、電子メールメッセージングシステムから抽出されたメッセージの取り扱いに関する。
【背景技術】
【０００２】
電子メール（Ｅメール）メッセージングシステムは、多くの企業において中心的アプリケーションとなった。ある組織では、個人が通常、一日に送受信する電子メールのメッセージ数はほんの２、３件であるが、別の組織においては、一般ユーザが一日に何十件ものメッセージを送受信する。電子メールメッセージングシステムは、組織の規模に応じて、一日に何百件か何千件ものメッセージを処理し得る。天文学的ともいえる速度でメッセージおよび添付ファイルの数やサイズが増加し、メッセージストア内のビジネスに不可欠な情報量が増大してくると、電子メールサービスの管理がますます困難となった。電子メールサーバの能力を超える負荷は、バックアップや回復機能に影響を及ぼす可能性があり、不慮の削除、あるいはメールサーバの不具合が原因となって、基幹情報の損失を招き得る。
【０００３】
従来のいくつかの電子メールシステムにおいては、メッセージストアのサイズは、例えば、個々のメールボックスに格納可能なメッセージ数、メールボックスに格納されたメッセージの累積サイズ、個々のメッセージサイズおよびメッセージストアに格納され得るメッセージ総数に対する制限など、一定の閾値によって制御することができる。これらの閾値は、システム管理者による制御が可能であり、電子メールメッセージアプリケーションへの「ハードコーディング」が可能な場合もある。このような閾値における課題は、ユーザが重要なメッセージを必要とする期間中保存できるような管理能力を実質的に提供することなく、予め定義された範囲内でメッセージストアを維持しようとする点である。
【０００４】
メッセージストアのサイズを抑制するため、従来技術に用いられてきた別の方法として、メッセージを「アーカイブ」する方法がある。従来のメッセージアーカイブシステムは、電子メールメッセージングアプリケーションに組み込まれていた。しかしながら、このようなシステムは一般に、所有権を有するソフトウェアアプリケーションであるため、メッセージのアーカイブや読み出し方法に関し、電子メール管理者にとって選択の余地はそれほど多くはない。あるシステムでは、ユーザがアーカイブメッセージを読み出す必要がある場合は、システム管理者を介さなければならないことがある。別のシステムでは、「アーカイブ」とは単に、メッセージをユーザのローカルハードドライブにダウンロードすることであるため、アーカイブメッセージを読み出すために容易にアクセスや検索ができないことがある。
【０００５】
統合的なアーカイブ機能を有さないこれらの電子メールシステムにおいて、システム管理者は、電子メールバックアップ手続を通じて、マニュアルアーカイブ動作を実装し得る。一般に、バックアップ手続は、突発的な障害が起こった場合に、メッセージストア（「ポストオフィス」としても知られる）を完全に回復できるよう設計されている。しかしながら、一般的に、アーカイブシステムに所望される機能性の多くは、こうしたバックアップ手続により提供されない。例えば、いくつかのバックアップ手続では、電子メール管理者は、個々のユーザのメールボックスから、単に１件かそれ以上のメッセージを読み出すためだけに、ポストオフィス全体をリストアしなければならないことがある。典型的なバックアップ手順に関する別の課題は、電子メール管理者に対し、バックアップファイルからのメッセージのコンテンツに基づく特定のメッセージの検索が認められない可能性がある点である。全文検索機能がない場合、特定の電子メールメッセージがアーカイブされたか否かの判断は、いっそう困難である。
【０００６】
電子メール管理者にとってさらに複雑なことに、電子メールのアーカイブ要求は、組織によって異なり得る。例えば、「包括的」なアーカイブ方式は、ユーザがあらゆるメッセージを削除する機会を得る前に、アーカイブ処理が「リアルタイム」にて全メッセージをキャプチャすることが要求される場合に必要となり得る。包括的なアーカイブを実施する一方法は、メッセージが送信もしくは受信され、メッセージのコピーがアーカイブに置かれるとき、メッセージを取り込む方法である。本態様では、メッセージは、全受信者に配送される前にキャプチャされるとともにアーカイブされる。したがって、アーカイブファイルには、一般に、各アーカイブメッセージの単一のコピーのみが格納される。こうすることによって、アーカイブファイルのサイズが縮小される。
【０００７】
別の組織では、その会社の方針により、包括的なアーカイブは不要であるかもしれないが、その代わりに、週単位もしくはその他の周期でアーカイブ処理が実行され得る。このようなアーカイブ処理は、電子メールシステムによって処理された全メッセージをキャプチャするのではなく、処理の実行までに消去されていないシステム上のメッセージのみをキャプチャすることになる。リアルタイムアーカイブシステムとは異なり、周期的アーカイブシステムでは、メッセージは、個々の受信者への配信後にしかキャプチャされない。第三者、すなわち外部の周期的メッセージアーカイブシステムは、基本的に、システム内の各メールボックスに格納されている全メッセージを読み出すことにより動作する。読み出される各メッセージは、続いてアーカイブファイルに複製される。各メールボックスは別々に読み出されるため、このような従来型アーカイブシステムによって生成されたアーカイブファイルは、不要な大きさのファイルとなる。したがって、複数のメールボックスに配信されたメッセージは、アーカイブ処理において、別個のメッセージとして扱われるため、重複したメッセージをアーカイブファイルに保存することになる。アーカイブシステムがメッセージストアの内部構造にアクセスしていた場合、各メッセージの単一コピーのみアーカイブすることは、アーカイブシステム上可能であるが、一般にこのようなアクセスは、電子メールシステムの所有権上の性質より、第三者に許可されるものではない。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
したがって、電子メールメッセージングシステムから抽出された一意の電子メールメッセージにインデックスを付するシステムおよび方法が必要とされる。
【０００９】
本発明は、電子メールメッセージングシステムから抽出された一意の電子メールメッセージにインデックスを付するシステムおよび方法を提供する。その方法は、電子メールメッセージングシステム上のメールボックスからメッセージを読み出す工程を含み、その工程において、メッセージは複数のメッセージプロパティを備える。メッセージプロパティとしては、例えば、送信者名、送信者による送信時刻、件名などが含まれる。送信元の電子メールメッセージングシステムが外部メッセージングシステムの場合は、例えば、送信者名を電子メールアドレスとしてよいし、電子メールメッセージングシステムが送信先のメッセージングシステムの場合は、標準名としてよい。送信時刻は、好ましくは送信元の電子メールメッセージングシステムによって設定された送信時刻に準じ、例えばマイクロセカンドで表示してよい。
【００１０】
本発明は、次に、好ましくはメッセージプロパティを用いたデータ列からなる一意の識別子もしくはメッセージタグを算出する。例えば、送信者名および送信者による送信時刻は、メッセージタグの算出に使用され得る。メッセージが一意である、つまり、メッセージタグはインデックスファイルに保存済みではない場合、そのメッセージタグはそのメッセージアーカイブと関連付けられたインデックスファイルに保存される。メッセージタグが既にインデックスファイルに存在する場合は、そのメッセージは一意ではない。
【００１１】
メッセージが一意であるか否かの判断処理のスピードを上げるために、メッセージタグにハッシュアルゴリズムを適用して、所定のメッセージ長の「署名」を得ることができる。したがって、新たに算出されたメッセージタグと既にインデックスファイルに格納されたメッセージタグとの比較は、インデックスレコードの長さの統一により、さらに迅速になる。
【００１２】
本発明はさらに、一意のメッセージのみがメッセージアーカイブに格納されるアーカイブシステムおよび方法を備える。
【発明を実施するための最良の形態】
【００１３】
本発明は、単一あるいは複数の電子メールメッセージングシステムから抽出された一意の電子メールメッセージにインデックスを付するシステムおよび方法を提供する。本発明はさらに、メッセージストアから抽出された一意のメッセージのみをアーカイブすることにより、同一の電子メールメッセージの複数のコピーに重複したアーカイブ処理を最小限にする、あるいは回避するシステムおよび方法を提供する。
【００１４】
本発明は、インデックスファイルを用いて、電子メールメッセージングシステムから既に抽出されたメッセージに関する情報を格納する。インデックスファイルは、ファイル内のエントリの容易な検索と比較とを可能にする任意の適したフォーマットを用いて格納され得る。インデックスファイルとしては、例えば、テキストファイル、スプレッドシート、もしくはリレーショナルデータベーステーブル、あるいはテーブルセットが可能である。電子メールメッセージがアーカイブに加えられる度に、必ず「メッセージタグ」が生成され、インデックスファイルに格納される。メッセージタグは、各電子メールメッセージに対する一意の識別子を作成するのに十分な電子メールのプロパティか属性に準じる。
【００１５】
本発明のシステムおよび方法は、電子メールメッセージングシステム上の、重複したメッセージの識別に好適な任意のアプリケーションに用いられ得る。例えば、アーカイブメッセージストアのサイズを縮小、あるいは最小限に抑えるために、電子メールアーカイブアプリケーションに、本発明のシステムおよび方法を有効に組み込むことが可能である。本発明がアーカイブシステムに用いられた場合、一時メッセージタグは、メッセージがアーカイブに加えられる前に、電子メールメッセージに対して作成される。次に、この一時メッセージタグは、既にインデックスファイルに格納された各メッセージタグと比較される。一時メッセージタグがインデックスファイル内のエントリと一致する既存のタグである場合、その電子メールメッセージは既にアーカイブ済みである。この場合、そのメッセージはアーカイブ処理される必要はない。
【００１６】
以下のセクションにおいて、本発明の２つの実施形態を説明する。各実施形態において用いられる電子メールメッセージに対するメッセージタグの作成（すなわち算出）方法は異なる。
【００１７】
・第１実施例：
本発明の第１の実施例については、図１を参照して説明する。本実施例においてメッセージタグは、選択されたメッセージプロパティを結合して単一のテキスト列を形成することにより、算出され得る。例えば、電子メールメッセージングシステムがマイクロソフトエクスチェンジシステムの場合、メッセージは、ボックス１０の「Client_Submit_Time」、ボックス１２の「Sent_Representing_Email_Address」およびボックス１４の「PR_Subject」というプロパティを含み得る。ボックス１６、１８および２０は、これらの各プロパティとそれぞれ関連付けられた対応するデータ形式を示す。ボックス２２、２４および２６は、これらのプロパティがある特定のメッセージに対して持ち得る実効値の一例を示す。例えば、ボックス１０の「Client_Submit_Time」に対する値は、ボックス２２において「OxOlcl9el38106580」と表示される。本実施例における送信時刻は、メッセージがメッセージの送信者によって送信された時刻を表す。時刻用フォーマットは、送信者の電子メールメッセージングサーバ上のシステムクロックによって作成されるのと同じフォーマットである。送信時刻用のフォーマットが各サーバ用に標準化されている場合に限り、送信時刻用のフォーマットは重要ではない。すなわち、ある特定のサーバから受信された全メッセージのメッセージタグを算出するには、同一のタイムフォーマットを用いるべきである。
【００１８】
ボックス２４は、ボックス１２におけるエクスチェンジプロパティ「Sent_Email_Address」の値、「/o=sqa/ou=dogwood/cn=Recipients/cn=Crowen」を含む。本プロパティは、送信者の「完全な権限名」として従来より広く言及されている。送信者の送信時刻および送信者の完全な権限名に準じて作成されたメッセージタグは、ほとんどの電子メールメッセージの一意的識別に十分である。各値を結合する（リンク３０に図示されるように）ことにより、メッセージタグ４０が生成される。上述のように、送信時刻および送信者名を用いれば、通常、十分電子メールメッセージの一意的な識別が可能である。しかしながら、メッセージタグが一意のメッセージを表す尤度の向上をはかるため、その他のプロパティが列に追加され得る。例えば、図１に示されるように、ボックス１４のPR_Subjectプロパティが含まれ得る。本実施例において、ボックス２６に示すように、このプロパティの値は「こればテストメッセージである」というものである。リンク３２において、３種類のプロパティすべてがメッセージタグ４２を形成するために結合される。
【００１９】
上述のメッセージタグ生成方法は、本発明の趣旨を逸脱することなく多様な方法で変更され得る。例えば、得られるメッセージタグが送信時刻列と送信者名列とを結合することによって形成されるよう、結合順序を変更してよい。あるいは、件名が送信者名、または送信時刻等の前に置かれてもよい。さらに別の方法において、電子メールメッセージの送信者を識別するために、送信者名は他のプロパティを含んでよい。例えば、送信者名を「Jdoe＠acme.com」のような、インターネット電子メール名で表示してよい。その後、この値は上述のように用いられる。さらに、メッセージサイズ、ヘッダ情報などその他のメッセージプロパティに準じた送信者情報を用いることなく、メッセージタグを生成することができる。
【００２０】
本実施形態にしたがって生成されたメッセージタグは、可変長である。すなわち、電子メールメッセージングシステムから抽出された第１のメッセージに対するメッセージタグは、電子メールメッセージングシステムから抽出された第２のメッセージのメッセージタグと長さが異なり得る。これは、特に、送信者名および電子メールメッセージの件名欄の長さが異なり得るためである。さらに、異なる電子メールメッセージングシステムは、送信時刻を算出するために異なる実装方法を使用し得る。インデックスファイルが極めて大きい場合、メッセージタグの可変長に起因して、インデックスファイル内の検索は冗長な動作となり得る。以下で説明される第２実施形態では、このような検索を最適化する、改良されたメッセージタグが提供される。
【００２１】
・第２実施例：
第２実施形態では、ハッシュアルゴリズムを適用することによって、可変長のメッセージタグは所定の長さを有するメッセージタグへと変換される。一般にハッシュアルゴリズムは、メッセージを暗号化する鍵を生成するために、暗号化技術分野において一般的に用いられている。また、ハッシュアルゴリズムは、メッセージの正当性を認証するために利用可能なメッセージの電子「署名」の作成にも使用される。こうした署名は、メッセージの「フィンガープリント」あるいは「メッセージダイジェスト」としても知られている。このようなハッシュアルゴリズムの背景にある一原理は、二つの異なるメッセージにアルゴリズムを適用して同じ結果を得ることは「算出上不可能」なことである。ハッシュアルゴリズムの別の原理は、生成されたメッセージダイジェストは、均一な長さを有することである。本発明の背景として有益なのは、この２番目の原理である。すなわち、上述のように作成された異なるメッセージタグがハッシュアルゴリズムを介して処理される場合、生成されたメッセージタグは均一な長さを有しつつも、一意の電子メールメッセージを表すことになる。
【００２２】
図２は、本発明の第２の実施例の動作を示す概略図である。項目番号１０から４２については、上記図１と関連付けて説明する。図２を参照して説明されるように、メッセージタグ４２は、選択されたプロパティを結合し、可変長の列を形成することにより生成される。この列は、続いてハッシュアルゴリズム５０への入力として用いられる。本実施例において、ハッシュアルゴリズム５０の出力は６４ビットで、ボックス６０に示される１６進数の列「Ox4764eOccl21642b5」で表される。従来から知られているように、こうした列は、多種の異なる表示に変換され得る６４ビットの組（複数の１と０）を最終的には示す。
【００２３】
均一な長さのメッセージタグを生成することにより、インデックスファイル上の検索および比較操作の性能が著しく向上され得る。好適な実施形態において、周知の「ＭＤ５」ハッシュアルゴリズムが用いられている。ＭＤ５ハッシュアルゴリズムは、ＲＦＣ１３２１、www. faqs.org/rfcl321.htmlで定義されているが、全体を引用することにより本明細書に組み込まれている。ＭＤ５ハッシュアルゴリズムを用いて生成されたメッセージタグは、１２８ビットの均一な長さを有する（すなわち、（ＡＳＣＩＩ文字に変換された場合には）１６文字、あるいは３２個の１６進数）。
【００２４】
・構造：
図３は、本発明の実施例を実装するために用いられ得る構成を示す。企業電子メールメッセージングシステム３００は、クライアント３０２および３０４に電子メールサービスを提供する電子メールサーバ３０１を備える。電子メールメッセージングシステム３００としては、マイクロソフトエクスチェンジサーバが可能で、アーカイブサーバ３３０と電子メールメッセージングサーバ３００間の通信は、周知のメッセージアプリケーションプログラムインタフェース（ＭＡＰＩ）プロトコルを介して処理され得る。従来より周知のとおり、ＭＡＰＩはメッセージング構造であるとともにクライアントインタフェース構成要素である。メッセージング構造としてのＭＡＰＩは、複数のアプリケーションと種々のハードウェアプラットフォームにわたる複数のメッセージングシステムとの相互作用を可能とする。クライアントインタフェース構成要素としてのＭＡＰＩは、ＭＡＰＩサブシステムのクライアントアプリケーションおよびサービスプロバイダインタフェースの基盤を形成する機能とオブジェクト指向インタフェースとの完全な組み合わせである。シンプルＭＡＰＩ、コモンメッセージングコール（ＣＭＣ）およびＣＤＯライブラリ間の比較において、ＭＡＰＩは、メッセージングベースのアプリケーションおよびサービスプロバイダに対して、最高の性能と最も優れた制御性とを提供する。別の方法として、電子メールメッセージングシステム３００として、ロータスノーツメールサーバが可能で、通信は、ロータスノーツアプリケーションプログラムインタフェース（ＡＰＩ）プロトコルを介して処理され得る。同様に、電子メールメッセージングシステムがシンプルメール転送プロトコル（ＳＭＴＰ）メールサーバの場合、通信は、ＳＭＴＰを介して処理され得る。
【００２５】
図３に示す実施例において、通信回線３０６および３０８は、クライアントシステムの３０２および３０４の容量に応じて、ＭＡＰＩ、ＳＭＴＰもしくはその他のプロトコルを使用することができる。電子メールは、外部システム３２０からＳＭＴＰを介したインターネット３２２を経由し、通信回線３２１を通って受信され得る。本発明の一実施形態において、アーカイブサーバ３３０は、通信回線３３２を介し、周期的ベースで電子メールサーバ３０１とのアーカイブセッションを開始する。この周期的ベースは、企業のアーカイブ要求に応じて、例えば、日、週、月単位か、その他適した時間間隔としてよい。通信回線３３２は、例えば、周知の送信制御／インターネットプロトコル（ＴＣＰ／ＩＰ）など、任意の適したネットワークプロトコルを使用してよい。本発明の別の実施形態において、アーカイブサーバ３３０は、リアルタイムか、ほぼリアルタイムで電子メールを取り出す。
【００２６】
従来技術において周知のとおり、電子メールメッセージングサーバ３０１は、複数のメールボックス、ディレクトリ、フォルダ、あるいはメッセージを個々のユーザと関連づけるために使用されるその他の「保存区画」を備え得る。本明細書において使用されるように、「メールボックス」という用語は、特定のユーザと関連付けられたメッセージの集合を意味し、そこには、ユーザが自分の電子メールメッセージを整理するために作成する任意の適したサブフォルダかディレクトリが含まれる。いくつかの実施形態において、メールボックスには、新たに届いた電子メールメッセージを保存するための「インボックス」と、ユーザが送信したメッセージを保存するための「アウトボックス」とが含まれてよい。
【００２７】
アーカイブサーバ３３０が周期的ベースでメッセージを抽出する一実施例において、アーカイブサーバ３３０は、電子メールサーバ３０１上の各メールボックス内の全メッセージを読みこむ。別の実施例において、アーカイブサーバ３３０は、前回の周期セッションの完了後に作成されたか配信された新規メッセージしか読み込まないよう構成され得る。別の実施形態において、アーカイブサーバ３３０は、メールボックスのインボックスおよびアウトボックス内のメッセージのみを読みこむよう構成することができる。実装されているメッセージ読み込みスキームにかかわらず、アーカイブサーバは、メッセージの一意性を判断するためにインデックスファイルを検査する。
【００２８】
「一意性検査」機能は、アーカイブサーバ３３０に内蔵されてもよいし、別のサーバ上で実行されてもよい。いずれにしても、一意性検査機能には、上述されたメッセージタグの算出が含まれる。新たに読み込まれたメッセージに対するメッセージタグは、データベース３３４のインデックスファイルと比較される。インデックスファイルは、データベース３３４のメッセージアーカイブに格納された全メッセージに対応するメッセージタグリストを含む。算出されたメッセージタグが、インデックスファイル内の項目と一致した場合は、そのメッセージは一意ではない。すなわち、そのメッセージは既にメッセージアーカイブに格納されているため、二度目の格納は不要である。別の方法では、算出されたメッセージタグがインデックスファイル内のいずれの記録とも一致しない場合は、そのメッセージは一意であり、かつメッセージアーカイブに格納されるべきメッセージである。この場合、そのメッセージタグもインデックスファイルに加えられる。
【００２９】
メッセージがアーカイブサーバ３３０上でアーカイブされると、電子メールサーバ３０１の性能に影響を与えることなく、そのデータは別の保存媒体へと移転され得る。例えば、テープライブラリシステム３３５、光学ジュークボックス３３６、ＣＤ／ＤＶＤ光学装置３３７などへデータは移動され得る。これらの媒体は、他の磁気記憶媒体より安価なため、アーカイブデータをこれらの記憶媒体へ移動することにより、組織にとって、長期の保存コスト削減が可能となる。
【００３０】
図４は、本発明の一実施形態における電子メールメッセージのアーカイブ処理工程を示すフローチャートである。工程４００から４０６は初期化工程で、処理を明示するためのものである。すなわち、メッセージアーカイブおよびインデックスファイルが一旦存在させられると、処理は工程４０８から４２０を実行する。工程４００において、電子メールメッセージングサーバのメールボックスから、第１のメッセージが読みこまれる。工程４０２において、第１のメッセージに対するメッセージタグが算出され、工程４０４において、第１のメッセージはメッセージアーカイブに格納される。工程４０６において、算出された第１のメッセージに対するメッセージタグは、インデックスファイルに格納される。工程４０８において、電子メールメッセージングサーバのメールボックスより、第２の（すなわち次の）メッセージが読みこまれる。メールボックスは、第１のメッセージを読みだしたメールボックスと同じメールボックスであっても、別のメールボックスであってもよい。工程４１０において、第２のメッセージに対するメッセージタグが算出され、工程４１２において、第２のメッセージタグは、第１のメッセージタグと比較される（すなわち、第２のメッセージタグは、インデックスファイルに既に格納された全メッセージタグと比較される）。
【００３１】
工程４１４では、工程４１２の結果に応じて処理が分岐する。第２のメッセージタグが第１のメッセージタグと一致した場合（すなわち、第２のメッセージタグがすでにインデックスファイル内に存在する場合）は、第２のメッセージは一意ではないとし、処理は工程４２０へと移る。そのメッセージが一意である場合（すなわち、メッセージタグがインデックスファイル内のいずれの項目とも一致しなかった場合）は、第２のメッセージは工程４１６においてメッセージアーカイブに格納され、かつ第２のメッセージタグは工程４１８においてインデックスファイルに格納される。
【００３２】
工程４２０で、処理は、他に電子メールメッセージングサーバから読みこまれるメッセージがあるか否かを検査する。さらにメッセージがある場合は、処理は工程４０８に戻って、次のメッセージを読みこむ。逆に、それ以上メッセージがない場合は、処理は完了する。
【００３３】
図５は、本発明の第２の実施例において、メッセージタグがどのように算出され得るかを示す概略図である。図５において、電子メールメッセージプロパティ５００は、電子メールメッセージから選択される。本明細書中に述べたとおり、送信者名と送信時刻とを組み合わせることにより、ほとんどのアプリケーションにおいて、電子メールメッセージを一意的識別することが十分可能である。選択されたプロパティは、単一の列を形成するために結合される。その列は、空白を含んでもよいし、含まなくてもよい。その列は、ボックス５０２において、適したビット表示に変換される。ボックス５０４では、ボックス５０６のメッセージタグを判断するために、ハッシュアルゴリズムがビット列に適用される。
【００３４】
本明細書中に述べたとおり、電子メールメッセージのアーカイブおよび取り出しを行う本システムおよび方法は、専用のアーカイブサーバおよびＳＱＬかＯＲＡＣＬＥ（商標ｂｒａｎｄのようなデータベースシステムを使用する大規模な企業環境において用いられ得る。別の態様において、アーカイブサーバは、電子メールメッセージングサーバと同じプラットフォームにあるとしてよい。上述のとおり、電子メールメッセージングサーバは、例えば、マイクロソフトアウトルック（商標）やロータスノーツ（商標）、すなわち著作権のある電子メールメッセージングシステムか、もしくは著作権のない電子メールメッセージングシステムなど任意の適した電子メールメッセージングシステムに準じてよい。
【００３５】
・アプリケーションプログラムを含む実施形態：
本発明の一実施例は、さらに、任意の磁気媒体か電子媒体に記録されたアプリケーションプログラムと、そのプログラムがプログラミングされたコンピュータシステムとを備えている。本実施例において、コンピュータシステムは、アーカイブに加えられるメッセージを識別するために、電子メールメッセージングサーバのメールボックスを探索するようプログラムされる。こうしたプログラムは、本発明のプログラムが実行される前に、電子メールメッセージングシステムに配信されたメッセージを処理するよう動作し得る。この手法では、そのプログラムは、既存の電子メールメッセージをアーカイブのために識別し、抽出する。そのプログラムはさらに、リアルタイムでメッセージをアーカイブするよう構成され得る。すなわち、メッセージが電子メールメッセージングシステムによって処理される際、アーカイブ処理のための複製がアーカイブサーバによって取り出される。本発明の実施例には、メッセージメタデータの高速検索を支援するための埋め込みリレーショナルデータベースが含まれ得る。このような実施例では、キーワードもしくはメッセージの全文が、メッセージを素早く検索するためのメッセージインデックスファイルに加えられる。さらに、一定の添付ファイルの要旨をメッセージインデックスに加えてもよい。例えば、アーカイブサーバは、一般の言語処理アプリケーションに準じた添付ファイルを、添付ファイル内での全文検索を可能とするために読み込むことができる。
【００３６】
本発明は、電子メールメッセージングシステムからの電子メールメッセージを外部アーカイブ処理するための包括的な解決法を提供する。本発明は、長期にわたって電子メールメッセージを保存するよう義務化されている組織により用いられ得る。例えば、一定の金融機関は、電子メールメッセージを含む全記録を５年間必ずアーカイブしておくよう連邦証券取引委員会（ＳＥＣ）から命じられている。その記録は、要求があれば、個々の記録が取り出し可能である方法で保存されなければならない。電子メールメッセージを全文検索機能メッセージと併せて外部アーカイブに格納することによって、本発明の実装はこれらの要求およびその他の要求を解決することができる。さらに、複製メッセージの検査により、アーカイブメッセージストアのサイズを管理可能な水準で維持することも可能である。
【００３７】
以下に続く本発明の好適な実施例は、例示および説明を目的として開示されたものである。網羅的な目的ではなく、また、本発明を開示された厳密な形式に限定するものではない。ここに説明された実施形態の多くの改良および変更は、上記開示の観点より当業者にとって明らかである。本発明の範囲は、ここに添付された請求項およびその等価物によってのみ定義される。さらに、本発明の典型的な実施形態を説明する際、本明細書は、特定の一連の工程として、本発明の方法および／または処理を提示したかもしれない。しかしながら、方法もしくは処理がここに説明された特定の工程順序に依存しない程度において、その方法もしくは処理は、説明された特定の工程順序に限定されないであろう。当業者にとって明らかなように、その他の工程順序も可能であろう。したがって、本明細書に説明された特定の工程順序は、請求項における制限とみなされるべきではない。さらに、本発明の方法および／もしくは処理を目的とする請求項は、記述された順序での工程の性能に限定されるべきでなく、その順序は可変となり得ること、および、本発明の目的の範囲内であり得ることは、当業者によって容易に理解できるだろう。
【図面の簡単な説明】
【００３８】
【図１】本発明の第１実施形態におけるメッセージタグ算出方法を示す概略図である。
【図２】発明の第２実施形態におけるメッセージタグ算出方法を示す概略図である。
【図３】本発明の一実施形態における代表的な構造を示す概略図である。
【図４】本発明の一実施形態におけるアーカイブ電子メールメッセージの工程を示すフローチャートである。
【図５】本発明の一実施形態における一意性検査の構成を示す概略図である。
【図１】
2005501308.tif 000003
【図２】
2005501308.tif 000004
【図３】
2005501308.tif 000005
【図４】
2005501308.tif 000006
【図５】
2005501308.tif 000007
【国際公開パンフレット】
2005501308.tif 000008
2005501308.tif 000009
2005501308.tif 000010
2005501308.tif 000011
2005501308.tif 000012
2005501308.tif 000013
2005501308.tif 000014
2005501308.tif 000015
2005501308.tif 000016
2005501308.tif 000017
2005501308.tif 000018
2005501308.tif 000019
2005501308.tif 000020
2005501308.tif 000021
2005501308.tif 000022
2005501308.tif 000023
2005501308.tif 000024
2005501308.tif 000025
2005501308.tif 000026
2005501308.tif 000027
2005501308.tif 000028
2005501308.tif 000029
2005501308.tif 000030
2005501308.tif 000031
2005501308.tif 000032
2005501308.tif 000033
2005501308.tif 000034
2005501308.tif 000035
【国際公開パンフレット（コレクトバージョン）】
2005501308.tif 000036
2005501308.tif 000037
2005501308.tif 000038
2005501308.tif 000039
2005501308.tif 000040
2005501308.tif 000041
2005501308.tif 000042
2005501308.tif 000043
2005501308.tif 000044
2005501308.tif 000045
2005501308.tif 000046
2005501308.tif 000047
2005501308.tif 000048
2005501308.tif 000049
2005501308.tif 000050
2005501308.tif 000051
2005501308.tif 000052
2005501308.tif 000053
2005501308.tif 000054
2005501308.tif 000055
2005501308.tif 000056
2005501308.tif 000057
2005501308.tif 000058
2005501308.tif 000059
2005501308.tif 000060
2005501308.tif 000061
2005501308.tif 000062
2005501308.tif 000063
【国際調査報告】
2005501308.tif 000064