JP2006350741A - Database management device, distributed database management system, distributed database management method, and distributed database management program - Google Patents

Database management device, distributed database management system, distributed database management method, and distributed database management program Download PDF

Info

Publication number
JP2006350741A
JP2006350741A JP2005177005A JP2005177005A JP2006350741A JP 2006350741 A JP2006350741 A JP 2006350741A JP 2005177005 A JP2005177005 A JP 2005177005A JP 2005177005 A JP2005177005 A JP 2005177005A JP 2006350741 A JP2006350741 A JP 2006350741A
Authority
JP
Japan
Prior art keywords
database management
data
management device
unit
column name
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005177005A
Other languages
Japanese (ja)
Other versions
JP4573710B2 (en
Inventor
Makoto Onizuka
真 鬼塚
Hiroyuki Uchiyama
寛之 内山
Masashi Yamamuro
雅司 山室
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 JP2005177005A priority Critical patent/JP4573710B2/en
Publication of JP2006350741A publication Critical patent/JP2006350741A/en
Application granted granted Critical
Publication of JP4573710B2 publication Critical patent/JP4573710B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a database management device, a distributed database management system, a distributed database management method, and a distributed database management program by which a data registration processing and a data retrieval processing can perform at high speed. <P>SOLUTION: The database management devices 2 is database devices which combine horizontal and vertical distributions to distributedly arrange data, and each database management device 2 includes; a hash function operation part 15e for returning a hash value resulting from combining an ID of a database management device where data specified by a key value and a column name is stored or should be stored, and a fractional record ID being a part of data, in response to input of the key value and the column name designating the data; and a distribution function operation part 15f which returns one or more database management device IDs where data designated by a column name is stored, in response to input of the column name. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、複数のデータベースを分散構成したデータベース管理装置、分散データベース管理システム、分散データベース管理方法および分散データベース管理プログラムに関する。   The present invention relates to a database management apparatus, a distributed database management system, a distributed database management method, and a distributed database management program in which a plurality of databases are distributed.

分散データベースシステムを実現する場合、分散データベースを構成するデータベースの定義情報をサイト上にどのように配置するかということが重要である。この配置情報の違いにより分散データベース処理の手法は異なってくる。   When realizing a distributed database system, it is important how the definition information of the database constituting the distributed database is arranged on the site. The distributed database processing method differs depending on the difference in the arrangement information.

従来の分散データベースの手法としては、リレーショナルデータモデルや
オブジェクト指向データモデルに基づいたレコードフォーマットを用いるデータベース管理装置が知られている(特許文献1参照。)。また、水平・垂直分散などの観点でデータを分割して、分散するデータベース管理装置群を統括する大域サーバが登録データを受け付け、分散するデータベース管理装置群にデータを登録する等の処理を行う分散データベースシステム(集中型グローバルDD/D管理方式)が知られている(特許文献2参照。)。この特許文献2に更に記載される分散型グローバルDD/D管理方式では、大域サーバを使用せず分散する各データベース管理装置が自立的に応用プログラムからの要求を処理する。
Raghu Ramakrishnan, Johannes Gehrke、“Database Management Systems”、 Second Edition、GcGraw-Hill、「レコードフォーマット(record formats)」、P221−224 特許第002969627号公報
As a conventional distributed database technique, a database management apparatus using a record format based on a relational data model or an object-oriented data model is known (see Patent Document 1). In addition, the data is divided from the viewpoint of horizontal / vertical distribution, etc., and the global server that supervises the distributed database management device group receives the registered data and performs processing such as registering the data in the distributed database management device group A database system (centralized global DD / D management system) is known (see Patent Document 2). In the distributed global DD / D management system described further in Patent Document 2, each database management device that is distributed without using a global server autonomously processes a request from an application program.
Raghu Ramakrishnan, Johannes Gehrke, “Database Management Systems”, Second Edition, GcGraw-Hill, “record formats”, P221-224 Japanese Patent No. 002969627

しかしながら、特許文献1のデータベース管理装置では、リレーショナルデータモデルやオブジェクト指向データモデルに基づいており、断片的なレコードを登録する際には、更新対象となるレコードを検索した上で更新を実行しなければならないため、処理の手間がかかってしまうという問題があった。これは特にセンシングされたデータのように膨大な断片データを登録するような応用においては、高速にデータを書き込めないという問題があった。   However, the database management apparatus disclosed in Patent Document 1 is based on a relational data model or an object-oriented data model, and when registering fragmented records, the records to be updated must be searched and updated. Therefore, there is a problem in that it takes time for processing. This has a problem that data cannot be written at high speed particularly in an application in which a large amount of fragment data such as sensed data is registered.

更に、特許文献2の集中型グローバルDD/D管理方式に基づく分散データベースシステムでは、データを格納する方法として水平・垂直分散などの観点でデータを分割して分散するデータベース管理装置群にデータを登録するが、検索を実行する際には大域サーバが問い合わせを受け付けて、分散するデータベース管理装置群へ問い合わせを実行する必要があった。このため、分散サーバ数の増加に従って大域サーバが性能上のボトルネックになってしまうという問題があった。また、分散型グローバルDD/D管理方式に基づく分散データベースシステムでは、データベース管理装置の負荷状況によらず応用プログラムが自由にアクセス対象であるデータベース管理装置を指定してしまうため、データベース管理装置の負荷を分散できずに性能が劣化してしまうという問題があった。   Furthermore, in the distributed database system based on the centralized global DD / D management system disclosed in Patent Document 2, the data is stored in a database management apparatus group that divides and distributes data from the viewpoint of horizontal / vertical distribution as a method of storing data. However, when executing a search, the global server must accept the inquiry and execute the inquiry to the distributed database management apparatus group. Therefore, there is a problem that the global server becomes a performance bottleneck as the number of distributed servers increases. Further, in the distributed database system based on the distributed global DD / D management method, the application program freely designates the database management device to be accessed regardless of the load status of the database management device. There was a problem that performance could deteriorate without being able to disperse.

この他にも、水平・垂直分散を組み合わせてデータベースを分散させる分散データベース装置では、キー値を指定した問い合わせもしくは問い合わせの処理の中間結果として得られる断片レコード群に含まれる個々の断片レコード毎に問い合わせ処理を継続する場合、通常の水平分散の方法では指定のカラム値の範囲(特許文献1には「レンジパーティショニング」と記載)やカラム値(ハッシュによるパーティショニング)によってデータベースを分散しているため、問い合わせにおいて指定されていないカラムに対する条件を処理する場合は、アクセスするべきデータがどのデータベース管理装置に分散配置されているか判断できないため、全てのデータベース管理装置に対してアクセスが発生してしまい、性能が劣化するという問題があった。   In addition to this, in a distributed database device that distributes the database by combining horizontal and vertical distribution, inquiries are made for each individual fragment record included in the fragment record group obtained as an intermediate result of a query specifying a key value or query processing. When processing continues, the database is distributed according to the specified column value range (described as “range partitioning” in Patent Document 1) and column values (partitioning by hashing) in the normal horizontal distribution method. When processing a condition for a column that is not specified in the query, it is impossible to determine in which database management device the data to be accessed is distributed, so access to all database management devices occurs. There is a problem that the performance deteriorates. It was.

本発明は上記問題点を鑑み、断片レコードの登録処理を迅速に行い、ディスク上の記憶領域に空きが生じさせないようにし、分散するデータベース管理装置数の増加に従っても大域サーバが性能上のボトルネックにならず、データの登録・問い合わせ処理において格納するデータ・アクセスするデータがどのデータベース管理装置にあるかを高速に判断して、データの登録・問い合わせ処理を高速に実行することができるデータベース管理装置、分散データベース管理システム、分散データベース管理方法および分散データベース管理プログラムを提供することを目的とする。   In view of the above problems, the present invention quickly performs fragment record registration processing so as not to create a free storage area on the disk, and the global server becomes a bottleneck in performance as the number of distributed database management devices increases. Database management device that can quickly determine which database management device has data to be stored / accessed in data registration / inquiry processing, and can execute data registration / inquiry processing at high speed An object of the present invention is to provide a distributed database management system, a distributed database management method, and a distributed database management program.

上記目的を達成するために、本発明の第1の特徴は、[イ]水平垂直分散を組みあわせてデータを分散配置するデータベース装置であって、データを指定するキー値およびカラム名の入力により、キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDとデータの一部である断片レコードIDを組み合わせたハッシュ値を返却するハッシュ関数演算部(15e)と、[ロ]カラム名の入力により、カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを返却する分散関数演算部(15f)とを備えるデータベース装置であることを要旨とする。   In order to achieve the above object, the first feature of the present invention is [a] a database device that distributes and arranges data by combining horizontal and vertical distributions, by inputting key values and column names for specifying data. A hash function calculation unit (15e) that returns a hash value in which data specified by a key value and a column name is stored or combined with a database management device ID to be stored and a fragment record ID that is a part of the data; , [B] A database device including a distributed function calculation unit (15f) that returns one or more database management device IDs in which data specified by a column name is stored by inputting a column name. To do.

更に本発明の第1の特徴は、[ハ]断片レコードをデータとして登録するデータ断片登録部(15g)と、[ニ]登録した断片レコードを追記方式で格納するデータベース部(3)と、[ホ]データベース部(3)に格納された断片レコードを統合してレコードを構成するレコード統合部(15k)とを更に加えてもよい。   Furthermore, the first feature of the present invention is that [c] a data fragment registration unit (15g) for registering fragment records as data, [d] a database unit (3) for storing the registered fragment records by a write-once method, [ E) A record integration unit (15k) that integrates fragment records stored in the database unit (3) to form a record may be further added.

本発明の第2の特徴は、[イ]水平垂直分散を組みあわせ、データを分散配置するための分散データベース管理システムであって、キー値およびカラム名の入力により、キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDとデータの一部である断片レコードIDを組み合わせたハッシュ値を返却するハッシュ関数演算部(15e)、カラム名の入力により、カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを返却する分散関数演算部(15f)を有する複数のデータベース装置と、[ロ]複数のデータベース管理装置の負荷情報を収集する負荷情報収集部(25a)、負荷情報収集部(25a)内の負荷情報を統計的にデータ処理することで、最も負荷の低いデータベース管理装置とそのデータベース管理装置へのアクセス期間を含むアクセス権を決定するアクセス権管理部(25b)を有する大域サーバ(1)を備え、[ハ]複数のデータベース装置へのアクセスは大域サーバ(1)が決定するアクセス権に基づいて許可される分散データベース管理システムであることを要旨とする。   A second feature of the present invention is [a] a distributed database management system for distributing and allocating data by combining horizontal and vertical distribution, specified by key value and column name by inputting the key value and column name. Hash function calculation unit (15e) that returns a hash value obtained by combining a database management device ID in which stored data is to be stored or a fragment record ID that is a part of the data, and a column name by inputting a column name A plurality of database devices having a distributed function calculation unit (15f) that returns one or more database management device IDs in which data specified by the database is stored; and [b] a load for collecting load information of the plurality of database management devices By statistically processing the load information in the information collection unit (25a) and load information collection unit (25a), the most A global server (1) having a low-load database management device and an access right management unit (25b) for determining an access right including an access period to the database management device, and [c] access to a plurality of database devices The gist of the invention is that it is a distributed database management system that is permitted based on the access right determined by the global server (1).

更に本発明の第2の特徴は、[ニ]複数のデータベース管理装置のうち断片レコードを登録すべきデータベース管理装置に断片レコードを登録する際には断片レコードが保持するキー値およびカラム名を入力し、ハッシュ関数を用いてデータを格納するべきデータベース管理装置のIDを特定し、特定されたデータベース管理装置に対して断片データを送信し登録するデータ登録処理部と、[ホ]複数のデータベース管理装置内にて断片レコードを検索する際には検索の為の問い合わせ文に記述された1つ以上のカラム名を特定し、分散関数を用いて、検索に必要となるデータを格納している少なくとも1つ以上のデータベース管理装置IDを特定し、特定された少なくとも1つ以上のデータベース管理装置が実行可能な問い合わせ文の一部を送信し、検索を実行する第1部分検索部(15h)、[ヘ]検索を実行した中間結果より特定されたデータのキー値およびカラム名を基に、ハッシュ関数を用いて、検索に必要となるデータを格納しているデータベース管理装置のIDを特定し、特定されたデータベース管理装置が実行可能な部分問い合わせ分を送信し、検索を実行する第2部分検索部(15i)とを更に備えてもよい。   Further, the second feature of the present invention is [D] When registering a fragment record in a database management device to register a fragment record among a plurality of database management devices, a key value and a column name held by the fragment record are input. A data registration processing unit that specifies an ID of a database management device in which data is to be stored using a hash function, transmits fragment data to the identified database management device, and [e] a plurality of database managements When searching for fragment records in the device, one or more column names described in the query statement for the search are specified, and the data necessary for the search is stored using a distributed function. A part of an inquiry statement that identifies one or more database management device IDs and that can be executed by the identified at least one database management device The first partial search unit (15h) that transmits and executes the search, [f] Necessary for the search using the hash function based on the key value and the column name of the data specified from the intermediate result of executing the search A second partial search unit (15i) that specifies the ID of the database management device that stores the data to be transmitted, transmits the partial query that can be executed by the specified database management device, and executes the search. Also good.

本発明の第3の特徴は、[イ]水平垂直分散を組みあわせてデータを分散配置するための複数のデータベース管理装置を統合管理する分散データベース管理方法であって、複数のデータベース管理装置の負荷情報を負荷情報収集部(25a)が収集するステップと、[ロ]負荷情報収集部(25a)内の負荷情報を統計的にデータ処理することで、最も負荷の低いデータベース管理装置とそのデータベース管理装置へのアクセス期間を含むアクセス権をアクセス権管理部(25b)が決定するステップと、[ハ]複数のデータベース装置へのアクセスをアクセス権に基づいて許可するステップと、[ニ]データを分散保持する複数のデータベース管理装置にアクセスが行われ、キー値およびカラム名が入力されると、キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDとデータの一部である断片レコードIDを組み合わせたハッシュ値をハッシュ関数演算部(15e)が返却するステップと、[ホ]カラム名の入力により、カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを分散関数演算部(15f)が返却するステップを備える分散データベース管理方法であることを要旨とする。   A third feature of the present invention is [a] a distributed database management method for integrated management of a plurality of database management devices for distributing and arranging data by combining horizontal and vertical distributions, and a load on the plurality of database management devices. A step of collecting information by the load information collecting unit (25a), and [b] statistically processing the load information in the load information collecting unit (25a), so that the database management apparatus having the lowest load and its database management A step in which the access right management unit (25b) determines an access right including an access period to the device, [c] a step of permitting access to a plurality of database devices based on the access right, and [d] data distribution. When access is made to multiple database management devices and key values and column names are entered, the key values and column names are A step in which the hash function calculation unit (15e) returns a hash value obtained by combining the database management device ID in which the specified data is stored or to be stored and the fragment record ID that is a part of the data; The gist of the present invention is a distributed database management method including a step in which a distributed function calculation unit (15f) returns one or more database management device IDs in which data specified by a column name is stored by inputting a column name. .

本発明の第4の特徴は、[イ]水平垂直分散を組みあわせてデータを分散配置するためのコンピュータにおいて、データを分散配置するための複数のデータベース管理装置の負荷情報を負荷情報収集部(25a)が収集する命令と、[ロ]負荷情報収集部(25a)内の負荷情報を統計的にデータ処理することで、最も負荷の低いデータベース管理装置とそのデータベース管理装置へのアクセス期間を含むアクセス権をアクセス権管理部(25b)が決定する命令と、[ハ]複数のデータベース装置へのアクセスをアクセス権に基づいて許可する命令と、[ニ]データを分散保持する複数のデータベース管理装置にアクセスが行われ、キー値およびカラム名が入力されると、キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDとデータの一部である断片レコードIDを組み合わせたハッシュ値をハッシュ関数演算部(15e)が返却する命令と、[ホ]カラム名の入力により、カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを分散関数演算部(15f)が返却する命令を実行させる分散データベース管理プログラムであることを要旨とする。   A fourth feature of the present invention is that [a] a computer for distributing and arranging data by combining horizontal and vertical distributions, load information of a plurality of database management devices for distributing and arranging data is collected by a load information collecting unit ( The data collected by the command 25a) and the load information in the load information collection unit 25a are statistically processed, thereby including the database management device with the lowest load and the access period to the database management device. An instruction for determining the access right by the access right management unit (25b), [c] an instruction for permitting access to a plurality of database devices based on the access right, and [d] a plurality of database management apparatuses for distributing and holding data When a key value and column name are entered, the data specified by the key value and column name is stored. Alternatively, the column name is determined by inputting a command in which the hash function calculation unit (15e) returns a hash value obtained by combining a database management device ID to be stored and a fragment record ID which is a part of data, and [e] column name. The gist of the present invention is a distributed database management program that executes an instruction to return one or more database management device IDs in which specified data is stored by the distributed function calculation unit (15f).

本発明のデータベース管理装置、分散データベース管理システム、分散データベース管理方法および分散データベース管理プログラムによると、応用プログラムは事前にアクセス権を大域サーバから発行してもらうため、データの登録・問い合わせの実行時には大域サーバへの負荷集中をさけることができる。また、大域サーバでは全データベース管理装置の負荷情報に基づきアクセス権を発行するため、データベース管理装置の負荷を分散することができる。   According to the database management device, distributed database management system, distributed database management method, and distributed database management program of the present invention, the application program has the access right issued from the global server in advance. The load concentration on the server can be avoided. Further, since the global server issues an access right based on the load information of all the database management apparatuses, the load on the database management apparatus can be distributed.

データの登録の際は、ハッシュ関数を用いてそのデータを格納するべきデータベース管理装置を高速に特定し、追記方式で記憶領域にデータを書き込むため、高速にデータの登録処理を行うことができる。   When registering data, a database management apparatus in which the data is to be stored is specified at high speed using a hash function, and the data is written into the storage area by the appending method, so that data registration processing can be performed at high speed.

問い合わせ処理の際は、ハッシュ関数・分散関数を用いて問い合わせを処理する上で必要となるデータを格納するデータベース管理装置を高速に特定することができる。   At the time of query processing, it is possible to specify at high speed a database management apparatus that stores data necessary for processing a query using a hash function / distribution function.

以下、本発明の実施の形態に係るデータベース管理装置、分散データベース管理システム、分散データベース管理方法および分散データベース管理プログラムについて説明する。尚、本発明の実施の形態において使用される機器、手法等は一例であり、本発明はこれらに限定されるものでないことは勿論である。   Hereinafter, a database management device, a distributed database management system, a distributed database management method, and a distributed database management program according to embodiments of the present invention will be described. In addition, the apparatus, method, etc. which are used in embodiment of this invention are examples, and of course this invention is not limited to these.

(実施の形態)
(分散データベース管理システム)
本発明の実施の形態に係る分散データベース管理システム100は、水平・垂直分散を組み合わせてデータベースを分散させる為のシステムであり、その装置して、図1に示すように、大域サーバ1、各々がデータベース2を備える複数のデータベース管理装置2、クライアント端末4等を備える。
(Embodiment)
(Distributed database management system)
A distributed database management system 100 according to an embodiment of the present invention is a system for distributing a database by combining horizontal and vertical distribution. As shown in FIG. A plurality of database management devices 2 including the database 2, a client terminal 4, and the like are included.

大域サーバ1は複数のデータベース管理装置2から成る分散データベース管理装置群5のアクセス状況を管理し、特定のデータベース管理装置2に負荷がかからないように、アクセス状況に応じて、応用プログラムがアクセスするデータベース管理装置2を特定したり、そのアクセス期間を設定したりする。クライアント端末4は利用者が使用する端末であり、分散データベース管理装置群5へ対してデータの登録処理や検索処理を行うための応用プログラムを備えている。尚、クライアント端末4は、入力装置、出力装置、通信装置、主記憶装置、CPU等を備える通常のパーソナルコンピュータ等である。   The global server 1 manages the access status of the distributed database management device group 5 including a plurality of database management devices 2, and the database accessed by the application program according to the access status so as not to put a load on the specific database management device 2. The management device 2 is specified and its access period is set. The client terminal 4 is a terminal used by the user, and includes an application program for performing data registration processing and search processing for the distributed database management device group 5. The client terminal 4 is an ordinary personal computer or the like that includes an input device, an output device, a communication device, a main storage device, a CPU, and the like.

(データベース管理装置)
データベース管理装置2は、図2に示すように、入力装置11、出力装置12、通信制御装置13、通信インタフェース14、中央制御装置(以下、CPUと記載)15、主記憶装置16、データベース部3、ハッシュテーブル記憶部18、関数記憶部19およびキャッシュ部20等を備えている。
(Database management device)
As shown in FIG. 2, the database management device 2 includes an input device 11, an output device 12, a communication control device 13, a communication interface 14, a central control device (hereinafter referred to as CPU) 15, a main storage device 16, and a database unit 3. A hash table storage unit 18, a function storage unit 19, a cache unit 20, and the like.

入力装置11は、キーボード、マウス、入力信号を受信するインタフェース等である。フロッピー(登録商標)ディスク、ハードディスク等の外部記憶装置を介して入力されても良い。出力装置12は、処理結果等を出力するための装置であり、具体的にはプリンタ、液晶ディスプレイ、CRTディスプレイ等を指す。通信制御装置13は、大域サーバ1、他のデータベース管理装置2およびクライアント端末4に対しデータを送受信する為の制御信号を生成する。通信インタフェース14は、大域サーバ1、他のデータベース管理装置2およびクライアント端末4との間においてデータを送受信するための装置である。   The input device 11 is a keyboard, a mouse, an interface for receiving an input signal, or the like. It may be input via an external storage device such as a floppy (registered trademark) disk or hard disk. The output device 12 is a device for outputting a processing result or the like, and specifically indicates a printer, a liquid crystal display, a CRT display, or the like. The communication control device 13 generates a control signal for transmitting / receiving data to / from the global server 1, another database management device 2, and the client terminal 4. The communication interface 14 is a device for transmitting / receiving data to / from the global server 1, another database management device 2, and the client terminal 4.

CPU15はプロセス、各命令等の演算処理を行う。主記憶装置16は、主メモリとして、処理の手順を記述したプログラムや処理されるべきデータを一時的に記憶し、CPU15の要請に従ってプログラムの機械命令やデータを引き渡す。又、CPU15で処理されたデータは主記憶装置16に書き込まれる。主記憶装置16とCPU15はアドレスバス、データバス、制御信号等で結ばれている。キャッシュ部20は、主記憶装置17の補助メモリ、作業用メモリである。   The CPU 15 performs arithmetic processing such as processes and instructions. The main storage device 16 temporarily stores a program describing a processing procedure and data to be processed as a main memory, and delivers a machine instruction and data of the program according to a request from the CPU 15. Data processed by the CPU 15 is written to the main storage device 16. The main storage device 16 and the CPU 15 are connected by an address bus, a data bus, a control signal, and the like. The cache unit 20 is an auxiliary memory and work memory of the main storage device 17.

データベース部3は、図3に示すようなID、カラム名、カラム値、時刻等の項目から構成される断片レコードを追記格納する。同一IDの断片レコードは統合され、まとまった1つの統合レコード3aと成る。   The database unit 3 additionally stores a fragment record composed of items such as ID, column name, column value, and time as shown in FIG. Fragment records with the same ID are integrated into a single integrated record 3a.

例えば、図3の統合レコード3aは、RFIDが212である断片レコード群を統合したものであり、カラムとして温度,経路(IDリーダ番号)等がある。データベース部3の記憶領域では常に空き領域の先頭アドレスを管理するだけであり、データの追記では第1断片レコードの次に第2断片レコードを書き込むように、記憶領域の空き領域の先頭に次々に追記する。連続領域にデータを書き込むことにより、記憶領域の無駄が出ず、また書き込みが高速に行える。   For example, the integrated record 3a in FIG. 3 is obtained by integrating fragment record groups having an RFID of 212, and includes columns such as temperature and path (ID reader number). In the storage area of the database unit 3, only the start address of the free area is always managed, and in the additional recording of data, the second fragment record is written after the first fragment record one after another. Append. By writing data to the continuous area, the storage area is not wasted and writing can be performed at high speed.

ハッシュテーブル記憶部18は、ハッシュテーブルを格納するための記憶領域である。関数記憶部19は、ハッシュ関数、分散関数を格納するための記憶領域である。   The hash table storage unit 18 is a storage area for storing a hash table. The function storage unit 19 is a storage area for storing a hash function and a dispersion function.

CPU15は、図2に示すように、データ登録処理部15a、検索処理部15b、ハッシュテーブル管理部15c、関数管理部15d、ハッシュ関数演算部15e、分散関数演算部15f、データ断片登録部15g、第1部分検索部15h、第2部分検索部15i、検索結果構成部15j、レコード統合部15kおよびプラン生成部15l等を備えている。   As shown in FIG. 2, the CPU 15 includes a data registration processing unit 15a, a search processing unit 15b, a hash table management unit 15c, a function management unit 15d, a hash function calculation unit 15e, a distribution function calculation unit 15f, a data fragment registration unit 15g, A first partial search unit 15h, a second partial search unit 15i, a search result configuration unit 15j, a record integration unit 15k, a plan generation unit 151, and the like are provided.

データ登録処理部15aは、クライアント端末4の応用プログラムからのデータの登録命令を処理する。検索処理部15bは、応用プログラムからのデータの検索命令を処理する。ハッシュテーブル管理部15cは、ハッシュテーブル記憶部18を管理する。ハッシュテーブルはデータの登録時にエントリ登録され、データ検索時のエントリ検索において使用される。関数管理部15dは、データの登録や検索時に用いられるハッシュ関数や分散関数を管理する。   The data registration processing unit 15 a processes a data registration command from the application program of the client terminal 4. The search processing unit 15b processes a data search command from the application program. The hash table management unit 15 c manages the hash table storage unit 18. The hash table is registered as an entry when data is registered, and is used for entry search during data search. The function management unit 15d manages a hash function and a distribution function used at the time of data registration and retrieval.

ハッシュ関数演算部15eは、水平・垂直分散を組み合わせてデータベースを分散させる分散データベースにおいて、キー値(レコードID)とカラム名のペアの入力により、そのデータが格納されている若しくは格納すべきデータベース管理装置IDとデータ断片IDを組み合わせたハッシュ値を返却する関数を算出する。   The hash function calculation unit 15e is a database management system in which data is stored or should be stored by inputting a key value (record ID) and column name pair in a distributed database in which the database is distributed by combining horizontal and vertical distribution. A function that returns a hash value combining the device ID and the data fragment ID is calculated.

分散関数演算部15fは、カラム名を入力することで、そのデータが格納されている若しくは格納すべきデータベース管理装置IDの集合を返却する分散関数を算出する。   The distribution function calculation unit 15f inputs a column name and calculates a distribution function that returns a set of database management device IDs in which the data is stored or should be stored.

データ断片登録部15gは、レコードの一部(断片レコード)をデータベース部3の記憶領域に追記方式で格納する。データを格納するべきデータベース管理装置2は上記のハッシュ関数を用いて特定される。   The data fragment registration unit 15g stores a part of the record (fragment record) in the storage area of the database unit 3 by the appending method. The database management device 2 to store data is specified using the above hash function.

第1部分検索部15hは、問い合わせ処理の際のWHERE句の処理にて使用され、分散関数を用いて、検索に必要となるデータを格納している1つ以上のデータベース管理装置IDを特定し、このデータベース管理装置2が実行可能な問い合わせ分の部分を送信して検索を実行する。   The first partial search unit 15h is used in the processing of the WHERE clause at the time of inquiry processing, and specifies one or more database management device IDs that store data necessary for the search using a distributed function. Then, the database management device 2 transmits a portion of an inquiry that can be executed and executes a search.

第2部分検索部15iは、問い合わせ処理の際のWHERE句の処理にて使用され、検索の中間結果より特定されたデータのキー値(レコードID)とカラム名のペアとハッシュ関数を用いて、検索に必要となるデータを格納している1つ以上のデータベース管理装置IDを特定する。更に、このデータベース管理装置2が実行可能な問い合わせ文(句)を送信して検索を実行する。   The second partial search unit 15i is used in the processing of the WHERE clause at the time of inquiry processing, and uses a key value (record ID) of the data specified from the intermediate result of the search, a column name pair, and a hash function, One or more database management device IDs storing data necessary for the search are specified. Further, the database management apparatus 2 transmits a query sentence (phrase) that can be executed to execute a search.

検索結果構成部15jは、問い合わせ処理の際のSELECT句の処理にて、最終的な検索結果を構成する。レコード統合部15kは、断片レコードからレコードを復元して、問い合わせ処理を実行する。プラン生成部15lはWHERE句の処理を行う際のプランを生成する。   The search result configuration unit 15j configures a final search result by processing the SELECT phrase during the inquiry process. The record integration unit 15k restores the record from the fragment record and executes inquiry processing. The plan generation unit 151 generates a plan for processing the WHERE clause.

(大域サーバ)
大域サーバ1は、図4に示すように、入力装置21、出力装置22、通信制御装置23、通信インタフェース24、CPU25、主記憶装置26、負荷情報記憶部27およびアクセス権情報記憶部28等を備えている。
(Global server)
As shown in FIG. 4, the global server 1 includes an input device 21, an output device 22, a communication control device 23, a communication interface 24, a CPU 25, a main storage device 26, a load information storage unit 27, an access right information storage unit 28, and the like. I have.

負荷情報記憶部27は、CPUコストやIOコスト等の負荷情報を格納する。アクセス権情報記憶部28は、応用プログラムが使用可能なデータベース管理装置2およびそのデータベース管理装置2へのアクセス許可期間等のアクセス権情報を格納する。   The load information storage unit 27 stores load information such as CPU cost and IO cost. The access right information storage unit 28 stores access right information such as the database management apparatus 2 that can be used by the application program and an access permission period for the database management apparatus 2.

CPU25は、負荷情報収集部25aおよびアクセス権管理部25b等より構成される。負荷情報収集部25aは分散する全てのデータベース管理装置2のCPUコストやIOコスト等の負荷情報を定期的収集し、負荷情報記憶部27に書き込む。   The CPU 25 includes a load information collection unit 25a and an access right management unit 25b. The load information collection unit 25 a periodically collects load information such as CPU cost and IO cost of all the database management devices 2 to be distributed and writes it in the load information storage unit 27.

アクセス権管理部25bは、問い合わせやデータの登録時の大域サーバへのアクセスの集中を防ぐため、応用プログラムが負荷の低いデータベース管理装置を利用するよう制御し、問い合わせ処理、検索処理等を負荷分散する。アクセス権管理部25bは統計処理部25cおよびアクセス権算出部25d等を備えている。   The access right management unit 25b controls the application program to use a database management device with a low load in order to prevent concentration of access to the global server at the time of inquiry or data registration, and distributes load on inquiry processing and search processing. To do. The access right management unit 25b includes a statistical processing unit 25c and an access right calculation unit 25d.

統計処理部25cは、最も負荷の低いデータベース管理装置2を決定する基準となる負荷情報を収集し、統計的にデータ処理する。   The statistical processing unit 25c collects load information serving as a reference for determining the database management device 2 having the lowest load, and statistically processes the data.

アクセス権算出部25dは、応用プログラムからの要求に応じて、その応用プログラムがアクセス可能なデータベース管理装置2と、アクセスを許可する期間を算出して応用プログラムに返却する。アクセス可能なデータベース管理装置2としては、収集した負荷情報を基に、その時に負荷が軽いデータベース管理装置2が選択、決定される。   In response to a request from the application program, the access right calculation unit 25d calculates the database management apparatus 2 that can be accessed by the application program, and the period during which access is permitted, and returns it to the application program. As the accessible database management device 2, the database management device 2 having a light load at that time is selected and determined based on the collected load information.

他の装置については、データベース管理装置2と同様であるため説明を省略する。   The other devices are the same as the database management device 2 and will not be described.

(分散データベース管理システムの動作)
分散データベース管理システム100の主な動作として、
1. データベース管理装置2の初期化処理
2. 大域サーバ1の情報収集処理
3. 大域サーバ1のアクセス権発行処理
4. データベース管理装置2のデータ登録処理
5. データベース管理装置2の問い合わせ処理
6. データベース管理装置2のWHERE句処理
7. データベース管理装置2のWHERE句内の条件式処理
8. データベース管理装置2のSELECT句処理
が挙げられる。以下、これらの動作について各々図面を参照して説明する。
(Distributed database management system operation)
As main operations of the distributed database management system 100,
1. 1. Initialization processing of the database management device 2 2. Information collection processing of the global server 1 3. Access right issue processing of the global server 1 4. Data registration processing of the database management device 2 5. Inquiry processing of the database management device 2 6. WHERE phrase processing of the database management device 2 7. Conditional expression processing in the WHERE clause of the database management device 2 A SELECT phrase process of the database management apparatus 2 is exemplified. Hereinafter, each of these operations will be described with reference to the drawings.

(データベース管理装置の初期化処理)
以下、データベース管理装置2の初期化処理について図5のフローチャートを参照して説明する。
(Initialization of database management device)
Hereinafter, the initialization process of the database management apparatus 2 will be described with reference to the flowchart of FIG.

(a)先ずステップS11においては、1つのデータベース管理装置2のハッシュ関数演算部15eが、データ分散処理に使用するハッシュ関数を算出する。ハッシュ関数の算出では、既に入力された断片レコードの値のヒストグラムなどの統計情報を用いて、今後入力されると断片レコードのキー値の集合が均一にハッシュされるよう関数h1を決定する。ハッシュ関数の決定方法については、イントロダクショントゥアルゴリズム(introduction to algorithms、著者: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein、出版社: The MIT Press
)等の書籍や、SHA-1、MD5といったものが広く知られている。
(A) First, in step S11, the hash function calculation unit 15e of one database management device 2 calculates a hash function used for data distribution processing. In the calculation of the hash function, the function h1 is determined by using statistical information such as a histogram of the values of the fragment records that have already been input, so that a set of key values of the fragment records will be uniformly hashed in the future. For how to determine the hash function, see introduction to algorithms (author: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, publisher: The MIT Press)
), And SHA-1, MD5, etc. are widely known.

また分散関数演算部15fが、分散関数h2を算出する。ハッシュ関数h1、分散関数h2は、少なくとも以下のような入力と出力の対応表を個々のデータベース管理装置2の関数記憶部19が保持することで実装可能である。つまり、h1とh2は、
h1(入力:レコードのキー値,カラム名)→(出力:データベース管理装置ID,レコードのキー値のハッシュ値)
h2(入力:カラム名)→(出力:データベース管理装置ID)の集合
という関数となる。但し、h1(キー値,カラム名)によって得られるデータベース管理装置IDはh2(カラム名)により得られるデータベース管理装置ID群に含まれる。h1はレコードのキー値とデータベースのスキーマにおけるカラム名(もしくはテーブル名とカラム名)を入力とし、ハッシュ値を演算する。そのハッシュ値は複合的なハッシュ値であり、分散するデータベース管理装置2のIDと入力したレコードのハッシュ値である。
Further, the dispersion function calculation unit 15f calculates the dispersion function h2. The hash function h1 and the distribution function h2 can be implemented by the function storage unit 19 of each database management device 2 holding at least the following input-output correspondence table. That is, h1 and h2 are
h1 (input: record key value, column name) → (output: database management device ID, record key value hash value)
The function is a set of h2 (input: column name) → (output: database management device ID). However, the database management device ID obtained by h1 (key value, column name) is included in the database management device ID group obtained by h2 (column name). h1 receives the key value of the record and the column name (or table name and column name) in the database schema, and calculates a hash value. The hash value is a composite hash value, which is the ID of the distributed database management device 2 and the hash value of the input record.

h2はデータベース部3のスキーマにおけるカラム名、若しくはテーブル名とカラム名を入力とし、分散するデータベース管理装置2のIDの集合を返却する。   h2 receives a column name in the schema of the database unit 3 or a table name and a column name as input and returns a set of IDs of the database management devices 2 to be distributed.

(b)ステップS12においては、決定されたハッシュ関数を、通信網を介して、全てのデータベース管理装置2(分散データベース管理装置群5)へ送信する。 (B) In step S12, the determined hash function is transmitted to all the database management apparatuses 2 (distributed database management apparatus group 5) via the communication network.

(c)ステップS13においては、全てのデータベース管理装置2の関数管理部15dが、同じハッシュ関数を受け取り、関数記憶部19に格納する。更にハッシュテーブル管理部15cがこのハッシュ関数を基にハッシュテーブルを作成する。作成されたハッシュテーブルは各々のハッシュテーブル記憶部18に格納される。 (C) In step S <b> 13, the function management unit 15 d of all the database management apparatuses 2 receives the same hash function and stores it in the function storage unit 19. Further, the hash table management unit 15c creates a hash table based on this hash function. The created hash table is stored in each hash table storage unit 18.

(大域サーバの情報収集処理)
次に大域サーバ1が分散データベース管理装置群5から負荷情報を収集する処理について図6のフローチャートを参照して説明する。
(Global server information collection processing)
Next, processing in which the global server 1 collects load information from the distributed database management device group 5 will be described with reference to the flowchart of FIG.

(a)先ずステップS21において、負荷情報収集の収集契機を大域サーバ1の管理者が入力する。収集契機は、定期的な時間間隔を空ける方法や、データベース管理装置2が一定の負荷以下の場合に契機とする方法等によって決定する。またこれらの基準は、分散データベース管理装置群5で統一したものを利用する方法、また個々のデータベース管理装置2毎に異なるものを利用する方法がある。 (A) First, in step S21, the administrator of the global server 1 inputs a load information collection opportunity. The collection trigger is determined by a method of making a regular time interval, a method of triggering when the database management device 2 is below a certain load, or the like. In addition, there are a method of using those standards that are unified in the distributed database management device group 5 and a method of using a method that is different for each individual database management device 2.

(b)ステップS22においては、図4の負荷情報収集部25aは、指定された収集契機に従って、分散データベース管理装置群5からIOコストやCPUコスト等の負荷情報を収集して、大域サーバ1が有する図4の負荷情報記憶部27に書き込む。 (B) In step S22, the load information collection unit 25a in FIG. 4 collects load information such as IO cost and CPU cost from the distributed database management device group 5 according to the designated collection opportunity, and the global server 1 It is written in the load information storage unit 27 of FIG.

(c)ステップS22の処理はステップS23にて大域サーバ1の管理者が停止を指定しない限り実行される。停止が指定されたら、負荷情報の収集フローを終了する。 (C) The process in step S22 is executed unless the administrator of the global server 1 designates stop in step S23. If stop is designated, the load information collection flow is terminated.

(大域サーバのアクセス権発行処理)
次にクライアント端末4の応用プログラムからの要求に応じて、大域サーバ1がアクセス権を発行する処理について図7のフローチャートを参照して説明する。
(Global server access right issuance processing)
Next, processing in which the global server 1 issues an access right in response to a request from the application program of the client terminal 4 will be described with reference to the flowchart of FIG.

(a)先ずステップS31において、アクセス権管理部25bがクライアント端末4の応用プログラムからアクセス権の発行要求を受け付ける。 (A) First, in step S31, the access right management unit 25b accepts an access right issuance request from the application program of the client terminal 4.

(b)ステップS32においては、統計処理部25cが収集した全てのデータベース管理装置2のCPU/IO負荷情報を利用して、アクセス権算出部25dは、アクセス権として、応用プログラムがアクセスするべき最も負荷の低いデータベース管理装置2とそのデータベース管理装置2へのアクセス期間を算出する。算出されたアクセス権はアクセス権情報記憶部28に格納される。 (B) In step S32, using the CPU / IO load information of all the database management devices 2 collected by the statistical processing unit 25c, the access right calculation unit 25d uses as the access right the application program that should most be accessed. The database management device 2 with a low load and the access period to the database management device 2 are calculated. The calculated access right is stored in the access right information storage unit 28.

アクセス期間については、過去のデータベース管理装置のCPU/IO負荷情報と既に応用プログラムに対して割り当てているアクセス権とを参照し、各々のデータベース管理装置2の負荷の変化を予測する。これにより、負荷が低いアクセス期間を決定する。   Regarding the access period, the CPU / IO load information of the past database management apparatus and the access right already assigned to the application program are referred to, and the change of the load of each database management apparatus 2 is predicted. Thereby, an access period with a low load is determined.

(c)ステップS33においては、通信網を介して、これらのアクセスが許可されたデータベース管理装置2とそのアクセス期間を、アクセス権として応用プログラムに返却する。 (C) In step S33, the database management device 2 to which these accesses are permitted and its access period are returned to the application program as access rights via the communication network.

(データベース管理装置のデータ登録処理)
次に、クライアント端末4の応用プログラムより登録要求を受け、アクセス権にて決定されたデータベース管理装置2がデータを登録する際の動作について図8のフローチャートを参照して説明する。
(Data registration processing of database management device)
Next, an operation when the database management apparatus 2 that receives a registration request from the application program of the client terminal 4 and is determined by the access right registers data will be described with reference to the flowchart of FIG.

(a)ステップS41において、クライアント端末4よりデータ登録要求を受けたデータ登録処理部15aは、入力された断片レコードのキー値とカラム名をハッシュ関数h1に入力し、データベース管理装置IDを得る。このデータベース管理装置IDを用いて、登録された断片レコードを登録するべきデータベース管理装置2が特定される。 (A) In step S41, the data registration processing unit 15a that receives the data registration request from the client terminal 4 inputs the key value and column name of the input fragment record into the hash function h1, and obtains the database management device ID. Using this database management device ID, the database management device 2 to register the registered fragment record is specified.

例えば、図3の第1断片レコードではキー値は212であり、カラム名は温度である。これらがハッシュ関数h1に入力されることになる。   For example, in the first fragment record of FIG. 3, the key value is 212 and the column name is temperature. These are input to the hash function h1.

(b)ステップS42においては、登録するべきデータベース管理装置2が、自装置であるか他装置であるかを判定する。自装置である場合はデータ断片登録部15gが断片レコードを自装置のデータベース部3に登録する。またハッシュテーブル管理部15cはこのデータ登録をハッシュテーブルのエントリとしてハッシュテーブル記憶部18に追記する。ハッシュテーブルにおけるエントリの追加場所については、ハッシュ関数h1から得られるもう一つの結果であるレコードのキー値のハッシュ値を用いて決定される。 (B) In step S42, it is determined whether the database management device 2 to be registered is its own device or another device. In the case of the own device, the data fragment registration unit 15g registers the fragment record in the database unit 3 of the own device. Also, the hash table management unit 15c adds this data registration to the hash table storage unit 18 as a hash table entry. The location where the entry is added in the hash table is determined using the hash value of the key value of the record, which is another result obtained from the hash function h1.

(c)他装置である場合は、登録要求があった断片レコードを指定された他装置に送信し、他装置のデータベース部3に登録するよう依頼する。 (C) In the case of another device, the fragment record requested for registration is transmitted to the designated other device, and a request is made to register it in the database unit 3 of the other device.

(データベース管理装置の問い合わせ処理)
次にクライアント端末4の応用プログラムより問い合わせを受けたデータベース管理装置2が、問い合わせを処理する際の動作について図9のフローチャートを参照して説明する。
(Inquiry processing of database management device)
Next, the operation when the database management apparatus 2 that receives the inquiry from the application program of the client terminal 4 processes the inquiry will be described with reference to the flowchart of FIG.

(a)ステップS51においては、受信した問い合わせを解析し、問い合わせのパース木を作成する。 (A) In step S51, the received inquiry is analyzed and a parse tree of the inquiry is created.

(b)ステップS52においては、問い合わせのWHERE句を処理するサブルーチンを実行する。 (B) In step S52, a subroutine for processing the WHERE clause of the inquiry is executed.

(c)ステップS53においては、SELECT句を処理するサブルーチンを実行する。 (C) In step S53, a subroutine for processing the SELECT phrase is executed.

(データベース管理装置のWHERE句処理)
次にステップS52のWHERE句を処理するサブルーチンについて図10のフローチャートを参照して説明する。
(WHERE phrase processing of database management device)
Next, a subroutine for processing the WHERE phrase in step S52 will be described with reference to the flowchart of FIG.

(a)ステップS61においては、プラン生成部15lがWHERE句を実行するプランを作成する。実行プランでは、WHERE句をAND/OR/括弧により分割された最小の条件式の処理を並列若しくは直列に組み合わせた実行プランを作成する。例えば、a=5 AND b>3 AND c=10というWHERE句の場合、最小の条件式は、a=5、b>3、c=10である。 (A) In step S61, the plan generation unit 151 creates a plan for executing the WHERE clause. In the execution plan, an execution plan is created by combining the processing of the minimum conditional expression obtained by dividing the WHERE clause by AND / OR / parentheses in parallel or in series. For example, in the case of a WHERE clause of a = 5 AND b> 3 AND c = 10, the minimum conditional expressions are a = 5, b> 3, and c = 10.

この例では可能な実行プランは、図11(a)に示す完全に直列なプラン1、図11(b)に示す一つの条件式だけを並列に実行するプラン2、図11(c9に示す2つの条件を並列に実行するプラン3である。   In this example, possible execution plans are a completely serial plan 1 shown in FIG. 11 (a), a plan 2 that executes only one conditional expression shown in FIG. 11 (b) in parallel, and a plan 2 shown in FIG. 11 (c9). This is plan 3 for executing two conditions in parallel.

条件式が3つあるためプラン2は3種類あるが、図11(b)ではb>3だけを並列に実行するプランを記述している。条件式が3以上ある場合は、平行に実行可能な条件式を3つ以上にするプランがある。一般的に知られている分散問い合わせの最適化技術を利用して、最も高速に処理できる実行プランを選択し、そのプランを実行する。   Since there are three conditional expressions, there are three types of plan 2, but FIG. 11B describes a plan for executing only b> 3 in parallel. When there are three or more conditional expressions, there is a plan that sets three or more conditional expressions that can be executed in parallel. Using a generally known distributed query optimization technique, an execution plan that can be processed at the highest speed is selected and the plan is executed.

(b)ステップS62においては、第1部分検索部15hおよび第2部分検索部15iによりWHERE句内の条件式処理が行われる。詳細は次項にて説明する。 (B) In step S62, the conditional expression processing in the WHERE phrase is performed by the first partial search unit 15h and the second partial search unit 15i. Details will be explained in the next section.

(データベース管理装置のWHERE句内の条件式処理)
次に第1部分検索部15hおよび第2部分検索部15iによる条件式の処理方法について図12のフローチャートを参照して説明する。
(Conditional expression processing in the WHERE clause of the database management device)
Next, a conditional expression processing method performed by the first partial search unit 15h and the second partial search unit 15i will be described with reference to the flowchart of FIG.

(a)先ずステップS71において、WHERE句にキー値が指定されていない場合は、第1部分検索部15hを用いて検索対象となる断片レコードが登録されているデータベース管理装置2を判定する。またWHERE句にキー値が指定されている場合は、第2部分検索部15iを用いて検索対象となる断片レコードが登録されているデータベース管理装置2を判定する。 (A) First, in step S71, when the key value is not specified in the WHERE clause, the database management device 2 in which the fragment record to be searched is registered using the first partial search unit 15h. If a key value is specified in the WHERE clause, the second partial search unit 15i is used to determine the database management device 2 in which the fragment record to be searched is registered.

(b)ステップS72においては、特定されたデータベース管理装置2が自装置他装置かを判定し、自装置であればステップS73において後述する条件式の処理を行う。 (B) In step S72, it is determined whether the identified database management device 2 is the self device or another device. If it is the self device, the processing of the conditional expression described later is performed in step S73.

(c)他装置と判定されるとステップS74にて特定された他装置(データベース管理装置2)に条件式を送信し、条件式結果値を送信するように依頼する。ステップS75では他装置より条件式結果値を受信する。 (C) If it is determined that the device is another device, the conditional expression is transmitted to the other device (database management device 2) identified in step S74, and a request is made to transmit the conditional expression result value. In step S75, a conditional expression result value is received from another device.

条件式の処理について、プラン毎に説明すると、プラン1では、最初にa=5を処理して条件を満たす断片レコード群を特定する。これは後述するWHERE句中の条件式の処理において、分散関数h2にカラム名aを入力することで、その結果としてカラム名aのデータを管理する1つ以上のデータベース管理装置2を特定する。そして特定したデータベース管理装置2毎にa=2を処理して、結果として断片レコード群を得る。   The processing of the conditional expression will be described for each plan. In the plan 1, first, a = 5 is processed to specify a fragment record group that satisfies the condition. In the processing of the conditional expression in the WHERE clause described later, the column name a is input to the distribution function h2, and as a result, one or more database management devices 2 that manage the data of the column name a are specified. Then, a = 2 is processed for each identified database management apparatus 2, and a fragment record group is obtained as a result.

次に、個々の断片レコード毎にb>3を処理する。後述するWHERE句中の条件式の処理において、ハッシュ関数h1にキー値とカラム名bを入力することで、該当レコードのbのカラム断片を格納する1つ以上のデータベース管理装置2を特定する。そして特定したデータベース管理装置2毎にb>3を処理して、結果として断片レコード群を得る。   Next, b> 3 is processed for each fragment record. In the processing of the conditional expression in the WHERE clause described later, one or more database management apparatuses 2 that store the column fragments of b of the corresponding record are specified by inputting the key value and the column name b to the hash function h1. Then, b> 3 is processed for each specified database management apparatus 2, and a fragment record group is obtained as a result.

最後に、個々の断片レコード毎にc=10を処理する。これは後述するWHERE句中の条件式の処理において、ハッシュ関数h1にキー値とカラム名cを入力することで、該当レコードのcカラム断片を格納する1つ以上のデータベース管理装置2を特定する。そして特定したデータベース管理装置2毎にc=10を処理して、結果として断片レコード群を得る。   Finally, c = 10 is processed for each fragment record. This is to specify one or more database management devices 2 that store the c column fragment of the corresponding record by inputting the key value and the column name c to the hash function h1 in the processing of the conditional expression in the WHERE clause described later. . Then, c = 10 is processed for each specified database management apparatus 2, and a fragment record group is obtained as a result.

プラン2では、a=5の処理とb>3の処理を平行に実行する。次に、a=5の結果得られた断片レコード毎にc=10を処理する。最後に、b>3の結果得られる断片レコード群とc=10を処理して得られた断片レコードの積集合を演算する。   In plan 2, the process of a = 5 and the process of b> 3 are executed in parallel. Next, c = 10 is processed for each fragment record obtained as a result of a = 5. Finally, a product set of the fragment record group obtained as a result of b> 3 and the fragment record obtained by processing c = 10 is calculated.

プラン3では、全ての条件を平行に実行し、得られた断片レコード群の積集合を演算する。   In plan 3, all the conditions are executed in parallel, and the product set of the obtained fragment record groups is calculated.

(データベース管理装置のSELECT句処理)
次にステップS53にて検索結果構成部15jがSELECT句を処理するサブルーチンについて図13のフローチャートを参照して説明する。
(SELECT phrase processing of database management device)
Next, a subroutine in which the search result configuration unit 15j processes the SELECT phrase in step S53 will be described with reference to the flowchart of FIG.

(a)先ずステップS81において、検索結果構成部15jがWHERE句で算出された断片レコード毎にハッシュ関数h1を用いて、該当キー値とSELECT句で指定されたカラム名を入力し、該当レコードの指定されたカラム断片を格納するデータベース管理装置を1つ以上特定する。 (A) First, in step S81, the search result configuration unit 15j uses the hash function h1 for each fragment record calculated by the WHERE clause, and inputs the corresponding key value and the column name specified by the SELECT clause. One or more database management devices that store the specified column fragment are identified.

(b)ステップS82においては、特定されたデータベース管理装置2が自装置他装置かを判定し、自装置であればステップS83においてハッシュテーブルから、検索対象の断片レコードを特定し、カラム値を取得する。 (B) In step S82, it is determined whether the specified database management device 2 is its own device or other device. If it is the own device, the fragment record to be searched is specified from the hash table in step S83, and the column value is acquired. To do.

(c)他装置と判定されるとステップS84にて特定された他装置(データベース管理装置2)にハッシュテーブルから、検索対象の断片レコードを特定し、カラム値を取得するよう依頼する。ステップS85では他装置よりカラム値を受信する。最後にレコード統合部15kがデータベース部3に格納される断片レコードからレコードを復元して、問い合わせ処理を実行する。 (C) If it is determined as another device, the other device (database management device 2) identified in step S84 is requested to identify the fragment record to be searched from the hash table and acquire the column value. In step S85, a column value is received from another device. Finally, the record integration unit 15k restores the record from the fragment record stored in the database unit 3, and executes the inquiry process.

このため通常の問い合わせ処理を可能にしながら、連続領域にデータを追記でき、登録処理は高速に行われる。   Therefore, it is possible to add data to the continuous area while enabling normal inquiry processing, and the registration processing is performed at high speed.

(実施例)
次に上記の分散データベース管理システム100の動作の実施例について図14を参照して説明する。図14はサプライチェーンマネージメントにおける応用例であり、クライアント端末4が応用プログラムにて「物品,212の運搬(流通)経路において、室温30度以上であった区間(IDリーダ番号)を調べたい」といった問い合わせを実行している。これはSQLで、「SELECT
IDリーダ番号 FROM 流通物品 WHERE RFID=212 AND 温度>30」と表記される。
(Example)
Next, an example of the operation of the distributed database management system 100 will be described with reference to FIG. FIG. 14 shows an application example in supply chain management. The client terminal 4 uses an application program to “examine the section (ID reader number) where room temperature is 30 ° C. or higher in the transportation route of goods 212”. Executing a query. This is SQL, “SELECT
ID reader number FROM distribution goods WHERE RFID = 212 AND temperature> 30 ”.

この問い合わせがデータベース管理装置2にて実行されるとすると、まずこのSQLをパースに問い合わせ木に変換する。次にWHERE句の処理を行う。この例では、温度>30の条件式を処理するため、キー値が212、カラム名が温度である断片レコードを格納するデータベース管理装置2をハッシュ関数h1を用いて特定し、結果として4を得る。   If this inquiry is executed by the database management apparatus 2, first, the SQL is converted into an inquiry tree by parsing. Next, the WHERE clause is processed. In this example, in order to process the conditional expression of temperature> 30, the database management device 2 storing the fragment record whose key value is 212 and the column name is temperature is specified using the hash function h1, and 4 is obtained as a result. .

そして4で指定されるデータベース管理装置2に対して、温度>30の条件式を送信し、条件を満たす断片レコード群(キー値が212)を特定し返却してもらう。   Then, a conditional expression of temperature> 30 is transmitted to the database management apparatus 2 specified in 4 to identify and return a fragment record group (key value is 212) that satisfies the condition.

最後にSELECT句の処理を行う。キー値が212、カラム名がIDリーダ番号ある断片レコードを格納するデータベース管理装置2をハッシュ関数 h1を用いて特定し、結果として2を得る。そして2で指定されるデータベース管理装置2に対して、キー値が212に該当する断片レコードを特定し、カラム値を返却してもらう。   Finally, the SELECT phrase is processed. The database management device 2 that stores the fragment record having the key value 212 and the column name ID reader number is specified using the hash function h1, and 2 is obtained as a result. Then, the database management apparatus 2 specified in 2 identifies the fragment record corresponding to the key value 212, and returns the column value.

このように、本発明によると、断片レコードの登録処理が遅いという問題とディスク上の記憶領域に空きが生じてしまうという問題を解決することができる。   As described above, according to the present invention, it is possible to solve the problem that the registration process of the fragment record is slow and the problem that the storage area on the disk is vacant.

分散するデータベース管理装置数の増加に従って大域サーバが性能上のボトルネックになってしまうという問題を解決することができる。   The problem that the global server becomes a performance bottleneck as the number of distributed database management apparatuses increases can be solved.

データの登録・問い合わせ処理において格納するデータ・アクセスするデータがどのデータベース管理装置にあるかを高速に判断して、データの登録・問い合わせ処理を高速に実行することができる。   Data registration / inquiry processing can be performed at high speed by determining which database management device has data to be stored / accessed data in data registration / inquiry processing at high speed.

本実施形態の実施の形態に係る分散データベース管理システムの構成を示す図である。It is a figure which shows the structure of the distributed database management system which concerns on embodiment of this embodiment. 本実施形態の実施の形態に係るデータベース管理装置の構成を示す図である。It is a figure which shows the structure of the database management apparatus which concerns on embodiment of this embodiment. データベース部のデータの内部構成を示す図である。It is a figure which shows the internal structure of the data of a database part. 大域サーバ1の構成を示す図である。2 is a diagram showing a configuration of a global server 1. FIG. データベース管理装置2の初期化処理を示すフローチャートである。4 is a flowchart showing an initialization process of the database management device 2. 大域サーバ1の情報収集処理を示すフローチャートである。3 is a flowchart showing information collection processing of the global server 1. 大域サーバ1のアクセス権発行処理を示すフローチャートである。4 is a flowchart showing access right issue processing of the global server 1. データベース管理装置2のデータ登録処理を示すフローチャートである。4 is a flowchart showing a data registration process of the database management device 2. データベース管理装置2の問い合わせ処理を示すフローチャートである。4 is a flowchart showing an inquiry process of the database management device 2. データベース管理装置2のWHERE句処理を示すフローチャートである。10 is a flowchart showing a WHERE phrase process of the database management device 2. 各プランの条件式を示す図である。It is a figure which shows the conditional expression of each plan. データベース管理装置2のWHERE句内の条件式処理を示すフローチャートである。It is a flowchart which shows the conditional expression process in the WHERE clause of the database management apparatus 2. データベース管理装置2のSELECT句処理を示すフローチャートである。It is a flowchart which shows the SELECT phrase process of the database management apparatus 2. 本発明の実施の形態の実施例を示す図である。It is a figure which shows the Example of embodiment of this invention.

符号の説明Explanation of symbols

1…大域サーバ
2…データベース管理装置
3…データベース部
3a…統合レコード
4…クライアント端末
5…分散データベース管理装置群
11…入力装置
12…出力装置
13…通信制御装置
14…通信インタフェース
15…CPU
15a…データ登録処理部
15b…検索処理部
15c…ハッシュテーブル管理部
15d…関数管理部
15e…ハッシュ関数演算部
15f…分散関数演算部
15g…データ断片登録部
15h…第1部分検索部
15i…第2部分検索部
15j…検索結果構成部
15k…レコード統合部
15l…プラン生成部
16…主記憶装置
17…主記憶装置
18…ハッシュテーブル記憶部
19…関数記憶部
20…キャッシュ部
21…入力装置
22…出力装置
23…通信制御装置
24…通信インタフェース
25…CPU
25a…負荷情報収集部
25b…アクセス権管理部
25c…統計処理部
25d…アクセス権算出部
26…主記憶装置
27…負荷情報記憶部
28…アクセス権情報記憶部
100…分散データベース管理システム
DESCRIPTION OF SYMBOLS 1 ... Global server 2 ... Database management apparatus 3 ... Database part 3a ... Integrated record 4 ... Client terminal 5 ... Distributed database management apparatus group 11 ... Input apparatus 12 ... Output apparatus 13 ... Communication control apparatus 14 ... Communication interface 15 ... CPU
15a ... Data registration processing unit 15b ... Search processing unit 15c ... Hash table management unit 15d ... Function management unit 15e ... Hash function calculation unit 15f ... Distributed function calculation unit 15g ... Data fragment registration unit 15h ... First partial search unit 15i ... First 2-part search unit 15j ... search result configuration unit 15k ... record integration unit 15l ... plan generation unit 16 ... main storage device 17 ... main storage device 18 ... hash table storage unit 19 ... function storage unit 20 ... cache unit 21 ... input device 22 ... Output device 23 ... Communication control device 24 ... Communication interface 25 ... CPU
25a ... Load information collection unit 25b ... Access right management unit 25c ... Statistics processing unit 25d ... Access right calculation unit 26 ... Main storage device 27 ... Load information storage unit 28 ... Access right information storage unit 100 ... Distributed database management system

Claims (6)

水平垂直分散を組みあわせてデータを分散配置するデータベース装置であって、
前記データを指定するキー値およびカラム名の入力により、前記キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDと前記データの一部である断片レコードIDを組み合わせたハッシュ値を返却するハッシュ関数演算部と、
前記カラム名の入力により、前記カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを返却する分散関数演算部、
とを備えるデータベース管理装置。
A database device that distributes and arranges data by combining horizontal and vertical distribution,
By inputting a key value and a column name for designating the data, a database management device ID in which data specified by the key value and the column name is stored or to be stored, and a fragment record ID which is a part of the data are A hash function computing unit that returns a combined hash value;
A dispersion function calculation unit that returns one or more database management device IDs in which data specified by the column name is stored by inputting the column name;
A database management device comprising:
前記断片レコードをデータとして登録するデータ断片登録部と、
登録した断片レコードを追記方式で格納するデータベース部と、
前記データベース部に格納された断片レコードを統合してレコードを構成するレコード統合部
とを更に備える請求項1に記載のデータベース管理装置。
A data fragment registration unit for registering the fragment record as data;
A database part that stores the registered fragment records in the appending method;
The database management apparatus according to claim 1, further comprising: a record integration unit configured to integrate the fragment records stored in the database unit to form a record.
水平垂直分散を組みあわせ、データを分散配置するための分散データベース管理システムであって、
キー値およびカラム名の入力により、前記キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDと前記データの一部である断片レコードIDを組み合わせたハッシュ値を返却するハッシュ関数演算部と、前記カラム名の入力により、前記カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを返却する分散関数演算部とを有する複数のデータベース装置と、
前記複数のデータベース管理装置の負荷情報を収集する負荷情報収集部と、
前記負荷情報収集部内の負荷情報を統計的にデータ処理することで、最も負荷の低いデータベース管理装置とそのデータベース管理装置へのアクセス期間を含むアクセス権を決定するアクセス権管理部とを有する大域サーバとを備え、
前記複数のデータベース装置へのアクセスは前記大域サーバが決定する前記アクセス権に基づいて許可される
ことを特徴とする分散データベース管理システム。
A distributed database management system for distributing data by combining horizontal and vertical distribution,
By inputting the key value and the column name, a hash value obtained by combining the data specified by the key value and the column name or the database management device ID to be stored and the fragment record ID which is a part of the data A plurality of database devices having a hash function operation unit to be returned and a distributed function operation unit for returning one or more database management device IDs in which data specified by the column name is stored by inputting the column name; ,
A load information collection unit that collects load information of the plurality of database management devices;
A global server having a database management device having the lowest load and an access right management unit that determines an access right including an access period to the database management device by statistically processing the load information in the load information collection unit And
Access to the plurality of database devices is permitted based on the access right determined by the global server.
前記複数のデータベース管理装置のうち前記断片レコードを登録すべきデータベース管理装置に前記断片レコードを登録する際には前記断片レコードが保持する前記キー値およびカラム名を入力し、前記ハッシュ関数を用いてデータを格納するべきデータベース管理装置のIDを特定し、特定された前記データベース管理装置に対して前記断片データを送信し登録するデータ登録処理部と、
前記複数のデータベース管理装置内にて前記断片レコードを検索する際には前記検索の為の問い合わせ文に記述された1つ以上のカラム名を特定し、前記分散関数を用いて、前記検索に必要となるデータを格納している少なくとも1つ以上のデータベース管理装置IDを特定し、特定された前記少なくとも1つ以上のデータベース管理装置が実行可能な前記問い合わせ文の一部を送信し、検索を実行する第1部分検索部と、
前記検索を実行した中間結果より特定されたデータのキー値およびカラム名を基に、前記ハッシュ関数を用いて、検索に必要となるデータを格納しているデータベース管理装置のIDを特定し、特定された前記データベース管理装置が実行可能な部分問い合わせ分を送信し、検索を実行する第2部分検索部
とを更に備えることを特徴とする請求項3に記載の分散データベース管理システム。
When registering the fragment record in the database management device to which the fragment record is to be registered among the plurality of database management devices, the key value and the column name held by the fragment record are input, and the hash function is used. A data registration processing unit that identifies an ID of a database management device to store data, and transmits and registers the fragment data to the identified database management device;
When searching the fragment records in the plurality of database management devices, specify one or more column names described in the query statement for the search, and use the distribution function to search for the fragment records Identify at least one database management device ID storing data to be transmitted, send a part of the query statement that can be executed by the identified at least one database management device, and execute a search A first partial search unit to perform,
Based on the key value and column name of the data specified from the intermediate result of executing the search, the hash function is used to identify and specify the ID of the database management device that stores the data required for the search The distributed database management system according to claim 3, further comprising: a second partial search unit that transmits a partial query that can be executed by the database management apparatus, and executes a search.
水平垂直分散を組みあわせてデータを分散配置するための複数のデータベース管理装置を統合管理する分散データベース管理方法であって、
前記複数のデータベース管理装置の負荷情報を負荷情報収集部が収集するステップと、
前記負荷情報収集部内の負荷情報を統計的にデータ処理することで、最も負荷の低いデータベース管理装置とそのデータベース管理装置へのアクセス期間を含むアクセス権をアクセス権管理部が決定するステップと、
前記複数のデータベース装置へのアクセスを前記アクセス権に基づいて許可するステップと、
前記データを分散保持する複数のデータベース管理装置にアクセスが行われ、キー値およびカラム名が入力されると、前記キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDと前記データの一部である断片レコードIDを組み合わせたハッシュ値をハッシュ関数演算部が返却するステップと、
前記カラム名の入力により、前記カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを分散関数演算部が返却するステップ
とを備えることを特徴とする分散データベース管理方法。
A distributed database management method for integrated management of a plurality of database management devices for distributing and arranging data by combining horizontal and vertical distributions,
A load information collection unit collecting load information of the plurality of database management devices;
By statistically processing the load information in the load information collection unit, the access right management unit determines an access right including a database management device having the lowest load and an access period to the database management device;
Allowing access to the plurality of database devices based on the access rights;
When a plurality of database management devices that distribute and hold the data are accessed and a key value and a column name are input, data specified by the key value and the column name is stored or database management to be stored A step in which the hash function calculation unit returns a hash value obtained by combining the device ID and the fragment record ID that is a part of the data;
A distributed database management method comprising: a distributed function computing unit returning one or more database management device IDs in which data specified by the column name is stored by inputting the column name.
水平垂直分散を組みあわせてデータを分散配置するためのコンピュータにおいて、
前記データを分散配置するための複数のデータベース管理装置の負荷情報を負荷情報収集部が収集する命令と、
前記負荷情報収集部内の負荷情報を統計的にデータ処理することで、最も負荷の低いデータベース管理装置とそのデータベース管理装置へのアクセス期間を含むアクセス権をアクセス権管理部が決定する命令と、
前記複数のデータベース装置へのアクセスを前記アクセス権に基づいて許可する命令と、
前記データを分散保持する複数のデータベース管理装置にアクセスが行われ、キー値およびカラム名が入力されると、前記キー値およびカラム名により特定されるデータが格納されている若しくは格納すべきデータベース管理装置IDと前記データの一部である断片レコードIDを組み合わせたハッシュ値をハッシュ関数演算部が返却する命令と、
前記カラム名の入力により、前記カラム名が指定するデータが格納されている1つ以上のデータベース管理装置IDを分散関数演算部が返却する命令
とを実行させることを特徴とする分散データベース管理プログラム。
In a computer that distributes data by combining horizontal and vertical distribution,
An instruction for a load information collection unit to collect load information of a plurality of database management devices for distributing and arranging the data;
By statistically processing the load information in the load information collection unit, an instruction for the access right management unit to determine an access right including a database management device having the lowest load and an access period to the database management device;
An instruction for permitting access to the plurality of database devices based on the access right;
When a plurality of database management devices that distribute and hold the data are accessed and a key value and a column name are input, data specified by the key value and the column name is stored or database management to be stored An instruction for the hash function computing unit to return a hash value obtained by combining the device ID and the fragment record ID that is a part of the data;
A distributed database management program that, upon input of the column name, causes a distributed function calculation unit to execute one or more database management device IDs in which data specified by the column name is stored.
JP2005177005A 2005-06-16 2005-06-16 Database management apparatus, database management method, and database management program Active JP4573710B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005177005A JP4573710B2 (en) 2005-06-16 2005-06-16 Database management apparatus, database management method, and database management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005177005A JP4573710B2 (en) 2005-06-16 2005-06-16 Database management apparatus, database management method, and database management program

Publications (2)

Publication Number Publication Date
JP2006350741A true JP2006350741A (en) 2006-12-28
JP4573710B2 JP4573710B2 (en) 2010-11-04

Family

ID=37646503

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005177005A Active JP4573710B2 (en) 2005-06-16 2005-06-16 Database management apparatus, database management method, and database management program

Country Status (1)

Country Link
JP (1) JP4573710B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010102654A (en) * 2008-10-27 2010-05-06 Internatl Business Mach Corp <Ibm> Control apparatus, control program and control method for managing data
WO2012115194A1 (en) 2011-02-25 2012-08-30 ディジタル・ワークス株式会社 Distributed data base system and data structure for distributed data base
WO2014030235A1 (en) 2012-08-23 2014-02-27 ディジタル・ワークス株式会社 Distributed database system
JP2015022388A (en) * 2013-07-17 2015-02-02 株式会社東芝 Database system

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05135113A (en) * 1991-11-13 1993-06-01 Nec Corp Duplicate data control system
JPH05298366A (en) * 1992-04-22 1993-11-12 Fujitsu Ltd Hushing processing of record key
JPH08235218A (en) * 1995-02-24 1996-09-13 Nec Corp Division processing system for inquiry in object-oriented database management systm
JP2001175536A (en) * 1999-10-31 2001-06-29 Emerging Architectures Llc Method and device for calculating page table index from virtual address
JP2001512260A (en) * 1997-07-30 2001-08-21 ヴィスト・コーポレーション System and method for globally and securely accessing unified information in a computer network
JP2002373103A (en) * 2001-06-14 2002-12-26 Hitachi Ltd Computer system
JP2003006028A (en) * 2001-06-19 2003-01-10 Jeol Ltd Electronic document handling system
JP2004530213A (en) * 2001-05-15 2004-09-30 インターナショナル・ビジネス・マシーンズ・コーポレーション Method for managing distributed savepoints across multiple DBMSs in a distributed transaction

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05135113A (en) * 1991-11-13 1993-06-01 Nec Corp Duplicate data control system
JPH05298366A (en) * 1992-04-22 1993-11-12 Fujitsu Ltd Hushing processing of record key
JPH08235218A (en) * 1995-02-24 1996-09-13 Nec Corp Division processing system for inquiry in object-oriented database management systm
JP2001512260A (en) * 1997-07-30 2001-08-21 ヴィスト・コーポレーション System and method for globally and securely accessing unified information in a computer network
JP2001175536A (en) * 1999-10-31 2001-06-29 Emerging Architectures Llc Method and device for calculating page table index from virtual address
JP2004530213A (en) * 2001-05-15 2004-09-30 インターナショナル・ビジネス・マシーンズ・コーポレーション Method for managing distributed savepoints across multiple DBMSs in a distributed transaction
JP2002373103A (en) * 2001-06-14 2002-12-26 Hitachi Ltd Computer system
JP2003006028A (en) * 2001-06-19 2003-01-10 Jeol Ltd Electronic document handling system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010102654A (en) * 2008-10-27 2010-05-06 Internatl Business Mach Corp <Ibm> Control apparatus, control program and control method for managing data
US8589633B2 (en) 2008-10-27 2013-11-19 International Business Machines Corporation Control apparatus
WO2012115194A1 (en) 2011-02-25 2012-08-30 ディジタル・ワークス株式会社 Distributed data base system and data structure for distributed data base
WO2014030235A1 (en) 2012-08-23 2014-02-27 ディジタル・ワークス株式会社 Distributed database system
JP2015022388A (en) * 2013-07-17 2015-02-02 株式会社東芝 Database system

Also Published As

Publication number Publication date
JP4573710B2 (en) 2010-11-04

Similar Documents

Publication Publication Date Title
US7015911B2 (en) Computer-implemented system and method for report generation
KR101775433B1 (en) Sysyem and method for distributed database query engines
EP1639503B1 (en) A data processing method and system
CN100478944C (en) Automatic task generator method and system
JP4777972B2 (en) Non-shared parallel database system and database management method
JP3851493B2 (en) Database search method, database search system, and computer-readable recording medium recording database search program
US7743071B2 (en) Efficient data handling representations
US20130166552A1 (en) Systems and methods for merging source records in accordance with survivorship rules
US20100293135A1 (en) Highconcurrency query operator and method
US9785725B2 (en) Method and system for visualizing relational data as RDF graphs with interactive response time
JP2015099586A (en) System, apparatus, program and method for data aggregation
CN110609852B (en) Streaming data processing method and device, computer equipment and storage medium
US20140280024A1 (en) Joining large database tables
US20180285475A1 (en) Flexible record definitions for semi-structured data in a relational database system
EP2869220B1 (en) Networked database system
US8880485B2 (en) Systems and methods to facilitate multi-threaded data retrieval
JP2010533915A (en) SECURITY SYSTEM USING DATA MASKING AND ITS DATA SECURITY METHOD
JP4573710B2 (en) Database management apparatus, database management method, and database management program
US8756246B2 (en) Method and system for caching lexical mappings for RDF data
US20060026143A1 (en) System for querying databases
US8156091B2 (en) Method to retain an inherent and indelible item value in a relational database management system
Yuan et al. VDB-MR: MapReduce-based distributed data integration using virtual database
Mozaffari et al. CONST: Continuous online NoSQL schema tuning
CN109739874A (en) Method, apparatus, computer equipment and the storage medium of data content are provided
WO2024067314A1 (en) Method for constructing license information base and electronic device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070808

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100518

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100707

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100817

R150 Certificate of patent or registration of utility model

Ref document number: 4573710

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130827

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350