JP7146919B2 - コンピュータ処理方法、コンピュータ・プログラム製品およびシステム - Google Patents
コンピュータ処理方法、コンピュータ・プログラム製品およびシステム Download PDFInfo
- Publication number
- JP7146919B2 JP7146919B2 JP2020531721A JP2020531721A JP7146919B2 JP 7146919 B2 JP7146919 B2 JP 7146919B2 JP 2020531721 A JP2020531721 A JP 2020531721A JP 2020531721 A JP2020531721 A JP 2020531721A JP 7146919 B2 JP7146919 B2 JP 7146919B2
- Authority
- JP
- Japan
- Prior art keywords
- data record
- key
- unstructured data
- value
- unstructured
- 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
Links
- 238000004590 computer program Methods 0.000 title claims description 21
- 238000003672 processing method Methods 0.000 title 1
- 238000012545 processing Methods 0.000 claims description 136
- 238000000034 method Methods 0.000 claims description 134
- 238000003860 storage Methods 0.000 claims description 102
- 230000004044 response Effects 0.000 claims description 15
- 230000001052 transient effect Effects 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 description 13
- 238000013459 approach Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 230000008901 benefit Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 8
- 239000000872 buffer Substances 0.000 description 7
- 238000003491 array Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013403 standard screening design Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013523 data management Methods 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 210000001072 colon Anatomy 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010922 spray-dried dispersion Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/81—Indexing, e.g. XML tags; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
{“id”:“0003”,“名”:“Patty”,“姓”:“Johnson”}
{“id”:“0002”,“名”:“Jane”,“姓”:“Smith”}
{“id”:“0001”,“名”:“John”,“姓”:“Smith”}
8820{“id”:“0003”,“名”:“Patty”,“姓”:“Johnson”}
9G56{“id”:“0002”,“名”:“Jane”,“姓”:“Smith”}
A001{“id”:“0001”,“名”:“John”,“姓”:“Smith”}
メタデータ 0001 01 00 07 Johnson 8820
メタデータ 0002 01 00 05 Smith 9G56 A001
{“名”:“Tom”,“姓”:“Jones”,“郵便番号”:11111}
[Tom.....Jones...1111]
BSON in UTF-8 (simple case, just "_id:00001")
HEX: 13000000 02 5F6964 00 05000000 3030303031 00
Fields: total length, type, "_id",end indicator, length, "0 0 0 0 1", end indicator
Or to break it out by field:
Total length: x'13000000' (little-endian)
Type: x'02'
Key "_id": x'5F6964'
End marker: x'00'
Value length: x'05000000' (little-endian)
Value "00001": x'3030303031'
End marker: x'00'
000000 4F564AA0 14F4C21C 28C71304 ED75EA01 916E8199 DA4F9A75 7924235B 6056D613 *|.c..4B..G.......>...|.....$-.O.*
000020 88EA7F08 04A56275 293D33EB 713FFB78 E2AB6E7C F6245A45 9FD7DC12 BD77DC68 *.."............S.>@6.!.oP.......*
000040 00000000 00000000 00000000 00000028 00000000 00000000 00000000 00000000 *................................*
000060 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*
000080 00000001 00000001 00000000 00049000 00D11014 F0D1B771 06000000 07D80001 *...........{.....J..0J.......Q..*
0000A0 E2E8E2E3 C5D4F140 01130000 00025F69 64000500 00003030 30303100 *SYSTEM1......^.............*
Claims (20)
- 非構造化データ・レコードを受信することと、
前記非構造化データ・レコードの特性を判定するために前記非構造化データ・レコードを構文解析することであって、前記特性が、
前記非構造化データ・レコードの合計長、
フィールドの数、
前記フィールドの長さ、および
前記非構造化データ・レコードに記憶されている前記フィールドの順序
の判定を含む、前記構文解析することと、
第1のキーバリューに関連付けられたプライマリ・キー名を含む、第1のキー・ペアを取得することと、
ハッシュ値を取得するために少なくとも前記第1のキーバリューをハッシュすることと、
インデックス付与キーとして前記ハッシュ値を含むように前記非構造化データ・レコードを更新し、それによって修正済みデータ・レコードを生成することと、
前記修正済みデータ・レコードを構造化データベースに記憶することと、
前記修正済みデータ・レコードのためのエントリを含むように前記構造化データベースのインデックスを更新することであって、前記エントリが前記ハッシュ値を含む、前記更新することと、を含み、
前記構造化データベースについてのセカンダリ・インデックスを生成することをさらに含み、前記セカンダリ・インデックス内の各エントリが、前記構造化データベースの1つのデータ・レコードに関連し、
前記セカンダリ・インデックス内の各エントリが、
特定のデータ・レコードのメタデータと、
前記特定のデータ・レコードのためのベース・ポインタの数と、
前記セカンダリ・インデックスのバージョン標識と、
セカンダリ・インデックス・キーの長さと、
前記セカンダリ・インデックス・キーの値と、
1つまたは複数のベース・キーであって、前記1つまたは複数のベース・キーが、修正済みデータ・レコードとして前記構造化データベースに記憶される特定の非構造化データ・レコードの個々のプライマリ・キーバリューのハッシュされた値に個別に合致するハッシュ値であり、前記構造化データベースが、前記1つまたは複数のベース・キーを用いて検索可能である、前記1つまたは複数のベース・キーと、
を含む、方法。 - 前記ハッシュ値が、前記第1のキー・ペアをハッシュすることによって生成され、前記方法が、
前記非構造化データ・レコードからメタデータを識別することと、
前記修正済みデータ・レコードの生成において、前記非構造化データ・レコードを前記第1のキー・ペアに関連付けられた前記メタデータおよび前記ハッシュ値で更新することと、
をさらに含む、請求項1に記載の方法。 - 前記第1のキー・ペアを前記取得することが、
前記非構造化データ・レコードを含む非構造化データ・レコードのセットに関連付けられる前記プライマリ・キー名を生成することであって、前記プライマリ・キー名が、前記非構造化データ・レコードのセット内の全ての非構造化データ・レコードに使用される、前記生成することと、
整数値を1ずつインクリメントし、その結果もたらされるインクリメントされた整数を前記第1のキーバリューとして選択することによって、前記非構造化データ・レコードに関連付けられる前記第1のキーバリューを生成することと、
をさらに含む、請求項1に記載の方法。 - 前記第1のキー・ペアを前記取得することが、
前記プライマリ・キー名を非構造化データ・レコードのセットから識別することであって、前記非構造化データ・レコードのセット内の各非構造化データ・レコードが、前記プライマリ・キー名を含む、前記識別することと、
前記非構造化データ・レコードのセットの任意の他の非構造化データ・レコードにおいてキーバリューとして使用されていない整数値を選択することによって、前記非構造化データ・レコードに関連付けられる前記第1のキーバリューを生成することと、
をさらに含む、請求項1に記載の方法。 - 前記非構造化データ・レコードにアクセスするためのリクエストを受信することと、
前記修正済みデータ・レコードの位置を判定するために、前記構造化データベースの前記インデックスを照会することと、
前記非構造化データ・レコードにアクセスするための前記リクエストを受信することに応答して、前記非構造化データ・レコードを含む前記修正済みデータ・レコードの一部を出力することと、
をさらに含む、請求項1に記載の方法。 - コンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品が、具現化されたプログラム命令を有するコンピュータ可読記憶媒体を含み、前記コンピュータ可読記憶媒体が、本来一過性信号ではなく、前記具現化されたプログラム命令が、処理回路に、
前記処理回路によって、非構造化データ・レコードを受信させ、
前記処理回路によって、前記非構造化データ・レコードの特性を判定するために前記非構造化データ・レコードを構文解析させ、前記特性が、
前記非構造化データ・レコードの合計長、
フィールドの数、
前記フィールドの長さ、および
前記非構造化データ・レコードに記憶されている前記フィールドの順序
の判定を含み、
前記処理回路によって、第1のキーバリューに関連付けられたプライマリ・キー名を含む第1のキー・ペアを取得させ、
前記処理回路によって、ハッシュ値を取得するために少なくとも前記第1のキーバリューをハッシュさせ、
前記処理回路によって、インデックス付与キーとして前記ハッシュ値を含むように前記非構造化データ・レコードを更新させ、それによって修正済みデータ・レコードを生成し、
前記処理回路によって、前記修正済みデータ・レコードを構造化データベースに記憶させ、
前記処理回路によって、前記修正済みデータ・レコードのためのエントリを含むように前記構造化データベースのインデックスを更新させ、前記エントリが前記ハッシュ値を含む、
ように、前記処理回路によって実行可能であり、
前記具現化されたプログラム命令が、前記処理回路に、前記処理回路によって、前記構造化データベースについてのセカンダリ・インデックスを生成させるように、前記処理回路によってさらに実行可能であり、前記セカンダリ・インデックス内の各エントリが、前記構造化データベースの1つのデータ・レコードに関連し、
前記セカンダリ・インデックス内の各エントリが、
特定のデータ・レコードのメタデータと、
前記特定のデータ・レコードのためのベース・ポインタの数と、
前記セカンダリ・インデックスのバージョン標識と、
セカンダリ・インデックス・キーの長さと、
前記セカンダリ・インデックス・キーの値と、
1つまたは複数のベース・キーであって、前記1つまたは複数のベース・キーが、修正済みデータ・レコードとして前記構造化データベースに記憶される特定の非構造化データ・レコードの個々のプライマリ・キーバリューのハッシュされた値に個別に合致するハッシュ値であり、前記構造化データベースが、前記1つまたは複数のベース・キーを用いて検索可能である、前記1つまたは複数のベース・キーと、
を含む、コンピュータ・プログラム製品。 - 前記ハッシュ値が、前記第1のキー・ペアをハッシュすることによって生成され、前記具現化されたプログラム命令が、前記処理回路に、
前記処理回路によって、前記非構造化データ・レコードからメタデータを識別させ、
前記処理回路によって、前記修正済みデータ・レコードの生成において、前記非構造化データ・レコードを前記第1のキー・ペアに関連付けられた前記メタデータおよび前記ハッシュ値で更新させる、
ように、前記処理回路によってさらに実行可能である、請求項6に記載のコンピュータ・プログラム製品。 - 前記処理回路に前記第1のキー・ペアを取得させる前記具現化されたプログラム命令が、前記処理回路に、
前記処理回路によって、前記非構造化データ・レコードを含む非構造化データ・レコードのセットに関連付けられる前記プライマリ・キー名を生成させ、前記プライマリ・キー名が、前記非構造化データ・レコードのセット内の全ての非構造化データ・レコードに使用され、
前記処理回路によって、整数値を1ずつインクリメントし、その結果もたらされるインクリメントされた整数を前記第1のキーバリューとして選択することによって、前記非構造化データ・レコードに関連付けられる前記第1のキーバリューを生成させる、
請求項6に記載のコンピュータ・プログラム製品。 - 前記処理回路に前記第1のキー・ペアを取得させる前記具現化されたプログラム命令が、前記処理回路に、
前記処理回路によって、前記プライマリ・キー名を非構造化データ・レコードのセットから識別させ、前記非構造化データ・レコードのセット内の各非構造化データ・レコードが、前記プライマリ・キー名を含み、
前記処理回路によって、前記非構造化データ・レコードのセットの任意の他の非構造化データ・レコードにおいてキーバリューとして使用されていない整数値を選択することによって、前記非構造化データ・レコードに関連付けられる前記第1のキーバリューを生成させる、
請求項6に記載のコンピュータ・プログラム製品。 - 前記具現化されたプログラム命令が、前記処理回路に、
前記処理回路によって、前記非構造化データ・レコードにアクセスするためのリクエストを受信させ、
前記処理回路によって、前記修正済みデータ・レコードの位置を判定するために、前記構造化データベースの前記インデックスを照会させ、
前記処理回路によって、前記非構造化データ・レコードにアクセスするための前記リクエストを受信することに応答して、前記非構造化データ・レコードを含む前記修正済みデータ・レコードの一部を出力させる、
ように、前記処理回路によってさらに実行可能である、請求項6に記載のコンピュータ・プログラム製品。 - 処理回路と、
メモリと、
前記メモリに記憶されるロジックであって、前記処理回路によって実行されるときに、前記処理回路に、
非構造化データ・レコードを受信させ、
前記非構造化データ・レコードの特性を判定するために前記非構造化データ・レコードを構文解析させ、前記特性が、
フィールドの数、
前記フィールドの長さ、および
前記非構造化データ・レコードに記憶されている前記フィールドの順序
の判定を含み、
第1のキーバリューに関連付けられたプライマリ・キー名を含む、第1のキー・ペアを取得させ、
ハッシュ値を取得するために少なくとも前記第1のキーバリューをハッシュさせ、
前記ハッシュ値を含むように前記非構造化データ・レコードを更新させ、それによって修正済みデータ・レコードを生成し、
前記修正済みデータ・レコードを構造化データベースに記憶させ、
前記修正済みデータ・レコードのためのエントリを含むように前記構造化データベースのインデックスを更新させ、前記エントリが前記ハッシュ値を含む、
前記ロジックと、を備え、
前記ロジックが、前記処理回路にさらに、前記構造化データベースについてのセカンダリ・インデックスを生成させ、前記セカンダリ・インデックス内の各エントリが、前記構造化データベースの1つのデータ・レコードに関連し、
前記セカンダリ・インデックス内の各エントリが、
特定のデータ・レコードのメタデータと、
前記特定のデータ・レコードのためのベース・ポインタの数と、
前記セカンダリ・インデックスのバージョン標識と、
セカンダリ・インデックス・キーの長さと、
前記セカンダリ・インデックス・キーの値と、
1つまたは複数のベース・キーであって、前記1つまたは複数のベース・キーが、修正済みデータ・レコードとして前記構造化データベースに記憶される特定の非構造化データ・レコードの個々のプライマリ・キーバリューのハッシュされた値に個別に合致するハッシュ値であり、前記構造化データベースが、前記1つまたは複数のベース・キーを用いて検索可能である、前記1つまたは複数のベース・キーと、
を含む、システム。 - 前記ハッシュ値が、前記第1のキー・ペアをハッシュすることによって生成され、前記ロジックが、前記処理回路にさらに、
前記非構造化データ・レコードからメタデータを識別させ、
前記修正済みデータ・レコードの生成において、前記非構造化データ・レコードを前記第1のキー・ペアに関連付けられた前記メタデータおよび前記ハッシュ値で更新させる、
請求項11に記載のシステム。 - 前記処理回路に前記第1のキー・ペアを取得させる前記ロジックが、前記処理回路にさらに、
前記非構造化データ・レコードを含む非構造化データ・レコードのセットに関連付けられる前記プライマリ・キー名を生成させ、前記プライマリ・キー名が、前記非構造化データ・レコードのセット内の全ての非構造化データ・レコードに使用され、
整数値を1ずつインクリメントし、その結果もたらされるインクリメントされた整数を前記第1のキーバリューとして選択することによって、前記非構造化データ・レコードに関連付けられる前記第1のキーバリューを生成させる、
請求項11に記載のシステム。 - 前記処理回路に前記第1のキー・ペアを取得させる前記ロジックが、前記処理回路にさらに、
前記プライマリ・キー名を非構造化データ・レコードのセットから識別させ、前記非構造化データ・レコードのセット内の各非構造化データ・レコードが、前記プライマリ・キー名を含み、
前記非構造化データ・レコードのセットの任意の他の非構造化データ・レコードにおいてキーバリューとして使用されていない整数値を選択することによって、前記非構造化データ・レコードに関連付けられる前記第1のキーバリューを生成させる、
請求項11に記載のシステム。 - 前記ロジックが、前記処理回路にさらに、
前記非構造化データ・レコードにアクセスするためのリクエストを受信させ、
前記修正済みデータ・レコードの位置を判定するために、前記構造化データベースの前記インデックスを照会させ、
前記非構造化データ・レコードにアクセスするための前記リクエストを受信することに応答して、前記非構造化データ・レコードを含む前記修正済みデータ・レコードの一部を出力させる、
請求項11に記載のシステム。 - JSON(Java(R)Script Object Notation)またはBSON(binary Java(R)Script Object Notation)に準拠する非構造化データ・レコードを受信することと、
前記非構造化データ・レコードの合計長、
フィールドの数、
前記フィールドの長さ、および
前記データ・レコードに記憶されている前記フィールドの順序
を判定するために、前記データ・レコードを構文解析することと、
プライマリ・キー名を生成し、前記プライマリ・キー名を前記データ・レコードを含むデータ・レコードのセットに関連付けることと、
整数値を1ずつインクリメントし、その結果もたらされる値を選択することによって、前記データ・レコードに関連付けられるプライマリ・キーバリューを生成することと、
ハッシュ値を取得するために前記プライマリ・キーバリューをハッシュすることと、
前記プライマリ・キー名と前記プライマリ・キーバリューとのペアおよび前記ハッシュ値をインデックス付与キーとして追加することによって、修正済みデータ・レコードを生成するように前記データ・レコードを更新することと、
前記修正済みデータ・レコードを仮想記憶アクセス法(VSAM)データベースに記憶することと、
前記修正済みデータ・レコードのためのエントリを含むようにキー順データ・セット(KSDS)VSAMデータベース・インデックスを更新することであって、前記エントリが前記ハッシュ値を含む、前記更新することと、を含み、
前記VSAMデータベースについてのセカンダリ・インデックスを生成することをさらに含み、前記セカンダリ・インデックス内の各エントリが、前記VSAMデータベースの1つのデータ・レコードに関連し、
前記セカンダリ・インデックス内の各エントリが、
特定のデータ・レコードのメタデータと、
前記特定のデータ・レコードのためのベース・ポインタの数と、
前記セカンダリ・インデックスのバージョン標識と、
セカンダリ・インデックス・キーの長さと、
前記セカンダリ・インデックス・キーの値と、
1つまたは複数のベース・キーであって、前記1つまたは複数のベース・キーが、修正済みデータ・レコードとして前記VSAMデータベースに記憶される特定のデータ・レコードの個々のプライマリ・キーバリューのハッシュされた値に個別に合致するハッシュ値であり、前記VSAMデータベースが、前記1つまたは複数のベース・キーを用いて検索可能である、前記1つまたは複数のベース・キーと、
を含む、方法。 - 前記データ・レコードからメタデータを識別することと、
前記修正済みデータ・レコードの生成において、前記プライマリ・キー名と前記プライマリ・キーバリューとのペアに関連付けられた前記メタデータおよび前記ハッシュ値で前記データ・レコードを更新することと、
をさらに含む、請求項16に記載の方法。 - 前記データ・レコードにアクセスするためのリクエストを受信することであって、前記リクエストが、前記プライマリ・キー名とキーバリューのペアを含む、前記受信することと、
前記ハッシュ値を取得するために前記プライマリ・キーバリューをハッシュすることと、
前記ハッシュ値に基づいて前記修正済みデータ・レコードの位置を判定するために、前記KSDS VSAMデータベースのインデックスを照会することと、
前記データ・レコードにアクセスするための前記リクエストを受信することに応答して、前記データ・レコードを含む前記修正済みデータ・レコードの一部を出力することと、
をさらに含む、請求項16に記載の方法。 - 複数の非構造化データ・レコードを含む非構造化データベースを受信することと、
少なくとも1つのデータ・レコードの合計長、
前記少なくとも1つのデータ・レコード内のフィールドの数、
前記少なくとも1つのデータ・レコードの前記フィールドの長さ、および
前記少なくとも1つのデータ・レコードに記憶されている前記フィールドの順序
を判定するために、前記複数の非構造化データ・レコードの前記少なくとも1つのデータ・レコードを構文解析することと、
プライマリ・キー名を生成し、前記プライマリ・キー名を前記複数の非構造化データ・レコードに関連付けることと、
複数のキーバリューを生成することであって、各キーバリューが、前記複数の非構造化データ・レコードの各データ・レコードについて、一意の整数値をキーバリューとして個別に選択することによって、前記複数の非構造化データ・レコードのうちの1つのデータ・レコードに関連付けられる、前記生成することと、
複数のハッシュ値を取得するために、前記複数の非構造化データ・レコードの各データ・レコードについてのプライマリ・キーバリューをハッシュすることと、
複数の修正済みデータ・レコードを生成するために、各修正済みデータ・レコードに固有の前記プライマリ・キー名と前記プライマリ・キーバリューとのペアおよびハッシュ値を個別に追加することによって、前記複数の非構造化データ・レコードの各データ・レコードを更新することと、
前記複数の修正済みデータ・レコードを構造化データベースまたは半構造化データベースに記憶することと、
前記修正済みデータ・レコードの全てについてのエントリを含むように、前記構造化データベースまたは半構造化データベースのプライマリ・インデックスを更新することであって、各エントリが、前記複数のハッシュ値のうちの1つを含む、前記更新することと、を含み、
前記構造化データベースまたは半構造化データベースについてのセカンダリ・インデックスを生成することをさらに含み、前記セカンダリ・インデックス内の各エントリが、前記構造化データベースまたは半構造化データベースに記憶されたデータ・レコードに関連し、
前記セカンダリ・インデックス内の各エントリが、
特定のデータ・レコードのメタデータと、
前記特定のデータ・レコードのためのベース・ポインタの数と、
前記セカンダリ・インデックスのバージョン標識と、
セカンダリ・インデックス・キーの長さと、
前記セカンダリ・インデックス・キーの値と、
1つまたは複数のベース・キーであって、前記1つまたは複数のベース・キーが、前記構造化データベースまたは半構造化データベースに記憶される特定の修正済みデータ・レコードの個々のプライマリ・キーバリューのハッシュされた値に個別に合致するハッシュ値であり、前記構造化データベースまたは半構造化データベースが、前記1つまたは複数のベース・キーを用いて検索可能である、前記1つまたは複数のベース・キーと、
を含む、方法。 - 前記複数の非構造化データ・レコードの前記データ・レコードそれぞれからメタデータを識別することであって、前記複数のハッシュ値の各ハッシュ値が、対応するデータ・レコードに固有の識別されたメタデータとともに、各データ・レコードについての前記プライマリ・キー名と前記プライマリ・キーバリューとのペアをハッシュすることによって生成される、前記識別することをさらに含む、請求項19に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/839,644 US20190179948A1 (en) | 2017-12-12 | 2017-12-12 | Storing unstructured data in a structured framework |
US15/839,644 | 2017-12-12 | ||
PCT/IB2018/059651 WO2019116167A1 (en) | 2017-12-12 | 2018-12-05 | Storing unstructured data in a structured framework |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021506030A JP2021506030A (ja) | 2021-02-18 |
JP7146919B2 true JP7146919B2 (ja) | 2022-10-04 |
Family
ID=66696858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020531721A Active JP7146919B2 (ja) | 2017-12-12 | 2018-12-05 | コンピュータ処理方法、コンピュータ・プログラム製品およびシステム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20190179948A1 (ja) |
JP (1) | JP7146919B2 (ja) |
CN (1) | CN111373390B (ja) |
DE (1) | DE112018005692T5 (ja) |
GB (1) | GB2582234A (ja) |
WO (1) | WO2019116167A1 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11372571B2 (en) * | 2018-05-07 | 2022-06-28 | Sap Se | System and methods for providing a memory slice data structure for use with diverse memory and storage media |
US20200050785A1 (en) * | 2018-08-10 | 2020-02-13 | Ca, Inc. | Database record access through use of a multi-value alternate primary key |
US10951395B2 (en) * | 2018-08-20 | 2021-03-16 | Fujitsu Limited | Data fetching in data exchange networks |
US10963353B2 (en) * | 2018-10-23 | 2021-03-30 | Capital One Services, Llc | Systems and methods for cross-regional back up of distributed databases on a cloud service |
CN110175176A (zh) * | 2019-05-31 | 2019-08-27 | 杭州复杂美科技有限公司 | 一种kv数据库配置方法、查询方法、设备和存储介质 |
CN111007986B (zh) * | 2019-11-04 | 2022-09-30 | 厦门天锐科技股份有限公司 | 一种基于内存的文本分段传递的方法及装置 |
US11327962B1 (en) * | 2020-01-23 | 2022-05-10 | Rockset, Inc. | Real-time analytical database system for querying data of transactional systems |
US11113191B1 (en) * | 2020-06-21 | 2021-09-07 | Tyson York Winarski | Direct and indirect addressing pointers for big data |
CN112817980B (zh) * | 2021-02-05 | 2024-06-11 | 腾讯科技(深圳)有限公司 | 一种数据索引处理方法、装置、设备及存储介质 |
US11693852B1 (en) | 2021-04-12 | 2023-07-04 | Amdocs Development Limited | System, method, and computer program for normalizing a JSON structure |
US20220368533A1 (en) * | 2021-05-16 | 2022-11-17 | CodeNotary Inc. | System and method to cryptographically validate rich query results |
CN113253685B (zh) * | 2021-05-31 | 2021-09-24 | 航天中认软件测评科技(北京)有限责任公司 | 一种工业数据采集方法、装置、设备及介质 |
JP7429374B2 (ja) * | 2021-10-31 | 2024-02-08 | 株式会社Datafluct | 情報処理システム、情報処理方法及び情報処理プログラム |
CN114281922A (zh) * | 2021-12-23 | 2022-04-05 | 上海柯林布瑞信息技术有限公司 | 基于Key-Value表的非结构化数据存储方法、装置及电子设备 |
CN114357054B (zh) * | 2022-03-10 | 2022-06-03 | 广州宸祺出行科技有限公司 | 一种基于ClickHouse的非结构化数据的处理方法和装置 |
CN118035503B (zh) * | 2024-04-11 | 2024-06-28 | 福建时代星云科技有限公司 | 一种键值对数据库的存储方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000250927A (ja) | 1999-02-26 | 2000-09-14 | Nec Commun Syst Ltd | データベースの更新・検索方法 |
US20090196423A1 (en) | 2008-02-01 | 2009-08-06 | Oracle International Corporation | Methods to defend against tampering of audit records |
US20090287986A1 (en) | 2008-05-14 | 2009-11-19 | Ab Initio Software Corporation | Managing storage of individually accessible data units |
US20150088924A1 (en) | 2013-09-23 | 2015-03-26 | Daniel ABADI | Schema-less access to stored data |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0854423A1 (en) * | 1997-01-20 | 1998-07-22 | TELEFONAKTIEBOLAGET L M ERICSSON (publ) | Data partitioning and duplication in a distributed data processing system |
US6092061A (en) * | 1997-08-15 | 2000-07-18 | International Business Machines Corporation | Data partitioning by co-locating referenced and referencing records |
US7313657B1 (en) * | 2005-03-24 | 2007-12-25 | Sprint Communications Company L.P. | Conflict avoidance in data store replication |
US20090144220A1 (en) * | 2007-11-30 | 2009-06-04 | Yahoo! Inc. | System for storing distributed hashtables |
TWI480746B (zh) * | 2009-11-09 | 2015-04-11 | Hewlett Packard Development Co | 使用經結構化之資料儲存器達到較快速全文檢索 |
US20130232157A1 (en) * | 2012-03-05 | 2013-09-05 | Tammer Eric Kamel | Systems and methods for processing unstructured numerical data |
CN104750809B (zh) * | 2015-03-26 | 2018-05-18 | 中国科学院软件研究所 | 一种支持关系模型和键-值结构的混合数据存储方法 |
CN105677826A (zh) * | 2016-01-04 | 2016-06-15 | 博康智能网络科技股份有限公司 | 一种针对海量非结构化数据的资源管理方法 |
CN105608224A (zh) * | 2016-01-13 | 2016-05-25 | 广西师范大学 | 一种提高海量数据查询性能的正交多哈希映射索引方法 |
US20170270153A1 (en) * | 2016-03-16 | 2017-09-21 | Linkedin Corporation | Real-time incremental data audits |
US11256746B2 (en) * | 2016-04-25 | 2022-02-22 | Oracle International Corporation | Hash-based efficient secondary indexing for graph data stored in non-relational data stores |
CN106776783B (zh) * | 2016-11-24 | 2019-10-01 | 福建亿榕信息技术有限公司 | 非结构化数据存储管理方法和系统 |
-
2017
- 2017-12-12 US US15/839,644 patent/US20190179948A1/en active Pending
-
2018
- 2018-12-05 WO PCT/IB2018/059651 patent/WO2019116167A1/en active Application Filing
- 2018-12-05 GB GB2010394.1A patent/GB2582234A/en not_active Withdrawn
- 2018-12-05 DE DE112018005692.9T patent/DE112018005692T5/de active Pending
- 2018-12-05 JP JP2020531721A patent/JP7146919B2/ja active Active
- 2018-12-05 CN CN201880075618.0A patent/CN111373390B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000250927A (ja) | 1999-02-26 | 2000-09-14 | Nec Commun Syst Ltd | データベースの更新・検索方法 |
US20090196423A1 (en) | 2008-02-01 | 2009-08-06 | Oracle International Corporation | Methods to defend against tampering of audit records |
US20090287986A1 (en) | 2008-05-14 | 2009-11-19 | Ab Initio Software Corporation | Managing storage of individually accessible data units |
US20150088924A1 (en) | 2013-09-23 | 2015-03-26 | Daniel ABADI | Schema-less access to stored data |
Also Published As
Publication number | Publication date |
---|---|
GB202010394D0 (en) | 2020-08-19 |
JP2021506030A (ja) | 2021-02-18 |
CN111373390A (zh) | 2020-07-03 |
CN111373390B (zh) | 2024-03-15 |
US20190179948A1 (en) | 2019-06-13 |
WO2019116167A1 (en) | 2019-06-20 |
GB2582234A (en) | 2020-09-16 |
DE112018005692T5 (de) | 2020-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7146919B2 (ja) | コンピュータ処理方法、コンピュータ・プログラム製品およびシステム | |
US10831736B2 (en) | Fast multi-tier indexing supporting dynamic update | |
US10210191B2 (en) | Accelerated access to objects in an object store implemented utilizing a file storage system | |
US12007943B2 (en) | Virtual machine object version control | |
US20190065621A1 (en) | Kvs tree database | |
US9348837B2 (en) | Index writing in a linear tape file system | |
US9495398B2 (en) | Index for hybrid database | |
AU2013210018B2 (en) | Location independent files | |
EP1376405A2 (en) | System and method for managing file names for file system filter drivers | |
US11775484B2 (en) | Fast algorithm to find file system difference for deduplication | |
US9152683B2 (en) | Database-transparent near online archiving and retrieval of data | |
US20210209057A1 (en) | File system quota versioning | |
CN113721862B (zh) | 数据处理方法及装置 | |
US20180196860A1 (en) | Efficient representation, access and modification of variable length objects | |
US9710479B2 (en) | Providing record-level alternate-index upgrade locking | |
US20200334208A1 (en) | Rule-based collections of subset(s) of metadata in response to a trigger event occurring | |
US11074222B2 (en) | Lockless management of deduplicated data using reference tags | |
US20220342888A1 (en) | Object tagging | |
TWI816954B (zh) | 用於重建無損地縮減的資料塊的序列的方法和設備,用於確定主要資料元件的元資料的方法和設備,及儲存媒體 | |
US10831794B2 (en) | Dynamic alternate keys for use in file systems utilizing a keyed index | |
US9965488B2 (en) | Back referencing of deduplicated data | |
EP3014482B1 (en) | Method and system for searching and storing data | |
US12079194B1 (en) | Encoding table schema and storage metadata in a file store | |
CN114564449B (zh) | 数据查询方法、装置、设备以及存储介质 | |
US20240119037A1 (en) | Techniques for adaptive independent compression of key and non-key portions of database rows in index organized tables (iots) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210525 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220419 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20220502 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220715 |
|
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: 20220913 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220921 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7146919 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |