Nothing Special   »   [go: up one dir, main page]

JP7579318B2 - OBJECT MANAGEMENT METHOD, COMPUTER SYSTEM, AND OBJECT MANAGEMENT PROGRAM - Google Patents

OBJECT MANAGEMENT METHOD, COMPUTER SYSTEM, AND OBJECT MANAGEMENT PROGRAM Download PDF

Info

Publication number
JP7579318B2
JP7579318B2 JP2022205140A JP2022205140A JP7579318B2 JP 7579318 B2 JP7579318 B2 JP 7579318B2 JP 2022205140 A JP2022205140 A JP 2022205140A JP 2022205140 A JP2022205140 A JP 2022205140A JP 7579318 B2 JP7579318 B2 JP 7579318B2
Authority
JP
Japan
Prior art keywords
metadata
storage area
custom
storage
actual data
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
JP2022205140A
Other languages
Japanese (ja)
Other versions
JP2024089754A (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.)
Hitachi Vantara, Ltd.
Original Assignee
Hitachi Vantara, Ltd.
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 Hitachi Vantara, Ltd. filed Critical Hitachi Vantara, Ltd.
Priority to JP2022205140A priority Critical patent/JP7579318B2/en
Publication of JP2024089754A publication Critical patent/JP2024089754A/en
Application granted granted Critical
Publication of JP7579318B2 publication Critical patent/JP7579318B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、オブジェクト管理方法、計算機システム、及びオブジェクト管理プログラムに関する。 The present invention relates to an object management method, a computer system, and an object management program.

近年、データレイク基盤に適したストレージとして、オブジェクトストレージが注目されている。オブジェクトストレージには、実データ、メタデータ、及びカスタムメタデータが1つのオブジェクトとして格納される。 In recent years, object storage has been attracting attention as a storage suitable for data lake infrastructure. In object storage, actual data, metadata, and custom metadata are stored as a single object.

メタデータは、オブジェクトストレージへの実データの格納時にシステムから実データに対して付与されたデータである。カスタムメタデータは、ユーザによって実データに付与され、実データの検索や分析等に用いられる、ユーザがカスタマイズ可能なメタデータである。オブジェクトストレージに格納されたオブジェクトは、メタデータ及びカスタムメタデータを利用して、各種分析や機械学習のトレーニングデータ等に幅広く利用されている。 Metadata is data that is assigned to real data by the system when the real data is stored in object storage. Custom metadata is metadata that is assigned to real data by users and is customizable by the user, and is used for searching and analyzing the real data. Objects stored in object storage are widely used for various analyses and machine learning training data, etc., using metadata and custom metadata.

このような状況下で、メタデータの機密保護を図る技術として、メタデータを秘匿化し、メタデータ毎にアクセス制限を設ける技術が考案されている(例えば特許文献1参照)。 In light of this situation, a technique has been devised to conceal metadata and set access restrictions for each piece of metadata in order to protect the confidentiality of metadata (see, for example, Patent Document 1).

特開2019-082887号公報JP 2019-082887 A

しかし、上述の特許文献1に開示の技術では、メタデータの機密保護を実現する一方で、実データに付与されたカスタムメタデータの機密保護は実現できない。 However, while the technology disclosed in the above-mentioned Patent Document 1 provides confidentiality protection for metadata, it does not provide confidentiality protection for custom metadata added to actual data.

本発明は、上述の背景を鑑みてなされたものであり、オブジェクトストレージに格納された実データに付与されたカスタムメタデータの機密保護を実現することを目的とする。 The present invention has been made in consideration of the above-mentioned background, and aims to achieve confidentiality protection of custom metadata attached to actual data stored in object storage.

本発明の一側面では、オブジェクトが格納される記憶領域を有する計算機システムが実行するオブジェクト管理方法であって、前記計算機システムは、メモリと協働するプロセッサを有し、前記プロセッサが、ユーザによるカスタマイズ可能なメタデータであるカスタムメタデータが付与された実データを前記記憶領域に格納する格納リクエストに応じて、該実データと該カスタムメタデータを含んだ第1オブジェクトを前記記憶領域に格納し、前記カスタムメタデータを匿名化した匿名化カスタムメタデータを作成し、前記匿名化カスタムメタデータを含んだ第2オブジェクトを前記記憶領域に格納する各処理を含んだことを特徴とする。 In one aspect of the present invention, an object management method is executed by a computer system having a storage area in which objects are stored, the computer system having a processor that cooperates with a memory, and the processor includes the steps of, in response to a storage request for storing actual data to which custom metadata, which is metadata customizable by a user, is added in the storage area, storing a first object including the actual data and the custom metadata in the storage area, creating anonymized custom metadata by anonymizing the custom metadata, and storing a second object including the anonymized custom metadata in the storage area.

本願の一側面によれば、オブジェクトストレージに格納された実データに付与されたカスタムメタデータの機密保護を実現することができる。 According to one aspect of the present application, it is possible to achieve confidentiality protection of custom metadata attached to actual data stored in object storage.

実施形態に係る情報処理システムの構成を示す図。FIG. 1 is a diagram showing the configuration of an information processing system according to an embodiment. オブジェクトストレージのリージョンの説明図。An illustration of an object storage region. リージョンマップを示す図。A diagram showing a region map. 実施形態に係るオブジェクト格納時処理を示すシーケンス図。FIG. 11 is a sequence diagram showing a process when an object is stored according to the embodiment. 実施形態に係るメタデータの構成を示す図。FIG. 2 is a diagram showing a configuration of metadata according to the embodiment. リージョンに格納されたメタデータを示す図。Diagram showing metadata stored in a region. 実施形態に係るカスタムメタデータ匿名化処理を示すシーケンス図。FIG. 11 is a sequence diagram showing a custom metadata anonymization process according to the embodiment. 実施形態に係るデータアクセス処理を示すシーケンス図。FIG. 4 is a sequence diagram showing a data access process according to the embodiment. 実施形態に係るオブジェクト更新処理(Versioning無効時)を示すシーケンス図。FIG. 13 is a sequence diagram showing an object update process (when versioning is disabled) according to the embodiment. 実施形態に係るオブジェクト更新処理(Versioning有効時)を示すシーケンス図。FIG. 13 is a sequence diagram showing an object update process (when versioning is enabled) according to the embodiment. 実施形態に係るオブジェクト削除処理を示すシーケンス図。FIG. 4 is a sequence diagram showing an object deletion process according to the embodiment. 実施形態に係るデータ破損時処理を示すシーケンス図。FIG. 11 is a sequence diagram showing a process when data is corrupted according to the embodiment. 実施形態の変形例の説明図。FIG. 各ノードを実現するコンピュータのハードウェア図。A hardware diagram of the computer that realizes each node.

以下、図面を参照して本願の開示に係るオブジェクト管理方法、計算機システム、及びオブジェクト管理プログラムの実施形態を説明する。実施形態は、図面も含めて本願を説明するための例示である。実施形態では、説明の明確化のため、適宜、省略及び簡略化がされている。特に限定しない限り、実施形態の構成要素は単数でも複数でもよい。また、ある実施形態と他の実施形態を組み合わせた形態も、本願に係る実施形態に含まれる。 Below, embodiments of the object management method, computer system, and object management program disclosed in this application will be described with reference to the drawings. The embodiments, including the drawings, are examples for explaining this application. In the embodiments, appropriate omissions and simplifications have been made to clarify the explanation. Unless otherwise specified, the components of the embodiments may be singular or plural. Furthermore, a combination of one embodiment with another embodiment is also included in the embodiments of this application.

同一又は類似の構成要素には、同一の符号を付与し、後出の実施形態及び実施例では、説明を省略する、又は差分を中心とした説明のみを行う場合がある。また、同一又は類似の構成要素が複数ある場合には、同一の符号に異なる添字を付して説明する場合がある。また、これらの複数の構成要素を区別する必要がない場合には、添字を省略して説明する場合がある。各構成要素の数は、特に断りがない限り単数でも複数でもよい。 The same or similar components are given the same reference numerals, and in the following embodiments and examples, their description may be omitted or only the differences may be described. Furthermore, when there are multiple identical or similar components, they may be described with different subscripts added to the same reference numerals. Furthermore, when it is not necessary to distinguish between these multiple components, the subscripts may be omitted. The number of each component may be singular or plural, unless otherwise specified.

実施形態において、プログラムを実行して行う処理について説明する場合がある。コンピュータは、プロセッサ(例えばCPU(Central Processing Unit)、GPU(Graphics Processing Unit))により、主記憶装置のメモリ等を用いながら、プログラムで定められた処理を行う。そのため、プログラムを実行して行う処理の主体を、プロセッサとしてもよい。プロセッサがプログラムを実行することで、処理を行う機能部が実現される。 In the embodiments, the processing performed by executing a program may be described. A computer performs processing defined in a program using a processor (e.g., a CPU (Central Processing Unit), a GPU (Graphics Processing Unit)) while using memory in a main storage device, etc. Therefore, the processor may be the entity that performs processing by executing a program. The processor executes a program to realize a functional unit that performs processing.

同様に、プログラムを実行して行う処理の主体が、プロセッサを有するコントローラ、装置、システム、計算機、ノードであってもよい。プログラムを実行して行う処理の主体は、演算部であればよく、特定の処理を行う専用回路を含んでいてもよい。専用回路は、例えばFPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)等である。 Similarly, the subject of processing performed by executing a program may be a controller, device, system, computer, or node having a processor. The subject of processing performed by executing a program may be a computing unit, and may include a dedicated circuit that performs specific processing. The dedicated circuit is, for example, an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit).

プログラムは、プログラムソースから計算機にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバ又は計算機が読取り可能な非一時的な記憶メディアであってもよい。プログラムソースがプログラム配布サーバの場合、プログラム配布サーバはプロセッサと配布対象のプログラムを記憶する記憶リソース(ストレージ)を含み、プログラム配布サーバのプロセッサが配布対象のプログラムを他の計算機に配布してもよい。また、実施形態において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。 The program may be installed on the computer from a program source. The program source may be, for example, a program distribution server or a non-transitory storage medium readable by the computer. When the program source is a program distribution server, the program distribution server may include a processor and a storage resource (storage) that stores the program to be distributed, and the processor of the program distribution server may distribute the program to be distributed to other computers. In addition, in an embodiment, two or more programs may be realized as one program, or one program may be realized as two or more programs.

以下の実施形態では、DB(Data Base)で情報の保存手段を説明する場合があるが、情報の保存手段はDBに限らない。 In the following embodiments, the means for storing information may be described as a DB (database), but the means for storing information is not limited to a DB.

[実施形態]
(情報処理システムSの構成)
図1は、実施形態に係る情報処理システムSの構成を示す図である。情報処理システムSは、1つ以上のユーザ環境に配置された1つ以上のサーバ1と、異なる地域に位置する複数の拠点2にそれぞれ設置された複数のノード21とがネットワークNを介して相互に接続されて構成される。
[Embodiment]
(Configuration of Information Processing System S)
1 is a diagram showing the configuration of an information processing system S according to an embodiment. The information processing system S is configured by connecting one or more servers 1 arranged in one or more user environments and a plurality of nodes 21 installed in a plurality of bases 2 located in different regions to each other via a network N.

サーバ1は、ユーザ端末(不図示)から入力されたユーザリクエストをネットワークNを介してノード21に送信する。また、サーバ1は、ネットワークNを介して受信したユーザリクエストに対するノード21からの応答を、ユーザ端末を介してユーザに提示する。 The server 1 transmits a user request input from a user terminal (not shown) to the node 21 via the network N. The server 1 also presents a response from the node 21 to the user request received via the network N to the user via the user terminal.

各拠点2内のノード21は、バックエンドのLAN(Local Area Network)で接続されたマルチノードシステムを構成する。各拠点2内のストレージ22(本実施形態では4つ)は、記憶領域の一例としてのオブジェクトストレージであり、各ノード21とSAN(Storage Area Network)を介して接続される。同一の拠点2内の複数のノード21と複数のストレージ22は、計算機システム1Sを構成する。本実施形態では、ノード21-j(j=1,2,…,4)にストレージ22-jがそれぞれ対応する。 The nodes 21 in each base 2 form a multi-node system connected by a back-end LAN (Local Area Network). The storages 22 (four in this embodiment) in each base 2 are object storages as an example of storage areas, and are connected to each node 21 via a SAN (Storage Area Network). Multiple nodes 21 and multiple storages 22 in the same base 2 form a computer system 1S. In this embodiment, storages 22-j correspond to nodes 21-j (j = 1, 2, ..., 4), respectively.

なお、サーバ1、ノード21、及びストレージ22は、オンプレミス及びクラウドの何れでもよい。また、サーバ1、拠点2、ノード21、及びストレージ22の数は、図示のものに限られない。また、ノード21とストレージ22との対応関係は、1対1に限られない。 Note that the server 1, node 21, and storage 22 may be either on-premise or cloud-based. Furthermore, the number of servers 1, bases 2, nodes 21, and storage 22 is not limited to those shown in the figure. Furthermore, the correspondence between the node 21 and the storage 22 is not limited to one-to-one.

各ノード21は、本実施形態に関連する機能部として、リクエスト管理部211、サービス管理部212、メタデータ管理部213、ストレージ管理部(記憶領域管理部)214、及びDB(Data Base)215を有する。ノード21のその他の機能は、説明を省略する。 Each node 21 has, as functional units related to this embodiment, a request management unit 211, a service management unit 212, a metadata management unit 213, a storage management unit (storage area management unit) 214, and a DB (Data Base) 215. Descriptions of other functions of the node 21 will be omitted.

リクエスト管理部211は、サーバ1からのI/O等のユーザリクエストを受け付け、受け付けたユーザリクエストを処理する同一の拠点2内のノード21を決定し、決定したノード21へユーザリクエストを転送する。 The request management unit 211 accepts user requests such as I/O from the server 1, determines a node 21 within the same base 2 that will process the accepted user request, and transfers the user request to the determined node 21.

サービス管理部212は、ユーザによって実データに付与されたカスタムメタデータの匿名化を実行する。実データは、ユーザによってストレージ22に格納されるデータ本体であり、データの種類及び形式は問わない。 The service management unit 212 performs anonymization of the custom metadata that is assigned to the actual data by the user. The actual data is the main data stored in the storage 22 by the user, and the type and format of the data are not important.

メタデータ管理部213は、実データにシステム的に付与されたメタデータを、BD215に格納して管理する。また、メタデータ管理部213は、カスタムメタデータを匿名化した匿名化カスタムメタデータにシステム的に付与されたメタデータを、BD215に格納して管理する。メタデータを管理するBD215内のメタデータ管理情報215Tは、図6を参照して後述する。 The metadata management unit 213 stores in the BD 215 metadata that has been systematically assigned to the actual data and manages it. The metadata management unit 213 also stores in the BD 215 metadata that has been systematically assigned to anonymized custom metadata that has been anonymized from custom metadata and manages it. Metadata management information 215T in the BD 215 that manages the metadata will be described later with reference to FIG. 6.

ストレージ管理部214は、実データ、カスタムメタデータ、及びメタデータを含んだオブジェクトを、ストレージ22に格納する。また、ストレージ管理部214は、匿名化カスタムメタデータ及びメタデータを含んだオブジェクトを、ストレージ22に格納する。 The storage management unit 214 stores the actual data, the custom metadata, and the object including the metadata in the storage 22. The storage management unit 214 also stores the object including the anonymized custom metadata and the metadata in the storage 22.

ここで、図1に示すように、実データ101A、実データ101Aのカスタムメタデータ102A、及び第1メタデータ103Aを含むオブジェクトを第1オブジェクト100Aと呼ぶ。第1メタデータ103Aは、実データ101Aに付与されるメタデータである。 As shown in FIG. 1, an object including actual data 101A, custom metadata 102A of the actual data 101A, and first metadata 103A is called a first object 100A. The first metadata 103A is metadata that is assigned to the actual data 101A.

また、実データ101Aのダミーデータ101B、カスタムメタデータ102Aを匿名化した匿名化カスタムメタデータ102B、及び第2メタデータ103Bを含むオブジェクトを第2オブジェクト100Bと呼ぶ。第2メタデータ103Bは、匿名化カスタムメタデータ102Bに付与されるメタデータである。ダミーデータ101Bは、空データでも、存在しないデータを仮想的に表現したものでもよい。 An object including dummy data 101B of real data 101A, anonymized custom metadata 102B obtained by anonymizing custom metadata 102A, and second metadata 103B is called a second object 100B. The second metadata 103B is metadata that is added to the anonymized custom metadata 102B. The dummy data 101B may be null data or a virtual representation of non-existent data.

ストレージ管理部214は、第1オブジェクト100A及び第2オブジェクト100Bの格納を指示されると、自身が管理するストレージ22に第1オブジェクト100A及び第2オブジェクト100Bを格納する。 When the storage management unit 214 is instructed to store the first object 100A and the second object 100B, it stores the first object 100A and the second object 100B in the storage 22 that it manages.

(オブジェクトストレージのリージョン)
図2は、オブジェクトストレージのリージョンの説明図である。図3は、リージョンマップ2151を示す図である。
(Object storage region)
2 is an explanatory diagram of an object storage region, and FIG. 3 is a diagram showing a region map 2151.

本実施形態では、同一の拠点2内の全てのノード21のDB215の記憶領域の全領域を所定数(本実施形態では32)に分割したリージョンに第1メタデータ103A及び第2メタデータ103Bを格納して管理する。各リージョンは、正系リージョンと、正系リージョンとは異なるノード21に配置された副系リージョンとを含む。リージョンマップ2151は、リージョン番号で識別される各リージョンの正系リージョンと副系リージョンが配置されるノード21を示す情報である。 In this embodiment, the first metadata 103A and the second metadata 103B are stored and managed in regions obtained by dividing the entire storage area of the DB215 of all nodes 21 in the same base 2 into a predetermined number (32 in this embodiment). Each region includes a primary region and a secondary region that is located in a node 21 different from the primary region. The region map 2151 is information that indicates the node 21 in which the primary region and secondary region are located for each region identified by a region number.

第1メタデータ103Aは、対となる正系リージョンと副系リージョンにそれぞれ格納される。第1メタデータ103Aが格納されるリージョン(リージョン番号)は、ユーザ指定の格納先のパス情報に基づいて算出されるハッシュ値によって決定される。第1メタデータ103Aは、決定されたリージョン番号とリージョンマップ2151とに基づいて、正系リージョン及び副系リージョンが位置するノード21が特定される。そして、第1メタデータ103Aは、特定された各ノード21のDB215の正系リージョン及び副系リージョンにそれぞれ格納される。 The first metadata 103A is stored in the paired primary and secondary regions. The region (region number) in which the first metadata 103A is stored is determined by a hash value calculated based on path information of the storage destination specified by the user. The first metadata 103A identifies the node 21 in which the primary and secondary regions are located based on the determined region number and the region map 2151. The first metadata 103A is then stored in the primary and secondary regions of the DB 215 of each identified node 21.

なお、第1メタデータ103A及び第2メタデータ103Bの管理には、リージョンを用いた管理方法に限らず、種々の管理方法が採用できる。 Note that the management of the first metadata 103A and the second metadata 103B is not limited to a management method using regions, and various management methods can be used.

(データ格納時処理)
図4は、実施形態に係るオブジェクト格納時処理を示すシーケンス図である。図4は、拠点2-1内において、第1メタデータ103Aが、ノード21-2(ノード#2)を正系リージョン、ノード21-3(ノード#3)を副系リージョンとしてそれぞれのDB215に格納される例を示す。また、第1オブジェクト100Aが、ノード21-3(ノード#3)に対応するストレージ22-3に格納される例を示す。
(Data storage processing)
Fig. 4 is a sequence diagram showing the process of storing an object according to the embodiment. Fig. 4 shows an example in which the first metadata 103A is stored in the DB 215 of the node 21-2 (node #2) as the primary region and the node 21-3 (node #3) as the secondary region in the base 2-1. Also, an example is shown in which the first object 100A is stored in the storage 22-3 corresponding to the node 21-3 (node #3).

先ずステップS11では、ノード21-1のリクエスト管理部211は、サーバ1から、格納リクエストと共に実データ101Aと実データ101Aのカスタムメタデータ102A(図1)を受信する。各種リクエストの送信先のノード21は、DNS(Domain Name System)ラウンドロビン等の負荷分散手法を用いて決定される。 First, in step S11, the request management unit 211 of node 21-1 receives the actual data 101A and the custom metadata 102A (FIG. 1) of the actual data 101A together with a storage request from the server 1. The node 21 to which various requests are to be sent is determined using a load balancing method such as DNS (Domain Name System) round robin.

次にステップS12では、ノード21-1のリクエスト管理部211は、ステップS11で受信した実データ101A及びカスタムメタデータ102Aを含む第1オブジェクト100Aの第1メタデータ103Aを作成する。第1メタデータ103Aは、実データ101Aの作成者(ユーザ名)、作成日、更新日、格納先情報、サイズ、実データ101Aのハッシュ値、及びその他の情報を含む。 Next, in step S12, the request management unit 211 of node 21-1 creates first metadata 103A for the first object 100A, which includes the actual data 101A and custom metadata 102A received in step S11. The first metadata 103A includes the creator (user name) of the actual data 101A, the creation date, the update date, storage destination information, size, the hash value of the actual data 101A, and other information.

ここでメタデータ103(第1メタデータ103A、第2メタデータ103B)について説明する。図5は、実施形態に係るメタデータ103の構成を示す図である。メタデータ103は、一例として、EF(External Files)、IF(Internal Files)、ECM(External Custom Metadata)、ICM(Internal Custom Metadata)、Masking、MCM(Masked Custom Metadata)、及びReplicationを項目として含む。これらのうちEF、IF、及びReplicationが従来と同様の項目であり、ECM、ICM、Masking、及びMCMが本実施形態で追加された項目である。 Now, the metadata 103 (first metadata 103A, second metadata 103B) will be described. FIG. 5 is a diagram showing the configuration of the metadata 103 according to the embodiment. As an example, the metadata 103 includes items such as EF (External Files), IF (Internal Files), ECM (External Custom Metadata), ICM (Internal Custom Metadata), Masking, MCM (Masked Custom Metadata), and Replication. Of these, EF, IF, and Replication are the same items as in the past, and ECM, ICM, Masking, and MCM are items added in this embodiment.

ECMは、ユーザが指定可能なパスであり、EFのパス値にカスタムメタデータ102Aのファイル名を追加したものとなる。ICMは、カスタムメタデータ102Aを内部で管理するパスである。ICMは、カスタムメタデータ102Aを含んだオブジェクトのストレージ22への初回の格納時には、IFのパス値にカスタムメタデータ102Aのファイル名を追加したものとなる。また、ICMは、カスタムメタデータ102A又は匿名化カスタムメタデータ102Bを含んだオブジェクトのストレージ22への2回目以降の格納時には、オブジェクトのオブジェクトIDにカスタムメタデータ102Aのファイル名を追加したものとなる。 The ECM is a path that can be specified by the user, and is the path value of the EF plus the file name of the custom metadata 102A. The ICM is a path that internally manages the custom metadata 102A. When an object including custom metadata 102A is stored in the storage 22 for the first time, the ICM is the path value of the IF plus the file name of the custom metadata 102A. When an object including custom metadata 102A or anonymized custom metadata 102B is stored in the storage 22 for the second or subsequent time, the ICM is the object ID of the object plus the file name of the custom metadata 102A.

Maskingは、カスタムメタデータ102Aの匿名化処理を行うかどうかのフラグであり、ユーザによって設定される。MCMは、カスタムメタデータ102Aが匿名化された匿名化カスタムメタデータ102Bを内部で管理するパスである。MCMは、カスタムメタデータ102Aを含んだオブジェクトのストレージ22への初回の格納時には、匿名化カスタムメタデータ102Bが存在しないので“null”となる。また、MCMは、カスタムメタデータ102A又は匿名化カスタムメタデータ102Bを含んだオブジェクトのストレージ22への2回目以降の格納時には、匿名化カスタムメタデータ102BのICMの値と同一となる。 Masking is a flag indicating whether or not to perform anonymization processing on custom metadata 102A, and is set by the user. MCM is a path that internally manages anonymized custom metadata 102B obtained by anonymizing custom metadata 102A. When an object including custom metadata 102A is stored in storage 22 for the first time, MCM becomes "null" because anonymized custom metadata 102B does not exist. Furthermore, when an object including custom metadata 102A or anonymized custom metadata 102B is stored in storage 22 for the second or subsequent time, MCM becomes the same as the value of ICM of anonymized custom metadata 102B.

図4の説明に戻る。次にステップS13では、ノード21-1のリクエスト管理部211は、ユーザ指定のデータ格納パスEF(図5)のハッシュ値を算出し、ステップS11で受信した実データ101Aの格納先のDB215のリージョンを決定する。次にステップS14では、ノード21-1のリクエスト管理部211は、ステップS13で決定した格納先のDB215の正系リージョン及び副系リージョンを有する各ノード21に、第1メタデータ103Aを送信する。ここでは、第1メタデータ103Aの格納先のリージョン2の正系リージョンはノード21-2(ノード#2)に存在し、副系リージョンはノード21-3(ノード#3)に存在するとする。 Returning to the explanation of FIG. 4, next in step S13, the request management unit 211 of node 21-1 calculates a hash value of the user-specified data storage path EF (FIG. 5) and determines the region of DB 215 in which the actual data 101A received in step S11 is to be stored. Next, in step S14, the request management unit 211 of node 21-1 transmits the first metadata 103A to each node 21 having the primary and secondary regions of the storage destination DB 215 determined in step S13. Here, it is assumed that the primary region of region 2 in which the first metadata 103A is stored exists in node 21-2 (node #2), and the secondary region exists in node 21-3 (node #3).

次にステップS15では、ノード21-2のメタデータ管理部213は、ノード21-1から受信した第1メタデータ103Aを、自ノードのDB215の指定された正系リージョンのメタデータ管理情報215Tに追加する。ステップS16では、ノード21-3のメタデータ管理部213は、ステップS15と同様に、ノード21-1から受信した第1メタデータ103Aを、自ノードのDB215の指定された副系リージョンのメタデータ管理情報215Tに追加する。 Next, in step S15, the metadata management unit 213 of node 21-2 adds the first metadata 103A received from node 21-1 to the metadata management information 215T of the specified primary region in the DB 215 of the own node. In step S16, the metadata management unit 213 of node 21-3 adds the first metadata 103A received from node 21-1 to the metadata management information 215T of the specified secondary region in the DB 215 of the own node, similar to step S15.

ここでメタデータ管理情報215Tについて説明する。図6は、メタデータ管理情報215Tを示す図である。図6に示すように、レコード215T1は、ステップS15で正系リージョンのメタデータ管理情報215Tに追加される第1メタデータ103Aのレコードである。 Now, we will explain the metadata management information 215T. Figure 6 is a diagram showing the metadata management information 215T. As shown in Figure 6, record 215T1 is a record of the first metadata 103A that is added to the metadata management information 215T of the original region in step S15.

レコード215T1は、第1メタデータ103Aを含む第1オブジェクト100Aである“ObjectA”の各項目値としてEF“/dirA/dirB/fileA”,IF“node#2:/ObjectA/fileA”,…,ECM“/dirA/dirB/metadata.xml”,ICM“node#2:/ObjectA/metadata.xml”,…,Masking“true”,MCM“node#2:/ObjectB/metadata.xml”,…Replication“Site#2:/node#3:/ObjectC/fileA”を含む。 Record 215T1 includes, as item values for "ObjectA", which is the first object 100A including the first metadata 103A, EF "/dirA/dirB/fileA", IF "node#2:/ObjectA/fileA", ..., ECM "/dirA/dirB/metadata.xml", ICM "node#2:/ObjectA/metadata.xml", ..., Masking "true", MCM "node#2:/ObjectB/metadata.xml", ..., Replication "Site#2:/node#3:/ObjectC/fileA".

次にステップS17では、ノード21-1のリクエスト管理部211は、各ノード21のストレージ22の空き容量を算出し、第1オブジェクト100A(ObjectA)を格納するストレージ22を決定する。ここでは、ノード21-3(ノード#3)のストレージ22-3が格納先として決定されたとする。 Next, in step S17, the request management unit 211 of node 21-1 calculates the free space in the storage 22 of each node 21, and determines the storage 22 in which to store the first object 100A (ObjectA). Here, it is assumed that the storage 22-3 of node 21-3 (node #3) has been determined as the storage destination.

次にステップS18では、ノード21-1のリクエスト管理部211は、ステップS17で決定した格納先のストレージ22-3の担当ノード(ノード21-3)に、第1オブジェクト100Aを送信する。 Next, in step S18, the request management unit 211 of node 21-1 sends the first object 100A to the node (node 21-3) responsible for the storage destination 22-3 determined in step S17.

次にステップS19では、ノード21-3のストレージ管理部214は、受信した第1オブジェクト100Aをストレージ22-3に格納する。 Next, in step S19, the storage management unit 214 of node 21-3 stores the received first object 100A in storage 22-3.

(実施形態に係るカスタムメタデータ匿名化処理)
図7は、実施形態に係るカスタムメタデータ匿名化処理を示すシーケンス図である。図7は、オブジェクト格納時処理のステップS19でストレージ22-3に格納後の第1オブジェクト100Aについて実行されるカスタムメタデータ匿名化処理の例を示す。
(Custom Metadata Anonymization Process According to the Embodiment)
7 is a sequence diagram showing a custom metadata anonymization process according to the embodiment. FIG. 7 shows an example of the custom metadata anonymization process executed on the first object 100A after it is stored in the storage 22-3 in step S19 of the object storage process.

カスタムメタデータ匿名化処理は、第1オブジェクト100Aのオブジェクト格納時処理(図4)の後に、複数のノード21が連携して実行される。 The custom metadata anonymization process is executed by multiple nodes 21 in cooperation with each other after the object storage process (Figure 4) of the first object 100A.

先ずステップS21では、ノード21-1のサービス管理部212は、第1オブジェクト100Aの第1メタデータ103Aを管理するリージョンを有するノード21-2,21-3に、第2メタデータ103Bのレコード作成依頼を送信する。ここでノード21-1は、リソース(CPUとメモリ)に余裕があり、第2オブジェクト100Bの第2メタデータ103Bのレコード作成依頼を出す余力があるとして選択されたノード21である。 First, in step S21, the service management unit 212 of node 21-1 sends a record creation request for second metadata 103B to nodes 21-2 and 21-3 having a region that manages the first metadata 103A of the first object 100A. Here, node 21-1 is the node 21 that has been selected as having sufficient resources (CPU and memory) to issue a record creation request for the second metadata 103B of the second object 100B.

次にステップS22では、ノード21-2のメタデータ管理部213は、自ノードのメタデータ管理情報215Tにおいて、第1オブジェクト100A(ObjectA)の第1メタデータ103Aを基に第2オブジェクト100Bの第2メタデータ103Bを作成する。そして、メタデータ管理部213は、作成した第2メタデータ103Bのレコードを、自ノードのメタデータ管理情報215Tに追加する。 Next, in step S22, the metadata management unit 213 of node 21-2 creates second metadata 103B for the second object 100B based on the first metadata 103A for the first object 100A (ObjectA) in the metadata management information 215T of its own node. The metadata management unit 213 then adds the record of the created second metadata 103B to the metadata management information 215T of its own node.

例えば図6に例示するように、レコード215T2は、正系リージョンであるリージョン2のメタデータ管理情報215Tにおいて、第1メタデータ103Aのレコード215T1を基に追加された第2メタデータ103Bのレコードである。第1メタデータ103Aのレコード215T1のMaskingが“true”、MCMが“null”の場合、レコード215T1を基にして、匿名化カスタムメタデータ102Bを管理する第2メタデータ103Bのレコード215T2が同一のリージョン2に追加される。この時、“ObjectB”の実データの内部パスIFに、“ObjectA”の実データの内部パスIFと同一値が設定される。また、“ObjectA”のMCMに、“ObjectB”のICMと同一値が設定される。 For example, as illustrated in FIG. 6, record 215T2 is a record of second metadata 103B that is added based on record 215T1 of first metadata 103A in metadata management information 215T of region 2, which is the original region. When Masking of record 215T1 of first metadata 103A is "true" and MCM is "null", record 215T2 of second metadata 103B that manages anonymous custom metadata 102B is added to the same region 2 based on record 215T1. At this time, the internal path IF of the actual data of "ObjectB" is set to the same value as the internal path IF of the actual data of "ObjectA". Also, the MCM of "ObjectA" is set to the same value as the ICM of "ObjectB".

ステップS23では、ノード21-3のメタデータ管理部213は、自ノードのメタデータ管理情報215Tにおいて、第1オブジェクト100A“ObjectA”の第1メタデータ103Aを基に第2オブジェクト100Bの第2メタデータ103Bを作成する。そして、メタデータ管理部213は、作成した第2メタデータ103Bのレコードを、自ノードのメタデータ管理情報215Tに追加する。 In step S23, the metadata management unit 213 of node 21-3 creates second metadata 103B for the second object 100B based on the first metadata 103A for the first object 100A "ObjectA" in the metadata management information 215T of its own node. The metadata management unit 213 then adds the record of the created second metadata 103B to the metadata management information 215T of its own node.

次にステップS24では、ノード21-2のメタデータ管理部213は、第1オブジェクト100A(ObjectA)のカスタムメタデータ102Aの格納先を示すICMと、第2オブジェクト100B(ObjectB)の第2メタデータ103Bを、依頼元のノード21-1のサービス管理部212に送信する。 Next, in step S24, the metadata management unit 213 of node 21-2 sends an ICM indicating the storage destination of the custom metadata 102A of the first object 100A (ObjectA) and the second metadata 103B of the second object 100B (ObjectB) to the service management unit 212 of the requesting node 21-1.

次にステップS25では、ノード21-1のサービス管理部212は、第1オブジェクト100A(ObjectA)のカスタムメタデータ102Aが格納されているストレージ22-3を管理するノード21-3に、カスタムメタデータ102Aの取得を依頼する。 Next, in step S25, the service management unit 212 of node 21-1 requests node 21-3, which manages storage 22-3 in which the custom metadata 102A of the first object 100A (ObjectA) is stored, to obtain the custom metadata 102A.

次にステップS26では、ノード21-3のストレージ管理部214は、第1オブジェクト100A(ObjectA)のカスタムメタデータ102Aを、ストレージ22-3から取得し、ノード21-1のサービス管理部212に送信する。 Next, in step S26, the storage management unit 214 of node 21-3 obtains the custom metadata 102A of the first object 100A (ObjectA) from the storage 22-3 and transmits it to the service management unit 212 of node 21-1.

次にステップS27では、ノード21-1のサービス管理部212は、ノード21-3から受信した第1オブジェクト100A(ObjectA)のカスタムメタデータ102Aを匿名化した匿名化カスタムメタデータ102Bを作成する。匿名化は、例えばカスタムメタデータ102が個人情報を含む場合、個人を特定できないレベルまで情報の少なくとも一部を削除したり置き換えたりするように、詳細の特定が不可能になるまで情報を加工する処理である。なお、本実施形態では、カスタムメタデータ102Aの情報保護の手法として匿名化を例に説明するが、匿名化に限られず、秘匿化やその他の情報保護処理の手法を採用することもできる。 Next, in step S27, the service management unit 212 of node 21-1 creates anonymized custom metadata 102B by anonymizing the custom metadata 102A of the first object 100A (ObjectA) received from node 21-3. Anonymization is a process of processing information until details cannot be identified, such as deleting or replacing at least a portion of the information to a level where the individual cannot be identified, when the custom metadata 102 contains personal information, for example. Note that in this embodiment, anonymization is used as an example of a method for protecting the information of the custom metadata 102A, but this is not limited to anonymization, and other information protection processing methods such as concealment and the like can also be adopted.

次にステップS28では、ノード21-1のサービス管理部212は、匿名化カスタムメタデータ102Bの格納先のストレージ22を決定する。ここでは空き容量に基づいて、ストレージ22-4が格納先と決定されたとする。次にステップS29では、ノード21-1のサービス管理部212は、ステップS28で決定したストレージ22-4の担当のノード21-4に、第2メタデータ103Bと匿名化カスタムメタデータ102Bとを含んだ第2オブジェクト100Bを送信する。 Next, in step S28, the service management unit 212 of node 21-1 determines the storage 22 in which to store the anonymized custom metadata 102B. Here, it is assumed that storage 22-4 is determined as the storage destination based on the available space. Next, in step S29, the service management unit 212 of node 21-1 transmits the second object 100B including the second metadata 103B and the anonymized custom metadata 102B to the node 21-4 in charge of the storage 22-4 determined in step S28.

次にステップS30では、ノード21-4のストレージ管理部214は、受信した第2オブジェクト100Bを、ストレージ22-4に格納する。 Next, in step S30, the storage management unit 214 of node 21-4 stores the received second object 100B in storage 22-4.

(データアクセス処理)
図8は、実施形態に係るデータアクセス処理を示すシーケンス図である。図8は、サーバ1からデータ参照リクエストを行ったユーザのカスタムメタデータの参照権限に応じて、実データ101Aとカスタムメタデータ102Aを応答するか、実データ101Aと匿名化カスタムメタデータ102Bを応答するかを切り替える例を示す。
(Data Access Processing)
Fig. 8 is a sequence diagram showing data access processing according to the embodiment. Fig. 8 shows an example in which whether to respond with actual data 101A and custom metadata 102A or actual data 101A and anonymized custom metadata 102B is switched depending on the reference authority of the user who has made a data reference request from the server 1 to the custom metadata.

データアクセス処理の実行に先立って、第1オブジェクト100A、実データ101A、又はカスタムメタデータ102A毎にユーザのデータ参照権限の有無が予め定義され、各ノード21内に保存されているものとする。また、データアクセス処理の実行に先立って、図7に示すカスタムメタデータ匿名化処理が実行済みで、拠点2-1内のストレージ22-3に第1オブジェクト100Aが格納済みであり、ストレージ22-4に第2オブジェクト100Bが格納済みであるとする。 Prior to the execution of the data access process, the presence or absence of the user's data reference authority is predefined for each of the first object 100A, the actual data 101A, and the custom metadata 102A, and is stored in each node 21. Also, prior to the execution of the data access process, it is assumed that the custom metadata anonymization process shown in FIG. 7 has been executed, the first object 100A has been stored in storage 22-3 in base 2-1, and the second object 100B has been stored in storage 22-4.

先ずステップS31では、ノード21-1のリクエスト管理部211は、サーバ1からユーザによる第1オブジェクト100Aの参照リクエストを受信する。ノード21-1は、DNSラウンドロビン等の負荷分散方法によって、参照リクエストを受信するノード21と決定されたものである。 First, in step S31, the request management unit 211 of node 21-1 receives a reference request from the server 1 for the first object 100A by a user. Node 21-1 is determined as the node 21 that will receive the reference request by a load balancing method such as DNS round robin.

次にステップS32では、ノード21-1のリクエスト管理部211は、ユーザから指定されたパス(EF)のハッシュ値に基づいて参照対象の第1オブジェクト100Aの第1メタデータ103Aが管理されるリージョンを決定する。そして、リクエスト管理部211は、決定したリージョンとリージョンマップ2151に基づいて正系リージョンを管理するノード21を特定する。ここではノード21-2が特定されたとする。 Next, in step S32, the request management unit 211 of node 21-1 determines the region in which the first metadata 103A of the referenced first object 100A is managed based on the hash value of the path (EF) specified by the user. Then, the request management unit 211 identifies the node 21 that manages the original region based on the determined region and the region map 2151. Here, it is assumed that node 21-2 has been identified.

次にステップS33では、ノード21-1のリクエスト管理部211は、ステップS32で特定したノード21-2に対して、メタデータ管理情報215Tに登録されている第1オブジェクト100Aの第1メタデータ103Aの情報要求を送信する。 Next, in step S33, the request management unit 211 of node 21-1 sends an information request for the first metadata 103A of the first object 100A registered in the metadata management information 215T to the node 21-2 identified in step S32.

次にステップS34では、ノード21-2のメタデータ管理部213は、メタデータ管理情報215Tに登録されている第1オブジェクト100Aの第1メタデータ103Aの情報をノード21-1に送信する。 Next, in step S34, the metadata management unit 213 of node 21-2 transmits the information of the first metadata 103A of the first object 100A registered in the metadata management information 215T to node 21-1.

次にステップS35では、ノード21-2のメタデータ管理部213は、ステップS34で送信された第1メタデータ103Aの情報に基づいて、第1オブジェクト100Aを保存するノード21-3に、第1オブジェクト100Aの取得・送信を依頼する。ここでは第1オブジェクト100Aを保存するノード21-3は、ステップS34で送信された第1メタデータ103Aの情報に基づいて特定されたとする。 Next, in step S35, the metadata management unit 213 of node 21-2 requests node 21-3, which stores first object 100A, to acquire and transmit first object 100A based on the information of first metadata 103A transmitted in step S34. Here, it is assumed that node 21-3, which stores first object 100A, has been identified based on the information of first metadata 103A transmitted in step S34.

次にステップS36では、ノード21-3のストレージ管理部214は、取得・送信依頼された第1オブジェクト100Aを、ストレージ22-3から取得し、ノード21-1に送信する。 Next, in step S36, the storage management unit 214 of node 21-3 retrieves the first object 100A requested for retrieval and transmission from storage 22-3 and transmits it to node 21-1.

次にステップS37では、ノード21-1のリクエスト管理部211は、ステップS31で参照リクエストを送信したユーザが、ステップS36で送信された第1オブジェクト100Aの参照権限を有するかを判定する。リクエスト管理部211は、ステップS31で参照リクエストを送信したユーザが第1オブジェクト100Aの参照権限を有する場合(ステップS37YES)にステップS38に処理を移し、有さない場合(ステップS37NO)にステップS39に処理を移す。 Next, in step S37, the request management unit 211 of node 21-1 determines whether the user who sent the reference request in step S31 has reference authority for the first object 100A sent in step S36. If the user who sent the reference request in step S31 has reference authority for the first object 100A (step S37 YES), the request management unit 211 proceeds to step S38, and if not (step S37 NO), the request management unit 211 proceeds to step S39.

ステップS38では、ノード21-1のリクエスト管理部211は、ノード21-3から受信した第1オブジェクト100Aに含まれる実データ101A及び匿名化カスタムメタデータ102Bを、サーバ1に対して応答する。 In step S38, the request management unit 211 of node 21-1 responds to the server 1 with the actual data 101A and anonymized custom metadata 102B contained in the first object 100A received from node 21-3.

一方ステップS39では、ノード21-1のリクエスト管理部211は、ステップS32で特定したノード21-2に対して、メタデータ管理情報215Tにおいて第1オブジェクト100Aの第1メタデータ103Aに関連付けられている第2オブジェクト100Bの第2メタデータ103Bの情報要求を送信する。 On the other hand, in step S39, the request management unit 211 of node 21-1 sends an information request to node 21-2 identified in step S32 for the second metadata 103B of the second object 100B that is associated with the first metadata 103A of the first object 100A in the metadata management information 215T.

次にステップS40では、ノード21-2のメタデータ管理部213は、メタデータ管理情報215Tに登録されている第2オブジェクト100Bの第2メタデータ103Bの情報をノード21-1に送信する。 Next, in step S40, the metadata management unit 213 of node 21-2 transmits the information of the second metadata 103B of the second object 100B registered in the metadata management information 215T to node 21-1.

次にステップS41では、ノード21-2のメタデータ管理部213は、ステップS40で送信された第2メタデータ103Bの情報に基づいて、第2オブジェクト100Bを保存するノード21-4に、第2オブジェクト100Bの取得・送信を依頼する。ここでは第2オブジェクト100Bを保存するノード21-4は、ステップS40で送信された第2メタデータ103Bの情報に基づいて特定されたとする。 Next, in step S41, the metadata management unit 213 of node 21-2 requests node 21-4, which stores the second object 100B, to acquire and transmit the second object 100B based on the information of the second metadata 103B transmitted in step S40. Here, it is assumed that node 21-4, which stores the second object 100B, has been identified based on the information of the second metadata 103B transmitted in step S40.

次にステップS42では、ノード21-4のストレージ管理部214は、取得・送信依頼された第2オブジェクト100Bを、ストレージ22-4から取得し、ノード21-1に送信する。 Next, in step S42, the storage management unit 214 of node 21-4 retrieves the second object 100B requested for retrieval and transmission from storage 22-4 and transmits it to node 21-1.

次にステップS43では、ノード21-1のリクエスト管理部211は、ノード21-4から受信した第2オブジェクト100Bに含まれる匿名化カスタムメタデータ102Bを、既に取得済みの第1オブジェクト100Aに含まれる実データ101Aと共に、サーバ1に対して応答する。 Next, in step S43, the request management unit 211 of node 21-1 responds to the server 1 with the anonymized custom metadata 102B contained in the second object 100B received from node 21-4, together with the actual data 101A contained in the first object 100A that has already been acquired.

(オブジェクト更新処理)
オブジェクト(オブジェクト内の実データ)の更新処理は、オブジェクトストレージの世代管理機能(Versioning)を有効にしているか無効にしているかで動作が異なる。以下、Versioning無効時とVersioning有効時とを分けて説明する。
(Object update process)
The operation of updating an object (actual data within an object) differs depending on whether the object storage's generation management function (versioning) is enabled or disabled. Below, we will explain the operation when versioning is disabled and when versioning is enabled separately.

(Versioning無効時のオブジェクト更新処理)
図9Aは、実施形態に係るオブジェクト更新処理(Versioning無効時)を示すシーケンス図である。図9Aは、Versioning無効時に、サーバ1からユーザによって行われた実データ101Aの更新リクエストに応じて、実データ101Aを更新用の実データで更新する例を示す。オブジェクト更新処理(Versioning無効時)の実行に先立って、拠点2-1内のストレージ22-3に第1オブジェクト100Aが、ストレージ22-4に第2オブジェクト100Bがそれぞれ格納済みであるとする。
(Object update process when versioning is disabled)
Fig. 9A is a sequence diagram showing an object update process (when versioning is disabled) according to the embodiment. Fig. 9A shows an example of updating the actual data 101A with actual data for update in response to an update request for the actual data 101A made by a user from the server 1 when versioning is disabled. It is assumed that a first object 100A has been stored in the storage 22-3 in the base 2-1 and a second object 100B has been stored in the storage 22-4, respectively, prior to execution of the object update process (when versioning is disabled).

先ずステップS51では、ノード21-1のリクエスト管理部211は、サーバ1からユーザによる第1オブジェクト100Aに含まれる実データ101Aの更新リクエストを受信する。ノード21-1は、DNSラウンドロビン等の負荷分散方法によって、更新リクエストを受信すると決定されたノード21である。 First, in step S51, the request management unit 211 of node 21-1 receives an update request from the server 1 by a user for the actual data 101A included in the first object 100A. Node 21-1 is the node 21 that has been determined to receive the update request by a load balancing method such as DNS round robin.

次にステップS52では、ノード21-1のリクエスト管理部211は、ユーザから指定されたパス(EF)のハッシュ値に基づいて更新対象の第1オブジェクト100Aの第1メタデータ103Aが管理されるリージョンを決定する。そして、リクエスト管理部211は、決定したリージョンとリージョンマップ2151に基づいて正系リージョンを管理するノード21を特定する。ここではノード21-2が特定されたとする。 Next, in step S52, the request management unit 211 of node 21-1 determines the region in which the first metadata 103A of the first object 100A to be updated is managed, based on the hash value of the path (EF) specified by the user. Then, the request management unit 211 identifies the node 21 that manages the original region, based on the determined region and the region map 2151. Here, it is assumed that node 21-2 has been identified.

次にステップS53では、ノード21-1のリクエスト管理部211は、ステップS52で特定したノード21-2に対して、メタデータ管理情報215Tに登録されている第1オブジェクト100Aの第1メタデータ103Aの情報要求を送信する。 Next, in step S53, the request management unit 211 of node 21-1 sends an information request for the first metadata 103A of the first object 100A registered in the metadata management information 215T to the node 21-2 identified in step S52.

次にステップS54では、ノード21-2のメタデータ管理部213は、メタデータ管理情報215Tに登録されている第1オブジェクト100Aの第1メタデータ103Aの情報をノード21-1に送信する。 Next, in step S54, the metadata management unit 213 of node 21-2 transmits the information of the first metadata 103A of the first object 100A registered in the metadata management information 215T to node 21-1.

次にステップS55では、ノード21-2のメタデータ管理部213は、ステップS54で送信された第1メタデータ103Aの情報に基づいて、第1オブジェクト100Aを格納するノード21-3に、第1オブジェクト100Aに含まれる実データ101Aの更新依頼を送信する。ここでは第1オブジェクト100Aを格納するノード21-3は、ステップS54で送信された第1メタデータ103Aの情報に基づいて特定されたとする。 Next, in step S55, the metadata management unit 213 of node 21-2 transmits an update request for the actual data 101A included in the first object 100A to node 21-3 storing the first object 100A based on the information of the first metadata 103A transmitted in step S54. Here, it is assumed that node 21-3 storing the first object 100A has been identified based on the information of the first metadata 103A transmitted in step S54.

次にステップS56では、ノード21-3のストレージ管理部214は、ストレージ22-3に格納されている更新依頼された第1オブジェクト100Aに含まれる実データ101Aを、更新用の実データで更新する。 Next, in step S56, the storage management unit 214 of node 21-3 updates the actual data 101A contained in the first object 100A for which an update request has been made, which is stored in storage 22-3, with the actual data to be updated.

(Versioning有効時のオブジェクト更新処理)
図9Bは、実施形態に係るオブジェクト更新処理(Versioning有効時)を示すシーケンス図である。図9Bは、Versioning有効時に、サーバ1からユーザによって行われた実データ101Aの更新リクエストに応じて、世代管理可能に実データ101Aを更新する(すなわち更新前の実データ101Aと更新用の実データとの両方を保存する)例を示す。オブジェクト更新処理(Versioning有効時)の実行に先立って、拠点2-1内のストレージ22-3に第1オブジェクト100Aが、ストレージ22-4に第2オブジェクト100Bがそれぞれ格納済みであるとする。
(Object update process when versioning is enabled)
Fig. 9B is a sequence diagram showing an object update process (when versioning is enabled) according to the embodiment. Fig. 9B shows an example of updating the actual data 101A in a generationally manageable manner (i.e., storing both the actual data 101A before the update and the actual data for update) in response to an update request for the actual data 101A made by a user from the server 1 when versioning is enabled. It is assumed that, prior to execution of the object update process (when versioning is enabled), the first object 100A has been stored in the storage 22-3 in the base 2-1, and the second object 100B has been stored in the storage 22-4.

図9BのステップS51B~S53Bは、図9AのステップS51~S53と同様である。 Steps S51B to S53B in FIG. 9B are similar to steps S51 to S53 in FIG. 9A.

ステップS54Bでは、ノード21-2のメタデータ管理部213は、ノード21-2内のメタデータ管理情報215Tに登録されている第2オブジェクト100Bの情報のECMを“null”にする。次にステップS55Bでは、ノード21-2のメタデータ管理部213は、ノード21-2内のメタデータ管理情報215Tに登録されている第1オブジェクト100Aの情報のEFとECMを“null”にする。 In step S54B, the metadata management unit 213 of node 21-2 sets the ECM of the information of the second object 100B registered in the metadata management information 215T in node 21-2 to "null." Next, in step S55B, the metadata management unit 213 of node 21-2 sets the EF and ECM of the information of the first object 100A registered in the metadata management information 215T in node 21-2 to "null."

次にステップS56Bでは、ノード21-1,21-2,21-3,21-4は、実データ101Aの更新用の実データとカスタムメタデータを含む第3オブジェクトについてオブジェクト格納時処理(図4)を実行する。ステップS56Bの実行によって、何れかのストレージ22に第3オブジェクトが格納される。 Next, in step S56B, nodes 21-1, 21-2, 21-3, and 21-4 execute the object storage process (FIG. 4) for the third object that includes the actual data for updating the actual data 101A and the custom metadata. By executing step S56B, the third object is stored in one of the storages 22.

次にステップS57Bでは、ノード21-1,21-2,21-3,21-4は、実データ101Aの更新用の実データとカスタムメタデータと第3メタデータとを含む第3オブジェクトについてカスタムメタデータ匿名化処理(図7)を実行する。ステップS57Bの実行によって、何れかのストレージ22に、第3オブジェクトのカスタムメタデータを匿名化した匿名化カスタムメタデータと第4メタデータとを含む第4オブジェクトが格納される。 Next, in step S57B, nodes 21-1, 21-2, 21-3, and 21-4 execute a custom metadata anonymization process (FIG. 7) for a third object including real data for updating real data 101A, custom metadata, and third metadata. By executing step S57B, a fourth object including anonymized custom metadata obtained by anonymizing the custom metadata of the third object and fourth metadata is stored in one of the storages 22.

このように、更新前の第1オブジェクト100Aと第2オブジェクト100Bはそのまま保持され、実データ101Aの更新毎にオブジェクトが追加され履歴として記録されていくので、更新毎にオブジェクトの世代管理ができる。 In this way, the first object 100A and the second object 100B before the update are retained as they are, and each time the actual data 101A is updated, an object is added and recorded as history, allowing for generational management of objects for each update.

(オブジェクト削除処理)
図10は、オブジェクト削除処理を示すシーケンス図である。図10では、サーバ1から受け付けたユーザによるオブジェクトの削除リクエストに応じて、第1メタデータ103A、第2メタデータ103B、第1オブジェクト100A、及び第2オブジェクト100Bを削除する例を示す。
(Object deletion process)
Fig. 10 is a sequence diagram showing an object deletion process. Fig. 10 shows an example in which the first metadata 103A, the second metadata 103B, the first object 100A, and the second object 100B are deleted in response to an object deletion request from a user received from the server 1.

先ずステップS61では、ノード21-1のリクエスト管理部211は、サーバ1からユーザによる第1オブジェクト100Aの削除リクエストを受信する。ノード21-1は、DNSラウンドロビン等の負荷分散方法によって、削除リクエストを受信すると決定されたノードである。 First, in step S61, the request management unit 211 of node 21-1 receives a request from the server 1 to delete the first object 100A by a user. Node 21-1 is the node that has been determined to receive the deletion request by a load balancing method such as DNS round robin.

次にステップS62では、ノード21-1のリクエスト管理部211は、ユーザから指定されたパス(EF)のハッシュ値に基づいて削除対象の第1オブジェクト100Aの第1メタデータ103Aが管理されるリージョンを決定する。そしてリクエスト管理部211は、決定したリージョンとリージョンマップ2151に基づいて正系リージョンを管理するノード21を特定する。ここではノード21-2が特定されたとする。 Next, in step S62, the request management unit 211 of node 21-1 determines the region in which the first metadata 103A of the first object 100A to be deleted is managed, based on the hash value of the path (EF) specified by the user. The request management unit 211 then identifies the node 21 that manages the original region, based on the determined region and the region map 2151. Here, it is assumed that node 21-2 has been identified.

次にステップS63では、ノード21-1のリクエスト管理部211は、ステップS62で特定したノード21-2に対して、メタデータ管理情報215Tに登録されている第1オブジェクト100Aの第1メタデータ103Aの情報の確認要求を送信する。 Next, in step S63, the request management unit 211 of node 21-1 sends a request to node 21-2 identified in step S62 to confirm the information of the first metadata 103A of the first object 100A registered in the metadata management information 215T.

次にステップS64では、ノード21-2のメタデータ管理部213は、メタデータ管理情報215Tにおいて、第1オブジェクト100Aの第1メタデータ103Aに紐付く第2オブジェクト100Bの第2メタデータ103Bの存在を確認する。すなわち、第1メタデータ103AのMaskingが“true”の場合、同一リージョン内のメタデータ管理情報215Tにおいて、第1メタデータ103AのMCMと同一パス値を持つICMを持つ第2メタデータ103Bの削除を開始する。 Next, in step S64, the metadata management unit 213 of node 21-2 checks the metadata management information 215T for the presence of second metadata 103B of the second object 100B linked to the first metadata 103A of the first object 100A. In other words, if Masking of the first metadata 103A is "true", it starts deleting second metadata 103B that has an ICM with the same path value as the MCM of the first metadata 103A in the metadata management information 215T in the same region.

次にステップS65では、ノード21-2のメタデータ管理部213は、ステップS64で削除開始した第2オブジェクト100Bの第2メタデータ103Bの情報を、ノード21-1のリクエスト管理部211に送信する。 Next, in step S65, the metadata management unit 213 of node 21-2 sends the information of the second metadata 103B of the second object 100B, whose deletion was initiated in step S64, to the request management unit 211 of node 21-1.

次にステップS66では、ノード21-2のメタデータ管理部213は、ステップS65で第2メタデータ103Bの情報が送信された第2オブジェクト100Bを格納するノード21-4に、第2オブジェクト100Bの削除を依頼する。ここでは第2オブジェクト100Bを格納するノード21-4は、ステップS65で送信された第2メタデータ103Bの情報に基づいて特定されたとする。 Next, in step S66, the metadata management unit 213 of node 21-2 requests node 21-4, which stores the second object 100B to which the information of the second metadata 103B was transmitted in step S65, to delete the second object 100B. Here, it is assumed that node 21-4, which stores the second object 100B, was identified based on the information of the second metadata 103B transmitted in step S65.

次にステップS67では、ノード21-4のストレージ管理部214は、削除依頼された第2オブジェクト100Bを、ストレージ22-4から削除する。 Next, in step S67, the storage management unit 214 of node 21-4 deletes the second object 100B for which deletion was requested from storage 22-4.

次にステップS68では、ノード21-1のリクエスト管理部211は、第2オブジェクト100Bの削除完了を、ノード21-2のメタデータ管理部213に通知する。 Next, in step S68, the request management unit 211 of node 21-1 notifies the metadata management unit 213 of node 21-2 that the deletion of the second object 100B has been completed.

次にステップS69では、ノード21-2のメタデータ管理部213は、メタデータ管理情報215Tにおいて、第2オブジェクト100Bの第2メタデータ103Bのレコードを削除する。そしてメタデータ管理部213は、第1オブジェクト100Aの第1メタデータ103AのMaskingを“false”、MCMを“null”して第1メタデータ103Aの削除を開始する。 Next, in step S69, the metadata management unit 213 of node 21-2 deletes the record of the second metadata 103B of the second object 100B in the metadata management information 215T. The metadata management unit 213 then sets the Masking of the first metadata 103A of the first object 100A to "false" and the MCM to "null", and starts deleting the first metadata 103A.

次にステップS70では、ノード21-2のメタデータ管理部213は、ステップS69で削除開始した第1オブジェクト100Aの第1メタデータ103Aの情報を、ノード21-1のリクエスト管理部211に送信する。 Next, in step S70, the metadata management unit 213 of node 21-2 sends the information of the first metadata 103A of the first object 100A, whose deletion was initiated in step S69, to the request management unit 211 of node 21-1.

次にステップS71では、ノード21-1のリクエスト管理部211は、ステップS70で第1メタデータ103Aの情報が送信された第1オブジェクト100Aを格納するノード21-3に、第1オブジェクト100Aの削除を依頼する。ここでは第1オブジェクト100Aを格納するノード21-3は、ステップS70で送信された第1メタデータ103Aの情報に基づいて特定されたとする。 Next, in step S71, the request management unit 211 of node 21-1 requests node 21-3, which stores the first object 100A to which the information of the first metadata 103A was transmitted in step S70, to delete the first object 100A. Here, it is assumed that node 21-3 storing the first object 100A was identified based on the information of the first metadata 103A transmitted in step S70.

次にステップS72では、ノード21-3のストレージ管理部214は、削除依頼された第1オブジェクト100Aを、ストレージ22-3から削除する。 Next, in step S72, the storage management unit 214 of node 21-3 deletes the first object 100A for which deletion was requested from storage 22-3.

次にステップS73では、ノード21-1のリクエスト管理部211は、第1オブジェクト100Aの削除完了を、ノード21-2のメタデータ管理部213に通知する。次にステップS74では、ノード21-2のメタデータ管理部213は、メタデータ管理情報215Tにおいて、第1オブジェクト100Aの第1メタデータ103Aのレコードを削除する。 Next, in step S73, the request management unit 211 of node 21-1 notifies the metadata management unit 213 of node 21-2 of the completion of the deletion of the first object 100A. Next, in step S74, the metadata management unit 213 of node 21-2 deletes the record of the first metadata 103A of the first object 100A in the metadata management information 215T.

(データ破損時処理)
図11は、データ破損時処理を示すシーケンス図である。データ破損時処理は、ユーザがサーバ1を介して参照しようとした第1オブジェクト100Aがデータ破損していた場合の処理を示す。図11では、参照対象の第1オブジェクト100Aの第1メタデータ103Aが管理される正系リージョンはノード21-2に存在し、第1オブジェクト100Aはノード21-3のストレージ22-3に格納されているとする。また、第1オブジェクト100Aの複製である第1オブジェクト(複製オブジェクト)100Cが、レプリケーション先の拠点2-2に構築された正環境のレプリケーション環境に保存されている(図1参照)。
(Data corruption handling)
Fig. 11 is a sequence diagram showing the process when data is corrupted. The process when data is corrupted shows the process when the first object 100A that the user is trying to refer to via the server 1 is corrupted. In Fig. 11, the primary region in which the first metadata 103A of the reference target first object 100A is managed exists in the node 21-2, and the first object 100A is stored in the storage 22-3 of the node 21-3. In addition, a first object (replica object) 100C, which is a replica of the first object 100A, is stored in the replication environment of the primary environment constructed at the replication destination base 2-2 (see Fig. 1).

そして正環境である拠点2-1のストレージ22-3に格納されている第1オブジェクト100Aが読み出された際に破損していた場合、副環境の拠点2-2のストレージ22-3に格納されている第1オブジェクト100Cが取得される。また、第1メタデータ103Aは、第1オブジェクト100Aのハッシュ値を予め保持しているものとする。 If the first object 100A stored in the storage 22-3 of the base 2-1, which is the primary environment, is found to be corrupted when it is read, the first object 100C stored in the storage 22-3 of the base 2-2, which is the secondary environment, is obtained. Also, the first metadata 103A is assumed to hold in advance the hash value of the first object 100A.

先ずステップS81では、ノード21-1のリクエスト管理部211は、サーバ1から受信したユーザの参照リクエストで指定されたパス(EF)のハッシュ値に基づいて参照対象の第1オブジェクト100Aの第1メタデータ103Aが管理されるリージョンを決定する。そして、リクエスト管理部211は、決定したリージョンとリージョンマップ2151に基づいて正系リージョンを管理するノード21-2を特定する。ここではノード21-2が特定されたとする。そしてリクエスト管理部211は、特定したノード21-2に対して、第1オブジェクト100Aの第1メタデータ103Aの情報要求を送信する。 First, in step S81, the request management unit 211 of node 21-1 determines the region in which the first metadata 103A of the referenced first object 100A is managed, based on the hash value of the path (EF) specified in the user's reference request received from server 1. The request management unit 211 then identifies node 21-2, which manages the original region, based on the determined region and the region map 2151. Here, it is assumed that node 21-2 has been identified. The request management unit 211 then sends an information request for the first metadata 103A of the first object 100A to the identified node 21-2.

次にステップS82では、ノード21-2のメタデータ管理部213は、ノード21-2のDB215から要求対象の第1オブジェクト100A(ObjectA)の第1メタデータ103Aの情報を読み込み、ノード21-1のリクエスト管理部211に送信する。 Next, in step S82, the metadata management unit 213 of node 21-2 reads the information of the first metadata 103A of the first object 100A (ObjectA) that is the target of the request from the DB 215 of node 21-2, and transmits it to the request management unit 211 of node 21-1.

次にステップS83では、ノード21-1のリクエスト管理部211は、第1オブジェクト100A(ObjectA)が保存されたストレージ22-3に接続されたノード21-3に第1オブジェクト100A(ObjectA)の取得を依頼する。ここでは第1オブジェクト100A(ObjectA)を格納するノード21-3は、ステップS82で送信された第1メタデータ103Aの情報に基づいて特定されたとする。 Next, in step S83, the request management unit 211 of node 21-1 requests node 21-3, which is connected to storage 22-3 in which the first object 100A (ObjectA) is saved, to acquire the first object 100A (ObjectA). Here, it is assumed that node 21-3 storing the first object 100A (ObjectA) has been identified based on the information of the first metadata 103A transmitted in step S82.

次にステップS84では、ノード21-3のストレージ管理部214は、ストレージ22-3から第1オブジェクト100A(ObjectA)を取得し、ノード21-1のリクエスト管理部211に送信する。 Next, in step S84, the storage management unit 214 of node 21-3 obtains the first object 100A (ObjectA) from storage 22-3 and sends it to the request management unit 211 of node 21-1.

次にステップS85では、ノード21-1のリクエスト管理部211は、ステップS84で送信された第1オブジェクト100Aのハッシュ値を算出する。そしてリクエスト管理部211は、ステップS82で送信された第1メタデータ103Aに保持されている第1オブジェクト100A(ObjectA)のハッシュ値と、算出した第1オブジェクト100Aのハッシュ値とを比較する。そしてリクエスト管理部211は、第1メタデータ103Aに保持されている第1オブジェクト100Aのハッシュ値と、算出したハッシュ値が異なる(異常である)場合(ステップS85YES)にステップS86に処理を移す。一方、リクエスト管理部211は、一致する(正常である)場合(ステップS85NO)に、サーバ1に、第1オブジェクト100Aを以って応答し、本データ破損時処理を終了する。 Next, in step S85, the request management unit 211 of node 21-1 calculates the hash value of the first object 100A transmitted in step S84. The request management unit 211 then compares the hash value of the first object 100A (ObjectA) stored in the first metadata 103A transmitted in step S82 with the calculated hash value of the first object 100A. If the hash value of the first object 100A stored in the first metadata 103A and the calculated hash value are different (abnormal) (step S85 YES), the request management unit 211 proceeds to step S86. On the other hand, if they match (normal) (step S85 NO), the request management unit 211 responds to the server 1 with the first object 100A, and ends this data corruption processing.

ステップS86では、ノード21-1のリクエスト管理部211は、第1メタデータ103Aを参照し、第1オブジェクト100A(ObjectA)の複製である第1オブジェクト100C(ObjectC)が管理されるレプリケーション環境のリージョンを確認する。そして、リクエスト管理部211は、レプリケーション環境(拠点2-1)の第1オブジェクト100C(ObjectC)が管理されるリージョンに、拠点間接続にて接続する。 In step S86, the request management unit 211 of node 21-1 refers to the first metadata 103A and checks the region of the replication environment in which the first object 100C (Object C), which is a copy of the first object 100A (Object A), is managed. The request management unit 211 then connects to the region in which the first object 100C (Object C) of the replication environment (base 2-1) is managed via an inter-base connection.

次にステップS87では、拠点2-2において、ノード21-1のリクエスト管理部211は、ユーザから指定されたパス(EF)のハッシュ値に基づいて接続対象の第1オブジェクト100Cの第1メタデータ103Cが管理されるリージョンを決定する。ノード21-1は、DNSラウンドロビン等の負荷分散手法を用いて決定されたノード21である。そして、ノード21-1のリクエスト管理部211は、決定したリージョンとリージョンマップ2151に基づいて正系リージョンを管理するノード21-2を特定する。ここではノード21-2が特定されたとする。そして拠点2-2のノード21-1のリクエスト管理部211は、特定したノード21-2に対して、第1オブジェクト100Cの第1メタデータ103Cの情報要求を送信する。 Next, in step S87, the request management unit 211 of node 21-1 at base 2-2 determines the region in which the first metadata 103C of the first object 100C to be connected is managed, based on the hash value of the path (EF) specified by the user. Node 21-1 is the node 21 determined using a load balancing method such as DNS round robin. Then, the request management unit 211 of node 21-1 identifies node 21-2 that manages the primary region, based on the determined region and region map 2151. Here, it is assumed that node 21-2 has been identified. Then, the request management unit 211 of node 21-1 at base 2-2 transmits an information request for the first metadata 103C of the first object 100C to the identified node 21-2.

次にステップS88では、拠点2-2において、ノード21-2のメタデータ管理部213は、ノード21-2のDB215から情報要求対象の第1オブジェクト100C(ObjectC)の第1メタデータ103Cの情報を読み込む。メタデータ管理部213は、第1メタデータ103Cの情報をノード21-1のリクエスト管理部211に送信する。 Next, in step S88, at base 2-2, the metadata management unit 213 of node 21-2 reads the information of the first metadata 103C of the first object 100C (Object C) that is the subject of the information request from the DB 215 of node 21-2. The metadata management unit 213 sends the information of the first metadata 103C to the request management unit 211 of node 21-1.

次にステップS89では、ノード21-1のリクエスト管理部211は、第1オブジェクト100C(ObjectC)が格納されたストレージ22-3に接続されたノード21-3に第1オブジェクト100C(ObjectC)の取得を依頼する。ここでは第1オブジェクト100C(ObjectC)を格納するノード21-3は、ステップS88で送信された第1メタデータ103Cの情報に基づいて特定されたとする。 Next, in step S89, the request management unit 211 of node 21-1 requests node 21-3, which is connected to storage 22-3 in which the first object 100C (ObjectC) is stored, to acquire the first object 100C (ObjectC). Here, it is assumed that node 21-3 storing the first object 100C (ObjectC) has been identified based on the information of the first metadata 103C transmitted in step S88.

次にステップS90では、ノード21-3のストレージ管理部214は、ストレージ22-3から第1オブジェクト100C(ObjectC)を取得し、ノード21-1のリクエスト管理部211に送信する。 Next, in step S90, the storage management unit 214 of node 21-3 obtains the first object 100C (ObjectC) from storage 22-3 and sends it to the request management unit 211 of node 21-1.

次にステップS91では、ノード21-1のリクエスト管理部211は、ストレージ22-3が接続されるノード21-3から受信した第1オブジェクト100C(ObjectC)を、要求元である拠点2-1のノード21-1のリクエスト管理部211に転送する。拠点2-1のノード21-1のリクエスト管理部211は、第1オブジェクト100A(ObjectA)の代替として、拠点2-2のノード21-1のリクエスト管理部211から受信した第1オブジェクト100C(ObjectC)を以ってサーバ1に応答する。 Next, in step S91, the request management unit 211 of node 21-1 transfers the first object 100C (Object C) received from node 21-3 to which storage 22-3 is connected to the request management unit 211 of node 21-1 at base 2-1, which is the request source. The request management unit 211 of node 21-1 at base 2-1 responds to server 1 with the first object 100C (Object C) received from the request management unit 211 of node 21-1 at base 2-2 as a substitute for the first object 100A (Object A).

このようにカスタムメタデータ102Aの匿名化を行っても、従来のオブジェクトストレージと同様に、レプリケーション機能を利用することができる。 Even if custom metadata 102A is anonymized in this way, the replication function can be used in the same way as with conventional object storage.

(実施形態の効果)
上述の実施形態では、第1オブジェクト100Aのみで実データ101Aを管理し、匿名化カスタムメタデータ102Bを含む第2オブジェクト100Bは第1オブジェクト100Aの実データを参照させる。よって、カスタムメタデータの匿名化前の第1オブジェクト100Aの更新と同時に、カスタムメタデータの匿名化後の第2オブジェクト100Bにもこの更新を反映させることができ、データ管理を複雑化することなく行うことができる。また、匿名化カスタムメタデータ102Bを含む第2オブジェクト100Bを第1オブジェクト100Aから独立して管理するため、第2オブジェクト100Bを削除することで、匿名化カスタムメタデータ102Bのみを削除することができる。
(Effects of the embodiment)
In the above embodiment, the actual data 101A is managed only by the first object 100A, and the second object 100B including the anonymized custom metadata 102B refers to the actual data of the first object 100A. Therefore, when the first object 100A before the anonymization of the custom metadata is updated, the update can be reflected in the second object 100B after the anonymization of the custom metadata at the same time, without complicating data management. In addition, since the second object 100B including the anonymized custom metadata 102B is managed independently of the first object 100A, only the anonymized custom metadata 102B can be deleted by deleting the second object 100B.

また、第1メタデータ103A及び第2メタデータ103Bの管理を同一のリージョンのメタデータ管理情報215Tで行うことで、第1オブジェクト100A及び第2オブジェクト100Bの各メタデータで相互の情報を検索できる。また、メタデータ103に“Masking”のフラグを持たせ、第1オブジェクト100Aの更新の際、メタデータ103を管理するメタデータ管理情報215Tを参照することで、第1オブジェクト100Aと連携する第2オブジェクト100Bの更新処理を行うことができる。 In addition, by managing the first metadata 103A and the second metadata 103B in the metadata management information 215T of the same region, it is possible to search for mutual information in the metadata of the first object 100A and the second object 100B. In addition, by giving the metadata 103 a "Masking" flag and referencing the metadata management information 215T that manages the metadata 103 when updating the first object 100A, it is possible to perform update processing for the second object 100B that is linked to the first object 100A.

また、オブジェクト更新処理の実行後に、第2オブジェクト100Bの更新が実行される際、メタデータ管理情報215Tにおいて第2オブジェクト100Bの新たな第2メタデータ103Bを管理するレコードが追記されていく。このように、更新前の第2メタデータ103Bの履歴が記録されるので、第1オブジェクト100A及び第2オブジェクト100Bの世代管理が行える。このように、実施形態では、従来のオブジェクトストレージの機能(Versioningやレプリケーションなど)を利用することができる。 Furthermore, when the second object 100B is updated after the object update process is executed, a record that manages new second metadata 103B for the second object 100B is added to the metadata management information 215T. In this way, the history of the second metadata 103B before the update is recorded, so that generation management of the first object 100A and the second object 100B can be performed. In this way, in the embodiment, conventional object storage functions (such as versioning and replication) can be used.

(実施形態の変形例)
図12は、実施形態の変形例の説明図である。上述の実施形態では、匿名化カスタムメタデータ102Bを、ダミーデータ101Bと第2メタデータ103Bを含む第2オブジェクト100Bに含めて、第1メタデータ103Aを含む第1オブジェクト100Aとは異なるオブジェクトで管理するとした。
(Modification of the embodiment)
12 is an explanatory diagram of a modified example of the embodiment. In the above-described embodiment, the anonymized custom metadata 102B is included in the second object 100B including the dummy data 101B and the second metadata 103B, and is managed in an object different from the first object 100A including the first metadata 103A.

しかし匿名化カスタムメタデータ102Bの管理方法は、実施形態のものに限られない。すなわち変形例1として、匿名化カスタムメタデータ102Bを、実データ101Aと第2メタデータ103Bと共に第2オブジェクト100Bに含めて、第1オブジェクト100Aとは異なるオブジェクトで管理してもよい。 However, the method of managing the anonymized custom metadata 102B is not limited to that described in the embodiment. That is, as a first modification, the anonymized custom metadata 102B may be included in the second object 100B together with the actual data 101A and the second metadata 103B, and managed in an object different from the first object 100A.

変形例1では、実施形態で説明したカスタムメタデータ匿名化処理(図7)と比較して、次の点が異なる。すなわち、第2オブジェクト100Bの第2メタデータ103Bの作成の際に、実データ101Aの参照パスとして、第1オブジェクト100Aの格納パスを第2メタデータ103Bに含めない。また、カスタムメタデータ匿名化処理において、第2オブジェクト100Bをストレージ22に格納する際に、第2オブジェクト100Bに実データ101Aを含める。 In the first variant, the following points are different from the custom metadata anonymization process ( FIG. 7 ) described in the embodiment. That is, when creating the second metadata 103B of the second object 100B, the storage path of the first object 100A is not included in the second metadata 103B as a reference path of the actual data 101A. Also, in the custom metadata anonymization process, when the second object 100B is stored in the storage 22, the actual data 101A is included in the second object 100B.

また、変形例1では、実施形態で説明したデータアクセス処理(図8)と比較して、次の点が異なる。すなわち、サーバ1からの参照リクエストに対して、ユーザがカスタムメタデータ102Aの参照権限を有する場合に、第1オブジェクト100Aを取得して第1オブジェクト100Aの実データ101A及びカスタムメタデータ102Aをサーバ1に応答する。一方、サーバ1からの参照リクエストに対して、ユーザがカスタムメタデータ102Aの参照権限を有さない場合に、第2オブジェクト100Bを取得して第2オブジェクト100Bの実データ101A及び匿名化カスタムメタデータ102Bをサーバ1に応答する。 Moreover, in the first variant, the data access process (FIG. 8) described in the embodiment is different in the following respects. That is, in response to a reference request from the server 1, if the user has the authority to reference the custom metadata 102A, the first object 100A is acquired and the actual data 101A and the custom metadata 102A of the first object 100A are returned to the server 1. On the other hand, in response to a reference request from the server 1, if the user does not have the authority to reference the custom metadata 102A, the second object 100B is acquired and the actual data 101A and the anonymized custom metadata 102B of the second object 100B are returned to the server 1.

また、変形例1では、実施形態で説明したオブジェクト更新処理(図9A及び図9B)と比較して、次の点が異なる。すなわち、実データ101Aの更新の際には、第1オブジェクト100A及び第2オブジェクト100Bの両方に対して更新を反映する。 Moreover, in variant 1, the following points are different from the object update process (FIGS. 9A and 9B) described in the embodiment. That is, when updating the actual data 101A, the update is reflected in both the first object 100A and the second object 100B.

また、変形例1では、実施形態で説明したデータ破損時処理(図11)と異なり、第1オブジェクト100Aの破損の際に、実データ101Aを、第1オブジェクト100Aが格納される拠点2内に格納される第2オブジェクト100Bから取得してもよい。 In addition, in variant example 1, unlike the data corruption processing described in the embodiment (FIG. 11), when the first object 100A is corrupted, the actual data 101A may be obtained from the second object 100B stored in the base 2 where the first object 100A is stored.

以上の差異以外は、変形例1における処理は実施形態と同様である。 Other than the above differences, the processing in variant 1 is the same as in the embodiment.

または変形例2として、匿名化カスタムメタデータ102Bを、実データ101A、カスタムメタデータ102A、及び第1メタデータ103Aと同じ第1オブジェクト100Aに追加して管理してもよい。 Or, as a second variant, the anonymized custom metadata 102B may be added to and managed in the same first object 100A as the actual data 101A, the custom metadata 102A, and the first metadata 103A.

変形例2では、実施形態で説明したカスタムメタデータ匿名化処理(図7)と比較して、次の点が異なる。すなわち、第2オブジェクト100Bを作成せず、匿名化カスタムメタデータ102Bを、第1オブジェクト100Aに追加する。 In the second modification, the following points are different from the custom metadata anonymization process (FIG. 7) described in the embodiment. That is, the second object 100B is not created, and the anonymized custom metadata 102B is added to the first object 100A.

また、変形例2では、実施形態で説明したデータアクセス処理(図8)と比較して、次の点が異なる。すなわち、サーバ1からの参照リクエストに対して、ユーザがカスタムメタデータ102Aの参照権限を有さない場合に、第1オブジェクト100Aの実データ101A及び匿名化カスタムメタデータ102Bをサーバ1に応答する。 Moreover, in the second variant, the following points are different from the data access process (FIG. 8) described in the embodiment. That is, in response to a reference request from the server 1, if the user does not have the authority to reference the custom metadata 102A, the actual data 101A and the anonymized custom metadata 102B of the first object 100A are responded to the server 1.

また、変形例2では、実施形態で説明したオブジェクト削除処理(図10)と比較して、第2オブジェクト100Bは存在しないので第2オブジェクト100Bの削除処理は行われず、第1オブジェクト100Aの削除処理のみが行われる。 In addition, in variant example 2, compared to the object deletion process (Figure 10) described in the embodiment, since the second object 100B does not exist, the deletion process of the second object 100B is not performed, and only the deletion process of the first object 100A is performed.

以上の差異以外は、変形例2における処理は実施形態と同様である。 Other than the above differences, the processing in variant 2 is the same as in the embodiment.

(コンピュータ1000のハードウェア)
図13は、各ノード21を実現するコンピュータ1000のハードウェア図である。
(Hardware of Computer 1000)
FIG. 13 is a hardware diagram of a computer 1000 that realizes each node 21.

コンピュータ1000は、バス等の内部通信線1009を介して相互に接続されたCPUをはじめとするプロセッサ1001、主記憶装置1002、補助記憶装置1003、ネットワークインタフェース1004、入力装置1005、及び出力装置1006を備える。 The computer 1000 includes a processor 1001 including a CPU, a main memory device 1002, an auxiliary memory device 1003, a network interface 1004, an input device 1005, and an output device 1006, all of which are interconnected via an internal communication line 1009 such as a bus.

プロセッサ1001は、コンピュータ1000全体の動作制御を司る。また主記憶装置1002は、例えば揮発性の半導体メモリから構成され、プロセッサ1001のワークメモリとして利用される。補助記憶装置1003は、ハードディスク装置、SSD(Solid State Drive)、又はフラッシュメモリ等の大容量の不揮発性の記憶装置から構成され、各種プログラムやデータを長期間保持するために利用される。 The processor 1001 controls the operation of the entire computer 1000. The main memory device 1002 is composed of, for example, a volatile semiconductor memory, and is used as a work memory for the processor 1001. The auxiliary memory device 1003 is composed of a large-capacity non-volatile memory device such as a hard disk device, SSD (Solid State Drive), or flash memory, and is used to store various programs and data for long periods of time.

補助記憶装置1003に格納された実行可能プログラム1100がコンピュータ1000の起動時や必要時に主記憶装置1002にロードされ、プロセッサ1001によって実行されることで、各種処理を実行する各システムが実現される。 The executable program 1100 stored in the auxiliary storage device 1003 is loaded into the main storage device 1002 when the computer 1000 is started up or when necessary, and is executed by the processor 1001 to realize each system that performs various processes.

なお、実行可能プログラム1100は、非一時的記録媒体に記録され、媒体読み取り装置によって非一時的記録媒体から読み出されて、主記憶装置1002にロードされてもよい。または、実行可能プログラム1100は、ネットワークを介して外部のコンピュータから取得されて、主記憶装置1002にロードされてもよい。 The executable program 1100 may be recorded on a non-transitory recording medium, read from the non-transitory recording medium by a media reading device, and loaded into the main memory device 1002. Alternatively, the executable program 1100 may be obtained from an external computer via a network and loaded into the main memory device 1002.

ネットワークインタフェース1004は、コンピュータ1000をシステム内の各ネットワークに接続する、あるいは他のコンピュータと通信するためのインタフェース装置である。ネットワークインタフェース1004は、例えば、有線LAN(Local Area Network)や無線LAN等のNIC(Network Interface Card)から構成される。 The network interface 1004 is an interface device for connecting the computer 1000 to each network in the system or for communicating with other computers. The network interface 1004 is composed of, for example, a NIC (Network Interface Card) for a wired LAN (Local Area Network) or a wireless LAN.

入力装置1005は、キーボードや、マウス等のポインティングデバイス等から構成され、ユーザがコンピュータ1000に各種指示や情報を入力するために利用される。出力装置1006は、例えば、液晶ディスプレイ又は有機EL(Electro Luminescence)ディスプレイ等の表示装置や、スピーカ等の音声出力装置から構成され、必要時に必要な情報をユーザに提示するために利用される。 The input device 1005 is composed of a keyboard, a pointing device such as a mouse, and the like, and is used by the user to input various instructions and information to the computer 1000. The output device 1006 is composed of a display device such as a liquid crystal display or an organic EL (Electro Luminescence) display, and an audio output device such as a speaker, and is used to present the necessary information to the user when necessary.

以上、本発明の一実施形態について詳述したが、本発明は上述の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、上述の実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また上述の実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 Although one embodiment of the present invention has been described above in detail, the present invention is not limited to the above-described embodiment, and various modifications are possible without departing from the spirit of the present invention. For example, the above-described embodiment has been described in detail to clearly explain the present invention, and is not necessarily limited to having all of the configurations described. In addition, it is possible to add, delete, or replace part of the configuration of the above-described embodiment with other configurations.

また上述の実施形態における各構成、機能部、処理部、処理手段等は、それらの一部又は全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また上述の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD(Solid State Drive)等の記録装置、ICカード、SDカード、DVD等の記録媒体に置くことができる。 Furthermore, each of the configurations, functional units, processing units, processing means, etc. in the above-mentioned embodiments may be realized in part or in whole in hardware, for example by designing them as integrated circuits. Furthermore, each of the above-mentioned configurations, functions, etc. may be realized in software by a processor interpreting and executing a program that realizes each function. Information such as the programs, tables, files, etc. that realize each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), an IC card, an SD card, a DVD, or other recording media.

また上述の実施形態の各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。例えば、実際には殆ど全ての構成が相互に接続されていると考えてもよい。 In addition, in each diagram of the above-mentioned embodiment, the control lines and information lines shown are those considered necessary for explanation, and do not necessarily show all the control lines and information lines in the implementation. For example, it may be considered that almost all components are actually connected to each other.

また上述の実施形態で説明した情報処理システムSの各機能及びデータの配置形態は一例に過ぎない。情報処理システムSの各拠点2内の複数のノード21及びストレージ22は、マルチノードシステムを構成するが、マルチノードシステム以外の構成でもよい。また、情報処理システムSの機能及びデータの配置形態は、ハードウェアやソフトウェアの性能、処理効率、通信効率等の観点から最適な配置形態に変更し得る。また、上述の実施形態で説明した各処理ステップは、処理結果が同一である限り実行順序を入れ替えることができる。 Furthermore, the arrangement of each function and data of the information processing system S described in the above embodiment is merely one example. The multiple nodes 21 and storage 22 in each base 2 of the information processing system S constitute a multi-node system, but configurations other than a multi-node system are also possible. Furthermore, the arrangement of the functions and data of the information processing system S can be changed to an optimal arrangement in terms of hardware and software performance, processing efficiency, communication efficiency, etc. Furthermore, the order of execution of each processing step described in the above embodiment can be changed as long as the processing result is the same.

また前述した各種のデータを格納するデータベースの構成(スキーマ(Schema)等)は、リソースの効率的な利用、処理効率向上、アクセス効率向上、検索効率向上等の観点から柔軟に変更し得る。 In addition, the structure of the database (schema, etc.) that stores the various types of data mentioned above can be flexibly changed from the perspective of efficient use of resources, improved processing efficiency, improved access efficiency, improved search efficiency, etc.

S:情報処理システム、1:サーバ、2,2-1,2-2:拠点、21,21-1,21-2,21-3,21-4:ノード、22,22-1,22-2,22-3,22-4:ストレージ、100A:第1オブジェクト、101A:実データ、102A:カスタムメタデータ、103A:第1メタデータ、100B:第2オブジェクト、101B:ダミーデータ、102B:匿名化カスタムメタデータ、103B:第2メタデータ、211:リクエスト管理部、212:サービス管理部、213:メタデータ管理部、214:ストレージ管理部、215:DB、215T:メタデータ管理情報、1000:コンピュータ、1001:プロセッサ、1002:主記憶装置。
S: information processing system, 1: server, 2, 2-1, 2-2: bases, 21, 21-1, 21-2, 21-3, 21-4: nodes, 22, 22-1, 22-2, 22-3, 22-4: storage, 100A: first object, 101A: actual data, 102A: custom metadata, 103A: first metadata, 100B: second object, 101B: dummy data, 102B: anonymized custom metadata, 103B: second metadata, 211: request management unit, 212: service management unit, 213: metadata management unit, 214: storage management unit, 215: DB, 215T: metadata management information, 1000: computer, 1001: processor, 1002: main memory device.

Claims (10)

オブジェクトが格納される記憶領域を有する計算機システムが実行するオブジェクト管理方法であって、
前記計算機システムは、メモリと協働するプロセッサとデータベースとを有し、
前記プロセッサが、
ユーザによるカスタマイズ可能なメタデータであるカスタムメタデータが付与された実データを前記記憶領域に格納する格納リクエストに応じて、該実データと該カスタムメタデータを含んだ第1オブジェクトを前記記憶領域に格納し、
前記カスタムメタデータを匿名化した匿名化カスタムメタデータを作成し、
前記匿名化カスタムメタデータを含んだ第2オブジェクトを前記記憶領域に格納し、
前記格納リクエストに応じて、前記第1オブジェクトの格納先情報を有する第1メタデータを作成して前記データベースに登録し、
前記第1オブジェクトに前記第1メタデータを含めて前記記憶領域に格納し、
前記データベースに登録されている前記第1メタデータに基づいて前記記憶領域から前記カスタムメタデータを取得し、
前記実データを含まず前記匿名化カスタムメタデータを含んだ前記第2オブジェクトを前記記憶領域に格納する
各処理を含んだことを特徴とするオブジェクト管理方法。
1. An object management method executed by a computer system having a storage area in which objects are stored, comprising:
the computer system includes a processor and a database in cooperation with a memory;
The processor,
storing, in the storage area, a first object including actual data to which custom metadata, which is metadata customizable by a user, is added, in the storage area in response to a storage request for storing the actual data in the storage area, the custom metadata being customizable by a user;
creating anonymized custom metadata by anonymizing the custom metadata;
storing a second object in the storage area , the second object including the anonymized custom metadata;
In response to the storage request, a first metadata including storage destination information of the first object is generated and registered in the database;
storing the first object in the storage area including the first metadata;
acquiring the custom metadata from the storage area based on the first metadata registered in the database;
The second object, which does not include the actual data but includes the anonymized custom metadata, is stored in the storage area.
The object management method includes each of the processes.
請求項に記載のオブジェクト管理方法であって、
前記プロセッサが、
前記実データを含む前記第1オブジェクトの格納先情報と、前記第2オブジェクトの格納先情報とを有する第2メタデータを作成して前記データベースに登録し、
前記第2オブジェクトに前記第2メタデータを含めて前記記憶領域に格納する
各処理を含んだことを特徴とするオブジェクト管理方法。
2. The object management method according to claim 1 ,
The processor,
creating second metadata having storage destination information of the first object including the actual data and storage destination information of the second object, and registering the second metadata in the database;
and storing the second object in the storage area while including the second metadata in the second object.
請求項に記載のオブジェクト管理方法であって、
前記プロセッサが、
前記第1オブジェクトを参照する参照リクエストに応じて、該参照リクエストを出したリクエストユーザの権限を確認し、
前記リクエストユーザが前記カスタムメタデータを参照する権限を有する場合に、前記データベースに登録されている前記第1メタデータに基づいて前記記憶領域から前記第1オブジェクトを取得し、取得した前記第1オブジェクトを以って前記参照リクエストに対して応答し、
前記リクエストユーザが前記カスタムメタデータを参照する権限を有さない場合に、前記データベースに登録されている前記第2メタデータに基づいて、前記記憶領域から前記実データ及び前記匿名化カスタムメタデータを取得し、取得した該実データ及び該匿名化カスタムメタデータを含んだオブジェクトを以って前記参照リクエストに対して応答する
各処理を含んだことを特徴とするオブジェクト管理方法。
3. The object management method according to claim 2 , further comprising:
The processor,
In response to a reference request for referencing the first object, verify the authority of a requesting user who issued the reference request;
If the requesting user has an authority to reference the custom metadata, retrieve the first object from the storage area based on the first metadata registered in the database, and respond to the reference request with the retrieved first object;
retrieving the actual data and the anonymized custom metadata from the storage area based on the second metadata registered in the database when the requesting user does not have the authority to reference the custom metadata, and responding to the reference request with an object including the retrieved actual data and the anonymized custom metadata.
請求項に記載のオブジェクト管理方法であって、
前記第1メタデータは、前記匿名化カスタムメタデータを含む前記第2オブジェクトの格納先情報を有する
ことを特徴とするオブジェクト管理方法。
3. The object management method according to claim 2 , further comprising:
The object management method according to claim 1, wherein the first metadata includes storage destination information of the second object including the anonymized custom metadata.
請求項に記載のオブジェクト管理方法であって、
前記プロセッサが、
前記第1オブジェクトを削除する削除リクエストに応じて、前記データベースにおいて前記第1メタデータに含まれる前記匿名化カスタムメタデータの格納先情報と同一値を有する前記第2メタデータを特定し、特定した該第2メタデータに基づいて、前記記憶領域に格納されている前記第2オブジェクトを削除し、
前記データベースに登録されている前記第1メタデータに基づいて、前記記憶領域に格納されている前記第1オブジェクトを削除する
各処理を含んだことを特徴とするオブジェクト管理方法。
5. An object management method according to claim 4 , further comprising the steps of:
The processor,
In response to a deletion request for deleting the first object, the second metadata having the same value as storage destination information of the anonymized custom metadata included in the first metadata in the database is identified, and the second object stored in the storage area is deleted based on the identified second metadata;
and deleting the first object stored in the storage area based on the first metadata registered in the database.
請求項に記載のオブジェクト管理方法であって、
前記プロセッサが、
前記第2オブジェクトを先に削除し、該第2オブジェクトの削除完了後に前記第1オブジェクトを削除する
ことを特徴とするオブジェクト管理方法
6. An object management method according to claim 5 , further comprising the steps of:
The processor,
a second object is deleted first, and the first object is deleted after the second object has been deleted.
請求項に記載のオブジェクト管理方法であって、
前記プロセッサが、
前記実データのハッシュ値と、前記第1オブジェクトを複製した複製オブジェクトを格納するレプリケーション先の計算機システムにおける格納先情報とを前記第1メタデータに含めて前記データベースに登録し、
前記第1オブジェクトを参照する参照リクエストに応じて、前記データベースに登録されている前記第1メタデータに基づいて前記記憶領域から前記第1オブジェクトを取得し、
取得した前記第1オブジェクトのハッシュ値を算出し、
算出した前記ハッシュ値と、前記データベースに登録されている前記ハッシュ値とを比較し、
比較した2つの前記ハッシュ値が異なる場合に、前記データベースに登録されている前記第1メタデータに基づいて、前記レプリケーション先の計算機システムが有する記憶領域から、前記第1オブジェクトの前記複製オブジェクトを取得し、
前記第1オブジェクトを代替して、前記レプリケーション先の計算機システムから取得した前記複製オブジェクトを以って前記参照リクエストに対して応答する
各処理を含んだことを特徴とするオブジェクト管理方法。
2. The object management method according to claim 1 ,
The processor,
registering, in the database, a hash value of the actual data and storage destination information in a replication destination computer system that stores a replicated object obtained by replicating the first object, in the first metadata;
In response to a reference request for referencing the first object, the first object is retrieved from the storage area based on the first metadata registered in the database;
Calculating a hash value of the acquired first object;
comparing the calculated hash value with the hash value registered in the database;
if the two compared hash values are different, acquiring the replicated object of the first object from a storage area of the replication destination computer system based on the first metadata registered in the database;
and responding to said reference request with said replicated object acquired from said replication destination computer system in place of said first object.
請求項に記載のオブジェクト管理方法であって、
前記プロセッサが、
前記第1オブジェクトに含まれる前記実データを更新実データで更新する更新リクエストの受信に際して、
前記実データと前記更新実データの両方を保存する前記実データの世代管理機能が有効である場合には、
前記更新実データと前記カスタムメタデータを含んだ第3オブジェクトの格納先情報を有する第3メタデータを作成して前記データベースに登録し、
前記第3オブジェクトに前記第3メタデータを含めて前記記憶領域に格納し、
前記データベースに登録されている前記第3メタデータに基づいて前記記憶領域から前記カスタムメタデータを取得し、
前記第3メタデータに基づいて前記記憶領域から取得した前記カスタムメタデータを匿名化した匿名化カスタムメタデータを作成し、
前記更新実データを含まず、前記第3メタデータに基づいて前記記憶領域から取得した前記カスタムメタデータを匿名化した前記匿名化カスタムメタデータを含んだ第4オブジェクトを前記記憶領域に格納し、
前記世代管理機能が無効である場合には、
前記データベースに登録されている前記第1メタデータに基づいて前記第1オブジェクトを前記更新実データで更新する
各処理を含んだことを特徴とするオブジェクト管理方法。
2. The object management method according to claim 1 ,
The processor,
upon receiving an update request to update the actual data included in the first object with updated actual data,
When a generation management function for the actual data that stores both the actual data and the updated actual data is valid,
creating third metadata having storage destination information of a third object including the updated actual data and the custom metadata, and registering the third metadata in the database;
storing the third object in the storage area including the third metadata;
acquiring the custom metadata from the storage area based on the third metadata registered in the database;
creating anonymized custom metadata by anonymizing the custom metadata acquired from the storage area based on the third metadata;
storing, in the storage area, a fourth object that does not include the updated actual data and that includes the anonymized custom metadata obtained by anonymizing the custom metadata acquired from the storage area based on the third metadata;
If the generation management function is disabled,
updating the first object with the updated actual data based on the first metadata registered in the database.
オブジェクトが格納される記憶領域とデータベースとを有する計算機システムであって、
ユーザによるカスタマイズ可能なメタデータであるカスタムメタデータが付与された実データを前記記憶領域に格納する格納リクエストに応じて、該実データと該カスタムメタデータを含んだ第1オブジェクトを前記記憶領域に格納する記憶領域管理部と、
前記カスタムメタデータを匿名化した匿名化カスタムメタデータを作成するサービス管理部と、を有し、
前記記憶領域管理部は、
前記匿名化カスタムメタデータを含んだ第2オブジェクトを前記記憶領域に格納し、
前記格納リクエストに応じて、前記第1オブジェクトの格納先情報を有する第1メタデータを作成して前記データベースに登録し、
前記第1オブジェクトに前記第1メタデータを含めて前記記憶領域に格納し、
前記データベースに登録されている前記第1メタデータに基づいて前記記憶領域から前記カスタムメタデータを取得し、
前記実データを含まず前記匿名化カスタムメタデータを含んだ前記第2オブジェクトを前記記憶領域に格納する
ことを特徴とする計算機システム。
A computer system having a storage area and a database in which objects are stored,
a storage area management unit that, in response to a storage request for storing actual data to which custom metadata, which is metadata customizable by a user, is added in the storage area, stores a first object including the actual data and the custom metadata in the storage area;
a service management unit that creates anonymized custom metadata by anonymizing the custom metadata,
The storage area management unit
storing a second object in the storage area , the second object including the anonymized custom metadata;
In response to the storage request, a first metadata including storage destination information of the first object is generated and registered in the database;
storing the first object in the storage area including the first metadata;
acquiring the custom metadata from the storage area based on the first metadata registered in the database;
The second object, which does not include the actual data but includes the anonymized custom metadata, is stored in the storage area.
1. A computer system comprising:
オブジェクトが格納される記憶領域とデータベースとを有する計算機システムとしてコンピュータを機能させるためのオブジェクト管理プログラムであって、
前記コンピュータに、
ユーザによるカスタマイズ可能なメタデータであるカスタムメタデータが付与された実データを前記記憶領域に格納する格納リクエストに応じて、該実データと該カスタムメタデータを含んだ第1オブジェクトを前記記憶領域に格納する手順と、
前記カスタムメタデータを匿名化した匿名化カスタムメタデータを作成する手順と、
前記匿名化カスタムメタデータを含んだ第2オブジェクトを前記記憶領域に格納する手順と
前記格納リクエストに応じて、前記第1オブジェクトの格納先情報を有する第1メタデータを作成して前記データベースに登録する手順と、
前記第1オブジェクトに前記第1メタデータを含めて前記記憶領域に格納する手順と、
前記データベースに登録されている前記第1メタデータに基づいて前記記憶領域から前記カスタムメタデータを取得する手順と、
前記実データを含まず前記匿名化カスタムメタデータを含んだ前記第2オブジェクトを前記記憶領域に格納する手順と
を実行させることを特徴とするオブジェクト管理プログラム。
An object management program for causing a computer to function as a computer system having a memory area and a database in which objects are stored, comprising:
The computer includes:
storing, in the storage area, a first object including actual data to which custom metadata, which is metadata customizable by a user, is added, in the storage area in response to a storage request for storing the actual data in the storage area, the custom metadata;
creating anonymized custom metadata by anonymizing the custom metadata;
storing a second object in the storage area , the second object including the anonymized custom metadata;
creating first metadata having storage destination information of the first object in response to the storage request, and registering the first metadata in the database;
storing the first object in the storage area including the first metadata;
acquiring the custom metadata from the storage area based on the first metadata registered in the database;
storing the second object in the storage area, the second object not including the actual data, but including the anonymized custom metadata;
2. An object management program comprising:
JP2022205140A 2022-12-22 2022-12-22 OBJECT MANAGEMENT METHOD, COMPUTER SYSTEM, AND OBJECT MANAGEMENT PROGRAM Active JP7579318B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022205140A JP7579318B2 (en) 2022-12-22 2022-12-22 OBJECT MANAGEMENT METHOD, COMPUTER SYSTEM, AND OBJECT MANAGEMENT PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022205140A JP7579318B2 (en) 2022-12-22 2022-12-22 OBJECT MANAGEMENT METHOD, COMPUTER SYSTEM, AND OBJECT MANAGEMENT PROGRAM

Publications (2)

Publication Number Publication Date
JP2024089754A JP2024089754A (en) 2024-07-04
JP7579318B2 true JP7579318B2 (en) 2024-11-07

Family

ID=91715821

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022205140A Active JP7579318B2 (en) 2022-12-22 2022-12-22 OBJECT MANAGEMENT METHOD, COMPUTER SYSTEM, AND OBJECT MANAGEMENT PROGRAM

Country Status (1)

Country Link
JP (1) JP7579318B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040193901A1 (en) 2003-03-27 2004-09-30 Ge Medical Systems Global Company, Llc Dynamic configuration of patient tags and masking types while de-identifying patient data during image export from PACS diagnostic workstation
US20160132697A1 (en) 2013-04-25 2016-05-12 Hewlett-Packard Development Company, L.P. Multi-Tier Storage Based on Data Anonymization
JP2020102214A (en) 2018-12-19 2020-07-02 キヤノンメディカルシステムズ株式会社 Medical information anonymizing system and anonymization method setting device
JP2021051471A (en) 2019-09-24 2021-04-01 キヤノンメディカルシステムズ株式会社 Anonymization device, and anonymization system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040193901A1 (en) 2003-03-27 2004-09-30 Ge Medical Systems Global Company, Llc Dynamic configuration of patient tags and masking types while de-identifying patient data during image export from PACS diagnostic workstation
US20160132697A1 (en) 2013-04-25 2016-05-12 Hewlett-Packard Development Company, L.P. Multi-Tier Storage Based on Data Anonymization
JP2020102214A (en) 2018-12-19 2020-07-02 キヤノンメディカルシステムズ株式会社 Medical information anonymizing system and anonymization method setting device
JP2021051471A (en) 2019-09-24 2021-04-01 キヤノンメディカルシステムズ株式会社 Anonymization device, and anonymization system

Also Published As

Publication number Publication date
JP2024089754A (en) 2024-07-04

Similar Documents

Publication Publication Date Title
CN110799960B (en) System and method for database tenant migration
US10817489B2 (en) Content class for object storage indexing system
US7454406B2 (en) System and method of handling file metadata
US9135257B2 (en) Technique for implementing seamless shortcuts in sharepoint
US11375015B2 (en) Dynamic routing of file system objects
US20160142512A1 (en) Indirection objects in a cloud storage system
US9146930B2 (en) Method and apparatus for file storage
JP2012524943A (en) Asynchronous distributed object upload for replicated content that can specify a storage cluster
US11106625B2 (en) Enabling a Hadoop file system with POSIX compliance
US20190065536A1 (en) Modifying archive data without table changes
JP7408626B2 (en) Tenant identifier replacement
JP2012531688A (en) Method for accessing file system file according to metadata, and apparatus for implementing the method
US12072853B2 (en) Database schema branching workflow, with support for data, keyspaces and VSchemas
Carstoiu et al. Hadoop hbase-0.20. 2 performance evaluation
US20150052167A1 (en) Searchable data in an object storage system
JP7579318B2 (en) OBJECT MANAGEMENT METHOD, COMPUTER SYSTEM, AND OBJECT MANAGEMENT PROGRAM
CN108256019A (en) Database key generation method, device, equipment and its storage medium
CN112965859A (en) Data disaster recovery method and equipment based on IPFS cluster
US20230334014A1 (en) Implementing graph search with in-structure metadata of a graph-organized file system
San Román Guzmán et al. Design of a New Distributed NoSQL Database with Distributed Hash Tables
Yeh et al. Enhancing the reliability of cloud data through identifying data inconsistency between cloud systems
CN112181899A (en) Metadata processing method and device and computer readable storage medium
US20230334093A1 (en) Graph-organized file system
Kushe et al. Evaluation of Techniques for Improving Performance and Security in Relational Databases

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240806

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20240809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240829

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: 20241008

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241025