JP6809060B2 - Mail data management device, mail data management method, and mail data management program - Google Patents

Mail data management device, mail data management method, and mail data management program Download PDF

Info

Publication number
JP6809060B2
JP6809060B2 JP2016173709A JP2016173709A JP6809060B2 JP 6809060 B2 JP6809060 B2 JP 6809060B2 JP 2016173709 A JP2016173709 A JP 2016173709A JP 2016173709 A JP2016173709 A JP 2016173709A JP 6809060 B2 JP6809060 B2 JP 6809060B2
Authority
JP
Japan
Prior art keywords
mail
data
thread
unit
partial
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.)
Active
Application number
JP2016173709A
Other languages
Japanese (ja)
Other versions
JP2018041206A (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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2016173709A priority Critical patent/JP6809060B2/en
Publication of JP2018041206A publication Critical patent/JP2018041206A/en
Application granted granted Critical
Publication of JP6809060B2 publication Critical patent/JP6809060B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本開示は、受信したメールデータを保存可能なメールデータ管理装置等に関する。 The present disclosure relates to a mail data management device or the like capable of storing received mail data.

近年、電子メールシステムが広く用いられている。電子メールシステムを用いて送受信される電子メールの数及びサイズは増大する傾向にあり、係る電子メールを記憶(保存)するために膨大なサイズの記憶装置(ストレージ)が必要なっている。また、記憶された電子メールが増大するにつれ、電子メールに関するデータの取得(閲覧、検索等)に時間を要することがある。 In recent years, e-mail systems have been widely used. The number and size of e-mails sent and received using an e-mail system tend to increase, and a huge size storage device (storage) is required to store (store) such e-mails. In addition, as the number of stored e-mails increases, it may take time to acquire (view, search, etc.) data related to the e-mails.

係る電子メールの管理に関する技術が、例えば、以下の各特許文献に記載されている。 Techniques for managing such e-mails are described, for example, in the following patent documents.

特許文献1には、電子メールを構成するそれぞれの部分を、複数のデータベースを用いて個別に蓄積し、データベース毎に検索条件に該当する電子メールを検索する検索システムが記載されている。 Patent Document 1 describes a search system in which each part constituting an e-mail is individually accumulated using a plurality of databases, and an e-mail corresponding to a search condition is searched for each database.

特許文献2には、複数人に送信された同一内容のメールを共有メールボックスにより一元管理するメールシステムに関する技術が記載されている。特許文献2に開示されたメールシステムは、同じ内容のメール本文が重複して蓄積されないよう、共有メールボックスへの蓄積を制御することで、メールの蓄積に要する記憶容量を低減する。 Patent Document 2 describes a technique related to a mail system that centrally manages mails of the same content sent to a plurality of people by a shared mailbox. The mail system disclosed in Patent Document 2 reduces the storage capacity required for storing mail by controlling the storage in the shared mailbox so that the mail bodies having the same contents are not stored in duplicate.

特開2009−128973号公報JP-A-2009-128973 特開2009−200999号公報Japanese Unexamined Patent Publication No. 2009-2009

電子メールの保存に要するストレージ容量を低減する技術として、データを圧縮(compress)する技術が知られている。しかしながら、データの圧縮には時間を要し、また圧縮したデータを読み出す際の展開(decompress)処理にも時間を要する、という問題がある。よって、電子メールのデータを単に圧縮した場合、当該電子メールの閲覧、検索等の処理性能が低下する可能性がある。即ち、電子メールの保存及び管理に関して、データサイズを低減するとともに、データの読み出し性能の低下を抑制する、という課題がある。 As a technique for reducing the storage capacity required for storing e-mail, a technique for compressing data is known. However, there is a problem that it takes time to compress the data, and it also takes time to perform a decompression process when reading the compressed data. Therefore, if the e-mail data is simply compressed, the processing performance of viewing, searching, etc. of the e-mail may deteriorate. That is, regarding the storage and management of e-mail, there is a problem that the data size is reduced and the deterioration of the data reading performance is suppressed.

これに対して、上記特許文献1に記載されたシステムは、メールデータの検索を効率化するために、検索する情報に応じて個別のデータベースを使用する。特許文献1に開示された技術では、メールデータの蓄積に要する記憶容量を低減できない場合がある。また、特許文献2のシステムにおいては、一元管理の対象となるメールが限られている。係るシステムでは、一元管理の対象とならないメールの蓄積に要する記憶容量を低減することが困難な場合がある。 On the other hand, the system described in Patent Document 1 uses an individual database according to the information to be searched in order to streamline the search of mail data. The technique disclosed in Patent Document 1 may not be able to reduce the storage capacity required for accumulating mail data. Further, in the system of Patent Document 2, the emails subject to centralized management are limited. In such a system, it may be difficult to reduce the storage capacity required for storing emails that are not subject to centralized management.

本開示に係る技術は、上記のような事情を鑑みて開発されたものである。即ち、本開示は、メールデータの記憶に要する記憶容量を低減しつつ、メールデータの読み出し性能の低下を抑えることができるメールデータ管理装置等を提供することを主たる目的の一つとする。 The technology according to the present disclosure has been developed in view of the above circumstances. That is, one of the main purposes of the present disclosure is to provide a mail data management device or the like capable of suppressing a decrease in the reading performance of mail data while reducing the storage capacity required for storing mail data.

上記の目的を達成すべく、本開示の一態様に係るメールデータ管理装置は、電子メールに関するデータを記憶可能なメールデータ保存部と、1以上の電子メールが同一のスレッドに含まれるか否かを判定するスレッド判定部と、上記電子メールを構成するメールデータを、上記電子メールが含まれるスレッド毎に上記メールデータ保存部に記憶されるスレッドデータに含まれる第1の部分データと、上記電子メール毎に個別に上記メールデータ保存部に記憶され第2の部分データとに分解するメールデータ分解部と、スレッド毎に、当該スレッドに含まれる上記電子メールに関する上記第1の部分データに基づいて、少なくとも当該スレッドに含まれる上記電子メールのデータサイズの総和よりも小さいデータサイズの上記スレッドデータを作成するデータサイズ調整部と、を備える。 In order to achieve the above object, the mail data management device according to one aspect of the present disclosure includes a mail data storage unit that can store data related to e-mail and whether or not one or more e-mails are included in the same thread. The thread determination unit for determining the above, and the mail data constituting the e-mail, the first partial data included in the thread data stored in the mail data storage unit for each thread containing the e-mail, and the electronic Based on the mail data decomposition unit that is individually stored in the mail data storage unit for each mail and decomposed into the second partial data, and the first partial data related to the e-mail included in the thread for each thread. A data size adjusting unit for creating the thread data having a data size smaller than the sum of the data sizes of the e-mails included in the thread is provided.

また、本開示の一態様に係るメールデータ管理方法は、電子メールに関するデータを記憶可能なメールデータ保存部を備えた情報処理装置が、1以上の電子メールが同一のスレッドに含まれるか否かを判定し、上記電子メールを構成するメールデータを、上記電子メールが含まれるスレッド毎に上記メールデータ保存部に記憶されるスレッドデータに含まれる第1の部分データと、上記電子メール毎に個別に上記メールデータ保存部に記憶され第2の部分データとに分解し、スレッド毎に、当該スレッドに含まれる上記電子メールに関する上記第1の部分データに基づいて、少なくとも当該スレッドに含まれる上記電子メールのデータサイズの総和よりも小さいデータサイズの上記スレッドデータを作成する方法である。 Further, the mail data management method according to one aspect of the present disclosure is whether or not an information processing apparatus provided with a mail data storage unit capable of storing data related to e-mail includes one or more e-mails in the same thread. The mail data constituting the e-mail is individually divided into the first partial data included in the thread data stored in the mail data storage unit for each thread containing the e-mail and the e-mail. It is stored in the mail data storage unit and decomposed into a second partial data, and for each thread, at least the electronic data included in the thread is based on the first partial data related to the electronic mail included in the thread. This is a method of creating the above thread data having a data size smaller than the total data size of the mail.

また、同目的は、上記構成を有するメールデータ管理装置、メールデータ管理方法をコンピュータによって実現するコンピュータ・プログラム、及び、そのコンピュータ・プログラムが格納されているコンピュータ読み取り可能な記録媒体等によっても達成される。 The same purpose is also achieved by a mail data management device having the above configuration, a computer program that realizes a mail data management method by a computer, a computer-readable recording medium in which the computer program is stored, and the like. To.

本開示に係る技術に依れば、メールデータの記憶に要する記憶容量を低減しつつ、メールデータの読み出し性能の低下を抑えることが可能である。 According to the technique according to the present disclosure, it is possible to suppress the deterioration of the reading performance of the mail data while reducing the storage capacity required for storing the mail data.

図1は、本開示の第1の実施形態におけるメールデータ管理装置の機能的な構成を例示するブロック図である。FIG. 1 is a block diagram illustrating a functional configuration of the mail data management device according to the first embodiment of the present disclosure. 図2は、本開示の第1の実施形態におけるメールデータ管理装置の動作(メールの保存)の具体例を示すフローチャートである。FIG. 2 is a flowchart showing a specific example of the operation (storing of mail) of the mail data management device according to the first embodiment of the present disclosure. 図3は、本開示の第1の実施形態におけるメールデータ管理装置の動作(リクエスト処理)の具体例を示すフローチャートである。FIG. 3 is a flowchart showing a specific example of the operation (request processing) of the mail data management device according to the first embodiment of the present disclosure. 図4は、受信したメールのサンプル(具体例)を示す説明図である。FIG. 4 is an explanatory diagram showing a sample (specific example) of received mail. 図5は、関連データテーブルの具体例を示す説明図である。FIG. 5 is an explanatory diagram showing a specific example of the related data table. 図6は、メールボックスに保存されたメールの具体例を示す説明図である。FIG. 6 is an explanatory diagram showing a specific example of the mail stored in the mailbox. 図7は、本開示の第2の実施形態に係るメールデータ管理装置の機能的な構成を例示するブロック図である。FIG. 7 is a block diagram illustrating a functional configuration of the mail data management device according to the second embodiment of the present disclosure. 図8は、本開示の第2の実施形態におけるメールデータ管理装置の動作(メールの保存)の具体例を示すフローチャートである。FIG. 8 is a flowchart showing a specific example of the operation (storing of mail) of the mail data management device according to the second embodiment of the present disclosure. 図9は、本開示の第2の実施形態におけるメールデータ管理装置の動作(リクエスト処理)の具体例を示すフローチャートである。FIG. 9 is a flowchart showing a specific example of the operation (request processing) of the mail data management device according to the second embodiment of the present disclosure. 図10は、本開示の第3の実施形態に係るメールデータ管理装置の機能的な構成を例示するブロック図である。FIG. 10 is a block diagram illustrating a functional configuration of the mail data management device according to the third embodiment of the present disclosure. 図10は、本開示の第3の実施形態に係るメールデータ管理装置の他の機能的な構成を例示するブロック図である。FIG. 10 is a block diagram illustrating another functional configuration of the mail data management device according to the third embodiment of the present disclosure. 図11は、本開示の実施形態におけるメールデータ管理装置を実現可能なハードウェア装置の構成を例示する図面である。FIG. 11 is a drawing illustrating the configuration of a hardware device capable of realizing the mail data management device according to the embodiment of the present disclosure.

以下、本開示におけるメールデータ管理装置等を実現可能な実施形態について詳細に説明する。以下の各実施形態に記載されているメールデータ管理装置の構成は例示であり、本開示の技術範囲はそれらには限定されない。以下の各実施形態におけるメールデータ管理装置を構成する構成要素の区分け(例えば、機能的な単位による分割)は、メールデータ管理装置を実現可能な一例である。当該メールデータ管理装置の実装に際しては、以下の例示に限定されず、様々な構成が想定される。即ち、以下の各実施形態におけるメールデータ管理装置を構成する構成要素は、更に分割されてもよい。また、以下の各実施形態におけるメールデータ管理装置を構成する1以上の構成要素が、統合されてもよい。 Hereinafter, embodiments in which the mail data management device and the like in the present disclosure can be realized will be described in detail. The configuration of the mail data management device described in each of the following embodiments is an example, and the technical scope of the present disclosure is not limited thereto. The classification of the components constituting the mail data management device (for example, division by functional unit) in each of the following embodiments is an example in which the mail data management device can be realized. When implementing the mail data management device, various configurations are assumed without being limited to the following examples. That is, the components constituting the mail data management device in each of the following embodiments may be further divided. In addition, one or more components constituting the mail data management device in each of the following embodiments may be integrated.

以下において説明するメールデータ管理装置は、単体の装置(物理的あるいは仮想的な装置)を用いて構成されてもよく、複数の離間した装置(物理的あるいは仮想的な装置)を用いたシステム(メールデータ管理システム)として実現されてもよい。メールデータ管理装置が複数の装置により構成される場合、各装置の間は有線、無線、又はそれらを適切に組み合わせた通信ネットワーク(通信回線)により通信可能に接続されてもよい。係る通信ネットワークは、物理的な通信ネットワークであってもよく、仮想的な通信ネットワークであってもよい。以下において説明するメールデータ管理装置、あるいは、その構成要素を実現可能なハードウェア構成については、後述する。 The mail data management device described below may be configured by using a single device (physical or virtual device), or a system using a plurality of separated devices (physical or virtual device) (physical or virtual device). It may be realized as a mail data management system). When the mail data management device is composed of a plurality of devices, the devices may be communicably connected by a wired, wireless, or communication network (communication line) in which they are appropriately combined. The communication network may be a physical communication network or a virtual communication network. The mail data management device described below or the hardware configuration capable of realizing the components thereof will be described later.

<第1の実施形態>
以下、本開示に係る技術の第1の実施形態について、図面を参照して説明する。以下の説明においては、電子メール(電子メールを構成するデータを含む)、単に「メール」と記載する場合がある(以下の各実施形態において同様)。
<First Embodiment>
Hereinafter, the first embodiment of the technique according to the present disclosure will be described with reference to the drawings. In the following description, e-mail (including data constituting the e-mail) may be simply referred to as "e-mail" (the same applies to each of the following embodiments).

[構成]
図1に例示するように、メールデータ管理装置1は、メールサーバ2及びメールクライアント3と、適切な通信ネットワークを用いてそれぞれ通信可能に接続される。
[Constitution]
As illustrated in FIG. 1, the mail data management device 1 is communicably connected to the mail server 2 and the mail client 3 by using an appropriate communication network.

以下、メールデータ管理装置1の構成について説明する。図1に例示するように、メールデータ管理装置1は、メール受信部101、スレッド判定部102、関連メール管理部103、スレッドデータ取得部104、メールデータ分解部105、圧縮部106、格納部107、及び、メールボックス108を含む。また、メールデータ管理装置1は、展開部109、メールデータ結合部110、取得部111、及び、応答部112を含む。 Hereinafter, the configuration of the mail data management device 1 will be described. As illustrated in FIG. 1, the mail data management device 1 includes a mail receiving unit 101, a thread determination unit 102, a related mail management unit 103, a thread data acquisition unit 104, a mail data decomposition unit 105, a compression unit 106, and a storage unit 107. , And mailbox 108. Further, the mail data management device 1 includes an expansion unit 109, a mail data combination unit 110, an acquisition unit 111, and a response unit 112.

メールデータ管理装置1に含まれる上記構成要素のうち、1以上の構成要素が統合されてもよく、1以上の構成要素が更に分解されてもよい。メールデータ管理装置1に含まれる上記構成要素の間は、適切な通信方法を用いて相互に通史可能に接続されていてよい。図1に示される各構成要素を接続する接続線は、構成要素間の接続関係の具体例を表す。各構成要素は、上記接続線により示された接続関係に限定されず、他の構成要素と適宜通信(データ及び指令の授受などを含む)してよい。以下、各構成要素について説明する。 Among the above-mentioned components included in the mail data management device 1, one or more components may be integrated, or one or more components may be further decomposed. The components included in the mail data management device 1 may be connected to each other so as to be historic by using an appropriate communication method. The connection line connecting each component shown in FIG. 1 represents a specific example of the connection relationship between the components. Each component is not limited to the connection relationship indicated by the connection line, and may appropriately communicate with other components (including sending and receiving data and commands). Hereinafter, each component will be described.

メール受信部101は、メールサーバ2からメールを受信する。メール受信部101は、例えば、SMTP(Simple Mail Transer Protocol)を利用して、メールサーバ2から電子メールを受信してもよい。 The mail receiving unit 101 receives the mail from the mail server 2. The mail receiving unit 101 may receive an e-mail from the mail server 2 by using, for example, SMTP (Simple Mail Transer Protocol).

スレッド判定部102は、1以上の電子メールが同一のスレッドか否か(同じスレッドに含まれるか否か)を判定する。 The thread determination unit 102 determines whether or not one or more e-mails are in the same thread (whether or not they are included in the same thread).

関連メール管理部103は、受信したメール毎に、当該メールと関連するメールを管理する。関連メール管理部103は、例えば、関連メールテーブル(後述)を用いて、各メール間を関連付ける情報を保持する。関連メール管理部103は、関連メールテーブルに含まれる情報をスレッド判定部102に提供するよう構成されてもよい。 The related mail management unit 103 manages the mail related to the mail for each received mail. The related mail management unit 103 holds information relating to each mail by using, for example, a related mail table (described later). The related mail management unit 103 may be configured to provide the information included in the related mail table to the thread determination unit 102.

スレッドデータ取得部104は、あるメールと同一のスレッド(当該メールが含まれるスレッド)に関するスレッドデータを取得する。 The thread data acquisition unit 104 acquires thread data related to the same thread as a certain mail (thread including the mail).

スレッドデータは、同一のスレッドに含まれる各メールの少なくとも一部から生成されるデータである。各スレッドには、少なくとも一つのスレッドデータが関連付けされる。例えば、ある一つのスレッドに、メールA、メールB、メールCが含まれることを想定する。この場合、スレッドデータは、メールAの少なくとも一部、メールBの少なくとも一部、メールCの少なくとも一部、から生成される。スレッドデータは、メールAの少なくとも一部、メールBの少なくとも一部、メールCの少なくとも一部に対してサイズを低減する所定の処理(例えば、圧縮処理、共通部分及び差分部分の抽出等)を実行することにより生成したデータを含んでもよい。 Thread data is data generated from at least a part of each email contained in the same thread. At least one thread data is associated with each thread. For example, it is assumed that one thread includes mail A, mail B, and mail C. In this case, thread data is generated from at least a part of mail A, at least a part of mail B, and at least a part of mail C. The thread data undergoes predetermined processing (for example, compression processing, extraction of common parts and difference parts, etc.) for reducing the size of at least a part of mail A, at least a part of mail B, and at least a part of mail C. It may include data generated by execution.

メールデータ分解部105は、メールを圧縮部分と、無圧縮部分とに分解する。圧縮部分は、あるメールを構成するデータの内、圧縮処理が実行される部分である。即ち、圧縮部分のデータサイズは、圧縮処理により低減される。同一のスレッドに含まれるメールの圧縮部分データは、スレッド毎にまとめて圧縮され、上記スレッドデータを構成する。以下、圧縮部分のデータを、圧縮部分データと記載することがある。無圧縮部分は、あるメールを構成するデータの内、圧縮処理が実行さない部分である。以下、部圧縮部分のデータを無圧縮部分データと記載することがある。 The mail data decomposition unit 105 decomposes the mail into a compressed part and an uncompressed part. The compressed part is a part of the data constituting a certain mail in which the compression process is executed. That is, the data size of the compressed portion is reduced by the compression process. The compressed partial data of the mail included in the same thread is collectively compressed for each thread to form the above thread data. Hereinafter, the data of the compressed portion may be described as the compressed portion data. The uncompressed part is the part of the data that constitutes a certain mail that is not executed by the compression process. Hereinafter, the data of the partially compressed portion may be described as uncompressed partial data.

圧縮部106は、圧縮部分データに関する圧縮処理を実行する。圧縮部106は、適切な圧縮アルゴリズムを適宜選択してよい。また、圧縮部106は、データの圧縮処理とともに、アーカイブ処理を実行してもよい。圧縮部106は、例えば、係るアーカイブ処理により、複数のデータ(例えば、複数のメールの圧縮部分データ)を、一つのデータにまとめることが可能である。圧縮処理及びアーカイブ処理は、例えば、現在では周知の技術を用いて実現可能である。 The compression unit 106 executes a compression process related to the compressed partial data. The compression unit 106 may appropriately select an appropriate compression algorithm. Further, the compression unit 106 may execute an archive process together with the data compression process. For example, the compression unit 106 can combine a plurality of data (for example, compressed partial data of a plurality of emails) into one data by the archiving process. The compression process and the archive process can be realized, for example, by using a well-known technique at present.

圧縮部106は、圧縮部分データを圧縮したデータを用いて、スレッドデータを更新あるいは生成する処理を実行するよう構成されてもよい。具体例として、あるメール(メールA)が、スレッド(スレッドX)に含まれる場合を想定する。圧縮部106は、例えば、メールAの圧縮部分データを圧縮したデータを含むよう、スレッドXのスレッドデータを更新してよい。圧縮部106は、例えば、メールAの圧縮部分を圧縮したデータをスレッドXのスレッドデータに追加してもよい。圧縮部106は、例えば、スレッドXのスレッドデータを一時的に展開し、メールAの圧縮部分を追加した後、再度スレッドXのスレッドデータを圧縮してもよい。圧縮部106は、例えば、アーカイブコマンドを使用して、メールAの圧縮部分の圧縮及びスレッドXのスレッドデータへの追加を実行してもよい。 The compression unit 106 may be configured to execute a process of updating or generating thread data by using the data obtained by compressing the compressed partial data. As a specific example, it is assumed that a certain mail (mail A) is included in the thread (thread X). The compression unit 106 may update the thread data of the thread X so as to include the compressed data of the compressed partial data of the mail A, for example. For example, the compression unit 106 may add data obtained by compressing the compressed portion of the mail A to the thread data of the thread X. For example, the compression unit 106 may temporarily expand the thread data of the thread X, add the compressed portion of the mail A, and then compress the thread data of the thread X again. For example, the compression unit 106 may use an archive command to compress the compressed portion of the mail A and add the thread X to the thread data.

圧縮部106は、あるメール(例えば、メールA)がいずれのスレッドにも含まれない場合(即ちメールAが新たなスレッドの起点である場合)、係るメールの圧縮部分を圧縮したデータを用いて、新たなスレッドに関するスレッドデータを生成してもよい。 When a certain mail (for example, mail A) is not included in any thread (that is, when mail A is the starting point of a new thread), the compression unit 106 uses the compressed data of the compressed part of the mail. , You may generate thread data for a new thread.

上記のように生成(あるいは更新)されるスレッドデータのデータサイズは、スレッドに含まれる全メールのデータサイズの総和よりも小さい。なぜならば、圧縮部106により各メールの圧縮部分データが圧縮されることで、データサイズが低減されるからである。 The data size of the thread data generated (or updated) as described above is smaller than the total data size of all the mails included in the thread. This is because the compressed portion data of each mail is compressed by the compression unit 106, so that the data size is reduced.

格納部107は、メールをメールボックス108(後述)に格納する。格納部107は、例えば、あるメールがあるスレッドに含まれる場合、当該メールの無圧縮部分と、当該メールの圧縮部分を含むスレッドデータとを、メールボックス108に別々に格納してよい。 The storage unit 107 stores the mail in the mailbox 108 (described later). For example, when a certain mail is included in a certain thread, the storage unit 107 may separately store the uncompressed portion of the mail and the thread data including the compressed part of the mail in the mailbox 108.

メールボックス108は、メールを記憶(保存)する。メールボックスは、例えば、ファイルシステム及びファイルを用いて実現されてもよく、データベースを用いて実現されてもよい。メールボックス108がファイルシステムを用いて実現される場合、例えば、各メールは一つのファイルとして保存されてもよい。また、スレッドデータは、スレッド毎に一つのファイルとして保存されてもよい。メールボックス108に記憶(保存)されるメールには、それぞれのメールを特定可能なユニークな識別情報(ID:Identifier)が付与されてよい。以下、係る識別情報を、”uid”と記載する場合がある。 The mailbox 108 stores (stores) mail. The mailbox may be implemented using, for example, a file system and files, or may be implemented using a database. If the mailbox 108 is implemented using a file system, for example, each mail may be stored as a single file. Further, the thread data may be saved as one file for each thread. Unique identification information (ID: Identifier) that can identify each mail may be added to the mail stored (stored) in the mailbox 108. Hereinafter, such identification information may be described as "uid".

展開部109は、圧縮部106により圧縮されたメールのデータを展開する処理を実行する。展開部109は、例えば、各メールの圧縮部分データを含むスレッドデータ全体を展開してもよい。展開部109は、例えば、スレッドデータのうち、特定のメールに関する圧縮部分データのみを展開してもよい。 The decompression unit 109 executes a process of decompressing the mail data compressed by the compression unit 106. The expansion unit 109 may expand the entire thread data including the compressed partial data of each mail, for example. For example, the expansion unit 109 may expand only the compressed partial data related to a specific mail among the thread data.

メールデータ結合部110は、圧縮部分データと、無圧縮部分データとを結合し、元のメールを生成する。具体的には、メールデータ結合部110は、あるメールについて、無圧縮部分データと、スレッドデータに含まれる(圧縮された)圧縮部分データを展開したデータとを結合することで、元のメールを生成する。 The mail data combining unit 110 combines the compressed partial data and the uncompressed partial data to generate the original mail. Specifically, the mail data combining unit 110 combines the uncompressed partial data and the expanded data of the (compressed) compressed partial data included in the thread data for a certain mail to combine the original mail. Generate.

取得部111は、メールボックス108から、保存されたメールに関するデータを取得する。具体的には、取得部111は、メールボックス108から、各メールの無圧縮部分データと、当該メールが含まれるスレッドに関するスレッドデータとを取得するよう構成されてもよい。 The acquisition unit 111 acquires data related to the saved mail from the mailbox 108. Specifically, the acquisition unit 111 may be configured to acquire the uncompressed partial data of each mail and the thread data related to the thread including the mail from the mailbox 108.

応答部112は、メールクライアント3から各種リクエストを受け付け、当該リクエストに応答する。応答部112は、例えば、メールクライアント3との間で、IMAP(Internet Message Access Protocol)を利用してリクエスト及びレスポンスを送受信するよう構成されてもよい。 The response unit 112 receives various requests from the mail client 3 and responds to the requests. The response unit 112 may be configured to send and receive a request and a response to and from the mail client 3 by using IMAP (Internet Message Access Protocol), for example.

以下、メールデータ管理装置1と通信可能に接続されるメールサーバ2及びメールクライアント3について概要を説明する。 Hereinafter, the outline of the mail server 2 and the mail client 3 that are communicably connected to the mail data management device 1 will be described.

メールサーバ2は、例えば、SMTP等を利用して、電子メールに関する転送処理を実行可能な、一般的な電子メールサーバであってよい。メールデータ管理装置1は、例えば、SMTPを利用して、メールサーバ2から電子メールを受信可能である。メールサーバ2は、例えば、専用装置(電子メールアプライアンス)により実現されてもよく、物理的又は仮想的な情報処理装置(コンピュータ等)により実現されてもよい。メールデータ管理装置1と、メールサーバ2とは、同一の装置(あるいはシステム)を用いて実現されてもよい。 The mail server 2 may be a general e-mail server capable of executing a forwarding process related to e-mail using, for example, SMTP. The mail data management device 1 can receive e-mails from the mail server 2 by using, for example, SMTP. The mail server 2 may be realized by, for example, a dedicated device (e-mail appliance) or a physical or virtual information processing device (computer or the like). The mail data management device 1 and the mail server 2 may be realized by using the same device (or system).

メールクライアント3は、例えば、一般的な電子メールクライアントでよく、例えば、IMAP等を利用して、メールデータ管理装置1から電子メールを受信する。メールクライアント3は、通信機能を備えた情報処理装置(又は当該情報処理装置において実行されるアプリケーション・プログラム)により実現されてもよい。 The mail client 3 may be, for example, a general e-mail client, and receives e-mail from the mail data management device 1 by using, for example, IMAP. The mail client 3 may be realized by an information processing device having a communication function (or an application program executed in the information processing device).

なお、メールデータ管理装置1、メールサーバ2、及び、メールクライアント3の間で用いられる通信プロトコルは、上記に限定されず、適宜選択されてよい。 The communication protocol used between the mail data management device 1, the mail server 2, and the mail client 3 is not limited to the above, and may be appropriately selected.

[動作]
上記のように構成されたメールデータ管理装置1の動作について説明する。以下に例示する各フローチャートにおける各ステップについては、動作に影響しない範囲で、実行順序が入れ替えられてもよく、1以上のステップが並行して実行されてもよい。これは、以下の各実施形態において同様である。
[motion]
The operation of the mail data management device 1 configured as described above will be described. For each step in each of the flowcharts illustrated below, the execution order may be changed or one or more steps may be executed in parallel as long as the operation is not affected. This is the same in each of the following embodiments.

図2は、メールデータ管理装置1が、メールサーバ2からメールを受信し、メールボックス108に格納する動作を例示するフローチャートである。 FIG. 2 is a flowchart illustrating an operation in which the mail data management device 1 receives mail from the mail server 2 and stores the mail in the mailbox 108.

メール受信部101は、メールサーバ2からメールを受信する(ステップS201)。メール受信部101は、受信したメールデータをスレッド判定部102に提供してもよい。 The mail receiving unit 101 receives the mail from the mail server 2 (step S201). The mail receiving unit 101 may provide the received mail data to the thread determination unit 102.

スレッド判定部102は、受信したメールが既に管理されているスレッドの一部か否かを判定する。即ち、スレッド判定部102は、受信したメールが、既に受信済みの他のメールと同一のスレッドに含まれるか否かを判定する。 The thread determination unit 102 determines whether or not the received mail is a part of a thread that is already managed. That is, the thread determination unit 102 determines whether or not the received mail is included in the same thread as other mail that has already been received.

スレッド判定部102は、例えば、受信したメールのメールヘッダに含まれる”Message−Id”と、”In−Reply−To”とを利用して、当該受信したメールが、あるスレッドの一部か否か(あるスレッドに含まれるか否か)を判定することができる。 The thread determination unit 102 uses, for example, "Message-Id" and "In-Reply-To" included in the mail header of the received mail to determine whether or not the received mail is a part of a certain thread. (Whether or not it is included in a certain thread) can be determined.

メールヘッダにおける”Message−Id”は、あるメールを特定可能な識別情報を示すデータである。また、メールヘッダにおける”In−Reply−To”は、あるメールが、どのメールに対する返信であるかを示すデータである。一般的に、”In−Reply−To”には、元のメール(返信されるメール)に関する”Message−Id”が設定され得る。 "Message-Id" in the mail header is data indicating identification information that can identify a certain mail. Further, "In-Retry-To" in the mail header is data indicating to which mail a certain mail is a reply. In general, "Message-Id" related to the original mail (replied mail) can be set in "In-Reply-To".

スレッド判定部102は、受信したメールのメールヘッダに”In−Reply−To”が含まれない場合、受信したメールを、新しいスレッドとして処理してよい。即ち、この場合、スレッド判定部102は、受信したメールを、新たなスレッドの起点として処理してよい。 If the mail header of the received mail does not include "In-Retry-To", the thread determination unit 102 may process the received mail as a new thread. That is, in this case, the thread determination unit 102 may process the received mail as the starting point of a new thread.

スレッド判定部102は、受信したメールのメールヘッダに”In−Reply−To”が含まれる場合、その値が、他のメール(他の”uid”が付与されたメールデータ)の”Message−Id”と同一であるか否かを確認する。スレッド判定部102は、受信したメールのメールヘッダに含まれる”In−Reply−To”と、他のメールの”Message−Id”とが同一である場合、それらのメールは同一スレッドである(同一のスレッドに含まれる)と判定する。受信したメールのメールヘッダに含まれる”In−Reply−To”と、他のメールデータの”Message−Id”とが同一ではない場合、受信したメールを、新しいスレッドとして処理してよい。なお、スレッド判定部102は、関連メール管理部103が管理する関連テーブルを利用して上記判定を実行することができる。 When the mail header of the received mail includes "In-Reply-To", the thread determination unit 102 sets the value to "Message-Id" of another mail (mail data to which another "uid" is added). Check if it is the same as ". When the thread determination unit 102 has the same "In-Retry-To" included in the mail header of the received mail and the "Message-Id" of the other mail, those mails are in the same thread (same). Included in the thread). If "In-Reply-To" included in the mail header of the received mail and "Message-Id" of other mail data are not the same, the received mail may be processed as a new thread. The thread determination unit 102 can execute the above determination by using the related table managed by the related mail management unit 103.

受信したメールが、あるスレッドの一部である(あるスレッドに含まれる)場合(ステップS203においてYES)、スレッドデータ取得部104は、当該スレッドに関するスレッドデータを取得する(ステップS204)。上記したように、係るスレッドデータには、当該スレッドに含まれる各メールの圧縮部分データを圧縮したデータが含まれる。 When the received mail is a part of a certain thread (included in a certain thread) (YES in step S203), the thread data acquisition unit 104 acquires the thread data related to the thread (step S204). As described above, the thread data includes compressed data of the compressed partial data of each mail included in the thread.

メールデータ分解部105は、メール受信部101が受信したメールを、圧縮部分データと、無圧縮部分データとに分解する(ステップS205)。 The mail data decomposition unit 105 decomposes the mail received by the mail reception unit 101 into compressed partial data and uncompressed partial data (step S205).

上記したように、無圧縮部分データには圧縮処理が実行されない。よって、無圧縮部分データに関するアクセス(例えば、検索、分類、閲覧等)は、圧縮及び展開処理に起因する処理時間の影響を受けずに、処理を実行可能である。そこで、メールデータ分解部105は、メールに対するアクセスにおいて、比較的高い頻度で参照される部分を、無圧縮部分データに分解する。また、メールデータ分解部105は、無圧縮部分データ以外の部分(メール本文における残りの部分)を圧縮部分データに分解する。 As described above, the uncompressed partial data is not compressed. Therefore, the access related to the uncompressed partial data (for example, search, classification, browsing, etc.) can be executed without being affected by the processing time caused by the compression and decompression processing. Therefore, the mail data decomposition unit 105 decomposes the portion referred to with a relatively high frequency in the access to the mail into uncompressed partial data. Further, the mail data decomposition unit 105 decomposes a part other than the uncompressed part data (the remaining part in the mail body) into the compressed part data.

ユーザがメール本文における比較的先頭に近い部分を閲覧することで、当該メールを更に閲覧すべきか否かを判断し得る場合も多いと考えられる。そこで、本実施形態においては、メールデータ分解部105は、例えば、メールヘッダ及びメール本文の一部を、無圧縮部分データに分解する。 It is considered that the user can often determine whether or not to further read the e-mail by browsing the part relatively close to the beginning of the e-mail body. Therefore, in the present embodiment, the mail data decomposition unit 105 decomposes, for example, a part of the mail header and the mail body into uncompressed partial data.

メールデータ分解部105は、例えば、メールを構成するデータの内、以下の部分を無圧縮部分データに分解してもよい。即ち、メールデータ分解部105は、例えば、メールを構成するデータのうち、メールヘッダ及びメール本体(メールボディ部分)の特定部分(例えば、先頭N行あるいはNバイト等(Nは自然数))を、無圧縮部分データに分解してもよい。メール本体の特定部分は、例えば、実験やテスト運用等により得られた知見から、適宜設定可能である。上記に限定されず、メールデータ分解部105は、例えば、受信したメールが例えばMIME(Multipurpose Internet Mail Extensions)により規定されたマルチパート形式である場合は、メールヘッダ及び特定のパートを、無圧縮部分データに分解してもよい。無圧縮部分データに含まれるパートは適宜設定可能としてよい。係るパートとして、典型的にはメールボディ部分における最初のパートが選択されてよい。メールデータ分解部105は、受信したメールに添付ファイルが含まれる場合は、メールヘッダ及び添付ファイル以外のパートを、無圧縮部分データに分解してもよい。上記のように、圧縮部分データと、無圧縮部分データとを分解することで、あるメールの保存(記憶)に要するストレージ容量を低減するとともに、当該メールに対する読み出し性能の低下を抑制することができると考えられる。 For example, the mail data decomposition unit 105 may decompose the following parts of the data constituting the mail into uncompressed part data. That is, for example, the mail data decomposition unit 105 sets a specific part (for example, the first N lines or N bytes (N is a natural number)) of the mail header and the mail body (mail body part) among the data constituting the mail. It may be decomposed into uncompressed partial data. The specific part of the mail body can be appropriately set from the knowledge obtained by, for example, an experiment or a test operation. Not limited to the above, the mail data decomposition unit 105, for example, when the received mail is in a multi-part format defined by, for example, MIME (Multipurpose Internet Mail Extensions), the mail header and a specific part are uncompressed. It may be decomposed into data. The part included in the uncompressed partial data may be appropriately set. As such a part, typically the first part in the mail body part may be selected. When the received mail contains an attached file, the mail data decomposition unit 105 may decompose the parts other than the mail header and the attached file into uncompressed partial data. By decomposing the compressed partial data and the uncompressed partial data as described above, it is possible to reduce the storage capacity required for storing (storing) a certain mail and suppress the deterioration of the reading performance for the mail. it is conceivable that.

圧縮部106は、メールデータ分解部105において分解された圧縮部分データを圧縮する(ステップS206)。なお、ステップS204において、受信したメールが含まれるスレッドに関するスレッドデータを取得している場合、圧縮部106は、取得したスレッドデータに圧縮部分データを追加して圧縮してよい。 The compression unit 106 compresses the compressed partial data decomposed by the mail data decomposition unit 105 (step S206). In step S204, when the thread data related to the thread including the received mail is acquired, the compression unit 106 may add the compressed partial data to the acquired thread data and compress the data.

格納部107は、受信したメールから分解された無圧縮部分データと、圧縮された圧縮部分データを含むスレッドデータとをメールボックス108に格納する(ステップS207)。 The storage unit 107 stores the uncompressed partial data decomposed from the received mail and the thread data including the compressed compressed partial data in the mailbox 108 (step S207).

以上の動作により、メールデータ管理装置1は、メールサーバ2から受信したメールを分解して、メールボックス108に格納することができる。 By the above operation, the mail data management device 1 can decompose the mail received from the mail server 2 and store it in the mailbox 108.

以下、メールデータ管理装置1が、メールクライアント3からのリクエストに応じて、メールクライアント3にレスポンスを返す処理について、図3に例示するフローチャートを参照して説明する。 Hereinafter, a process in which the mail data management device 1 returns a response to the mail client 3 in response to a request from the mail client 3 will be described with reference to the flowchart illustrated in FIG.

メールクライアント3からの情報取得要求(リクエスト)を応答部112が受信する(ステップS301)。係るリクエストは、例えば、あるメールの一部(例えばヘッダ等)を読み出すリクエストであってもよく、あるメールの全部を読み出すリクエストであってもよい。係るリクエストは、例えば、IMAPにより規定されたコマンドを含んでもよい。 The response unit 112 receives the information acquisition request (request) from the mail client 3 (step S301). The request may be, for example, a request for reading a part of a certain mail (for example, a header or the like), or a request for reading the whole of a certain mail. Such request may include, for example, a command specified by IMAP.

受信したリクエストがメールヘッダのみを取得するリクエストである場合(ステップS302において[メールヘッダのみ])、取得部111は、ステップS303の処理を実行する。即ち、取得部111は、メールボックス108から、リクエストにより指定されたメールの無圧縮部分を取得する(ステップS303)。具体的には、例えば、応答部112が取得部111にメールヘッダの情報取得を要求し、当該要求に応じて取得部111がメールの無圧縮部分を取り出してもよい。 When the received request is a request for acquiring only the mail header ([mail header only] in step S302), the acquisition unit 111 executes the process of step S303. That is, the acquisition unit 111 acquires the uncompressed portion of the mail specified by the request from the mailbox 108 (step S303). Specifically, for example, the response unit 112 may request the acquisition unit 111 to acquire the information of the mail header, and the acquisition unit 111 may take out the uncompressed portion of the mail in response to the request.

上記の変形例として、受信したリクエストが、メール本文のうち無圧縮部分に含まれるヘッダ部分以外のデータを取得するリクエストである場合も、取得部111はステップS303における処理を実行してよい。例えば、IMAPの場合、”FETCH”コマンド等を用いて、メールの一部を取得することが可能である。 As a modification of the above, even when the received request is a request for acquiring data other than the header portion included in the uncompressed portion of the mail body, the acquisition unit 111 may execute the process in step S303. For example, in the case of IMAP, it is possible to acquire a part of the mail by using the "FETCH" command or the like.

応答部112は、ステップS303において取得されたデータを含むレスポンスを、メールクライアント3に返す。 The response unit 112 returns a response including the data acquired in step S303 to the mail client 3.

一方、受信したリクエストがメール全体を取得するリクエストである場合(ステップS302において[メールデータ全体])、取得部111はステップS304の処理を実行する。即ち、取得部111は、メールボックス108から、リクエストにより指定されたメールの無圧縮部分と、当該メールが含まれるスレッドに関するスレッドデータとを取得する(ステップS304)。この場合、応答部112が取得部111にメール全体の情報取得を要求してもよい。取得部111は、取得したスレッドデータを展開部109に供給してもよい。 On the other hand, when the received request is a request for acquiring the entire mail ([whole mail data] in step S302), the acquisition unit 111 executes the process of step S304. That is, the acquisition unit 111 acquires the uncompressed portion of the mail specified by the request and the thread data related to the thread including the mail from the mailbox 108 (step S304). In this case, the response unit 112 may request the acquisition unit 111 to acquire the information of the entire mail. The acquisition unit 111 may supply the acquired thread data to the expansion unit 109.

展開部109は、スレッドデータを展開する(ステップS305)。具体的には、展開部109は、リクエストにより指定されたメールに関する圧縮部分データをスレッドデータから抽出して展開する。展開部109は、スレッドデータを展開した後に、リクエストにより指定されたメールに関する圧縮部分データを抽出してもよい。 The expansion unit 109 expands the thread data (step S305). Specifically, the expansion unit 109 extracts the compressed partial data related to the mail specified by the request from the thread data and expands it. After decompressing the thread data, the decompression unit 109 may extract the compressed partial data related to the mail specified by the request.

メールデータ結合部110は、リクエストにより指定されたメールに関する無圧縮部分データと、展開されたスレッドデータから抽出された圧縮部分データとを結合し、元のメールを復元する(ステップS306)。メールデータ結合部110は、復元されたメールを応答部112に供給してもよい。 The mail data combining unit 110 combines the uncompressed partial data related to the mail specified by the request and the compressed partial data extracted from the expanded thread data, and restores the original mail (step S306). The mail data combining unit 110 may supply the restored mail to the response unit 112.

応答部112は、ステップS306において復元されたメールを含むレスポンスを、メールクライアント3に返す(ステップS309)。 The response unit 112 returns a response including the mail restored in step S306 to the mail client 3 (step S309).

上記の変形例として、受信したリクエストが、メール本文のうち圧縮部分データに含まれる一部データを取得するリクエストである場合も、メールデータ管理装置1は、ステップS304乃至S306における処理を実行してよい。そして、この場合、ステップS309において、応答部112が、受信してリクエストにおいて指定された部分(例えば、メールボディ部分の一部等)を、メールクライアント3に反してもよい。 As a modification of the above, even when the received request is a request for acquiring a part of the data included in the compressed partial data in the mail body, the mail data management device 1 executes the processes in steps S304 to S306. Good. Then, in this case, in step S309, the response unit 112 may make a portion (for example, a part of the mail body portion) specified in the received request against the mail client 3.

以下、具体例を用いて、関連メール管理部103が有する関連テーブル及び、メールボックス108に保存されるメールの構成について説明する。以下の具体例においては、図4に例示するようなメール1乃至メール5の5通のメールを受信することを想定する。図4には、メール1乃至メール5のヘッダの一部が例示されている。図4において伏せ字(”*”)が表示されている部分には、適切なデータが適宜設定されてよい。各メールは、当該メールが受信されたタイミングあるいはメールボックス108に格納されるタイミングにおいてuidが設定されてもよい。以下においては、説明の便宜上、図4に例示する各メールにuid1乃至uid5が設定されることを想定する。また、以下の具体例においては、メールボックス108がファイルシステムを用いて実現されることを想定する。 Hereinafter, the configuration of the related table held by the related mail management unit 103 and the mail stored in the mailbox 108 will be described with reference to a specific example. In the following specific example, it is assumed that five emails 1 to 5 as illustrated in FIG. 4 are received. FIG. 4 illustrates a part of the headers of the mails 1 to 5. Appropriate data may be appropriately set in the portion where the hidden characters ("*") are displayed in FIG. 4. For each mail, a uid may be set at the timing when the mail is received or when the mail is stored in the mailbox 108. In the following, for convenience of explanation, it is assumed that uid1 to uid5 are set for each email illustrated in FIG. Further, in the following specific example, it is assumed that the mailbox 108 is realized by using the file system.

図5は、uid1〜uid5のメールがメールボックス108に格納された際の、関連メール管理部103が有する関連テーブルの具体例を示す説明図である。図5において、uid属性(列)にはメールボックスにおいてメールを識別可能なuidが設定される。Message−Id属性(列)には、uid属性により特定されるメールに設けられたMessage−Idの値が設定される。In−reply−to属性(列)には、uid属性により特定されるメールに設けられたIn−reply−toの値が設定される。prev−id属性(列)には、uid属性により特定されるメールの返信元となるメールのuidが設定される。また、Thread−Id属性(列)には、uid属性により特定されるメールが含まれるスレッドを特定可能なID(Identifier:識別情報)であるThread−Idが設定される。 FIG. 5 is an explanatory diagram showing a specific example of a related table held by the related mail management unit 103 when the mails of uid1 to uid5 are stored in the mailbox 108. In FIG. 5, a uid that can identify a mail in the mailbox is set in the uid attribute (column). In the Message-Id attribute (column), the value of Message-Id provided in the mail specified by the uid attribute is set. In the In-reply-to attribute (column), the value of In-reply-to provided in the mail specified by the uid attribute is set. In the prev-id attribute (column), the uid of the mail that is the reply source of the mail specified by the uid attribute is set. Further, in the Lead-Id attribute (column), Threat-Id, which is an ID (Identifier: identification information) capable of identifying the thread including the mail specified by the uid attribute, is set.

図6は、uid1〜uid5のメールがメールボックス108に格納された際の、メールボックス108におけるメールの配置を例示する説明図である。 FIG. 6 is an explanatory diagram illustrating the arrangement of mails in the mailbox 108 when the mails of uid1 to uid5 are stored in the mailbox 108.

メールデータ管理装置1(メール受信部101)は、メールサーバ2からuid1のメールを受信する。uid1のメールには”In−Reply−To”ヘッダが含まれないことから、メールデータ管理装置1(スレッド判定部102)は、uid1のメールが新たなスレッドである(即ち、uid1のメールが新たなスレッドの起点である)と判定する。メールデータ管理装置1は、係るスレッドの識別情報(”Thread−ID”)として、”thr1”を割当て、関連メール管理部103の関連データテーブルに登録する(図5の501)。 The mail data management device 1 (mail receiving unit 101) receives the mail of uid1 from the mail server 2. Since the mail of uid1 does not include the "In-Reply-To" header, the mail data management device 1 (thread determination unit 102) has a new thread for the mail of uid1 (that is, the mail of uid1 is new). It is the starting point of a thread). The mail data management device 1 allocates "thr1" as the identification information ("Thread-ID") of the thread and registers it in the related data table of the related mail management unit 103 (501 in FIG. 5).

メールデータ管理装置1(メールデータ分解部105)は、uid1のメールを、圧縮部分データと、無圧縮部分データとに分解する。メールデータ管理装置1は、例えば、メールヘッダと、メール本文(メールボディ部分)の特定部分(例えば先頭N行)とを、無圧縮部分データに分解し、メール本文の残りの部分を圧縮部分データに分解してもよい。メールデータ管理装置1(圧縮部106)は、圧縮部分データを圧縮し、thr1のスレッドデータを生成する。メールデータ管理装置1(格納部107)は、uid1のメール(無圧縮部文データ及び、thr1のスレッドデータ)をメールボックス108に格納する。 The mail data management device 1 (mail data decomposition unit 105) decomposes the mail of uid1 into compressed partial data and uncompressed partial data. The mail data management device 1 decomposes, for example, a mail header and a specific part (for example, the first N lines) of the mail body (mail body part) into uncompressed partial data, and the remaining part of the mail body is compressed partial data. It may be disassembled into. The mail data management device 1 (compression unit 106) compresses the compressed partial data and generates thread data of thr1. The mail data management device 1 (storage unit 107) stores the mail of uid1 (uncompressed part sentence data and thread data of thr1) in the mailbox 108.

上記処理により、図6に例示するメールボックス108の構成(”mailbox1/#msg/thr1”(スレッドデータ)と、”mailbox1/#msg/uid1”のファイル)が作成される。図6に例示する”mailbox1”は、例えば、あるユーザのメールアカウントに対応するメールが保存されるメールボックスであり、ファイルシステムにおけるディレクトリ(フォルダ)として実現可能である。図6に例示する”thr1”は、スレッドID(Thread−Id)が”thr1”であるスレッドの、スレッドデータを含むファイルである。図6に例示する”uid1”は、uid1のメールに関する無圧縮部分データを含むファイルである。 By the above processing, the configuration of the mailbox 108 illustrated in FIG. 6 (“mailbox1 / # msg / thr1” (thread data) and “mailbox1 / # msg / uid1” file) is created. The "mailbox1" illustrated in FIG. 6 is, for example, a mailbox in which mail corresponding to a user's mail account is stored, and can be realized as a directory (folder) in a file system. “Thr1” illustrated in FIG. 6 is a file containing thread data of a thread whose thread ID (Thread-Id) is “thr1”. “Uid1” illustrated in FIG. 6 is a file containing uncompressed partial data related to the mail of uid1.

メールデータ管理装置1が、メールサーバ2から、uid2のメールを受信する。uid2のメールには、In−Reply−Toヘッダが含まれ、その値がuid1のMessage−Idと一致する(図4)。そこで、メールデータ管理装置1(スレッド判定部102)は、uid1のメールと、uid2のメールとは、同一のスレッドである(同一のスレッドに含まれる)と判定する。即ち、メールデータ管理装置1(スレッド判定部102)は、uid2のメールが、thr1のスレッド(Thread−Idがthr1)に含まれると判定する。係る判定に応じて、メールデータ管理装置1は、関連データテーブルを更新する(図5の502)。また、メールデータ管理装置1(スレッドデータ取得部104)は、thr1に関するスレッドデータを、メールボックス108から取得する。 The mail data management device 1 receives the mail of uid2 from the mail server 2. The uid2 mail contains an In-Reply-To header whose value matches the message-Id of uid1 (FIG. 4). Therefore, the mail data management device 1 (thread determination unit 102) determines that the mail of uid1 and the mail of uid2 are the same thread (included in the same thread). That is, the mail data management device 1 (thread determination unit 102) determines that the mail of uid2 is included in the thread of thr1 (Thread-Id is thr1). The mail data management device 1 updates the related data table according to the determination (502 in FIG. 5). Further, the mail data management device 1 (thread data acquisition unit 104) acquires thread data related to thr1 from the mailbox 108.

メールデータ管理装置1(メールデータ分解部105)は、上記uid1のメールと同様、uid2のメールを、無圧縮部分データと、圧縮部分データとに分解する。メールデータ管理装置1(メールデータ分解部105)は、uid2のメールに関する圧縮部分データと、thr1のスレッドデータとを合わせて圧縮する。例えば、メールデータ管理装置1(メールデータ分解部105)は、周知の圧縮コマンド(あるいは圧縮コマンドとアーカイブコマンドとの組合せ)により、スレッドデータのファイルと、uid2の圧縮部分データのファイルとを一つに合わせて圧縮することが可能である。この場合、メールデータ管理装置1(メールデータ分解部105)は、例えば、スレッドデータを展開してuid1のメールに関する圧縮部分データのファイルを抽出し、当該ファイルと、uid2の圧縮部分データのファイルとをまとめて再び圧縮してもよい。 The mail data management device 1 (mail data decomposition unit 105) decomposes the mail of uid2 into uncompressed partial data and compressed partial data in the same manner as the mail of uid1 described above. The mail data management device 1 (mail data decomposition unit 105) compresses the compressed partial data related to the mail of uid2 and the thread data of thr1 together. For example, the mail data management device 1 (mail data decomposition unit 105) uses a well-known compression command (or a combination of a compression command and an archive command) to combine a thread data file and a uid2 compressed partial data file. It is possible to compress according to. In this case, the mail data management device 1 (mail data decomposition unit 105) expands the thread data, extracts the compressed partial data file related to the mail of uid1, and obtains the file and the compressed partial data file of uid2. May be recompressed together.

メールデータ管理装置1は、uid2に関するメール(無圧縮部分データ、及び、uid2のメールデータに関する圧縮部分データを含むスレッドデータ)を、メールボックス108に登録する。 The mail data management device 1 registers mail related to uid2 (thread data including uncompressed partial data and compressed partial data related to the mail data of uid2) in the mailbox 108.

上記処理により、図6に例示するメールボックス108の構成のうち、”mailbox1/#msg/thr1”が更新され、”mailbox1/#msg/uid2”のファイルが作成される。 By the above processing, "mailbox1 / # msg / thr1" is updated in the configuration of the mailbox 108 illustrated in FIG. 6, and a file of "mailbox1 / # msg / uid2" is created.

メールデータ管理装置1が、メールサーバ2から、uid3のメールを受信する。uid3のメールには、”In−Reply−To”ヘッダが含まれないことから、メールデータ管理装置1(スレッド判定部102)は、uid3のメールが新たなスレッドである(即ち、uid3のメールが新たなスレッドの起点である)と判定する。メールデータ管理装置1は、係るスレッドの識別情報(”Thread−Id”)として、”thr2”を割当て、関連メール管理部103の関連データテーブルに登録する(図5の503)。以下、メールデータ管理装置1は、uid3のメールについて、上記説明したuid1のメールと同様の処理を実行することができる。係る処理により、図6に例示するメールボックス108の構成(”mailbox1/#msg/thr2”(スレッドデータ)と、”mailbox1/#msg/uid3”のファイル)が作成される。 The mail data management device 1 receives the mail of uid 3 from the mail server 2. Since the "In-Reply-To" header is not included in the mail of uid3, the mail data management device 1 (thread determination unit 102) uses the mail of uid3 as a new thread (that is, the mail of uid3 is a new thread). It is the starting point of a new thread). The mail data management device 1 allocates "thr2" as the identification information ("Thread-Id") of the thread and registers it in the related data table of the related mail management unit 103 (503 in FIG. 5). Hereinafter, the mail data management device 1 can execute the same processing as the mail of uid1 described above for the mail of uid3. By such processing, the configuration of the mailbox 108 illustrated in FIG. 6 (“mailbox1 / # msg / thr2” (thread data) and “mailbox1 / # msg / uid3” file) is created.

メールデータ管理装置1が、メールサーバ2から、uid4のメールを受信する。uid4のメールには、In−Reply−Toヘッダが含まれ、その値がuid3のMessage−Idと一致する(図4)。そこで、メールデータ管理装置1(スレッド判定部102)は、uid4のメールと、uid3のメールとは、同一のスレッドである(同一のスレッドに含まれる)と判定する。即ち、メールデータ管理装置1(スレッド判定部102)は、uid4のメールが、thr2のスレッド(Thread−Idがthr2)に含まれると判定する。係る判定に応じて、メールデータ管理装置1は、関連データテーブルを更新する(図5の504)。また、メールデータ管理装置1(スレッドデータ取得部104)は、thr2に関するスレッドデータを、メールボックス108から取得する。以下、以下、メールデータ管理装置1は、uid4のメールについて、上記説明したuid2のメールと同様の処理を実行することができる。uid5のメールについても同様である。係る処理により、図6に例示するメールボックス108の構成のうち、”mailbox1/#msg/thr2”が更新され、”mailbox1/#msg/uid4”及び”mailbox1/#msg/uid5”のファイルが作成される。 The mail data management device 1 receives the mail of uid4 from the mail server 2. The uid4 email contains an In-Reply-To header whose value matches the uid3 Message-Id (FIG. 4). Therefore, the mail data management device 1 (thread determination unit 102) determines that the mail of uid4 and the mail of uid3 are the same thread (included in the same thread). That is, the mail data management device 1 (thread determination unit 102) determines that the mail of uid4 is included in the thread of thr2 (Thread-Id is thr2). The mail data management device 1 updates the related data table according to the determination (504 in FIG. 5). Further, the mail data management device 1 (thread data acquisition unit 104) acquires thread data related to thr2 from the mailbox 108. Hereinafter, the mail data management device 1 can execute the same processing as the mail of uid2 described above for the mail of uid4. The same applies to uid5 mail. By this process, "mailbox1 / # msg / thr2" is updated in the configuration of the mailbox 108 illustrated in FIG. 6, and "mailbox1 / # msg / uid4" and "mailbox1 / # msg / uid5" files are created. Will be done.

上記のように構成されたメールデータ管理装置1は、スレッド毎に、当該スレッドに含まれる各メールのデータを圧縮することから、データを効率よく圧縮することが可能である。また、メールデータ管理装置1は、各メールのメールヘッダ部分及びメールボディ部分のうちの特定部分(例えば先頭N行)を圧縮処理が実行されない無圧縮部分データとしてメールボックスに格納する。即ち、メールデータ管理装置1は、データの圧縮及び展開に関する処理時間の影響を受けることなく、各メールの無圧縮データ部分を提供可能である。これにより、メールデータ管理装置1は、例えば、メールクライアント3に対するレスポンスタイムを維持することが可能である。 Since the mail data management device 1 configured as described above compresses the data of each mail included in the thread for each thread, it is possible to efficiently compress the data. Further, the mail data management device 1 stores a specific part (for example, the first N lines) of the mail header part and the mail body part of each mail in the mailbox as uncompressed part data in which the compression process is not executed. That is, the mail data management device 1 can provide an uncompressed data portion of each mail without being affected by the processing time related to data compression and decompression. As a result, the mail data management device 1 can maintain the response time to the mail client 3, for example.

以上より、上記のように構成されたメールデータ管理装置1は、メールデータの記憶に要する記憶容量を低減しつつ、メールデータの読み出し性能の低下を抑えることができる。その理由は、メールデータ管理装置1は、各メールを圧縮処理が実行されない無圧縮データと、圧縮処理が実行される圧縮分データとに分解し、圧縮部分データを圧縮して管理するからである。また、メールデータ管理装置1は、各メールの圧縮部分データを個別に圧縮するのではなく、各メールが含まれるスレッド毎にまとめて圧縮するからである。 From the above, the mail data management device 1 configured as described above can suppress the deterioration of the reading performance of the mail data while reducing the storage capacity required for storing the mail data. The reason is that the mail data management device 1 decomposes each mail into uncompressed data in which the compression process is not executed and compressed data in which the compression process is executed, and compresses and manages the compressed partial data. .. Further, the mail data management device 1 does not compress the compressed partial data of each mail individually, but collectively compresses each thread including each mail.

容量(データサイズ)が大きいメールに関して、一般的には、メール本体(メールボディ部分)のデータ部分の容量(データサイズ)が大きいと考えられる。メールデータ管理装置1はメール本体部分を圧縮可能であることから、特に容量の大きいメールが圧縮されることになる。また、メールクライアント3は、無圧縮部分データの情報を用いて一覧表示や、要約表示等を提供することが可能である。即ち、メールデータ管理装置1は、圧縮されたデータ(圧縮部分データ)に関する展開処理を行うことなく、一覧表示や、要約表示等に必要なデータをメールクライアント3に提供可能である。このため、メールデータ管理装置1は、メールデータ全体が無圧縮の場合と同等の応答性能を維持可能である。 Regarding a mail having a large capacity (data size), it is generally considered that the capacity (data size) of the data part of the mail body (mail body part) is large. Since the mail data management device 1 can compress the mail body portion, a mail having a particularly large capacity is compressed. Further, the mail client 3 can provide a list display, a summary display, and the like by using the information of the uncompressed partial data. That is, the mail data management device 1 can provide the mail client 3 with data necessary for list display, summary display, and the like without performing decompression processing on the compressed data (compressed partial data). Therefore, the mail data management device 1 can maintain the same response performance as when the entire mail data is uncompressed.

なお、圧縮効率の観点からは、全てのメールをまとめて一つのデータとして(例えば、1つのファイルとして)圧縮する場合、データを効率よく圧縮することが可能である(即ち、圧縮効率は高くなる)。しかしながら、この場合、展開処理に多くの時間を要する(展開処理が非効率になる)可能性がある。例えば、一つのメールに関するデータを取得するために、全てのメールを含む圧縮データが展開される可能性がある。一方、各メールを個別に圧縮する場合、全てのメールを1つのファイルとして圧縮する場合に比して、展開処理に要する時間は短いものの、圧縮効率は低くなる。 From the viewpoint of compression efficiency, when all mails are collectively compressed as one data (for example, as one file), the data can be efficiently compressed (that is, the compression efficiency is high). ). However, in this case, the expansion process may take a lot of time (the expansion process becomes inefficient). For example, in order to acquire data related to one mail, compressed data including all mails may be expanded. On the other hand, when each mail is compressed individually, the time required for the decompression process is shorter than when all the mails are compressed as one file, but the compression efficiency is lower.

これに対して、一般的に、メールを返信する際には、元のメール(返信されるメール)を引用することが多いという特徴がある。即ち、一連のスレッドに含まれるメールには、共通部分が多く存在すると考えられる。メールデータ管理装置1は、係る特徴を考慮して、スレッド毎に当該スレッドに含まれるメールをまとめて圧縮する。これにより、メールデータ管理装置1は、各メールを個別に圧縮する場合に比して、高い圧縮効率を達成可能である。また、メールデータ管理装置1は、全てのメールを一つのデータとして圧縮する場合に比して、短い時間で展開処理を実行可能である。なぜならば、一般的に、全てのメールを一つにまとめた圧縮データのサイズよりも、スレッド毎に当該スレッドに含まれるメールを圧縮したデータのサイズの方が小さく、含まれるメールの数も少ないからである。また、一般的に、スレッド毎にメールを操作する(例えば、スレッド毎にメールを参照する、等)こともよくあることから、メールデータ管理装置1は、そのようなリクエストに効率よく応答することが可能である。 On the other hand, in general, when replying to an email, the original email (replied email) is often quoted. That is, it is considered that the mails included in the series of threads have many common parts. The mail data management device 1 collectively compresses the mail included in the thread for each thread in consideration of the characteristics. As a result, the mail data management device 1 can achieve high compression efficiency as compared with the case where each mail is individually compressed. Further, the mail data management device 1 can execute the decompression process in a shorter time than when all the mails are compressed as one data. This is because, in general, the size of the compressed data of the mail contained in the thread is smaller than the size of the compressed data of all the mails in one thread, and the number of mails contained is also smaller. Because. In addition, since it is common to operate mail for each thread (for example, refer to mail for each thread) in general, the mail data management device 1 efficiently responds to such a request. Is possible.

[変形例]
以下、メールデータ管理装置1の変形例について説明する。本変形例におけるメールデータ管理装置1の構成は、上記第1の実施形態と同様としてよい。
[Modification example]
Hereinafter, a modified example of the mail data management device 1 will be described. The configuration of the mail data management device 1 in this modification may be the same as that of the first embodiment.

本変形例においては、展開部109、メールデータ結合部110、及び、応答部112の一部の動作が、上記第1の実施形態とは相違する。以下、係る相違点について説明する。 In this modification, the operations of a part of the expansion unit 109, the mail data combination unit 110, and the response unit 112 are different from those of the first embodiment. The differences will be described below.

本変形例における応答部112は、メールクライアント3からのリクエストに応じて圧縮部分データを含むメール本文のデータを提供する場合、まず、取得部111を介して取得された無圧縮部分データをメールクライアント3に提供する。応答部112は、展開処理を実行することなく無圧縮部分データを提供可能であることから、本変形例におけるメールデータ管理装置1は、例えば、メールクライアント3に対するレスポンスタイムを維持することが可能である。 When the response unit 112 in this modification provides the data of the mail body including the compressed partial data in response to the request from the mail client 3, first, the uncompressed partial data acquired through the acquisition unit 111 is used as the mail client. Provided to 3. Since the response unit 112 can provide the uncompressed partial data without executing the decompression process, the mail data management device 1 in this modification can maintain, for example, the response time to the mail client 3. is there.

また、本変形例における展開部109及びメールデータ結合部110は、例えば、応答部112における無圧縮部分データの提供と並行して、圧縮部分データの展開及び結合に関する処理を実行する。即ち、本変形例におけるメールデータ管理装置1は、無圧縮部分データの提供と、圧縮部分データを含むメールデータ全体の復元とを並行して実行することができる。これにより、本変形例におけるメールデータ管理装置1は、メールクライアント3に対するメールデータ全体の提供まで含めたターンアラウンドタイムの低下を抑制可能である。 Further, the decompression unit 109 and the mail data combination unit 110 in this modification execute, for example, a process related to the expansion and combination of the compressed portion data in parallel with the provision of the uncompressed portion data in the response unit 112. That is, the mail data management device 1 in this modification can execute the provision of the uncompressed partial data and the restoration of the entire mail data including the compressed partial data in parallel. As a result, the mail data management device 1 in this modification can suppress a decrease in the turnaround time including the provision of the entire mail data to the mail client 3.

<第2の実施形態>
以下、本開示に係る技術の第2の実施形態について、図面を参照して説明する。
<Second embodiment>
Hereinafter, a second embodiment of the technique according to the present disclosure will be described with reference to the drawings.

[構成]
図7に例示するように、本実施形態におけるメールデータ管理装置7は、上記メールデータ管理装置1におけるメールデータ分解部105の代わりに、差分確認部701を有する。メールデータ管理装置7は、上記メールデータ管理装置1における圧縮部106の代わりに、差分管理部702を有する。メールデータ管理装置7は、上記メールデータ管理装置1におけるメールデータ結合部110の代わりに、差分結合部703を有する。以下、第1の実施形態におけるメールデータ管理装置1との差分について説明する。
[Constitution]
As illustrated in FIG. 7, the mail data management device 7 in the present embodiment has a difference confirmation unit 701 instead of the mail data decomposition unit 105 in the mail data management device 1. The mail data management device 7 has a difference management unit 702 instead of the compression unit 106 in the mail data management device 1. The mail data management device 7 has a difference coupling unit 703 instead of the mail data combining unit 110 in the mail data management device 1. Hereinafter, the difference from the mail data management device 1 in the first embodiment will be described.

差分確認部701は、同一のスレッドに含まれる1以上のメールについて、共通する部分(共通部分)と、異なる部分(差分部分)とを確認(特定)する。差分確認部701は、例えば、同一のスレッドに含まれる全てのメールについて、メール本体部分において共通する部分を、共通部分として特定してもよい。この場合、差分部分には、メールヘッダ部分と、メール本体部分における共通部分以外の部分とが含まれ得る。以下、同一のスレッドに含まれる1以上のメールにおける共通部分のデータを、共通部分データと記載することがある。また、共通部分データ以外のデータを、差分部分データと記載することがある。 The difference confirmation unit 701 confirms (identifies) a common part (common part) and a different part (difference part) for one or more emails included in the same thread. For example, the difference confirmation unit 701 may specify a common part in the mail body part as a common part for all the mails included in the same thread. In this case, the difference portion may include a mail header part and a part other than the common part in the mail body part. Hereinafter, the data of the common part in one or more mails included in the same thread may be described as the common part data. In addition, data other than common partial data may be described as difference partial data.

差分管理部702は、差分確認部701により確認された差分部分と共通部分の関係を管理する。具体的には、差分管理部702は、例えば、スレッド毎に、スレッドに含まれる各メールの共通部分を用いてスレッドデータを生成してもよい。また、差分管理部702は、受信したメールのデータから共通部分データを取り除くことで、差分部分データを生成してもよい。差分管理部702は、また、各メールについて、共通部分が含まれる位置(各メールのデータにおいて、共通部分が配置される位置)を特定可能な情報(配置情報)を管理してもよい。係る配置情報は、例えば、メールを特定可能なuidと、当該メールが含まれるスレッドのThread−Idと、当該メールにおいて共通部分が配置される1以上の場所を特定可能な情報(例えば、メールボディ部分における先頭からのオフセット等)と、を含んでもよい。 The difference management unit 702 manages the relationship between the difference portion and the common portion confirmed by the difference confirmation unit 701. Specifically, the difference management unit 702 may generate thread data for each thread using the common portion of each mail included in the thread, for example. Further, the difference management unit 702 may generate the difference partial data by removing the common partial data from the received mail data. The difference management unit 702 may also manage information (arrangement information) that can specify the position including the common portion (the position where the common portion is arranged in the data of each email) for each email. The arrangement information includes, for example, a uid that can identify an email, a Thread-Id of a thread that includes the email, and information that can identify one or more locations where common parts are arranged in the email (for example, a mail body). Offset from the beginning of the portion, etc.) and may be included.

差分管理部702は、格納部107を介して、各メールに関する差分部分データと、スレッドデータとをメールボックスに個別に格納してもよい。 The difference management unit 702 may individually store the difference partial data and the thread data for each mail in the mailbox via the storage unit 107.

差分結合部703は、差分管理部702を参照し、差分部分と共通部分を結合することで、元のメールデータを復元する。 The difference coupling unit 703 restores the original mail data by referring to the difference management unit 702 and combining the difference portion and the common portion.

図7における他の構成要素は、上記第1の実施形態と同様としてよい。 The other components in FIG. 7 may be the same as those in the first embodiment.

[動作]
図8及び図9に例示するフローチャートを参照して、メールデータ管理装置7の動作について説明する。図8は、メールデータ管理装置1が、メールサーバ2からメールを受信し、メールボックス108に格納する動作を例示するフローチャートである。
[motion]
The operation of the mail data management device 7 will be described with reference to the flowcharts illustrated in FIGS. 8 and 9. FIG. 8 is a flowchart illustrating an operation in which the mail data management device 1 receives mail from the mail server 2 and stores the mail in the mailbox 108.

図8におけるステップS201乃至ステップS204並びにステップS207は、上記第1の実施形態において説明した図2に例示するステップS201乃至ステップS204並びにステップS207とそれぞれ同様としてよい。 Steps S201 to S204 and step S207 in FIG. 8 may be the same as steps S201 to S204 and step S207 illustrated in FIG. 2 described in the first embodiment.

メールデータ管理装置7(差分確認部701)は、受信したメールと、当該メールと同一のスレッドに含まれる他のメールとの共通部分及び差分部分を確認(特定)する(ステップS801)。 The mail data management device 7 (difference confirmation unit 701) confirms (identifies) the common part and the difference part between the received mail and other mail included in the same thread as the mail (step S801).

メールデータ管理装置7(差分確認部701)は、例えば、以下のような方法により上記共通部分及び差分部分を特定してもよい。係る方法の一つとして、メールデータ管理装置7は、例えば、スレッドデータに含まれる共通部分データが、受信したメールに含まれるか否かを確認してもよい。受信したメールが、スレッドデータと同じデータを含む場合、そのデータが共通部分として特定され、それ以外のデータが差分部分として特定される。他の方法として、メールデータ管理装置7は、例えば、受信したメールと、当該メールと同一のスレッドに含まれる他の全てのメールとの間の共通部分及び差分部分を確認してもよい。この場合、メールデータ管理装置7は、例えば、受信したメールと同じスレッドに含まれる他のメールを一度全て復元し、復元された各メールと、受信したメールとの間の共通部分及び差分部分を特定してもよい。上記に限定されず、メールデータ管理装置7は、他の適切な方法を用いて、受信したメールと、当該メールと同一のスレッドに含まれる他のメールとの共通部分及び差分部分を確認してよい。 The mail data management device 7 (difference confirmation unit 701) may specify the common portion and the difference portion by, for example, the following method. As one of such methods, the mail data management device 7 may check, for example, whether or not the common partial data included in the thread data is included in the received mail. When the received mail contains the same data as the thread data, that data is specified as a common part, and the other data is specified as a difference part. As another method, the mail data management device 7 may check, for example, the common part and the difference part between the received mail and all the other mails included in the same thread as the mail. In this case, the mail data management device 7 restores all the other mails included in the same thread as the received mail once, and restores the common part and the difference part between each restored mail and the received mail. You may specify. Not limited to the above, the mail data management device 7 uses another appropriate method to check the common part and the difference part between the received mail and other mail included in the same thread as the mail. Good.

なお、受信したメールが新たなスレッドの起点である場合(ステップS203においてNO)、ステップS801において、差分確認部701は、当該メールの一部(典型的には、例えば、メール本体部分)を共通部分として適宜特定し、残りの部分を差分部分として特定してもよい。 When the received mail is the starting point of a new thread (NO in step S203), in step S801, the difference confirmation unit 701 shares a part of the mail (typically, for example, the mail body part). It may be specified as a part as appropriate, and the remaining part may be specified as a difference part.

差分確認部701は、確認した差分部分及び共通部分を、差分管理部702に提供してもよい。 The difference confirmation unit 701 may provide the confirmed difference portion and the common portion to the difference management unit 702.

メールデータ管理装置7(差分管理部702)は、ステップS801において確認された共通部分を含むスレッドデータを生成してよい(ステップS802)。また、差分管理部702は、当該スレッドに含まれるメールのデータから共通部分データ(スレッドデータ)を取り除くことで、当該メールの差分部分データを生成してもよい。ステップS802において作成されるスレッドデータのデータサイズは、スレッドに含まれる全メールのデータサイズの総和よりも小さい。なぜならば、差分管理部702により各メールに共通に含まれる重複部分が取り除かれることで、データサイズが低減されるからである。例えば、メールA、メールB、メールCに共通部分Dが含まれる場合、スレッドデータには共通部分Dが一つだけ含まれればよい。スレッドデータを用いて共通部分Dの重複を排除することで、メールデータ管理装置7は、メールボックス108に保存されるデータのサイズを低減可能である。 The mail data management device 7 (difference management unit 702) may generate thread data including the common portion confirmed in step S801 (step S802). Further, the difference management unit 702 may generate the difference partial data of the mail by removing the common partial data (thread data) from the data of the mail included in the thread. The data size of the thread data created in step S802 is smaller than the sum of the data sizes of all the mails included in the thread. This is because the data size is reduced by removing the duplicated portion commonly included in each mail by the difference management unit 702. For example, when the mail A, the mail B, and the mail C include the common part D, the thread data need only include one common part D. By eliminating duplication of the common portion D by using thread data, the mail data management device 7 can reduce the size of the data stored in the mailbox 108.

なお、差分管理部702は、ステップS801において確認された共通部分及び差分部分に基づいて、各メールについて共通部分が含まれる位置を特定可能な配置情報を更新してもよい。 Note that the difference management unit 702 may update the arrangement information that can specify the position including the common part for each mail based on the common part and the difference part confirmed in step S801.

以下、メールデータ管理装置7が、メールクライアント3からのリクエストに応じて、メールクライアント3にレスポンスを返す処理について、図9に例示するフローチャートを参照して説明する。 Hereinafter, a process in which the mail data management device 7 returns a response to the mail client 3 in response to a request from the mail client 3 will be described with reference to the flowchart illustrated in FIG.

図9におけるステップS301、ステップS302及びステップS309は、上記第1の実施形態において説明した図3に例示するステップS301、ステップS302及びステップS309とそれぞれ同様としてよい。 Step S301, step S302, and step S309 in FIG. 9 may be the same as steps S301, S302, and S309 exemplified in FIG. 3 described in the first embodiment.

受信したリクエストが、メールのヘッダ部分を取得するリクエストである場合(ステップS302において[メールヘッダのみ])、メールデータ管理装置7(取得部111)は、メールボックス108から、当該メールに関する差分部分データを取得する(ステップS901)。 When the received request is a request for acquiring the header part of the mail ([mail header only] in step S302), the mail data management device 7 (acquisition unit 111) receives the difference partial data related to the mail from the mailbox 108. (Step S901).

受信したリクエストが、メール全体を取得するリクエストである場合(ステップS302において[メールデータ全体])、メールデータ管理装置7(取得部111)は、リクエストされたメールの差分部分データと、指定されたメールが含まれるスレッドのスレッドデータとを取得する(ステップS901)。係るスレッドデータには、リクエストされたメールに関する共通部分データが含まれる。 When the received request is a request for acquiring the entire mail ([whole mail data] in step S302), the mail data management device 7 (acquisition unit 111) is designated as the difference partial data of the requested mail. The thread data of the thread including the mail is acquired (step S901). Such thread data includes intersection data related to the requested mail.

メールデータ管理装置7(差分結合部703)は、ステップS902において取得して共通部分データと、差分部分データとから、元のメールを復元する(ステップS903)。差分結合部703は、例えば、差分管理部702が管理する配置情報を参照し、差分部分データと、共通部分データとを結合することで、元のメールを復元してもよい。具体的には、差分管理部702は、例えば、配置情報に示された共通部分データにおける特定の箇所に差分部分データを配置することで、元のメールを復元することができる。 The mail data management device 7 (difference joining unit 703) restores the original mail from the common partial data and the difference partial data acquired in step S902 (step S903). The difference combining unit 703 may restore the original mail by, for example, referring to the arrangement information managed by the difference management unit 702 and combining the difference portion data and the common portion data. Specifically, the difference management unit 702 can restore the original mail by arranging the difference partial data at a specific place in the common partial data shown in the arrangement information, for example.

上記のように構成されたメールデータ管理装置7は、メールをスレッド毎に管理し、各メールの共通部分と差分部分を管理することで、メールの保存に要する記憶容量を削減することができる。その理由は、メールデータ管理装置7が、同一スレッドに含まれる各メールを共通部分と差分部分とに分解し、共通部分はスレッドデータとして格納するとともに、各メールについては差分部分のみを格納するからである。これにより、メールデータ管理装置7は、同一スレッドに含まれる各メールから、重複部分を取り除くことが可能である。重複部分(共通部分)が取り除かれることにより、メールボックス108に格納される各メールの容量(データサイズ)は低減される。換言すると、メールデータ管理装置7は、同一スレッドに含まれる各メールについて、重複部分を取り除いた最低限のサイズのデータ(差分部分のデータ)を、メールボックス108に格納することができる。これにより、メールデータ管理装置7は、メールデータの記憶に要する記憶容量を低減することが可能である。 The mail data management device 7 configured as described above can reduce the storage capacity required for storing mails by managing mails for each thread and managing common parts and difference parts of each mail. The reason is that the mail data management device 7 decomposes each mail included in the same thread into a common part and a difference part, stores the common part as thread data, and stores only the difference part for each mail. Is. As a result, the mail data management device 7 can remove the duplicated portion from each mail included in the same thread. By removing the duplicated portion (common portion), the capacity (data size) of each mail stored in the mailbox 108 is reduced. In other words, the mail data management device 7 can store in the mailbox 108 the minimum size data (difference portion data) from which the duplicated portion is removed for each mail included in the same thread. As a result, the mail data management device 7 can reduce the storage capacity required for storing the mail data.

また、上記第1の実施形態と同様、メールデータ管理装置7は、例えば、各メールのメールヘッダを、差分部分データとして個別に格納することができる。よって、メールデータ管理装置7は、共通部分データと差分データとの結合処理を行うことなく、一覧表示や、要約表示等に必要なデータをメールクライアント3に提供可能である。このため、メールデータ管理装置7は、メールデータ全体が分割されていない場合と同等の応答性能(レスポンスタイム)を維持可能である。以上より、メールデータ管理装置7は、メールデータの読み出し性能の低下を抑えることが可能である。 Further, as in the first embodiment, the mail data management device 7 can individually store, for example, the mail header of each mail as the difference partial data. Therefore, the mail data management device 7 can provide the mail client 3 with the data necessary for the list display, the summary display, and the like without performing the combination processing of the common partial data and the difference data. Therefore, the mail data management device 7 can maintain the same response performance (response time) as when the entire mail data is not divided. From the above, the mail data management device 7 can suppress the deterioration of the reading performance of the mail data.

[変形例]
以下、メールデータ管理装置7の変形例について説明する。本変形例におけるメールデータ管理装置7の構成は、上記第2の実施形態と同様としてよい。
[Modification example]
Hereinafter, a modified example of the mail data management device 7 will be described. The configuration of the mail data management device 7 in this modification may be the same as that of the second embodiment.

本変形例においては、差分管理部702及び差分結合部703の一部の動作が、上記第2の実施形態とは相違する。以下、係る相違点について説明する。 In this modification, some operations of the difference management unit 702 and the difference coupling unit 703 are different from those of the second embodiment. The differences will be described below.

本変形例における差分管理部702は、スレッド毎のスレッドデータを圧縮する。本変形例における差分管理部702は、格納部107を介して、圧縮したスレッドデータをメールボックス108に格納する。なお、具体的な圧縮アルゴリズムは適宜選択されてよい。 The difference management unit 702 in this modification compresses the thread data for each thread. The difference management unit 702 in this modification stores the compressed thread data in the mailbox 108 via the storage unit 107. A specific compression algorithm may be appropriately selected.

本変形例における差分結合部703は、取得部111を介してメールボックス108から、圧縮されたスレッドデータを取得し、当該スレッドデータを展開する。 The difference coupling unit 703 in this modification acquires the compressed thread data from the mailbox 108 via the acquisition unit 111, and expands the thread data.

本変形例によれば、メールデータ管理装置7は、各スレッドのスレッドデータを圧縮することから、メールボックス108に格納されるメールに関するデータのサイズを更に低減可能である。 According to this modification, since the mail data management device 7 compresses the thread data of each thread, the size of the data related to the mail stored in the mailbox 108 can be further reduced.

<第3の実施形態>
以下、本開示の第3の実施形態について説明する。第3の実施形態は、上記各実施形態に共通する基本的な実施形態である。
<Third embodiment>
Hereinafter, a third embodiment of the present disclosure will be described. The third embodiment is a basic embodiment common to each of the above embodiments.

図10Aに例示するように、本実施形態におけるメールデータ管理装置10は、メールデータ保存部1001と、スレッド判定部1002と、メールデータ分解部1003と、データサイズ調整部1004と、を含む。メールデータ管理装置10を構成するこれらの構成要素の間は、適切な通信方法を用いて通信可能に接続されていてよい。以下、それぞれの構成要素について説明する。 As illustrated in FIG. 10A, the mail data management device 10 in the present embodiment includes a mail data storage unit 1001, a thread determination unit 1002, a mail data decomposition unit 1003, and a data size adjustment unit 1004. These components constituting the mail data management device 10 may be communicably connected by using an appropriate communication method. Hereinafter, each component will be described.

メールデータ保存部1001は、メールに関するデータを記憶可能に構成される。メールデータ保存部1001は、後述するように、例えば、各メールが含まれるスレッドに関するデータを記憶してもよい。メールデータ保存部1001は、スレッドに関するデータとは別に、メール毎に個別のデータを記憶してもよい。上記各実施形態におけるメールボックス108は、メールデータ保存部1001の一つの実現例であると考えられる。メールデータ保存部1001は、例えば、上記各実施形態におけるメールボックス108と同様の構成を有してもよく、同様の処理を実行可能であってもよい。 The mail data storage unit 1001 is configured to be able to store data related to mail. As will be described later, the mail data storage unit 1001 may store data related to threads including each mail, for example. The mail data storage unit 1001 may store individual data for each mail in addition to the data related to the thread. The mailbox 108 in each of the above embodiments is considered to be an embodiment of the mail data storage unit 1001. The mail data storage unit 1001 may have the same configuration as the mailbox 108 in each of the above embodiments, and may be capable of executing the same processing.

スレッド判定部1002は、1以上のメールが同一のスレッドに含まれるか否かを判定するよう構成される。スレッド判定部1002は、例えば、各メールのメールヘッダに設定されたデータ(例えば、”Message−Id”、”In−Reply−To”等)を参照して、各メールが同一のスレッドに含まれるか否かを判定してもよい。上記各実施形態におけるスレッド判定部1002は、例えば、スレッド判定部102の一つの実現例であると考えられる。スレッド判定部1002は、上記各実施形態におけるスレッド判定部102と同様の構成を有してもよく、同様の処理を実行可能であってもよい。 The thread determination unit 1002 is configured to determine whether or not one or more emails are included in the same thread. The thread determination unit 1002 refers to, for example, the data set in the mail header of each mail (for example, "Message-Id", "In-Reply-To", etc.), and each mail is included in the same thread. It may be determined whether or not. The thread determination unit 1002 in each of the above embodiments is considered to be, for example, one implementation example of the thread determination unit 102. The thread determination unit 1002 may have the same configuration as the thread determination unit 102 in each of the above embodiments, and may be capable of executing the same processing.

メールデータ分解部1003は、メールを構成するメールデータを、第1の部分データと、第2の部分データとに分解する。第1の部分データは、例えば、当該メールが含まれるスレッドに関連付けされたデータである、スレッドデータに含まれるデータである。係るスレッドデータは、例えば、スレッド毎に個別にメールデータ保存部1001に記憶されてもよい。第2の部分データは、例えば、メール毎に個別のデータであり、メール毎に個別にメールデータ保存部1001に記憶されてもよい。 The mail data decomposition unit 1003 decomposes the mail data constituting the mail into the first partial data and the second partial data. The first partial data is, for example, data included in thread data, which is data associated with the thread containing the mail. The thread data may be stored in the mail data storage unit 1001 individually for each thread, for example. The second partial data is, for example, individual data for each e-mail, and may be individually stored in the e-mail data storage unit 1001 for each e-mail.

上記第1の実施形態における圧縮部分データ及び第2の実施形態における共通部分データは、いずれも第1の部分データの一例であると考えられる。また、上記第1の実施形態における無圧縮部分データ及び第2の実施形態における差分部分データは、いずれも第2の部分データの一例であると考えられる。 The compressed partial data in the first embodiment and the common partial data in the second embodiment are both considered to be examples of the first partial data. Further, the uncompressed partial data in the first embodiment and the difference partial data in the second embodiment are both considered to be examples of the second partial data.

上記第1の実施形態におけるメールデータ分解部105は、メールデータ分解部1003の一例であると考えられる。メールデータ分解部1003は、例えば、上記第1の実施形態におけるメールデータ分解部105と同様の構成を有してもよく、同様の処理を実行可能であってもよい。同様に、上記第2の実施形態における差分確認部701及び差分管理部702は、メールデータ分解部1003の一例であると考えられる。メールデータ分解部1003は、例えば、上記第2の実施形態における差分確認部701及び差分管理部702と同様の構成を有してもよく、同様の処理を実行可能であってもよい。 The mail data decomposition unit 105 in the first embodiment is considered to be an example of the mail data decomposition unit 1003. The mail data decomposition unit 1003 may have the same configuration as the mail data decomposition unit 105 in the first embodiment, and may be capable of executing the same processing. Similarly, the difference confirmation unit 701 and the difference management unit 702 in the second embodiment are considered to be examples of the mail data decomposition unit 1003. The mail data decomposition unit 1003 may have the same configuration as the difference confirmation unit 701 and the difference management unit 702 in the second embodiment, and may be capable of executing the same processing.

データサイズ調整部1004は、スレッド毎に、当該スレッドに含まれるメールに関する第1の部分データの少なくとも一部に基づいて、少なくとも当該スレッドに含まれるメールのデータサイズの総和よりも小さいデータサイズのスレッドデータを作成するよう構成される。 The data size adjusting unit 1004 is a thread having a data size smaller than the sum of the data sizes of the mails included in the thread, based on at least a part of the first partial data related to the mails contained in the thread. Configured to create data.

データサイズ調整部1004は、例えば、スレッド毎に、当該スレッドに含まれる各メールに関する第1の部分データを圧縮することで、スレッドデータを作成してもよい。これにより、当該スレッドに含まれる各メールに関する第1の部分データのサイズが低減される。よって、データサイズ調整部1004は、当該スレッドに含まれる各メールのデータサイズの総和よりも小さいデータサイズのスレッドデータを作成することができる。 The data size adjusting unit 1004 may create thread data for each thread, for example, by compressing the first partial data regarding each mail included in the thread. This reduces the size of the first partial data for each email contained in the thread. Therefore, the data size adjusting unit 1004 can create thread data having a data size smaller than the total data size of each mail included in the thread.

データサイズ調整部1004は、例えば、スレッド毎に、当該スレッドに含まれる各メールに共通する共通部分を第1の部分データとして抽出し、抽出した共通部分を含むスレッドデータを作成してもよい。これにより、データサイズ調整部1004は、当該スレッドに含まれる各メールのデータサイズの総和よりも小さいデータサイズのスレッドデータを作成することができる。また、データサイズ調整部1004は、各メールから、スレッドデータに含まれる共通部分を取り除くことで、メールデータ保存部1001に記憶されるメールのデータサイズを低減可能である。 For example, the data size adjusting unit 1004 may extract a common portion common to each mail included in the thread as the first partial data for each thread, and create thread data including the extracted common portion. As a result, the data size adjusting unit 1004 can create thread data having a data size smaller than the total data size of each mail included in the thread. Further, the data size adjusting unit 1004 can reduce the data size of the mail stored in the mail data storage unit 1001 by removing the common portion included in the thread data from each mail.

上記第1の実施形態における圧縮部106は、データサイズ調整部1004の一例であると考えられる。データサイズ調整部1004は、例えば、上記第1の実施形態における圧縮部106と同様の構成を有してもよく、同様の処理を実行可能であってもよい。 The compression unit 106 in the first embodiment is considered to be an example of the data size adjustment unit 1004. The data size adjusting unit 1004 may have the same configuration as the compression unit 106 in the first embodiment, or may be capable of executing the same processing.

同様に、上記第2の実施形態における差分確認部701及び差分管理部702は、データサイズ調整部1004の一例であると考えられる。データサイズ調整部1004は、例えば、上記第2の実施形態における差分確認部701及び差分管理部702と同様の構成を有してもよく、同様の処理を実行可能であってもよい。 Similarly, the difference confirmation unit 701 and the difference management unit 702 in the second embodiment are considered to be examples of the data size adjustment unit 1004. The data size adjustment unit 1004 may have the same configuration as the difference confirmation unit 701 and the difference management unit 702 in the second embodiment, and may be capable of executing the same processing.

なお、メールデータ管理装置10は、図10Bに例示するように、取得部1005と、メールデータ結合部1006と、応答部1007と、を更に備えてもよい。 The mail data management device 10 may further include an acquisition unit 1005, a mail data combination unit 1006, and a response unit 1007, as illustrated in FIG. 10B.

取得部1005は、あるメールについて、当該メールが含まれるスレッドに関するスレッドデータと、当該メールに関する第2の部分データとの少なくとも一方をメールデータ保存部1001から取得するよう構成される。例えば、上記各実施形態における取得部111は、取得部1005の一つの実現例であると考えられる。取得部1005は、上記各実施形態における取得部111と同様の構成を備えてもよく、同様の処理を実行可能であってもよい。 The acquisition unit 1005 is configured to acquire at least one of the thread data related to the thread including the mail and the second partial data related to the mail from the mail data storage unit 1001 for a certain mail. For example, the acquisition unit 111 in each of the above embodiments is considered to be one realization example of the acquisition unit 1005. The acquisition unit 1005 may have the same configuration as the acquisition unit 111 in each of the above embodiments, and may be capable of executing the same processing.

メールデータ結合部1006は、あるメールについて取得部1005が取得したスレッドデータと、第2の部分データとに基づいて、元のメールを生成(復元)するよう構成される。例えば、あるメールに関する第1の部分データを圧縮したデータがスレッドデータに含まれる場合、メールデータ結合部1006は、当該スレッドデータを展開して第1の部分データを抽出し、抽出した第1の部分データと、第2の部分データとを結合することで、元のメールを復元してもよい。例えば、あるスレッドに含まれる各メールに共通する共通部分がスレッドデータに含まれる場合、メールデータ結合部1006は、当該共通部分と、第2のメールデータとを適切に結合することで、元のメールを復元してもよい。 The mail data combining unit 1006 is configured to generate (restore) the original mail based on the thread data acquired by the acquisition unit 1005 for a certain mail and the second partial data. For example, when the thread data includes data obtained by compressing the first partial data related to a certain mail, the mail data combining unit 1006 expands the thread data, extracts the first partial data, and extracts the first partial data. The original mail may be restored by combining the partial data and the second partial data. For example, when the thread data contains a common part common to each mail included in a certain thread, the mail data combining unit 1006 appropriately joins the common part and the second mail data to obtain the original. You may restore the email.

上記第1の実施形態における展開部109及びメールデータ結合部110は、メールデータ結合部1006の一つの実現例であると考えられる。この場合、メールデータ結合部1006は、上記第1の実施形態における展開部109及びメールデータ結合部110と同様の構成を備えてもよく、同様の処理を実行可能であってもよい。また、上記第2の実施形態における差分管理部702及び差分結合部703は、メールデータ結合部1006の一つの実現例であると考えられる。この場合、メールデータ結合部1006は、上記第2の実施形態における差分管理部702及び差分結合部703と同様の構成を備えてもよく、同様の処理を実行可能であってもよい。 The expansion unit 109 and the mail data combination unit 110 in the first embodiment are considered to be one implementation example of the mail data combination unit 1006. In this case, the mail data combining unit 1006 may have the same configuration as the expanding unit 109 and the mail data combining unit 110 in the first embodiment, or may be capable of executing the same processing. Further, the difference management unit 702 and the difference coupling unit 703 in the second embodiment are considered to be one implementation example of the mail data coupling unit 1006. In this case, the mail data combining unit 1006 may have the same configuration as the difference management unit 702 and the difference combining unit 703 in the second embodiment, and may be capable of executing the same processing.

応答部1007は、例えばメールクライアント等からのリクエストにより指定されたメールの少なくとも一部を提供するよう構成される。具体的には、応答部1007は、リクエストに応じて、取得部1005により取得した第2の部分データの少なくとも一部を提供するか、又は、メールデータ結合部により復元された当該メールに関するメールデータの少なくとも一部(前記第1の部分データを含んでもよい)を提供する。上記各実施形態における応答部112は、応答部1007の一つの実現例であると考えられる。応答部1007は、応答部112と同様の構成を備えてもよく、同様の処理を実行可能であってもよい。 The response unit 1007 is configured to provide at least a part of the mail specified by a request from, for example, a mail client or the like. Specifically, the response unit 1007 provides at least a part of the second partial data acquired by the acquisition unit 1005 in response to the request, or the mail data related to the mail restored by the mail data combination unit. At least a portion of the above (which may include the first partial data) is provided. The response unit 112 in each of the above embodiments is considered to be an embodiment of the response unit 1007. The response unit 1007 may have the same configuration as the response unit 112, and may be capable of executing the same processing.

上記のように構成されたメールデータ管理装置10は、メールデータの記憶に要する記憶容量を低減しつつ、メールデータの読み出し性能の低下を抑えることが可能である。 The mail data management device 10 configured as described above can reduce the storage capacity required for storing the mail data and suppress the deterioration of the reading performance of the mail data.

その理由は、以下の通りである。メールデータ管理装置10は、メールを第1の部分データ及び第2の部分データに分割する。また、メールデータ管理装置10は、当該メールが含まれるスレッド毎に、第1の部分データに基づいて、当該スレッドに含まれるメールのデータサイズの総和よりもデータサイズが小さいスレッドデータを作成する。これにより、メールデータ管理装置10は、メールデータ保存部1001に記憶されるメールのデータサイズを、スレッド毎に低減することが可能である。即ち、メールデータ管理装置10は、メールデータの記憶に要する記憶容量を低減可能である。 The reason is as follows. The mail data management device 10 divides the mail into a first partial data and a second partial data. Further, the mail data management device 10 creates thread data whose data size is smaller than the total data size of the mail included in the thread, based on the first partial data, for each thread including the mail. As a result, the mail data management device 10 can reduce the data size of the mail stored in the mail data storage unit 1001 for each thread. That is, the mail data management device 10 can reduce the storage capacity required for storing the mail data.

また、各メールに関する第1の部分データは、当該メールが含まれるスレッドに関するスレッドデータとして、スレッド毎にメールデータ保存部に記憶される。一方、各メールに関する第2の部分データは、メール毎に個別にメールデータ保存部に記録される。メールデータ管理装置10は、例えば、当該メールが含まれるスレッドのスレッドデータから第1の部分データを抽出し、当該メールに関する第2の部分データと結合することで、あるメールに関するメールデータ全体を復元する。これより、例えば、メールクライアントからのリクエストに応じて比較的頻繁に読み出される部分(例えばヘッダ部分等)を第2の部分データとして分解することで、メールデータ管理装置10は、第2の部分データのみを用いてリクエストに応答可能である。即ち、メールデータ管理装置10は、メールデータ全体を復元することなくリクエストに素早く対応可能であることから、メールデータの読み出し性能の低下を抑えることが可能である。 In addition, the first partial data for each mail is stored in the mail data storage unit for each thread as thread data for the thread including the mail. On the other hand, the second partial data for each mail is individually recorded in the mail data storage unit for each mail. The mail data management device 10 restores the entire mail data related to a certain mail by, for example, extracting the first partial data from the thread data of the thread including the mail and combining it with the second partial data related to the mail. To do. From this, for example, by decomposing the portion (for example, the header portion) that is read relatively frequently in response to the request from the mail client as the second partial data, the mail data management device 10 can use the second partial data. It is possible to respond to the request using only. That is, since the mail data management device 10 can quickly respond to the request without restoring the entire mail data, it is possible to suppress the deterioration of the reading performance of the mail data.

<ハードウェア及びソフトウェア・プログラム(コンピュータ・プログラム)の構成>
以下、上記説明した各実施形態を実現可能なハードウェア構成について説明する。
<Structure of hardware and software programs (computer programs)>
Hereinafter, a hardware configuration capable of realizing each of the above-described embodiments will be described.

以下の説明においては、上記各実施形態において説明したメールデータ管理装置(1、7、10)をまとめて、単に「メールデータ管理装置」と記載する。また、これらメールデータ管理装置の各構成要素を、単に「メールデータ管理装置の構成要素」と記載する場合がある。 In the following description, the mail data management devices (1, 7, 10) described in each of the above embodiments are collectively referred to as "mail data management device". In addition, each component of these mail data management devices may be simply described as "components of the mail data management device".

上記各実施形態において説明したメールデータ管理装置は、1つ又は複数の専用のハードウェア装置により構成されてもよい。その場合、上記各図(図1、図7、図10A、図10B)に示した各構成要素は、その一部又は全部を統合したハードウェア(処理ロジックを実装した集積回路あるいは記憶デバイス等を用いて構成されたアプライアンス等)を用いて実現されてもよい。 The mail data management device described in each of the above embodiments may be configured by one or a plurality of dedicated hardware devices. In that case, each component shown in each of the above figures (FIGS. 1, 7, 10A, 10B) includes hardware (integrated circuit or storage device on which processing logic is implemented) in which a part or all of them are integrated. It may be realized by using an appliance, etc. configured in use.

メールデータ管理装置が専用のハードウェアにより実現される場合、係るメールデータ管理装置の構成要素は、例えば、それぞれの機能を提供可能な回路構成(circuitry)により実現されてもよい。係る回路構成は、例えば、SoC(System on a Chip)等の集積回路や、当該集積回路を用いて実現されたチップセット等を含む。この場合、メールデータ管理装置の構成要素が保持するデータは、例えば、SoCとして統合されたRAM(Random Access Memory)領域やフラッシュメモリ領域、あるいは、当該SoCに接続された記憶デバイス(半導体記憶装置等)に記憶されてもよい。また、この場合、メールデータ管理装置の各構成要素を接続する通信回線としては、周知の通信バス等を採用してもよい。また、各構成要素を接続する通信回線は、それぞれの構成要素間をピアツーピアで接続してもよい。 When the mail data management device is realized by dedicated hardware, the components of the mail data management device may be realized by, for example, a circuit configuration capable of providing each function. Such a circuit configuration includes, for example, an integrated circuit such as a SoC (System on a Chip), a chipset realized by using the integrated circuit, and the like. In this case, the data held by the components of the mail data management device is, for example, a RAM (Random Access Memory) area integrated as a SoC, a flash memory area, or a storage device (semiconductor storage device, etc.) connected to the SoC. ) May be stored. Further, in this case, a well-known communication bus or the like may be adopted as the communication line for connecting each component of the mail data management device. Further, the communication line connecting each component may be connected peer-to-peer between each component.

また、上述したメールデータ管理装置は、図11に例示するような汎用のハードウェア装置1100(例えばコンピュータ等)と、係るハードウェア装置1100によって実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、メールデータ管理装置は、1台以上の適切な数の汎用のハードウェア装置1100と、ソフトウェア・プログラムとの組合せにより構成されてもよい。 Further, the above-mentioned mail data management device is composed of a general-purpose hardware device 1100 (for example, a computer or the like) as illustrated in FIG. 11 and various software programs (computer programs) executed by the hardware device 1100. It may be configured. In this case, the mail data management device may be composed of a combination of one or more appropriate number of general-purpose hardware devices 1100 and a software program.

図11における演算装置1101は、CPU(中央処理装置:Central Processing Unit)やマイクロプロセッサ等の演算処理装置である。演算装置1101は、例えば後述する不揮発性記憶装置1103に記憶された各種ソフトウェア・プログラムをメモリ1102に読み出し、係るソフトウェア・プログラムに従って処理を実行してもよい。例えば、上記各実施形態におけるメールデータ管理装置の各構成要素の機能は、演算装置1101により実行されるソフトウェア・プログラムを用いて実現されてもよい。 The arithmetic unit 1101 in FIG. 11 is an arithmetic processing unit such as a CPU (Central Processing Unit: Central Processing Unit) or a microprocessor. The arithmetic device 1101 may read various software programs stored in the non-volatile storage device 1103, which will be described later, into the memory 1102 and execute processing according to the software programs. For example, the function of each component of the mail data management device in each of the above embodiments may be realized by using a software program executed by the arithmetic unit 1101.

メモリ1102は、演算装置1101から参照可能な、RAM等のメモリデバイスであり、ソフトウェア・プログラムや各種データ等を記憶する。なお、メモリ1102は、揮発性のメモリであってもよい。 The memory 1102 is a memory device such as a RAM that can be referred to by the arithmetic unit 1101, and stores software programs, various data, and the like. The memory 1102 may be a volatile memory.

不揮発性記憶装置1103は、例えば磁気ディスクドライブや、フラッシュメモリによる半導体記憶装置等の、不揮発性の記憶装置(ストレージデバイス)である。不揮発性記憶装置1103は、各種ソフトウェア・プログラムやデータ等を記憶可能である。例えば、メールデータ管理装置の各構成要素を実現可能なプログラムは、不揮発性記憶装置1103に記憶されてもよい。例えば、上記各実施形態におけるメールボックス108及びメールデータ保存部1001は、不揮発性記憶装置1103にメールのデータを記憶(ストア)してもよい。 The non-volatile storage device 1103 is a non-volatile storage device (storage device) such as a magnetic disk drive or a semiconductor storage device using a flash memory. The non-volatile storage device 1103 can store various software programs, data, and the like. For example, a program capable of realizing each component of the mail data management device may be stored in the non-volatile storage device 1103. For example, the mailbox 108 and the mail data storage unit 1001 in each of the above embodiments may store mail data in the non-volatile storage device 1103.

ドライブ装置1104は、例えば、後述する記録媒体1105に対するデータの読み込みや書き込みを処理する装置である。 The drive device 1104 is, for example, a device that processes data reading and writing to the recording medium 1105, which will be described later.

記録媒体1105は、例えば光ディスク、光磁気ディスク、半導体フラッシュメモリ等、データを記録可能な任意の記録媒体である。例えば、メールデータ管理装置の各構成要素を実現可能なプログラムは、記録媒体1105に記録されていてもよい。 The recording medium 1105 is any recording medium capable of recording data, such as an optical disk, a magneto-optical disk, and a semiconductor flash memory. For example, a program capable of realizing each component of the mail data management device may be recorded on the recording medium 1105.

ネットワークインタフェース1106は、通信ネットワークとの間の通信データの送受信を制御する装置である。ネットワークインタフェース1106は、例えば、1以上の通信ポートを備え、係る通信ポートを介して、通信ネットワークとの間で通信データを送受信してもよい。例えば、上記説明したメールデータ管理装置は、メールサーバ2及びメールクライアント3と、ネットワークインタフェース1106を介して接続された通信ネットワークにより接続されてもよい。 The network interface 1106 is a device that controls the transmission and reception of communication data to and from the communication network. The network interface 1106 may include, for example, one or more communication ports, and may send and receive communication data to and from the communication network via the communication ports. For example, the mail data management device described above may be connected to the mail server 2 and the mail client 3 by a communication network connected via the network interface 1106.

図11に例示するハードウェア装置1100の各構成要素は、例えば、適切な通信方法(通信バス等)を用いて、相互に通信可能に接続されていてもよい。 Each component of the hardware apparatus 1100 illustrated in FIG. 11 may be connected to each other so as to be able to communicate with each other by using, for example, an appropriate communication method (communication bus or the like).

上述した各実施形態を例に説明した本開示におけるメールデータ管理装置、あるいはその構成要素は、例えば、図11に例示するハードウェア装置1100に対して、上記各実施形態において説明した機能を実現可能なソフトウェア・プログラムを供給することにより、実現されてもよい。 The mail data management device or its component in the present disclosure described by taking each of the above-described embodiments as an example can realize the functions described in the above-described embodiments with respect to the hardware device 1100 illustrated in FIG. 11, for example. It may be realized by supplying various software programs.

より具体的には、例えば、係るハードウェア装置1100に対して供給したソフトウェア・プログラムを、演算装置1101が実行することによって、本開示に関する技術が実現されてもよい。この場合、係るハードウェア装置1100で稼働しているオペレーティングシステムや、データベース管理ソフト、ネットワークソフト、仮想環境基盤等のミドルウェアなどが各処理の一部を実行してもよい。 More specifically, for example, the technique according to the present disclosure may be realized by the arithmetic unit 1101 executing the software program supplied to the hardware device 1100. In this case, the operating system running on the hardware device 1100, the database management software, the network software, the middleware such as the virtual environment infrastructure, and the like may execute a part of each process.

上述した各実施形態において、上記各図に示した各部は、上述したハードウェアにより実行されるソフトウェア・プログラムの機能(処理)単位である、ソフトウェアモジュールとして実現することができる。ただし、これらの図面に示した各ソフトウェアモジュールの区分けは、説明の便宜上の構成であり、実装に際しては、様々な構成が想定され得る。図1、図7、図10A及び図10Bの各図に例示したメールデータ管理装置の各構成要素をソフトウェアモジュールとして実現する場合、例えば、これらのソフトウェアモジュールが不揮発性記憶装置1103に記憶されてもよい。そして、演算装置1101がそれぞれの処理を実行する際に、これらのソフトウェアモジュールをメモリ1102に読み出してもよい。また、これらのソフトウェアモジュールは、共有メモリやプロセス間通信等の適宜の方法により、相互に各種データを伝達できるように構成されてもよい。このような構成により、これらのソフトウェアモジュールは、相互に通信可能に接続される。 In each of the above-described embodiments, each part shown in each of the above-described figures can be realized as a software module which is a function (processing) unit of a software program executed by the above-mentioned hardware. However, the division of each software module shown in these drawings is a configuration for convenience of explanation, and various configurations can be assumed at the time of implementation. When each component of the mail data management device illustrated in each of FIGS. 1, 7, 10A and 10B is realized as a software module, for example, even if these software modules are stored in the non-volatile storage device 1103. Good. Then, when the arithmetic unit 1101 executes each process, these software modules may be read into the memory 1102. Further, these software modules may be configured so that various data can be transmitted to each other by an appropriate method such as shared memory or interprocess communication. With such a configuration, these software modules are communicably connected to each other.

更に、上記ソフトウェア・プログラムは記録媒体1105に記録されてもよい。この場合、上記ソフトウェア・プログラムは、メールデータ管理装置の出荷段階、あるいは運用段階等において、適宜ドライブ装置1104を通じて不揮発性記憶装置1103に格納されるよう構成されてもよい。 Further, the software program may be recorded on the recording medium 1105. In this case, the software program may be configured to be appropriately stored in the non-volatile storage device 1103 through the drive device 1104 at the shipping stage, the operation stage, or the like of the mail data management device.

なお、上記した各種ソフトウェア・プログラムは、出荷前の製造段階、あるいは出荷後のメンテナンス段階等において、適当な治具(ツール)を利用して上記ハードウェア装置1100にインストールされてもよい。また、各種ソフトウェア・プログラムは、インターネット等の通信回線を介して外部からダウンロードする方法等のように、現在では一般的な手順により、上記ハードウェア装置1100にインストールされてもよい。そして、このような場合において、本開示に関する技術は、係るソフトウェア・プログラムを構成するコード、あるいは係るコードが記録されたところの、コンピュータ読み取り可能な記録媒体によって構成されると捉えることができる。この場合、係る記録媒体は、ハードウェア装置1100と独立した媒体に限らず、LANやインターネットなどにより伝送されたソフトウェア・プログラムをダウンロードして記憶又は一時記憶した記録媒体を含む。 The various software programs described above may be installed in the hardware device 1100 by using an appropriate jig (tool) at a manufacturing stage before shipment, a maintenance stage after shipment, or the like. Further, various software programs may be installed in the hardware device 1100 by a general procedure at present, such as a method of downloading from the outside via a communication line such as the Internet. Then, in such a case, the technology according to the present disclosure can be regarded as being composed of a code constituting the software program or a computer-readable recording medium in which the code is recorded. In this case, the recording medium is not limited to a medium independent of the hardware device 1100, but includes a recording medium in which a software program transmitted via a LAN, the Internet, or the like is downloaded and stored or temporarily stored.

また、上述したメールデータ管理装置の構成要素は、図11に例示するハードウェア装置1100を仮想化した仮想化環境と、当該仮想化環境において実行される各種ソフトウェア・プログラム(コンピュータ・プログラム)とによって構成されてもよい。この場合、図11に例示するハードウェア装置1100の構成要素は、当該仮想化環境における仮想デバイスとして提供される。なお、この場合も、図11に例示するハードウェア装置1100を物理的な装置として構成した場合と同様の構成により、本開示に関する技術を実現可能である。 Further, the components of the mail data management device described above are composed of a virtual environment in which the hardware device 1100 illustrated in FIG. 11 is virtualized and various software programs (computer programs) executed in the virtual environment. It may be configured. In this case, the components of the hardware device 1100 illustrated in FIG. 11 are provided as virtual devices in the virtualized environment. Also in this case, the technique according to the present disclosure can be realized by the same configuration as when the hardware device 1100 illustrated in FIG. 11 is configured as a physical device.

以上、本開示を、上述した模範的な実施形態に適用した例として説明した。上記各実施形態においては、本開示に関する技術をメールデータ管理装置(1、7、10)に適用した例を説明した。例えば、上記各実施形態におけるメールデータ管理装置(1、7、10)を動作させることによって、本開示に関するメールデータ管理方法を実現することができる。なお、本開示は、複数の装置を含むシステムとして実現されてもよい。 The present disclosure has been described above as an example of applying the above-mentioned exemplary embodiment. In each of the above embodiments, an example in which the technique related to the present disclosure is applied to the mail data management device (1, 7, 10) has been described. For example, by operating the mail data management devices (1, 7, 10) in each of the above embodiments, the mail data management method related to the present disclosure can be realized. The present disclosure may be realized as a system including a plurality of devices.

また、本開示の技術的範囲は、上述した実施形態に記載した範囲には限定されない。当業者には、係る実施形態に対して多様な変更又は改良を加えることが可能であることは明らかである。そのような場合、係る変更又は改良を加えた新たな実施形態も、本開示の技術的範囲に含まれ得る。上述した実施形態及び具体例を組み合わせた実施形態も本開示の技術的範囲に含まれる。更に、上述した実施形態と、上述した実施形態に変更又は改良を加えた新たな実施形態とを組み合わせた実施形態も、本開示の技術的範囲に含まれ得る。そしてこのことは、特許請求の範囲に記載した事項から明らかである。 Further, the technical scope of the present disclosure is not limited to the scope described in the above-described embodiment. It will be apparent to those skilled in the art that various changes or improvements can be made to such embodiments. In such cases, new embodiments with such modifications or improvements may also be included in the technical scope of the present disclosure. Embodiments that combine the above-described embodiments and specific examples are also included in the technical scope of the present disclosure. Further, an embodiment in which the above-described embodiment is combined with a new embodiment obtained by modifying or improving the above-described embodiment may also be included in the technical scope of the present disclosure. And this is clear from the matters stated in the claims.

1 メールデータ管理装置
2 メールサーバ
3 メールクライアント
101 メール受信部
102 スレッド判定部
103 関連メール管理部
104 同一スレッドデータ取得部
105 メールデータ分解部
106 圧縮部
107 格納部
108 メールボックス
109 展開部
110 メールデータ結合部
111 取得部
112 応答部
701 差分確認部
702 差分管理部
703 差分結合部
1001 メールデータ保存部
1002 スレッド判定部
1003 メールデータ分解部
1004 データサイズ調整部
1005 取得部
1006 メールデータ結合部
1 Mail data management device 2 Mail server 3 Mail client 101 Mail receiving unit 102 Thread judgment unit 103 Related mail management unit 104 Same thread data acquisition unit 105 Mail data decomposition unit 106 Compression unit 107 Storage unit 108 Mailbox 109 Expansion unit 110 Mail data Joining part 111 Acquisition part 112 Response part 701 Difference confirmation part 702 Difference management part 703 Difference joining part 1001 Mail data storage part 1002 Thread judgment part 1003 Mail data decomposition part 1004 Data size adjustment part 1005 Acquisition part 1006 Mail data joining part

Claims (5)

電子メールに関するデータを記憶可能なメールデータ保存部と、
1以上の前記電子メールが同一のスレッドに含まれるか否かを判定するスレッド判定部と、
前記電子メールを構成するメールデータを、前記電子メールが含まれるスレッド毎に前記メールデータ保存部に記憶されるスレッドデータに含まれる第1の部分データと、前記電子メール毎に個別に前記メールデータ保存部に記憶され第2の部分データとに分解するメールデータ分解部と、
スレッド毎に、当該スレッドに含まれる前記電子メールに関する前記第1の部分データに基づいて、少なくとも当該スレッドに含まれる前記電子メールのデータサイズの総和よりも小さいデータサイズの前記スレッドデータを作成するデータサイズ調整部と、
を備え
前記メールデータ分解部は、
前記電子メールを構成するメールデータのうち、メールヘッダ部分と、メールボディ部分における先頭から特定の位置までの部分とを、圧縮されない部分である前記第2の部分データとして分解し、該メールボディ部分における残りの部分を、圧縮される部分である前記第1の部分データとして分解し、
前記データサイズ調整部は、
前記電子メールが、あるスレッドに含まれると判定された場合、当該電子メールに関する前記第1の部分データを当該スレッドに関する前記スレッドデータに追加して圧縮し、
前記電子メールがいずれのスレッドにも含まれないと判定された場合、当該電子メールに関する前記第1の部分データを圧縮したデータを含む新たなスレッドデータを生成する、
メールデータ管理装置。
A mail data storage unit that can store data related to e-mail,
A thread determination unit that determines whether or not one or more of the e-mails are included in the same thread,
The mail data constituting the e-mail is the first partial data included in the thread data stored in the mail data storage unit for each thread containing the e-mail, and the mail data individually for each e-mail. decomposing mail data decomposition section and a second partial data that is stored in the storage unit,
Data for each thread to create the thread data having a data size smaller than the total data size of the e-mail contained in the thread, based on the first partial data regarding the e-mail contained in the thread. With the size adjustment part
Equipped with a,
The mail data decomposition unit
Of the mail data constituting the e-mail, the mail header part and the part from the beginning to the specific position in the mail body part are decomposed as the second part data which is an uncompressed part, and the mail body part is decomposed. The remaining part in the above is decomposed as the first part data which is the part to be compressed.
The data size adjustment unit
When it is determined that the e-mail is included in a thread, the first partial data relating to the e-mail is added to the thread data relating to the thread and compressed.
If it is determined that the e-mail is not included in any thread, new thread data including compressed data of the first partial data relating to the e-mail is generated.
Mail data management device.
電子メールに関するデータを記憶可能なメールデータ保存部を備えた情報処理装置が、
1以上の電子メールが同一のスレッドに含まれるか否かを判定し、
前記電子メールを構成するメールデータを、前記電子メールが含まれるスレッド毎に前記メールデータ保存部に記憶されるスレッドデータに含まれる第1の部分データと、前記電子メール毎に個別に前記メールデータ保存部に記憶され第2の部分データとに分解し
スレッド毎に、当該スレッドに含まれる前記電子メールに関する前記第1の部分データに基づいて、少なくとも当該スレッドに含まれる前記電子メールのデータサイズの総和よりも小さいデータサイズの前記スレッドデータを作成する、
処理を実行し、
前記分解する処理では、
前記電子メールを構成するメールデータのうち、メールヘッダ部分と、メールボディ部分における先頭から特定の位置までの部分とを、圧縮されない部分である前記第2の部分データとして分解し、該メールボディ部分における残りの部分を、圧縮される部分である前記第1の部分データとして分解し、
前記スレッドデータを作成する処理では、
前記電子メールが、あるスレッドに含まれると判定された場合、当該電子メールに関する前記第1の部分データを当該スレッドに関する前記スレッドデータに追加して圧縮し、
前記電子メールがいずれのスレッドにも含まれないと判定された場合、当該電子メールに関する前記第1の部分データを圧縮したデータを含む新たなスレッドデータを生成する、
メールデータ管理方法。
An information processing device equipped with a mail data storage unit that can store data related to e-mail
Determine if one or more emails are in the same thread and
The mail data constituting the e-mail is the first partial data included in the thread data stored in the mail data storage unit for each thread containing the e-mail, and the mail data individually for each e-mail. It is stored in the storage unit and decomposed into a second partial data. For each thread, at least the data size of the e-mail contained in the thread is based on the first partial data relating to the e-mail contained in the thread. Create the thread data with a data size smaller than the sum,
Execute the process and
In the disassembling process,
Of the mail data constituting the e-mail, the mail header part and the part from the beginning to the specific position in the mail body part are decomposed as the second part data which is an uncompressed part, and the mail body part is decomposed. The remaining part in the above is decomposed as the first part data which is the part to be compressed.
In the process of creating thread data,
When it is determined that the e-mail is included in a thread, the first partial data relating to the e-mail is added to the thread data relating to the thread and compressed.
If it is determined that the e-mail is not included in any thread, new thread data including compressed data of the first partial data relating to the e-mail is generated.
Mail data management method.
電子メールに関するデータを記憶可能なメールデータ保存部を備えたコンピュータに、
1以上の電子メールが同一のスレッドに含まれるか否かを判定する処理と、
前記電子メールを構成するメールデータを、前記電子メールが含まれるスレッド毎に前記メールデータ保存部に記憶されるスレッドデータに含まれる第1の部分データと、前記電子メール毎に個別に前記メールデータ保存部に記憶され第2の部分データとに分解する処理と、
スレッド毎に、当該スレッドに含まれる前記電子メールに関する前記第1の部分データに基づいて、少なくとも当該スレッドに含まれる前記電子メールのデータサイズの総和よりも小さいデータサイズの前記スレッドデータを作成する処理と、を実行させ
前記分解する処理では、
前記電子メールを構成するメールデータのうち、メールヘッダ部分と、メールボディ部分における先頭から特定の位置までの部分とを、圧縮されない部分である前記第2の部分データとして分解し、該メールボディ部分における残りの部分を、圧縮される部分である前記第1の部分データとして分解し、
前記スレッドデータを作成する処理では、
前記電子メールが、あるスレッドに含まれると判定された場合、当該電子メールに関する前記第1の部分データを当該スレッドに関する前記スレッドデータに追加して圧縮し、
前記電子メールがいずれのスレッドにも含まれないと判定された場合、当該電子メールに関する前記第1の部分データを圧縮したデータを含む新たなスレッドデータを生成する、
メールデータ管理プログラム。
On a computer equipped with a mail data storage unit that can store data related to e-mail,
The process of determining whether one or more emails are included in the same thread,
The mail data constituting the e-mail is the first partial data included in the thread data stored in the mail data storage unit for each thread containing the e-mail, and the mail data individually for each e-mail. The process of storing in the storage unit and decomposing it into the second partial data,
For each thread, a process of creating the thread data having a data size smaller than the total data size of the e-mail contained in the thread, based on the first partial data regarding the e-mail contained in the thread. And let it run ,
In the disassembling process,
Of the mail data constituting the e-mail, the mail header part and the part from the beginning to the specific position in the mail body part are decomposed as the second part data which is an uncompressed part, and the mail body part is decomposed. The remaining part in the above is decomposed as the first part data which is the part to be compressed.
In the process of creating thread data,
When it is determined that the e-mail is included in a thread, the first partial data relating to the e-mail is added to the thread data relating to the thread and compressed.
If it is determined that the e-mail is not included in any thread, new thread data including compressed data of the first partial data relating to the e-mail is generated.
Email data management program.
前記メールデータ保存部に記憶された前記電子メールの少なくとも一部を読み出すリクエストを受け付ける応答部と、A response unit that receives a request to read at least a part of the e-mail stored in the mail data storage unit, and a response unit.
前記メールデータ保存部から、前記リクエストにより指定された前記電子メールに関する前記第2の部分データと、前記リクエストにより指定された前記電子メールが含まれるスレッドに関する前記スレッドデータとの少なくとも一方を取得可能な取得部と、From the mail data storage unit, at least one of the second partial data regarding the e-mail specified by the request and the thread data regarding the thread including the e-mail specified by the request can be obtained. Acquisition department and
取得した前記スレッドデータを展開することで、前記リクエストにより指定された前記電子メールに関する前記第1の部分データを取得し、取得した前記第1の部分データと、前記第2の部分データとを結合することで、前記リクエストにより指定された前記電子メールを構成するメールデータを復元可能なメールデータ結合部と、を更に備え、By expanding the acquired thread data, the first partial data regarding the e-mail specified by the request is acquired, and the acquired first partial data and the second partial data are combined. By doing so, a mail data combining unit capable of restoring the mail data constituting the e-mail specified by the request is further provided.
前記応答部は、前記リクエストに応じて、前記取得部により取得された前記第2の部分データの少なくとも一部を提供するか、又は、前記メールデータ結合部により復元された前記電子メールを構成するメールデータの少なくとも一部を提供する、In response to the request, the response unit provides at least a part of the second partial data acquired by the acquisition unit, or constitutes the e-mail restored by the mail data combination unit. Provide at least part of the email data,
請求項1に記載のメールデータ管理装置。The mail data management device according to claim 1.
前記応答部は、前記リクエストに応じて前記メールデータ結合部により復元された前記電子メールを構成するメールデータの少なくとも一部を提供する場合、前記メールデータ結合部により実行される前記電子メールを構成するメールデータを復元する処理と並行して、当該電子メールに関する前記第2の部分データを提供する処理を実行する、When the response unit provides at least a part of the mail data constituting the e-mail restored by the mail data combining unit in response to the request, the response unit constitutes the e-mail executed by the mail data combining unit. In parallel with the process of restoring the mail data to be executed, the process of providing the second partial data regarding the e-mail is executed.
請求項4に記載のメールデータ管理装置。The mail data management device according to claim 4.
JP2016173709A 2016-09-06 2016-09-06 Mail data management device, mail data management method, and mail data management program Active JP6809060B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016173709A JP6809060B2 (en) 2016-09-06 2016-09-06 Mail data management device, mail data management method, and mail data management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016173709A JP6809060B2 (en) 2016-09-06 2016-09-06 Mail data management device, mail data management method, and mail data management program

Publications (2)

Publication Number Publication Date
JP2018041206A JP2018041206A (en) 2018-03-15
JP6809060B2 true JP6809060B2 (en) 2021-01-06

Family

ID=61626255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016173709A Active JP6809060B2 (en) 2016-09-06 2016-09-06 Mail data management device, mail data management method, and mail data management program

Country Status (1)

Country Link
JP (1) JP6809060B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240111742A1 (en) * 2019-11-11 2024-04-04 Nec Corporation Management device, management method, and recording medium

Also Published As

Publication number Publication date
JP2018041206A (en) 2018-03-15

Similar Documents

Publication Publication Date Title
US10142398B2 (en) Method and system for file transfer over a messaging infrastructure
EP2998863B1 (en) Converting a serial transaction schedule to a parallel transaction schedule
US9467460B1 (en) Modularized database architecture using vertical partitioning for a state machine
US11221992B2 (en) Storing data files in a file system
US20200356445A1 (en) Efficient backup, search and restore
CN101478370B (en) File compression method and apparatus based on file system
CN107850983B (en) Computer system, storage device and data management method
US20100115061A1 (en) Server system, server apparatus, program and method
US20130262601A1 (en) Method and device for sending and receiving emails
JP2007521528A (en) Creating a volume image
CN110334086A (en) Data duplicate removal method, device, computer equipment and storage medium
US8909606B2 (en) Data block compression using coalescion
JP2012164130A (en) Data division program
US9646016B2 (en) Methods circuits apparatuses systems and associated computer executable code for data deduplication
JP6809060B2 (en) Mail data management device, mail data management method, and mail data management program
JP2010061518A (en) Apparatus and method for storing data and program
JP2009064196A (en) Method for storing electronic mail, method for reproducing electronic mail, electronic mail system, and electronic mail storage/reproduction program
US8805942B2 (en) Storing and partitioning email messaging data
US8984028B2 (en) Systems and methods for storing data and eliminating redundancy
CN114490509A (en) Tracking change data capture log history
JP5170595B2 (en) Relay processing device, control method therefor, and program
US7917592B1 (en) Method for grouping exchange 2007 journal messages
US10528904B2 (en) Workflow processing via policy workflow workers
US7836139B1 (en) Method for grouping exchange 2007 journal messages
CN113792013B (en) Retrieval method based on attachment content in mail, computing equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190820

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200707

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200904

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201123

R150 Certificate of patent or registration of utility model

Ref document number: 6809060

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150