JP6097880B2 - ビザンチン故障耐性データ複製を行う方法およびシステム - Google Patents
ビザンチン故障耐性データ複製を行う方法およびシステム Download PDFInfo
- Publication number
- JP6097880B2 JP6097880B2 JP2016504571A JP2016504571A JP6097880B2 JP 6097880 B2 JP6097880 B2 JP 6097880B2 JP 2016504571 A JP2016504571 A JP 2016504571A JP 2016504571 A JP2016504571 A JP 2016504571A JP 6097880 B2 JP6097880 B2 JP 6097880B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- metadata
- stored
- servers
- client
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1443—Transmit or communication errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- 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/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
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/83—Indexing scheme relating to error detection, to error correction, and to monitoring the solution involving signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
Description
1)|Qr|+|Qw|−n≧f+1。ただし、nは使用されるサーバの総数である。
2)|Qr|=|Qw|≦n−f
2n−2f−n≧f+1 ⇒ n≧3f+1
a)メタデータ識別子による問合せに応じて前記メタデータサービスによって提供されるメタデータに基づいて、前記データの前記一意識別子によって、前記データサーバのリストのデータサーバに問合せを行い、
b)前記一意識別子に従って前記保存されたデータが提供され、
c)前記保存されたデータおよび前記保存されたメタデータのフィンガープリントどうしが一致した場合、前記保存されたデータが前記クライアントに提供される。
Claims (12)
- 複数2f+1個のデータサーバおよび1個以上のクライアントによるビザンチン故障耐性データ複製を行う方法において、
前記クライアントのうちの少なくとも1個のクライアントが、データを、前記2f+1個のデータサーバのうちの少なくともf+1個の相異なるデータサーバに保存し、
前記少なくとも1個のクライアントが、前記保存されたデータのメタデータと、メタデータ識別子とを、好ましくは故障耐性のある、メタデータサービス要素に保存し、前記メタデータは前記メタデータ識別子に関連づけられ、保存されるメタデータは、前記保存されたデータの一意識別子と、前記保存されたデータのフィンガープリントと、前記データを保存したデータサーバのリストとを含むことを特徴とする、ビザンチン故障耐性データ複製を行う方法。 - 前記少なくとも1個のクライアントが、前記f+1個のデータサーバへの前記データの保存が成功した場合にのみ前記メタデータを保存することを特徴とする請求項1に記載の方法。
- 前記少なくとも1個のクライアントが、
a)メタデータ識別子による問合せに応じて前記メタデータサービス要素によって提供されるメタデータに基づいて、前記データの前記一意識別子によって、前記データサーバのリストのデータサーバに問合せを行い、
b)前記一意識別子に従って前記保存されたデータを提供し、
c)前記保存されたデータおよび前記保存されたメタデータのフィンガープリントどうしが一致した場合、前記保存されたデータを前記クライアントに提供する
ことによって、データを読み出すことを特徴とする請求項1または2に記載の方法。 - 前記フィンガープリントどうしが不一致の場合、少なくとも1つの一致が達成されるまで、前記データサーバのリストの1個以上の他のデータサーバについてステップa)〜c)が反復されることを特徴とする請求項3に記載の方法。
- ステップa)〜c)の反復は、1回の反復ごとに前記データサーバのリストのただ1つのデータサーバについて順次実行されることを特徴とする請求項4に記載の方法。
- 前記データのバージョン情報が前記メタデータサービス要素に保存され、問合せ時に前記クライアントに提供されることを特徴とする請求項1ないし5のいずれか1項に記載の方法。
- 前記メタデータサービス要素がクラウドサービスとして提供されることを特徴とする請求項1ないし6のいずれか1項に記載の方法。
- 前記データサーバのうちの少なくとも2個、好ましくは前記f+1個のデータサーバのうちの少なくとも2個が、データを保存するための相異なるファイルストレージサービスを提供することを特徴とする請求項1ないし7のいずれか1項に記載の方法。
- 複数のデータを同時に保存するため、各データが前記f+1個のデータサーバのそれぞれに保存されることを特徴とする請求項1ないし8のいずれか1項に記載の方法。
- 前記メタデータサービス要素が故障耐性のためにクォーラム型プロトコルを使用することを特徴とする請求項1ないし9のいずれか1項に記載の方法。
- 前記メタデータサービス要素が前記メタデータに対する操作を線形化することを特徴とする請求項1ないし10のいずれか1項に記載の方法。
- 複数2f+1個のデータサーバおよび1個以上のクライアントを有するビザンチン故障耐性データ複製を行うシステムであって、好ましくは請求項1ないし11のいずれか1項に記載の方法を実行するシステムにおいて、
それぞれデータを保存するように動作可能な、前記2f+1個のデータサーバのうちの少なくともf+1個の相異なるデータサーバと、
前記保存されたデータのメタデータと、メタデータ識別子とを、保存するように動作可能な、故障耐性のあるメタデータサービス要素と
を備え、前記メタデータは前記メタデータ識別子に関連づけられ、保存されるメタデータは、前記保存されたデータの一意識別子と、前記保存されたデータのフィンガープリントと、前記データを保存したデータサーバのリストとを含むことを特徴とする、ビザンチン故障耐性データ複製を行うシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP13160155.1 | 2013-03-20 | ||
EP13160155 | 2013-03-20 | ||
PCT/EP2014/055436 WO2014147085A2 (en) | 2013-03-20 | 2014-03-18 | Method and system for byzantine fault tolerant data replication |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016517605A JP2016517605A (ja) | 2016-06-16 |
JP6097880B2 true JP6097880B2 (ja) | 2017-03-15 |
Family
ID=47913148
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016504571A Expired - Fee Related JP6097880B2 (ja) | 2013-03-20 | 2014-03-18 | ビザンチン故障耐性データ複製を行う方法およびシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US9753792B2 (ja) |
EP (1) | EP2976714B1 (ja) |
JP (1) | JP6097880B2 (ja) |
WO (1) | WO2014147085A2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3345360B1 (en) * | 2015-09-04 | 2021-03-03 | Nec Corporation | Method for storing an object on a plurality of storage nodes |
EP3281115B1 (en) | 2016-10-04 | 2019-06-19 | Nec Corporation | Method and system for byzantine fault-tolerance replicating of data on a plurality of servers |
EP3394756B1 (en) | 2016-11-25 | 2024-01-03 | NEC Corporation | Method and system for byzantine fault - tolerance replicating of data |
CN106789095B (zh) | 2017-03-30 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 分布式系统及消息处理方法 |
US10503614B2 (en) * | 2017-04-21 | 2019-12-10 | Vmware, Inc. | Byzantine agreement using communications having linear complexity |
CN107704269A (zh) * | 2017-10-16 | 2018-02-16 | 中国银行股份有限公司 | 一种基于区块链生成区块的方法以及系统 |
US10871912B2 (en) * | 2017-12-21 | 2020-12-22 | Apple Inc. | Techniques for facilitating processing checkpoints between computing devices |
WO2019175624A1 (en) * | 2018-03-12 | 2019-09-19 | Pratik Sharma | Chained replication service |
WO2019072294A2 (en) | 2018-12-13 | 2019-04-18 | Alibaba Group Holding Limited | PROVIDING CONSENSUS BETWEEN NETWORK NODES IN A DISTRIBUTED SYSTEM |
JP6804572B2 (ja) * | 2019-01-18 | 2020-12-23 | 株式会社日立製作所 | 分散処理方法及び分散処理システム |
CN109766223A (zh) * | 2019-01-24 | 2019-05-17 | 清华大学 | 基于重要性分析的Web组合服务主动容错方法及系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6535868B1 (en) * | 1998-08-27 | 2003-03-18 | Debra A. Galeazzi | Method and apparatus for managing metadata in a database management system |
US7062490B2 (en) * | 2001-03-26 | 2006-06-13 | Microsoft Corporation | Serverless distributed file system |
US6950833B2 (en) * | 2001-06-05 | 2005-09-27 | Silicon Graphics, Inc. | Clustered filesystem |
AT501510B1 (de) * | 2004-07-19 | 2009-05-15 | Univ Wien Tech | Dezentrale fehlertolerante taktgenerierung in vlsi chips |
US7885970B2 (en) * | 2005-01-20 | 2011-02-08 | F5 Networks, Inc. | Scalable system for partitioning and accessing metadata over multiple servers |
US8230253B2 (en) * | 2008-07-21 | 2012-07-24 | International Business Machines Corporation | Byzantine fault tolerant dynamic quorum using a trusted platform module |
KR101453425B1 (ko) * | 2008-12-18 | 2014-10-23 | 한국전자통신연구원 | 메타데이터 서버 및 메타데이터 관리 방법 |
US20130290295A1 (en) * | 2012-04-30 | 2013-10-31 | Craig A. Soules | Maintaining fault domains in a distributed database |
-
2014
- 2014-03-18 US US14/778,084 patent/US9753792B2/en active Active
- 2014-03-18 WO PCT/EP2014/055436 patent/WO2014147085A2/en active Application Filing
- 2014-03-18 JP JP2016504571A patent/JP6097880B2/ja not_active Expired - Fee Related
- 2014-03-18 EP EP14714616.1A patent/EP2976714B1/en not_active Not-in-force
Also Published As
Publication number | Publication date |
---|---|
EP2976714A2 (en) | 2016-01-27 |
US20160283123A1 (en) | 2016-09-29 |
WO2014147085A3 (en) | 2014-12-11 |
US9753792B2 (en) | 2017-09-05 |
EP2976714B1 (en) | 2017-05-03 |
WO2014147085A2 (en) | 2014-09-25 |
JP2016517605A (ja) | 2016-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6097880B2 (ja) | ビザンチン故障耐性データ複製を行う方法およびシステム | |
US12061623B2 (en) | Selective synchronization of content items in a content management system | |
US10567500B1 (en) | Continuous backup of data in a distributed data store | |
US9965364B2 (en) | Fault tolerant listener registration in the presence of node crashes in a data grid | |
US11308127B2 (en) | Log-based distributed transaction management | |
US9727273B1 (en) | Scalable clusterwide de-duplication | |
CN105393243B (zh) | 事务定序 | |
US8301600B1 (en) | Failover recovery in a distributed data store | |
US11080253B1 (en) | Dynamic splitting of contentious index data pages | |
US20130006993A1 (en) | Parallel data processing system, parallel data processing method and program | |
KR20150070134A (ko) | 가상 데이터베이스를 생성하기 위한 소스 데이터베이스의 지정 시간 복사의 검색 | |
US20140032496A1 (en) | Information storage system and data replication method thereof | |
US11442894B2 (en) | Methods for scalable file backup catalogs and devices thereof | |
CN109154880B (zh) | 在分散存储网络中一致的存储数据 | |
US11074002B2 (en) | Object storage system with meta object replication | |
JP4818396B2 (ja) | オーバーレイネットワークシステム及び同システムにおけるオブジェクト登録方法 | |
US11086818B2 (en) | Establishing object atomicity in snapshot based disaster recovery environments | |
KR20240114430A (ko) | 변경 데이터 캡쳐를 수행하기 위한 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161012 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170112 |
|
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: 20170124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170220 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6097880 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |