JP2015135568A - ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法 - Google Patents

ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法 Download PDF

Info

Publication number
JP2015135568A
JP2015135568A JP2014006135A JP2014006135A JP2015135568A JP 2015135568 A JP2015135568 A JP 2015135568A JP 2014006135 A JP2014006135 A JP 2014006135A JP 2014006135 A JP2014006135 A JP 2014006135A JP 2015135568 A JP2015135568 A JP 2015135568A
Authority
JP
Japan
Prior art keywords
file
data
request
function unit
cluster
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.)
Granted
Application number
JP2014006135A
Other languages
English (en)
Other versions
JP6328432B2 (ja
Inventor
健哉 西木
Kenya Nishiki
健哉 西木
直規 原口
Naoki Haraguchi
直規 原口
武田 幸子
Sachiko Takeda
幸子 武田
直一 根本
Naoichi Nemoto
直一 根本
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 Ltd
Original Assignee
Hitachi 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 Ltd filed Critical Hitachi Ltd
Priority to JP2014006135A priority Critical patent/JP6328432B2/ja
Priority to US14/595,554 priority patent/US20150201036A1/en
Publication of JP2015135568A publication Critical patent/JP2015135568A/ja
Application granted granted Critical
Publication of JP6328432B2 publication Critical patent/JP6328432B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2871Implementation details of single intermediate entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】複数のファイルサーバとローカルディスクによって構成される、可用性の高いシステムを実現する。【解決手段】分散ファイルシステムは、リクエストに応じてファイル格納、ファイル読込及びファイル削除のいずれかを行う複数のファイルサーバクラスタ40を有する。ゲートウェイ装置30は、ファイル格納、ファイル読込及びファイル削除のいずれかを含むリクエストを送信するクライアント装置10と分散ファイルシステムとの間でリクエストを仲介する。ゲートウェイ装置30は、ファイルサーバクラスタの稼動状態を監視するヘルスチェック機能部と、クライアント装置10から分散ファイルシステムへのリクエストを受信し、正常に稼働中のファイルサーバクラスタ40の中からひとつ又は複数を選択して該リクエストを選択したファイルサーバクラスタ40へ振り分けるデータ制御機能部とを有する。【選択図】図1

Description

本発明は、ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法に関する。
昨今、ビックデータに代表される大量のデータをデータセンタに蓄積し、これを一括処理し、ビジネスに役立つ知見(情報)を得る取り組みがある。大量のデータを処理する場合に、ディスクI/Oの性能(スループット)が課題となる。そこで、HadoopのHDFS(Hadoop Distributed File System)に代表される分散ファイルシステム技術では、大容量のファイルを細かい単位(ブロック)に分割して、複数のサーバのローカルディスクに格納し、ファイル読み込み時には、複数のサーバ(ディスク)から同時並行で読み出すことにより、高スループットを実現している(例えば、非特許文献1、“Architecture”、“Depoyment−Administrative commands”等の項目参照)。一方、通信事業者のサービス提供基盤や、電力又は交通等の社会インフラ事業者のシステム制御基盤においては、サービスの無停止運用が最優先課題のひとつであり、システム障害時に障害サーバを切り離し、待機サーバに切り替えることにより、高信頼性を実現している。
例えば、特許文献1に記載の技術では、クラスタシステムにおいて、スプリットブレイン(ネットワーク障害などによるサーバ間の同期不正による異常動作)が発生した際の不要なサービス停止を防ぐ方法を提案している(例えば要約参照)。
特開2012−173996号公報
"HDFS High Availability Using the Quorum Journal Manager"、[online]、The Apache Software Foundation、[平成25年11月15日検索]、インターネット<http://hadoop.apache.org/docs/current/hadoop−yarn/hadoop−yarn−site/HDFSHighAvailabilityWithQJM.html>
分散ファイルシステムでは、多数のサーバが協調して動作することにより分散処理を実現しており、サーバ台数を増やすことで処理性能を向上させることができる。一方、サーバ台数が多くなることにより、故障が発生する可能性が高くなるため、一部のサーバが正常に動作していない状態においても、システム全体としては処理を正常に継続できることが求められる。
非特許文献1に記載の技術は、ファイルシステムのメタデータを管理しているNameNodeの冗長化が課題となる。そのため、アクティブNameNodeサーバとスタンバイNameNodeサーバとで構成し、NameNodeの障害時に、アクティブな状態にあるサーバを停止し、スタンバイ状態のサーバに処理を切り替えることで高信頼化を実現している。しかし、非特許文献1の技術では、アクティブとスタンバイ間の切り替え中にサービスが中断したり、切り替え処理が失敗してサービスが停止するリスクを抱えている。さらに、非特許文献1の技術を適用するためには、すべてのサーバのソフトウェアを更新する必要があるため、運用コスト(導入コスト)が大きいという課題があった。
特許文献1に記載の技術では、上述のように、クラスタシステムにおいて、スプリットブレインが発生した際の不要なサービス停止を防ぐ方法を提案している。しかし、特許文献1の技術は、サーバ間の同期処理に共有ストレージを使用しているが、共有ストレージの故障を考慮していないという課題がある。さらに、特許文献1の技術は、データの冗長化を考慮しておらず、分散ファイルシステムのデータ可用性を担保することができていない。
本発明は、以上の点に鑑み、複数のファイルサーバとローカルディスクによって構成される分散ファイルシステムを備えたシステムの可用性を向上させることを目的とする。
本発明の第1の解決手段によると、
ファイル格納、ファイル読込及びファイル削除のいずれかを含むリクエストを送信するクライアント装置と、該リクエストに応じたファイル処理を行う複数のファイルサーバクラスタを有する分散ファイルシステムとの間でリクエストを仲介するゲートウェイ装置であって、
前記ファイルサーバクラスタの稼動状態を監視するヘルスチェック機能部と、
前記クライアント装置から前記分散ファイルシステムへのリクエストを受信し、正常に稼働中のファイルサーバクラスタの中からひとつ又は複数を選択して該リクエストを選択したファイルサーバクラスタへ振り分けるデータ制御機能部と
を有するゲートウェイ装置が提供される。
本発明の第2の解決手段によると、
リクエストに応じてファイル格納、ファイル読込及びファイル削除のいずれかを行う複数のファイルサーバクラスタを有する分散ファイルシステムと、
ファイル格納、ファイル読込及びファイル削除のいずれかを含むリクエストを送信するクライアント装置と前記分散ファイルシステムとの間でリクエストを仲介するゲートウェイ装置と
を備え、
前記ゲートウェイ装置は、
前記ファイルサーバクラスタの稼動状態を監視するヘルスチェック機能部と、
前記クライアント装置から前記分散ファイルシステムへのリクエストを受信し、正常に稼働中のファイルサーバクラスタの中からひとつ又は複数を選択して該リクエストを選択したファイルサーバクラスタへ振り分けるデータ制御機能部と
を有するファイルサーバシステムが提供される。
本発明の第3の解決手段によると、
リクエストに応じてファイル格納、ファイル読込及びファイル削除のいずれかを行う複数のファイルサーバクラスタを有する分散ファイルシステムと、ファイル格納、ファイル読込及びファイル削除のいずれかを含むリクエストを送信するクライアント装置と前記分散ファイルシステムとの間でリクエストを仲介するゲートウェイ装置とを備えたファイルサーバシステムにおけるファイル分散方法であって、
前記ゲートウェイ装置が、
前記ファイルサーバクラスタの稼動状態を監視し、
前記クライアント装置から前記分散ファイルシステムへのリクエストを受信し、正常に稼働中のファイルサーバクラスタの中からひとつ又は複数を選択して該リクエストを選択したファイルサーバクラスタへ振り分ける前記ファイル分散方法が提供される。
本開示によれば、複数のファイルサーバとローカルディスクによって構成される分散ファイルシステムを備えたシステムの可用性を向上させることができる。
コンピュータシステム(ファイルサーバシステム)の実施例1における全体構成例を示す図である。 コンピュータシステムの実施例1を構成するアプリケーション拡張ゲートウェイ装置の構成例を示す図である。 アプリケーション拡張ゲートウェイ装置が具備するクライアントAPI機能部の処理ステップを示すフローチャートである。 アプリケーション拡張ゲートウェイ装置が具備するクラスタ設定機能部の処理ステップを示すフローチャートである。 アプリケーション拡張ゲートウェイ装置が具備するヘルスチェック機能部の処理ステップを示すフローチャートである。 アプリケーション拡張ゲートウェイ装置の具備するデータ制御機能部の処理ステップである。 アプリケーション拡張ゲートウェイ装置が具備するデータリストア機能部の処理ステップを示すフローチャートである。 アプリケーション拡張ゲートウェイ装置が保持するクラスタ情報を管理するテーブルの構成例を示す図である。 アプリケーション拡張ゲートウェイ装置が保持するデータポリシー情報を管理するテーブルの構成例を示す図である。 アプリケーション拡張ゲートウェイ装置が保持するデータインデクス情報を管理するテーブルの構成例を示す図である。 アプリケーション拡張ゲートウェイ装置が保持するクラスタ分散ルールを管理するテーブルの構成例を示す図である。 アプリケーション拡張ゲートウェイ装置が保持するデータリストアルールを管理するテーブルの構成例を示す図である。 アプリケーション拡張ゲートウェイ装置を介してファイル作成を行う処理フロー例を示すシーケンス図である。 アプリケーション拡張ゲートウェイ装置を介してファイル読出しを行う処理フロー例を示すシーケンス図である。 アプリケーション拡張ゲートウェイ装置を介してファイル削除を行う処理フロー例を示すシーケンス図である。 アプリケーション拡張ゲートウェイ装置を介してファイル検索を行う処理フロー例を示すシーケンス図である。 クライアントからアプリケーション拡張ゲートウェイ装置に対して送信するAPIメッセージ例を示す図である。 コンピュータシステム(ファイルサーバシステム)の実施例2における全体構成例を示す図である。 コンピュータシステムの実施例2を構成するアプリケーション拡張ゲートウェイ装置の構成例を示す図である。 アプリケーション拡張ゲートウェイ装置の具備するクラスタ再構成機能部の処理ステップを示すフローチャートである。 アプリケーション拡張ゲートウェイ装置が保持するデータ再構成ルールを管理するテーブルの構成例を示す図である。 実施例1のゲートウェイ装置の概略シーケンス図である。
本実施の形態は、例えば、WWW(World Wide Web)、ファイル保管システム及びデータセンタ等におけるサーバ装置と端末との間でデータを通信するネットワークシステムにおいて、端末とサーバ装置間の通信経路上に設置されるゲートウェイ装置、そのゲートウェイ装置を備えるファイルサーバシステム、及び、ファイル分散方法に関する。以下各実施例を用いて説明する。
(実施例1)
図1は、コンピュータシステム(ファイルサーバシステム)の実施例1における全体構成例を示す図である。
本実施例のコンピュータシステム(ファイルサーバシステム)は、1つ又は複数のクライアント装置(以下、単にクライアントと称する)10と、1つ又は複数のアプリケーション拡張ゲートウェイ装置(以下、ゲートウェイ装置と称することもある)30と、1又は複数のファイルサーバクラスタ40とを備え、各装置がネットワーク21又は21を介して接続される。
クライアント10は、ファイルを作成し及び/又はファイルを参照するアプリケーションを実行する端末である。アプリケーション拡張ゲートウェイ装置30は、クライアント10とファイルサーバクラスタ40の間にあって、本実施例の機能部プログラムを実装しているサーバである。例えば、クライアント10は、ファイル格納、ファイル読込、ファイル削除及びファイル検索のいずれかを含むリクエストを送信する。
ファイルサーバクラスタ40はそれぞれ、データの所在や状態などのメタデータを管理する少なくとも1つのネームノード50と、データを保持する1つ又は複数のデータノード60を有し、1つ又は複数のファイルサーバクラスタ40で分散ファイルシステムを構成している。
本実施例では、アプリケーション拡張ゲートウェイ装置30とファイルサーバクラスタ40を別々のハードウェアで構成する形態を示すが、アプリケーション拡張ゲートウェイ装置30とファイルサーバクラスタ40が同一のハードウェア上で動作する構成であっても構わない。
また、本実施例では、アプリケーション拡張ゲートウェイ装置30が1台であるコンピュータシステムの構成を説明するが、複数のゲートウェイ装置30を備えるコンピュータシステムの構成であっても構わない。その場合、複数のゲートウェイ装置30間で情報の共有化又は同期を行う。
図2は、ゲートウェイ装置30の構成例を示す図である。
ゲートウェイ装置30は、例えば、1つ以上のCPU101と、1つ以上のネットワークインタフェース(NW I/F)102〜104と、入出力装置106と、メモリ105とを備え、各部が内部バス等の通信路107を介して相互に接続されるコンピュータ上に実現される。NW I/F102は、ネットワーク20を介してクライアント10と接続される。NW I/F103は、ネットワーク21を介してファイルサーバクラスタのネームノード50と相互に接続される。NW I/F104は、ネットワーク21を介してファイルサーバクラスタのデータノード60と相互に接続される。メモリ105には、以下に説明するクライアントAPI機能部111、クラスタ設定機能部112、ヘルスチェック機能部113、データ制御機能部114、データリストア機能部115及びデータポリシー設定機能部117の各プログラムと、クラスタ管理テーブル121、データインデクス管理テーブル122及びデータポリシー管理テーブル123が格納される。各プログラムは、CPU101により実行されて各機能部の動作が実現される。なお、各テーブルはテーブル形式以外でもよく、適宜の記憶領域でもよい。
各プログラムは、予めゲートウェイ装置30のメモリ105に格納されていても良いし、必要なときに、ゲートウェイ装置30が利用可能な記録媒体を介して、メモリ105に導入されてもよい。記録媒体とは、例えば入出力装置106に着脱可能な記憶媒体、又は通信媒体(すなわち、NW I/F102〜104に接続する有線又は無線、光等のネットワーク、又は当該ネットワークを伝搬する搬送波やディジタル信号)を介した媒体を指す。
入出力装置106は、例えば管理者70により操作されることによりデータを入力する入力部と、データを表示する表示部と有することができる。なお、入出力装置106は、管理者が操作する外部の管理端末と接続され、管理端末からデータを入力し、管理端末へデータを出力するようにしてもよい。
図8は、ゲートウェイ装置30に具備されるクラスタ管理テーブル121の一例を示したものである。クラスタ管理テーブル121には、例えば、クラスタ毎に、クラスタを識別するクラスタID802、クラスタのネットワークアドレス(例えばIPアドレス)であるネームノードアドレス803、クラスタが正常か異常かを示す稼動状態804、稼動状態を更新した日時である状態変更日付805、及び、クラスタに格納可能な空きディスク量806が登録される。空きディスク量806は、ヘルスチェック時など適宜のタイミングでクラスタのネームノードに問い合わせて更新されてもよいし、データの削除時及び書き込み時に増減させてもよい。
図9は、ゲートウェイ装置30に具備されるデータポリシー管理テーブル123の一例を示したものである。データポリシー管理テーブル123には、例えば、ポリシーを識別するポリシーID902、アプリケーションの種別を示す文字列又は識別番号等のアプリケーション種別903、データの複製をいくつ保持するかを示すデータ冗長度904、データ読込みの際に多数決によってデータが正しいかどうかを判定するかどうかを示す読込多数決判定情報905、データを格納する際にデータ圧縮を適用するかどうかを示すデータ圧縮情報906、及び、データを保管する期限を示すデータ保管期限907が登録される。あるアプリケーション種別のファイルをデータノードに書き込む際に容量が不足している場合、データ保管期限907を超えているファイルを削除して容量を確保し、ファイルを格納することができる。各データは、管理者の操作により入力されるデータに基づいて、データポリシー設定機能部117により設定されることができる。
図10は、ゲートウェイ装置30に具備されるデータインデクス管理テーブル122の一例を示したものである。データインデクス管理テーブル122には、例えば、ファイルを識別するデータキー(データKey。例えば、ファイルパス及びファイル名から求めたハッシュ値)1002、ファイルの保持されている1つ又は複数のクラスタのクラスタID1003、ファイル名1004、アプリケーション種別1005、ファイルのサイズ1006、及び、ファイルの最終更新日付1007が登録される。なお、データキー及びファイル名はファイルを識別するファイル識別情報であり、クラスタID1003、アプリケーション種別1005、ファイルのサイズ1006、及び、ファイルの最終更新日付1007はファイルに関連するファイル情報である。
図11は、ゲートウェイ装置30のメモリ106に格納されるクラスタ分散ルール1101の一例を示したものである。クラスタ分散ルール1101は、ルール種別1102と、ルールの使用及び未使用のいずれかを示すフラグ1103を含む。ルール種別102としては、例えば順次クラスタを選択するラウンドロビン、及び、空きディスク量の多いクラスタを優先して選択するディスク空き優先などを含むことができる。ルール種別102はこれらの例に限らず適宜の手法を用いてもよい。使用フラグは設定部(図示せず)により適宜設定を変更できる。
図12は、ゲートウェイ装置30のメモリ106に格納されるデータリストアルール1201の一例を示したものである。データリストアルール1201は、ルール種別1202と、データリストアを適用するかどうかを判定するための閾値1203を含む。本実施例では、異常継続時間によりデータリストアを適用するか否かを判断しており、閾値1203の一例として24時間が記憶される。なお、異常継続時間により判断する以外にも、適宜の適用ルールを定め、ルール種別に登録してもよい。閾値1203は、閾値以外にも適宜の判断基準又は条件であってもよい。
図3は、ゲートウェイ装置30の具備するクライアントAPI機能部の処理ステップの一例を示したものである。クライアントAPI機能部111は、クライアント10よりファイルサーバクラスタ40へのリクエスト情報を取得する(S301)。次に、クライアントAPI機能部111は、データ制御機能部114を呼出し、データ制御機能部114による処理結果を受け取る(S302)。例えば、ファイル作成結果、ファイル読込結果、ファイル削除結果、又は、ファイル検索結果等を受け取る。データ制御機能部114の処理については後述する。また、クライアントAPI機能部111は、クライアント10に、受け取った処理結果に基づいて、リクエスト情報に対するレスポンス情報を返信する(S303)。
図4(a)は、ゲートウェイ装置30の具備するクラスタ設定機能部の処理ステップの一例を示したものである。クラスタ設定機能部112は、管理者の操作により入出力装置106からクラスタ情報を入力する(S401)。入力されるクラスタ情報は、例えば、クラスタID及びネームノードアドレスの組をひとつ又は複数含む。また、クラスタIDに対応したディスク容量をさらに含んでもよい。クラスタ設定機能部112は、入力したクラスタ情報をクラスタ管理テーブル121に格納する(S402)。
図4(b)は、ゲートウェイ装置30の具備するデータポリシー設定機能部の処理ステップの一例を示したものである。データポリシー設定機能部117は、管理者の操作により入出力装置106からデータポリシー情報を入力する(S403)。入力されるデータポリシー情報は、例えば、ポリシーID、アプリケーション種別、データ冗長度、読込多数決判定情報、データ圧縮情報、及び、データ保管期限を含む。データポリシー設定機能部117は、入力したデータポリシー情報をデータポリシー管理テーブル123に格納する(S404)。
図5は、ゲートウェイ装置30の具備するヘルスチェック機能部の処理ステップの一例を示したものである。ヘルスチェック機能部113は、クラスタ管理テーブル121を参照してクラスタのネームノードアドレスを取得し(S501)、各クラスタのネームノードに対して問合せを行う(S502)。例えば、ヘルスチェックパケットを送信する。次に、ヘルスチェック機能部113は、問い合わせに対する応答結果に従い、クラスタ管理テーブル121に稼動状態(例えば正常か異常か)を更新する(S503)。ヘルスチェック機能部113は、データリストア機能部115を呼び出す(S504)。ステップS504でデータリストア機能を呼び出すことにより、ヘルスチェックのタイミングで後述するデータのリストアの要否を判定できるが、ステップS504は省略してもよい。本機能部113の処理は、管理者によって明示的に呼び出される場合と、OSのスケジューラを利用して定期的に呼び出される場合とがある。
図6は、ゲートウェイ装置30の具備するデータ制御機能部の処理ステップの一例を示したものである。データ制御機能部114の処理は、例えばクライアントAPI機能部111がクライアント10からリクエストを取得したことを契機に実行される。
データ制御機能部114は、クライアント10からのリクエスト種別に応じて以降の処理を振り分ける(S601)。
まず、ファイル作成について説明する。データ制御機能部114は、リクエスト種別が<ファイル作成>の場合、クラスタ管理テーブル121及びデータポリシー管理テーブル123を参照してファイルを格納するクラスタを選択し、選択したクラスタのネームノードアドレスを取得する(S602)。例えば、データ制御機能部114は、クライアント10からのリクエストに含まれるアプリケーション種別に基づきデータポリシー管理テーブル123を参照し、対応するデータ冗長度904を取得する。また、データ制御機能部114は、クラスタ管理テーブル121を参照し、稼働状態804が正常を示すクラスタのうち、データ冗長度に対応する数のクラスタを選択する。クラスタの選択手法は、図11に示すクラスタ分散ルール1101に従う。データ制御機能部114は、選択したクラスタのネームノードアドレス803を取得する。
データ制御機能部114は、取得されたネームノードアドレスに従い、選択されたクラスタのネームノードにファイル作成可否を問合せる(S603)。ネームノードからファイル作成可能の回答を受信した場合は、データ制御機能部114は、該当するデータノードにファイル作成を要求する(S604)。なお、データ制御機能部114は、適宜のタイミングでファイルをクライアント10から取得し、データノードに転送する。一方、ネームノードからファイル作成可能の回答を受信した場合以外においては、データ制御機能部114は、別のクラスタを選択する。クラスタの選択手法は上述の手法と同様である。ネームノードからファイル作成可能の回答を受信した場合以外とは、例えば、クラスタの容量が不足している等によりネームノードからファイル作成が許容困難の回答を受信した場合や、ネームノードから回答が無い場合がある。
データ制御機能部114は、ステップ603及び604の処理を、データ冗長度ポリシーに適したファイル作成処理が完了するまで繰り返す(S605)。ファイル作成処理が完了したら、データ制御機能部114は、データインデクス管理テーブル122を更新する(S606)。例えば、データ制御機能部114は、ファイル名からデータKeyを求め、データKeyと、ファイルを格納した1つ又は複数のクラスタのクラスタIDと、ファイル名と、アプリケーション種別と、ファイルのサイズと、最終更新日時をデータインデクス管理テーブル122に記憶する。また、データ制御機能部114は、ファイル作成結果をクライアントAPI機能部111に返信する(S607)。ファイル作成結果は、例えば、ファイル作成が完了したこと、及び、ファイルを作成したクラスタ等を含むことができる。ファイル作成結果は、クライアントAPI111経由でクライアント10に送信される。
また、リクエスト種別が<ファイル読込>の場合(S601)、データ制御機能部114は、クラスタ管理テーブル121及びデータインデクス管理テーブル123等を参照し、読込対象のファイルが格納されたクラスタのネームノードアドレスを取得する(S611)。例えば、データ制御機能部114は、クライアント10からのリクエストに含まれるファイル名に基づきデータインデクス管理テーブル122を参照し、対応するアプリケーション種別1005とクラスタID1003とを取得する。また、データ制御機能部114は、取得したアプリケーション種別に基づき、データポリシー管理テーブル123を参照し、対応する読込多数決判定情報905を取得する。さらに、データ制御機能部114は、取得したクラスタIDに基づきクラスタ管理テーブル121を参照し、対応するネームノードアドレス803を取得する。
データ制御機能部114は、取得されたネームノードアドレスに従い、選択されたクラスタのネームノードにファイル読込可否を問合せる(S612)。ネームノードからファイル読込可能の回答を受信した場合は、データ制御機能部114は、該当するクラスタのデータノードにファイル読込を要求する(S613)。これにより、データ制御機能部114は、データノードからファイルを読み込む。一方、ネームノードからファイル読込可能の回答を受信した場合以外においては、データ制御機能部114は、対象のファイルを格納するクラスタのうち別のクラスタを選択し、ステップS612を繰り返す。例えば、データインデクス管理テーブル122を参照して取得したクラスタIDのうち、他のひとつが選択される。データ制御機能部114は、ステップS612及びS613の処理を多数決判定ポリシーに適したファイル読込処理が完了するまで繰り返す(S614)。
多数決判定ポリシーが適用される場合、データ制御機能部114は、複数のデータノードからファイルを読み込み、その内容が同一のファイルの数が例えば取得した全数の過半数を得た場合に読込処理を完了と判定する。ファイルの同一性は、MD5等のハッシュ値を計算し同一かどうかでチェックすることができる。ファイル読込処理が完了したら、データ制御機能部114は、ファイル読込結果をクライアントAPI機能部111に返信する(S615)。ファイル読込結果は、例えば読み込んだファイルを含む。ファイル読込結果は、クライアントAPI111経由でクライアント10に送信される。
また、リクエスト種別が<ファイル削除>の場合、データ制御機能部114は、クラスタ管理テーブル121及びデータインデクス管理テーブル122を参照し、削除対象のファイルが格納されたクラスタのネームノードアドレスを取得する(S621)。例えば、データ制御機能部114は、クライアント10からのリクエストに含まれるファイル名に基づきデータインデクス管理テーブル122を参照し、対応するクラスタID1003を取得する。また、データ制御機能部114は、取得したクラスタIDに基づきクラスタ管理テーブル121を参照し、対応するネームノードアドレス803を取得する。
データ制御機能部114は、取得されたネームノードアドレスに従い、選択されたクラスタのネームノードにファイル削除可否を問合せる(S622)。ネームノードからファイル削除可能の回答を受信した場合は、データ制御機能部114は、該当するデータノードにファイル削除を要求する(S623)。これにより、ファイルが格納されたデータノードからファイルを削除する。一方、ネームノードからファイル削除可能の回答を受信した場合以外においては、データ制御機能部114は、別のクラスタを選択する。データ制御機能部114は、ステップS622及びS623を、データを保持しているノードからファイル削除処理が完了するまで繰り返す(S624)。ファイル削除処理が完了したら、データ制御機能部114は、データインデクス管理テーブルを更新する(S625)。例えば、対象のファイル名のエントリを削除する。また、データ制御機能部114は、ファイル削除結果を返却する(S626)。ファイル削除結果は、例えば、ファイルが正しく削除されたことを示す情報を含む。ファイルが削除できなかったクラスタがある場合は、そのクラスタの識別情報をファイル削除結果に含めてもよい。ファイル削除結果は、クライアントAPI111経由でクライアント10に送信される。
また、リクエスト種別が<ファイル検索>の場合、データ制御機能部114は、リクエスト情報に含まれる検索条件によりデータインデクス管理テーブル122を検索する(S631)。検索条件としては、例えば、ファイル名の指定、サイズの指定、更新日時の範囲指定等があるが、これら以外でもよい。例えば検索条件がファイル名の指定の場合、データ制御機能部114は、リクエスト情報に含まれるファイル名に基づきデータインデクス管理テーブル122を参照して該当するエントリの各情報(ファイルの識別情報及び上述のファイル情報)を取得する。そして、データ制御機能部114は、ファイル検索結果をクライアントAPI機能部111に返信する(S632)。ファイル検索結果は、例えばデータインデクス管理テーブル122から取得した該当エントリの各情報を含む。ファイル検索結果は、クライアントAPI111経由でクライアント10に送信される。
図7は、ゲートウェイ装置30の具備するデータリストア機能部の処理ステップの一例を示したものである。データリストア機能部115は、クラスタ管理テーブル121を参照し(S701)、各クラスタについて、稼動状態として「異常」が格納され、状態変更日時からの経過時間(異常継続時間)が、図12に示すデータリストアルールに格納された閾値を超過しているか否かを判定する(S702)。超過しているクラスタ(以下、異常継続クラスタと称する)がある場合、データリストア機能部115は、データ制御機能部114を呼出して、ポリシーに適したファイル作成処理を実行する(S703)。例えば、該当するクラスタに格納されたファイルのデータ冗長度を確保するため、異常継続クラスタ以外のクラスタ等から読み出して、他のクラスタへ格納する。
具体的には、データリストア機能部115は、データインデクス管理テーブル122のクラスタIDを参照して、異常継続クラスタ(第1ファイルサーバクラスタ)のクラスタIDが登録されているエントリを検索する。データリストア機能部115は、該当するエントリのアプリケーション種別1006に基づき、データポリシー管理テーブル123を参照し、対応するデータ冗長度を取得する。データ冗長度が複数の場合、異常継続クラスタが異常状態であることにより冗長度が下がっていることになる。従って、データリストア機能部115は、データインデクス管理テーブル122の該当エントリを再度参照し、異常継続クラスタ以外のクラスタIDを特定する。特定されたクラスタIDが示すクラスタ(第2ファイルサーバクラスタ)から、図6に示すファイル読込処理と同様にしてファイルを読み込む。なお、データリストア機能部115は他の適宜の装置からファイルを読み込んでもよい。また、データリストア機能部115は、読み込んだファイルを、図6に示すファイル作成処理と同様にして、データインデクス管理テーブル122の該当エントリのクラスタID1003とは別のクラスタ(第3ファイルサーバクラスタ)に書き込む。
なお、データリストア機能部116の処理は、ヘルスチェック機能部113により呼び出される他、他の適宜のトリガにより実行されてもよいし、定期的に実行されてもよい。
図13は、クライアント10からゲートウェイ装置30がファイル作成APIリクエストを受信し、クラスタ#1001及び#1003にファイルを作成する処理フロー1301の一例を示したものである。この例においては、クラスタ#1002のネームノードに障害が発生している。ファイル作成APIリクエストを受信した後、ゲートウェイ装置30においては以下の処理が実行される。ファイル作成APIリクエストの例を、図17に示す(http://gateway1/webhdfs/v1/user/yamada/fileabc001.txt?op=create&type=AP2)。ファイル作成APIリクエストは、例えば、ファイル名と、リクエスト種別と、アプリケーション種別とを含む。
まず、ゲートウェイ装置30は、図8に示すクラスタ管理テーブル121を参照し、クラスタ#1002に障害が発生していることを取得する。次に、ゲートウェイ装置30は、図9に示すデータポリシー管理テーブル123を参照し、アプリケーション種別がAP2の場合に、データの多重度(データ冗長度)が2であることを取得する。次に、ゲートウェイ装置3により、例えば正常なクラスタ#1001及び#1003が候補として選択され、各クラスタのネームノードに対して、ファイル作成要求がそれぞれ送られる。ゲートウェイ装置30は、ネームノードからファイル作成応答:可(acceptable)を受信した場合、指定されたデータノードにファイルを書き込む。ゲートウェイ装置30は、2つのデータノードへの書き込みが成功すると(ファイル書込の完了通知を受信すると)、データインデクス管理テーブルの内容を更新し、クライアントに対してファイル作成完了を応答する。
図14は、クライアント10からゲートウェイ装置30がファイル読込APIリクエストを受信し、クラスタ#1001又は#1003からファイルを読み込む処理フロー1401の一例を示したものである。この例においては、クラスタ#1002のネームノードに障害が発生している。ファイル読込APIリクエストを受信した後、ゲートウェイ装置30においては以下の処理が実行される。ファイル読込APIリクエストの例を、図17に示す
(http://gateway1/webhdfs/v1/user/yamada/fileabc001.txt?op=open)。ファイル読込APIリクエストは、例えば、読込対象のファイル名と、リクエスト種別とを含む。
まず、ゲートウェイ装置30は、図8に示すクラスタ管理テーブル121を参照し、クラスタ#1002に障害が発生していることを取得する。次に、ゲートウェイ装置30は、図10に示すデータインデクス管理テーブル122を参照し、読込対象のファイルがクラスタ#1001及び#1003に格納されていることを取得する。ゲートウェイ装置30は、クラスタ#1001のネームノードにファイル読込要求を送り、その応答が「可」であった場合、該当するデータノードに対するファイル読込を実行し、ファイルを取得する。また、ゲートウェイ装置30は、読み込んだファイルをクライアント10に転送して読込完了する。一方、ネームノード#1001の応答が「許容困難」(not acceptable)であった場合は、ゲートウェイ装置30は、ネームノード#1003にファイル読込要求を送り、その応答が「可」であった場合、該当するデータノードに対するファイル読込を実行し、ファイルを取得する。ネームノード#1003の応答が「許容困難」であった場合、ゲートウェイ装置30は、クライアント10にファイル読込失敗を応答する。
図15は、クライアント10からゲートウェイ装置30がファイル削除APIリクエストを受信し、クラスタ40#1001及び#1003にファイルを削除する処理フロー1501の一例を示したものである。この例においては、クラスタ#1002のネームノードに障害が発生している。ファイル削除APIリクエストを受信した後、ゲートウェイ装置30においては以下の処理が実行される。ファイル削除APIリクエストの例を、図17に示す(http://gateway1/webhdfs/v1/user/yamada/fileabc001.txt?op=delete)。ファイル削除APIリクエストは、例えば、削除対象のファイル名と、リクエスト種別とを含む。
まず、ゲートウェイ装置30は、図8に示すクラスタ管理テーブル121を参照し、クラスタ#1002に障害が発生していることを取得する。次に、ゲートウェイ装置30は、図10に示すデータインデクス管理テーブル122を参照し、ファイルがクラスタ#1001及び#1003に格納されていることを取得する。
ゲートウェイ装置30は、クラスタ#1001及び#1003のネームノードにファイル削除要求を送り、その応答が「可」であった場合、該当するデータノードにファイル削除を実行し、ファイルを削除する。また、ゲートウェイ装置30は、クライアント10にファイル削除完了を応答する。
図16は、クライアント10からゲートウェイ装置30がファイル検索APIリクエストを受信し、検索条件に適合するファイル一覧を探す処理フロー1601の一例を示したものである。ファイル検索APIリクエストの例を、図17に示す(http://gateway1/webhdfs/v1/user/yamada?op=find&name=*abc*&size>=1M)。ファイル検索APIリクエストは、例えばリクエスト種別と、検索条件とを含む。図17の例は、検索条件として、ファイル名にabcを含み、サイズが1MB以上のファイルを検索する条件を含む。
ゲートウェイ装置30は、ファイル検索APIリクエストを受信した後、まず、図10に示すデータインデクス管理テーブル122を検索し、条件に適合するファイル情報一覧を取得する。また、ゲートウェイ装置30は、クライアント10にファイル検索完了を応答する。
図22は、本実施例のゲートウェイ装置の概略シーケンス図である。
ゲートウェイ装置30のヘルスチェック機能部113は、ファイルサーバクラスタ40の稼動状態を監視する(S2201)。また、ゲートウェイ装置30のデータ制御機能部114は、クライアント装置から分散ファイルシステムへのリクエストを受信する(S2202)。ゲートウェイ装置30のデータ制御機能部114は、正常に稼働中のファイルサーバクラスタ40の中からひとつ又は複数を選択する(S2203)。また、ゲートウェイ装置30のデータ制御機能部114は、リクエストを、選択したファイルサーバクラスタ40へ振り分けて送信する(S2204)。
本実施例によると、複数のクライアント端末と、サーバとローカルディスクで構成される分散ファイルシステムが大量データをやりとりするシステムにおいて、システム全体の可用性を向上させることができる。
また、本実施例によれば、分散ファイルシステムに対するリクエストに対し、アプリケーション拡張ゲートウェイ装置が、アプリケーションの要求するレベルに沿って、データを処理する適切なサーバを選択し、データの分散処理を実施することが可能である。また、アプリケーションの要求するレベルに沿って、データ、及びデータのメタ情報を複数のサーバで分散管理することにより、サーバやローカルディスクの障害発生時に、サービスを停止せずにデータ処理を実行することが可能である。
さらに、本実施例によれば、分散ファイルシステムのサーバソフトウェアに変更を加えることなく、アプリケーション拡張ゲートウェイ装置を導入することが可能である。さらにゲートウェイ装置においては、アプリケーション種類に応じてデータの管理ポリシーを柔軟に設定し実行することや、ファイル検索機能部などの付加機能部を追加することが可能である。
また、本実施例によれば、高性能なサーバを必要とせず、大量データを管理するソフトウェアを必要とせず、導入が容易である。その一方で、おろそかになる信頼性確保のため、複数のサーバで同じ処理を並列実行させて、データを冗長化することにより高信頼性を維持することが可能となる。
(実施例2)
実施例1では、複数のファイルサーバクラスタが予め構築されており、データの分散化をそのまま行って構わない場合について説明した。実施例2では、初期の段階ではファイルサーバクラスタが1つしかなく、分散化されていないデータが存在する場合について移行方法を説明する。
データ移行した後の部分は実施例1と同様である。そのため、本実施例では実施例1との相違点を中心に説明する。
図18は、実施例2におけるシステムの全体構成の一例を示したものである。初期の段階ではクラスタ#1001(第4ファイルサーバクラスタ)にデータが格納されており、新たに追加されたクラスタ#1002及び#1003(第5ファイルサーバクラスタ)に#1001のデータの一部が複製されることにより、複数のクラスタによりデータ冗長化が行われることを示している。新たに追加されたクラスタ#1002及び#1003には通常、ファイルが格納されていないが、何らかのファイルが格納されていても構わない。
図19は、実施例2におけるゲートウェイ装置の構成の一例を示している。実施例2におけるゲートウェイ装置30は、クラスタ再構成機能部116をさらに備え、クラスタ再構成機能部116によりデータの移行処理が行われる。
図21は、アプリケーション拡張ゲートウェイ装置が保持するデータ再構成ルールを管理するテーブルの構成例を示す図である。データ再構成ルールは予め定められ、メモリ105に格納される。例えば、データ再構成ルールは、ファイルの移行元クラスタID2102と、1つ又は複数の移行先クラスタID2103と、データポリシーID2104を含む。データポリシーID2104は、図9に示すデータポリシー管理テーブル122に格納されたポリシーID902に対応する。この例では、データポリシー管理テーブル122に格納された複数のポリシーのうちのいずれかを選択的に用いており、既存のポリシーから選択することで設定を簡素化できる。なお、新たなポリシーを設定してもよい。
図20は、ゲートウェイ装置30が具備するクラスタ再構成機能部116の処理ステップの一例を示したものである。クラスタ再構成機能部116は、図21に示すデータ再構成ルール2101、及び、図8に示すクラスタ管理テーブル121を参照し(S2001)、移行元のクラスタ#1001からデータファイルの一覧、データファイルを取得する(S2002)。次に、クラスタ再構成機能部116は、移行先クラスタ#1002及び#1003に対して、データ制御機能部114を呼び出すことにより実施例1と同様にファイル作成処理を実行する(S2003)。この際に、図21のデータポリシーID=2のポリシーが適用される。ここでは、データ冗長度が2であるため、移行元のクラスタ#1001のデータファイルが複製されて、移行先のクラスタ#1002及び#1003に適宜振り分けられる。また、クラスタ再構成機能部116は、移行したファイルについてデータインデクス管理テーブル122を更新する(S2004)。更新の手法は、実施例1におけるファイル書込処理の場合と同様である。
本実施例によると、ゲートウェイ装置により、1つのファイルサーバクラスタしかないシステムから分散化されたシステムへ移行できる。また、移行後は、実施例1におけるゲートウェイ装置による処理を適用できる。なお、上述の例では、1つのファイルサーバクラスタしかない場合を説明したが、複数のファイルサーバクラスタがあるシステムに新たなファイルサーバクラスタを設ける場合にも適用できる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれている。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
10 クライアント
20 ネットワーク
30 アプリケーション拡張ゲートウェイ装置
40 ファイルサーバクラスタ
50 ネームノード
60 データノード
111 クライアントAPI機能部
112 クラスタ設定機能部
113 ヘルスチェック機能部
114 データ制御機能部
115 データリストア機能部
116 クラスタ再構成機能部
117 データポリシー設定機能部
121 クラスタ管理テーブル
122 データインデクス管理テーブル
123 データポリシー管理テーブル

Claims (14)

  1. ファイル格納、ファイル読込及びファイル削除のいずれかを含むリクエストを送信するクライアント装置と、該リクエストに応じたファイル処理を行う複数のファイルサーバクラスタを有する分散ファイルシステムとの間でリクエストを仲介するゲートウェイ装置であって、
    前記ファイルサーバクラスタの稼動状態を監視するヘルスチェック機能部と、
    前記クライアント装置から前記分散ファイルシステムへのリクエストを受信し、正常に稼働中のファイルサーバクラスタの中からひとつ又は複数を選択して該リクエストを選択したファイルサーバクラスタへ振り分けるデータ制御機能部と
    を有するゲートウェイ装置。
  2. データ冗長度が設定されたデータポリシー記憶領域
    をさらに備え、
    前記データ制御機能部は、ファイル格納のリクエストを受信すると、データ冗長度に応じた数の複数のファイルサーバクラスタを選択し、該ファイルサーバクラスタのそれぞれに前記リクエストを送信して各ファイルサーバクラスタにファイルを格納する請求項1に記載のゲートウェイ装置。
  3. 前記データポリシー記憶領域は、アプリケーション種別毎にデータ冗長度が設定され、
    前記ファイル格納のリクエストは、格納するファイルのアプリケーション種別を含み、
    前記データ制御機能部は、前記データポリシー記憶領域を参照して、前記ファイル格納のリクエストに含まれるアプリケーション種別に対応するデータ冗長度を特定する請求項2に記載のゲートウェイ装置。
  4. 操作者の操作に従い、アプリケーション種別に対応するデータ冗長度を前記データ記憶領域に設定するデータポリシー設定部
    をさらに備える請求項3に記載のゲートウェイ装置。
  5. ファイルの識別情報と、該ファイルを格納した1つ又は複数の前記ファイルサーバクラスタの識別情報とを少なくとも含むデータインデクスを記憶するデータインデクス記憶領域
    をさらに備え、
    前記データ制御機能部は、読込対象のファイルの識別情報を含むファイル読込のリクエストを受信すると、前記データインデクス記憶領域を参照して、読込対象のファイルが記憶された前記ファイルサーバクラスタを特定し、特定された前記ファイルサーバクラスタの1つ又は複数に該リスエストを送信して対象のファイルを読み込む請求項1に記載のゲートウェイ装置。
  6. 読込多数決判定の要否を示す判定情報が設定されたデータポリシー記憶領域
    をさらに備え、
    前記データ制御機能部は、ファイル読込のリクエストを受信すると、前記データポリシー記憶領域の判定情報が読込多数決判定することを示す場合、特定された前記ファイルサーバクラスタの複数に該リスエストを送信し、複数のファイルサーバクラスタから取得したファイルの同一性をチェックして同一多数により読込完了と判定する請求項5に記載のゲートウェイ装置。
  7. ファイルの識別情報と、該ファイルを格納した1つ又は複数の前記ファイルサーバクラスタの識別情報とを少なくとも含むデータインデクスを記憶するデータインデクス記憶領域
    をさらに備え、
    前記データ制御機能部は、削除対象のファイルの識別情報を含むファイル削除のリクエストを受信すると、前記データインデクス記憶領域を参照して、削除対象のファイルが記憶されたファイルサーバクラスタを特定し、特定されたファイルサーバクラスタの1つ又は複数に該リスエストを送信して対象のファイルを削除する請求項1に記載のゲートウェイ装置。
  8. ファイルの識別情報と、該ファイルのサイズ、アプリケーション種別及び更新日時の少なくともいずれかを含むファイル情報とを含むデータインデクスを記憶するデータインデクス記憶領域
    をさらに備え、
    前記データ制御機能部は、前記クライアント装置から検索条件を含むファイル検索のリクエストを受信すると、自装置の前記データインデクス記憶領域を検索して条件に合致するファイルのファイル識別情報及び/又はファイル情報を前記クライアント装置に返信する請求項1に記載のゲートウェイ装置。
  9. 前記データ制御機能部は、前記ファイル格納のリクエストの受信により各ファイルサーバクラスタにファイルを格納すると、前記データインデクス記憶領域に、ファイルの識別情報と、格納した各ファイルサーバクラスタの識別情報と、ファイルのサイズと、アプリケーション種別と、更新日時とを記憶する請求項8に記載のゲートウェイ装置。
  10. 前記ヘルスチェック機能部により異常状態と判定された継続時間が予め定められた閾値を超過した第1ファイルサーバクラスタについて、該第1ファイルサーバクラスタに格納されているファイルと同じファイルを第2ファイルサーバクラスタ又は他の装置から取得して複製し、第3のファイルサーバクラスタへ格納することで、第1ファイルサーバクラスタに格納されているファイルのデータ冗長度を満たすデータリストア機能部
    をさらに備える請求項1乃至9のいずれかに記載のゲートウェイ装置。
  11. 前記分散ファイルシステムが、ファイルが既に格納された第4ファイルサーバクラスタと、ファイルが格納されていない又は新たに設置される1つ又は複数の第5ファイルサーバクラスタとを含み、
    前記ゲートウェイ装置は、前記第4ファイルサーバクラスタのファイル及びメタデータを取得して複製し、前記第5ファイルサーバクラスタのいずれかへ格納するクラスタ再構成機能部
    をさらに備える請求項1乃至10のいずれかに記載のゲートウェイ装置。
  12. 前記クラスタ再構成機能部は、第4ファイルサーバクラスタから取得したファイルのデータ冗長度に応じて該ファイルを複製し、前記第5ファイルサーバクラスタに格納する請求項11に記載のゲートウェイ装置。
  13. リクエストに応じてファイル格納、ファイル読込及びファイル削除のいずれかを行う複数のファイルサーバクラスタを有する分散ファイルシステムと、
    ファイル格納、ファイル読込及びファイル削除のいずれかを含むリクエストを送信するクライアント装置と前記分散ファイルシステムとの間でリクエストを仲介するゲートウェイ装置と
    を備え、
    前記ゲートウェイ装置は、
    前記ファイルサーバクラスタの稼動状態を監視するヘルスチェック機能部と、
    前記クライアント装置から前記分散ファイルシステムへのリクエストを受信し、正常に稼働中のファイルサーバクラスタの中からひとつ又は複数を選択して該リクエストを選択したファイルサーバクラスタへ振り分けるデータ制御機能部と
    を有するファイルサーバシステム。
  14. リクエストに応じてファイル格納、ファイル読込及びファイル削除のいずれかを行う複数のファイルサーバクラスタを有する分散ファイルシステムと、ファイル格納、ファイル読込及びファイル削除のいずれかを含むリクエストを送信するクライアント装置と前記分散ファイルシステムとの間でリクエストを仲介するゲートウェイ装置とを備えたファイルサーバシステムにおけるファイル分散方法であって、
    前記ゲートウェイ装置が、
    前記ファイルサーバクラスタの稼動状態を監視し、
    前記クライアント装置から前記分散ファイルシステムへのリクエストを受信し、正常に稼働中のファイルサーバクラスタの中からひとつ又は複数を選択して該リクエストを選択したファイルサーバクラスタへ振り分ける前記ファイル分散方法。
JP2014006135A 2014-01-16 2014-01-16 ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法 Expired - Fee Related JP6328432B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014006135A JP6328432B2 (ja) 2014-01-16 2014-01-16 ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法
US14/595,554 US20150201036A1 (en) 2014-01-16 2015-01-13 Gateway device, file server system, and file distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014006135A JP6328432B2 (ja) 2014-01-16 2014-01-16 ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法

Publications (2)

Publication Number Publication Date
JP2015135568A true JP2015135568A (ja) 2015-07-27
JP6328432B2 JP6328432B2 (ja) 2018-05-23

Family

ID=53522400

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014006135A Expired - Fee Related JP6328432B2 (ja) 2014-01-16 2014-01-16 ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法

Country Status (2)

Country Link
US (1) US20150201036A1 (ja)
JP (1) JP6328432B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018049332A (ja) * 2016-09-20 2018-03-29 株式会社東芝 データ検索システムおよびデータ検索方法

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US10749711B2 (en) 2013-07-10 2020-08-18 Nicira, Inc. Network-link method useful for a last-mile connectivity in an edge-gateway multipath system
US9306985B1 (en) * 2014-03-25 2016-04-05 8X8, Inc. User configurable data storage
US10541936B1 (en) * 2015-04-06 2020-01-21 EMC IP Holding Company LLC Method and system for distributed analysis
US10541938B1 (en) 2015-04-06 2020-01-21 EMC IP Holding Company LLC Integration of distributed data processing platform with one or more distinct supporting platforms
US10515097B2 (en) * 2015-04-06 2019-12-24 EMC IP Holding Company LLC Analytics platform for scalable distributed computations
US10706970B1 (en) 2015-04-06 2020-07-07 EMC IP Holding Company LLC Distributed data analytics
US10776404B2 (en) 2015-04-06 2020-09-15 EMC IP Holding Company LLC Scalable distributed computations utilizing multiple distinct computational frameworks
US10860622B1 (en) 2015-04-06 2020-12-08 EMC IP Holding Company LLC Scalable recursive computation for pattern identification across distributed data processing nodes
US10270707B1 (en) 2015-04-06 2019-04-23 EMC IP Holding Company LLC Distributed catalog service for multi-cluster data processing platform
US10511659B1 (en) * 2015-04-06 2019-12-17 EMC IP Holding Company LLC Global benchmarking and statistical analysis at scale
US10425350B1 (en) 2015-04-06 2019-09-24 EMC IP Holding Company LLC Distributed catalog service for data processing platform
US10791063B1 (en) 2015-04-06 2020-09-29 EMC IP Holding Company LLC Scalable edge computing using devices with limited resources
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US10425382B2 (en) 2015-04-13 2019-09-24 Nicira, Inc. Method and system of a cloud-based multipath routing protocol
US10229431B1 (en) * 2015-05-28 2019-03-12 Sprint Communications Company L.P. Explicit user history input
US9762672B2 (en) * 2015-06-15 2017-09-12 International Business Machines Corporation Dynamic node group allocation
US10656861B1 (en) 2015-12-29 2020-05-19 EMC IP Holding Company LLC Scalable distributed in-memory computation
US10498804B1 (en) * 2016-06-29 2019-12-03 EMC IP Holding Company LLC Load balancing Hadoop distributed file system operations in a non-native operating system
US11157641B2 (en) * 2016-07-01 2021-10-26 Microsoft Technology Licensing, Llc Short-circuit data access
CN108304396A (zh) * 2017-01-11 2018-07-20 北京京东尚科信息技术有限公司 数据存储方法和装置
US10992568B2 (en) 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US11252079B2 (en) 2017-01-31 2022-02-15 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US10992558B1 (en) 2017-11-06 2021-04-27 Vmware, Inc. Method and apparatus for distributed data network traffic optimization
US11121962B2 (en) 2017-01-31 2021-09-14 Vmware, Inc. High performance software-defined core network
US10778528B2 (en) 2017-02-11 2020-09-15 Nicira, Inc. Method and system of connecting to a multipath hub in a cluster
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
JP6939220B2 (ja) * 2017-08-03 2021-09-22 富士通株式会社 データ解析プログラム、データ解析方法、およびデータ解析装置
CN107729178A (zh) * 2017-09-28 2018-02-23 郑州云海信息技术有限公司 一种元数据服务进程接替方法及装置
US10999165B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Three tiers of SaaS providers for deploying compute and network infrastructure in the public cloud
US10608844B2 (en) 2017-10-02 2020-03-31 Vmware, Inc. Graph based routing through multiple public clouds
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US10959098B2 (en) 2017-10-02 2021-03-23 Vmware, Inc. Dynamically specifying multiple public cloud edge nodes to connect to an external multi-computer node
US11089111B2 (en) 2017-10-02 2021-08-10 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
US10992967B2 (en) * 2017-12-05 2021-04-27 Sony Interactive Entertainment LLC Ultra high-speed low-latency network storage
US11310170B2 (en) 2019-08-27 2022-04-19 Vmware, Inc. Configuring edge nodes outside of public clouds to use routes defined through the public clouds
US11044190B2 (en) 2019-10-28 2021-06-22 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
US11722925B2 (en) 2020-01-24 2023-08-08 Vmware, Inc. Performing service class aware load balancing to distribute packets of a flow among multiple network links
US11477127B2 (en) 2020-07-02 2022-10-18 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
US11363124B2 (en) 2020-07-30 2022-06-14 Vmware, Inc. Zero copy socket splicing
CN112383628B (zh) * 2020-11-16 2021-06-18 北京中电兴发科技有限公司 一种基于流式存储的存储网关资源分配方法
US11575591B2 (en) 2020-11-17 2023-02-07 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
CN116783874A (zh) 2021-01-18 2023-09-19 Vm维尔股份有限公司 网络感知的负载平衡
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
US11381499B1 (en) 2021-05-03 2022-07-05 Vmware, Inc. Routing meshes for facilitating routing through an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US11375005B1 (en) 2021-07-24 2022-06-28 Vmware, Inc. High availability solutions for a secure access service edge application
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
CN113923211A (zh) * 2021-11-18 2022-01-11 许昌许继软件技术有限公司 用于电网控制的基于消息机制的文件传输系统和方法
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs
CN115460089A (zh) * 2022-08-30 2022-12-09 兴业银行股份有限公司 开放、多云、多集群联邦实现的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040133606A1 (en) * 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
JP2005502096A (ja) * 2001-01-11 2005-01-20 ゼット−フォース コミュニケイションズ インコーポレイテッド ファイルスイッチ及び交換ファイルシステム
JP2009211403A (ja) * 2008-03-04 2009-09-17 Hitachi Software Eng Co Ltd ファイル検索プログラム
JP2013054521A (ja) * 2011-09-02 2013-03-21 Fujitsu Ltd 分散制御プログラム、分散制御方法、および情報処理装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9197599B1 (en) * 1997-09-26 2015-11-24 Verizon Patent And Licensing Inc. Integrated business system for web based telecommunications management
US7788335B2 (en) * 2001-01-11 2010-08-31 F5 Networks, Inc. Aggregated opportunistic lock and aggregated implicit lock management for locking aggregated files in a switched file system
US7512673B2 (en) * 2001-01-11 2009-03-31 Attune Systems, Inc. Rule based aggregation of files and transactions in a switched file system
US20070022129A1 (en) * 2005-07-25 2007-01-25 Parascale, Inc. Rule driven automation of file placement, replication, and migration
US8805949B2 (en) * 2008-01-16 2014-08-12 Netapp, Inc. System and method for populating a cache using behavioral adaptive policies
US8868637B2 (en) * 2009-09-02 2014-10-21 Facebook, Inc. Page rendering for dynamic web pages
US8180813B1 (en) * 2009-12-08 2012-05-15 Netapp, Inc. Content repository implemented in a network storage server system
US8762484B2 (en) * 2010-01-15 2014-06-24 Endurance International Group, Inc. Unaffiliated web domain hosting service based on a common service architecture
EP2583211B1 (en) * 2010-06-15 2020-04-15 Oracle International Corporation Virtual computing infrastructure
US20130007091A1 (en) * 2011-07-01 2013-01-03 Yahoo! Inc. Methods and apparatuses for storing shared data files in distributed file systems
CN104951155B (zh) * 2014-03-31 2019-05-17 宸盛光电有限公司 电容式触控装置及其制作方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005502096A (ja) * 2001-01-11 2005-01-20 ゼット−フォース コミュニケイションズ インコーポレイテッド ファイルスイッチ及び交換ファイルシステム
US20040133606A1 (en) * 2003-01-02 2004-07-08 Z-Force Communications, Inc. Directory aggregation for files distributed over a plurality of servers in a switched file system
JP2009211403A (ja) * 2008-03-04 2009-09-17 Hitachi Software Eng Co Ltd ファイル検索プログラム
JP2013054521A (ja) * 2011-09-02 2013-03-21 Fujitsu Ltd 分散制御プログラム、分散制御方法、および情報処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018049332A (ja) * 2016-09-20 2018-03-29 株式会社東芝 データ検索システムおよびデータ検索方法

Also Published As

Publication number Publication date
US20150201036A1 (en) 2015-07-16
JP6328432B2 (ja) 2018-05-23

Similar Documents

Publication Publication Date Title
JP6328432B2 (ja) ゲートウェイ装置、ファイルサーバシステム及びファイル分散方法
US20210081383A1 (en) Lifecycle support for storage objects
JP6674532B2 (ja) 複数構内でのデジタルコンテンツアイテムのホスティングにおけるコンテンツアイテムブロック複製プロトコル
US9971823B2 (en) Dynamic replica failure detection and healing
US10146636B1 (en) Disaster recovery rehearsals
US8918392B1 (en) Data storage mapping and management
US8990243B2 (en) Determining data location in a distributed data store
US10853242B2 (en) Deduplication and garbage collection across logical databases
US9355060B1 (en) Storage service lifecycle policy transition management
US8832234B1 (en) Distributed data storage controller
US9727522B1 (en) Multi-tenant storage service object lifecycle management using transition job objects
JP5727020B2 (ja) クラウドコンピューティングシステム及びそのデータ同期化方法
US9031906B2 (en) Method of managing data in asymmetric cluster file system
US8935203B1 (en) Environment-sensitive distributed data management
US8930364B1 (en) Intelligent data integration
US11740811B2 (en) Reseeding a mediator of a cross-site storage solution
US9792150B1 (en) Detecting site change for migrated virtual machines
US20130007091A1 (en) Methods and apparatuses for storing shared data files in distributed file systems
TWI782487B (zh) 利用索引物件來進行簡易儲存服務無縫遷移的方法、主裝置以及儲存伺服器
US20140059315A1 (en) Computer system, data management method and data management program
US20120254555A1 (en) Computer system and data management method
JP2015509235A (ja) 記憶階層化のためのコンテンツ選択
Honnutagi The Hadoop distributed file system
US8621260B1 (en) Site-level sub-cluster dependencies
US20240028611A1 (en) Granular Replica Healing for Distributed Databases

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161228

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20170307

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170317

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171130

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20171130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20171201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180418

R150 Certificate of patent or registration of utility model

Ref document number: 6328432

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees