JP2015528957A - 分散ファイルシステム、ファイルアクセス方法及びクライアントデバイス - Google Patents
分散ファイルシステム、ファイルアクセス方法及びクライアントデバイス Download PDFInfo
- Publication number
- JP2015528957A JP2015528957A JP2015523398A JP2015523398A JP2015528957A JP 2015528957 A JP2015528957 A JP 2015528957A JP 2015523398 A JP2015523398 A JP 2015523398A JP 2015523398 A JP2015523398 A JP 2015523398A JP 2015528957 A JP2015528957 A JP 2015528957A
- Authority
- JP
- Japan
- Prior art keywords
- file
- server
- meta
- metaserver
- accessed
- 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.)
- Pending
Links
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/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- 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
- 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/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
- G06F16/134—Distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
分散ファイルシステム、ファイルアクセス方法及びクライアントデバイスが提供される。前記ファイルアクセス方法は、マスタサーバによって格納されるファイルカタログにアクセスし、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、マスタサーバから取得するステップと、取得されたルーティング情報に基づいてメタサーバにアクセスし、アクセスされるべきファイルのメタ情報を、メタサーバから取得するステップと、取得されたメタ情報に基づいて、複数のノードサーバからアクセスされるべきファイルにアクセスするステップと、を有する。
Description
本開示は、データストレージ技術に関するとともに、より詳細には、分散ファイルシステム、ファイルアクセス方法及びクライアントデバイスに関する。
現在、産業における典型的な分散ファイルシステムは、Google Co.によって開発され、略してグローバル・ファイル・システム(Global File System:GFS)と呼ばれている。GFSは、1つのマスタサーバと複数のチャンクサーバとで構成される。マスタサーバは、ファイルカタログとファイルカタログ内の各ファイルのメタ情報とを格納するように構成される。各ファイルのメタ情報は、ファイルのサイズと、ファイルの分割を介して生成されるデータチャンクの数と、データチャンクが配置されるチャンクサーバとを有する。チャンクサーバは、ファイルの分割を介して生成されるデータチャンクを格納するように構成されている。通常、ファイルは、事前に定義されたサイズに基づいて複数のデータチャンクに分割されてもよい。各データチャンクは、チャンクと呼ばれる。これらのデータチャンクは、異なるチャンクサーバ内にそれぞれ格納される。
前記ファイルカタログ及びGSF内の各ファイルのメタ情報のアクセス機能を提供するマスタサーバは1つだけなので、ファイルの同時アクセス量は制限され得る。さらに、マスタサーバのメモリは有限であるため、GSF内に格納されるファイルの数は制限され得る。
本開示の態様は、単一クラスタにおけるファイルの数と、ファイルの同時アクセス量とを増加させるために、分散ファイルシステム、ファイルアクセス方法及びクライアントデバイスを提供する。
本開示の解決手段は、以下のように実装される。
分散ファイルシステムは、
ファイルカタログとファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とを格納するように構成され、格納されたファイルカタログが、クライアントデバイスによってアクセスされるべきファイルを有する場合、格納されたルーティング情報から、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を検索するとともに、見つかったルーティング情報をクライアントデバイスに提供するように構成され、その結果、クライアントデバイスは、マスタサーバによって提供されたルーティング情報に基づいてメタサーバにアクセスする、マスタサーバと、
メタサーバに関連付けられたファイルのメタ情報を格納するように構成されるとともに、クライアントデバイスのアクセス要求を受信すると、アクセスされるべきファイルのメタ情報をクライアントデバイスに提供するように構成され、その結果、クライアントデバイスは、メタサーバによって提供されたメタ情報に基づいて、ノードサーバからアクセスされるべきファイルにアクセスする、メタサーバであって、メタサーバの数は1以上である、メタサーバと、
ファイルの分割を介して生成されるデータチャンク及び/又はファイルの他のデータチャンクのバックアップを格納するように構成されるノードサーバであって、ノードサーバの数は1以上である、ノードサーバと
を有する。
ファイルカタログとファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とを格納するように構成され、格納されたファイルカタログが、クライアントデバイスによってアクセスされるべきファイルを有する場合、格納されたルーティング情報から、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を検索するとともに、見つかったルーティング情報をクライアントデバイスに提供するように構成され、その結果、クライアントデバイスは、マスタサーバによって提供されたルーティング情報に基づいてメタサーバにアクセスする、マスタサーバと、
メタサーバに関連付けられたファイルのメタ情報を格納するように構成されるとともに、クライアントデバイスのアクセス要求を受信すると、アクセスされるべきファイルのメタ情報をクライアントデバイスに提供するように構成され、その結果、クライアントデバイスは、メタサーバによって提供されたメタ情報に基づいて、ノードサーバからアクセスされるべきファイルにアクセスする、メタサーバであって、メタサーバの数は1以上である、メタサーバと、
ファイルの分割を介して生成されるデータチャンク及び/又はファイルの他のデータチャンクのバックアップを格納するように構成されるノードサーバであって、ノードサーバの数は1以上である、ノードサーバと
を有する。
ファイルアクセス方法は、
マスタサーバによって格納されるファイルカタログにアクセスし、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、マスタサーバから取得するステップと、
取得されたルーティング情報に基づいてメタサーバにアクセスし、アクセスされるべきファイルのメタ情報を、メタサーバから取得するステップと、
取得されたメタ情報に基づいて、複数のノードサーバからアクセスされるべきファイルにアクセスするステップと
を有する。
マスタサーバによって格納されるファイルカタログにアクセスし、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、マスタサーバから取得するステップと、
取得されたルーティング情報に基づいてメタサーバにアクセスし、アクセスされるべきファイルのメタ情報を、メタサーバから取得するステップと、
取得されたメタ情報に基づいて、複数のノードサーバからアクセスされるべきファイルにアクセスするステップと
を有する。
ファイルにアクセスするためのクライアントデバイスは、
マスタサーバによって格納されるファイルカタログにアクセスするとともに、クライアントデバイスによってアクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、マスタサーバから取得するように構成される、第1アクセスモジュールと、
第1アクセスモジュールによって取得されたルーティング情報に基づいてメタサーバにアクセスするとともに、アクセスされるべきファイルのメタ情報を、メタサーバから取得するように構成される、第2アクセスモジュールと、
第2アクセスモジュールによって取得されたメタ情報に基づいて、複数のノードサーバからアクセスされるべきファイルにアクセスするように構成される、第3アクセスモジュールと
を有する。
マスタサーバによって格納されるファイルカタログにアクセスするとともに、クライアントデバイスによってアクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、マスタサーバから取得するように構成される、第1アクセスモジュールと、
第1アクセスモジュールによって取得されたルーティング情報に基づいてメタサーバにアクセスするとともに、アクセスされるべきファイルのメタ情報を、メタサーバから取得するように構成される、第2アクセスモジュールと、
第2アクセスモジュールによって取得されたメタ情報に基づいて、複数のノードサーバからアクセスされるべきファイルにアクセスするように構成される、第3アクセスモジュールと
を有する。
本開示の態様では、ファイルカタログとファイルのメタ情報とは別々に格納される。すなわち、クライアントデバイスは、マスタサーバから、ファイルカタログと、ファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とにのみアクセスするが、メタサーバから各ファイルのメタ情報にアクセスする。マスタサーバがファイルカタログのアクセス機能と各ファイルのメタ情報のアクセス機能との両方を提供する従来の解決手段と比較すると、本開示の解決手段は、より高いQPS(Query Per Second:QPS)を提供することができるとともに、より高いファイルの同時アクセス量を提供することができる。さらに、マスタサーバはファイルカタログのみ格納するため、本開示の態様における分散ファイルシステムは、より多くのファイルを格納することができる。
本開示の目的、技術的解決手段及び利点をより明確にするために、本開示は、添付図面及び実施形態を参照して以下に説明される。
本開示の実施形態によって提供される分散ファイルシステムが図1に示される。分散ファイルシステムは、マスタサーバと、少なくとも1つのメタサーバと、少なくとも1つのノードサーバとを有する。メタサーバの数及びノードサーバの数は、クラスタ規模に基づいて設定されてもよく、従って、本開示の実施形態では限定されない。
図1に示される分散ファイルシステムは、3層構造を有する。上層はマスタサーバを有し、中間層は少なくとも1つのメタサーバを有し、下層は少なくとも1つのノードサーバを有する。それに応じて、本開示の実施形態によって提供される分散ファイルシステムは、3層分散ファイルシステムと呼ばれてもよい。
本開示の実施形態によって提供される分散ファイルシステムでは、メタサーバの数及びノードサーバの数は、クラスタ規模に基づいて設定されてもよい。クラスタ規模が要件に応じて拡張される場合、メタサーバの数及びノードサーバの数もまた拡張されるべきである。それに応じて、本開示の実施形態によって提供される分散ファイルシステムは、拡張可能分散ファイルシステムと呼ばれても良いとともに、さらに、略してXFS(eXtensible File System:XFS)と呼ばれてもよい。
通常、ファイルのメタ情報のストレージ量は、ファイルカタログのストレージ量よりもはるかに大きい。分散ファイルシステムを拡張するために、本開示の実施形態では、ファイルカタログとファイルのメタ情報とは別々に格納される。例えば、ファイルカタログはマスタサーバ内に格納されるとともに、ファイルのメタ情報はメタサーバ内に格納される。ファイルカタログ内のファイルを、メタサーバ内に格納されたファイルのメタ情報とそれぞれ関連付けるために、メタサーバは、ファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報を格納する必要がある。
図1に示される分散ファイルシステム内の機能モジュールは、以下でそれぞれ説明される。
前記マスタサーバは、ファイルカタログと、ファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とを格納してもよい。
各メタサーバは、メタサーバに関連付けられたファイルのメタ情報を格納してもよい。ファイルのメタ情報は、ファイルの長さと、ファイルの分割を介して生成されるデータチャンクの数と、各データチャンク及びデータチャンクのバックアップがそれぞれ配置されるノードサーバとを有する。本開示の実施形態では、ファイルのメタ情報はさらに、ファイル作成時間と、ファイル作成者と、各データチャンクの要約とを有してもよく、本開示の実施形態では限定されない。
各ノードサーバは、データチャンクと他のデータチャンクのバックアップのうちの少なくとも1つを格納してもよい。
各ノードサーバは、ファイルの分割を介して生成された1つ又は複数のデータチャンクを格納してもよいが、ファイルの分割を介して生成される特定のデータチャンク及びデータチャンクのバックアップを同時に格納することに限定される。すなわち、データチャンク及びデータチャンクのバックアップは、同一のノードサーバ内に格納されることはできない。
図1で示される分散ファイルシステムが実施例として示される。マスタサーバによって格納されるファイルカタログ内のファイル(ファイル1と呼ばれる)は、5つのデータチャンクに分割される。分散ファイルシステムのフォルトトレラント能力を改善するために、5つのデータチャンクのバックアップが作成される必要がある。本開示の実施形態では、5つのデータチャンク及び5つのデータチャンクのバックアップが、異なるノードサーバ内に別々に格納されてもよい。ファイル1をデータチャンクに分割するための方法は、従来技術であり、本明細書では説明されない。
本開示の実施形態では、1つのデータチャンクは複数のバックアップを有してもよい。分散ファイルシステムのフォルトトレラント能力を改善するために、1つのデータチャンクの複数のバックアップは同一のノードサーバ内に格納されず、異なるノードサーバ内に格納される。すなわち、1つのデータチャンクの全てのバックアップは、同一のノードサーバ内に格納されない。さらに、分散ファイルシステムのフォルトトレラント能力を改善するために、1つのファイルを分割することを介して生成された異なるデータチャンクのバックアップは、同一のノードサーバ内に格納されない。
前記マスタサーバ、メタサーバ及びノードサーバによって格納された情報に基づいて、クライアントデバイスがマスタサーバによって格納されたファイルカタログ内のファイルにアクセスする場合、マスタサーバは、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報について、格納されたルーティング情報を検索するとともに、見つかったルーティング情報をクライアントデバイスに提供する。それに応じて、クライアントデバイスは、マスタサーバによって提供されたルーティング情報に基づいてメタサーバに対してアクセス要求を開始してもよい。メタサーバがクライアントデバイスからアクセス要求を受信したとき、メタサーバは、アクセスされるべきファイルのメタ情報をクライアントデバイスに提供する。それに応じて、クライアントデバイスは、メタサーバによって提供されるメタ情報に基づいて、アクセスされるべきファイルにアクセスしてもよい。
したがって、クライアントデバイスは、ファイルへのアクセスを終了した。本開示の実施形態では、クライアントデバイスはマスタサーバから、ファイルカタログと、ファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とにのみアクセスするが、メタサーバから各ファイルのメタ情報にアクセスする。マスタサーバがファイルカタログのアクセス機能と各ファイルのメタ情報のアクセス機能との両方を提供する従来の解決手段と比較すると、本開示の解決手段は、より高いQPSを提供することができるとともに、より高いファイルの同時アクセス量を提供することができる。さらに、マスタサーバはファイルカタログのみ格納するため、マスタサーバによって格納されるファイルカタログは拡張されてもよいとともに、本開示の実施形態における分散ファイルシステムは、より多くのファイルを格納することができる。
本開示の実施形態では、マスタサーバは、ファイルカタログとファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とのみ格納するが、各ファイルのメタ情報は格納しない。マスタサーバがファイルカタログと各ファイルのメタ情報との両方を提供する従来の解決手段と比較すると、本開示の実施形態では、クラスタにおけるファイルの数はマスタサーバの有限メモリによって制限されるが、柔軟に拡張されることができるとともに、メタサーバの数及びノードサーバの数もまた柔軟に拡張されてもよい。
メタサーバの数は、要件に応じて拡張されてもよいと仮定する。拡張されたメタサーバの各々は、分散ファイルシステムにおける元のメタサーバと同様の機能を有する。例えば、現在拡張されたメタサーバはサーバ1及びサーバ2と呼ばれ、サーバ1は例として挙げられるとともにサーバ2はサーバ1と同様である。
サーバ1は、サーバ1に関連付けられたファイルのメタ情報を格納してもよい。サーバ1に関連付けられたファイルは、マスタサーバによって格納されたファイルカタログ内のファイルであってもよい。サーバ1に関連付けられたファイルは、マスタサーバによって格納されたファイルカタログ内のファイル(ファイル1と呼ばれる)であると仮定する。それに応じて、サーバ1は、ファイル1のメタ情報を格納する。サーバ1によって格納されたファイル1のメタ情報は、メタサーバによって格納されたファイル1のメタ情報のバックアップとして使用されてもよく、それによって、分散ファイルシステムのフォルトトレラント能力を改善する。
拡張された実施形態では、サーバ1に関連付けられたファイルは、マスタサーバによって格納されたファイルカタログ内に含まれないファイルであってもよいが、要件に応じて拡張されるファイルである。それに応じて、サーバ1は、拡張されたファイルのメタ情報を格納する。マスタサーバはまた、サーバ1のような拡張されたメタサーバに関連付けられたファイルをファイルカタログに追加し、サーバ1のような拡張されたメタサーバのルーティング情報を受信及び格納してもよい。
要件に応じて拡張されたノードサーバの各々は、分散ファイルシステムにおける元のノードサーバと同様の機能を有する。各ノードサーバは、ファイルの分割を介して生成されたデータチャンク及び/又は他のデータチャンクのバックアップを格納してもよい。拡張されたノードサーバの各々によって格納されたデータチャンクは、マスタサーバによって格納されたファイルカタログ内のファイルを分割することを介して生成されたデータチャンク又は他のデータチャンクのバックアップであってもよいか、又は新たに拡張されたファイルを分割することを介して生成されたデータチャンク又は他のデータチャンクのバックアップであってもよい。データチャンクのストレージは、実際の状況に基づいて設定されてもよく、本明細書では説明されない。
本開示の実施形態では、マスタサーバは、ファイルカタログとファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とのみ格納する。それに応じて、ファイルカタログ及びファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報によって使用されるストレージスペースは、大きくない。特に、ファイルカタログ内のファイルが短い数字又は文字コードで命名されている場合、ファイルカタログ及びファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報によって使用されるストレージスペースはより小さくなる。それに応じて、マスタサーバはより多くのファイルカタログ及びファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報を格納することができ、それによってクラスタ規模を拡張する。本開示の他の拡張された実施形態では、ファイルカタログ及びファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報は、高速にアクセスされることができる他の分散システム内に格納されてもよい。分散システムのストレージスペースは、マスタサーバのストレージスペースよりもはるかに大きい。それに応じて、分散システムは、より多くのファイルカタログ及びファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報を格納してもよいとともに、従って、クラスタの同時アクセス能力は大きく改善されることができる。
本開示の実施形態では、メタサーバの数は1でなくてもよい。それに応じて、1つ又は複数のメタサーバに障害が発生した場合、他の正常なメタサーバは影響を受けず、従って、部分的なファイルは読み込まれ書き込まれることができる。このようにして、分散ファイルシステムのフォルトトレラント能力はより強化されることができる。
従って、図1に示される分散ファイルシステムの説明は完了した。
以下では、本開示の実施形態によって提供されるファイルアクセス方法が説明される。
図1に示される分散ファイルシステムに基づいて、本開示の実施形態はファイルアクセス方法を提供する。図2は、本開示の実施形態に係るファイルアクセス方法を示すフローチャートである。図2に示されるファイルアクセス方法は、クライアントデバイスによって実行されてもよい。図2に示されるように、ファイルアクセス方法は、以下のブロックを有する。
ブロック201では、マスタサーバによって格納されるファイルカタログがアクセスされ、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報が、マスタサーバから取得される。
ブロック202では、メタサーバが、取得されたルーティング情報に基づいてアクセスされ、アクセスされるべきファイルのメタ情報が、メタサーバから取得される。
本開示の実施形態では、ファイルのメタ情報は、ファイルの長さと、ファイルの分割を介して生成されるデータチャンクの数と、各データチャンク及びデータチャンクのバックアップがそれぞれ配置されるノードサーバとを有する。
ブロック203では、アクセスされるべきファイルが、取得されたメタ情報に基づいて複数のノードサーバからアクセスされる。
従って、図2に示されるファイルアクセス方法の説明は完了した。図2からわかるように、クライアントデバイスは、マスタサーバから、ファイルカタログ及びファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報のみにアクセスするが、メタサーバから各ファイルのメタ情報にアクセスする。マスタサーバがファイルカタログのアクセス機能と各ファイルのメタ情報のアクセス機能との両方を提供する従来の解決手段と比較すると、本開示の解決手段は、より高いQPSを提供することができるとともに、より高いファイルの同時アクセス量を提供することができる。
本開示の実施形態はまた、ファイルにアクセスするためのクライアントデバイスを提供する。
図3は、本開示の実施形態に係るクライアントデバイスの構成を示す図である。図3に示されるように、クライアントデバイスは以下のモジュールを有する。
第1アクセスモジュールは、マスタサーバによって格納されるファイルカタログにアクセスしてもよいとともに、クライアントデバイスによってアクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、マスタサーバから取得してもよい。
第2アクセスモジュールは、第1アクセスモジュールによって取得されたルーティング情報に基づいてメタサーバにアクセスしてもよいとともに、アクセスされるべきファイルのメタ情報を、メタサーバから取得してもよい。ファイルのメタ情報は、ファイルの長さと、ファイルの分割を介して生成されるデータチャンクの数と、各データチャンク及びデータチャンクのバックアップがそれぞれ配置されるノードサーバとを有する。
第3アクセスモジュールは、第2アクセスモジュールによって取得されたメタ情報に基づいて、複数のノードサーバからアクセスされるべきファイルにアクセスしてもよい。
従って、図3に示されるクライアントデバイスの説明は完了した。
図4は、本開示の別の実施形態に係るクライアントデバイスの構成を示す図である。図4に示されるように、クライアントデバイスは、少なくともストレージと、ストレージと通信するプロセッサとを含む。ストレージは、プロセッサによって実行されることができる、第1アクセス命令と、第2アクセス命令と、第3アクセス命令とを有してもよい。
前記第1アクセス命令は、マスタサーバによって格納されるファイルカタログにアクセスしてもよいとともに、クライアントデバイスによってアクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、マスタサーバから取得してもよい。
前記第2アクセス命令は、第1アクセス命令によって取得されたルーティング情報に基づいてメタサーバにアクセスしてもよいとともに、アクセスされるべきファイルのメタ情報を、メタサーバから取得してもよい。
前記第3アクセス命令は、第2アクセス命令によって取得されたメタ情報に基づいて、複数のノードサーバから、アクセスされるべきファイルにアクセスしてもよい。
前記ファイルのメタ情報は、ファイルの長さと、ファイルの分割を介して生成されるデータチャンクの数と、各データチャンク及びデータチャンクのバックアップがそれぞれ配置されるノードサーバとを有する。
本開示の実施形態では、ファイルカタログとファイルカタログ内の各ファイルのメタ情報とは別々に格納される。すなわち、クライアントデバイスは、マスタサーバから、ファイルカタログと、ファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とにのみアクセスするが、メタサーバから各ファイルのメタ情報にアクセスする。マスタサーバがファイルカタログのアクセス機能と各ファイルのメタ情報のアクセス機能との両方を提供する従来の解決手段と比較すると、本開示の解決手段は、より高いQPSを提供することができるとともに、より高いファイルの同時アクセス量を提供することができる。
上記は、単に本開示の好ましい実施形態であるとともに、本開示の保護範囲を限定するために使用されるものではない。本開示の精神及び原理から逸脱することなく行われるいかなる修正、同等置換及び改良も、本開示の保護範囲に包含される。
Claims (9)
- 分散ファイルシステムであって、
ファイルカタログと前記ファイルカタログ内の各ファイルに関連付けられたメタサーバのルーティング情報とを格納するように構成され、前記格納されたファイルカタログが、クライアントデバイスによってアクセスされるべきファイルを有する場合、前記格納されたルーティング情報から、前記アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を検索するとともに、見つかったルーティング情報を前記クライアントデバイスに提供するように構成され、その結果、前記クライアントデバイスは、マスタサーバによって提供された前記ルーティング情報に基づいて前記メタサーバにアクセスする、前記マスタサーバと、
前記メタサーバに関連付けられたファイルのメタ情報を格納するように構成されるとともに、前記クライアントデバイスのアクセス要求を受信すると、前記アクセスされるべきファイルのメタ情報を前記クライアントデバイスに提供するように構成され、その結果、前記クライアントデバイスは、前記メタサーバによって提供された前記メタ情報に基づいて、ノードサーバから前記アクセスされるべきファイルにアクセスする、メタサーバであって、メタサーバの数は1以上である、メタサーバと、
ファイルの分割を介して生成されるデータチャンク及び/又は前記ファイルの他のデータチャンクのバックアップを格納するように構成されるノードサーバであって、ノードサーバの数は1以上である、ノードサーバと
を有する、分散ファイルシステム。 - 前記ファイルの前記メタ情報は、前記ファイルの長さと、前記ファイルの分割を介して生成されるデータチャンクの数と、各データチャンク及び前記データチャンクのバックアップがそれぞれ配置されるノードサーバとを有する、請求項1に記載の分散ファイルシステム。
- 各ノードサーバは、
データチャンク及び前記データチャンクのバックアップを同時に格納する処理と、
データチャンクの全てのバックアップを格納する処理と
のうちの少なくとも1つを行うように制限される、請求項1に記載の分散ファイルシステム。 - 拡張メタサーバと拡張ノードサーバのうちの少なくとも1つをさらに有し、
前記マスタサーバはさらに、前記拡張メタサーバに関連付けられたファイルを前記ファイルカタログに追加するとともに、前記拡張メタサーバのルーティング情報を受信及び格納するように構成され、
前記拡張メタサーバは、前記拡張メタサーバに関連付けられた前記ファイルのメタ情報を格納するように構成され、
前記拡張ノードサーバは、データチャンクと他のデータチャンクのバックアップのうちの少なくとも1つを格納するように構成される、
請求項1乃至3のいずれか1項に記載の分散ファイルシステム。 - ファイルアクセス方法であって、
マスタサーバによって格納されるファイルカタログにアクセスし、アクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、前記マスタサーバから取得するステップと、
前記取得されたルーティング情報に基づいて前記メタサーバにアクセスし、前記アクセスされるべきファイルのメタ情報を、前記メタサーバから取得するステップと、
前記取得されたメタ情報に基づいて、複数のノードサーバから前記アクセスされるべきファイルにアクセスするステップと
を有する方法。 - 前記ファイルの前記メタ情報は、前記ファイルの長さと、前記ファイルの分割を介して生成されるデータチャンクの数と、各データチャンク及び前記データチャンクのバックアップがそれぞれ配置されるノードサーバとを有する、請求項5に記載の方法。
- 各ノードサーバは、
データチャンク及び前記データチャンクのバックアップを同時に格納する処理と、
データチャンクの全てのバックアップを格納する処理と
のうちの少なくとも1つを行うように制限される、請求項5に記載の方法。 - ファイルにアクセスするためのクライアントデバイスであって、
マスタサーバによって格納されるファイルカタログにアクセスするとともに、前記クライアントデバイスによってアクセスされるべきファイルに関連付けられたメタサーバのルーティング情報を、前記マスタサーバから取得するように構成される、第1アクセスモジュールと、
前記第1アクセスモジュールによって取得された前記ルーティング情報に基づいて前記メタサーバにアクセスするとともに、前記アクセスされるべきファイルのメタ情報を、前記メタサーバから取得するように構成される、第2アクセスモジュールと、
前記第2アクセスモジュールによって取得された前記メタ情報に基づいて、複数のノードサーバから前記アクセスされるべきファイルにアクセスするように構成される、第3アクセスモジュールと
を有する、クライアントデバイス。 - 前記ファイルの前記メタ情報は、前記ファイルの長さと、前記ファイルの分割を介して生成されるデータチャンクの数と、各データチャンク及び前記データチャンクのバックアップがそれぞれ配置されるノードサーバとを有する、請求項8に記載のクライアントデバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210261331.1A CN103581229B (zh) | 2012-07-26 | 2012-07-26 | 分布式文件系统、文件访问方法以及客户端 |
CN201210261331.1 | 2012-07-26 | ||
PCT/CN2013/079855 WO2014015782A1 (zh) | 2012-07-26 | 2013-07-23 | 分布式文件系统、文件访问方法以及客户端 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015528957A true JP2015528957A (ja) | 2015-10-01 |
Family
ID=49996586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015523398A Pending JP2015528957A (ja) | 2012-07-26 | 2013-07-23 | 分散ファイルシステム、ファイルアクセス方法及びクライアントデバイス |
Country Status (4)
Country | Link |
---|---|
US (1) | US20150169623A1 (ja) |
JP (1) | JP2015528957A (ja) |
CN (1) | CN103581229B (ja) |
WO (1) | WO2014015782A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10691478B2 (en) | 2016-08-15 | 2020-06-23 | Fujitsu Limited | Migrating virtual machine across datacenters by transferring data chunks and metadata |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105635196B (zh) * | 2014-10-27 | 2019-08-09 | 中国电信股份有限公司 | 一种获取文件数据的方法、系统和应用服务器 |
CN104462335B (zh) * | 2014-12-03 | 2017-12-29 | 北京和利时系统工程有限公司 | 一种访问数据的方法和服务器代理 |
CN106470163B (zh) * | 2015-08-17 | 2020-07-07 | 腾讯科技(北京)有限公司 | 一种信息处理方法、装置和系统 |
CN108804711B (zh) * | 2018-06-27 | 2022-12-06 | 郑州云海信息技术有限公司 | 一种数据处理的方法、装置和计算机可读存储介质 |
CN109756573B (zh) * | 2019-01-15 | 2022-02-08 | 苏州链读文化传媒有限公司 | 一种基于区块链的文件系统 |
US11768954B2 (en) | 2020-06-16 | 2023-09-26 | Capital One Services, Llc | System, method and computer-accessible medium for capturing data changes |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012108955A (ja) * | 2012-02-28 | 2012-06-07 | Intec Inc | ストレージサービス提供装置、システム、サービス提供方法、及びサービス提供プログラム |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7406473B1 (en) * | 2002-01-30 | 2008-07-29 | Red Hat, Inc. | Distributed file system using disk servers, lock servers and file servers |
US9413825B2 (en) * | 2007-10-31 | 2016-08-09 | Emc Corporation | Managing file objects in a data storage system |
US8346824B1 (en) * | 2008-05-21 | 2013-01-01 | Translattice, Inc. | Data distribution system |
US8214404B2 (en) * | 2008-07-11 | 2012-07-03 | Avere Systems, Inc. | Media aware distributed data layout |
US8452731B2 (en) * | 2008-09-25 | 2013-05-28 | Quest Software, Inc. | Remote backup and restore |
CN101576915B (zh) * | 2009-06-18 | 2011-06-08 | 北京大学 | 一种分布式b+树索引系统及构建方法 |
CN101997823B (zh) * | 2009-08-17 | 2013-10-02 | 联想(北京)有限公司 | 一种分布式文件系统及其数据访问方法 |
US9239843B2 (en) * | 2009-12-15 | 2016-01-19 | Symantec Corporation | Scalable de-duplication for storage systems |
US8468135B2 (en) * | 2010-04-14 | 2013-06-18 | International Business Machines Corporation | Optimizing data transmission bandwidth consumption over a wide area network |
WO2012042509A1 (en) * | 2010-10-01 | 2012-04-05 | Peter Chacko | A distributed virtual storage cloud architecture and a method thereof |
CN102158546B (zh) * | 2011-02-28 | 2013-05-08 | 中国科学院计算技术研究所 | 一种集群文件系统及其文件服务方法 |
CN102307221A (zh) * | 2011-03-25 | 2012-01-04 | 国云科技股份有限公司 | 一种云存储系统及其实现方法 |
US8533231B2 (en) * | 2011-08-12 | 2013-09-10 | Nexenta Systems, Inc. | Cloud storage system with distributed metadata |
CN102420854A (zh) * | 2011-11-14 | 2012-04-18 | 西安电子科技大学 | 面向云存储的分布式文件系统 |
-
2012
- 2012-07-26 CN CN201210261331.1A patent/CN103581229B/zh active Active
-
2013
- 2013-07-23 US US14/414,501 patent/US20150169623A1/en not_active Abandoned
- 2013-07-23 WO PCT/CN2013/079855 patent/WO2014015782A1/zh active Application Filing
- 2013-07-23 JP JP2015523398A patent/JP2015528957A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012108955A (ja) * | 2012-02-28 | 2012-06-07 | Intec Inc | ストレージサービス提供装置、システム、サービス提供方法、及びサービス提供プログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10691478B2 (en) | 2016-08-15 | 2020-06-23 | Fujitsu Limited | Migrating virtual machine across datacenters by transferring data chunks and metadata |
Also Published As
Publication number | Publication date |
---|---|
CN103581229A (zh) | 2014-02-12 |
US20150169623A1 (en) | 2015-06-18 |
WO2014015782A1 (zh) | 2014-01-30 |
CN103581229B (zh) | 2018-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10331641B2 (en) | Hash database configuration method and apparatus | |
US10977124B2 (en) | Distributed storage system, data storage method, and software program | |
US9116903B2 (en) | Method and system for inserting data records into files | |
JP2015528957A (ja) | 分散ファイルシステム、ファイルアクセス方法及びクライアントデバイス | |
US9501506B1 (en) | Indexing system | |
CN103067433B (zh) | 一种分布式存储系统的数据迁移方法、设备和系统 | |
US10157214B1 (en) | Process for data migration between document stores | |
CA2893304C (en) | Data storage method, data storage apparatus, and storage device | |
TW201220197A (en) | for improving the safety and reliability of data storage in a virtual machine based on cloud calculation and distributed storage environment | |
KR102646619B1 (ko) | 컴포지트 메모리 장치를 포함하는 전자 장치에 파일 시스템을 제공하는 시스템 및 방법 | |
US9430492B1 (en) | Efficient scavenging of data and metadata file system blocks | |
US9110820B1 (en) | Hybrid data storage system in an HPC exascale environment | |
US9740722B2 (en) | Representing dynamic trees in a database | |
CN103914483A (zh) | 文件存储方法、装置及文件读取方法、装置 | |
US20130198230A1 (en) | Information processing apparatus, distributed processing system, and distributed processing method | |
CN104054076A (zh) | 数据存储方法、数据库存储节点故障处理方法及装置 | |
US9483568B1 (en) | Indexing system | |
EP2669806B1 (en) | Storage system | |
CN104598652B (zh) | 一种数据库查询方法及装置 | |
US20100191738A1 (en) | Apparatus, system, and method for modifying data set names | |
US10083121B2 (en) | Storage system and storage method | |
WO2017028721A1 (zh) | 分布式文件系统的数据更新方法和装置 | |
WO2012171363A1 (zh) | 分布式缓存系统中的数据操作方法和装置 | |
US11093169B1 (en) | Lockless metadata binary tree access | |
CN113590380A (zh) | 一种数据库恢复方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160209 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160802 |