JP2009217768A - Method and system for managing partition failure in database - Google Patents
Method and system for managing partition failure in database Download PDFInfo
- Publication number
- JP2009217768A JP2009217768A JP2008063601A JP2008063601A JP2009217768A JP 2009217768 A JP2009217768 A JP 2009217768A JP 2008063601 A JP2008063601 A JP 2008063601A JP 2008063601 A JP2008063601 A JP 2008063601A JP 2009217768 A JP2009217768 A JP 2009217768A
- Authority
- JP
- Japan
- Prior art keywords
- partition
- state
- request
- data
- holding unit
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、データベースにおけるパーティション障害管理方法およびシステムに関する。特に、パーティショニングにより複数のパーティションに分割されたデータベースにおけるパーティション障害管理方法およびシステムに関する。 The present invention relates to a partition failure management method and system in a database. In particular, the present invention relates to a partition failure management method and system in a database divided into a plurality of partitions by partitioning.
データベースの可用性、管理性、および問い合わせのレスポンスを向上させるために、1のデータベーステーブルのデータを複数の論理的なデータの集合であるパーティションに分割するパーティショニングというデータ分割手法が知られている。このパーティショニングにより分割された複数のパーティションは、それぞれ別のディスクあるいは論理ボリュームに割り当てることができ、特定のパーティションを破損した場合でも、他の正常なパーティションへのアクセスやデータの更新等が継続して行うことができる。 In order to improve database availability, manageability, and query response, a data partitioning method called partitioning that partitions data of one database table into partitions that are sets of a plurality of logical data is known. Multiple partitions divided by this partitioning can be assigned to different disks or logical volumes, and even when a specific partition is damaged, access to other normal partitions and data update continue. Can be done.
しかしながら、テーブルがパーティショニングにより複数のパーティションに分割されている場合でも、このテーブルは、クライアントアプリケーションからは1のテーブルとして見えているだけであり、クライアントアプリケーションは、どのようなパーティションが存在するのか認識することができない。このため、クライアントアプリケーションは、パーティションの状態を個別に認識することができず、一部のパーティションに障害が生じても、テーブル全体が正常であるか、あるいはテーブル全体がエラーであるかしか認識できない。パーティショニングの利点は、特定のパーティションに障害が発生しても、他の正常なパーティションが存在する限り、他のパーティションに対しては処理を継続できることである。したがって、この利点を生かすためには、特定のパーティションに障害が発生している場合であっても、他の正常なパーティションへのアクセスを可能にするために、クライアントアプリケーションは、テーブル全体が正常であるとして処理を継続する必要がある。しかしながら、特定のパーティションに障害が発生しているにも拘わらずテーブル全体が正常であるとしてしまうと、障害が発生しているパーティションに複数のトランザクションによる多重アクセスが生じる恐れがある。この場合には、エラーメッセージが繰り返し発生してしまい、他の重要なメッセージが埋もれてしまうという問題がある。 However, even if the table is divided into multiple partitions by partitioning, this table is only seen as one table by the client application, and the client application recognizes what kind of partition exists. Can not do it. For this reason, the client application cannot recognize the partition status individually, and even if a failure occurs in some partitions, it can only recognize whether the entire table is normal or whether the entire table is in error. . The advantage of partitioning is that even if a failure occurs in a specific partition, as long as another normal partition exists, the processing can be continued for the other partition. Therefore, in order to take advantage of this advantage, the client application can ensure that the entire table is healthy in order to allow access to other healthy partitions even if a particular partition fails. It is necessary to continue processing as if there is. However, if the entire table is normal even though a failure has occurred in a specific partition, multiple accesses by multiple transactions may occur in the partition in which the failure has occurred. In this case, there is a problem that error messages are repeatedly generated and other important messages are buried.
このような問題に対応すべく、障害の発生したデータを含むブロック領域へのアクセスを禁止するファイル閉塞制御方式が開示されている(例えば、特許文献1)。このファイル閉塞制御方式は、障害が発生したデータのアドレスをメモリに記憶しておき、データへアクセス要求があった場合に、アクセスを要求されているデータのアドレスが前記メモリに格納されているか確認し、このアドレスが格納されているときは、当該アドレスへのアクセス要求を拒否する。
しかしながら、この方式では、障害のあるデータアドレスへのアクセスを禁止するのみであり、パーティション単位でアクセスを許可あるいは禁止することはできない。また、この方式は、データ領域の障害情報を監視していないため、クライアントアプリケーションが、いずれのメモリへのアクセスが禁止されているのか認識できず、また、データ領域の障害が解消されたことを認識することできない。 However, this method only prohibits access to a faulty data address, and cannot permit or prohibit access on a partition basis. In addition, since this method does not monitor the failure information of the data area, the client application cannot recognize which memory access is prohibited, and that the failure of the data area has been resolved. I can't recognize it.
したがって、本発明は、パーティショニングにより複数のパーティションに分割されたデータベースにおいて、分割されたパーティション毎の障害情報を管理することにより、パーティション単位のアクセス許可あるいは禁止することを目的とする。 Accordingly, an object of the present invention is to permit or prohibit access in units of partitions by managing failure information for each divided partition in a database divided into a plurality of partitions by partitioning.
本発明は、複数のパーティションに分割された記憶領域へのアクセス制御方法であって、各パーティションにアクセスして正常か否かを状態保有部に保存する状態検出ステップと、前記記憶領域へのデータ更新要求を受けた場合に、前記状態保有部を参照して要求にかかるパーティションの状態を確認する状態確認ステップと、前記パーティションの状態が正常である場合にのみ前記要求にかかる処理を実行するデータ更新ステップとを含むことを特徴とする。 The present invention relates to a method for controlling access to a storage area divided into a plurality of partitions, a state detection step of accessing each partition and storing whether or not it is normal in a state holding unit, and data to the storage area Data for executing a status check step for checking the status of the partition related to the request with reference to the status holding unit when the update request is received, and processing for the request only when the status of the partition is normal And an update step.
また、前記状態検出ステップは定期的に実行され、前記状態保有部には最新の検出状態が保存されることを特徴とする。 Further, the state detection step is periodically executed, and the latest detection state is stored in the state holding unit.
さらに、前記状態確認ステップは、前記記憶領域に格納されるデータがどのパーティションに存在するかを示す対応テーブルを参照して前記要求にかかるデータに対応するパーティションを導出し、当該パーティションの状態を確認することを特徴とする。 Further, the state confirmation step refers to a correspondence table indicating in which partition the data stored in the storage area exists, derives a partition corresponding to the data related to the request, and confirms the state of the partition It is characterized by doing.
本発明は、複数のパーティションに分割された記憶領域へのアクセス制御方法であり、各パーティションにアクセスして正常か否かを状態保有部に保存し、前記記憶領域へのデータ更新要求を受けた場合に、前記記憶領域に格納されるデータがどのパーティションに存在するかを示す対応テーブルを参照して前記要求にかかるデータに対応するパーティションを導出し、当該パーティションの状態を確認し、前記パーティションの状態が正常である場合にのみ前記要求にかかる処理を実行するため、パーティション単位でアクセス許可あるいは禁止することができる。 The present invention is a method of controlling access to a storage area divided into a plurality of partitions, and stores each partition in a state holding unit to determine whether it is normal or not, and receives a data update request to the storage area In this case, a partition corresponding to the data related to the request is derived with reference to a correspondence table indicating in which partition the data stored in the storage area exists, the state of the partition is confirmed, and the partition Since the processing related to the request is executed only when the state is normal, access can be permitted or prohibited in units of partitions.
また、本発明は、前記状態検出が定期的に実行され、前記状態保有部には最新の検出状態が保存されるため、ほぼリアルタイムで記憶領域の状態を確認することができ、障害の発生および復旧に迅速に対応できる。 Further, according to the present invention, since the state detection is periodically performed and the latest detection state is stored in the state holding unit, the state of the storage area can be confirmed almost in real time, Respond quickly to recovery.
以下、本発明を実施するための最良の形態について、添付の図面を参照しながら詳細に説明する。 The best mode for carrying out the present invention will be described below in detail with reference to the accompanying drawings.
図1は、本発明にかかるデータベースの障害管理システムの全体構成を示す概略図である。本図には、パーティション状態監視装置10と、クライアントアプリケーション20と、データベースノード30とが示されている。このシステムは、例えば、ネットワークに接続されたデータサーバであり、クライアントアプリケーション20が、クライアントPCからデータの処理要求を受け付け、データベースノード30のディスク33に対し処理を行うものである。パーティション状態監視装置10は、データベースノード30から監視情報を収集する監視情報登録部11と、監視情報登録部11が収集した情報を保持する情報保有部12と、予め定義されたパーティション情報を保持するパーティション定義保有部13と、クライアントアプリケーション20がパーティションの状態を参照するための状態情報参照部14とを備えている。
FIG. 1 is a schematic diagram showing the overall configuration of a database failure management system according to the present invention. In this figure, a partition state monitoring apparatus 10, a
図2は、データベースノード30の監視部31をより詳細に示した図である。データベースノード30は、監視部31と、データベース32とを備えており、このデータベース32は、障害監視用テーブル321と、業務用テーブル322とを備えている。監視部31は、データベース32の障害監視用テーブル321を参照してパーティション障害が発生しているか判断する判断手段312と、当該判断手段312の判断結果を、パーティション状態監視装置10の監視情報登録部11に送信する通信手段311とを備えている。
FIG. 2 is a diagram showing the
図3は、データベースノード30のデータベース32が備える障害監視用テーブル321および業務用テーブル322と、ディスク33との関係を示す図である。本図に示すように、本実施例では5つのディスクを使用しているため、これらのディスクに対応するように障害監視用テーブル321を5つのパーティション3211乃至3215に分割する。本実施例では、パーティションを物理的なディスク単位で割り当てているが、代替的に論理ボリューム単位で割り当ててもよい。また、業務用テーブル(A)322aは、4つのディスク331乃至334に割り当てられ、業務用テーブル(B)322bは、2つのディスク334および335に割り当てられている。
FIG. 3 is a diagram illustrating the relationship between the failure monitoring table 321 and the business table 322 included in the database 32 of the database node 30 and the
図4は、障害監視用テーブル321の定義例を示しており、図5は、この定義例による障害監視用テーブル321の初期状態を示している。この定義例では、ID列を主キーに設定し、IDが重複しないようにしている。また、リストパーティションにより、ID1乃至5の各レコードが、障害監視用テーブル321のパーティション3211乃至3215と一意に対応するように定義されている。これらのパーティションはそれぞれ、ディスク331乃至335に対応している。これにより、ID1乃至5の各レコードにSQL UPDATA文等を発行し、その結果を確認することにより、パーティション単位で障害の有無を確認することができる。
FIG. 4 shows a definition example of the failure monitoring table 321, and FIG. 5 shows an initial state of the failure monitoring table 321 according to this definition example. In this definition example, an ID column is set as a primary key so that IDs do not overlap. Further, the records of
次に、図6を参照して、本発明の処理動作について説明する。初めに、データベースノード30内の監視部31の判断手段312が、障害監視用テーブル321にSQL SELECT文を発行し(A1)、障害監視用テーブル321に格納されたIDのリスト(ID1乃至5)を取得する(A2)。これらのIDが障害監視用テーブル321の各パーティションおよびディスクに対応する。次に、監視部31の判断手段312は、パーティションの障害の有無を確認すべく、各IDに対応するレコードにSQL UPDATA文を発行し(A3)、更新結果を受け取る(A4)。ここで、SQL文が正常終了した場合、該当するパーティションは正常であると判断し、SQL文が異常終了した場合、該当するパーティションは異常であると判断する。次に、監視部31の通信手段311が、この更新結果をパーティション状態監視装置10の監視情報登録部11に送信し(A5)、当該監視情報登録部11は、この更新結果を状態保有部12に登録する(A6)。図7は、この状態保有部12の一例を示す図である。状態保有部12には、これらの更新結果がIDおよびディスク毎に保持される。データベースノード30の監視部31は、これらの処理を定期的に、例えば1秒おきに繰り返す。これにより、パーティションの状態が定期的に更新され、パーティション毎の状態をほぼリアルタイムで確認することができる。
Next, the processing operation of the present invention will be described with reference to FIG. First, the
次に、図8乃至10を参照して、パーティション定義保有部13について説明する。パーティション定義保有部13は、これらの図に示すように、テーブル/パーティションキー対応テーブル131と、業務テーブルA用のキー値/ディスク名対応テーブル132aと、業務テーブルB用のキー値/ディスク名対応テーブル132bとを備えている。テーブル/パーティションキー対応テーブル131は、図8に示すように、業務テーブルAおよびBのパーティションキーが登録されている。業務テーブルA用のキー値/ディスク名対応テーブル132aは、図9に示すように、パーティションキー「date」の範囲と、これに関連するディスク名とが登録されている。業務テーブルB用のキー値/ディスク名対応テーブル132bは、図10に示すように、パーティションキー「ID」の範囲と、これに関連するディスク名とが登録されている。
Next, the partition
次に図11を参照して、クライアントアプリケーション20が、業務テーブルを更新する処理について説明する。以下の説明では、更新の対象の業務テーブルを「業務テーブルA」とし、キー値を「2007.1.1」とする。
Next, a process in which the
初めに、クライアントアプリケーション20が、クライアントPC(図示せず)から業務用テーブルの更新要求を受信すると(B1)、パーティション状態監視装置10の状態情報参照部14に、更新の対象であるテーブル名「業務用テーブルA」および更新する情報を送信する(B2)。次に、状態情報参照部14は、パーティション定義保有部13のテーブル/パーティションキー対応テーブル131を参照して、受信したテーブル名「業務用テーブルA」に関連するパーティションキー「date」を取得する(B3)。次に、状態情報参照部14は、取得したパーティションキー「date」と当該キーの値「2007.1.1」を基に、パーティション保有部13の業務テーブルA用のキー値/ディスク名対応テーブル132aを参照して、該当するディスク名「ディスク333」を取得する(B4)。状態情報参照部14は、図7に示す状態保有部12を参照して、「ディスク333」の状態情報を取得し(B5)、この状態情報をクライアントアプリケーション20に送信する(B6)。クライアントアプリケーション20は、状態情報が正常である場合にのみデータベースの更新処理を実施する(B7)。このように、クライアントアプリケーション20は、データベース更新処理を行う前にパーティションの状態を確認するため、不必要なデータベースの更新を回避することができる。
First, when the
ここでは、更新対象のテーブルが1つの場合の処理についてのみ説明しているが、更新対象のテーブルが複数ある場合にはこれらの処理を繰り返し行う。この場合も同様に、更新対象であるパーティションが正常である場合にのみ更新処理を行う。 Here, only the process when there is one update target table has been described, but when there are a plurality of update target tables, these processes are repeated. Similarly in this case, the update process is performed only when the partition to be updated is normal.
本発明の好適な実施例を示し説明したが、本発明の目的または特徴から逸脱しない範囲で様々な変更を加えることができる。 While the preferred embodiment of the invention has been illustrated and described, various modifications can be made without departing from the scope of the invention.
本発明は、データベースのパーティショニングを利用しているシステム全般に用いることができる。特に、トランザクション処理件数の多い大規模データベースを有するオンラインシステムに有用である。 The present invention can be used for all systems using database partitioning. In particular, it is useful for an online system having a large-scale database with a large number of transaction processes.
10 パーティション状態監視装置
20 クライアントアプリケーション
30 データベースノード
10 partition
Claims (6)
各パーティションにアクセスして正常か否かを状態保有部に保存する状態検出ステップと、前記記憶領域へのデータ更新要求を受けた場合に、前記状態保有部を参照して要求にかかるパーティションの状態を確認する状態確認ステップと、前記パーティションの状態が正常である場合にのみ前記要求にかかる処理を実行するデータ更新ステップとを含むことを特徴とするアクセス制御方法。 A method of controlling access to a storage area divided into a plurality of partitions,
A state detection step for accessing each partition to store whether it is normal or not in the state holding unit, and when receiving a data update request to the storage area, the state of the partition related to the request with reference to the state holding unit An access control method, comprising: a state confirmation step for confirming the data; and a data update step for executing the processing related to the request only when the state of the partition is normal.
各パーティションにアクセスして正常か否かを状態保有部に保存する監視手段と、データ更新要求を受けた場合に前記状態保有部を参照して要求にかかるパーティションの状態を確認する状態情報参照手段とを具え、
当該パーティションの状態が正常である場合にのみ前記要求にかかる処理を実行することを特徴とする装置。 In a storage device comprising a storage area divided into a plurality of partitions,
A monitoring unit that accesses each partition and stores whether it is normal or not in the state holding unit, and a state information reference unit that checks the state of the partition related to the request by referring to the state holding unit when a data update request is received And
An apparatus characterized by executing the process related to the request only when the state of the partition is normal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008063601A JP2009217768A (en) | 2008-03-13 | 2008-03-13 | Method and system for managing partition failure in database |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008063601A JP2009217768A (en) | 2008-03-13 | 2008-03-13 | Method and system for managing partition failure in database |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009217768A true JP2009217768A (en) | 2009-09-24 |
Family
ID=41189509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008063601A Pending JP2009217768A (en) | 2008-03-13 | 2008-03-13 | Method and system for managing partition failure in database |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009217768A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011233007A (en) * | 2010-04-28 | 2011-11-17 | Hitachi Ltd | Failure processing method and computer |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60258659A (en) * | 1984-06-05 | 1985-12-20 | Nec Corp | Control system for partial file closure |
JPS62204360A (en) * | 1986-03-05 | 1987-09-09 | Hitachi Ltd | Inter-system data base sharing system |
JPH0198031A (en) * | 1987-10-09 | 1989-04-17 | Nec Corp | Precheck system for on-line fault |
JPH07191812A (en) * | 1993-12-27 | 1995-07-28 | Nec Corp | Method and device for processing fault of fixed disk device |
JPH103396A (en) * | 1996-06-14 | 1998-01-06 | Nec Corp | System for restoring multiplex control fault |
JP2001142751A (en) * | 1999-11-12 | 2001-05-25 | Hitachi Ltd | Method and device for data base management and storage medium with recorded database managing program |
-
2008
- 2008-03-13 JP JP2008063601A patent/JP2009217768A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60258659A (en) * | 1984-06-05 | 1985-12-20 | Nec Corp | Control system for partial file closure |
JPS62204360A (en) * | 1986-03-05 | 1987-09-09 | Hitachi Ltd | Inter-system data base sharing system |
JPH0198031A (en) * | 1987-10-09 | 1989-04-17 | Nec Corp | Precheck system for on-line fault |
JPH07191812A (en) * | 1993-12-27 | 1995-07-28 | Nec Corp | Method and device for processing fault of fixed disk device |
JPH103396A (en) * | 1996-06-14 | 1998-01-06 | Nec Corp | System for restoring multiplex control fault |
JP2001142751A (en) * | 1999-11-12 | 2001-05-25 | Hitachi Ltd | Method and device for data base management and storage medium with recorded database managing program |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011233007A (en) * | 2010-04-28 | 2011-11-17 | Hitachi Ltd | Failure processing method and computer |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9317555B2 (en) | Query method for a distributed database system and query apparatus | |
CN101196840B (en) | System and method for configuring a data mirror | |
US7114094B2 (en) | Information processing system for judging if backup at secondary site is necessary upon failover | |
CN101359335B (en) | Resource management for scalable file system recovery | |
RU2449358C1 (en) | Distributed file system and data block consistency managing method thereof | |
US7191198B2 (en) | Storage operation management program and method and a storage management computer | |
US10454754B1 (en) | Hybrid cluster recovery techniques | |
JP4291077B2 (en) | Distributed storage device file management method and distributed storage system | |
CN110535692B (en) | Fault processing method and device, computer equipment, storage medium and storage system | |
CN106603281A (en) | Configuration file management method and system | |
US20100138687A1 (en) | Recording medium storing failure isolation processing program, failure node isolation method, and storage system | |
US20150234845A1 (en) | Subpartitioning of a namespace region | |
US20150234846A1 (en) | Partitioning file system namespace | |
CN104718533A (en) | Robust hardware fault management system, method and framework for enterprise devices | |
CN101384985A (en) | Sas zone group permission table version identifiers | |
US20140059315A1 (en) | Computer system, data management method and data management program | |
CN111651291A (en) | Shared storage cluster brain crack prevention method, system and computer storage medium | |
RU2711348C1 (en) | Method and system for processing requests in a distributed database | |
US20060129664A1 (en) | Method and apparatus for diagnosing a network | |
WO2013171865A1 (en) | Management method and management system | |
CN108509296B (en) | Method and system for processing equipment fault | |
CN105892954A (en) | Data storage method and device based on multiple copies | |
JPWO2011051999A1 (en) | Information processing apparatus and information processing apparatus control method | |
JP2009217768A (en) | Method and system for managing partition failure in database | |
CN103238142A (en) | Validation of access to a shared data record subject to read and write access by multiple requesters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110913 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111111 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120327 |