• ポートフォリオ機能


ポートフォリオを新規に作成して保存
既存のポートフォリオに追加保存

  • この表をプリントする
PDF PDFをダウンロード
審決分類 審判 査定不服 2項進歩性 取り消して特許、登録 G06F
管理番号 1342344
審判番号 不服2017-15962  
総通号数 225 
発行国 日本国特許庁(JP) 
公報種別 特許審決公報 
発行日 2018-09-28 
種別 拒絶査定不服の審決 
審判請求日 2017-10-27 
確定日 2018-08-01 
事件の表示 特願2016-529765「クラスタメンバーシップ管理における分断耐性」拒絶査定不服審判事件〔平成27年 3月 5日国際公開、WO2015/030895、平成28年10月 6日国内公表、特表2016-531348、請求項の数(14)〕について、次のとおり審決する。 
結論 原査定を取り消す。 本願の発明は、特許すべきものとする。 
理由 第1 手続の経緯

本願は,2014年6月5日(パリ条約による優先権主張2013年8月26日(以下,「優先日」という。),2014年3月13日:米国)を国際出願日とする出願であって,平成29年3月6日付けで拒絶理由通知がされ,同年6月12日に意見書が提出されるとともに手続補正がされたものの,同年同月20日付けで拒絶査定(原査定)がされ,これに対し,同年10月27日に拒絶査定不服審判の請求がされたものである。


第2 原査定の概要

原査定(平成29年6月20日付け拒絶査定)の概要は次のとおりである。

本願請求項1-14に係る発明は,以下の引用文献1-4に基づいて,その優先日前にその発明の属する技術の分野における通常の知識を有する者が容易に発明をすることができたものであるから,特許法第29条第2項の規定により特許を受けることができない。

<引用文献等一覧>

1.米国特許第6553389号明細書
2.特開2010-186472号公報
3.特表2012-507075号公報
4.米国特許第6839752号明細書


第3 本願発明

本願請求項1-14に係る発明(以下,それぞれ「本願発明1」-「本願発明14」という。)は,平成29年6月12日付けの手続補正で補正された特許請求の範囲の請求項1-14に記載された事項により特定される発明であり,以下のとおりの発明である。

「 【請求項1】
方法であって,
クラスタを少なくとも第1のパーティションと第2のパーティションに分割する失敗事象または管理事象を受けてコンピューティングノードのクラスタを管理する工程であって,(i)前記クラスタはオブジェクトストアを提供するために前記コンピューティングノードの各々のローカルストレージリソースを集約し,(ii)前記オブジェクトストアに格納された各オブジェクトは,対応する仮想マシンに関連付けられた仮想ディスクを表し,かつ個々の前記コンピューティングノードのストレージリソースに格納される複数のデータコンポーネントに分割されるデータを含む,前記管理する工程と,
前記オブジェクトストアに格納された第1のオブジェクトを含むデータコンポーネントの大多数が前記第1のパーティション内のコンピューティングノード内に格納されているということを判断する工程と,
前記オブジェクトストア内に格納された第2のオブジェクトを含むデータコンポーネントの大多数が前記第2のパーティション内のコンピューティングノード内に格納されているということを判断する工程と,
前記第1のオブジェクトを含むデータコンポーネントの大多数が前記第1のパーティション内のコンピューティングノード内に格納されているという判断に応答して,前記第2のパーティションから前記第1のオブジェクトへのいかなるアクセスを拒絶しつつ,構成オペレーションが前記第1のパーティション内のコンピューティングノード内に格納された前記第1のオブジェクトのデータコンポーネントに対して行われることを許可する工程と,
前記第2のオブジェクトを含むデータコンポーネントの大多数が前記第2のパーティション内のコンピューティングノード内に格納されているという判断に応答して,前記第1のパーティションから前記第2のオブジェクトへのいかなるアクセスを拒絶しつつ,構成オペレーションが前記第2のパーティション内のコンピューティングノード内に格納された前記第2のオブジェクトのデータコンポーネントに対して行われることを許可する工程とを含む方法。
【請求項2】
前記第1のオブジェクトを含むデータコンポーネントの大多数がさらに前記第1のオブジェクトを含むすべてのデータを含むということを判断する工程と,
前記第1のパーティション内の前記コンピューティングノードのうちの1つの上で実行される要求処理により前記第1のパーティション内の前記第1のオブジェクトに対しI/Oオペレーションが行われることを許可する工程とをさらに含む請求項1に記載の方法。
【請求項3】
前記要求処理は仮想マシンであり,前記第1のオブジェクトは前記仮想マシンの仮想ディスクを表す,請求項2に記載の方法。
【請求項4】
構成オペレーションが,前記オブジェクトストア内に格納されたオブジェクトの容量,可用性またはIOPSを修正するオペレーションを含む,請求項1に記載の方法。
【請求項5】
前記コンピューティングノードの各々は,前記オブジェクトストア内に格納された各オブジェクトの現在の構成を追跡するとともに,オブジェクトが前記コンピューティングノードによりアクセス可能かどうかを示すメモリ内データベースのローカルコピーを維持する,請求項1に記載の方法。
【請求項6】
前記第1のパーティション内のコンピューティングノードにより前記第1のオブジェクトに対し行われるいかなるオペレーションもログ内に格納する工程をさらに含む請求項5に記載の方法。
【請求項7】
故障事象から回復した場合,
前記第1のパーティションの前記コンピューティングノード内の前記メモリ内データベースの前記ローカルコピーを前記第2のパーティションのリーダノードからの前記メモリ内データベースの置換コピーで置換する工程と,
前記メモリ内データベースの前記置換コピーが更新されて前記第1のパーティションで行われたオペレーションを含むように前記ログ内の前記オペレーションを再生する工程とをさらに含む請求項6に記載の方法。
【請求項8】
前記第1のパーティションと前記第2のパーティションをマージした場合,前記第1のパーティション内のコンピューティングノード内に格納された前記第1のオブジェクトのデータコンポーネントと前記第2のパーティション内に格納された前記第1のオブジェクトの任意の他のデータコンポーネントとを調整する工程をさらに含む請求項1に記載の方法。
【請求項9】
前記調整する工程は,前記第1のオブジェクトになされた更新をマージされたクラスタのリーダノードで再生する工程をさらに含む,請求項8に記載の方法。
【請求項10】
前記第1のオブジェクトを含む1つまたは複数のデータコンポーネントが前記第2のパーティションのコンピューティングノード内に格納され,前記第2のパーティションから前記第1のオブジェクトへのいかなるアクセスを拒絶することが,前記第2のパーティション内のコンピューティングノード内に格納された前記第1のオブジェクトのデータコンポーネントへのアクセスを拒絶することを含む,請求項1に記載の方法。
【請求項11】
前記オブジェクトストア内の第3のオブジェクトのデータコンポーネントの過半数未満が前記第1のパーティション内のコンピューティングノードに格納されているということを判断する工程と,
前記第1のパーティションから前記第3のオブジェクトのデータコンポーネントへのアクセスを拒絶する工程とをさらに含む請求項1に記載の方法。
【請求項12】
前記第1のオブジェクトを含むデータコンポーネントの大多数は,前記第1のパーティション内のコンピューティングノード内の複数の複数のストレージリソース内に格納されている,請求項1に記載の方法。
【請求項13】
プロセッサで実行されると,請求項1?12のいずれか1項に記載の方法を行う命令を格納する非一時的コンピュータ可読記憶媒体。
【請求項14】
システムであって,
プロセッサと,
前記プロセッサで実行されると,請求項1?12のいずれか1項に記載の方法を行うアプリケーションをホストするメモリとを備えるシステム。」


第4 引用文献,引用発明等

1.引用文献1について

本願の優先日前に頒布され,原査定の拒絶の理由に引用された,米国特許第6553389号明細書(以下,これを「引用文献1」という。)には,図面とともに次の事項が記載されている。(下線は当審により付与。以下同じ。)

A.「DISCLOSURE OF THE INVENTION
The present invention provides a data storage system including a virtual data store having a plurality of portions of data and a plurality of data storage devices connectable to said virtual store capable of storing portions of said data of said virtual store. A coordinator is connectable to at least one of said plurality of data storage devices and is responsive to information therein to allow recovery of said data storage system after a partitioning of said plurality of data storage devices when said at least of one of said plurality of data storage devices contains all of said plurality of portions of said data to have complete coverage of said virtual store. 」(第3欄8行?24行)
(当審訳:「発明の開示
本発明は,データの複数の部分を有する仮想データストアと,前記仮想ストアの前記データの部分を記憶することが可能な前記仮想ストアに接続可能である複数のデータ記憶装置と,を含むデータ記憶システムを提供する。前記複数のデータ記憶装置の少なくとも1つが,前記仮想ストアの完全なカバー範囲を有する前記データの前記複数の部分を全て含む場合に,コーディネータは,前記複数のデータ記憶装置のうちの少なくとも1つに接続可能であり,その中の情報に応答して前記複数のデータ記憶装置が分割した後における前記データ記憶システムの回復を可能にする。」)

B.「Referring now to FIG. 1 , therein is shown a data system 10 having a plurality of hosts 12 through 16 with hosts 12 , 14 , and 16 being shown as typical. The hosts 12 through 16 are devices or systems such as computers, terminals, user devices, etc. which run different types of computer applications and access different blocks of data.
The plurality of hosts 12 through 16 are connected to a data storage network 18 which could be a local area network (LAN), a wide area network (WAN), the Internet, or any other communication network. In the best mode, the storage network 18 is a high-speed, optical data transmission network.
The storage network 18 contains a virtual store 20 whose data space is divided into a plurality of data blocks or stores which are mirrored. The data blocks are designated as store A, B, and C. The virtual store 20 is connected to a plurality of data storage devices 22 which are designated as device 1 through 6 . It will be understood that the virtual store 20 can contain fewer or more data stores and the plurality of data storage devices 22 can contain fewer or more data storage devices.」(第3欄40行?60行)
(当審訳:「ここで図1を参照すると,その中で,複数のホスト12?16を含むデータ・システム10が,ホスト12,14,および16とともに,典型例として示されている。ホスト12?16は,コンピュータ,端末,ユーザ装置などのような装置又はシステムであり,これらは異なるタイプのコンピュータアプリケーションを実行し,異なるデータのブロックにアクセスする。
複数のホスト12?16は,ローカルエリアネットワーク(LAN),ワイドエリアネットワーク(WAN),インターネット,または他の任意の通信ネットワークでありうるデータストレージネットワーク18に接続されている。最良の形態では,ストレージネットワーク18は,高速光データ伝送ネットワークである。
ストレージネットワーク18は,データ空間がミラーリングされた複数のデータブロックまたはストアに分割されている仮想ストア20を含む。データブロックは,ストアA,B,およびCと称されている。仮想ストア20は,複数のデータ記憶装置22に接続されており,それらは,モバイルデバイス1?6と称されている。仮想ストア20は,より少ない又はより多いデータストアを含むことができ,また,複数のデータ記憶装置22は,より少ない又はより多いデータ記憶装置を含むことができる,ことが理解されるだろう。」)

C.「A traditional single-datum replication protocol determines whether the datum is accessible in a partition as follows:
1. upon a failure, a coordinator sends a message to all reachable data storage devices requesting them to begin a new epoch;
2. each data storage device responds with its most recent epoch number and the list of replicas that it believes were active in that epoch;
3. once the coordinator has received status messages from all the reachable data storage devices, it finds the status message with the maximum epoch number and the list of replicas in that epoch is taken as the list from which a quorum must be drawn;
4. if the coordinator has established responses from more than half of the replicas that were active in the previous epoch, then it has established a quorum;
5. the coordinator sends out an epoch message with a new epoch number (greater than the previous maximum epoch number) to the reachable data storage devices, and the list of replicas active in this new epoch; and
6. the data storage devices receive the epoch message and record the new epoch number and list of replicas.
There are many variations on the above protocol intended to reduce the overhead in special situations or improve availability. These protocols are known to provide good availability as long as there are three or more replicas. When there are only two replicas, both must be available in a partition to have more than half available, so that a failure of at least one renders the data unavailable, resulting in lower availability than with a single replica.
For the system shown in FIG. 1 , for virtual stores 18 which may have data striped and/or mirrored over multiple data storage devices, it is required that, for each byte in the virtual store 20 , there is a quorum of data storage devices that store that byte. This is done by changing the condition in step 4 above:
4.a. if, for each byte in the virtual store 20, the coordinator 24 or 25 has received responses from more than half the replicas for that byte that were active in the previous epoch, then it has established a quorum.
This works but the difficulty is that it inherits the flaw of the single-datum replication protocol, which has low availability when data are stored only on two replicas. Since mirroring is the typical configuration for distributed data storage systems, the above protocol will result in low availability in typical systems.
The best mode further changes the condition in step 4 above:
4.b. If the coordinator has received responses from more than half of the data storage devices that were active in the previous epoch, and for each byte in the data store, at least one device from the previous epoch that stores a replica of that byte has responded, then the coordinator has established a quorum. ・・・」(第5欄42行?第6欄29行)
(当審訳:「以下のとおり,従来の単一データ複製プロトコルは,データがパーティションにアクセス可能であるか否かを判定する。
1.失敗すると,コーディネータは,到達可能な全てのデータ記憶装置に,新しいエポックを開始するよう要求するメッセージを送信する;
2.各データ記憶装置は,その最新のエポック番号と,そのエポックにおいて活性であったと信じられるレプリカのリストによって応答する;
3.コーディネータは,すべての到達可能なデータ記憶装置からステータスメッセージを一旦受信すると,最大エポック番号とステータスメッセージを見つけ,そのエポック内のレプリカのリストは,そこから定足数が引き出されるべきリストとなる;
4.もし,コーディネータが,以前のエポックで活性があったレプリカの半数以上から応答を確証している場合には,定足数を成立させる;
5.コーディネータは,到達可能なデータ記憶装置に,新しいエポック番号(以前の最大エポック番号より大きい)とともにエポックメッセージと,この新たなエポックにおいて活性なレプリカのリストを送信する;
6.データ記憶装置は,エポックメッセージを受け取り,新しいエポック番号とレプリカのリストを記録する。
特別な状況におけるオーバーヘッドを低減するか,または利用可能性を改善することを意図した上記プロトコルには,多くのバリエーションがある。これらのプロトコルは,3又はそれ以上のレプリカである限りにおいて,良好な利用可能性を与えることが知られている。レプリカが2つだけである場合には,両方が,半分以上が利用可能なパーティションにおいて利用可能でなければならず,そして,少なくとも1つの故障はデータを利用不可能にし,単一のレプリカによる場合より利用可能性は低下することになる。
図1に示すシステムに関し,複数のデータ記憶装置に亘ってストライプ化され,および/または,ミラーリングされたデータを有するであろう仮想ストア18として,仮想外ア20内の各バイトには,そのバイトを格納するデータ記憶装置の定足数である必要がある。これは,上記ステップ4の条件を変更することによって行われる:
4.a.もし,仮想ストア20内の各バイトについて,コーディネータ24又は25が,以前のエポックにおいて活性であったバイトのためのレプリカの半分以上から応答を受信した場合には,定足数を成立させる。
これは機能するが,問題は,それが単一データ複製プロトコルの欠陥を継承するということであり,それは,データが2つのレプリカ上にのみ格納される場合には,低い利用可能性を有する。ミラーリングは,分散型データ記憶システムの典型的な構成であるので,上記のプロトコルは,典型的なシステムにおける低い利用可能性をもたらすことになるだろう。
最良のモードでは,上記ステップ4の条件をさらに変更する:
4.b.もし,コーディネータが,以前のエポックにおいて活性であったデータ記憶装置の半分以上から応答を受信し,データストア内の各バイトとして,そのバイトのレプリカを記憶している,以前のエポックからの少なくとも1つのデバイスが応答した場合には,コーディネータは定足数を成立させる。・・・」)

D.「In FIG. 3 , with devices 1 through 5 on one side of the partition, they form a quorum of devices 1 through 6 . Further, since device 5 contains a replica of store C, there is coverage so the recovery can proceed.
In the traditional protocol when the response is received from the quorum, it can change to a new epoch. Once it changes to a new epoch, the store is recovered and data is available again. In the present invention one criteria has been changed so instead of waiting for a quorum, the wait is for both the quorum and coverage of the data store. Full coverage is required before a change to a new epoch. 」(第6欄49行?59行)
(当審訳:「図3では,パーティションの一方の側における各装置1?5によって,装置1?6の定足数を形成している。さらに,装置5がストアCのレプリカを含んでいるので,回復が進みうるように完全なカバー範囲が存在する。
応答が定足数から受信される場合の従来のプロトコルでは,新しいエポックに変更することができる。新たなエポックに変化すると,ストアが回復され,データが再度利用可能となる。本発明では,一つの基準が変更されたので,定足数を待つ代わりに,その待ち時間は,データストアの定足数およびカバー範囲による。完全なカバー範囲は,新たなエポックに対する変更の前に必要である。」)

E.上記C.には,従来の「データがパーティションにアクセス可能であるか否かを判定」する方法である,
「1.失敗すると,コーディネータは,到達可能な全てのデータ記憶装置に,新しいエポックを開始するよう要求するメッセージを送信する;
2.各データ記憶装置は,その最新のエポック番号と,そのエポックにおいて活性であったと信じられるレプリカのリストによって応答する;
3.コーディネータは,すべての到達可能なデータ記憶装置からステータスメッセージを一旦受信すると,最大エポック番号とステータスメッセージを見つけ,そのエポック内のレプリカのリストは,そこから定足数が引き出されるべきリストとなる;
4.もし,コーディネータが,以前のエポックで活性があったレプリカの半数以上から応答を確証している場合には,定足数を成立させる;
5.コーディネータは,到達可能なデータ記憶装置に,新しいエポック番号(以前の最大エポック番号より大きい)とともにエポックメッセージと,この新たなエポックにおいて活性なレプリカのリストを送信する;
6.データ記憶装置は,エポックメッセージを受け取り,新しいエポック番号とレプリカのリストを記録する」

に対し,「図1に示すシステムに関」する引用文献1に記載の「最良のモード」として,上記「ステップ4」を

「4.b.もし,コーディネータが,以前のエポックにおいて活性であったデータ記憶装置の半分以上から応答を受信し,データストア内の各バイトとして,そのバイトのレプリカを記憶している,以前のエポックからの少なくとも1つのデバイスが応答した場合には,コーディネータは定足数を成立させる」

に変更した方法が記載されているところ,上記ステップ「4.b.」に関し,上記D.には,「パーティションの一方の側における各装置1?5によって,装置1?6の定足数を形成して」おり,「さらに,装置5がストアCのレプリカを含んでいる」場合に,「回復が進みうるように完全なカバー範囲が存在する」ことが示されている。

また,上記「図1に示すシステム」である引用文献1に記載の「システム」とは,上記A.によれば,
「データの複数の部分を有する仮想データストアと,前記仮想ストアの前記データの部分を記憶することが可能な前記仮想ストアに接続可能である複数のデータ記憶装置と,を含むデータ記憶システム」であって,「前記複数のデータ記憶装置の少なくとも1つが,前記仮想ストアの完全なカバー範囲を有する前記データの前記複数の部分を全て含む場合に,コーディネータは,前記複数のデータ記憶装置のうちの少なくとも1つに接続可能であり,その中の情報に応答して前記複数のデータ記憶装置が分割した後における前記データ記憶システムの回復を可能にする」ものであることが読み取れ,

また,上記「データ記憶装置」に記憶されたデータにアクセスする構成について,上記B.によれば,
「ホスト12?16は,コンピュータ,端末,ユーザ装置などのような装置又はシステムであり,これらは異なるタイプのコンピュータアプリケーションを実行し,異なるデータのブロックにアクセスする」ものであり,「複数のホスト12?16は,ローカルエリアネットワーク(LAN),ワイドエリアネットワーク(WAN),インターネット,または他の任意の通信ネットワークでありうるデータストレージネットワーク18に接続されて」おり,「ストレージネットワーク18は,データ空間がミラーリングされた複数のデータブロックまたはストアに分割されている仮想ストア20を含」み,「データブロックは,ストアA,B,およびCと称され」,「仮想ストア20は,複数のデータ記憶装置22に接続されて」いるものであることが読み取れる。

したがって,上記引用文献1には次の発明(以下,「引用発明」という。)が記載されていると認められる。

「システムにおいて,データがパーティションにアクセス可能であるか否かを判定する方法であって,
失敗すると,コーディネータは,到達可能な全てのデータ記憶装置に,新しいエポックを開始するよう要求するメッセージを送信し,
各データ記憶装置は,その最新のエポック番号と,そのエポックにおいて活性であったと信じられるレプリカのリストによって応答し,
コーディネータは,すべての到達可能なデータ記憶装置からステータスメッセージを一旦受信すると,最大エポック番号とステータスメッセージを見つけ,そのエポック内のレプリカのリストは,そこから定足数が引き出されるべきリストとなり,
もし,コーディネータが,以前のエポックにおいて活性であったデータ記憶装置の半分以上から応答を受信し,データストア内の各バイトとして,そのバイトのレプリカを記憶している,以前のエポックからの少なくとも1つのデバイスが応答した場合には,コーディネータは定足数を成立させ,
コーディネータは,到達可能なデータ記憶装置に,新しいエポック番号(以前の最大エポック番号より大きい)とともにエポックメッセージと,この新たなエポックにおいて活性なレプリカのリストを送信し,
データ記憶装置は,エポックメッセージを受け取り,新しいエポック番号とレプリカのリストを記録する,
方法であって,
上記システムは,データの複数の部分を有する仮想データストアと,前記仮想ストアの前記データの部分を記憶することが可能な前記仮想ストアに接続可能である複数のデータ記憶装置と,を含むデータ記憶システムであって,前記複数のデータ記憶装置の少なくとも1つが,前記仮想ストアの完全なカバー範囲を有する前記データの前記複数の部分を全て含む場合に,コーディネータは,前記複数のデータ記憶装置のうちの少なくとも1つに接続可能であり,その中の情報に応答して前記複数のデータ記憶装置が分割した後における前記データ記憶システムの回復を可能にするものであり,
ホストは,コンピュータ,端末,ユーザ装置などのような装置又はシステムであり,これらは異なるタイプのコンピュータアプリケーションを実行し,異なるデータのブロックにアクセスするものであり,複数のホストは,ローカルエリアネットワーク(LAN),ワイドエリアネットワーク(WAN),インターネット,または他の任意の通信ネットワークでありうるデータストレージネットワークに接続されており,ストレージネットワークは,データ空間がミラーリングされた複数のデータブロックまたはストアに分割されている仮想ストアを含み,データブロックは,ストアA,B,およびCと称され,仮想ストアは,複数のデータ記憶装置に接続されているものである,
方法。」

2.引用文献2について

また,本願の優先日前に頒布され,原査定の拒絶の理由に引用された,特開2010-186472号公報(以下,これを「引用文献2」という。)には,図面とともに次の事項が記載されている。

F.「【0042】
図4を参照すると,全7つのノードで構成されたクラスターにスプリットブレインが発生し,4つのノードを含むグループAと3つのノードを含むグループBに分けられたことが分かる。
【0043】
上記のような状況において,グループAは,全ノード数(すなわち,7つ)の過半数に該当するノードを確保しているので,コーラムを満足し,メジャーグループに分類される。これにより,メジャーグループに含まれたノードのうち一つが,マスターノードに指定され,該当マスターノードを介してクライアント300との通信が行われる。また,マスターノードは,データに対する読みまたは書き作業を許容される。
【0044】
これに対して,グループBは,全ノード数の過半数に該当するノードを確保していないので,マイナーグループに分類される。このようなマイナーグループからはマスターノードが選出されない。
【0045】
スプリットブレイン状況において,それぞれのグループが,自身がメジャーグループであるかマイナーグループであるかを判断するためには,スプリットブレインが発生する前の初期グループに,どれほど複数のノードが存在したかに関する情報が,スプリットブレインが発生した後のそれぞれのグループの少なくとも一つのノードに保存されていなければならないが,本発明の一実施形態によると,マスターノードに保存された情報は,これに対応している補助ノードに複製されるので,初期グループに,どれほど複数のノードが存在したかに関する情報をマスターノードに保存することにより,前記要求が達成され得る。
【0046】
次に,図4のように,スプリットブレインが発生した状況において,再度スプリットブレインが発生して,グループAが,3つのノードを含むグループA1と1つのノードを含むグループA2に分類され,グループBが,2つのノードを含むグループB1と1つのノードを含むグループB2に分離された状況を仮定してみると,いずれのグループも,初期グループに属していたノードの過半数に該当する4つ以上のノードを含んでいないので,コーラムを満足するグループを特定することができないという問題が生じる。
【0047】
このような問題点を解決するために,本発明の一実施形態によると,コーラムは,グループを構成するノード数の変化に応じて動的に再設定されてもよい。より具体的には,動的コーラムを具現するためには,先ず,グループの再設定時間を設定しなければならない。本発明の一実施形態によると,グループの再設定時間は,30秒に設定されてもよいが,この場合,グループ内のノードの数が30秒間変わらないと,この時点を基準としてグループが再設定される。グループが再設定されることにより,コーラムの算定の基準となるグループ内のノード数が初期化され,よって,コーラムも変更されるようになる。
【0048】
上述した例の場合,最初のスプリットブレインが発生する前には,グループに含まれたノードの総数が7であるので,コーラムは4に設定される。その後,第一のスプリットブレインが発生すると,グループAの場合,4つのノードが含まれるので,コーラムが3に再設定され,グループBの場合,3つのノードが含まれるので,コーラムが2に再設定される。これにより,第二のスプリットブレインが発生しても,グループA1及びグループB1がコーラムを満足するようになる。
【0049】
しかし,グループB1の場合,第一のスプリットブレインが発生した時点でマイナーグループに分類されたので,たとえ,第二のスプリットブレインが発生して,過半数のノードを確保したとしても,メジャーグループに分類されず,グループA1のみがメジャーグループに分類される。このため,マスターノードは,スプリットブレインが発生する前のグループにどれほど複数のノードが存在したかに関する情報と共に,スプリットブレインが発生する前に該当グループがメジャーグループであったかマイナーグループであったかに関する情報も一緒に保存してもよい。
【0050】
以下,図4を参照して,スプリットブレインが復旧された場合の処理について説明する。マイナーグループであったグループBに含まれたノードは,メジャーグループであるグループAに含まれたノードから最新の状態情報を取り込んでアップデートを行い,これにより,7つの全てのノードが再度一つのグループとして機能できる。」

3.引用文献3について

また,本願の優先日前に頒布され,原査定の拒絶の理由に引用された,特表2012-507075号公報(以下,これを「引用文献3」という。)には,図面とともに次の事項が記載されている。

G.「【0077】
図4Cは,分散システムにおけるデータノードからの構成情報をリビルドする方法470のフロー図である。図4Cでは単一のパーティションに対する処理を示すが,方法470は,データノードから提供される情報を使用して,分散システム内のデータベースの各パーティションに対して実行される。このようにして,データベース全体に関する構成情報を再構築することができる。
【0078】
ステップ471にて,メッセージが送られた時に,パーティションが再構成の最中だったかどうか,すなわち,パーティションが1組のデータノードから別のデータノードに移動中だったかどうか,が判定される。データノードにより提供されるパーティションのステータス情報を使用して,パーティションが再構成の最中であるかどうかを判定することができる。そのような処理は,例えば,再構成プロセス中の構成マネージャに対する壊滅的エラーのせいで不整合な状態にあった情報を使用して,エラーでパーティションが再構築されることを防ぐために,有用である。
【0079】
ステップ471にて,パーティションが再構成の最中でないと判定される場合,方法470はステップ47に進み,そこで,パーティションの構成バージョンのためのデータノードの書き込みクォーラムが存在するかどうかが判定される。書き込みクォーラムの存在は,データノードによりレポートされるメッセージから判定することができる。それらのメッセージが1組のメッセージを含み,それが異なるノードから送られものであって,1組のノードが現在の構成として一貫して識別される場合,その可能な組を現在の構成とすることができる。現在の構成であると識別されるデータノードのクォーラムが,データノードは現在の構成としてアクティブであるということを示すメッセージを送る場合,その組のノードを,現在の構成を表すものとみなすことができる。ブロック473にて,ブロック467にて受け取られるメッセージを検索して,現在の構成を識別するための基準を満たす1組のメッセージを見つけることができる。
【0080】
書き込みクォーラムが存在する場合,方法470は,ステップ475に進み,そこで書き込みクォーラムにより検証されるようなパーティションの現在の構成が,現在の構成情報として構成マネージャに書き込まれる。
【0081】
しかし,ステップ473にて,書き込みクォーラムが見つからない場合,構成情報をリビルドすることができない場合がある。それ故,例外条件が識別され,これは任意の適切な方法で扱うことができる。ある実施形態において,構成情報を再構築するための図4Bおよび図4Cの処理は,自動的に実行することができる。しかし,例外処理は,手動での介入を必要とする。
【0082】
ステップ471に戻ると,ステップ471にてパーティションの再構成がアクティブであると判定される場合,方法470はステップ477に進む。ステップ477にて,パーティションの古い構成の読み込みクォーラムおよび新しい構成の書き込みクォーラムが存在するかどうかを判定する。ある実施形態において,新しい構成の書き込みクォーラムが存在するかどうかのみがステップ477にてチェックされる.
適切なクォーラムが存在する場合,構成マネージャのリビルドのトリガとなる,構成マネージャの壊滅的作動不能等の事象の時に,分散データベースは整合性のある状態であったと見なすことができる。従って,ステップ479にて,新しい構成の書き込みクォーラムにより検証されるようなパーティションの新しい構成を有するマスタクラスタにおいて,構成情報が更新される。新しいクォーラムは,選択的に達成することができる。」

4.引用文献4について

また,本願の優先日前に頒布され,原査定の拒絶の理由に引用された,米国特許第6839752号明細書(以下,これを「引用文献4」という。)には,図面とともに次の事項が記載されている。

H.「Merges often present further complications. Since each partition acts independently after partitioning, group data may change within each partition, whereby reconciliation is required between the group data in each partition. Each partition must therefore send its group data to all other partitions, which increases the complexity required in handling leader failures. Moreover, having all members broadcasting group data further increases message traffic in the system.」(第2欄63行?第3欄4行)
(当審訳:「マージは,更に複雑さをもたらす場合が多い。各パーティションは,分割後に,独立して作用するため,グループデータは,それぞれのパーティションごとに変わるが,これにより,調整は,各パーティション内のグループデータ間で必要とされる。各パーティションはそのため,そのグループのデータを他のすべてのパーティションに送信しなければならず,それがハンドリングリーダー障害に要求される複雑さを増加させる。また,グループデータを放送するすべてのメンバーを有することが,システム内のメッセージ・トラフィックをさらに増大させる。」)


第5 対比・判断

1.本願発明1について
(1)対比
本願発明1と引用発明とを対比する。

ア 引用発明である「データがパーティションにアクセス可能であるか否かを判定する方法」は,本願発明1である「方法」に対応する。

イ 引用発明における「データ記憶装置」は,「仮想ストアの前記データの部分を記憶することが可能な」ものであるから,記憶手段を有することは明らかであり,よって,本願発明1における「コンピューティングノード」と,引用発明における「データ記憶装置」とは,“記憶手段を有する装置”である点で共通し,引用発明における「データ記憶装置」の上記記憶手段は,本願発明1における「ストレージリソース」に相当するといえる。
また,引用発明における,上記記憶手段に記憶される「仮想ストアの前記データの部分」とは,「データの複数の部分」のうちの一つであるからデータであって,オブジェクトといい得るものである。そして,引用発明における「仮想ストア」とは,「データの複数の部分を有する」とともに,「ストレージネットワークは,データ空間がミラーリングされた複数のデータブロックまたはストアに分割されている仮想ストアを含み,データブロックは,ストアA,B,およびCと称され,仮想ストアは,複数のデータ記憶装置に接続されて」おり,その上で「ホスト」が「異なるデータのブロックにアクセスする」との関係にあるから,データの部分を格納し,ホストに対し当該データへのアクセスというサービスを提供するものといえ,よって,引用発明における「データの部分」,「仮想ストア」は,それぞれ,本願発明1における「オブジェクト」,「オブジェクトストア」に相当する。そして,引用発明における「データ記憶装置」の上記記憶手段は,「複数」のデータ記憶装置が「仮想ストア」に「接続され」るとともに,「前記複数のデータ記憶装置の少なくとも1つが,前記仮想ストアの完全なカバー範囲を有する前記データの前記複数の部分を全て含む場合に,コーディネータは,前記複数のデータ記憶装置のうちの少なくとも1つに接続可能」であるとの関係にあるから,上記「仮想ストア」を提供するために集約されているといえ,そうすると,引用発明における集約された上記記憶手段を有する複数の「データ記憶装置」は,本願発明1における「クラスタ」に相当するといえる。
また,引用発明は,「データがパーティションにアクセス可能であるか否かを判定する」ものであるところ,それは,「失敗」したことを契機に,「コーディネータ」が,「以前のエポックにおいて活性であったデータ記憶装置の半分以上から応答を受信し,データストア内の各バイトとして,そのバイトのレプリカを記憶している,以前のエポックからの少なくとも1つのデバイスが応答した場合には,コーディネータは定足数を成立させ」ることで行うものであって,この場合の「定足数」を満たす「半数以上」の「データ記憶装置」をもとに形成される「パーティション」は,全体の「データ記憶装置」を分割した結果として形成されたものといえるから,引用発明における上記分割された結果である複数の「パーティション」は,本願発明1における「第1のパーティション」「第2のパーティション」に相当するといえる。

ウ 上記イの検討結果を踏まえると,本願発明1の「クラスタを少なくとも第1のパーティションと第2のパーティションに分割する失敗事象または管理事象を受けてコンピューティングノードのクラスタを管理する工程であって,(i)前記クラスタはオブジェクトストアを提供するために前記コンピューティングノードの各々のローカルストレージリソースを集約し,(ii)前記オブジェクトストアに格納された各オブジェクトは,対応する仮想マシンに関連付けられた仮想ディスクを表し,かつ個々の前記コンピューティングノードのストレージリソースに格納される複数のデータコンポーネントに分割されるデータを含む,前記管理する工程」と,引用発明が,「データがパーティションにアクセス可能であるか否かを判定する」上で,「失敗」したことを契機に,「コーディネータが,以前のエポックにおいて活性であったデータ記憶装置の半分以上から応答を受信し,データストア内の各バイトとして,そのバイトのレプリカを記憶している,以前のエポックからの少なくとも1つのデバイスが応答した場合には,コーディネータは定足数を成立させ」ることであって,「システムは,データの複数の部分を有する仮想データストアと,前記仮想ストアの前記データの部分を記憶することが可能な前記仮想ストアに接続可能である複数のデータ記憶装置と,を含むデータ記憶システム」であり,「ホストは,コンピュータ,端末,ユーザ装置などのような装置又はシステムであり,これらは異なるタイプのコンピュータアプリケーションを実行し,異なるデータのブロックにアクセスするものであり」,「ストレージネットワークは,データ空間がミラーリングされた複数のデータブロックまたはストアに分割されている仮想ストアを含み,データブロックは,ストアA,B,およびCと称され,仮想ストアは,複数のデータ記憶装置に接続されている」こととは,“クラスタを少なくとも第1のパーティションと第2のパーティションに分割する失敗事象または管理事象を受けて記憶手段を有する装置のクラスタを管理する工程であって,(i)前記クラスタはオブジェクトストアを提供するために前記記憶手段を有する装置の各々のローカルストレージリソースを集約する,前記管理する工程”である点で共通するといえる。

エ そうすると,本願発明1と引用発明とは次の点で一致し,そして相違する。

[一致点]
方法であって,
クラスタを少なくとも第1のパーティションと第2のパーティションに分割する失敗事象または管理事象を受けて記憶手段を有する装置のクラスタを管理する工程であって,(i)前記クラスタはオブジェクトストアを提供するために前記記憶手段を有する装置の各々のローカルストレージリソースを集約する,前記管理する工程
を含む方法。

[相違点1]
“記憶手段を有する装置”に関し,
本願発明1は,「コンピューティングノード」であるのに対し,
引用発明は,「データ記憶装置」である点。

[相違点2]
クラスタを少なくとも第1のパーティションと第2のパーティションに分割する失敗事象または管理事象を受けて記憶手段を有する装置のクラスタを管理する工程に関し,
本願発明1は,「(ii)前記オブジェクトストアに格納された各オブジェクトは,対応する仮想マシンに関連付けられた仮想ディスクを表し,かつ個々の前記コンピューティングノードのストレージリソースに格納される複数のデータコンポーネントに分割されるデータを含む」ものであるのに対し,
引用発明は,そのように特定されていない点。

[相違点3]
本願発明1は,「前記オブジェクトストアに格納された第1のオブジェクトを含むデータコンポーネントの大多数が前記第1のパーティション内のコンピューティングノード内に格納されているということを判断する工程」,及び,「前記オブジェクトストア内に格納された第2のオブジェクトを含むデータコンポーネントの大多数が前記第2のパーティション内のコンピューティングノード内に格納されているということを判断する工程」を有しているのに対し,
引用発明は,そのような構成を有していない点。

[相違点4]
本願発明1は,「前記第1のオブジェクトを含むデータコンポーネントの大多数が前記第1のパーティション内のコンピューティングノード内に格納されているという判断に応答して,前記第2のパーティションから前記第1のオブジェクトへのいかなるアクセスを拒絶しつつ,構成オペレーションが前記第1のパーティション内のコンピューティングノード内に格納された前記第1のオブジェクトのデータコンポーネントに対して行われることを許可する工程」,及び,「前記第2のオブジェクトを含むデータコンポーネントの大多数が前記第2のパーティション内のコンピューティングノード内に格納されているという判断に応答して,前記第1のパーティションから前記第2のオブジェクトへのいかなるアクセスを拒絶しつつ,構成オペレーションが前記第2のパーティション内のコンピューティングノード内に格納された前記第2のオブジェクトのデータコンポーネントに対して行われることを許可する工程」を有しているのに対し,
引用発明は,そのような構成を有していない点。

(2)相違点についての判断
事案に鑑みて,上記相違点1及び4について先に検討する。

相違点4に係る本願発明1における「前記第1のオブジェクトを含むデータコンポーネントの大多数が前記第1のパーティション内のコンピューティングノード内に格納されているという判断に応答して,前記第2のパーティションから前記第1のオブジェクトへのいかなるアクセスを拒絶しつつ,構成オペレーションが前記第1のパーティション内のコンピューティングノード内に格納された前記第1のオブジェクトのデータコンポーネントに対して行われることを許可する工程」,及び,「前記第2のオブジェクトを含むデータコンポーネントの大多数が前記第2のパーティション内のコンピューティングノード内に格納されているという判断に応答して,前記第1のパーティションから前記第2のオブジェクトへのいかなるアクセスを拒絶しつつ,構成オペレーションが前記第2のパーティション内のコンピューティングノード内に格納された前記第2のオブジェクトのデータコンポーネントに対して行われることを許可する工程」においては,「クラスタ」から分割された「第1のパーティション」内のコンピューティングノード内にある「第1のオブジェクト」に対し「第2のパーティション」からの「アクセス」を拒絶したり,「クラスタ」から分割された「第2のパーティション」内のコンピューティングノード内にある「第2のオブジェクト」に対し「第1のパーティション」からの「アクセス」を拒絶したりするものであるから,「アクセス」を拒絶される「第2のパーティション」及び「第1のパーティション」には,「オブジェクト」にアクセス側の構成が含まれていることになり,すなわち,「クラスタ」から分割されて形成される「第1のパーティション」及び「第2のパーティション」を構成する「コンピューティングノード」が「オブジェクト」に「アクセス」する構成であることを前提とするものであり,そして,相違点1に係る構成として「コンピューティングノード」が記憶手段を有する装置といえることも踏まえると,相違点1及び4に係る構成による本願発明1の「コンピューティングノード」は,「ストレージリソース」を有し「オブジェクト」を格納して「オブジェクトストア」の提供に資するものであるとともに,「オブジェクト」に「アクセス」するものであると認めることができる。
それに対し,引用発明の「データ記憶装置」は,「仮想ストアの前記データの部分を記憶」するものにとどまるから,相違点1及び4に係る本願発明1の「コンピューティングノード」とは,技術的課題及び解決手段として異なるものといえ,また,当該構成は,上記引用文献2ないし4に記載されておらず,本願優先日前において当該技術分野の周知技術であるともいえない。
そうすると,引用発明に基づいて,相違点1及び4に係る本願発明1の構成とすることは,当業者が容易になし得ることであるとはいえない。

したがって,本願発明1は,相違点2及び3を検討するまでもなく,当業者であっても引用発明,引用文献2ないし4に記載された技術的事項,及び,周知技術に基づいて容易に発明できたものであるとはいえない。

2.本願発明2-14について
本願発明2-14は,本願発明1を更に限定したものであるか,本願発明1を別のカテゴリーで表現するものであるので,同様に,当業者であっても引用発明,引用文献2ないし4に記載された技術的事項,及び,周知技術に基づいて容易に発明できたものであるとはいえない。


第6 むすび

以上のとおり,原査定の理由によっては,本願を拒絶することはできない。
また,他に本願を拒絶すべき理由を発見しない。
よって,結論のとおり審決する。
 
審決日 2018-07-18 
出願番号 特願2016-529765(P2016-529765)
審決分類 P 1 8・ 121- WY (G06F)
最終処分 成立  
前審関与審査官 月野 洋一郎  
特許庁審判長 辻本 泰隆
特許庁審判官 須田 勝巳
仲間 晃
発明の名称 クラスタメンバーシップ管理における分断耐性  
代理人 恩田 博宣  
代理人 本田 淳  
代理人 恩田 誠  

プライバシーポリシー   セキュリティーポリシー   運営会社概要   サービスに関しての問い合わせ