JP6674871B2 - Heterogeneous database management device, method and program - Google Patents

Heterogeneous database management device, method and program Download PDF

Info

Publication number
JP6674871B2
JP6674871B2 JP2016175716A JP2016175716A JP6674871B2 JP 6674871 B2 JP6674871 B2 JP 6674871B2 JP 2016175716 A JP2016175716 A JP 2016175716A JP 2016175716 A JP2016175716 A JP 2016175716A JP 6674871 B2 JP6674871 B2 JP 6674871B2
Authority
JP
Japan
Prior art keywords
data
database
request
rule
information
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.)
Active
Application number
JP2016175716A
Other languages
Japanese (ja)
Other versions
JP2018041322A (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
Original Assignee
Nippon Telegraph and Telephone Corp
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 filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016175716A priority Critical patent/JP6674871B2/en
Publication of JP2018041322A publication Critical patent/JP2018041322A/en
Application granted granted Critical
Publication of JP6674871B2 publication Critical patent/JP6674871B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Description

この発明は、異種データベース管理装置、方法及びプログラムに関する。   The present invention relates to a heterogeneous database management device, method, and program.

異なる複数のテーブルを複数の種別の異なるデータベース(DBとも略す)に管理する技術としてマルチDB技術がある。従来では、テーブル生成時にユーザが明示的に格納先のDBの種別を指定することで、複数のDBと管理サーバ(システムと呼ぶこともある)との間でデータの読み書きを可能とする(例えば、非特許文献1参照)。   There is a multi-DB technology as a technology for managing a plurality of different tables in a plurality of types of different databases (abbreviated as DBs). Conventionally, when a table is generated, a user explicitly specifies the type of a storage destination DB, so that data can be read and written between a plurality of DBs and a management server (sometimes called a system) (for example, , Non-Patent Document 1).

IBM(2002) Garlic: A New Flavor of Federated Query Processing for DB2IBM (2002) Garlic: A New Flavor of Federated Query Processing for DB2

しかし、システム運用者とクライアントが異なる場合、システム運用者はテーブルに含まれるそれぞれのデータの非単体特性(データ単体からは判明しない特性)を把握できず、またクライアントはシステム構成及びDB構成を把握できないため、データの非単体特性に応じてデータの格納先のDB種別を指定することが困難であるという課題がある。   However, when the system operator and the client are different, the system operator cannot grasp the non-unit characteristics of each data included in the table (characteristics that cannot be determined from the data alone), and the client grasps the system configuration and the DB configuration. Since it is not possible, there is a problem that it is difficult to specify the DB type of the storage destination of the data according to the non-unit characteristics of the data.

この発明は上記事情に着目してなされたもので、その目的とするところは、システム運用者とクライアントとが異なる場合でも異なる複数のテーブルを格納先の適切なDB種別の指定ができる異種データベース管理装置、方法及びプログラムを提供することにある。   The present invention has been made in view of the above circumstances, and a purpose thereof is to manage a heterogeneous database in which a plurality of different tables can be specified with an appropriate DB type as a storage destination even when a system operator and a client are different. An object of the present invention is to provide an apparatus, a method, and a program.

上記目的を達成するためにこの発明の観点は、以下のような構成要素を備えている。すなわち、異種データベース管理装置は、データ特性分析部と、ルール生成部と、を備えている。データ特性分析部は、クライアントから受け付けた1以上のリクエストに関するデータをテーブルIDごとに含んだリクエスト履歴テーブルと、データ実体をデータIDごとに含んだデータテーブルを取得し、それらからテーブルIDごとに1以上の特性情報項目に対する値を含んだ特性情報テーブルを生成する。ルール生成部は、特性情報テーブルから1以上の特性情報を抽出しこれらの特性情報を、1以上の情報からテーブルIDごとに格納先として最適なデータベースを選択する判定ロジックに適用して、テーブルIDごとに振り分ける際に最適なデータベースを対応付けるルールテーブルを生成する。   In order to achieve the above object, an aspect of the present invention includes the following components. That is, the heterogeneous database management device includes a data characteristic analysis unit and a rule generation unit. The data characteristic analysis unit acquires a request history table including data relating to one or more requests received from the client for each table ID, and a data table including data entities for each data ID. A characteristic information table including values for the above characteristic information items is generated. The rule generation unit extracts one or more pieces of property information from the property information table, applies the pieces of property information to determination logic for selecting an optimal database as a storage destination for each table ID from the one or more pieces of information, and applies the table ID. Generates a rule table that associates the most appropriate database when distributing to each.

この発明によれば、システム運用者とクライアントとが異なる場合でも要件の異なる複数のデータを適切な格納先DB種別の指定ができる異種データベース管理装置、方法及びプログラムを提供することができる。   According to the present invention, it is possible to provide a heterogeneous database management apparatus, method, and program that can specify an appropriate storage destination DB type for a plurality of data having different requirements even when a system operator and a client are different.

実施形態に係る異種データベース管理装置を示すブロック図。FIG. 1 is a block diagram showing a heterogeneous database management device according to an embodiment. 図1の振り分け情報DBが事前処理として各テーブルの定義を行うことを示すシーケンス図。FIG. 2 is a sequence diagram showing that the distribution information DB of FIG. 1 defines each table as preprocessing. 振り分けルールを示すルールテーブルを更新することを示すシーケンス図。FIG. 13 is a sequence diagram showing that a rule table indicating a distribution rule is updated. ルールテーブルを定期的に更新することを示すシーケンス図。FIG. 9 is a sequence diagram showing that a rule table is updated periodically. データテーブルを永続化することを示すシーケンス図。FIG. 6 is a sequence diagram showing that a data table is made permanent. 図1のSecondary−DBの更新を示すシーケンス図。FIG. 2 is a sequence diagram showing an update of the Secondary-DB in FIG. 1. リクエストの振り分けを示すシーケンス図。FIG. 4 is a sequence diagram showing distribution of requests. 特性情報テーブルの一例を示す図。The figure which shows an example of a characteristic information table. 判定ロジックの一例を示す図。The figure which shows an example of the determination logic. ルールテーブルの一例を示す図。The figure which shows an example of a rule table. リクエスト履歴テーブルの一例を示す図。The figure which shows an example of a request history table.

以下、図面を参照してこの発明に係わる実施形態の異種データベース管理装置、方法及びプログラムを説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
本実施形態の異種データベース管理装置(以下、異種DB管理装置と称す)について図1を参照して説明する。
本実施形態の異種DB管理装置100は、振り分けエンジン部101、振り分け情報DB102、メモリ103、データ特性分析部104、ルール生成部105、永続化部106、アダプタA107、アダプタZ108、DB−A109、DB−Z110を備えている。本実施形態の異種DB管理装置は、複数種別のデータベースを対象とする。異種データベース管理装置は、上述したシステムに対応している。
Hereinafter, a heterogeneous database management apparatus, method, and program according to an embodiment of the present invention will be described with reference to the drawings. In the following embodiments, the same operation is performed for the parts with the same numbers, and the overlapping description will be omitted.
A heterogeneous database management device (hereinafter, referred to as a heterogeneous DB management device) of the present embodiment will be described with reference to FIG.
The heterogeneous DB management device 100 according to the present embodiment includes a distribution engine unit 101, a distribution information DB 102, a memory 103, a data characteristic analysis unit 104, a rule generation unit 105, a persistence unit 106, an adapter A107, an adapter Z108, a DB-A109, a DB -Z110. The heterogeneous DB management device of the present embodiment targets a plurality of types of databases. The heterogeneous database management device corresponds to the system described above.

振り分けエンジン部101は、データ特性分析部104が生成した振り分けルールに従って、リクエスト先となるDBまたはメモリを決定する。振り分けエンジン部101は、クライアントのリクエストに含まれるデータのURI(Uniform Resource Identifiers)情報からテーブル名を特定し、振り分けルールにテーブル名ごとに登録された格納先DB情報を取得する。
また、振り分けエンジン部101がデータテーブルの新規定義リクエストを受けた場合及び振り分けルールの更新依頼を受けた場合には、振り分けエンジン部101は以下のように動作する。(1)ルールテーブル及びリクエスト履歴テーブルに該当するテーブルのIDを持つデータを追加する。その際、ルールテーブル上の当該データテーブルIDのPrimary−DB(プライマリーデータベース)をメモリに設定する。(2)クライアントからリクエストを受けると、データをメモリ103上のデータテーブルに読み書きする。さらにリクエスト履歴テーブルを更新する。(3)一定量のデータがメモリ103上に蓄積されると、データ特性分析部104にデータ特性分析を依頼する。なお、データテーブルは、クライアントのデータテーブルを定義する度に生成され通常複数ある。また、テーブルIDは、複数あるデータテーブルを識別するためのものである。各データテーブルには、複数のデータ実体を記録するため、データ実体を特定するデータIDを、各データ実体に対応付けている。
この他の場合には、振り分けエンジン部101は、取得した格納先DBにデータのリクエスト先を送信する。ここでは、データの新規作成リクエストの場合、Primary−DBを参照先とする。データの新規作成リクエスト以外の場合、Primary−DBとSecondary−DB(セカンダリーデータベース)を参照先とする。複数のテーブルを対象としたリクエストの場合、格納先DBごとにリクエストを分解し、各リクエストを実行する。
The distribution engine unit 101 determines a request destination DB or memory according to the distribution rule generated by the data characteristic analysis unit 104. The distribution engine unit 101 specifies a table name from URI (Uniform Resource Identifiers) information of data included in a client request, and acquires storage destination DB information registered for each table name in a distribution rule.
When the distribution engine unit 101 receives a request for a new definition of a data table and receives a request for updating a distribution rule, the distribution engine unit 101 operates as follows. (1) Add data having a table ID corresponding to the rule table and the request history table. At that time, the Primary-DB (primary database) of the data table ID on the rule table is set in the memory. (2) When a request is received from the client, the data is read and written into a data table on the memory 103. Further, the request history table is updated. (3) When a certain amount of data is stored in the memory 103, the data characteristic analysis unit 104 is requested to perform data characteristic analysis. Note that a data table is generated each time a client data table is defined, and there are usually a plurality of data tables. The table ID is for identifying a plurality of data tables. In each data table, in order to record a plurality of data entities, a data ID specifying the data entity is associated with each data entity.
In other cases, the distribution engine unit 101 transmits a data request destination to the acquired storage destination DB. Here, in the case of a new data creation request, the Primary-DB is referred to. If the request is not a new data creation request, the Primary-DB and the Secondary-DB (secondary database) are referred to. In the case of a request for a plurality of tables, the request is decomposed for each storage destination DB and each request is executed.

メモリ103は、クライアントからのデータテーブル及びリクエストを一時的に格納する。なお、これらのデータテーブル及びリクエストはデータ特性分析部104の指示に従い永続化部106によって各データベースへ振り分けられる。なお便宜上、ここではメモリ103を設けたが、異種DB管理装置100内の各部がそれぞれ情報格納部(バッファ、メモリ等)を持ちそこで、種々のデータを格納していてもよい。データの格納に関しては様々な変形版が考えられ、本実施形態の異種DB管理装置が機能すればその変形版を採用してもよい。   The memory 103 temporarily stores a data table and a request from the client. These data tables and requests are distributed to each database by the persistence unit 106 according to the instruction of the data characteristic analysis unit 104. Although the memory 103 is provided here for convenience, each unit in the heterogeneous DB management device 100 may have an information storage unit (buffer, memory, and the like) and store various data. Various modified versions are conceivable for storing data, and the modified versions may be adopted as long as the heterogeneous DB management device of the present embodiment functions.

データ特性分析部104は、テーブル単位でデータの単体特性及び非単体特性を分析する。単体特性とは、データ単体の特性であり、例えばサイズや属性数がある。非単体特性とは、データ単体からは知り得ない特性であり、例えばリクエスト頻度や検索時の条件数がある。データ特性分析部104は、振り分けエンジン部101からの依頼時またはスケジュールによって指定されたタイミングで以下を実行する。なお、スケジュールは、外部ファイルから取得してもよい。(1)振り分け情報DB102から該当するデータテーブルのリクエスト履歴を取得及び分析し、このデータテーブルの特性情報を生成する。(2)生成した特性情報を引数に、ルール生成部105に振り分けルールの生成を依頼する。振り分けルールが生成されると、振り分け情報DB102からこのデータテーブルに関するリクエスト履歴を削除し、振り分けルールの更新を行う。(3)最後に、メモリ103上に保持されたデータテーブルの永続化を永続化部106に依頼する。   The data characteristic analysis unit 104 analyzes a single characteristic and a non-single characteristic of data for each table. The single characteristic is a characteristic of a single data, such as a size and the number of attributes. The non-simple characteristics are characteristics that cannot be known from the data alone, and include, for example, a request frequency and a condition number at the time of retrieval. The data characteristic analysis unit 104 executes the following at the time of a request from the distribution engine unit 101 or at a timing specified by a schedule. Note that the schedule may be obtained from an external file. (1) Obtain and analyze the request history of the corresponding data table from the distribution information DB 102, and generate characteristic information of this data table. (2) Request the rule generation unit 105 to generate a distribution rule using the generated characteristic information as an argument. When the distribution rule is generated, the request history regarding this data table is deleted from the distribution information DB 102, and the distribution rule is updated. (3) Finally, a request is made to the persistence unit 106 to make the data table held on the memory 103 permanent.

DB−A109からDB−Z110は、それぞれが互いに異種のデータベースであり、それぞれアダプタA107からアダプタZ108によって振り分けエンジン部101に接続されている。図1ではデータベースは2つしか記載していないが、通常データベースは2以上で多数ある。   DB-A109 to DB-Z110 are mutually different databases, and are respectively connected to the distribution engine unit 101 by adapters A107 to Z108. Although FIG. 1 shows only two databases, there are usually two or more databases and many databases.

ルール生成部105は、最適な蓄積DB(DB−A109からDB−Z110のいずれか)を判定する判定ロジックを用い、テーブルごとに格納先DBを振り分ける振り分けルールを生成する。なお、判定ロジックは、ルール生成部105に格納されていてもよいし、外部ファイルから取得してもよい。またルール生成部105は、クライアントからのリクエストを受け付ける前に、ルールテーブルを振り分け情報DB上に定義する。   The rule generation unit 105 generates a distribution rule for distributing the storage destination DB for each table by using a determination logic for determining an optimal storage DB (any of DB-A109 to DB-Z110). The determination logic may be stored in the rule generation unit 105 or may be obtained from an external file. Before accepting a request from a client, the rule generation unit 105 defines a rule table on the distribution information DB.

ルール生成部105は、データ特性分析部104が分析したテーブルの特性情報をデータ特性分析部104から取得し、取得した特性情報と判定ロジックから、当該テーブルのデータを格納するDBを振り分ける振り分けルール(図10のルールテーブルがそれに対応する)を生成する。振り分けルールは、テーブルごとにPrimary−DBとSecondary−DBを設定する。Primary−DBは、テーブルに含まれるデータを格納する。そして、データの生成時にはPrimary−DBを参照先とし、データの取得/更新/削除/検索時には、Primary−DBとSecondary−DBの両方を参照先とする。Secondary−DBは定期的にデータの有無を確認する等して、データが無くなった場合にはSecondary−DBを振り分けルールから削除する。   The rule generation unit 105 acquires the characteristic information of the table analyzed by the data characteristic analysis unit 104 from the data characteristic analysis unit 104, and, based on the acquired characteristic information and the determination logic, allocates a DB that stores the data of the table to a distribution rule ( (The rule table in FIG. 10 corresponds to the rule table). The distribution rule sets a Primary-DB and a Secondary-DB for each table. The Primary-DB stores data included in a table. When generating data, the Primary-DB is referred to, and when acquiring / updating / deleting / retrieving data, both the Primary-DB and the Secondary-DB are referred to. The Secondary-DB periodically confirms the presence / absence of data, and deletes the Secondary-DB from the distribution rule when the data runs out.

永続化部106は、ルール生成部105による振り分けルールの生成が完了したタイミング、または振り分け情報DB102による振り分けルールの更新が完了したタイミングで、メモリ103上のデータの実体を振り分けルールに従って異種DBに移動またはコピーし永続化する。永続化部106は、メモリ103上のデータの書き込み処理を振り分けエンジン部101に依頼する。   The persistence unit 106 moves the substance of the data in the memory 103 to the heterogeneous DB according to the distribution rule at the timing when the generation of the distribution rule by the rule generation unit 105 or the completion of the update of the distribution rule by the distribution information DB 102. Or copy and make it permanent. The persistence unit 106 requests the distribution engine unit 101 to write data on the memory 103.

振り分け情報DB102は、リクエストの種類(データの生成、更新、取得、削除、及び検索)のうちの属性(例えば、回数、時刻、合計値、条件数)を1以上含むリクエスト履歴テーブル、特性情報を含むテーブルである特性情報テーブル、及び振り分けルールを含むルールテーブルを定義し、さらに定義されたそれらのテーブルにデータを格納し蓄積する。なお、振り分けルールテーブルは、テーブル名(テーブルIDで示してもよい)に格納先DBであるPrimary−DBとSecondary−DBとを紐付けた情報を含む。   The distribution information DB 102 stores a request history table including one or more attributes (for example, the number of times, time, total value, and number of conditions) among the types of requests (data generation, update, acquisition, deletion, and search), and characteristic information. A characteristic information table, which is a table including the information, and a rule table including a distribution rule are defined, and data is stored and accumulated in the defined tables. Note that the distribution rule table includes information in which a Primary-DB and a Secondary-DB as storage destination DBs are linked to a table name (may be indicated by a table ID).

次に、振り分け情報DB102が事前処理として各テーブルの定義を行うことについて図2を参照して説明する。
データ特性分析部104がリクエスト履歴テーブルの作成を振り分け情報DB102に依頼する(ステップS201)。振り分け情報DB102がリクエスト履歴テーブルの定義を行い(ステップS202)、その定義を行った旨をデータ特性分析部104に知らせる。リクエスト履歴テーブルは、テーブル名の項目と、リクエスト内容を示す1以上の項目と、が設定されている。リクエスト履歴テーブルについては後に図11を参照して説明する。
同様に、データ特性分析部104が特性情報テーブルの作成を振り分け情報DB102に依頼する(ステップS203)。振り分け情報DB102が特性情報テーブルの定義を行い(ステップS204)、その行った旨をデータ特性分析部104に知らせる。特性情報テーブルは、テーブル名の項目と、データに関する特性情報を示す1以上の項目とが設定されている。特性情報テーブルについては後に図8を参照して説明する。
Next, the assignment information DB 102 defining each table as pre-processing will be described with reference to FIG.
The data characteristic analysis unit 104 requests the distribution information DB 102 to create a request history table (step S201). The distribution information DB 102 defines the request history table (step S202), and notifies the data characteristic analysis unit 104 that the definition has been made. In the request history table, a table name item and one or more items indicating request contents are set. The request history table will be described later with reference to FIG.
Similarly, the data characteristic analysis unit 104 requests the distribution information DB 102 to create a characteristic information table (step S203). The distribution information DB 102 defines the characteristic information table (step S204), and notifies the data characteristic analysis unit 104 of the definition. In the characteristic information table, an item of a table name and one or more items indicating characteristic information on data are set. The characteristic information table will be described later with reference to FIG.

さらに同様に、データ特性分析部104がルールテーブルの定義を振り分け情報DB102に依頼する(ステップS205)。振り分け情報DB102がルールテーブルの定義を行い(ステップS206)、その行った旨をデータ特性分析部104に知らせる。ルールテーブルは、テーブル名の項目と、Primary−DBとSecondary−DBとの項目が設定されている。ルールテーブルについては後に図10を参照して説明する。   Further, similarly, the data characteristic analysis unit 104 requests the definition of the rule table from the distribution information DB 102 (step S205). The distribution information DB 102 defines a rule table (step S206), and notifies the data characteristic analysis unit 104 of the definition. In the rule table, an item of a table name and items of a Primary-DB and a Secondary-DB are set. The rule table will be described later with reference to FIG.

次に、データテーブルを新規生成する場合、またはリクエストを異種DB管理装置100へ送信する場合の異種DB管理装置100での動作について図3を参照して説明する。
振り分けエンジン部101がクライアントからデータテーブルの新規定義の依頼を受け、振り分けエンジン部101は上述した動作を行う(ステップS301)。これはデータテーブルの新規定義及び当該データテーブルのテーブルIDを定義することである。ルールテーブル及びリクエスト履歴テーブルのそれぞれに依頼されたデータテーブルのデータテーブルIDを追加し、情報DB102に蓄積する(ステップS302、ステップS303)。その旨を振り分けエンジン部101及びクライアントに知らせる(ステップS305)。これでクライアントからのリクエスト受け付ける準備ができたことになる。
Next, the operation of the heterogeneous DB management device 100 when a new data table is generated or when a request is transmitted to the heterogeneous DB management device 100 will be described with reference to FIG.
The distribution engine unit 101 receives a request for a new definition of the data table from the client, and performs the above-described operation (step S301). This is to define a new definition of the data table and a table ID of the data table. The data table ID of the requested data table is added to each of the rule table and the request history table, and is stored in the information DB 102 (steps S302 and S303). That fact is notified to the distribution engine unit 101 and the client (step S305). You are now ready to accept requests from clients.

クライアントがリクエストを異種DB管理装置100に送信すると(ステップS305)、リクエストに応じた処理を実行する。振り分けエンジン部101が、実行した結果のデータを含んだデータテーブルをメモリ103にキャッシュするように指示し(ステップS306)、メモリ103がそのデータテーブルを格納する(ステップS307)。   When the client sends a request to the heterogeneous DB management device 100 (step S305), the client executes a process according to the request. The distribution engine unit 101 instructs the data table including the data of the execution result to be cached in the memory 103 (step S306), and the memory 103 stores the data table (step S307).

その後振り分けエンジン部101がメモリ103に格納されたデータテーブルに基づいて振り分け情報DB102がリクエスト履歴テーブルを更新するように指示し(ステップS308)、振り分け情報DB102がリクエスト履歴テーブルを更新する(ステップS309)。この更新は、該当するテーブルIDに対応する項目の更新である。その旨をクライアントに送信する(ステップS310)。振り分けエンジン部101は、データ特性分析部104へデータ特性分析の実施を依頼する(ステップS311)。この依頼は、例えばメモリ103に蓄積したメモリ量が一定値を超えた場合に行う。   Thereafter, the distribution engine unit 101 instructs the distribution information DB 102 to update the request history table based on the data table stored in the memory 103 (step S308), and the distribution information DB 102 updates the request history table (step S309). . This update is an update of an item corresponding to the corresponding table ID. The fact is transmitted to the client (step S310). The distribution engine unit 101 requests the data characteristic analysis unit 104 to perform data characteristic analysis (step S311). This request is made, for example, when the amount of memory stored in the memory 103 exceeds a certain value.

データ特性分析部104が振り分け情報DB102から更新されたリクエスト履歴テーブルを取得し、該当するテーブルID(これは複数でもよい)に対してデータ分析し、特性情報テーブルを生成する(ステップS313)。このように、データの非単体特性を分析し特性情報テーブルを得て、非単体特性を持つデータに対しても格納先DBの種別を指定することができる。この生成された特性情報テーブルをルール生成部105が取得し、特性情報テーブルから情報を抽出し(図9で説明する)判定ロジックを適用して、該当するテーブルIDに対応するPrimary−DBにするデータベース名、及びSecondary−DBにするデータベース名を算出し、ルールテーブルの該当テーブルIDに対応する項目内容を生成する。換言すれば、判定ロジックの結果、テーブル名と格納先DB(Primary−DBまたはSecondary−DB)の組み合わせを振り分けルールとして保持する。したがって、このルールテーブルによって種別の異なるDBの特性を考慮した振り分けルールを生成することができるようになる。   The data characteristic analysis unit 104 acquires the updated request history table from the distribution information DB 102, performs data analysis on the corresponding table ID (there may be a plurality of table IDs), and generates a characteristic information table (step S313). In this way, it is possible to obtain the characteristic information table by analyzing the non-unit characteristics of the data, and to specify the type of the storage destination DB for the data having the non-unit characteristics. The generated property information table is acquired by the rule generation unit 105, information is extracted from the property information table, and a decision logic (described with reference to FIG. 9) is applied to make a Primary-DB corresponding to the corresponding table ID. A database name and a database name to be a Secondary-DB are calculated, and item contents corresponding to the corresponding table ID of the rule table are generated. In other words, as a result of the determination logic, a combination of the table name and the storage destination DB (Primary-DB or Secondary-DB) is held as a distribution rule. Therefore, according to this rule table, it is possible to generate a distribution rule in consideration of the characteristics of DBs of different types.

ルール生成部105はルールテーブルが作成されたことをデータ特性分析部104及び振り分け情報DB102に伝える(ステップS315)。注目している該当テーブルIDの振り分けルールが生成できたので、振り分け情報DB102はステップS309で更新したリクエスト履歴テーブルは不要なので削除する(ステップS316)。振り分け情報DB102は、ステップS314で生成されたルールテーブルの該当テーブルIDに対応する項目内容をルールテーブルに追加し(図10では行を追加することに対応する)に追加してルールテーブルを更新する(ステップS317)。振り分けルールであるルールテーブルを自動的に異種DB管理装置が生成することによって、クライアントが非単体特性を持つデータに対して格納先DBを把握または指定することができたとして、この把握または指定のための設計作業を行う必要がなくなる。   The rule generation unit 105 notifies the data characteristic analysis unit 104 and the distribution information DB 102 that the rule table has been created (step S315). Since the distribution rule of the corresponding table ID of interest has been generated, the distribution information DB 102 deletes the request history table updated in step S309 because it is unnecessary (step S316). The distribution information DB 102 updates the rule table by adding the item contents corresponding to the corresponding table ID of the rule table generated in step S314 to the rule table (corresponding to adding a row in FIG. 10). (Step S317). By automatically generating a rule table as a distribution rule by the heterogeneous DB management device, it is assumed that the client can grasp or specify the storage destination DB for data having non-single characteristics. There is no need to perform design work for

ステップS309での該当ルールIDに対してルールテーブルの更新が完了した旨をデータ特性分析部104及び振り分けエンジン部101に知らせる。   It notifies the data characteristic analysis unit 104 and the distribution engine unit 101 that the update of the rule table has been completed for the corresponding rule ID in step S309.

次に、判定ロジックを適用してルールテーブルを更新することについて図4を参照して説明する。判定ロジックは例えば、データテーブルが生成された後1度のみ実行する設定と、定期的に複数回実行する設定とがある。判定ロジックを定期的に複数回実行する設定の場合を説明する。
データ特性分析部104が、振り分け情報DB102へ定期的な分析を依頼する(ステップS401)。この依頼は特定の複数のテーブルIDに対する分析でもよいし、1つのテーブルIDについての分析でもよい。すなわち、1以上のテーブルIDについて分析することができる。振り分け情報DB102はルールテーブルの更新を受け付け(ステップS402)、データ特性分析部104へその旨を伝える。
Next, updating the rule table by applying the determination logic will be described with reference to FIG. The determination logic includes, for example, a setting to be executed only once after the data table is generated, and a setting to be executed a plurality of times periodically. A case in which the determination logic is periodically executed a plurality of times will be described.
The data characteristic analysis unit 104 requests the distribution information DB 102 for periodic analysis (step S401). This request may be an analysis for a specific plurality of table IDs or an analysis for one table ID. That is, it is possible to analyze one or more table IDs. The distribution information DB 102 receives the update of the rule table (step S402), and notifies the data characteristic analysis unit 104 of that.

分析対象のテーブルIDの振り分け先を一時的にメモリ103とする。対象となるテーブルIDについて図3のステップS305から処理を開始する。最終的にステップS317でルールテーブルの該当テーブルIDに対応する格納先DBを示した項目内容(判定結果)を得ることができる。この判定結果が前回の判定結果と格納先DBが異なる場合、前回の判定結果の格納先DBをSecondary−DBとし、最新の判定結果をPrimary−DBとする。なお、判定ロジックを1度のみ実行する設定の場合及び、複数回実行するが判定結果が合致する場合には、Secondary−DBの値は存在しない。   The allocation destination of the table ID to be analyzed is temporarily set to the memory 103. The process starts from step S305 in FIG. 3 for the target table ID. Finally, in step S317, item contents (determination result) indicating the storage destination DB corresponding to the corresponding table ID in the rule table can be obtained. When the result of this determination is different from the previous determination result and the storage destination DB, the storage destination DB of the previous determination result is defined as Secondary-DB, and the latest determination result is defined as Primary-DB. In the case where the determination logic is set to be executed only once or when the determination logic is executed a plurality of times but the determination results match, the value of the Secondary-DB does not exist.

次に、メモリ103に格納されているデータテーブルごとに対応するデータベースに永続化することについて図5を参照して説明する。
図3のルールテーブルの更新がなされた後に、振り分け情報DB102からデータ特性分析部104にその旨の知らせが送信され、これを受けてデータ特性分析部104はデータの永続化の処理に入り永続化部106へメモリ103が格納しているデータを永続化する処理を開始する(ステップS501)。永続化部106がメモリ103内にあるデータを取得する(ステップS502)。図3の処理で得ているルールテーブルに基づいて、メモリ103にあるデータテーブルごとに対応するデータ実体をDB−A109からDB−Z110のいずれかのデータベースへデータテーブルを移動させ(ステップS504、506)そこに格納し(永続化:ステップS505、S507)永続化した旨を永続化部106へ返す。DB−A109からDB−Z110は複数であれば任意の個数あり、それぞれの仕様も任意あるが、特性情報テーブルの項目に対応する仕様はそれぞれのデータベースで異なっていることが想定される。換言すれば、図9の判定ロジックで選択が多様になるようなデータベースの仕様であればよい。
Next, persistence in a database corresponding to each data table stored in the memory 103 will be described with reference to FIG.
After the rule table in FIG. 3 is updated, a notification to that effect is transmitted from the distribution information DB 102 to the data characteristic analysis unit 104, and in response to this, the data characteristic analysis unit 104 enters a process of data persistence and makes the data permanent. The processing for perpetuating the data stored in the memory 103 to the unit 106 is started (step S501). The perpetuation unit 106 acquires the data in the memory 103 (Step S502). Based on the rule table obtained in the processing of FIG. 3, the data entity corresponding to each data table in the memory 103 is moved from the DB-A109 to one of the databases of the DB-Z110 (steps S504 and 506). ) Stored there (permanence: steps S505 and S507), and return to the persistence unit 106 that the data has been made permanent. If there are a plurality of DB-A109 to DB-Z110, there is an arbitrary number and each specification is also arbitrary, but it is assumed that the specifications corresponding to the items of the characteristic information table are different in each database. In other words, any database specification may be used so that the selection logic is diversified in the determination logic of FIG.

次に、Secondary−DBの更新について図6を参照して説明する。
ルール生成部105は、振り分けルールを振り分け情報DB102から取得する(ステップS601)。ルール生成部105は、取得した振り分けルールに基づいて、Secondary−DBであるデータベースを特定しそのデータベース名を抽出する(ステップS602)。ルール生成部105が、抽出されたSecondary−DBであるデータベースのそれぞれにデータ実体が格納されているかどうかを検索する(ステップS603)。その後、ルール生成部105が、抽出された全てのSecondary−DBそれぞれにデータが格納されているかどうかを判定して更新するかどうかを判定する(ステップS604)。この更新判定では、データが格納されていないDBはルールテーブル(振り分けルール)から記載を削除し、一方、1つでもデータが格納されているDBはそのままルールテーブルに記載を残しておく。その後、ルール生成部105がこの更新判定の結果を振り分け情報DB102に送信し、振り分け情報DB102がルールテーブルを更新する(ステップS606)。
Next, updating of the Secondary-DB will be described with reference to FIG.
The rule generation unit 105 acquires a distribution rule from the distribution information DB 102 (Step S601). The rule generation unit 105 specifies a database, which is the Secondary-DB, based on the acquired distribution rule, and extracts the database name (step S602). The rule generation unit 105 searches whether a data entity is stored in each of the extracted databases, which is the Secondary-DB (step S603). Thereafter, the rule generation unit 105 determines whether data is stored in each of the extracted Secondary-DBs, and determines whether to update the data (step S604). In this update determination, the DB in which no data is stored deletes the description from the rule table (distribution rule), while the DB in which at least one data is stored is left as it is in the rule table. After that, the rule generation unit 105 transmits the result of the update determination to the distribution information DB 102, and the distribution information DB 102 updates the rule table (Step S606).

ここで、リクエストの送信からリクエストを実行する前にリクエストがどのように振り分けられるかについて図7を参照して説明する。ここでは、既にルールテーブル(すなわち、振り分けルール)が決定している場合である。
クライアントがリクエストを送信し振り分けエンジン部101が受け付けると、振り分けエンジン部101がリクエストに含まれるデータのURI情報からテーブル名を特定し、振り分け情報DB102に格納されているルールテーブル(振り分けルールが記載)にテーブル名ごとに登録された格納先DB情報を取得する(ステップS702)。その後、振り分け先がDB−A109であった場合にはDB−A109へ送信し(ステップS703)、DB−A109でリクエストが実行される(ステップS704)。一方、振り分け先がDB−Z110であった場合にはDB−Z110へ送信し(ステップS705)、DB−Z110でリクエストが実行される(ステップS706)。
Here, how the request is distributed from the transmission of the request before the request is executed will be described with reference to FIG. Here, a case is assumed where a rule table (that is, a distribution rule) has already been determined.
When the client transmits the request and the distribution engine unit 101 receives the request, the distribution engine unit 101 specifies the table name from the URI information of the data included in the request, and stores a rule table stored in the distribution information DB 102 (distribution rules are described). Then, the storage destination DB information registered for each table name is acquired (step S702). Thereafter, when the distribution destination is the DB-A 109, it is transmitted to the DB-A 109 (step S703), and the request is executed by the DB-A 109 (step S704). On the other hand, if the distribution destination is DB-Z110, the data is transmitted to DB-Z110 (step S705), and the request is executed in DB-Z110 (step S706).

ここで、特性情報テーブルについて一具体例である図8を参照して説明する。
特性情報テーブルは、データ特性分析部104が、メモリ103に格納されているデータテーブルと、振り分けエンジン部101に格納されて更新されているリクエスト履歴テーブルから作成する。リクエスト履歴テーブルは、後に図11を参照して詳細に説明するが、リクエストの統計情報である次のものをテーブルIDごとに格納している。このリクエストの統計情報は、例えば、データの生成回数、最新及び最古のデータ生成リクエストの受信時刻、データの更新回数、最新及び最古のデータ更新リクエストの受信時刻、データの取得回数、最新及び最古のデータ取得リクエストの受信時刻、削除されたデータの生成時刻、削除されたデータの削除時刻、データの検索回数、及び検索クエリの条件数(リスト形式)を含んでいる。
Here, the characteristic information table will be described with reference to FIG. 8, which is a specific example.
The characteristic information table is created by the data characteristic analysis unit 104 from the data table stored in the memory 103 and the request history table stored and updated in the distribution engine unit 101. The request history table, which will be described in detail later with reference to FIG. 11, stores the following request statistical information for each table ID. The statistical information of this request includes, for example, the number of data generations, the latest and oldest data generation request reception times, the number of data updates, the latest and oldest data update request reception times, the number of data acquisitions, It includes the reception time of the oldest data acquisition request, the generation time of the deleted data, the deletion time of the deleted data, the number of data searches, and the number of search query conditions (list form).

特性情報テーブルは、テーブルに格納したデータの単体特性、非単体特性を表現する項目で構成される。例えば以下の(1)から()のうちの1以上を含む。(1)テーブルにおけるデータの合計生成頻度(例えば、10(回/時)):リクエスト履歴テーブルからデータの生成回数及び最新/最古の生成時刻を取得し、生成頻度を算出する。(2)テーブルにおけるデータの合計更新頻度(例えば、1(回/時)):リクエスト履歴テーブルからデータの更新回数及び最新/最古の更新時刻を取得し、更新頻度を算出する。(3)テーブルにおけるデータの合計取得頻度(例えば、10(回/時)):リクエスト履歴テーブルからデータの取得回数及び最新/最古の取得時刻を取得し、生成頻度を算出する。(4)テーブルにおけるデータの平均生存時間(例えば、148(時間)):リクエスト履歴テーブルから総生存時間及び削除回数を取得し、生存時間の平均値を算出する。(5)テーブルにおけるデータの平均サイズ(例えば、1000(KB)):データテーブルから各データのデータサイズを取得する。平均値を算出する。(6)テーブルにおける検索クエリの平均条件数:リクエスト履歴テーブルから総検索条件数及び検索回数を取得し、検索条件の平均値を算出する。(7)テーブルにおけるデータの平均属性数:データテーブルから各データの属性数を取得する。平均値を算出する(例えば、10(属性))。 The characteristic information table is configured with items expressing the single characteristics and the non-single characteristics of the data stored in the table. For example, one or more of the following (1) to ( 7 ) are included. (1) Total generation frequency of data in the table (for example, 10 (times / hour)): The number of data generations and the latest / oldest generation time are acquired from the request history table, and the generation frequency is calculated. (2) Total update frequency of data in the table (for example, 1 (times / hour)): The update frequency and the latest / oldest update time of the data are acquired from the request history table, and the update frequency is calculated. (3) Total acquisition frequency of data in the table (for example, 10 (times / hour)): The number of data acquisitions and the latest / oldest acquisition time are acquired from the request history table, and the generation frequency is calculated. (4) Average survival time of data in the table (for example, 148 (hours)): The total survival time and the number of deletions are acquired from the request history table, and the average value of the survival time is calculated. (5) Average size of data in the table (for example, 1000 (KB)): The data size of each data is obtained from the data table. Calculate the average value. (6) Average number of search queries in the table: The total number of search conditions and the number of searches are obtained from the request history table, and the average value of the search conditions is calculated. (7) Average number of attributes of data in the table: The number of attributes of each data is obtained from the data table. An average value is calculated (for example, 10 (attribute)).

次に、ルール生成部105が振り分けルール(ルールテーブル)を生成するための判定ロジックについて図9を参照して説明する。
判定ロジックは、ステップS312でデータ特性分析部104が分析して生成し特性情報テーブルから、特性情報項目の1つ以上を用いてルールテーブルを得るためのロジックである。そのロジックの一例が図9に示されている。図9の例では、まず、平均データサイズの大きさで分け、平均データサイズが第1閾値(ここでは1000[KB])よりも小さいかどうか判定する(ステップS901)。ステップS901で平均データサイズが第1閾値よりも小さいと判定された場合には、データの合計生成頻度が合計更新頻度よりも大きいかどうか判定し(ステップS902)、ステップS901で平均データサイズが第1閾値よりも小さくないと判定された場合には、平均データサイズが第2閾値(8000[KB])よりも小さいかどうか判定する(ステップS903)。
Next, determination logic for the rule generation unit 105 to generate a distribution rule (rule table) will be described with reference to FIG.
The determination logic is logic for obtaining a rule table from the characteristic information table generated and analyzed by the data characteristic analysis unit 104 in step S312 using one or more characteristic information items. One example of the logic is shown in FIG. In the example of FIG. 9, first, the data is divided by the size of the average data size, and it is determined whether the average data size is smaller than a first threshold value (here, 1000 [KB]) (step S901). If it is determined in step S901 that the average data size is smaller than the first threshold, it is determined whether the total data generation frequency is higher than the total update frequency (step S902), and in step S901 the average data size is smaller than the first update frequency. If it is determined that the average data size is not smaller than the first threshold, it is determined whether the average data size is smaller than the second threshold (8000 [KB]) (step S903).

ステップS902でデータの合計生成頻度が合計更新頻度よりも大きい場合には、データの合計生成頻度が第3閾値よりも大きいかどうかを判定し(ステップS904)、ステップS902でデータの合計生成頻度が合計更新頻度よりも大きくない場合には、データのサービス頻度が所定値(X)であるかどうかを判定する(ステップS905)。   If the total data generation frequency is higher than the total update frequency in step S902, it is determined whether the total data generation frequency is higher than the third threshold (step S904). If it is not larger than the total update frequency, it is determined whether the data service frequency is a predetermined value (X) (step S905).

ステップS904でデータの合計生成頻度が第3閾値よりも大きい場合にはデータベースAを採用し、ステップS904でデータの合計生成頻度が第3閾値よりも大きくない場合にはデータベースBを採用する。また、ステップS905でデータのサービス頻度が所定値である場合にはデータベースBを採用し、ステップS905でデータのサービス頻度が所定値でない場合にはデータベースCを採用する。さらに、ステップS903で平均データサイズが第2閾値よりも小さい場合にはデータベースDを採用し、ステップS903で平均データサイズが第2閾値よりも小さくない場合にはデータベースEを採用する。   If the total data generation frequency is higher than the third threshold value in step S904, the database A is used. If the total data generation frequency is not higher than the third threshold value in step S904, the database B is used. If the data service frequency is a predetermined value in step S905, the database B is used. If the data service frequency is not the predetermined value in step S905, the database C is used. Further, if the average data size is smaller than the second threshold value in step S903, the database D is used. If the average data size is not smaller than the second threshold value in step S903, the database E is used.

この判定ロジックに対応するテーブルIDの特性情報テーブルを適用することによって、ルール生成部105がこのテーブルIDに対応するPrimary−DBを決定することができ、テーブルIDごとにこの判定ロジックを適用すれば、図10に示すルールテーブルを作成することができる。図10は、ルール生成部105によって得られる振り分けルールを示すルールテーブルである。図10の例では、テーブル名(テーブルID)が「userTable001」「userTable002」「userTable003」及び「userTable004」では、それぞれPrimary−DBが「A」「B」「C」及び「D」となり、Secondary−DBが「なし」「なし」「なし」及び「A、B」となることを示している。   By applying the characteristic information table of the table ID corresponding to this determination logic, the rule generation unit 105 can determine the Primary-DB corresponding to this table ID, and if this determination logic is applied for each table ID, , A rule table shown in FIG. 10 can be created. FIG. 10 is a rule table showing distribution rules obtained by the rule generation unit 105. In the example of FIG. 10, when the table names (table IDs) are "userTable001", "userTable002", "userTable003", and "userTable004", the Primary-DBs are "A", "B", "C", and "D", respectively, and the Secondary-DB This indicates that the DB is “none”, “none”, “none”, and “A, B”.

次に、リクエスト履歴テーブルについて図11を参照して説明する。
リクエスト履歴テーブルは、(1)データの生成リクエスト、(2)データの更新リクエスト、(3)データの取得リクエスト、(4)データの削除リクエスト、及び(5)データの検索リクエストの情報のうち少なくとも1つ以上を保持する。
Next, the request history table will be described with reference to FIG.
The request history table includes at least information of (1) a data generation request, (2) a data update request, (3) a data acquisition request, (4) a data deletion request, and (5) a data search request. Hold one or more.

(1)データの生成リクエストを受信した場合に、以下の項目を更新する。1.データの生成回数(回)。ルールテーブルに格納された生成回数を+1加算する。2.最新/最古の生成時刻(時刻)。データ生成回数が0である場合に、最新/最古の生成時刻を更新する。データ生成回数が0ではない場合に、最新生成時刻を更新する。3.データの生成時刻({ID:時刻})。データIDとデータ生成時刻の組を追加する。なお、データテーブル上に生成時刻を記録してもよい。   (1) When a data generation request is received, the following items are updated. 1. Number of times data was generated (times). +1 is added to the number of generations stored in the rule table. 2. Latest / oldest generation time (time). When the number of times of data generation is 0, the latest / oldest generation time is updated. When the number of times of data generation is not 0, the latest generation time is updated. 3. Data generation time ({ID: time}). A set of data ID and data generation time is added. The generation time may be recorded on the data table.

(2)データの更新リクエストを受信した場合に、以下の項目を更新する。1.データの更新回数(回)。ルールテーブルに格納された更新回数を+1加算する。2.最新/最古の更新時刻(時刻)。データ更新回数が0である場合に、最新/最古の更新時刻を更新する。データ更新回数が0ではない場合に、最新の更新時刻を更新する。   (2) Update the following items when a data update request is received. 1. Number of data updates (times). +1 is added to the number of updates stored in the rule table. 2. Latest / oldest update time (time). When the data update count is 0, the latest / oldest update time is updated. When the data update count is not 0, the latest update time is updated.

(3)データの取得リクエストを受信した場合に、以下の項目を更新する。1.データの取得回数(回)。ルールテーブルに格納された取得回数を+1加算する。2.最新/最古の取得時刻(時刻)。データ取得回数が0である場合に、最新/最古の取得時刻を更新する。データ取得回数が0ではない場合に、最新の取得時刻を更新する。   (3) When a data acquisition request is received, the following items are updated. 1. Number of times data was acquired (times). +1 is added to the number of acquisitions stored in the rule table. 2. Latest / oldest acquisition time (time). When the number of times of data acquisition is 0, the latest / oldest acquisition time is updated. When the number of times of data acquisition is not 0, the latest acquisition time is updated.

(4)データの削除リクエストを受信した場合に、以下の項目を更新する。1.削除回数(回)。ルールテーブルに格納された削除回数を+1加算する。2.生存時間の合計値(時間)。ルールテーブルに格納された生存時間に、削除対象の生存時間を加算する。生存時間は、データの生成時刻と削除リクエストの受信時刻の減算から算出する。3.データ生成時刻(時刻)。ルールテーブルに格納されたデータ生成時刻から削除されたデータのIDと合致するデータID/生成時刻情報を削除する。   (4) When a data deletion request is received, the following items are updated. 1. Number of deletes (times). Add +1 to the number of deletions stored in the rule table. 2. Total value of survival time (hours). Add the lifetime to be deleted to the lifetime stored in the rule table. The lifetime is calculated by subtracting the data generation time and the deletion request reception time. 3. Data generation time (time). Data ID / generation time information matching the ID of the deleted data from the data generation time stored in the rule table is deleted.

(5)データの検索リクエストを受信した場合に、以下の項目を更新する。1.検索回数(回)。ルールテーブルに格納された生成回数を+1加算する。2.検索条件数の総和(数)。ルールテーブルに格納された属性数に、生成リクエストに含まれるデータの属性数を加算する。   (5) When a data search request is received, the following items are updated. 1. Number of searches (times). Add +1 to the number of generations stored in the rule table. 2. Sum of the number of search conditions (number). The number of attributes of data included in the generation request is added to the number of attributes stored in the rule table.

以上の情報を含んだ具体的な一例が図11である。   FIG. 11 shows a specific example including the above information.

以上の実施形態に係る異種データベース管理装置によれば、サイズや属性数などのデータ単体の「単体特性」とは別に、クエリ頻度や検索方法などのデータ単体からはわらない「非単体特性」を持つデータであっても、ルールテーブルがデータIDごとに種別の異なる格納先となるデータベースを決定するので、クライアントとデータベースの構成を熟知しているシステム運用者とが異なる場合でもデータごとに適切な格納先データベースを指定することができる。したがって、クライアントはデータベースの構成を知らなくても、クライアントからの非単体特性を持つリクエストでも、適切なデータベースを格納先に指定することができる。 According to different database management apparatus according to the above embodiment, the size and separate from the "independent characteristics" of the data itself, such as the number of attributes, not adversely or al from the data itself, such as the query frequency and search method "Non independent characteristics Even if the data has "", the rule table determines the database to store different types for each data ID, so even if the client and the system operator who is familiar with the database configuration are different, You can specify an appropriate storage destination database. Therefore, even if the client does not know the configuration of the database, it can specify an appropriate database as a storage destination even with a request having non-simple characteristics from the client.

なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。   Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying constituent elements in an implementation stage without departing from the scope of the invention. Various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the above embodiments. For example, some components may be deleted from all the components shown in the embodiment. Further, components of different embodiments may be appropriately combined.

100…異種DB管理装置、101…振り分けエンジン部、102…振り分け情報DB、103…メモリ、104…データ特性分析部、105…ルール生成部、106…永続化部、107…アダプタA、108…アダプタZ、109…データベースA、110…データベースB。 100: Heterogeneous DB management device, 101: Assignment engine unit, 102: Assignment information DB, 103: Memory, 104: Data characteristic analysis unit, 105: Rule generation unit, 106: Permanence unit, 107: Adapter A, 108: Adapter Z, 109 ... Database A, 110 ... Database B.

Claims (8)

本装置とはシステム構成が異なるクライアントから受け付けた1以上のリクエストに関するデータをテーブルIDごとに含んだリクエスト履歴テーブルと、データ実体を含んだ、テーブルIDで指定されるデータテーブルとを取得し、このデータテーブルからテーブルIDごとに、データ単体から得られる単体特性と、データ単体から得られない非単体特性を含む特性情報の1以上の特性情報を含んだ特性情報テーブルを生成するデータ特性分析部と、
前記特性情報テーブルから1以上の特性情報を抽出しこれらの特性情報を、1以上の特性情報からテーブルIDごとに格納先として最適なデータベースを選択する判定ロジックに適用して、テーブルIDごとに振り分ける際に最適なデータベースを対応付けるルールテーブルを生成するルール生成部と、を備える異種データベース管理装置。
The present apparatus and inclusive request history table data for one or more requests the system configuration received from different clients for each table ID, and data entities I containing, acquires the data table designated by the table ID, each table ID from the data table, the independent characteristics obtained from the data itself, the data characterization of generating characteristic information table that includes one or more properties information of characteristic information including the non-independent characteristics can not be obtained from the data itself Department and
One or more characteristic information is extracted from the characteristic information table, and the characteristic information is applied to a determination logic for selecting an optimal database as a storage destination for each table ID from the one or more characteristic information, and is assigned to each table ID. A heterogeneous database management apparatus comprising:
前記ルールテーブルは、テーブルIDごとにプライマリーデータベースとセカンダリーデータベースとを設定する請求項1に記載の異種データベース管理装置。   The heterogeneous database management device according to claim 1, wherein the rule table sets a primary database and a secondary database for each table ID. 前記ルールテーブルに従って、一時的に格納しているデータの実体を、対応するデータベースに書き込む永続化部をさらに備える請求項1または2に記載の異種データベース管理装置。   3. The heterogeneous database management device according to claim 1, further comprising a persistence unit that writes a substance of temporarily stored data to a corresponding database in accordance with the rule table. 4. 前記ルールテーブルを取得し前記リクエストに含まれるデータのURI情報からテーブルIDを特定し、ルールテーブルに従って当該テーブルIDの格納先データベースにリクエストを送信し、新規作成リクエストの場合にプライマリーデータベースを格納先とし、新規作成以外のリクエストの場合にプライマリーデータベースとセカンダリーデータベースを格納先とする請求項1から3のいずれか1項に記載の異種データベース管理装置。   Obtain the rule table, specify the table ID from the URI information of the data included in the request, send the request to the storage destination database of the table ID according to the rule table, and in the case of a new creation request, set the primary database as the storage destination The heterogeneous database management device according to any one of claims 1 to 3, wherein a primary database and a secondary database are stored as storage destinations for requests other than newly created requests. データ特性分析部により、本装置である異種データベース管理装置とはシステム構成が異なるクライアントから受け付けた1以上のリクエストに関するデータをテーブルIDごとに含んだリクエスト履歴テーブルと、データ実体を含んだ、テーブルIDで指定されるデータテーブルとを取得し、このデータテーブルからテーブルIDごとに、データ単体から得られる単体特性と、データ単体から得られない非単体特性を含む特性情報の1以上の特性情報を含んだ特性情報テーブルを生成するステップと、
ルール生成部により、前記特性情報テーブルから1以上の特性情報を抽出しこれらの特性情報を、1以上の特性情報からテーブルIDごとに格納先として最適なデータベースを選択する判定ロジックに適用して、テーブルIDごとに振り分ける際に最適なデータベースを対応付けるルールテーブルを生成するステップと、を備える異種データベース管理方法。
The data characteristic analysis section, a heterogeneous database management apparatus is the apparatus and inclusive request history table data for one or more requests the system configuration received from different clients in each table ID, it contains do the data entities, the table obtains the data table specified by the ID, from this data table for each table ID, a single characteristic obtained from the data itself, one or more characteristics information of characteristic information including the non-independent characteristics can not be obtained from the data itself and generating characteristic information table containing,
The rule generation unit extracts one or more pieces of property information from the property information table, and applies the pieces of property information to a determination logic that selects an optimal database as a storage destination for each table ID from the one or more pieces of property information, Generating a rule table for associating an optimal database when sorting by table ID.
永続化部により、前記ルールテーブルに従って、一時的に格納しているデータの実体を、対応するデータベースに書き込むステップをさらに備える請求項5に記載の異種データベース管理方法。 6. The heterogeneous database management method according to claim 5, further comprising a step of writing the entity of the temporarily stored data to a corresponding database by the persistence unit in accordance with the rule table. 前記ルールテーブルを取得し前記リクエストに含まれるデータのURI情報からテーブルIDを特定し、ルールテーブルに従って当該テーブルIDの格納先データベースにリクエストを送信し、新規作成リクエストの場合にプライマリーデータベースを格納先とし、新規作成以外のリクエストの場合にプライマリーデータベースとセカンダリーデータベースを格納先とする請求項5または6に記載の異種データベース管理方法。   Obtain the rule table, specify the table ID from the URI information of the data included in the request, send the request to the storage destination database of the table ID according to the rule table, and in the case of a new creation request, set the primary database as the storage destination 7. The heterogeneous database management method according to claim 5, wherein a primary database and a secondary database are stored in the case of a request other than a new request. コンピュータに、請求項5から7のいずれか1項に記載の異種データベース管理方法の各ステップを実行させるためのプログラム。   A program for causing a computer to execute each step of the heterogeneous database management method according to any one of claims 5 to 7.
JP2016175716A 2016-09-08 2016-09-08 Heterogeneous database management device, method and program Active JP6674871B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016175716A JP6674871B2 (en) 2016-09-08 2016-09-08 Heterogeneous database management device, method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016175716A JP6674871B2 (en) 2016-09-08 2016-09-08 Heterogeneous database management device, method and program

Publications (2)

Publication Number Publication Date
JP2018041322A JP2018041322A (en) 2018-03-15
JP6674871B2 true JP6674871B2 (en) 2020-04-01

Family

ID=61626070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016175716A Active JP6674871B2 (en) 2016-09-08 2016-09-08 Heterogeneous database management device, method and program

Country Status (1)

Country Link
JP (1) JP6674871B2 (en)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1078903A (en) * 1996-09-04 1998-03-24 Hitachi Ltd Data distributed design supporting device
JP2000267903A (en) * 1999-03-16 2000-09-29 Nec Corp Device for storing data divided into plural properties
JP4579000B2 (en) * 2005-02-14 2010-11-10 株式会社日立製作所 Data allocation setting in computer system
JP2007310569A (en) * 2006-05-17 2007-11-29 Hitachi Ltd Evaluation method and evaluation program for method of determining information arrangement
JP5269394B2 (en) * 2007-11-15 2013-08-21 株式会社野村総合研究所 Database distribution device, database distribution method, program, and recording medium
JP5576836B2 (en) * 2011-07-29 2014-08-20 日本電信電話株式会社 Call processing data storage method, call processing data distribution device, and program
JP2013065104A (en) * 2011-09-15 2013-04-11 Toshiba Corp Load distribution system, data access device, and load distribution method
JP2013065120A (en) * 2011-09-15 2013-04-11 Toshiba Corp Load distribution system, data access device, and load distribution method
JP2015132972A (en) * 2014-01-14 2015-07-23 株式会社野村総合研究所 Data relocation system
JP6157004B2 (en) * 2014-03-19 2017-07-05 Kddi株式会社 Virtual database system management apparatus, management method, and management program

Also Published As

Publication number Publication date
JP2018041322A (en) 2018-03-15

Similar Documents

Publication Publication Date Title
US8140495B2 (en) Asynchronous database index maintenance
US9177019B2 (en) Computer system for optimizing the processing of a query
US7672928B2 (en) Query forced indexing
US8738572B2 (en) System and method for storing data streams in a distributed environment
US20220083618A1 (en) Method And System For Scalable Search Using MicroService And Cloud Based Search With Records Indexes
KR20200053512A (en) KVS tree database
US8185546B2 (en) Enhanced control to users to populate a cache in a database system
US8214411B2 (en) Atomic deletion of database data categories
US9183267B2 (en) Linked databases
US20120303597A1 (en) System and Method for Storing Data Streams in a Distributed Environment
JP2012174096A (en) Computer system and data management method
CN107506356B (en) Data processing method and its system
TWI579715B (en) Search servers, end devices, and search methods for use in a distributed network
US20080201290A1 (en) Computer-implemented methods, systems, and computer program products for enhanced batch mode processing of a relational database
JPWO2013046667A1 (en) Information system, management method and program thereof, data processing method and program, and data structure
JP5640432B2 (en) Distributed processing apparatus, distributed processing program, and distributed processing method
CN106503186A (en) A kind of data managing method, client and system
JP6084700B2 (en) Search system and search method
WO2015015559A1 (en) Search system and search method
US10810196B2 (en) Materialized view generation
JP6674871B2 (en) Heterogeneous database management device, method and program
US11157506B2 (en) Multiform persistence abstraction
JP6506773B2 (en) INFORMATION PROCESSING APPARATUS, METHOD, AND PROGRAM
JP2015176407A (en) Search device, search method, search program and search data structure
JP2016062522A (en) Database management system, database system, database management method, and database management program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190806

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190918

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200309

R150 Certificate of patent or registration of utility model

Ref document number: 6674871

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150