JP6299307B2 - ストレージシステム、ストレージ方法、及び、プログラム - Google Patents
ストレージシステム、ストレージ方法、及び、プログラム Download PDFInfo
- Publication number
- JP6299307B2 JP6299307B2 JP2014056622A JP2014056622A JP6299307B2 JP 6299307 B2 JP6299307 B2 JP 6299307B2 JP 2014056622 A JP2014056622 A JP 2014056622A JP 2014056622 A JP2014056622 A JP 2014056622A JP 6299307 B2 JP6299307 B2 JP 6299307B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- value
- key
- node
- data set
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/657—Virtual address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
Description
本発明の第1の実施の形態について説明する。
はじめに、本発明の第1の実施の形態における、サブテーブル生成処理について説明する。
次に、本発明の第1の実施の形態における、データ読み出し処理について説明する。
例えば、図10のKey情報221を参照すると、データノード300「N2」は、メインテーブルで、Key:ID「1」、「102」に対するデータセットを格納していない。データノード300「N2」のデータ取得部330は、図10のKey情報221を参照し、Key:ID「1」、「102」に対するデータセットのレプリカを格納しているテーブルとして、それぞれ、メインレプリカテーブル、サブテーブルを特定する。
次に、本発明の第2の実施の形態について説明する。
はじめに、本発明の第2の実施の形態における、サブテーブル生成処理について説明する。
次に、本発明の第2の実施の形態における、データ読み出し処理について説明する。
次に、本発明の第3の実施の形態について説明する。
はじめに、本発明の第3の実施の形態における、サブテーブル生成処理について説明する。
次に、本発明の第3の実施の形態における、データ読み出し処理について説明する。
200 制御ノード
210 制御部
220 Key情報記憶部
221 Key情報
222 Key情報
300 データノード
310 テーブル生成部
320 Key情報記憶部
330 データ取得部
340 データ記憶部
500 クライアント装置
510 アプリケーション
520 ライブラリ
530 ソーティング部
Claims (10)
- 複数のデータ要素の値の組であるデータセットを格納する複数のデータノードを備えたストレージシステムであって、
前記複数のデータノードの各々は、
複数のデータセットを格納するテーブルであって、前記複数のデータ要素の内の第1のデータ要素の値をキーとして用いる第1のテーブルの、当該データノードに割り当てられたデータセットの部分と、前記複数のデータセットを格納するテーブルであって、前記複数のデータ要素の内の第2のデータ要素の値をキーとして用いる第2のテーブルの、当該データノードに割り当てられたデータセットの部分と、を記憶する、データ記憶手段と、
前記第1のテーブルと前記第1のデータ要素の値とを指定した要求が入力された場合に、前記第1のテーブルの当該データノードに割り当てられた部分に、当該第1のデータ要素の値を含むデータセットがあれば、当該第1のテーブルの当該データノードに割り当てられた部分から、当該第1のデータ要素の値をキーとして、当該第1のデータ要素の値を含むデータセットを取得し、当該第1のデータ要素の値を含むデータセットがなければ、前記第2のテーブルの当該データノードに割り当てられた部分から、当該第1のデータ要素の値に対応する前記第2のデータ要素の値をキーとして、当該第1のデータ要素の値を含むデータセットを取得し、
前記第2のテーブルと前記第2のデータ要素の値とを指定した要求が入力された場合に、前記第2のテーブルの当該データノードに割り当てられた部分に、当該第2のデータ要素の値を含むデータセットがあれば、当該第2のテーブルの当該データノードに割り当てられた部分から、当該第2のデータ要素の値をキーとして、当該第2のデータ要素の値を含むデータセットを取得し、当該第2のデータ要素の値を含むデータセットがなければ、前記第1のテーブルの当該データノードに割り当てられた部分から、当該第2のデータ要素の値に対応する前記第1のデータ要素の値をキーとして、当該第2のデータ要素の値を含むデータセットを取得し、
取得したデータセットを出力する、データ取得手段と、
を含む、ストレージシステム。 - 前記第1のデータ要素の値が入力された場合に、前記第1のテーブルの当該データノードに割り当てられた部分に、当該第1のデータ要素の値を含むデータセットがなければ、前記第2のテーブルの当該データノードに割り当てられた部分から、当該第1のデータ要素の値を含むデータセットの前記第2のデータ要素の値をキーとして、当該第1のデータ要素の値を含むデータセットを取得し、
前記第2のデータ要素の値が入力された場合に、前記第2のテーブルの当該データノードに割り当てられた部分に、当該第2のデータ要素の値を含むデータセットがなければ、前記第1のテーブルの当該データノードに割り当てられた部分から、当該第2のデータ要素の値を含むデータセットの前記第1のデータ要素の値をキーとして、当該第2のデータ要素の値を含むデータセットを取得する、
請求項1に記載のストレージシステム。 - 前記複数のデータノードの各々のデータ記憶手段は、さらに、前記複数のデータセットを格納する、前記第1のデータ要素の値をキーとして用いるテーブルであって、各データセットが、前記第1のテーブルで割り当てられたデータノードとは異なるデータノードに割り当てられる第3のテーブルの、当該データノードに割り当てられたデータセットの部分を記憶し、
一のデータセットが、前記第1のテーブルと前記第2のテーブルとで異なるデータノードに割り当てられている場合、当該データセットは、前記第3のテーブルから削除される、
請求項1に記載のストレージシステム。 - 前記第1のテーブル、及び、前記第2のテーブルのデータセットは、それぞれ、前記第1のテーブル、及び、前記第2のテーブルにおいて、前記第1のデータ要素の値、及び、前記第2のデータ要素の値の順番で並べられ、
前記複数のデータノードの各々の前記データ記憶手段は、前記第1のテーブル、及び、前記第2のテーブルの当該データノードに割り当てられた部分のデータセットを、それぞれ、前記第1のテーブルにおける前記第1のデータ要素の値の順番、及び、前記第2のテーブルにおける前記第2のデータ要素の値の順番で記憶する、
請求項1乃至3のいずれかに記載のストレージシステム。 - 前記第1のテーブルにおいて前記複数のデータノードの各々に割り当てられた部分の1以上のデータセットは、さらに、1以上のブロックに分割され、前記第2のテーブルは、当該ブロックの単位で、前記複数のデータノードに割り当てられる、
請求項1乃至3のいずれかに記載のストレージシステム。 - 前記第1のテーブルのデータセットは、前記第1のテーブルにおいて、前記第1のデータ要素の値の順番で並べられ、前記第2のテーブルのデータセットは、前記ブロックにおいて、前記第2のデータ要素の値の順番で並べられ、
前記複数のデータノードの各々の前記データ記憶手段は、前記第1のテーブルの当該データノードに割り当てられた部分のデータセットを、前記第1のテーブルにおける前記第1のデータ要素の値の順番で記憶し、前記第2のテーブルの当該データノードに割り当てられた部分のブロックのデータセットを、当該ブロックにおける前記第2のデータ要素の値の順番で記憶する、
請求項5に記載のストレージシステム。 - さらに、前記第2のデータ要素の値の範囲が入力された場合に、1以上の前記データノードに記憶されている、当該範囲の値を含むデータセットを格納する複数のブロックの各々から、データセットを順番に取得し、前記第2のデータ要素の値の順番に並べ換え、順番に出力する、ソーティング手段を含む、
請求項5または6に記載のストレージシステム。 - さらに、前記第1のデータ要素の値が入力された場合に、前記第1、または、第2のテーブルにおいて、当該第1のデータ要素の値を含むデータセットが割り当てられているデータノードの識別子を出力し、前記第2のデータ要素の値が入力された場合に、前記第1、または、第2のテーブルにおいて、当該第2のデータ要素の値を含むデータセットが割り当てられているデータノードの識別子を出力する、制御ノードを備える、
請求項1乃至7のいずれかに記載のストレージシステム。 - 複数のデータ要素の値の組であるデータセットを格納する複数のデータノードを含むストレージシステムのストレージ方法であって、
前記複数のデータノードの各々において、
複数のデータセットを格納するテーブルであって、前記複数のデータ要素の内の第1のデータ要素の値をキーとして用いる第1のテーブルの、当該データノードに割り当てられたデータセットの部分と、前記複数のデータセットを格納するテーブルであって、前記複数のデータ要素の内の第2のデータ要素の値をキーとして用いる第2のテーブルの、当該データノードに割り当てられたデータセットの部分と、を記憶し、
前記第1のテーブルと前記第1のデータ要素の値とを指定した要求が入力された場合に、前記第1のテーブルの当該データノードに割り当てられた部分に、当該第1のデータ要素の値を含むデータセットがあれば、当該第1のテーブルの当該データノードに割り当てられた部分から、当該第1のデータ要素の値をキーとして、当該第1のデータ要素の値を含むデータセットを取得し、当該第1のデータ要素の値を含むデータセットがなければ、前記第2のテーブルの当該データノードに割り当てられた部分から、当該第1のデータ要素の値に対応する前記第2のデータ要素の値をキーとして、当該第1のデータ要素の値を含むデータセットを取得し、
前記第2のテーブルと前記第2のデータ要素の値とを指定した要求が入力された場合に、前記第2のテーブルの当該データノードに割り当てられた部分に、当該第2のデータ要素の値を含むデータセットがあれば、当該第2のテーブルの当該データノードに割り当てられた部分から、当該第2のデータ要素の値をキーとして、当該第2のデータ要素の値を含むデータセットを取得し、当該第2のデータ要素の値を含むデータセットがなければ、前記第1のテーブルの当該データノードに割り当てられた部分から、当該第2のデータ要素の値に対応する前記第1のデータ要素の値をキーとして、当該第2のデータ要素の値を含むデータセットを取得し、
取得したデータセットを出力する、
ストレージ方法。 - 複数のデータ要素の値の組であるデータセットを格納する複数のデータノードを含むストレージシステムのプログラムであって、
前記複数のデータノードのコンピュータの各々に、
複数のデータセットを格納するテーブルであって、前記複数のデータ要素の内の第1のデータ要素の値をキーとして用いる第1のテーブルの、当該データノードに割り当てられたデータセットの部分と、前記複数のデータセットを格納するテーブルであって、前記複数のデータ要素の内の第2のデータ要素の値をキーとして用いる第2のテーブルの、当該データノードに割り当てられたデータセットの部分と、を記憶し、
前記第1のテーブルと前記第1のデータ要素の値とを指定した要求が入力された場合に、前記第1のテーブルの当該データノードに割り当てられた部分に、当該第1のデータ要素の値を含むデータセットがあれば、当該第1のテーブルの当該データノードに割り当てられた部分から、当該第1のデータ要素の値をキーとして、当該第1のデータ要素の値を含むデータセットを取得し、当該第1のデータ要素の値を含むデータセットがなければ、前記第2のテーブルの当該データノードに割り当てられた部分から、当該第1のデータ要素の値に対応する前記第2のデータ要素の値をキーとして、当該第1のデータ要素の値を含むデータセットを取得し、
前記第2のテーブルと前記第2のデータ要素の値とを指定した要求が入力された場合に、前記第2のテーブルの当該データノードに割り当てられた部分に、当該第2のデータ要素の値を含むデータセットがあれば、当該第2のテーブルの当該データノードに割り当てられた部分から、当該第2のデータ要素の値をキーとして、当該第2のデータ要素の値を含むデータセットを取得し、当該第2のデータ要素の値を含むデータセットがなければ、前記第1のテーブルの当該データノードに割り当てられた部分から、当該第2のデータ要素の値に対応する前記第1のデータ要素の値をキーとして、当該第2のデータ要素の値を含むデータセットを取得し、
取得したデータセットを出力する、
処理を行わせるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014056622A JP6299307B2 (ja) | 2014-03-19 | 2014-03-19 | ストレージシステム、ストレージ方法、及び、プログラム |
US14/657,348 US10083121B2 (en) | 2014-03-19 | 2015-03-13 | Storage system and storage method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014056622A JP6299307B2 (ja) | 2014-03-19 | 2014-03-19 | ストレージシステム、ストレージ方法、及び、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015179410A JP2015179410A (ja) | 2015-10-08 |
JP6299307B2 true JP6299307B2 (ja) | 2018-03-28 |
Family
ID=54142257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014056622A Active JP6299307B2 (ja) | 2014-03-19 | 2014-03-19 | ストレージシステム、ストレージ方法、及び、プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10083121B2 (ja) |
JP (1) | JP6299307B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11372569B2 (en) * | 2018-05-23 | 2022-06-28 | Sap Se | De-duplication in master data management |
CN111459949B (zh) * | 2019-01-18 | 2023-12-19 | 阿里巴巴集团控股有限公司 | 针对数据库的数据处理方法、装置及设备和索引更新方法 |
WO2021187305A1 (ja) * | 2020-03-17 | 2021-09-23 | 日本電気株式会社 | 情報処理システム、情報処理方法及び記録媒体 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2564306A4 (en) * | 2010-04-27 | 2017-04-26 | Cornell University | System and methods for mapping and searching objects in multidimensional space |
US9052831B1 (en) * | 2011-06-30 | 2015-06-09 | Amazon Technologies, Inc. | System and method for performing live partitioning in a data store |
JP5684671B2 (ja) * | 2011-08-05 | 2015-03-18 | 日本電信電話株式会社 | 条件検索データ保存方法、条件検索データベースクラスタシステム、ディスパッチャ、およびプログラム |
JP2014056622A (ja) | 2012-09-11 | 2014-03-27 | Fuji Electric Co Ltd | 垂直磁気記録媒体 |
JP5732082B2 (ja) * | 2013-02-05 | 2015-06-10 | 日本電信電話株式会社 | データ管理装置およびデータ管理プログラム |
US20140337375A1 (en) * | 2013-05-07 | 2014-11-13 | Exeray Inc. | Data search and storage with hash table-based data structures |
US9569517B1 (en) * | 2013-11-27 | 2017-02-14 | Google Inc. | Fault tolerant distributed key-value storage |
US10013422B2 (en) * | 2014-05-28 | 2018-07-03 | Oath Inc. | Incremental data processing |
-
2014
- 2014-03-19 JP JP2014056622A patent/JP6299307B2/ja active Active
-
2015
- 2015-03-13 US US14/657,348 patent/US10083121B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10083121B2 (en) | 2018-09-25 |
JP2015179410A (ja) | 2015-10-08 |
US20150269086A1 (en) | 2015-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11409703B2 (en) | File versions within content addressable storage | |
US10282440B2 (en) | Prioritizing rebuilding of encoded data slices | |
US20220327103A1 (en) | Using a Dispersed Index in a Storage Network | |
US9794337B2 (en) | Balancing storage node utilization of a dispersed storage network | |
Mackey et al. | Improving metadata management for small files in HDFS | |
CN105893139B (zh) | 在云存储环境中用于向租户提供存储服务的方法和装置 | |
Vora | Hadoop-HBase for large-scale data | |
US11360938B2 (en) | Files having unallocated portions within content addressable storage | |
US9916114B2 (en) | Deterministically sharing a plurality of processing resources | |
JP6542909B2 (ja) | ファイル操作方法及び装置 | |
US9251156B2 (en) | Information processing devices, method, and recording medium with regard to a distributed file system | |
CN109983431B (zh) | 用于存储设备中的列表检索的系统和方法 | |
JP5375972B2 (ja) | 分散ファイルシステム、そのデータ選択方法およびプログラム | |
US20140101213A1 (en) | Computer-readable recording medium, execution control method, and information processing apparatus | |
US20160080462A1 (en) | Data processing method and apparatus in service-oriented architecture system, and the service-oriented architecture system | |
JP6299307B2 (ja) | ストレージシステム、ストレージ方法、及び、プログラム | |
JP2015528957A (ja) | 分散ファイルシステム、ファイルアクセス方法及びクライアントデバイス | |
Mukhopadhyay et al. | Addressing name node scalability issue in Hadoop distributed file system using cache approach | |
JP2022500724A (ja) | テナント識別子の置換 | |
Prasad et al. | Improving the performance of processing for small files in Hadoop: A case study of weather data analytics | |
JP2012190377A (ja) | コンテンツ分散保管システム | |
Prasad et al. | A Comparative Study of NoSQL Databases. | |
Shin et al. | Parqua: Online reconfigurations in virtual ring-based nosql systems | |
Jayakar et al. | Managing small size files through indexing in extended Hadoop file system | |
JP5367622B2 (ja) | ファイル分割装置及び方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180116 |
|
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: 20180130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180212 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6299307 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |