JP2005501308A6 - Unique email message indexing system, search method and use - Google Patents

Unique email message indexing system, search method and use Download PDF

Info

Publication number
JP2005501308A6
JP2005501308A6 JP2002565173A JP2002565173A JP2005501308A6 JP 2005501308 A6 JP2005501308 A6 JP 2005501308A6 JP 2002565173 A JP2002565173 A JP 2002565173A JP 2002565173 A JP2002565173 A JP 2002565173A JP 2005501308 A6 JP2005501308 A6 JP 2005501308A6
Authority
JP
Japan
Prior art keywords
message
tag
sender
calculated
message tag
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002565173A
Other languages
Japanese (ja)
Other versions
JP2005501308A (en
Inventor
ローウェン・クリス・イー.
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
EMC Corp
Filing date
Publication date
Application filed by EMC Corp filed Critical EMC Corp
Priority claimed from PCT/US2002/004034 external-priority patent/WO2002065316A1/en
Publication of JP2005501308A publication Critical patent/JP2005501308A/en
Publication of JP2005501308A6 publication Critical patent/JP2005501308A6/en
Pending legal-status Critical Current

Links

Images

Abstract

【解決手段】外部サーバおよび外部データベースシステムを利用する大規模企業において、一意の電子メールメッセージを識別するシステムおよび方法である。メッセージの一意性は、電子メッセージのプロパティ(500)に基づき、各メッセージへのメッセージタグの割り当てにより確定される。メッセージタグ(506)は、索引および比較操作の速度を上げるため、ハッシュアルゴリズム(5040を用いて計算される。メッセージタグ(506)は、既存の電子メールメッセージと関連付けられたメッセージタグのインデックスファイルと比較される。インデックスファイル内において一致する電子メールメッセージが見つかった場合、そのメッセージは一意ではない。それに対して、見つからなかった場合は、その電子メールメッセージは一意であり、そのメッセージタグはインデックスファイル(406)に加えられる。本システムは、インデックスファイルを格納するための関連型データベースを含んでもよい。さらに、本発明の一意性検査機能を用いるアーカイブシステムおよび方法も開示される。
【選択図】図5
A system and method for identifying unique email messages in a large enterprise utilizing an external server and an external database system. The uniqueness of the message is determined by assigning a message tag to each message based on the electronic message properties (500). The message tag (506) is calculated using a hash algorithm (5040) to speed up indexing and comparison operations. The message tag (506) is a message tag index file associated with an existing email message and If a matching email message is found in the index file, the message is not unique, whereas if not found, the email message is unique and its message tag is the index file (406) The system may include an associative database for storing index files, and an archiving system and method that uses the uniqueness check function of the present invention is also disclosed.
[Selection] Figure 5

Description

【技術分野】
【0001】
本発明は、概して、電子メールメッセージおよびメッセージングシステムの管理に関する。より具体的には、本発明は、電子メールメッセージングシステムから抽出されたメッセージの取り扱いに関する。
【背景技術】
【0002】
電子メール(Eメール)メッセージングシステムは、多くの企業において中心的アプリケーションとなった。ある組織では、個人が通常、一日に送受信する電子メールのメッセージ数はほんの2、3件であるが、別の組織においては、一般ユーザが一日に何十件ものメッセージを送受信する。電子メールメッセージングシステムは、組織の規模に応じて、一日に何百件か何千件ものメッセージを処理し得る。天文学的ともいえる速度でメッセージおよび添付ファイルの数やサイズが増加し、メッセージストア内のビジネスに不可欠な情報量が増大してくると、電子メールサービスの管理がますます困難となった。電子メールサーバの能力を超える負荷は、バックアップや回復機能に影響を及ぼす可能性があり、不慮の削除、あるいはメールサーバの不具合が原因となって、基幹情報の損失を招き得る。
【0003】
従来のいくつかの電子メールシステムにおいては、メッセージストアのサイズは、例えば、個々のメールボックスに格納可能なメッセージ数、メールボックスに格納されたメッセージの累積サイズ、個々のメッセージサイズおよびメッセージストアに格納され得るメッセージ総数に対する制限など、一定の閾値によって制御することができる。これらの閾値は、システム管理者による制御が可能であり、電子メールメッセージアプリケーションへの「ハードコーディング」が可能な場合もある。このような閾値における課題は、ユーザが重要なメッセージを必要とする期間中保存できるような管理能力を実質的に提供することなく、予め定義された範囲内でメッセージストアを維持しようとする点である。
【0004】
メッセージストアのサイズを抑制するため、従来技術に用いられてきた別の方法として、メッセージを「アーカイブ」する方法がある。従来のメッセージアーカイブシステムは、電子メールメッセージングアプリケーションに組み込まれていた。しかしながら、このようなシステムは一般に、所有権を有するソフトウェアアプリケーションであるため、メッセージのアーカイブや読み出し方法に関し、電子メール管理者にとって選択の余地はそれほど多くはない。あるシステムでは、ユーザがアーカイブメッセージを読み出す必要がある場合は、システム管理者を介さなければならないことがある。別のシステムでは、「アーカイブ」とは単に、メッセージをユーザのローカルハードドライブにダウンロードすることであるため、アーカイブメッセージを読み出すために容易にアクセスや検索ができないことがある。
【0005】
統合的なアーカイブ機能を有さないこれらの電子メールシステムにおいて、システム管理者は、電子メールバックアップ手続を通じて、マニュアルアーカイブ動作を実装し得る。一般に、バックアップ手続は、突発的な障害が起こった場合に、メッセージストア(「ポストオフィス」としても知られる)を完全に回復できるよう設計されている。しかしながら、一般的に、アーカイブシステムに所望される機能性の多くは、こうしたバックアップ手続により提供されない。例えば、いくつかのバックアップ手続では、電子メール管理者は、個々のユーザのメールボックスから、単に1件かそれ以上のメッセージを読み出すためだけに、ポストオフィス全体をリストアしなければならないことがある。典型的なバックアップ手順に関する別の課題は、電子メール管理者に対し、バックアップファイルからのメッセージのコンテンツに基づく特定のメッセージの検索が認められない可能性がある点である。全文検索機能がない場合、特定の電子メールメッセージがアーカイブされたか否かの判断は、いっそう困難である。
【0006】
電子メール管理者にとってさらに複雑なことに、電子メールのアーカイブ要求は、組織によって異なり得る。例えば、「包括的」なアーカイブ方式は、ユーザがあらゆるメッセージを削除する機会を得る前に、アーカイブ処理が「リアルタイム」にて全メッセージをキャプチャすることが要求される場合に必要となり得る。包括的なアーカイブを実施する一方法は、メッセージが送信もしくは受信され、メッセージのコピーがアーカイブに置かれるとき、メッセージを取り込む方法である。本態様では、メッセージは、全受信者に配送される前にキャプチャされるとともにアーカイブされる。したがって、アーカイブファイルには、一般に、各アーカイブメッセージの単一のコピーのみが格納される。こうすることによって、アーカイブファイルのサイズが縮小される。
【0007】
別の組織では、その会社の方針により、包括的なアーカイブは不要であるかもしれないが、その代わりに、週単位もしくはその他の周期でアーカイブ処理が実行され得る。このようなアーカイブ処理は、電子メールシステムによって処理された全メッセージをキャプチャするのではなく、処理の実行までに消去されていないシステム上のメッセージのみをキャプチャすることになる。リアルタイムアーカイブシステムとは異なり、周期的アーカイブシステムでは、メッセージは、個々の受信者への配信後にしかキャプチャされない。第三者、すなわち外部の周期的メッセージアーカイブシステムは、基本的に、システム内の各メールボックスに格納されている全メッセージを読み出すことにより動作する。読み出される各メッセージは、続いてアーカイブファイルに複製される。各メールボックスは別々に読み出されるため、このような従来型アーカイブシステムによって生成されたアーカイブファイルは、不要な大きさのファイルとなる。したがって、複数のメールボックスに配信されたメッセージは、アーカイブ処理において、別個のメッセージとして扱われるため、重複したメッセージをアーカイブファイルに保存することになる。アーカイブシステムがメッセージストアの内部構造にアクセスしていた場合、各メッセージの単一コピーのみアーカイブすることは、アーカイブシステム上可能であるが、一般にこのようなアクセスは、電子メールシステムの所有権上の性質より、第三者に許可されるものではない。
【発明の開示】
【発明が解決しようとする課題】
【0008】
したがって、電子メールメッセージングシステムから抽出された一意の電子メールメッセージにインデックスを付するシステムおよび方法が必要とされる。
【0009】
本発明は、電子メールメッセージングシステムから抽出された一意の電子メールメッセージにインデックスを付するシステムおよび方法を提供する。その方法は、電子メールメッセージングシステム上のメールボックスからメッセージを読み出す工程を含み、その工程において、メッセージは複数のメッセージプロパティを備える。メッセージプロパティとしては、例えば、送信者名、送信者による送信時刻、件名などが含まれる。送信元の電子メールメッセージングシステムが外部メッセージングシステムの場合は、例えば、送信者名を電子メールアドレスとしてよいし、電子メールメッセージングシステムが送信先のメッセージングシステムの場合は、標準名としてよい。送信時刻は、好ましくは送信元の電子メールメッセージングシステムによって設定された送信時刻に準じ、例えばマイクロセカンドで表示してよい。
【0010】
本発明は、次に、好ましくはメッセージプロパティを用いたデータ列からなる一意の識別子もしくはメッセージタグを算出する。例えば、送信者名および送信者による送信時刻は、メッセージタグの算出に使用され得る。メッセージが一意である、つまり、メッセージタグはインデックスファイルに保存済みではない場合、そのメッセージタグはそのメッセージアーカイブと関連付けられたインデックスファイルに保存される。メッセージタグが既にインデックスファイルに存在する場合は、そのメッセージは一意ではない。
【0011】
メッセージが一意であるか否かの判断処理のスピードを上げるために、メッセージタグにハッシュアルゴリズムを適用して、所定のメッセージ長の「署名」を得ることができる。したがって、新たに算出されたメッセージタグと既にインデックスファイルに格納されたメッセージタグとの比較は、インデックスレコードの長さの統一により、さらに迅速になる。
【0012】
本発明はさらに、一意のメッセージのみがメッセージアーカイブに格納されるアーカイブシステムおよび方法を備える。
【発明を実施するための最良の形態】
【0013】
本発明は、単一あるいは複数の電子メールメッセージングシステムから抽出された一意の電子メールメッセージにインデックスを付するシステムおよび方法を提供する。本発明はさらに、メッセージストアから抽出された一意のメッセージのみをアーカイブすることにより、同一の電子メールメッセージの複数のコピーに重複したアーカイブ処理を最小限にする、あるいは回避するシステムおよび方法を提供する。
【0014】
本発明は、インデックスファイルを用いて、電子メールメッセージングシステムから既に抽出されたメッセージに関する情報を格納する。インデックスファイルは、ファイル内のエントリの容易な検索と比較とを可能にする任意の適したフォーマットを用いて格納され得る。インデックスファイルとしては、例えば、テキストファイル、スプレッドシート、もしくはリレーショナルデータベーステーブル、あるいはテーブルセットが可能である。電子メールメッセージがアーカイブに加えられる度に、必ず「メッセージタグ」が生成され、インデックスファイルに格納される。メッセージタグは、各電子メールメッセージに対する一意の識別子を作成するのに十分な電子メールのプロパティか属性に準じる。
【0015】
本発明のシステムおよび方法は、電子メールメッセージングシステム上の、重複したメッセージの識別に好適な任意のアプリケーションに用いられ得る。例えば、アーカイブメッセージストアのサイズを縮小、あるいは最小限に抑えるために、電子メールアーカイブアプリケーションに、本発明のシステムおよび方法を有効に組み込むことが可能である。本発明がアーカイブシステムに用いられた場合、一時メッセージタグは、メッセージがアーカイブに加えられる前に、電子メールメッセージに対して作成される。次に、この一時メッセージタグは、既にインデックスファイルに格納された各メッセージタグと比較される。一時メッセージタグがインデックスファイル内のエントリと一致する既存のタグである場合、その電子メールメッセージは既にアーカイブ済みである。この場合、そのメッセージはアーカイブ処理される必要はない。
【0016】
以下のセクションにおいて、本発明の2つの実施形態を説明する。各実施形態において用いられる電子メールメッセージに対するメッセージタグの作成(すなわち算出)方法は異なる。
【0017】
・第1実施例:
本発明の第1の実施例については、図1を参照して説明する。本実施例においてメッセージタグは、選択されたメッセージプロパティを結合して単一のテキスト列を形成することにより、算出され得る。例えば、電子メールメッセージングシステムがマイクロソフトエクスチェンジシステムの場合、メッセージは、ボックス10の「Client_Submit_Time」、ボックス12の「Sent_Representing_Email_Address」およびボックス14の「PR_Subject」というプロパティを含み得る。ボックス16、18および20は、これらの各プロパティとそれぞれ関連付けられた対応するデータ形式を示す。ボックス22、24および26は、これらのプロパティがある特定のメッセージに対して持ち得る実効値の一例を示す。例えば、ボックス10の「Client_Submit_Time」に対する値は、ボックス22において「OxOlcl9el38106580」と表示される。本実施例における送信時刻は、メッセージがメッセージの送信者によって送信された時刻を表す。時刻用フォーマットは、送信者の電子メールメッセージングサーバ上のシステムクロックによって作成されるのと同じフォーマットである。送信時刻用のフォーマットが各サーバ用に標準化されている場合に限り、送信時刻用のフォーマットは重要ではない。すなわち、ある特定のサーバから受信された全メッセージのメッセージタグを算出するには、同一のタイムフォーマットを用いるべきである。
【0018】
ボックス24は、ボックス12におけるエクスチェンジプロパティ「Sent_Email_Address」の値、「/o=sqa/ou=dogwood/cn=Recipients/cn=Crowen」を含む。本プロパティは、送信者の「完全な権限名」として従来より広く言及されている。送信者の送信時刻および送信者の完全な権限名に準じて作成されたメッセージタグは、ほとんどの電子メールメッセージの一意的識別に十分である。各値を結合する(リンク30に図示されるように)ことにより、メッセージタグ40が生成される。上述のように、送信時刻および送信者名を用いれば、通常、十分電子メールメッセージの一意的な識別が可能である。しかしながら、メッセージタグが一意のメッセージを表す尤度の向上をはかるため、その他のプロパティが列に追加され得る。例えば、図1に示されるように、ボックス14のPR_Subjectプロパティが含まれ得る。本実施例において、ボックス26に示すように、このプロパティの値は「こればテストメッセージである」というものである。リンク32において、3種類のプロパティすべてがメッセージタグ42を形成するために結合される。
【0019】
上述のメッセージタグ生成方法は、本発明の趣旨を逸脱することなく多様な方法で変更され得る。例えば、得られるメッセージタグが送信時刻列と送信者名列とを結合することによって形成されるよう、結合順序を変更してよい。あるいは、件名が送信者名、または送信時刻等の前に置かれてもよい。さらに別の方法において、電子メールメッセージの送信者を識別するために、送信者名は他のプロパティを含んでよい。例えば、送信者名を「Jdoe@acme.com」のような、インターネット電子メール名で表示してよい。その後、この値は上述のように用いられる。さらに、メッセージサイズ、ヘッダ情報などその他のメッセージプロパティに準じた送信者情報を用いることなく、メッセージタグを生成することができる。
【0020】
本実施形態にしたがって生成されたメッセージタグは、可変長である。すなわち、電子メールメッセージングシステムから抽出された第1のメッセージに対するメッセージタグは、電子メールメッセージングシステムから抽出された第2のメッセージのメッセージタグと長さが異なり得る。これは、特に、送信者名および電子メールメッセージの件名欄の長さが異なり得るためである。さらに、異なる電子メールメッセージングシステムは、送信時刻を算出するために異なる実装方法を使用し得る。インデックスファイルが極めて大きい場合、メッセージタグの可変長に起因して、インデックスファイル内の検索は冗長な動作となり得る。以下で説明される第2実施形態では、このような検索を最適化する、改良されたメッセージタグが提供される。
【0021】
・第2実施例:
第2実施形態では、ハッシュアルゴリズムを適用することによって、可変長のメッセージタグは所定の長さを有するメッセージタグへと変換される。一般にハッシュアルゴリズムは、メッセージを暗号化する鍵を生成するために、暗号化技術分野において一般的に用いられている。また、ハッシュアルゴリズムは、メッセージの正当性を認証するために利用可能なメッセージの電子「署名」の作成にも使用される。こうした署名は、メッセージの「フィンガープリント」あるいは「メッセージダイジェスト」としても知られている。このようなハッシュアルゴリズムの背景にある一原理は、二つの異なるメッセージにアルゴリズムを適用して同じ結果を得ることは「算出上不可能」なことである。ハッシュアルゴリズムの別の原理は、生成されたメッセージダイジェストは、均一な長さを有することである。本発明の背景として有益なのは、この2番目の原理である。すなわち、上述のように作成された異なるメッセージタグがハッシュアルゴリズムを介して処理される場合、生成されたメッセージタグは均一な長さを有しつつも、一意の電子メールメッセージを表すことになる。
【0022】
図2は、本発明の第2の実施例の動作を示す概略図である。項目番号10から42については、上記図1と関連付けて説明する。図2を参照して説明されるように、メッセージタグ42は、選択されたプロパティを結合し、可変長の列を形成することにより生成される。この列は、続いてハッシュアルゴリズム50への入力として用いられる。本実施例において、ハッシュアルゴリズム50の出力は64ビットで、ボックス60に示される16進数の列「Ox4764eOccl21642b5」で表される。従来から知られているように、こうした列は、多種の異なる表示に変換され得る64ビットの組(複数の1と0)を最終的には示す。
【0023】
均一な長さのメッセージタグを生成することにより、インデックスファイル上の検索および比較操作の性能が著しく向上され得る。好適な実施形態において、周知の「MD5」ハッシュアルゴリズムが用いられている。MD5ハッシュアルゴリズムは、RFC1321、www. faqs.org/rfcl321.htmlで定義されているが、全体を引用することにより本明細書に組み込まれている。MD5ハッシュアルゴリズムを用いて生成されたメッセージタグは、128ビットの均一な長さを有する(すなわち、(ASCII文字に変換された場合には)16文字、あるいは32個の16進数)。
【0024】
・構造:
図3は、本発明の実施例を実装するために用いられ得る構成を示す。企業電子メールメッセージングシステム300は、クライアント302および304に電子メールサービスを提供する電子メールサーバ301を備える。電子メールメッセージングシステム300としては、マイクロソフトエクスチェンジサーバが可能で、アーカイブサーバ330と電子メールメッセージングサーバ300間の通信は、周知のメッセージアプリケーションプログラムインタフェース(MAPI)プロトコルを介して処理され得る。従来より周知のとおり、MAPIはメッセージング構造であるとともにクライアントインタフェース構成要素である。メッセージング構造としてのMAPIは、複数のアプリケーションと種々のハードウェアプラットフォームにわたる複数のメッセージングシステムとの相互作用を可能とする。クライアントインタフェース構成要素としてのMAPIは、MAPIサブシステムのクライアントアプリケーションおよびサービスプロバイダインタフェースの基盤を形成する機能とオブジェクト指向インタフェースとの完全な組み合わせである。シンプルMAPI、コモンメッセージングコール(CMC)およびCDOライブラリ間の比較において、MAPIは、メッセージングベースのアプリケーションおよびサービスプロバイダに対して、最高の性能と最も優れた制御性とを提供する。別の方法として、電子メールメッセージングシステム300として、ロータスノーツメールサーバが可能で、通信は、ロータスノーツアプリケーションプログラムインタフェース(API)プロトコルを介して処理され得る。同様に、電子メールメッセージングシステムがシンプルメール転送プロトコル(SMTP)メールサーバの場合、通信は、SMTPを介して処理され得る。
【0025】
図3に示す実施例において、通信回線306および308は、クライアントシステムの302および304の容量に応じて、MAPI、SMTPもしくはその他のプロトコルを使用することができる。電子メールは、外部システム320からSMTPを介したインターネット322を経由し、通信回線321を通って受信され得る。本発明の一実施形態において、アーカイブサーバ330は、通信回線332を介し、周期的ベースで電子メールサーバ301とのアーカイブセッションを開始する。この周期的ベースは、企業のアーカイブ要求に応じて、例えば、日、週、月単位か、その他適した時間間隔としてよい。通信回線332は、例えば、周知の送信制御/インターネットプロトコル(TCP/IP)など、任意の適したネットワークプロトコルを使用してよい。本発明の別の実施形態において、アーカイブサーバ330は、リアルタイムか、ほぼリアルタイムで電子メールを取り出す。
【0026】
従来技術において周知のとおり、電子メールメッセージングサーバ301は、複数のメールボックス、ディレクトリ、フォルダ、あるいはメッセージを個々のユーザと関連づけるために使用されるその他の「保存区画」を備え得る。本明細書において使用されるように、「メールボックス」という用語は、特定のユーザと関連付けられたメッセージの集合を意味し、そこには、ユーザが自分の電子メールメッセージを整理するために作成する任意の適したサブフォルダかディレクトリが含まれる。いくつかの実施形態において、メールボックスには、新たに届いた電子メールメッセージを保存するための「インボックス」と、ユーザが送信したメッセージを保存するための「アウトボックス」とが含まれてよい。
【0027】
アーカイブサーバ330が周期的ベースでメッセージを抽出する一実施例において、アーカイブサーバ330は、電子メールサーバ301上の各メールボックス内の全メッセージを読みこむ。別の実施例において、アーカイブサーバ330は、前回の周期セッションの完了後に作成されたか配信された新規メッセージしか読み込まないよう構成され得る。別の実施形態において、アーカイブサーバ330は、メールボックスのインボックスおよびアウトボックス内のメッセージのみを読みこむよう構成することができる。実装されているメッセージ読み込みスキームにかかわらず、アーカイブサーバは、メッセージの一意性を判断するためにインデックスファイルを検査する。
【0028】
「一意性検査」機能は、アーカイブサーバ330に内蔵されてもよいし、別のサーバ上で実行されてもよい。いずれにしても、一意性検査機能には、上述されたメッセージタグの算出が含まれる。新たに読み込まれたメッセージに対するメッセージタグは、データベース334のインデックスファイルと比較される。インデックスファイルは、データベース334のメッセージアーカイブに格納された全メッセージに対応するメッセージタグリストを含む。算出されたメッセージタグが、インデックスファイル内の項目と一致した場合は、そのメッセージは一意ではない。すなわち、そのメッセージは既にメッセージアーカイブに格納されているため、二度目の格納は不要である。別の方法では、算出されたメッセージタグがインデックスファイル内のいずれの記録とも一致しない場合は、そのメッセージは一意であり、かつメッセージアーカイブに格納されるべきメッセージである。この場合、そのメッセージタグもインデックスファイルに加えられる。
【0029】
メッセージがアーカイブサーバ330上でアーカイブされると、電子メールサーバ301の性能に影響を与えることなく、そのデータは別の保存媒体へと移転され得る。例えば、テープライブラリシステム335、光学ジュークボックス336、CD/DVD光学装置337などへデータは移動され得る。これらの媒体は、他の磁気記憶媒体より安価なため、アーカイブデータをこれらの記憶媒体へ移動することにより、組織にとって、長期の保存コスト削減が可能となる。
【0030】
図4は、本発明の一実施形態における電子メールメッセージのアーカイブ処理工程を示すフローチャートである。工程400から406は初期化工程で、処理を明示するためのものである。すなわち、メッセージアーカイブおよびインデックスファイルが一旦存在させられると、処理は工程408から420を実行する。工程400において、電子メールメッセージングサーバのメールボックスから、第1のメッセージが読みこまれる。工程402において、第1のメッセージに対するメッセージタグが算出され、工程404において、第1のメッセージはメッセージアーカイブに格納される。工程406において、算出された第1のメッセージに対するメッセージタグは、インデックスファイルに格納される。工程408において、電子メールメッセージングサーバのメールボックスより、第2の(すなわち次の)メッセージが読みこまれる。メールボックスは、第1のメッセージを読みだしたメールボックスと同じメールボックスであっても、別のメールボックスであってもよい。工程410において、第2のメッセージに対するメッセージタグが算出され、工程412において、第2のメッセージタグは、第1のメッセージタグと比較される(すなわち、第2のメッセージタグは、インデックスファイルに既に格納された全メッセージタグと比較される)。
【0031】
工程414では、工程412の結果に応じて処理が分岐する。第2のメッセージタグが第1のメッセージタグと一致した場合(すなわち、第2のメッセージタグがすでにインデックスファイル内に存在する場合)は、第2のメッセージは一意ではないとし、処理は工程420へと移る。そのメッセージが一意である場合(すなわち、メッセージタグがインデックスファイル内のいずれの項目とも一致しなかった場合)は、第2のメッセージは工程416においてメッセージアーカイブに格納され、かつ第2のメッセージタグは工程418においてインデックスファイルに格納される。
【0032】
工程420で、処理は、他に電子メールメッセージングサーバから読みこまれるメッセージがあるか否かを検査する。さらにメッセージがある場合は、処理は工程408に戻って、次のメッセージを読みこむ。逆に、それ以上メッセージがない場合は、処理は完了する。
【0033】
図5は、本発明の第2の実施例において、メッセージタグがどのように算出され得るかを示す概略図である。図5において、電子メールメッセージプロパティ500は、電子メールメッセージから選択される。本明細書中に述べたとおり、送信者名と送信時刻とを組み合わせることにより、ほとんどのアプリケーションにおいて、電子メールメッセージを一意的識別することが十分可能である。選択されたプロパティは、単一の列を形成するために結合される。その列は、空白を含んでもよいし、含まなくてもよい。その列は、ボックス502において、適したビット表示に変換される。ボックス504では、ボックス506のメッセージタグを判断するために、ハッシュアルゴリズムがビット列に適用される。
【0034】
本明細書中に述べたとおり、電子メールメッセージのアーカイブおよび取り出しを行う本システムおよび方法は、専用のアーカイブサーバおよびSQLかORACLE(商標brandのようなデータベースシステムを使用する大規模な企業環境において用いられ得る。別の態様において、アーカイブサーバは、電子メールメッセージングサーバと同じプラットフォームにあるとしてよい。上述のとおり、電子メールメッセージングサーバは、例えば、マイクロソフトアウトルック(商標)やロータスノーツ(商標)、すなわち著作権のある電子メールメッセージングシステムか、もしくは著作権のない電子メールメッセージングシステムなど任意の適した電子メールメッセージングシステムに準じてよい。
【0035】
アプリケーションプログラムを含む実施形態:
本発明の一実施例は、さらに、任意の磁気媒体か電子媒体に記録されたアプリケーションプログラムと、そのプログラムがプログラミングされたコンピュータシステムとを備えている。本実施例において、コンピュータシステムは、アーカイブに加えられるメッセージを識別するために、電子メールメッセージングサーバのメールボックスを探索するようプログラムされる。こうしたプログラムは、本発明のプログラムが実行される前に、電子メールメッセージングシステムに配信されたメッセージを処理するよう動作し得る。この手法では、そのプログラムは、既存の電子メールメッセージをアーカイブのために識別し、抽出する。そのプログラムはさらに、リアルタイムでメッセージをアーカイブするよう構成され得る。すなわち、メッセージが電子メールメッセージングシステムによって処理される際、アーカイブ処理のための複製がアーカイブサーバによって取り出される。本発明の実施例には、メッセージメタデータの高速検索を支援するための埋め込みリレーショナルデータベースが含まれ得る。このような実施例では、キーワードもしくはメッセージの全文が、メッセージを素早く検索するためのメッセージインデックスファイルに加えられる。さらに、一定の添付ファイルの要旨をメッセージインデックスに加えてもよい。例えば、アーカイブサーバは、一般の言語処理アプリケーションに準じた添付ファイルを、添付ファイル内での全文検索を可能とするために読み込むことができる。
【0036】
本発明は、電子メールメッセージングシステムからの電子メールメッセージを外部アーカイブ処理するための包括的な解決法を提供する。本発明は、長期にわたって電子メールメッセージを保存するよう義務化されている組織により用いられ得る。例えば、一定の金融機関は、電子メールメッセージを含む全記録を5年間必ずアーカイブしておくよう連邦証券取引委員会(SEC)から命じられている。その記録は、要求があれば、個々の記録が取り出し可能である方法で保存されなければならない。電子メールメッセージを全文検索機能メッセージと併せて外部アーカイブに格納することによって、本発明の実装はこれらの要求およびその他の要求を解決することができる。さらに、複製メッセージの検査により、アーカイブメッセージストアのサイズを管理可能な水準で維持することも可能である。
【0037】
以下に続く本発明の好適な実施例は、例示および説明を目的として開示されたものである。網羅的な目的ではなく、また、本発明を開示された厳密な形式に限定するものではない。ここに説明された実施形態の多くの改良および変更は、上記開示の観点より当業者にとって明らかである。本発明の範囲は、ここに添付された請求項およびその等価物によってのみ定義される。さらに、本発明の典型的な実施形態を説明する際、本明細書は、特定の一連の工程として、本発明の方法および/または処理を提示したかもしれない。しかしながら、方法もしくは処理がここに説明された特定の工程順序に依存しない程度において、その方法もしくは処理は、説明された特定の工程順序に限定されないであろう。当業者にとって明らかなように、その他の工程順序も可能であろう。したがって、本明細書に説明された特定の工程順序は、請求項における制限とみなされるべきではない。さらに、本発明の方法および/もしくは処理を目的とする請求項は、記述された順序での工程の性能に限定されるべきでなく、その順序は可変となり得ること、および、本発明の目的の範囲内であり得ることは、当業者によって容易に理解できるだろう。
【図面の簡単な説明】
【0038】
【図1】本発明の第1実施形態におけるメッセージタグ算出方法を示す概略図である。
【図2】発明の第2実施形態におけるメッセージタグ算出方法を示す概略図である。
【図3】本発明の一実施形態における代表的な構造を示す概略図である。
【図4】本発明の一実施形態におけるアーカイブ電子メールメッセージの工程を示すフローチャートである。
【図5】本発明の一実施形態における一意性検査の構成を示す概略図である。
【Technical field】
[0001]
The present invention generally relates to the management of email messages and messaging systems. More specifically, the present invention relates to the handling of messages extracted from email messaging systems.
[Background]
[0002]
Electronic mail (email) messaging systems have become central applications in many companies. In some organizations, individuals typically send and receive only a few email messages per day, while in other organizations, general users send and receive dozens of messages per day. Email messaging systems can process hundreds or thousands of messages per day, depending on the size of the organization. As the number and size of messages and attachments increased at an astronomical rate, and the amount of business-critical information in the message store increased, managing email services became increasingly difficult. A load exceeding the capacity of the electronic mail server may affect the backup and recovery function, and may cause loss of basic information due to accidental deletion or malfunction of the mail server.
[0003]
In some conventional email systems, the size of the message store is, for example, the number of messages that can be stored in an individual mailbox, the cumulative size of messages stored in the mailbox, the individual message size and the message store. It can be controlled by a certain threshold, such as a limit on the total number of messages that can be made. These thresholds can be controlled by a system administrator and may be “hard-coded” into an email message application. The challenge with such a threshold is to try to maintain the message store within a predefined range without substantially providing management capabilities that allow users to store important messages for the period they need. is there.
[0004]
Another method that has been used in the prior art to reduce the size of the message store is to “archive” messages. Conventional message archiving systems have been incorporated into email messaging applications. However, since such systems are generally proprietary software applications, there is not much room for the email administrator to choose how to archive and retrieve messages. In some systems, if a user needs to read an archive message, he may have to go through a system administrator. In another system, “archiving” is simply downloading the message to the user's local hard drive, which may not be easily accessible or searchable to retrieve the archive message.
[0005]
In these email systems that do not have an integrated archiving function, a system administrator can implement a manual archiving operation through an email backup procedure. In general, backup procedures are designed to fully recover a message store (also known as a “post office”) in the event of a catastrophic failure. However, in general, much of the functionality desired for an archive system is not provided by such a backup procedure. For example, in some backup procedures, the email administrator may have to restore the entire post office simply to retrieve one or more messages from the individual user's mailbox. Another challenge with typical backup procedures is that email administrators may not be allowed to search for specific messages based on the content of messages from the backup file. Without a full text search function, it is more difficult to determine whether a particular email message has been archived.
[0006]
To further complicate e-mail administrators, e-mail archiving requirements can vary from organization to organization. For example, a “comprehensive” archiving scheme may be necessary if the archiving process is required to capture all messages in “real time” before the user has the opportunity to delete any messages. One way to implement a comprehensive archive is to capture a message when the message is sent or received and a copy of the message is placed in the archive. In this aspect, messages are captured and archived before being delivered to all recipients. Thus, the archive file generally stores only a single copy of each archive message. By doing so, the size of the archive file is reduced.
[0007]
In other organizations, comprehensive archiving may not be required depending on the company's policy, but instead, archiving may be performed on a weekly or other cycle. Such an archiving process does not capture all messages processed by the email system, but only captures messages on the system that have not been deleted by the time the process is performed. Unlike a real-time archive system, in a periodic archive system, messages are captured only after delivery to individual recipients. A third party, or external periodic message archiving system, basically operates by reading all messages stored in each mailbox in the system. Each message that is read is subsequently replicated to an archive file. Since each mailbox is read separately, the archive file generated by such a conventional archive system becomes a file of an unnecessary size. Therefore, since messages distributed to a plurality of mailboxes are handled as separate messages in the archive processing, duplicate messages are stored in the archive file. If the archiving system has accessed the internal structure of the message store, it is possible on the archiving system to archive only a single copy of each message, but in general such access is subject to the ownership of the email system. Due to its nature, it is not permitted by third parties.
DISCLOSURE OF THE INVENTION
[Problems to be solved by the invention]
[0008]
Accordingly, there is a need for a system and method for indexing unique email messages extracted from email messaging systems.
[0009]
The present invention provides a system and method for indexing unique email messages extracted from email messaging systems. The method includes reading a message from a mailbox on the email messaging system, where the message comprises a plurality of message properties. Examples of the message property include a sender name, a transmission time by the sender, and a subject. When the source e-mail messaging system is an external messaging system, for example, the sender name may be an e-mail address, and when the e-mail messaging system is a destination messaging system, a standard name may be used. The transmission time is preferably in accordance with the transmission time set by the transmission source e-mail messaging system, and may be displayed, for example, in microseconds.
[0010]
The present invention then calculates a unique identifier or message tag, preferably consisting of a data string using message properties. For example, the sender name and the transmission time by the sender can be used to calculate the message tag. If the message is unique, that is, the message tag is not already stored in the index file, the message tag is stored in the index file associated with the message archive. If a message tag already exists in the index file, the message is not unique.
[0011]
In order to speed up the process of determining whether a message is unique, a hash algorithm can be applied to the message tag to obtain a “signature” of a predetermined message length. Therefore, the comparison between the newly calculated message tag and the message tag already stored in the index file is further quickened by unifying the lengths of the index records.
[0012]
The present invention further comprises an archiving system and method in which only unique messages are stored in the message archive.
BEST MODE FOR CARRYING OUT THE INVENTION
[0013]
The present invention provides systems and methods for indexing unique email messages extracted from single or multiple email messaging systems. The present invention further provides systems and methods that minimize or avoid duplicate archiving for multiple copies of the same email message by archiving only unique messages extracted from the message store. .
[0014]
The present invention uses an index file to store information about messages already extracted from the email messaging system. The index file can be stored using any suitable format that allows easy searching and comparison of entries in the file. The index file can be, for example, a text file, a spreadsheet, a relational database table, or a table set. Each time an email message is added to the archive, a “message tag” is always generated and stored in the index file. The message tag conforms to email properties or attributes sufficient to create a unique identifier for each email message.
[0015]
The system and method of the present invention may be used in any application suitable for identifying duplicate messages on an email messaging system. For example, the system and method of the present invention can be effectively incorporated into an email archiving application to reduce or minimize the size of the archive message store. When the present invention is used in an archiving system, a temporary message tag is created for an email message before the message is added to the archive. This temporary message tag is then compared with each message tag already stored in the index file. If the temporary message tag is an existing tag that matches an entry in the index file, the email message has already been archived. In this case, the message need not be archived.
[0016]
In the following sections, two embodiments of the present invention are described. The method for creating (that is, calculating) a message tag for an electronic mail message used in each embodiment is different.
[0017]
First embodiment:
A first embodiment of the present invention will be described with reference to FIG. In this example, the message tag can be calculated by combining selected message properties to form a single text string. For example, if the e-mail messaging system is a Microsoft Exchange system, the message may include properties of “Client_Submit_Time” in box 10, “Sent_Representing_Email_Address” in box 12, and “PR_Subject” in box 14. Boxes 16, 18 and 20 show the corresponding data formats associated with each of these properties. Boxes 22, 24 and 26 show examples of effective values that these properties can have for a particular message. For example, the value for “Client_Submit_Time” in box 10 is displayed as “OxOlcl9el38106580” in box 22. The transmission time in the present embodiment represents the time when the message is transmitted by the message sender. The time format is the same format created by the system clock on the sender's email messaging server. Only when the format for the transmission time is standardized for each server, the format for the transmission time is not important. That is, the same time format should be used to calculate the message tags for all messages received from a particular server.
[0018]
The box 24 includes the value of the exchange property “Sent_Email_Address” in the box 12, “/ o = sqa / ou = dogwood / cn = Recipients / cn = Crowen”. This property has been widely referred to as the “full authority name” of the sender. A message tag created according to the sender's transmission time and the sender's full authority name is sufficient for the unique identification of most email messages. By combining each value (as shown in link 30), a message tag 40 is generated. As described above, if the transmission time and the sender name are used, it is usually possible to uniquely identify the e-mail message sufficiently. However, other properties can be added to the column to improve the likelihood that the message tag represents a unique message. For example, as shown in FIG. 1, the PR_Subject property of box 14 may be included. In this embodiment, as indicated by box 26, the value of this property is "This is a test message." At link 32, all three types of properties are combined to form message tag 42.
[0019]
The message tag generation method described above can be modified in various ways without departing from the spirit of the present invention. For example, the combination order may be changed so that the obtained message tag is formed by combining the transmission time string and the sender name string. Alternatively, the subject may be placed before the sender name or the transmission time. In yet another method, the sender name may include other properties to identify the sender of the email message. For example, the sender name may be displayed as an Internet e-mail name such as “Jdoe@acme.com”. This value is then used as described above. Furthermore, a message tag can be generated without using sender information according to other message properties such as message size and header information.
[0020]
The message tag generated according to this embodiment has a variable length. That is, the message tag for the first message extracted from the email messaging system may be different in length from the message tag of the second message extracted from the email messaging system. This is especially because the sender name and the length of the subject field of the email message can be different. Furthermore, different email messaging systems may use different implementation methods to calculate the transmission time. If the index file is very large, searching in the index file can be a redundant operation due to the variable length of the message tag. In a second embodiment described below, an improved message tag is provided that optimizes such a search.
[0021]
Second embodiment:
In the second embodiment, a variable-length message tag is converted into a message tag having a predetermined length by applying a hash algorithm. In general, a hash algorithm is commonly used in the encryption technology field to generate a key for encrypting a message. The hash algorithm is also used to create an electronic “signature” of a message that can be used to authenticate the validity of the message. Such a signature is also known as the “fingerprint” or “message digest” of the message. One principle behind such a hash algorithm is that it is “uncomputable” to apply the algorithm to two different messages to obtain the same result. Another principle of the hash algorithm is that the generated message digest has a uniform length. It is this second principle that is useful as a background to the present invention. That is, when different message tags created as described above are processed through a hash algorithm, the generated message tags represent a unique email message with a uniform length.
[0022]
FIG. 2 is a schematic diagram showing the operation of the second embodiment of the present invention. Item numbers 10 to 42 will be described in association with FIG. As described with reference to FIG. 2, message tag 42 is generated by combining selected properties to form a variable length column. This sequence is then used as input to the hash algorithm 50. In the present embodiment, the output of the hash algorithm 50 is 64 bits and is represented by a hexadecimal string “Ox4764eOccl21642b5” shown in the box 60. As is known in the art, these columns ultimately represent a 64-bit set (multiple 1s and 0s) that can be converted into a variety of different representations.
[0023]
By generating message tags of uniform length, the performance of search and comparison operations on the index file can be significantly improved. In the preferred embodiment, the well-known “MD5” hash algorithm is used. The MD5 hash algorithm is defined in RFC 1321, www.faqs.org/rfcl321.html, but is incorporated herein by reference in its entirety. Message tags generated using the MD5 hash algorithm have a uniform length of 128 bits (ie, 16 characters (when converted to ASCII characters), or 32 hexadecimal numbers).
[0024]
·Construction:
FIG. 3 illustrates a configuration that can be used to implement an embodiment of the present invention. The corporate email messaging system 300 includes an email server 301 that provides email services to clients 302 and 304. The email messaging system 300 can be a Microsoft Exchange server, and communication between the archive server 330 and the email messaging server 300 can be handled via the well-known message application program interface (MAPI) protocol. As is well known, MAPI is a messaging structure and a client interface component. MAPI as a messaging structure allows interaction between multiple applications and multiple messaging systems across various hardware platforms. MAPI as a client interface component is a complete combination of the object-oriented interface with the functions that form the basis of the client application and service provider interface of the MAPI subsystem. In a comparison between simple MAPI, Common Messaging Call (CMC) and CDO libraries, MAPI provides the highest performance and best controllability for messaging-based applications and service providers. Alternatively, the email messaging system 300 can be a Lotus Notes mail server, and communication can be handled via the Lotus Notes Application Program Interface (API) protocol. Similarly, if the email messaging system is a simple mail transfer protocol (SMTP) mail server, communications can be handled via SMTP.
[0025]
In the embodiment shown in FIG. 3, the communication lines 306 and 308 may use MAPI, SMTP or other protocols depending on the capacity of the client system 302 and 304. The e-mail can be received from the external system 320 via the communication line 321 via the Internet 322 via SMTP. In one embodiment of the present invention, archive server 330 initiates an archive session with email server 301 on a periodic basis via communication line 332. This periodic basis may be, for example, daily, weekly, monthly, or any other suitable time interval depending on the company's archiving requirements. The communication line 332 may use any suitable network protocol such as, for example, the well-known transmission control / Internet protocol (TCP / IP). In another embodiment of the present invention, archive server 330 retrieves email in real time or near real time.
[0026]
As is well known in the art, the email messaging server 301 may include multiple mailboxes, directories, folders, or other “storage compartments” that are used to associate messages with individual users. As used herein, the term “mailbox” refers to a collection of messages associated with a particular user, which the user creates to organize his email messages. Contains any suitable subfolders or directories. In some embodiments, the mailbox may include an “inbox” for storing newly arrived email messages and an “outbox” for storing messages sent by the user. .
[0027]
In one embodiment where archive server 330 extracts messages on a periodic basis, archive server 330 reads all messages in each mailbox on email server 301. In another example, archive server 330 may be configured to read only new messages that have been created or delivered after the completion of the previous periodic session. In another embodiment, the archive server 330 can be configured to read only messages in the mailbox inbox and outbox. Regardless of the message reading scheme implemented, the archive server examines the index file to determine the uniqueness of the message.
[0028]
The “uniqueness check” function may be built in the archive server 330 or may be executed on another server. In any case, the uniqueness check function includes the calculation of the message tag described above. The message tag for the newly read message is compared with the index file in database 334. The index file includes a message tag list corresponding to all messages stored in the message archive of database 334. If the calculated message tag matches an item in the index file, the message is not unique. That is, since the message is already stored in the message archive, the second storage is unnecessary. Alternatively, if the calculated message tag does not match any record in the index file, the message is unique and should be stored in the message archive. In this case, the message tag is also added to the index file.
[0029]
Once the message is archived on the archive server 330, the data can be transferred to another storage medium without affecting the performance of the email server 301. For example, data can be moved to a tape library system 335, an optical jukebox 336, a CD / DVD optical device 337, and the like. Since these media are less expensive than other magnetic storage media, moving archive data to these storage media can reduce long-term storage costs for the organization.
[0030]
FIG. 4 is a flowchart illustrating an e-mail message archiving process according to an embodiment of the present invention. Steps 400 to 406 are initialization steps and are intended to clarify the processing. That is, once the message archive and index file are present, the process performs steps 408-420. In step 400, a first message is read from the mailbox of the email messaging server. In step 402, a message tag for the first message is calculated, and in step 404, the first message is stored in a message archive. In step 406, the calculated message tag for the first message is stored in the index file. In step 408, a second (ie, next) message is read from the mailbox of the email messaging server. The mailbox may be the same mailbox as the one that has read the first message, or may be a different mailbox. At step 410, a message tag for the second message is calculated, and at step 412, the second message tag is compared to the first message tag (ie, the second message tag is already stored in the index file). Compared to all message tags).
[0031]
In step 414, the process branches according to the result of step 412. If the second message tag matches the first message tag (ie, if the second message tag already exists in the index file), the second message is not unique and processing goes to step 420. Move on. If the message is unique (ie, if the message tag did not match any item in the index file), the second message is stored in the message archive at step 416, and the second message tag is In step 418, it is stored in the index file.
[0032]
At step 420, the process checks to see if there are other messages to be read from the email messaging server. If there are more messages, processing returns to step 408 to read the next message. Conversely, if there are no more messages, the process is complete.
[0033]
FIG. 5 is a schematic diagram showing how a message tag can be calculated in the second embodiment of the present invention. In FIG. 5, an email message property 500 is selected from the email message. As described herein, the combination of sender name and transmission time is sufficient to uniquely identify an email message in most applications. Selected properties are combined to form a single column. The column may or may not include white space. The column is converted to a suitable bit representation in box 502. In box 504, a hash algorithm is applied to the bit string to determine the message tag in box 506.
[0034]
As described herein, the present system and method for archiving and retrieving email messages is used in large enterprise environments that use a dedicated archive server and a database system such as SQL or ORACLE (trademark brand). In another aspect, the archive server may be on the same platform as the email messaging server, and as described above, the email messaging server may be, for example, Microsoft Outlook ™ or Lotus Notes ™, Any suitable email messaging system, such as an authorized email messaging system or a non-copyrighted email messaging system, may be followed.
[0035]
Embodiments including application programs:
One embodiment of the present invention further includes an application program recorded on any magnetic or electronic medium and a computer system programmed with the program. In this embodiment, the computer system is programmed to search the mailbox of the email messaging server to identify messages added to the archive. Such a program may operate to process messages delivered to the email messaging system before the program of the present invention is executed. In this approach, the program identifies and extracts existing email messages for archiving. The program may be further configured to archive messages in real time. That is, when the message is processed by the email messaging system, a copy for archiving is retrieved by the archive server. Embodiments of the present invention can include an embedded relational database to assist in fast retrieval of message metadata. In such an embodiment, the full text of a keyword or message is added to a message index file for quick message retrieval. Furthermore, a summary of a certain attached file may be added to the message index. For example, the archive server can read an attached file conforming to a general language processing application in order to enable full text search in the attached file.
[0036]
The present invention provides a comprehensive solution for external archiving email messages from email messaging systems. The present invention can be used by organizations that are obligated to store email messages over time. For example, certain financial institutions have been ordered by the Federal Securities and Exchange Commission (SEC) to ensure that all records, including email messages, are archived for five years. The records must be stored in such a way that individual records can be retrieved if required. By storing e-mail messages in an external archive along with full-text search function messages, implementations of the present invention can resolve these and other requirements. Further, the size of the archive message store can be maintained at a manageable level by examining duplicate messages.
[0037]
The following preferred embodiments of the present invention have been disclosed for purposes of illustration and description. It is not an exhaustive objective and does not limit the invention to the precise form disclosed. Many modifications and variations of the embodiments described herein will be apparent to those skilled in the art in view of the above disclosure. The scope of the present invention is defined only by the claims appended hereto and their equivalents. Further, in describing exemplary embodiments of the present invention, the specification may have presented the method and / or process of the present invention as a particular series of steps. However, to the extent that the method or process does not depend on the specific process sequence described herein, the method or process will not be limited to the specific process sequence described. Other process sequences may be possible, as will be apparent to those skilled in the art. Accordingly, the specific process sequences described herein are not to be considered as limiting in the claims. Furthermore, claims directed to the methods and / or processes of the present invention should not be limited to the performance of the steps in the order described, the order can be variable, and Those skilled in the art will readily understand that it can be within the scope.
[Brief description of the drawings]
[0038]
FIG. 1 is a schematic diagram illustrating a message tag calculation method according to a first embodiment of the present invention.
FIG. 2 is a schematic diagram illustrating a message tag calculation method according to a second embodiment of the invention.
FIG. 3 is a schematic diagram showing a representative structure in an embodiment of the present invention.
FIG. 4 is a flow chart showing the process of an archive email message in one embodiment of the present invention.
FIG. 5 is a schematic diagram illustrating a configuration of a uniqueness check according to an embodiment of the present invention.

Claims (44)

電子メールメッセージングシステムから抽出された複数の電子メールメッセージにおいて一意の電子メールメッセージを識別する方法であって、
前記電子メールメッセージングシステムのメールボックスから複数のメッセージプロパティを含むメッセージを取り出し、
前記複数のメッセージプロパティの少なくとも一部からメッセージタグを算出し、
インデックスファイルに格納されているメッセージタグのリストを検査し、
前記メッセージタグがインデックスファイルの中に発見できるか否かに基づいて前記メッセージが一意であるか否かを判断すること
を備える方法。
A method for identifying a unique email message in a plurality of email messages extracted from an email messaging system, comprising:
Retrieving a message including a plurality of message properties from a mailbox of the email messaging system;
Calculating a message tag from at least some of the plurality of message properties;
Examine the list of message tags stored in the index file,
A method comprising determining whether the message is unique based on whether the message tag can be found in an index file.
請求項1に記載の方法であって、前記メッセージタグは、前記複数のメッセージプロパティから選択された少なくとも2種類のプロパティを結合することによって算出される方法。The method according to claim 1, wherein the message tag is calculated by combining at least two types of properties selected from the plurality of message properties. 請求項2に記載の方法であって、前記メッセージタグはさらに、所定の長さを有する均一の列を形成するために、前記メッセージタグにハッシュアルゴリズムを適用することによって算出される方法。The method of claim 2, wherein the message tag is further calculated by applying a hash algorithm to the message tag to form a uniform sequence having a predetermined length. 請求項3に記載の方法であって、前記ハッシュアルゴリズムは、MD5ハッシュアルゴリズムである方法。4. The method of claim 3, wherein the hash algorithm is an MD5 hash algorithm. 請求項1に記載の方法であって、前記複数のメッセージプロパティは、送信者名と送信者による送信時刻とを含み、かつ前記メッセージタグは、前記送信者名と前記送信者による送信時刻とを結合することにより算出される方法。The method according to claim 1, wherein the plurality of message properties include a sender name and a transmission time by the sender, and the message tag includes the sender name and a transmission time by the sender. A method that is calculated by combining. 請求項1に記載の方法であって、前記複数のメッセージプロパティは、送信者名、送信者による送信時刻および件名を含み、前記メッセージタグは、前記送信者名および前記件名と前記送信者による送信時刻とを結合することにより算出される方法。The method of claim 1, wherein the plurality of message properties include a sender name, a transmission time by a sender, and a subject, and the message tag includes the sender name, the subject, and a transmission by the sender. A method calculated by combining time. 請求項1に記載の方法であって、前記インデックスファイルはリレーショナルデータベースシステムに格納されている方法。The method of claim 1, wherein the index file is stored in a relational database system. 電子メールメッセージングシステムの外部のシステムにおいて複数の電子メールメッセージをアーカイブする方法であって、
前記電子メールメッセージングシステムの第1のメールボックスから少なくとも第1の送信者名と少なくとも第1の送信者による送信時刻とを含む第1のメッセージを読み、
前記第1の送信者名と前記第1の送信者による送信時刻とから第1のメッセージタグを算出し、
メッセージアーカイブに前記第1のメッセージを格納するとともに前記メッセージアーカイブに関連付けられたインデックスファイルに前記第1のメッセージタグを格納し、
前記電子メールメッセージングシステムの第2のメールボックスから少なくとも第2の送信者名と少なくとも第2の送信者による送信時刻とを含む第2のメッセージを読み、
前記第2の送信者名と前記第2の送信者による送信時刻とから第2のメッセージタグを算出し、
前記第2のメッセージタグと前記第1のメッセージタグとを比較し、
前記第1のメッセージタグと前記第2のメッセージタグとが同一でない場合、前記メッセージアーカイブに前記第2のメッセージを格納するとともに前記インデックスファイルに前記第2のメッセージタグを格納すること
を備える方法。
A method for archiving multiple email messages in a system external to an email messaging system comprising:
Reading a first message comprising at least a first sender name and at least a time of transmission by the first sender from a first mailbox of the email messaging system;
Calculating a first message tag from the first sender name and the transmission time by the first sender;
Storing the first message in a message archive and storing the first message tag in an index file associated with the message archive;
Reading a second message comprising at least a second sender name and at least a time of transmission by the second sender from a second mailbox of the email messaging system;
Calculating a second message tag from the second sender name and the transmission time by the second sender;
Comparing the second message tag with the first message tag;
Storing the second message in the message archive and storing the second message tag in the index file if the first message tag and the second message tag are not identical.
請求項8に記載の方法であって、前記第1のメッセージタグは、第1のメッセージ列を形成するために前記第1の送信者名と前記第1の送信者による送信時刻とを結合することにより算出され、かつ前記第2のメッセージタグは、第2のメッセージ列を形成するために前記第2の送信者名と前記第2の送信者による送信時刻とを結合することにより算出される方法。9. The method of claim 8, wherein the first message tag combines the first sender name and a transmission time by the first sender to form a first message string. And the second message tag is calculated by combining the second sender name and the transmission time by the second sender to form a second message string. Method. 請求項9に記載の方法であって、前記第1のメッセージタグはさらに、所定の長さを有する第1の均一な列を形成するために、前記第1のメッセージ列にハッシュアルゴリズムを適用することにより算出され、前記第2のメッセージタグはさらに、所定の長さを有する第2の均一な列を形成するために、前記第2のメッセージ列にハッシュアルゴリズムを適用することにより算出される方法。10. The method of claim 9, wherein the first message tag further applies a hash algorithm to the first message sequence to form a first uniform sequence having a predetermined length. The second message tag is further calculated by applying a hash algorithm to the second message sequence to form a second uniform sequence having a predetermined length. . 請求項10に記載の方法であって、前記ハッシュアルゴリズムはMD5ハッシュアルゴリズムである方法。The method of claim 10, wherein the hash algorithm is an MD5 hash algorithm. 請求項8に記載の方法であって、前記第1のメールボックスおよび前記第2のメールボックスは、前記電子メールメッセージングシステム上の異なるメールボックスである方法。9. The method of claim 8, wherein the first mailbox and the second mailbox are different mailboxes on the email messaging system. 請求項8に記載の方法であって、前記インデックスファイルはリレーショナルデータベースシステムに格納されている方法。9. The method of claim 8, wherein the index file is stored in a relational database system. 請求項8に記載の方法であって、前記メッセージアーカイブはリレーショナルデータベースシステムである方法。9. The method of claim 8, wherein the message archive is a relational database system. 一意の電子メールメッセージを識別する電子メールメッセージングシステムの外部のシステムであって、
前記電子メールメッセージングシステムのメールボックスから複数のメッセージプロパティを含む電子メールメッセージを読みこむ手段と、
前記複数のメッセージプロパティより選択された少なくとも2種類のプロパティからメッセージタグを算出する手段と、
前記メッセージタグをインデックスファイルに格納されたメッセージタグのリストと比較する手段と、
前記メッセージタグが前記インデックスファイルに存在しない場合はそのメッセージは一意であると判断する手段と
を備えるシステム。
A system external to an email messaging system that identifies a unique email message,
Means for reading an email message including a plurality of message properties from a mailbox of the email messaging system;
Means for calculating a message tag from at least two types of properties selected from the plurality of message properties;
Means for comparing the message tag with a list of message tags stored in an index file;
And means for determining that the message tag is unique if the message tag is not present in the index file.
請求項15に記載のシステムであって、前記少なくとも2種類のプロパティは送信者名と送信者の送信時刻とを含むシステム。16. The system according to claim 15, wherein the at least two types of properties include a sender name and a sender transmission time. 請求項15に記載のシステムであって、前記メッセージタグは、第1のメッセージ列を形成するためにプロパティの少なくとも2種類を結合することによって算出されるシステム。16. The system of claim 15, wherein the message tag is calculated by combining at least two types of properties to form a first message sequence. 請求項17に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することによって算出されるシステム。18. The system according to claim 17, wherein the message tag is further calculated by applying a hash algorithm to the message sequence to form a uniform sequence having a predetermined length. 請求項18に記載のシステムであって、前記ハッシュアルゴリズムはMD5ハッシュアルゴリズムであるシステム。The system of claim 18, wherein the hash algorithm is an MD5 hash algorithm. 請求項15に記載のシステムであって、前記インデックスファイルはリレーショナルデータベースシステムに格納されているシステム。16. The system according to claim 15, wherein the index file is stored in a relational database system. 一意の電子メールメッセージを識別する電子メールメッセージングシステムの外部システムであって、
前記電子メールメッセージングシステムと通信する一意性チェッカと、
複数の所定のメッセージタグを含むインデックスファイルと
を備え、
前記一意性チェッカは、前記電子メールメッセージングシステムからのメッセージを読みこむよう構成され、前記メッセージは前記メッセージと関連付けられた複数のプロパティを含み、前記一意性チェッカは、前記プロパティの少なくとも2種類を用いてメッセージに対するメッセージタグを算出し、前記算出されたメッセージタグと前記インデックスファイルとを比較して、前記算出されたメッセージタグが前記インデックスファイル内のエントリと一致した場合、前記一意性チェッカは、前記メッセージが一意ではないと判断し、前記算出されたメッセージタグが前記インデックスファイルのエントリと一致しない場合は、前記算出されたメッセージタグは前記インデックスファイルに加えられるシステム。
An external system of an email messaging system that identifies a unique email message,
A uniqueness checker in communication with the email messaging system;
An index file including a plurality of predetermined message tags,
The uniqueness checker is configured to read a message from the email messaging system, the message includes a plurality of properties associated with the message, and the uniqueness checker uses at least two of the properties. The message tag for the message is calculated, the calculated message tag is compared with the index file, and if the calculated message tag matches an entry in the index file, the uniqueness checker A system that determines that a message is not unique and if the calculated message tag does not match an entry in the index file, the calculated message tag is added to the index file.
請求項21に記載のシステムであって、前記メッセージタグは、メッセージ列を形成するために前記プロパティの少なくとも2種類を結合することによって算出されるシステム。The system according to claim 21, wherein the message tag is calculated by combining at least two types of the properties to form a message string. 請求項22に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することによって算出されるシステム。23. The system of claim 22, wherein the message tag is further calculated by applying a hash algorithm to the message sequence to form a uniform sequence having a predetermined length. 請求項23に記載のシステムであって、前記ハッシュアルゴリズムはMD5ハッシュアルゴリズムであるシステム。24. The system of claim 23, wherein the hash algorithm is an MD5 hash algorithm. 請求項21に記載のシステムであって、前記一意性チェッカは、電子メールメッセージングシステムのメールボックスから前記メッセージを読みこむシステム。24. The system of claim 21, wherein the uniqueness checker reads the message from a mailbox of an email messaging system. 請求項21に記載のシステムであって、前記複数のプロパティは、送信者名と送信者の送信時刻とを備えるシステム。The system according to claim 21, wherein the plurality of properties include a sender name and a sender transmission time. 請求項26に記載のシステムであって、前記複数のプロパティはさらに件名の列を含み、前記メッセージタグはメッセージ列を形成するために、前記送信者名、前記送信者による送信時刻、および前記件名の列を結合することにより算出されるシステム。27. The system of claim 26, wherein the plurality of properties further includes a subject column, and the message tag includes the sender name, a transmission time by the sender, and the subject to form a message sequence. A system that is calculated by joining columns of 請求項27に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することにより算出されるシステム。28. The system of claim 27, wherein the message tag is further calculated by applying a hash algorithm to the message sequence to form a uniform sequence having a predetermined length. 請求項15に記載のシステムであって、前記インデックスファイルはリレーショナルデータベースシステムに格納されているシステム。16. The system according to claim 15, wherein the index file is stored in a relational database system. 複数の電子メールメッセージをアーカイブする電子メールメッセージングシステムの外部システムであって、
前記電子メールメッセージングシステムの第1のメールボックスから少なくとも第1の送信者名と第1の送信者による送信時刻とを含む第1のメッセージを読みこむ手段と、
前記第1の送信者名と前記第1の送信者による送信時刻とから第1のメッセージタグを算出する手段と、
前記第1のメッセージをメッセージアーカイブに格納するとともに前記第1のメッセージタグを前記メッセージアーカイブと関連付けられたインデックスファイルに格納する手段と、
前記電子メールメッセージングシステムの第2のメールボックスから、少なくとも第2の送信者名と第2の送信者による送信時刻とを含む第2のメッセージを読みこむ手段と、
前記第2の送信者名と前記第2の送信者による送信時刻とから第2のメッセージタグを算出する手段と、
前記第2のメッセージタグと前記第1のメッセージタグとを比較する手段と、
前記第1のメッセージタグと前記第2のメッセージタグとが同一でない場合、前記第2のメッセージを前記メッセージアーカイブに格納するとともに、前記第2のメッセージタグをインデックスファイルに格納する手段と
を備えるシステム。
An external system of an email messaging system that archives multiple email messages,
Means for reading a first message including at least a first sender name and a transmission time by the first sender from a first mailbox of the email messaging system;
Means for calculating a first message tag from the first sender name and a transmission time by the first sender;
Means for storing the first message in a message archive and storing the first message tag in an index file associated with the message archive;
Means for reading from the second mailbox of the electronic mail messaging system a second message including at least a second sender name and a transmission time by the second sender;
Means for calculating a second message tag from the second sender name and the transmission time by the second sender;
Means for comparing the second message tag with the first message tag;
A system comprising: storing the second message in the message archive and storing the second message tag in an index file if the first message tag and the second message tag are not identical; .
請求項30に記載のシステムであって、前記第1のメッセージタグは、第1のメッセージ列を形成するために前記第1の送信者名と前記第1の送信者による送信時刻とを結合することによって算出され、前記第2のメッセージタグは、第2のメッセージ列を形成するために前記第2の送信者名と前記第2の送信者による送信時刻とを結合することにより算出されるシステム。31. The system of claim 30, wherein the first message tag combines the first sender name and a transmission time by the first sender to form a first message string. The second message tag is calculated by combining the second sender name and the transmission time by the second sender to form a second message string. . 請求項31に記載のシステムであって、前記第1のメッセージタグはさらに、所定の長さを有する第1の均一な列を形成するために前記第1のメッセージタグにハッシュアルゴリズムを適用することにより算出され、前記第2のメッセージタグはさらに、所定の長さを有する第2の均一な列を形成するために前記第2のメッセージタグにハッシュアルゴリズムを適用することにより算出されるシステム。32. The system of claim 31, wherein the first message tag further applies a hash algorithm to the first message tag to form a first uniform sequence having a predetermined length. And the second message tag is further calculated by applying a hash algorithm to the second message tag to form a second uniform sequence having a predetermined length. 請求項32に記載のシステムであって、前記ハッシュアルゴリズムはMD5ハッシュアルゴリズムであるシステム。33. The system of claim 32, wherein the hash algorithm is an MD5 hash algorithm. 請求項30に記載のシステムであって、前記第1のメッセージはさらに第1の件名列を含み、かつ前記第2のメッセージはさらに第2の件名列を含み、前記第1のメッセージタグは、第1のメッセージ列を形成するために、前記第1の送信者名、前記第1の送信者による送信時刻および前記第1の件名列を結合することにより算出され、前記第2のメッセージタグは、第2のメッセージ列を形成するために、前記第2の送信者名、前記第2の送信者による送信時刻および前記第2の件名列を結合することにより算出されるシステム。31. The system of claim 30, wherein the first message further includes a first subject string, and the second message further includes a second subject string, and the first message tag is: Calculated by combining the first sender name, the transmission time by the first sender, and the first subject string to form a first message string, the second message tag being , A system calculated by combining the second sender name, the transmission time by the second sender, and the second subject string to form a second message string. 請求項30に記載のシステムであって、前記インデックスファイルはリレーショナルデータベースシステムに格納されているシステム。32. The system of claim 30, wherein the index file is stored in a relational database system. 請求項30に記載の方法であって、前記メッセージアーカイブはリレーショナルデータベースシステムである方法。32. The method of claim 30, wherein the message archive is a relational database system. 電子メールメッセージングシステムから選択された複数の電子メールメッセージを外部においてアーカイブするシステムであって、
前記電子メールメッセージングシステムと通信するアーカイブサーバと、
前記アーカイブサーバと通信する一意性チェッカと、
前記アーカイブサーバと通信するアーカイブメッセージストアと
を備え、
前記アーカイブサーバが前記電子メールメッセージングシステムからメッセージを読みこむ際、前記メッセージと関連付けられた複数のプロパティが前記アーカイブサーバから前記一意性チェッカへと送信され、
前記一意性チェッカは、前記プロパティの少なくとも2種類を用いて前記メッセージのメッセージタグを算出し、前記算出されたメッセージタグとインデックスファイルとを比較し、前記算出されたメッセージタグが前記インデックスファイル内のエントリと一致した場合には、その一意性チェッカは前記アーカイブサーバに前記メッセージは一意ではないことを示し、かつ前記算出されたメッセージタグが前記インデックスファイル内のエントリと一致しない場合には、前記算出されたメッセージタグは前記インデックスファイルに加えられ、前記メッセージが一意である場合には、前記アーカイブサーバは前記メッセージを前記アーカイブメッセージストアに格納するシステム。
A system for externally archiving a plurality of email messages selected from an email messaging system,
An archive server in communication with the email messaging system;
A uniqueness checker in communication with the archive server;
An archive message store in communication with the archive server;
When the archive server reads a message from the email messaging system, a plurality of properties associated with the message are sent from the archive server to the uniqueness checker,
The uniqueness checker calculates a message tag of the message using at least two types of the properties, compares the calculated message tag with an index file, and the calculated message tag is stored in the index file. If the entry matches, the uniqueness checker indicates to the archive server that the message is not unique, and if the calculated message tag does not match the entry in the index file, the calculation A message tag added to the index file, and if the message is unique, the archive server stores the message in the archive message store.
請求項37に記載のシステムであって、前記メッセージタグは、メッセージ列を形成するために前記プロパティの少なくとも2種類を結合することによって算出されるシステム。38. The system of claim 37, wherein the message tag is calculated by combining at least two types of the properties to form a message string. 請求項38に記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することにより算出されるシステム。40. The system of claim 38, wherein the message tag is further calculated by applying a hash algorithm to the message sequence to form a uniform sequence having a predetermined length. 請求項39に記載のシステムであって、前記ハッシュアルゴリズムはMD5ハッシュアルゴリズムであるシステム。40. The system of claim 39, wherein the hash algorithm is an MD5 hash algorithm. 請求項37に記載のシステムであって、前記アーカイブサーバは、前記電子メールメッセージングシステムのメールボックスよりメッセージを読みこむシステム。38. The system of claim 37, wherein the archive server reads a message from a mailbox of the email messaging system. 請求項41に記載のシステムであって、前記複数のプロパティは、送信者名と送信者による送信時刻とを含むシステム。42. The system according to claim 41, wherein the plurality of properties include a sender name and a transmission time by the sender. 請求項42に記載のシステムであって、前記複数のプロパティはさらに件名列を含み、前記メッセージタグはメッセージ列を形成するために、前記送信者名、前記送信者による送信時刻、および前記件名を結合することにより算出されるシステム。43. The system of claim 42, wherein the plurality of properties further includes a subject string, and the message tag includes the sender name, a transmission time by the sender, and the subject to form a message string. A system calculated by combining. 請求項43記載のシステムであって、前記メッセージタグはさらに、所定の長さを有する均一な列を形成するために前記メッセージ列にハッシュアルゴリズムを適用することによって算出されるシステム。44. The system of claim 43, wherein the message tag is further calculated by applying a hash algorithm to the message sequence to form a uniform sequence having a predetermined length.
JP2002565173A 2002-02-12 2002-02-12 Unique email message indexing system, search method and use Pending JP2005501308A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2002/004034 WO2002065316A1 (en) 2001-02-12 2002-02-12 System and method of indexing unique electronic mail messages and uses for the same

Publications (2)

Publication Number Publication Date
JP2005501308A JP2005501308A (en) 2005-01-13
JP2005501308A6 true JP2005501308A6 (en) 2005-05-26

Family

ID=34102296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002565173A Pending JP2005501308A (en) 2002-02-12 2002-02-12 Unique email message indexing system, search method and use

Country Status (1)

Country Link
JP (1) JP2005501308A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2844948B1 (en) * 2002-09-23 2005-01-07 Eastman Kodak Co METHOD FOR ARCHIVING MULTIMEDIA MESSAGES
US8423616B2 (en) 2007-05-03 2013-04-16 Microsoft Corporation Identifying and correlating electronic mail messages

Similar Documents

Publication Publication Date Title
US20020122543A1 (en) System and method of indexing unique electronic mail messages and uses for the same
EP1739905B1 (en) Method and system for management of electronic messages
AU762283B2 (en) Content addressable information encapsulation, representation, and transfer
US7930550B2 (en) Content addressable information encapsulation, representation and transfer
US7035876B2 (en) System and method for evaluating a structured message store for message redundancy
US8683228B2 (en) System and method for WORM data storage
US20080052284A1 (en) System and Method for the Capture and Archival of Electronic Communications
US20040220975A1 (en) Additional hash functions in content-based addressing
US20070061359A1 (en) Organizing managed content for efficient storage and management
US8171061B2 (en) File-system based data store for a workgroup server
JP2005501308A6 (en) Unique email message indexing system, search method and use
JP2005501308A (en) Unique email message indexing system, search method and use
AU2002240342A1 (en) System and method of indexing unique electronic mail messages and uses for the same