[go: up one dir, main page]

JP6055197B2 - Database system - Google Patents

Database system Download PDF

Info

Publication number
JP6055197B2
JP6055197B2 JP2012087604A JP2012087604A JP6055197B2 JP 6055197 B2 JP6055197 B2 JP 6055197B2 JP 2012087604 A JP2012087604 A JP 2012087604A JP 2012087604 A JP2012087604 A JP 2012087604A JP 6055197 B2 JP6055197 B2 JP 6055197B2
Authority
JP
Japan
Prior art keywords
data
backup
servers
server
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.)
Expired - Fee Related
Application number
JP2012087604A
Other languages
Japanese (ja)
Other versions
JP2013218481A (en
Inventor
安敏 宮城
安敏 宮城
近藤 悟
悟 近藤
健 福元
健 福元
雅志 金子
雅志 金子
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.)
Nippon Telegraph and Telephone Corp
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc
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 Nippon Telegraph and Telephone Corp, NTT Inc filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012087604A priority Critical patent/JP6055197B2/en
Publication of JP2013218481A publication Critical patent/JP2013218481A/en
Application granted granted Critical
Publication of JP6055197B2 publication Critical patent/JP6055197B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)

Description

本発明は、複数のサーバを備えた分散処理システムで扱うデータのバックアップ技術に関する。   The present invention relates to data backup technology handled by a distributed processing system including a plurality of servers.

近年、クラウドコンピューティングの隆盛に伴い、多量のデータの処理や保持を効率的に行うことが求められている。そこで、複数のサーバを協調動作させることにより効率的な処理を実現する分散処理技術が発展している。   In recent years, with the rise of cloud computing, it has been required to efficiently process and retain a large amount of data. Thus, distributed processing technology has been developed that realizes efficient processing by operating a plurality of servers in a coordinated manner.

分散処理を行う際には、処理対象(管理対象)のデータを、クラスタを構成する各サーバ(以下、「クラスタメンバ」または「メンバ」とも称する。)に振り分けておく必要がある。このとき、クラスタ全体での処理能力を高めるためには、各クラスタメンバが担当するデータ数(データ量)は平均化されていることが望ましい。   When performing distributed processing, it is necessary to distribute processing target (management target) data to each server constituting the cluster (hereinafter also referred to as “cluster member” or “member”). At this time, in order to increase the processing capacity of the entire cluster, it is desirable that the number of data (data amount) handled by each cluster member is averaged.

代表的なデータの振り分け手法として、各データのkeyをハッシュ関数にかけた値(以下、「hash(key)」と称する。)をクラスタメンバ数Nで割った余り、すなわち「hash(key) mod N」を番号として持つクラスタメンバにデータを振り分ける手法がある。この場合、各クラスタメンバに事前に「0」から「N−1」までの番号を割り当てていることが前提となる。このような振り分け手法を用いた場合、クラスタメンバを追加すると、Nの値が変化して、多くのデータについて、担当するクラスタメンバが変更になるため、担当するデータの再配置が必要になる。   As a typical data distribution method, the remainder obtained by dividing the value obtained by multiplying the key of each data by a hash function (hereinafter referred to as “hash (key)”) by the number N of cluster members, that is, “hash (key) mod N There is a method of distributing data to cluster members having "" as a number. In this case, it is assumed that numbers “0” to “N−1” are assigned to each cluster member in advance. When such a distribution method is used, if a cluster member is added, the value of N changes, and the cluster member in charge of a lot of data is changed, so that the data in charge must be rearranged.

そこで、クラスタメンバの追加に伴い担当するクラスタメンバが変更になるデータ数を約1/Nに抑える方法として、コンシステント・ハッシュ法[Consistent Hashing](非特許文献1参照)を用いた振り分け手法がある。   Therefore, as a method for suppressing the number of data that the cluster member in charge changes with the addition of the cluster member to about 1 / N, there is a distribution method using a consistent hashing method (see Non-Patent Document 1). is there.

このコンシステント・ハッシュ法を用いたデータ振り分け手法では、クラスタメンバとデータの双方にID(IDentifier)を割り当て、データのIDからID空間を時計回りに辿った場合に最初に出合ったクラスタメンバをそのデータの担当とする。   In this data distribution method using the consistent hash method, an ID (IDentifier) is assigned to both the cluster member and the data, and when the ID space is traced clockwise from the data ID, the first cluster member encountered is Take charge of data.

また、多量のデータの管理をクラスタ構成の分散処理システムで行う場合、あるクラスタメンバに障害が発生した場合でも他のクラスタメンバで処理を継続できるように、データの複製を保持することでデータ冗長化を実現する必要がある。これは、コンシステント・ハッシュ法によるデータ管理手法を用いた分散処理システムにおいても同様である。   In addition, when managing a large amount of data in a cluster-structured distributed processing system, data redundancy is maintained by maintaining a copy of the data so that even if a failure occurs in one cluster member, processing can be continued on other cluster members. Needs to be realized. The same applies to a distributed processing system that uses a data management technique based on the consistent hash method.

図4に示すように、コンシステント・ハッシュ法では、クラスタメンバ(メンバ1〜4)とデータ(データA〜D。黒丸で表示)の双方にIDを割り当て、データのIDからID空間を時計回りに辿り最初に出合ったクラスタメンバをそのデータの担当として決定する。そして、担当するクラスタメンバのさらに右隣(時計回りに次)のクラスタメンバに複製データを担当させる。   As shown in FIG. 4, in the consistent hash method, IDs are assigned to both cluster members (members 1 to 4) and data (data A to D, indicated by black circles), and the ID space is clockwise from the data ID. As a result, the first cluster member encountered is determined to be responsible for the data. Then, the cluster member that is further to the right of the cluster member in charge (next clockwise) is assigned the duplicate data.

例えば、図4においては、データAはID空間上を時計回りに辿り最初に出合ったメンバ1が担当となり、その複製データはID空間上でメンバ1の右隣にあたるメンバ2に担当させる。このように原本データ・複製データを担当するクラスタメンバを決定することで、クラスタメンバに離脱があった場合でもその複製データを所持しているクラスタメンバが新しくデータを担当するクラスタメンバとなることで対応できるという利点がある。なお、複製データを複数個とる場合には、さらに右隣のクラスタメンバに2個目の複製データを担当させるようにすることもできる。   For example, in FIG. 4, data A is traced clockwise in the ID space and is assigned to the member 1 that first encounters, and the duplicate data is assigned to the member 2 on the right side of the member 1 in the ID space. By determining the cluster member in charge of the original data / replicated data in this way, even if the cluster member leaves, the cluster member that owns the replicated data becomes the new cluster member in charge of the data. There is an advantage that it can respond. When a plurality of pieces of duplicate data are taken, the second duplicate data can be assigned to the cluster member on the right side.

なお、このような手法に使用できるデータベースサーバとしては、例えば、Cassandra(非特許文献2)等に記載されている、複数サーバが動的にクラスタに参加・離脱可能できる分散データベースサーバがある。非特許文献2の技術では、コンシステント・ハッシュ法を用いたデータの均等な分散と、O(1)の高速アクセスを実現している。また、複製情報を複数のサーバに対して持たせることで、耐故障性を高めている。   As a database server that can be used in such a method, for example, there is a distributed database server described in Cassandra (Non-Patent Document 2) or the like, in which a plurality of servers can dynamically join and leave a cluster. In the technique of Non-Patent Document 2, uniform distribution of data using the consistent hash method and high-speed access of O (1) are realized. In addition, fault tolerance is enhanced by providing duplicate information to a plurality of servers.

また、激甚災害等が発生し、複数のサーバが同時にダウン(故障)した場合でも、原本データおよび複製データの両方を消失してしまう可能性を低減しておく必要がある。例えば、関東をエリアとするデータセンタエリア(サーバを管理するデータセンタが管轄するエリア)のみに複数のサーバを配置した場合、関東全域に激甚災害等が発生すると、すべてのサーバがダウンし、すべてのデータが消失してしまう可能性がある。したがって、広域なエリアに複数のサーバを分散させておくことが、まず必要になる。   In addition, even when a catastrophic disaster or the like occurs and a plurality of servers are down (failed) at the same time, it is necessary to reduce the possibility that both the original data and the duplicated data will be lost. For example, if multiple servers are placed only in the data center area with the Kanto area (the area under the control of the data center that manages the server), if a catastrophic disaster occurs in the entire Kanto area, all servers will go down, Data may be lost. Therefore, it is first necessary to distribute a plurality of servers in a wide area.

ここで、図5に示すように、複数のサーバが全国に跨ってK種類(ここでは5種類)のデータセンタエリアのいずれかに属している場合について考える。なお、図5のID空間では、記号(黒丸、白丸、黒三角、白三角、白四角)が同じサーバは、同じデータセンタエリアに属しているものとする。   Here, as shown in FIG. 5, consider a case where a plurality of servers belong to one of K types (here, five types) of data center areas across the country. In the ID space of FIG. 5, it is assumed that servers having the same symbol (black circle, white circle, black triangle, white triangle, white square) belong to the same data center area.

この場合、関東全域に激甚災害等が発生しても、関東のデータセンタエリアに属するサーバはダウンするが、その他のデータセンタエリアに属するサーバはダウンしない。つまり、コンシステント・ハッシュ法のID空間では、関東のデータセンタエリアのサーバは離脱するが、他のデータセンタエリアのサーバは離脱しない。   In this case, even if a catastrophic disaster or the like occurs in the entire Kanto region, servers belonging to the Kanto data center area go down, but servers belonging to other data center areas do not go down. In other words, in the consistent hash method ID space, servers in the Kanto data center area leave, but servers in other data center areas do not leave.

なお、通常、コンシステント・ハッシュ法のID空間では、サーバの物理位置を考慮せずにサーバを分散(配置)させている。そのため、図5において、ID空間における上部に破線で囲った2つのサーバのように、同じデータセンタエリアに属するサーバが隣り合っていると、そのデータセンタエリア全域に激甚災害等が発生した場合、原本データと複製データの両方を同時に消失してしまう可能性がある。したがって、例えば、コンシステント・ハッシュ法のID空間で、同じ地域のサーバが隣り合わないようにすることで、そのような原本データと複製データの両方を同時に消失してしまう可能性を低減できる。   Normally, in the ID space of the consistent hash method, the servers are distributed (arranged) without considering the physical positions of the servers. Therefore, in FIG. 5, when servers belonging to the same data center area are adjacent to each other, such as two servers surrounded by a broken line in the upper part of the ID space, when a catastrophic disaster or the like occurs in the entire data center area, There is a possibility that both original data and duplicated data will be lost at the same time. Therefore, for example, by preventing the servers in the same region from being adjacent to each other in the ID space of the consistent hash method, it is possible to reduce the possibility that both the original data and the duplicated data are lost simultaneously.

David Karger et al., “Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web”, [online], 1997, ACM, [平成24年2月20日検索], インターネット<URL:http://www.akamai.com/dl/technical_publications/ConsistenHashingandRandomTreesDistributedCachingprotocolsforrelievingHotSpotsontheworldwideweb.pdf>David Karger et al., “Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web”, [online], 1997, ACM, [searched February 20, 2012], Internet <URL: http://www.akamai.com/dl/technical_publications/ConsistenHashingandRandomTreesDistributedCachingprotocolsforrelievingHotSpotsontheworldwideweb.pdf> Avinash Lakshman et al., “Cassandra - A Decentralized Structured Storage System”, [online], [平成24年2月20日検索], インターネット<URL:http://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf>Avinash Lakshman et al., “Cassandra-A Decentralized Structured Storage System”, [online], [searched February 20, 2012], Internet <URL: http://www.cs.cornell.edu/projects/ladis2009 /papers/lakshman-ladis2009.pdf>

しかしながら、例えば、クラスタ内でソフトウェア障害等が発生し、クラスタ内の複数のサーバが同時にダウンしてしまった場合、原本データと複製データの両方を同時に消失し、容易にデータを復旧できない事態に陥ってしまう可能性がある。   However, for example, if a software failure occurs in a cluster and multiple servers in the cluster go down at the same time, both the original data and the replicated data are lost at the same time, and the data cannot be recovered easily. There is a possibility that.

そこで、本発明は、前記した事情に鑑みてなされたものであり、分散処理システムにおいて、クラスタ内の複数のサーバが同時にダウンし、原本データと複製データの両方を同時に消失してしまった場合でも、容易にデータを復旧することを課題とする。   Therefore, the present invention has been made in view of the circumstances described above, and even in a distributed processing system, even when a plurality of servers in a cluster are down at the same time, both original data and duplicated data are lost at the same time. The task is to recover data easily.

前記課題を解決するために、本発明は、クライアントマシンからのリクエストを処理する複数のサーバと、前記クライアントマシンからのリクエストを前記複数のサーバのいずれかに振り分ける管理装置と、を備え、環状のID空間に、前記複数のサーバが処理する管理対象の複数のデータのすべて、および、前記複数のサーバ、が割り振られ、それぞれの前記サーバが、前記ID空間において自身から所定方向回りに次の前記サーバまでの間に位置する前記データを管理するとともに、当該次の前記サーバから前記所定方向回りにさらに次の前記サーバまでの間に位置する前記データの複製を記憶する分散処理システムと、前記分散処理システムで扱う前記管理対象のデータをバックアップとして記憶する記憶装置を備えるバックアップシステムと、を有するデータベースシステムであって、前記分散処理システム内で前記管理対象のデータの更新を行った場合、前記管理装置および前記複数のサーバのいずれかは、更新したデータを前記バックアップシステムに送信し、前記バックアップシステムにおける記憶装置は、受信したデータを記憶し、前記分散処理システム内で複数の前記サーバに障害が発生して前記管理対象のデータを消失した場合、前記管理装置は、前記バックアップシステムの記憶装置に記憶されたデータを用いて、データを消失した前記サーバのデータ復旧を行い、前記バックアップシステムは、異なる2つ以上の地域それぞれに前記記憶装置を有し、それぞれの前記記憶装置は、前記バックアップのデータを記憶し、前記分散処理システム内で複数の前記サーバに障害が発生して前記管理対象のデータを消失した場合、前記管理装置は、前記バックアップシステムにおけるいずれかの前記記憶装置に記憶されたデータを用いて、データを消失した前記サーバのデータ復旧を行うことを特徴とする。 In order to solve the above problems, the present invention includes a plurality of servers that process requests from client machines, and a management device that distributes requests from the client machines to any of the plurality of servers. the ID space, all of the plurality of data managed by the plurality of servers to handle, and said plurality of servers, are allocated, each of the server, itself from the next in a predetermined direction around in the ID space A distributed processing system for managing the data located between the server and storing a copy of the data located between the next server and the next server around the predetermined direction; A backup system comprising a storage device for storing the management target data handled by the distributed processing system as a backup. When the data to be managed is updated in the distributed processing system, either the management device or the plurality of servers sends the updated data to the backup system. The storage device in the backup system stores the received data, and when the plurality of servers in the distributed processing system fail and the management target data is lost, the management device using the data stored in the storage device of the backup system, the data have a row data recovery of the server which has lost, the backup system has the memory device into each of the two or more regions different, each of said The storage device stores the backup data, and a plurality of the data in the distributed processing system When the management target data is lost due to a server failure, the management device uses the data stored in any one of the storage devices in the backup system, and the data of the server that has lost the data. It is characterized by performing recovery .

これによれば、分散処理システムの外部に設けたバックアップシステムの記憶装置によってデータのバックアップを行うため、分散処理システム(クラスタ)内の複数のサーバが同時にダウンし、原本データと複製データの両方を同時に消失してしまった場合でも、バックアップシステムの記憶装置に記憶されたデータを用いて、データを消失したサーバのデータ復旧を容易に行うことができる。
また、これによれば、バックアップシステムにおいて異なる2つ以上の地域それぞれに配置された記憶装置がバックアップのデータを記憶することで、分散処理システム(クラスタ)内でソフトウェア障害等によって複数のサーバが同時にダウンするとともに、激甚災害等で1つの地域のすべてのサーバがダウンした場合でも、バックアップシステムにおける記憶装置のいくつかはダウンせず、管理装置は、そのダウンしていない記憶装置に記憶されたデータを用いて、データを消失したサーバのデータ復旧を容易に行うことができる。
According to this, in order to back up data with the storage device of the backup system provided outside the distributed processing system, a plurality of servers in the distributed processing system (cluster) go down at the same time, and both the original data and the replicated data are Even if they are lost at the same time, the data stored in the storage device of the backup system can be used to easily recover the data of the server that lost the data.
In addition, according to this, storage devices arranged in two or more different regions in the backup system store backup data, so that a plurality of servers can be simultaneously used in a distributed processing system (cluster) due to a software failure or the like. Even if all servers in one region go down due to a catastrophic disaster, etc., some of the storage devices in the backup system will not go down, and the management device will store the data stored in the storage device that is not down Can be used to easily recover data from a server that has lost data.

本発明によれば、分散処理システムにおいて、クラスタ内の複数のサーバが同時にダウンし、原本データと複製データの両方を同時に消失してしまった場合でも、容易にデータを復旧することができる。   According to the present invention, in a distributed processing system, even when a plurality of servers in a cluster are down at the same time and both original data and duplicated data are lost at the same time, data can be easily recovered.

本実施形態の概要の説明図である。It is explanatory drawing of the outline | summary of this embodiment. 本実施形態のデータベースシステム等の構成図である。It is a block diagram of the database system etc. of this embodiment. 本実施形態の管理装置による処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process by the management apparatus of this embodiment. 従来のコンシステント・ハッシュ法の説明図である。It is explanatory drawing of the conventional consistent hash method. 従来のコンシステント・ハッシュ法におけるID空間およびクラスタメンバの物理位置の説明図である。It is explanatory drawing of ID space and the physical position of a cluster member in the conventional consistent hash method.

以下、本発明を実施するための形態(以下、実施形態と称する。)について、図面を参照(言及図以外の図も適宜参照)しながら説明する。なお、理解を容易にするために、まず、図1を参照して本実施形態の概要について説明し、その後、本実施形態について説明する。   Hereinafter, modes for carrying out the present invention (hereinafter referred to as embodiments) will be described with reference to the drawings (refer to drawings other than the referenced drawings as appropriate). In order to facilitate understanding, the outline of this embodiment will be described first with reference to FIG. 1, and then this embodiment will be described.

(本実施形態の概要)
図1に示すように、K種類(ここでは5種類)のデータセンタエリア(以下、「地域」とも称する。)がある場合について考える。まず、激甚災害等の対策のため、コンシステント・ハッシュ法のID空間では、同じ地域のサーバが隣り合わないように、サーバを配置する。
(Outline of this embodiment)
Consider a case where there are K types (here, 5 types) of data center areas (hereinafter also referred to as “regions”) as shown in FIG. First, as a countermeasure against a catastrophic disaster, servers are arranged so that servers in the same region are not adjacent to each other in the ID space of the consistent hash method.

また、サーバの増設時には、ID空間における新たなクラスタメンバの挿入先を決定した後、その挿入先の両隣のサーバの地域を調査し、その両隣のサーバのいずれも属さない地域のサーバを選択し、そのサーバを増設すればよい(地域が3つ以上の場合)。そうすれば、コンシステント・ハッシュ法のID空間で同じ地域のサーバが隣り合わない状態を維持できる。   In addition, when adding a server, after determining the insertion destination of a new cluster member in the ID space, investigate the area of the server on both sides of the insertion destination, and select a server in an area to which neither of the servers on both sides belongs. You can add more servers (when there are 3 or more regions). Then, it is possible to maintain a state where servers in the same region are not adjacent to each other in the ID space of the consistent hash method.

これにより、ID空間において同じ地域のサーバが隣り合うことがないので、激甚災害等で、3つ以上の地域のうちの1つの地域に存在するすべてのサーバがダウンしても、原本データと複製データの両方が消失する事態を回避することができる。   As a result, servers in the same area in the ID space will not be next to each other. Therefore, even if all servers in one of the three or more areas go down due to a catastrophic disaster, the original data is copied. A situation where both data are lost can be avoided.

ここで、例えば、クラスタ内でソフトウェア障害が発生し、クラスタ内の複数のサーバが同時にダウンして、原本データと複製データの両方を同時に消失した場合でも、容易にデータを復旧できるように、バックアップ装置を導入する。具体的には、分散処理システムの外部装置として、K種類のデータセンタエリアのうち地理的に離れた二箇所に、それぞれ、第1バックアップ装置5(記憶装置)と第2バックアップ装置6(記憶装置)を配置する。そして、第1バックアップ装置5と第2バックアップ装置6は、それぞれ、クラスタ内の複数のサーバが扱うデータのバックアップを記憶する。   Here, for example, if a software failure occurs in a cluster and multiple servers in the cluster go down at the same time, and both the original data and the replicated data are lost at the same time, backup can be performed easily. Install the equipment. Specifically, as an external device of the distributed processing system, a first backup device 5 (storage device) and a second backup device 6 (storage device) are respectively provided at two geographically distant locations in the K types of data center areas. ). The first backup device 5 and the second backup device 6 each store a backup of data handled by a plurality of servers in the cluster.

これにより、クラスタ内のソフトウェア障害のほかに、1つの地域で激甚災害等が発生してその地域のすべてのサーバがダウンした場合でも、第1バックアップ装置5と第2バックアップ装置6の少なくともいずれかはダウンしないので、そのダウンしてないほうに記憶されたデータを用いることで、消失したデータを容易に復旧できる。   As a result, in addition to a software failure in the cluster, even if a catastrophic disaster or the like occurs in one region and all servers in that region go down, at least one of the first backup device 5 and the second backup device 6 Since data does not go down, lost data can be easily recovered by using the data stored on the side that is not down.

具体的には、第1バックアップ装置5は、複数のバックアップサーバ(記憶装置)から構成される。また、第2バックアップ装置6は、複数のストレージ(大容量の記憶装置)から構成される。この複数のストレージは、例えば、Key Valueクラスタ等のクラスタ構成として実現できる。   Specifically, the first backup device 5 includes a plurality of backup servers (storage devices). The second backup device 6 is composed of a plurality of storages (large capacity storage devices). The plurality of storages can be realized as a cluster configuration such as a Key Value cluster.

例えば、管理装置4は、データベースクラスタ(複数のサーバからなるクラスタ)に対してのデータ更新を行う際に、同時に、第1バックアップ装置5に対するデータのバックアップを行う。ここで、第1バックアップ装置5のバックアップサーバは、例えば、ランダムアクセス可能なメディアを用いたデータのバックアップを行えばよい。このような第1バックアップ装置5を用いたデータのバックアップを行いつつ、さらに、例えば、第1バックアップ装置5から第2バックアップ装置6へ非同期で定期的(例えば1日に1回)なバックアップ(スナップショット)を行う。第2バックアップ装置6のストレージは、例えば、テープドライブを用いたデータのバックアップを行えばよい。   For example, the management device 4 performs data backup for the first backup device 5 at the same time when updating data for a database cluster (cluster consisting of a plurality of servers). Here, the backup server of the first backup device 5 may perform data backup using, for example, a randomly accessible medium. While performing data backup using the first backup device 5 as described above, for example, the first backup device 5 to the second backup device 6 asynchronously and periodically (for example, once a day) backup (snap) Shot). The storage of the second backup device 6 may perform data backup using a tape drive, for example.

そして、データベースクラスタのソフトウェア障害発生後は、管理装置4が、第1バックアップ装置5または第2バックアップ装置6を用いて、消失したデータの復旧を行えばよい。このデータの復旧は、例えば、データベースクラスタを再度立ち上げ直した後に、第1バックアップ装置5または第2バックアップ装置6からデータを上書きする形で復旧する。データの復旧に、第1バックアップ装置5と第2バックアップ装置6のいずれを用いるかは、データの消失の規模、種類、消失データ特定の可否等により、適宜決定すればよい。また、同時に激甚災害等も発生して第1バックアップ装置5と第2バックアップ装置6のいずれかがダウンしている場合は、ダウンしていないほうをデータ復旧に使えばよい。   Then, after the software failure of the database cluster occurs, the management device 4 may recover lost data using the first backup device 5 or the second backup device 6. For example, the data is restored by overwriting the data from the first backup device 5 or the second backup device 6 after restarting the database cluster again. Which of the first backup device 5 and the second backup device 6 is used for data recovery may be appropriately determined depending on the scale and type of data loss, whether or not the lost data can be specified, and the like. In addition, when a catastrophic disaster or the like occurs at the same time and one of the first backup device 5 and the second backup device 6 is down, the one that is not down may be used for data recovery.

(実施形態)
次に、本実施形態について説明する。図2に示すように、本実施形態のデータベースシステムSは、分散処理システム1000とバックアップシステム10を備えて構成される。
(Embodiment)
Next, this embodiment will be described. As shown in FIG. 2, the database system S of the present embodiment includes a distributed processing system 1000 and a backup system 10.

分散処理システム1000は、管理装置4と、クラスタ100を構成する複数のサーバ3を備えている。管理装置4は、インターネット等のネットワーク2を介して、複数のクライアントマシン1と接続されている。   The distributed processing system 1000 includes a management device 4 and a plurality of servers 3 that constitute the cluster 100. The management device 4 is connected to a plurality of client machines 1 via a network 2 such as the Internet.

通常(障害未発生時)の全体動作の概要について説明すると、クライアントマシン1からのリクエスト(データ処理リクエスト)を、ネットワーク2経由で管理装置4が受け取る。管理装置4は、データのID空間上のサーバ割当表(ID空間管理情報411)に基づいて、そのリクエストを、データ処理を行う複数のサーバ3のいずれかに振り分ける。振り分けられたサーバ3は、そのリクエストの処理を行う。   An overview of the overall operation (when no failure occurs) will be described. The management device 4 receives a request (data processing request) from the client machine 1 via the network 2. Based on the server allocation table (ID space management information 411) on the data ID space, the management device 4 distributes the request to one of the plurality of servers 3 that perform data processing. The distributed server 3 processes the request.

次に、管理装置4の構成について説明する。管理装置4は、コンシステント・ハッシュ法に基づいて、クライアントマシン1からのリクエストを複数のサーバ3(クラスタメンバ)のいずれに振り分けるかを決定するコンピュータ装置である。なお、前記したように、このコンシステント・ハッシュ法では、環状のID空間に、管理対象の複数のデータ、および、データを管理しクラスタ100を構成する複数のサーバ3、が割り振られ、それぞれのサーバ3が、ID空間において自身から時計回り(所定方向回り)に次のサーバ3までの間に位置するデータを管理(担当)するとともに、当該次のサーバ3から時計回りにさらに次のサーバ3までの間に位置するデータの複製を記憶することを前提とする。   Next, the configuration of the management device 4 will be described. The management device 4 is a computer device that determines to which of a plurality of servers 3 (cluster members) a request from the client machine 1 is distributed based on a consistent hash method. As described above, in the consistent hash method, a plurality of data to be managed and a plurality of servers 3 that manage the data and constitute the cluster 100 are allocated to the circular ID space, The server 3 manages (responsible for) data positioned between itself and the next server 3 in the clockwise direction (predetermined direction) in the ID space, and from the next server 3 to the next server 3 in the clockwise direction. It is assumed that a copy of the data located in between is stored.

管理装置4は、記憶部41、処理部42、入力部43、表示部44、通信部45を備える。
記憶部41は、情報を記憶する手段であり、RAM(Random Access Memory)やROM(Read Only Memory)などのメモリ、HDD(Hard Disk Drive)などによって構成される。記憶部41には、ID空間管理情報411、地域名情報412、サーバ管理情報413、第1バックアップ装置管理情報414、第2バックアップ装置管理情報415が格納されている。なお、記憶部41には、処理部42の動作プログラムなども格納されている(図示を省略)。
The management device 4 includes a storage unit 41, a processing unit 42, an input unit 43, a display unit 44, and a communication unit 45.
The storage unit 41 is a means for storing information, and includes a memory such as a random access memory (RAM) or a read only memory (ROM), a hard disk drive (HDD), or the like. The storage unit 41 stores ID space management information 411, area name information 412, server management information 413, first backup device management information 414, and second backup device management information 415. The storage unit 41 also stores an operation program for the processing unit 42 (not shown).

ID空間管理情報411は、管理対象のデータについて所定のハッシュ値変換を行って算出されたIDを用いて、そのデータを担当するサーバ3を管理するための情報である。   The ID space management information 411 is information for managing the server 3 in charge of the data using the ID calculated by performing predetermined hash value conversion on the data to be managed.

地域名情報412は、地域IDと、その地域IDに対応する地域名との対応付けを管理するための情報である。   The area name information 412 is information for managing the association between the area ID and the area name corresponding to the area ID.

サーバ管理情報413は、地域(地域ID)ごとに、当該地域に物理的に存在するすべてのサーバ3との対応付けを管理する情報である。   The server management information 413 is information for managing the association with all the servers 3 physically existing in the area for each area (area ID).

第1バックアップ装置管理情報414は、第1バックアップ装置5を構成するバックアップサーバのIDやアドレス等の情報である。
第2バックアップ装置管理情報415は、第2バックアップ装置6を構成するストレージのIDやアドレス等の情報である。
The first backup device management information 414 is information such as the ID and address of the backup server that constitutes the first backup device 5.
The second backup device management information 415 is information such as the ID and address of the storage that constitutes the second backup device 6.

処理部42は、記憶部41に格納された情報に基づいて演算処理を行う手段であり、例えばCPUによって構成される。処理部42は、クラスタ100に対してデータの更新(書き込み)をする際、クラスタ100に対して、データのIDおよび値(データ内容)を送信する。また、処理部42は、そのデータをバックアップとして第1バックアップ装置5に送信する際には、同様に、データのIDおよび値(データ内容)値を送信する。第1バックアップ装置5の各バックアップサーバにアクセスするためのアドレスは、第1バックアップ装置管理情報414に格納されている。なお、バックアップのデータを第1バックアップ装置5に送信するのは、管理装置4でなくても、クラスタ100におけるサーバ3であってもよい。   The processing unit 42 is a unit that performs arithmetic processing based on information stored in the storage unit 41, and is configured by a CPU, for example. When updating (writing) data to the cluster 100, the processing unit 42 transmits the data ID and value (data content) to the cluster 100. Further, when transmitting the data to the first backup device 5 as a backup, the processing unit 42 similarly transmits the data ID and the value (data content) value. An address for accessing each backup server of the first backup device 5 is stored in the first backup device management information 414. The backup data may be transmitted to the first backup device 5 not by the management device 4 but by the server 3 in the cluster 100.

入力部43は、管理装置4のユーザが情報を入力する手段であり、例えば、キーボードやマウスによって実現される。
表示部44は、情報を表示する手段であり、例えば、LCD(Liquid Crystal Display)によって実現される。
通信部45は、外部装置との通信に用いられる通信インタフェースである。
The input unit 43 is a means for the user of the management device 4 to input information, and is realized by, for example, a keyboard or a mouse.
The display unit 44 is a means for displaying information, and is realized by an LCD (Liquid Crystal Display), for example.
The communication unit 45 is a communication interface used for communication with an external device.

バックアップシステム10は、第1バックアップ装置5と第2バックアップ装置6を備えて構成される。
第1バックアップ装置5は、分散処理システム1000で扱う管理対象のデータをバックアップとして記憶する複数のバックアップサーバから構成される。
第2バックアップ装置6は、分散処理システム1000で扱う管理対象のデータをバックアップとして記憶する複数のストレージから構成される。
The backup system 10 includes a first backup device 5 and a second backup device 6.
The first backup device 5 includes a plurality of backup servers that store management target data handled by the distributed processing system 1000 as backups.
The second backup device 6 is composed of a plurality of storages that store management target data handled by the distributed processing system 1000 as backups.

次に、管理装置4による処理について説明する。
図3に示すように、ステップS1において、管理装置4の処理部42は、クラスタ100による分散処理(通常(障害未発生時)のリクエスト処理)を実行する。
Next, processing by the management device 4 will be described.
As illustrated in FIG. 3, in step S <b> 1, the processing unit 42 of the management device 4 executes distributed processing (normal (when no failure occurs) request processing) by the cluster 100.

次に、ステップS2において、処理部42は、第1バックアップ装置5によるバックアップタイミングが到来したか否かを判定し、Yesの場合はステップS3に進み、Noの場合はステップS4に進む。このバックアップタイミングは、例えば、リクエスト処理においてデータ更新が発生するたびでもよいし、あるいは、所定時間(例えば10分)ごとでもよい。   Next, in step S2, the processing unit 42 determines whether or not the backup timing by the first backup device 5 has come. If Yes, the process proceeds to step S3, and if No, the process proceeds to step S4. The backup timing may be, for example, every time data update occurs in the request processing, or every predetermined time (for example, 10 minutes).

ステップS3において、処理部42は、第1バックアップ装置5によるバックアップを実行する。つまり、処理部42は、更新データのIDと値(データ内容)を第1バックアップ装置5に送信し、第1バックアップ装置5のバックアップサーバは受信したデータを記憶する。なお、バックアップのデータを第1バックアップ装置5に送信するのは、管理装置4でなくても、クラスタ100におけるサーバ3であってもよい。   In step S <b> 3, the processing unit 42 performs backup by the first backup device 5. That is, the processing unit 42 transmits the update data ID and value (data content) to the first backup device 5, and the backup server of the first backup device 5 stores the received data. The backup data may be transmitted to the first backup device 5 not by the management device 4 but by the server 3 in the cluster 100.

次に、ステップS4において、処理部42は、第2バックアップ装置6によるバックアップタイミングが到来したか否かを判定し、Yesの場合はステップS5に進み、Noの場合はステップS6に進む。このバックアップタイミングは、例えば、所定時間(例えば1日)ごとであればよい。   Next, in step S4, the processing unit 42 determines whether or not the backup timing by the second backup device 6 has arrived. If Yes, the process proceeds to step S5, and if No, the process proceeds to step S6. The backup timing may be, for example, every predetermined time (for example, one day).

ステップS5において、処理部42は、第2バックアップ装置6によるバックアップを実行する。つまり、処理部42は、第1バックアップ装置5および第2バックアップ装置6に指示を出し、第1バックアップ装置5の格納データのIDと値(データ内容)を第2バックアップ装置6に送信させる。第2バックアップ装置6のストレージは受信したデータを記憶する。   In step S <b> 5, the processing unit 42 performs backup by the second backup device 6. In other words, the processing unit 42 instructs the first backup device 5 and the second backup device 6 to transmit the ID and value (data content) of the stored data of the first backup device 5 to the second backup device 6. The storage of the second backup device 6 stores the received data.

ステップS6において、処理部42は、クラスタ100内にソフトウェア障害が発生したか否かを判定し、Yesの場合はステップS7に進み、Noの場合はステップS1に戻る。   In step S6, the processing unit 42 determines whether or not a software failure has occurred in the cluster 100. If Yes, the process proceeds to step S7. If No, the process returns to step S1.

ステップS7において、処理部42は、バックアップに使用すべき装置が第1バックアップ装置5と第2バックアップ装置6のいずれであるかを判定し、第1バックアップ装置5であると判定すればステップS8に進み、第2バックアップ装置6であると判定すればステップS9に進む。この判定は、前記したように、データの消失の規模、種類、消失データ特定の可否等により、適宜決定すればよい。   In step S7, the processing unit 42 determines whether the device to be used for backup is the first backup device 5 or the second backup device 6, and if it determines that the device is the first backup device 5, the process proceeds to step S8. If it is determined that it is the second backup device 6, the process proceeds to step S9. As described above, this determination may be appropriately determined according to the scale and type of data loss, whether or not loss data can be specified.

ステップS8において、処理部42は、第1バックアップ装置5によるクラスタ100のデータ復旧を実行する。つまり、第1バックアップ装置5の格納データを用いて、クラスタ100で消失したデータを復旧させる。   In step S <b> 8, the processing unit 42 performs data recovery of the cluster 100 by the first backup device 5. That is, the data lost in the cluster 100 is recovered using the stored data of the first backup device 5.

ステップS9において、処理部42は、第2バックアップ装置6によるクラスタ100のデータ復旧を実行する。つまり、第2バックアップ装置6の格納データを用いて、クラスタ100で消失したデータを復旧させる。
処理部42は、ステップS8またはステップS9の後、ステップS1に戻る。
In step S <b> 9, the processing unit 42 executes data recovery of the cluster 100 by the second backup device 6. That is, the data lost in the cluster 100 is recovered using the stored data of the second backup device 6.
The processing unit 42 returns to Step S1 after Step S8 or Step S9.

このようにして、本実施形態のデータベースシステムSによれば、分散処理システム1000の外部に設けたバックアップシステム10の記憶装置(第1バックアップ装置5のバックアップサーバ、第2バックアップ装置6のストレージ。以下同様)によってデータのバックアップを行うため、分散処理システム1000(クラスタ100)内の複数のサーバ3が同時にダウンし、原本データと複製データの両方を同時に消失してしまった場合でも、バックアップシステム10の記憶装置に記憶されたデータを用いて、データを消失したサーバ3のデータ復旧を容易に行うことができる。   As described above, according to the database system S of the present embodiment, the storage device (the backup server of the first backup device 5 and the storage of the second backup device 6) provided outside the distributed processing system 1000. Similarly, even if a plurality of servers 3 in the distributed processing system 1000 (cluster 100) goes down at the same time and both the original data and the duplicated data are lost at the same time, the backup system 10 Using the data stored in the storage device, it is possible to easily recover the data of the server 3 that has lost the data.

また、バックアップシステム10において異なる2つ以上の地域それぞれに配置された記憶装置がバックアップのデータを記憶することで、分散処理システム1000(クラスタ100)内でソフトウェア障害等によって複数のサーバ3が同時にダウンするとともに、激甚災害等で1つの地域のすべてのサーバ3がダウンした場合でも、バックアップシステム10における記憶装置のいくつかはダウンせず、管理装置4は、そのダウンしていない記憶装置に記憶されたデータを用いて、データを消失したサーバ3のデータ復旧を容易に行うことができる。   In addition, the storage devices arranged in two or more different regions in the backup system 10 store the backup data, so that a plurality of servers 3 can be down at the same time due to software failure or the like in the distributed processing system 1000 (cluster 100). In addition, even if all the servers 3 in one area are down due to a catastrophic disaster or the like, some of the storage devices in the backup system 10 are not down, and the management device 4 is stored in the storage device that is not down. Data recovery of the server 3 that has lost the data can be easily performed using the stored data.

以上で本実施形態の説明を終えるが、本発明の態様はこれらに限定されるものではない。
例えば、本実施形態では、クラスタ100内でのソフトウェア障害の発生と、激甚災害等の発生の両方の対策のため、バックアップ装置として異なる地域に配置された第1バックアップ装置5と第2バックアップ装置6の2つを用いたが、クラスタ100内でのソフトウェア障害等の発生の対策のためだけには、バックアップ装置は1つでもよい。
Although description of this embodiment is finished above, the aspect of the present invention is not limited to these.
For example, in the present embodiment, the first backup device 5 and the second backup device 6 arranged in different regions as backup devices in order to take measures against both the occurrence of a software failure in the cluster 100 and the occurrence of a catastrophic disaster or the like. However, only one backup device may be used as a countermeasure for the occurrence of a software failure or the like in the cluster 100.

また、バックアップ装置へのデータのバックアップのタイミングは、管理対象のデータの更新に対して同期的でも非同期的でもいずれでもよい。
また、分散処理システム1000において負荷分散装置(ロードバランサ)を使用してもよい。
Further, the timing of data backup to the backup device may be either synchronous or asynchronous with respect to the update of the data to be managed.
Further, a load distribution device (load balancer) may be used in the distributed processing system 1000.

また、地域として、データセンタエリアを単位とする場合を例にとって説明したが、データセンタエリアをさらに分割したものや都道府県等の別の単位を採用してもよい。
また、第1バックアップ装置5の記憶装置をバックアップサーバとし、第2バックアップ装置6の記憶装置をストレージとしたが、記憶装置の種類はそれらに限定されず、例えば、両方ともストレージを使用する、あるいは、いずれかに他の記憶装置を使用する等してもよい。
Moreover, although the case where the data center area is used as a unit as an area has been described as an example, another unit such as a further divided data center area or a prefecture may be adopted.
Moreover, although the storage device of the first backup device 5 is a backup server and the storage device of the second backup device 6 is a storage, the type of the storage device is not limited thereto, for example, both use storage, or Any other storage device may be used.

また、本実施形態ではコンシステント・ハッシュ法を前提としたが、他の手法を前提としてもよい。
その他、具体的な構成について、本発明の主旨を逸脱しない範囲で適宜変更が可能である。
In the present embodiment, the consistent hash method is assumed, but another method may be assumed.
In addition, about a concrete structure, it can change suitably in the range which does not deviate from the main point of this invention.

1 クライアントマシン
2 ネットワーク
3 サーバ
4 管理装置
5 第1バックアップ装置
6 第2バックアップ装置
10 バックアップシステム
41 記憶部
42 処理部
43 入力部
44 表示部
45 通信部
100 クラスタ
411 ID空間管理情報
412 地域名情報
413 サーバ管理情報
414 第1バックアップ装置管理情報
415 第2バックアップ装置管理情報
1000 分散処理システム
S データベースシステム
DESCRIPTION OF SYMBOLS 1 Client machine 2 Network 3 Server 4 Management apparatus 5 1st backup apparatus 6 2nd backup apparatus 10 Backup system 41 Memory | storage part 42 Processing part 43 Input part 44 Display part 45 Communication part 100 Cluster 411 ID space management information 412 Area name information 413 Server management information 414 First backup device management information 415 Second backup device management information 1000 Distributed processing system S Database system

Claims (1)

クライアントマシンからのリクエストを処理する複数のサーバと、前記クライアントマシンからのリクエストを前記複数のサーバのいずれかに振り分ける管理装置と、を備え、環状のID(IDentifier)空間に、前記複数のサーバが処理する管理対象の複数のデータのすべて、および、前記複数のサーバ、が割り振られ、それぞれの前記サーバが、前記ID空間において自身から所定方向回りに次の前記サーバまでの間に位置する前記データを管理するとともに、当該次の前記サーバから前記所定方向回りにさらに次の前記サーバまでの間に位置する前記データの複製を記憶する分散処理システムと、
前記分散処理システムで扱う前記管理対象のデータをバックアップとして記憶する記憶装置を備えるバックアップシステムと、
を有するデータベースシステムであって、
前記分散処理システム内で前記管理対象のデータの更新を行った場合、前記管理装置および前記複数のサーバのいずれかは、更新したデータを前記バックアップシステムに送信し、
前記バックアップシステムにおける記憶装置は、受信したデータを記憶し、
前記分散処理システム内で複数の前記サーバに障害が発生して前記管理対象のデータを消失した場合、前記管理装置は、前記バックアップシステムの記憶装置に記憶されたデータを用いて、データを消失した前記サーバのデータ復旧を行い、
前記バックアップシステムは、異なる2つ以上の地域それぞれに前記記憶装置を有し、それぞれの前記記憶装置は、前記バックアップのデータを記憶し、
前記分散処理システム内で複数の前記サーバに障害が発生して前記管理対象のデータを消失した場合、前記管理装置は、前記バックアップシステムにおけるいずれかの前記記憶装置に記憶されたデータを用いて、データを消失した前記サーバのデータ復旧を行う
ことを特徴とするデータベースシステム。
A plurality of servers for processing requests from client machines, the request from the client machine and a management device for allocating to one of said plurality of servers, the annular ID (IDentifier) space, said plurality of servers All of the plurality of managed data to be processed by the server and the plurality of servers are allocated, and each of the servers is located between itself and the next server around the predetermined direction in the ID space. A distributed processing system for managing data and storing a copy of the data located between the next server and the next server around the predetermined direction;
A backup system comprising a storage device for storing the management target data handled by the distributed processing system as a backup;
A database system comprising:
When the management target data is updated in the distributed processing system, either the management device or the plurality of servers transmits the updated data to the backup system,
The storage device in the backup system stores the received data,
When a failure occurs in a plurality of the servers in the distributed processing system and the management target data is lost, the management device uses the data stored in the storage device of the backup system to lose the data. There line data recovery of the server,
The backup system has the storage device in each of two or more different areas, and each of the storage devices stores the backup data,
When a failure occurs in a plurality of the servers in the distributed processing system and the management target data is lost, the management device uses data stored in any of the storage devices in the backup system, A database system for performing data recovery of the server that has lost data .
JP2012087604A 2012-04-06 2012-04-06 Database system Expired - Fee Related JP6055197B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012087604A JP6055197B2 (en) 2012-04-06 2012-04-06 Database system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012087604A JP6055197B2 (en) 2012-04-06 2012-04-06 Database system

Publications (2)

Publication Number Publication Date
JP2013218481A JP2013218481A (en) 2013-10-24
JP6055197B2 true JP6055197B2 (en) 2016-12-27

Family

ID=49590516

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012087604A Expired - Fee Related JP6055197B2 (en) 2012-04-06 2012-04-06 Database system

Country Status (1)

Country Link
JP (1) JP6055197B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5945252B2 (en) * 2013-07-12 2016-07-05 日本電信電話株式会社 Distributed processing system
JP6053712B2 (en) * 2014-02-27 2016-12-27 日本電信電話株式会社 Management device and program
US11140221B2 (en) * 2016-06-22 2021-10-05 The Johns Hopkins University Network-attack-resilient intrusion-tolerant SCADA architecture

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004361994A (en) * 2003-05-30 2004-12-24 Toshiba Corp Data management device, data management method and program
JP2005062928A (en) * 2003-08-11 2005-03-10 Hitachi Ltd System that performs remote copy to multiple sites
US7925624B2 (en) * 2006-03-31 2011-04-12 Amazon Technologies, Inc. System and method for providing high availability data
JP2011095976A (en) * 2009-10-29 2011-05-12 Nippon Telegr & Teleph Corp <Ntt> Device, method and program for distributed data management

Also Published As

Publication number Publication date
JP2013218481A (en) 2013-10-24

Similar Documents

Publication Publication Date Title
US7590672B2 (en) Identification of fixed content objects in a distributed fixed content storage system
US9535790B2 (en) Prioritizing data reconstruction in distributed storage systems
US10162843B1 (en) Distributed metadata management
EP2847694B1 (en) Systems and methods for distributed storage
JP2021002369A (en) Index update pipeline
US20150269239A1 (en) Storage device selection for database partition replicas
US20170206140A1 (en) System and method for building a point-in-time snapshot of an eventually-consistent data store
CN103929500A (en) Method for data fragmentation of distributed storage system
JP5701398B2 (en) Computer system, data management method and program
JP5629281B2 (en) Management device and program
CA2903841A1 (en) A computer implemented method for dynamic sharding
JP2016524750A5 (en)
CN110413694A (en) Metadata management method and relevant apparatus
JP5723309B2 (en) Server and program
US11188258B2 (en) Distributed storage system
JP6055197B2 (en) Database system
KR20130038517A (en) System and method for managing data using distributed containers
CN115237682A (en) Block chain node fault synchronization method and device, computer equipment and storage medium
JP6085266B2 (en) Server resource management device
JP5745445B2 (en) Management device and program
CN107943615A (en) Data processing method and system based on distributed type assemblies
JP6053712B2 (en) Management device and program
JP6007340B2 (en) Computer system, computer system management method and program
JP2011180658A (en) Redundancy method in distributed file system
JP6093320B2 (en) Distributed processing system

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20140502

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140528

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141022

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150915

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160607

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161202

R150 Certificate of patent or registration of utility model

Ref document number: 6055197

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees