JP2015179353A - Data processing apparatus - Google Patents

Data processing apparatus Download PDF

Info

Publication number
JP2015179353A
JP2015179353A JP2014055852A JP2014055852A JP2015179353A JP 2015179353 A JP2015179353 A JP 2015179353A JP 2014055852 A JP2014055852 A JP 2014055852A JP 2014055852 A JP2014055852 A JP 2014055852A JP 2015179353 A JP2015179353 A JP 2015179353A
Authority
JP
Japan
Prior art keywords
data
column
column format
format
processing device
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
JP2014055852A
Other languages
Japanese (ja)
Other versions
JP6295754B2 (en
Inventor
俊之 浅利
Toshiyuki Asari
俊之 浅利
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2014055852A priority Critical patent/JP6295754B2/en
Publication of JP2015179353A publication Critical patent/JP2015179353A/en
Application granted granted Critical
Publication of JP6295754B2 publication Critical patent/JP6295754B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To reduce the time required for updating a database.SOLUTION: A data processing apparatus 100 includes: a format conversion section 101 for forming column-format data by decomposing tabular data into components by column; and a data operation section 102 for operating the column-format data. The format conversion section 101 forms a free area between data constituting the column-format data, in converting the tabular data into the column-format data, to form the column-format data. The data operation section 102 inserts other data in the free area formed between the data, in inserting the other data between the data constituting the column-format data.

Description

本発明は、データ処理装置にかかり、特に、データベースを処理するデータ処理装置に関する。   The present invention relates to a data processing apparatus, and more particularly to a data processing apparatus that processes a database.

データベース管理システム(DBMS : database management system)の内部構造として、複数のデータを表形式で表し、その複数の表に互いに関連付けを持たせて運用するリレーショナルデータベース(RDB : relational database)が広く用いられている。RDBは、トランザクションなどの更新処理は得意であるが、1つ1つの行(レコード)をデータの参照や操作の単位としているため、列単位の集計や検索が遅いという欠点がある。   As a database management system (DBMS) internal structure, a relational database (RDB) is widely used in which multiple data are represented in tabular form and associated with each other. Yes. RDB is good at update processing such as transactions, but since each row (record) is used as a unit of data reference and operation, there is a disadvantage that aggregation and search in column units are slow.

この欠点を克服するために、表形式のデータを、列ごとにそのデータの並びを加工し、重複排除して保持することによって、高速な集計や行うことを可能としたFAST(Filter Array Structure)構造というデータ構造が考案されている。図1は、図1(A)に示す1つの表形式データを、図1(B)に示すFAST構造データに変換した一例を表している。図1(B)に示すように、FAST構造は、表形式のデータを、行番号を表す「順序集合」、ユニークでソートされたデータ群である「値リスト」(以後、「VL」と呼ぶ。)、列にどのデータが入っているかを示す「値番号」(以後、「VNo」と呼ぶ。)の3つの成分に分解して表現する。このFAST構造のように、データをレコード単位ではなく、列単位で考え、列の処理を効率的に行えるよう設計された内部構造を持つDBMSをカラムストアDBと呼ぶ。   To overcome this shortcoming, FAST (Filter Array Structure) enables tabulation and high-speed aggregation and processing by processing the arrangement of the data for each column and keeping it deduplicated. A data structure called structure has been devised. FIG. 1 shows an example in which one tabular data shown in FIG. 1 (A) is converted into FAST structure data shown in FIG. 1 (B). As shown in FIG. 1B, in the FAST structure, tabular data is referred to as “order set” representing row numbers, “value list” (hereinafter referred to as “VL”) which is a unique and sorted data group. ), And is expressed by being decomposed into three components of “value number” (hereinafter referred to as “VNo”) indicating which data is included in the column. A DBMS having an internal structure designed so that column processing can be efficiently performed by considering data not in record units but in column units like this FAST structure is called a column store DB.

FAST構造では、データがメモリに乗っている場合、VNo、VLのデータが配列で配置されるため、データへのアドレス計算にコストがかからないことと、データが配列で連続に配置されていることで、キャッシュヒット率が高くなることにより、集計や検索を高速に行うことが可能となっている。   In the FAST structure, when data is in memory, VNo and VL data are arranged in an array, so there is no cost for calculating the address to the data, and the data is arranged in an array. As the cache hit rate increases, it is possible to perform aggregation and search at high speed.

特開2002−108662号公報JP 2002-108662 A

しかしながら、上述したFAST構造では、新規データの挿入などの更新処理に時間がかかってしまう、という問題が生じる。具体的に、まず、FAST構造において、VLは、重複データを排除し、かつソートされているデータを配列に格納している。ところが、VLに無い新規データの挿入処理が行う場合、VL配列のデータの配置換えが必要になり、かつ、それに伴い、VLのデータの格納先を指し示すVNoの値も更新し直す「VNo、VLの作り変え」処理を行う必要がある。   However, the above-described FAST structure has a problem that it takes time to perform update processing such as insertion of new data. Specifically, first, in the FAST structure, VL eliminates duplicate data and stores sorted data in an array. However, when new data that does not exist in the VL is inserted, it is necessary to rearrange the data in the VL array, and the VNo value indicating the storage destination of the VL data is also updated accordingly. Needs to be processed.

VNo、VLの作り変え処理の一例を、図2に示す。ここでは、図2(A)に示すように、FAST構造において「生年月日」列に新規データ「1997/07/22」を挿入する例を考える。「1997/07/22」は、VLのデータのソート性を保つために、図2(B)の斜線で示すように、VLの配列番号3に格納されることになる。ところが、その際に、図2(A)の矢印A2に示すように、これまで配列番号3から8に入っていたデータは、それぞれ一つ後ろに移動することとなる(VLの作り変え)。次に、このデータ移動に伴い、それまでVLの配列番号3から8のデータの格納先を示していたVNoの値を、図2(B)に示すように1ずつ増やす必要がある(VNoの作り変え)。   An example of VNo and VL remodeling processing is shown in FIG. Here, consider an example in which new data “1997/07/22” is inserted into the “birth date” column in the FAST structure, as shown in FIG. “1997/07/22” is stored in the array number 3 of the VL as shown by the hatched line in FIG. 2B in order to maintain the sortability of the VL data. However, at that time, as indicated by an arrow A2 in FIG. 2A, the data that has been included in SEQ ID NOS: 3 to 8 so far is moved backward by one (remake of VL). Next, along with this data movement, it is necessary to increase the value of VNo that previously indicated the storage destination of the data of array numbers 3 to 8 of VL by 1 as shown in FIG. Remake).

上述した作り変え処理は、ある程度の時間コストがかかり、一般的にVNo、VLサイズが大きいほど時間がかかる。そのため、この時間が大きいほど、作り変え中にユーザからデータへの参照や操作の問い合わせが来た場合のTAT(Turn Around Time)が大きくなる。このように、FAST構造では、新規データの挿入などの更新処理に時間がかかってしまう、という問題が生じる。   The remodeling process described above costs a certain amount of time, and generally takes longer as the VNo and VL sizes are larger. For this reason, the longer this time, the greater the TAT (Turn Around Time) when a user makes a reference to data or an operation inquiry during remodeling. As described above, the FAST structure has a problem that it takes time to perform update processing such as insertion of new data.

ここで、本発明に関連する技術として、特許文献1に開示の技術がある。かかる技術では、新たなデータをデータベースに追加する際に、かかるデータを追加する箇所に空きがなければ、前後のデータを移動して空きを作り、その空きに新たなデータを格納する、とうものである。しかしながら、特許文献1に開示の技術であっても、データ格納時にデータベースに空きを作ると言った処理が必要となり、上述同様に更新処理に時間がかかってしまう、という問題が生じる。   Here, there is a technique disclosed in Patent Document 1 as a technique related to the present invention. In such technology, when new data is added to the database, if there is no space at the location where such data is added, the previous and next data are moved to create a space, and the new data is stored in the space. It is. However, even the technique disclosed in Patent Document 1 requires processing such as creating a vacancy in the database when storing data, and there is a problem that it takes time to perform update processing as described above.

このため、本発明の目的は、上述した課題である、データベースの更新処理に時間がかかる、という問題を解決することにある。   Therefore, an object of the present invention is to solve the above-described problem that it takes time to update the database.

本発明の一形態であるデータ処理装置は、
表形式データを列ごとの成分に分解した列形式データに変換する形式変換部と、
前記列形式データに対する操作を行うデータ操作部と、を備え、
前記形式変換部は、前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記データ操作部は、前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
という構成をとる。
A data processing apparatus according to one aspect of the present invention
A format conversion unit that converts tabular data into column format data broken down into components for each column;
A data operation unit for performing operations on the column format data,
When converting the table format data to the column format data, the format conversion unit forms a free area between the data constituting the column format data, and converts the data into the column format data.
The data operation unit inserts the other data into the empty area formed between the data when the other data is inserted between the data constituting the column format data.
The configuration is as follows.

また、本発明の他の形態であるプログラムは、
情報処理装置に、
表形式データを列ごとの成分に分解した列形式データに変換する形式変換部と、
前記列形式データに対する操作を行うデータ操作部と、
を実現させるプログラムであって、
前記形式変換部は、前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記データ操作部は、前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
という構成をとる。
Moreover, the program which is the other form of this invention is:
In the information processing device,
A format conversion unit that converts tabular data into column format data broken down into components for each column;
A data operation unit for performing operations on the column format data;
Is a program that realizes
When converting the table format data to the column format data, the format conversion unit forms a free area between the data constituting the column format data, and converts the data into the column format data.
The data operation unit inserts the other data into the empty area formed between the data when the other data is inserted between the data constituting the column format data.
The configuration is as follows.

また、本発明の他の形態であるデータ処理方法は、
表形式データを列ごとの成分に分解した列形式データに変換し、
前記列形式データに対する操作を行う、データ処理方法であって、
前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
という構成をとる。
In addition, a data processing method according to another aspect of the present invention includes:
Convert tabular data into column format data broken down into components for each column,
A data processing method for performing an operation on the column format data,
When converting the table format data into the column format data, a free space is formed between the data constituting the column format data, and the table format data is converted into the column format data.
When inserting other data between the data constituting the column format data, the other data is inserted into the empty area formed between the data,
The configuration is as follows.

本発明は、以上のように構成されることにより、データベースの更新処理にかかる時間を抑制することができる。   By configuring as described above, the present invention can suppress the time required for database update processing.

本発明に関連する技術において、表形式データをFAST構造データに変換した一例を示す図である。In the technique relevant to this invention, it is a figure which shows an example which converted tabular data into FAST structure data. 本発明に関連する技術において、FAST構造データに新規データを挿入するときの様子を示す図である。It is a figure which shows a mode when new data are inserted in FAST structure data in the technique relevant to this invention. 本発明におけるデータベース管理システムの構成を示すブロック図である。It is a block diagram which shows the structure of the database management system in this invention. 本発明におけるデータベース管理システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the database management system in this invention. 本発明におけるデータベース管理システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the database management system in this invention. 本発明におけるデータベース管理システムの動作を示すシーケンス図である。It is a sequence diagram which shows operation | movement of the database management system in this invention. 本発明におけるデータベース管理システムにて、表形式データをFAST構造データに変換した一例を示す図である。It is a figure which shows an example which converted the tabular data into FAST structure data in the database management system in this invention. 本発明に関連する技術において変換したFAST構造データと、本発明におけるデータベース管理システムにて変換したFAST構造データと、を比較した図である。It is the figure which compared the FAST structure data converted in the technique relevant to this invention, and the FAST structure data converted by the database management system in this invention. 本発明におけるデータベース管理システムにて、FAST構造データに新規データを追加するときの処理の様子を示す図である。It is a figure which shows the mode of a process when adding new data to FAST structure data in the database management system in this invention. 本発明におけるデータベース管理システムにて、FAST構造データに新規データを追加するときの処理の様子を示す図である。It is a figure which shows the mode of a process when adding new data to FAST structure data in the database management system in this invention. 本発明におけるデータベース管理システムにて、FAST構造データに新規データを追加するときの処理の様子を示す図である。It is a figure which shows the mode of a process when adding new data to FAST structure data in the database management system in this invention. 本発明におけるデータベース管理システムにて、FAST構造データの空きサイズを調整するときの様子を示す図である。It is a figure which shows a mode when adjusting the empty size of FAST structure data in the database management system in this invention. 本発明におけるデータベース管理システムにて、FAST構造データに対する新規データの挿入レベルを判定する一例を示す図である。It is a figure which shows an example which determines the insertion level of the new data with respect to FAST structure data in the database management system in this invention. 本発明の付記1におけるデータ処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the data processor in the additional remark 1 of this invention.

本発明の第1の実施形態を、図1乃至図13を参照して説明する。図1は、データベース管理システムの構成を示すブロック図である。図2乃至図6は、データベース管理システムの動作を説明するための図である。図7乃至図13は、データベース管理システムにてデータを操作する時の様子を示す図である。   A first embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a block diagram showing the configuration of the database management system. 2 to 6 are diagrams for explaining the operation of the database management system. 7 to 13 are diagrams showing a state when data is operated in the database management system.

[構成]
本発明におけるデータベース管理システム1は、演算装置と記憶装置とを備えた一般的な情報処理装置である。そして、データベース管理システム1は、図3に示すように、ユーザ2にて操作され、当該ユーザ2が操作する情報処理端末であるクライアント3が接続されている。
[Constitution]
The database management system 1 according to the present invention is a general information processing apparatus including an arithmetic device and a storage device. As shown in FIG. 3, the database management system 1 is operated by a user 2 and connected to a client 3 that is an information processing terminal operated by the user 2.

データベース管理システム1は、図3に示すように、装備された演算装置にプログラムが組み込まれることで構築された、インポート部10、データベース操作部20、空きサイズ調整部30、を備える。インポート部10は、データ変換部11を備える。データベース操作部20は、データ挿入処理部21を備えており、さらにデータ挿入部21は、データ挿入確認部22、VNo,VL作り変え部23、データ挿入部24、挿入レベル更新部25、を備えている。また、データ管理システム1は、装備された記憶装置に、取り扱うFAST構造データD1を記憶するデータベース40を備えている。   As shown in FIG. 3, the database management system 1 includes an import unit 10, a database operation unit 20, and a free size adjustment unit 30 that are constructed by incorporating a program into an equipped arithmetic device. The import unit 10 includes a data conversion unit 11. The database operation unit 20 includes a data insertion processing unit 21, and the data insertion unit 21 further includes a data insertion confirmation unit 22, a VNo / VL remodeling unit 23, a data insertion unit 24, and an insertion level update unit 25. ing. In addition, the data management system 1 includes a database 40 that stores the FAST structure data D1 to be handled in the equipped storage device.

上記インポート部10は、システム1を利用するユーザ2によってインポートされた、CSVファイルなどの表形式で表されるデータの集合である表形式データD1を受け付ける。そして、インポート部10が有するデータ変換部11(形式変換部)は、上述した図1に示すように、表形式データD1を、列ごとの成分に分解した列形式データであるFAST構造データD2に変換して、データベース40に記憶する。なお、FAST構造データD2は、上述したように、表形式のデータを、行番号を表す「順序集合」、ユニークでソートされたデータ群である「値リスト」(「VL」)、列にどのデータが入っているかを示す「値番号」(「VNo」)の3つの成分に分解して表現したものである。但し、データ変換部11は、表形式データD1をFAST構造データD2とは異なる他の列形式データに変換してもよい。   The import unit 10 accepts tabular data D1 that is a set of data represented in tabular format such as a CSV file and imported by a user 2 who uses the system 1. Then, as shown in FIG. 1 described above, the data conversion unit 11 (format conversion unit) included in the import unit 10 converts the tabular data D1 into FAST structure data D2, which is column format data obtained by decomposing the data into components for each column. Convert and store in the database 40. Note that, as described above, the FAST structure data D2 includes tabular data in “ordered sets” representing row numbers, “value lists” (“VL”) that are unique and sorted data groups, and columns. It is expressed by decomposing into three components of “value number” (“VNo”) indicating whether data is included. However, the data converter 11 may convert the tabular data D1 into other column format data different from the FAST structure data D2.

そして、データ変換部11は、図7(A)に示す表形式データD1をFAST構造データD2に変換する際に、後述する図7(B)の「NULL」に示すように、各VLに格納されるデータの間に所定容量の空き領域を挿入する。さらに、データ変換部11は、後述する図7(B)に示すように、各VLのデータの間毎に対する新規データの挿入度合いを記憶するための新たな領域である、挿入レベル配列(IL)を追加した、FAST構造データを作成して、データベースに格納する。   When the data conversion unit 11 converts the tabular data D1 shown in FIG. 7A to the FAST structure data D2, the data conversion unit 11 stores the data in each VL as shown by “NULL” in FIG. 7B described later. A free space of a predetermined capacity is inserted between the data to be processed. Furthermore, as shown in FIG. 7B, which will be described later, the data conversion unit 11 inserts an insertion level array (IL) that is a new area for storing the degree of insertion of new data for each VL data. Create FAST structure data with added and store it in the database.

また、データベース操作部20は、クライアント3から発行された問い合わせを受け付け、当該問い合わせに対して、データベース40を操作して、問い合わせの結果をクライアント3に返す。特に、データベース操作部20が有するデータ挿入処理部21(データ操作部)は、各問い合わせに応じた処理をFAST構造データD2に対して行う。また、空きサイズ調整部30(空き領域調整部)も、FAST構造データD2に対する処理を行う。   Further, the database operation unit 20 receives an inquiry issued from the client 3, operates the database 40 in response to the inquiry, and returns the inquiry result to the client 3. In particular, the data insertion processing unit 21 (data operation unit) included in the database operation unit 20 performs processing corresponding to each inquiry on the FAST structure data D2. In addition, the free size adjustment unit 30 (free space adjustment unit) also performs processing on the FAST structure data D2.

上記データ挿入処理部21は、FAST構造データに対して新規データの挿入があった際には、以下のように新規データの照入処理を行う。まず最初に、データ挿入確認部22で、挿入する範囲に空き領域が存在するか否かを確認する。空き領域がある場合には、データ挿入部24で、新規データを挿入して、挿入レベル更新部25で挿入があった範囲の挿入レベル配列「IL」を更新する。空き領域が無い場合は、VNo,VL作り変え部23でVNo, VLの作り変えを行い、併せて挿入レベル配列「IL」も作り変える。   When the new data is inserted into the FAST structure data, the data insertion processing unit 21 performs a new data entry process as follows. First, the data insertion confirmation unit 22 confirms whether there is a free area in the insertion range. If there is an empty area, the data insertion unit 24 inserts new data, and the insertion level update unit 25 updates the insertion level array “IL” in the inserted range. If there is no free area, the VNo / VL remodeling unit 23 recreates the VNo / VL and also recreates the insertion level array “IL”.

また、空きサイズ調整部30は、FAST構造データの空き領域を定期的に調整する。これに伴い、空きサイズ調整部30は、挿入レベル配列「IL」も作り変える。なお、空きサイズ調整部30は、必要に応じて上記データ挿入処理部21と協働して作動し、上述した新規データの挿入時にも、FAST構造データの空き領域を定期的に調整する。   The free size adjusting unit 30 periodically adjusts the free area of the FAST structure data. Along with this, the empty size adjustment unit 30 also recreates the insertion level array “IL”. The empty size adjusting unit 30 operates in cooperation with the data insertion processing unit 21 as necessary, and periodically adjusts the empty area of the FAST structure data even when the new data is inserted.

次に、上述したデータ管理システム1の構成の具体例とその動作を、図4乃至図13を参照して説明する。以下では、特に、<1.表形式データからFAST構造データへの変換動作>、<2.FAST構造データへの新規データの挿入動作>のうち<2−a.空き領域があるVLへの新規データの挿入動作>及び<2−b.VNo,VL作り変え時の動作>、<3.空き領域のサイズの調整動作>、に分けて説明する。   Next, a specific example of the configuration of the above-described data management system 1 and its operation will be described with reference to FIGS. In the following, in particular <1. Conversion operation from tabular data to FAST structure data>, <2. <2-a. Inserting new data into FAST structure data> Insertion of new data into VL with free area> and <2-b. Operation when remodeling VNo and VL>, <3. The operation of adjusting the size of the free area> will be described separately.

<1.表形式データからFAST構造データへの変換動作>
ここでは、図7(A)に示す表形式データである「ふりがな」の列を、FAST構造データに変換する場合を一例に挙げて説明する。
<1. Conversion from tabular data to FAST structure data>
Here, the case where the “phonetic” column, which is the tabular data shown in FIG. 7A, is converted into FAST structure data will be described as an example.

まず、本発明に関連する技術では、通常、「ふりがな」列をFAST構造に変換すると、図8(A)に示す形式となる。この例では、「VL」には、「ふりがな」列データの重複を排除し、ソートされたデータが格納されている。また、「VNo」には、各レコードの「ふりがな」列にどのデータが入っているか分かるように、「VL」のデータの格納先配列番号が格納されている。   First, in the technology related to the present invention, when the “phonetic” column is converted into the FAST structure, the format shown in FIG. In this example, “VL” stores sorted data by eliminating duplication of “phonetic” column data. Also, “VNo” stores the storage destination array number of the data “VL” so that it can be understood which data is contained in the “phonetic” column of each record.

これに対して、本発明におけるデータベース管理装置1のデータ変換部11は、「VL」を作成する際に、当該「VL」を構成する各データ間に、空き領域を入れてデータを格納する。この処理の具体例を、図4のフローチャート及び図8(B)を参照して説明する。   On the other hand, when creating the “VL”, the data conversion unit 11 of the database management apparatus 1 according to the present invention stores the data by putting an empty area between the data constituting the “VL”. A specific example of this process will be described with reference to the flowchart of FIG. 4 and FIG.

まず、図7(A)に示す表形式データでは、「ふりがな」列の重複排除したデータの数は、番号2,4の「たかはし」が重複しているため、図8(A)に示すように全部で「9」となる。ここで、空き領域の数(サイズ)「S」を「3」とした場合には、「9×(3 + 1) + 3 = 39」になり、「VL」の配列のサイズは、「39」となる。このように、「VL」の配列領域を確保する(図4のステップS1)。   First, in the tabular data shown in FIG. 7 (A), the number of data that has been de-duplicated in the “Furigana” column is duplicated with “Takahashi” of the numbers 2 and 4, and as shown in FIG. In total, “9”. Here, when the number of free areas (size) “S” is “3”, “9 × (3 + 1) + 3 = 39”, and the size of the array of “VL” is “39” " In this way, the arrangement region of “VL” is secured (step S1 in FIG. 4).

次に、図8(A)に示すようにソートされた「ふりがな」データ9個を、図8(B)に示すように、各データ間に空き領域が3個、さらに、データの両端に空き領域がそれぞれ3個入るよう、配列番号3, 7, 11, 15, 19, 23, 27, 31, 35に順に格納する(図4のステップS2)。このとき、要素が何も入っていない箇所である空き領域には、空きを示す「NULL」を入れる(図4のステップS3)。なお、空き領域には「NULL」を入れることに限定されず、空きを示す特別な値など、他の値を入れても構わない。   Next, nine “phonetic” data sorted as shown in FIG. 8A, three free areas between each data, and free data at both ends of the data as shown in FIG. 8B. The data are stored in sequence in sequence numbers 3, 7, 11, 15, 19, 23, 27, 31, and 35 so that three areas are included (step S2 in FIG. 4). At this time, “NULL” indicating a vacancy is entered in a vacant area where no element is contained (step S3 in FIG. 4). It should be noted that the empty area is not limited to “NULL”, and other values such as a special value indicating the empty may be included.

その後、データ変換部11は、図8(B)に示すように、「VL」とは別の新たな配列「IL」(Insert Level)を、「VL」のサイズと同じサイズ「39」で作成する(図4のステップS4)。そして、各要素すべてに「0」を格納する(図4のステップS5)。このIL配列は、対応するデータの範囲内に対する新規データの挿入度合い(挿入状況情報)を記録するための配列である。そして、後述するように、この「挿入度合い」から判断されるデータ間の「挿入レベル」に応じて、「VL」のデータ間の空きサイズが調整されることとなる。   Thereafter, as shown in FIG. 8B, the data converter 11 creates a new array “IL” (Insert Level) different from “VL” with the same size “39” as the size of “VL”. (Step S4 in FIG. 4). Then, “0” is stored in all the elements (step S5 in FIG. 4). This IL array is an array for recording the degree of insertion of new data (insertion status information) within the range of corresponding data. As will be described later, the free space between the “VL” data is adjusted according to the “insertion level” between the data determined from the “degree of insertion”.

<2.FAST構造データへの新規データの挿入動作>
次に、FAST構造データに、新規データを挿入するときの動作を、図5のフローチャート、図6のシーケンス図、図9乃至図11を参照して説明する。まず、上述したように作成した図8(B)に示すFAST構造データの「ふりがな」列に、新規データ「しみず」を挿入する例、つまり、空き領域がある「VL」への新規データの挿入動作を説明する。
<2. Inserting new data into FAST structure data>
Next, the operation when new data is inserted into the FAST structure data will be described with reference to the flowchart of FIG. 5, the sequence diagram of FIG. 6, and FIGS. First, an example of inserting new data “SHIMIZU” into the “Furigana” column of the FAST structure data shown in FIG. 8B created as described above, that is, inserting new data into “VL” having a free space The operation will be described.

<2−a.空き領域があるVLへの新規データの挿入動作>
図8(B)に示すFAST構造データの「VL」において、「しみず」がどの範囲にあるかスキャンする(図5のステップS11,図6のステップS21)。配列のスキャン方法は、二分探索で行うことが可能である。すると、「しみず」は、「VL」にはまだ存在せず(図5のステップS12:No)、「さとう」と「すずき」の間にあることが分かる。さらに、図8(B)に示すように、「さとう」と「すずき」の真ん中の配列番号25の要素は「NULL」で空いているため(図5のステップS13:Yes、図6のステップS22)、図9に斜線で示すように、その空き領域に「しみず」を挿入する(図5のステップS15、図6のステップS23,S24)。
<2-a. Inserting new data into a VL with free space>
In the “VL” of the FAST structure data shown in FIG. 8B, the range in which “stains” is present is scanned (step S11 in FIG. 5 and step S21 in FIG. 6). The array scanning method can be performed by binary search. Then, it can be seen that “Shimizu” does not yet exist in “VL” (step S12: No in FIG. 5) and is between “Sato” and “Suzuki”. Further, as shown in FIG. 8B, the element of the array element number 25 in the middle of “Sato” and “Suzuki” is “NULL” and is empty (step S13 in FIG. 5: Yes, step S22 in FIG. 6). ) As shown by hatching in FIG. 9, “stains” are inserted into the empty area (step S15 in FIG. 5 and steps S23 and S24 in FIG. 6).

その後、新規データを挿入した範囲に位置する「IL」配列の要素の値である「挿入度合い」を「1」増やす。ここでは、「さとう」と「すずき」の間に「しみず」を挿入したため、図9の斜線で示すように、「さとう」と「すずき」の間の範囲に位置する「IL」配列の全ての要素の値を、「0」から「1」にする(図5のステップS16、図6のステップS25,S26)。   Thereafter, the “insertion degree” which is the value of the element of the “IL” array located in the range where the new data is inserted is increased by “1”. Here, since “shimuzu” is inserted between “sato” and “suzuki”, all of the “IL” array located in the range between “sato” and “suzuki” as shown by the oblique lines in FIG. The value of the element is changed from “0” to “1” (step S16 in FIG. 5 and steps S25 and S26 in FIG. 6).

そして最後に、「VNo」の一番最後に、「VL」の「しみず」を指し示すように要素「25」を追加する(図5のステップS17)(図9の斜線を参考)。なお、新規データが挿入される範囲内の空きが偶数の場合、挿入する箇所として決定する真ん中の場所は、配列番号の小さい方とする。例えば、「すずき」が要素「27」ではなく、「26」だった場合、「しみず」が入る場所は「24」か「25」の2通り考えられるが、小さい方の「24」に入れるとする。   Finally, an element “25” is added at the very end of “VNo” so as to indicate “stain” of “VL” (step S17 in FIG. 5) (see the hatched line in FIG. 9). When the empty space in the range where new data is inserted is an even number, the middle place determined as the place to be inserted is the one with the smaller array number. For example, if “Suzuki” is not “27” but “26”, there are two places where “Shimizu” can enter, “24” or “25”, but if you put it in the smaller “24” To do.

以上の処理により、図8(B)に示すFAST構造データに新規データである「しみず」が挿入されると、FAST構造データの「VNo」、「VL」は、図9に示すようになる。なお、新規データである「しみず」が、FAST構造データ内のどの範囲にあるかスキャンした結果(図5のステップS11)、既に同じデータが入っていた場合には(図5のステップS12:Yes)、「VL」へのデータ挿入は行わない。   With the above processing, when the new data “SHIMIZU” is inserted into the FAST structure data shown in FIG. 8B, “VNo” and “VL” of the FAST structure data are as shown in FIG. As a result of scanning the range of the new data “SHIMIZU” in the FAST structure data (step S11 in FIG. 5), if the same data has already been entered (step S12 in FIG. 5: Yes) ), No data is inserted into “VL”.

次に、新規データを挿入する箇所に空きがない場合を考える。まず、FAST構造データが図9の場合であり、さらに「しもやなぎ」、「しょうない」の新規データを挿入することを考える。図9において、「しもやなぎ」は、「しみず」と「すずき」の間にあり、その真ん中の配列番号26の要素が「NULL」で空いているため、挿入可能と判断して、図10に示すように挿入する。続いて、「しょうない」は、「しもやなぎ」と「すずき」の間に位置するが、その間には「ULL」の空きが無い。この場合、下記のように、VNo,VLの作り変えを行う。   Next, consider a case where there is no vacancy at the location where new data is to be inserted. First, the FAST structure data is the case of FIG. 9, and it is considered to insert new data of “Shimoyanagi” and “Shouai”. In FIG. 9, “Shimoyanagi” is between “Shimizu” and “Suzuki”, and since the element of the array element number 26 in the middle is “NULL”, it is determined that insertion is possible. Insert as shown. Next, “Shouai” is located between “Shimoyanagi” and “Suzuki”, but there is no “ULL” space between them. In this case, VNo and VL are changed as follows.

<2−b.VNo,VL作り変え時の動作>
VNo,VL作り変え処理では、上述したデータ変換部11にて、表形式データをFAST構造データに変換したときと同様に、「VL」の各データの間に空きを入れるようにする(図6のステップS27,S28)。ただし、配列「IL」から判定される「挿入レベル」に応じて、データの範囲ごとに空き領域のサイズ(個数)を変えるようにする。具体的には、新たな空きサイズを、(S + (挿入レベルに応じた個数))、とする。データの範囲の挿入レベルが高ければ高いほど、その後もその範囲にデータが挿入される可能性が高いと推測されるため、空きサイズを大きく取るようにする。
<2-b. Operation when remodeling VNo and VL>
In the VNo, VL remodeling process, a space is inserted between each “VL” data as in the case where the data conversion unit 11 converts the tabular data into FAST structure data (FIG. 6). Steps S27 and S28). However, the size (number) of empty areas is changed for each data range according to the “insertion level” determined from the array “IL”. Specifically, the new empty size is (S + (number according to the insertion level)). It is estimated that the higher the insertion level of the data range, the higher the possibility that data will be inserted into the range thereafter.

ここで、「VL」の各データ間に対応する「IL」配列に基づく「挿入レベル」の判定方法を、図13を参照して説明する。図13(A),(B),(C)の各パターンでは、「VL」の範囲内の空き領域(NULL)に設定されている「IL」要素の値である「挿入度合い」が、すべて一致する場合にはその値に対応する「挿入レベル」となり、すべてが一致しない場合には、低い値の「挿入レベル」となる。これらの例では、「VL」のデータ「156」から「162」の範囲の「挿入レベル」は、それぞれ、(A):レベル1、(B):レベル0、(C):レベル0となる。また、図13(D),(E)のパターンのように、「VL」範囲内に空きがない場合は、隣あったデータの「IL」要素の値を比較し、同値ならその値、異なるなら小さい方の値が「挿入レベル」となる。よって、これらの例では、(D):レベル1、(E):レベル0となる。   Here, a method of determining the “insertion level” based on the “IL” sequence corresponding to each data of “VL” will be described with reference to FIG. In each pattern of FIGS. 13A, 13B, and 13C, the “insertion degree” that is the value of the “IL” element set in the empty area (NULL) within the range of “VL” is all If they match, it becomes the “insertion level” corresponding to the value, and if all do not match, it becomes the “insertion level” of a low value. In these examples, “insertion levels” in the range of “VL” data “156” to “162” are (A): level 1, (B): level 0, and (C): level 0, respectively. . Also, as shown in the patterns of FIGS. 13D and 13E, when there is no space in the “VL” range, the values of the “IL” elements of the adjacent data are compared. Then, the smaller value becomes the “insertion level”. Therefore, in these examples, (D): level 1 and (E): level 0.

次に、上述したVNo,VL作り変え処理の一例を、図11を参照して説明する。ここでは、図11(A)のFAST構造データに対して、新規データ「さとう」を挿入することとする。すると、「さとう」は、「きむら」から「たかはし」の範囲にあるが、その間に空きがないため、VNo,VLの作り変えを行う。   Next, an example of the above-described VNo, VL remodeling process will be described with reference to FIG. Here, it is assumed that new data “Sato” is inserted into the FAST structure data of FIG. Then, “Sato” is in the range from “Kimura” to “Takahashi”, but there is no space between them, so VNo and VL are remade.

具体的に、VNo,VLの作り変え処理は、まず、「VL」のデータ間に、当該データ間に対応する「挿入レベル」の値に応じて、いくつかの新たな空き領域を挿入して行う。ここでは、一例として、データ間に、「元の空き領域数+(挿入レベル×3)」個の空き領域を新たに挿入している。つまり、挿入レベルが高ければ高いほど、その範囲に多くの空き領域が挿入される。但し、挿入する空き領域の数は、上述した数であることに限定されない。   Specifically, the VNo, VL remodeling process first inserts several new free areas between the “VL” data according to the value of the “insertion level” corresponding to the data. Do. Here, as an example, “original empty area number + (insertion level × 3)” empty areas are newly inserted between data. That is, the higher the insertion level, the more free areas are inserted in the range. However, the number of empty areas to be inserted is not limited to the number described above.

例えば、図11(A)において「IL」に基づく「挿入レベル」が「0」ではない斜線で示す範囲については、図11(B)の斜線で示す「NULL」の空き領域が追加されている。特に、「きむら」と「たかはし」の間には、「挿入レベル=2」に相当する6個の空き領域「NULL」が追加される。そして、「きむら」と「たかはし」の間に追加された空き領域に、「さとう」が挿入される。これに伴い、「さとう」が挿入された「きむら」から「たかはし」の範囲は、図11(B)の斜線に示すように、「IL」の値である「挿入度合い」が、「1」加算され、「3」となる。   For example, in FIG. 11A, a “NULL” empty area indicated by the diagonal line in FIG. 11B is added to the range indicated by the diagonal line whose “insertion level” based on “IL” is not “0”. . In particular, six empty areas “NULL” corresponding to “insertion level = 2” are added between “Kimura” and “Takahashi”. Then, “Sato” is inserted into the empty area added between “Kimura” and “Takahashi”. Accordingly, the range from “Kimura” to “Takahashi” in which “Sato” is inserted is “1” as the “insertion degree” that is the value of “IL”, as indicated by the hatched line in FIG. Adds to "3".

<3.空き領域のサイズの調整動作>
ここで、新規データの挿入があまり起こっていない範囲、つまり、「挿入レベル」が低い範囲は、そのままだと長い間データが挿入されず利用されないまま、初期の空き領域のサイズ分のメモリ量を消費することになる。これの対策として、「挿入レベル」が低い範囲の空き領域を、空きサイズ調整部30で定期的に調整する処理を行う。また、このとき、上述したVNo,VLの作り変えで行った「挿入レベル」に応じて空き領域を広げる処理も行う。なお、この処理は、データベースのシステム負荷が低いとき(例えば、夜間)を見計らい、定期的に自動で実行されるものとする。
<3. Adjustment of free space size>
Here, in the range where new data is not inserted so much, that is, in the range where the “insertion level” is low, the amount of memory corresponding to the size of the initial free space is left without being inserted for a long time. Will be consumed. As a countermeasure against this, the empty size adjusting unit 30 periodically adjusts the empty area in the range where the “insertion level” is low. At this time, a process for expanding the free area is also performed in accordance with the “insertion level” performed by changing the VNo and VL described above. It is assumed that this process is automatically performed periodically in anticipation of when the database system load is low (for example, at night).

空き領域のサイズの調整では、上述したVNo,VLの作り変え処理に加えて、以下の処理を行う。   In adjusting the size of the free space, the following processing is performed in addition to the above-described VNo and VL remodeling processing.

まず、「挿入レベル」が「0」の範囲は、空き領域のサイズつまり空き領域の個数Sを、「S/2(小数点以下切り捨て)」にする。ただし、後に新規データの挿入が起こることもあり、その際に空き領域のサイズが「0」であるということが無いように、最低空き領域サイズは「1」とする。例えば、図12(A)の斜線で示す「挿入レベル」が「0」の範囲の空き領域が「3」個ある場合には、図12(B)の網掛けで示すように、空き領域が「1」個(3/2:小数点以下切り捨て)となる。   First, in the range where the “insertion level” is “0”, the size of the free area, that is, the number S of free areas is set to “S / 2 (rounded down to the decimal point)”. However, new data may be inserted later, and the minimum free area size is set to “1” so that the size of the free area is not “0” at that time. For example, if there are “3” free areas in the range of “0” as “insertion level” indicated by hatching in FIG. 12A, the free areas are shown as shaded in FIG. “1” (3/2: rounded down).

これに加え、「挿入レベル」が「0」より大きい範囲については、上述同様に、図12(B)に示すように、「挿入レベル」の値に応じた個数の空き領域「NULL」を挿入する。   In addition to this, in the range where the “insertion level” is larger than “0”, as shown in FIG. 12B, the number of empty areas “NULL” corresponding to the value of “insertion level” is inserted as described above. To do.

以上のようにして、VNo,VLの作り変えを行った後に、図12(B)の斜線に示すように、各「IL」の「挿入度合い」をそれぞれ「1」下げる。このとき、「挿入度合い」が「0」の箇所は、「0」のままとする。   After the VNo and VL are remade as described above, the “insertion degree” of each “IL” is lowered by “1”, as indicated by the hatched lines in FIG. At this time, the portion where the “insertion degree” is “0” remains “0”.

なお、実際のデータベースの運用では、使用可能なリソースが限られている。空きサイズを余分に取るVNo,VLの作り変えや空きサイズの調整により、必要メモリ使用量が使用可能なリソース限度を超えないよう、配列サイズに最大値を設定してもよい。この場合、配列サイズが最大値を超えたら、空きサイズの調整を複数回行って配列サイズを縮めるようにするという運用も可能である。また、上記では、「挿入レベル」が「0」の範囲の空き領域を小さくする場合を説明したが、「挿入レベル」が「0」よりも大きい範囲においても、空き領域を小さくしてもよい。その場合には、「挿入レベル」が低いほど後に新規データが挿入される可能性も低くなるため、「挿入レベル」が低いほど空き領域の大きさ(個数)が小さく(少なく)なるよう調整してもよい。   In actual database operations, available resources are limited. A maximum value may be set for the array size so that the required memory usage does not exceed the usable resource limit by recreating VNo and VL that take extra space size or adjusting the space size. In this case, when the array size exceeds the maximum value, it is possible to adjust the empty size a plurality of times to reduce the array size. In the above description, the case where the free area in the range where the “insertion level” is “0” is reduced is described. However, the free area may be reduced even in the range where the “insertion level” is greater than “0”. . In this case, the lower the “insertion level”, the lower the possibility that new data will be inserted later. Therefore, the lower the “insertion level”, the smaller (smaller) the size (number) of free areas is adjusted. May be.

なお、上述した空きサイズ調整部30に、調整を非同期実行するためのコマンドまたはAPI I/Fを用意し、それをユーザ2またはユーザが利用するクライアント3から都合がいいタイミングで実行できるようにすることも可能である。これにより、データベースの運用者が、調整を明示的なタイミングで行うことができる。   It should be noted that a command or API I / F for executing the adjustment asynchronously is prepared in the above-described empty size adjustment unit 30 so that it can be executed at a convenient timing from the user 2 or the client 3 used by the user. It is also possible. As a result, the database operator can make the adjustment at an explicit timing.

以上のように、本発明によると、VNo,VLの作り変え回数が減少することにより、当該作り変えにかかる時間を抑制でき、その結果、装置の性能向上を図ることができる。特に、本発明は、ソートされた列データに、ランダムかつ一様に新規データが挿入されるような列に対して有益である。   As described above, according to the present invention, by reducing the number of times VNo and VL are remodeled, the time required for the remodeling can be suppressed, and as a result, the performance of the apparatus can be improved. In particular, the present invention is useful for columns in which new data is randomly and uniformly inserted into sorted column data.

なお、上記では、新規データの挿入操作について説明したが、データの更新処理についても本発明は適用可能である。例えば、これまでのシステムでは、「VL」に無い新しいデータで上書きすると、新しいデータの挿入処理と同様の処理を行うことになり、VNo,VLの作り変えが必要となる。この場合であっても、本発明の手法により、作り変え発生回数の軽減が可能である。   In the above description, the operation for inserting new data has been described. However, the present invention can also be applied to data update processing. For example, in the conventional system, if new data not in “VL” is overwritten, the same processing as the insertion processing of new data is performed, and it is necessary to recreate VNo and VL. Even in this case, the number of remodeling occurrences can be reduced by the method of the present invention.

<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明におけるデータ処理装置(図14参照)、プログラム、データ処理方法の構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
<Appendix>
Part or all of the above-described embodiment can be described as in the following supplementary notes. The outline of the configuration of the data processing apparatus (see FIG. 14), program, and data processing method in the present invention will be described below. However, the present invention is not limited to the following configuration.

(付記1)
表形式データを列ごとの成分に分解した列形式データに変換する形式変換部101と、
前記列形式データに対する操作を行うデータ操作部102と、を備え、
前記形式変換部101は、前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記データ操作部102は、前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
データ処理装置100。
(Appendix 1)
A format conversion unit 101 that converts tabular data into column format data decomposed into components for each column;
A data operation unit 102 for performing operations on the column format data,
When converting the table format data into the column format data, the format conversion unit 101 forms an empty area between the data constituting the column format data, and converts the data into the column format data.
When the data operation unit 102 inserts other data between the data constituting the column format data, the data operation unit 102 inserts the other data into the empty area formed between the data.
Data processing apparatus 100.

上記発明によると、まず、表形式データを列形式データに変換する際に、列形式データを構成する各データ間に予め空き領域を形成して列形式のデータを生成する。そして、列形式データを操作して当該列形式データを構成する各データの間に他のデータを挿入する際には、上述したように形成された空き領域に他のデータを挿入する。これにより、列形式データに対して他のデータを挿入した際に、その順序の更新を行うことがないため、更新かかる時間を抑制して、データ処理装置の性能の向上を図ることができる。   According to the above invention, first, when converting the tabular data to the column format data, the column format data is generated by previously forming an empty area between the data constituting the column format data. When other data is inserted between the data constituting the column format data by manipulating the column format data, the other data is inserted into the free space formed as described above. As a result, when other data is inserted into the column format data, the order is not updated, so the time required for the update can be suppressed and the performance of the data processing apparatus can be improved.

(付記2)
付記1に記載のデータ処理装置であって、
前記データ操作部は、前記列形式データを形成する各データ間毎に、当該各データ間に対する前記他のデータの挿入状況を表す挿入状況情報を記憶して管理する、
データ処理装置。
(Appendix 2)
A data processing apparatus according to attachment 1, wherein
The data operation unit stores and manages insertion status information representing an insertion status of the other data between the data for each data forming the column format data.
Data processing device.

(付記3)
付記2に記載のデータ処理装置であって、
前記挿入状況情報に応じて、前記列形式データを形成する各データ間に形成している空き領域の大きさを変化させる空き領域調整部を備えた、
データ処理装置。
(Appendix 3)
The data processing device according to attachment 2, wherein
According to the insertion status information, provided with a free space adjustment unit that changes the size of the free space formed between each data forming the column format data,
Data processing device.

(付記4)
付記3に記載のデータ処理装置であって、
前記データ操作部は、前記挿入状況情報として、前記列形式データを形成する各データ間に対する前記他のデータの挿入度合いを管理し、
前記空き領域調整部は、前記挿入度合いが高いほど、対応する各データ間に形成している空き領域の大きさが大きくなるよう変化させる、
データ処理装置。
(Appendix 4)
The data processing device according to attachment 3, wherein
The data operation unit manages the insertion degree of the other data between the data forming the column format data as the insertion status information,
The free space adjustment unit changes the size of the free space formed between corresponding data as the insertion degree is higher,
Data processing device.

(付記5)
付記3又は4に記載のデータ処理装置であって、
前記データ操作部は、前記挿入状況情報として、前記列形式データを形成する各データ間に対する前記他のデータの挿入度合いを管理し、
前記空き領域調整部は、前記挿入度合いが低いほど、対応する各データ間に形成している空き領域の大きさが小さくなるよう変化させる、
データ処理装置。
(Appendix 5)
The data processing device according to appendix 3 or 4,
The data operation unit manages the insertion degree of the other data between the data forming the column format data as the insertion status information,
The free space adjustment unit changes the size of the free space formed between the corresponding data to be smaller as the insertion degree is lower,
Data processing device.

(付記6)
付記4又は5に記載のデータ処理装置であって、
前記データ操作部は、前記空き領域調整部にて空き領域の大きさを変化させた各データ間に対する前記挿入度合いを変化させて設定する、
データ処理装置。
(Appendix 6)
A data processing device according to appendix 4 or 5, wherein
The data operation unit is configured to change and set the insertion degree between each data in which the size of the free space is changed by the free space adjustment unit.
Data processing device.

このように、過去のデータの挿入状況に応じて空き領域の大きさを変化させることにより、その後のデータの挿入に対して適切に対応することができる。その結果、他のデータを挿入することによる列形式データの順序の更新が必要となることをさらに抑制できると共に、容量の節約を図ることができ、データ処理装置の性能のさらなる向上を図ることができる。   As described above, by changing the size of the empty area according to the past data insertion state, it is possible to appropriately cope with subsequent data insertion. As a result, it is possible to further suppress the necessity of updating the order of the column format data by inserting other data, to save capacity, and to further improve the performance of the data processing device. it can.

(付記7)
付記1乃至6のいずれかに記載のデータ処理装置であって、
前記形式変換部は、前記列形式データを構成する各データのうち、先頭と後端とに位置する各データの両端に、それぞれ空き領域を形成する、
データ処理装置。
(Appendix 7)
A data processing apparatus according to any one of appendices 1 to 6,
The format conversion unit forms free areas at both ends of each data located at the head and the rear end among the data constituting the column format data,
Data processing device.

(付記8)
付記1乃至7のいずれかに記載のデータ処理装置であって、
前記形式変換部は、表形式データを、列ごとに、前記データである値、順序、位置、の成分に分解したFAST(Filter Array Structure)構造の列形式データに変換する、
データ処理装置。
(Appendix 8)
A data processing apparatus according to any one of appendices 1 to 7,
The format conversion unit converts the tabular data into column format data having a FAST (Filter Array Structure) structure that is decomposed into components of the value, order, and position, which are the data, for each column.
Data processing device.

(付記9)
情報処理装置に、
表形式データを列ごとの成分に分解した列形式データに変換する形式変換部と、
前記列形式データに対する操作を行うデータ操作部と、
を実現させるプログラムであって、
前記形式変換部は、前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記データ操作部は、前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
プログラム。
(Appendix 9)
In the information processing device,
A format conversion unit that converts tabular data into column format data broken down into components for each column;
A data operation unit for performing operations on the column format data;
Is a program that realizes
When converting the table format data to the column format data, the format conversion unit forms a free area between the data constituting the column format data, and converts the data into the column format data.
The data operation unit inserts the other data into the empty area formed between the data when the other data is inserted between the data constituting the column format data.
program.

(付記9.1)
付記9に記載のプログラムであって、
前記データ操作部は、前記列形式データを形成する各データ間毎に、当該各データ間に対する前記他のデータの挿入状況を表す挿入状況情報を記憶して管理する、
プログラム。
(Appendix 9.1)
The program according to appendix 9, wherein
The data operation unit stores and manages insertion status information representing an insertion status of the other data between the data for each data forming the column format data.
program.

(付記9.2)
付記9.1に記載のプログラムであって、
前記情報処理装置に、さらに、
前記挿入状況情報に応じて、前記列形式データを形成する各データ間に形成している空き領域の大きさを変化させる空き領域調整部、
を実現させるためのプログラム。
(Appendix 9.2)
The program according to attachment 9.1,
In addition to the information processing apparatus,
An empty area adjustment unit that changes the size of the empty area formed between the data forming the column format data according to the insertion status information;
A program to realize

(付記10)
表形式データを列ごとの成分に分解した列形式データに変換し、
前記列形式データに対する操作を行う、データ処理方法であって、
前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
データ処理方法。
(Appendix 10)
Convert tabular data into column format data broken down into components for each column,
A data processing method for performing an operation on the column format data,
When converting the table format data into the column format data, a free space is formed between the data constituting the column format data, and the table format data is converted into the column format data.
When inserting other data between the data constituting the column format data, the other data is inserted into the empty area formed between the data,
Data processing method.

(付記10.1)
付記10に記載のデータ処理方法であって、
前記列形式データを構成する各データ間に他のデータを挿入する際に、前記列形式データを形成する各データ間毎に、当該各データ間に対する前記他のデータの挿入状況を表す挿入状況情報を記憶して管理する、
データ処理方法。
(Appendix 10.1)
A data processing method according to attachment 10, wherein
When inserting other data between the data constituting the column format data, the insertion status information indicating the insertion status of the other data between the data for each data forming the column format data Remember and manage,
Data processing method.

(付記10.2)
付記10.1に記載のデータ処理方法であって、
前記挿入状況情報に応じて、前記列形式データを形成する各データ間に形成している空き領域の大きさを変化させる、
データ処理方法。
(Appendix 10.2)
A data processing method according to attachment 10.1,
In accordance with the insertion status information, the size of the empty area formed between the data forming the column format data is changed.
Data processing method.

なお、上述したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されている。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。   Note that the above-described program is stored in a storage device or recorded on a computer-readable recording medium. For example, the recording medium is a portable medium such as a flexible disk, an optical disk, a magneto-optical disk, and a semiconductor memory.

以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。   Although the present invention has been described with reference to the above-described embodiment and the like, the present invention is not limited to the above-described embodiment. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

1 データベース管理システム
2 ユーザ
3 クライアント
10 インポート部
11 データ変換部
20 データベース操作部
21 データ挿入処理部
22 データ挿入確認部
23 VNo,VL作り変え部
24 データ挿入部
25 挿入レベル更新部
30 空きサイズ調整部
40 データベース
D1 表形式データ
D2 FAST構造データ
100 データ処理装置
101 形式変換部
102 データ操作部
DESCRIPTION OF SYMBOLS 1 Database management system 2 User 3 Client 10 Import part 11 Data conversion part 20 Database operation part 21 Data insertion process part 22 Data insertion confirmation part 23 VNo, VL remake part 24 Data insertion part 25 Insertion level update part 30 Free size adjustment part 40 Database D1 Tabular data D2 FAST structure data 100 Data processing device 101 Format conversion unit 102 Data operation unit

Claims (10)

表形式データを列ごとの成分に分解した列形式データに変換する形式変換部と、
前記列形式データに対する操作を行うデータ操作部と、を備え、
前記形式変換部は、前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記データ操作部は、前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
データ処理装置。
A format conversion unit that converts tabular data into column format data broken down into components for each column;
A data operation unit for performing operations on the column format data,
When converting the table format data to the column format data, the format conversion unit forms a free area between the data constituting the column format data, and converts the data into the column format data.
The data operation unit inserts the other data into the empty area formed between the data when the other data is inserted between the data constituting the column format data.
Data processing device.
請求項1に記載のデータ処理装置であって、
前記データ操作部は、前記列形式データを形成する各データ間毎に、当該各データ間に対する前記他のデータの挿入状況を表す挿入状況情報を記憶して管理する、
データ処理装置。
The data processing apparatus according to claim 1,
The data operation unit stores and manages insertion status information representing an insertion status of the other data between the data for each data forming the column format data.
Data processing device.
請求項2に記載のデータ処理装置であって、
前記挿入状況情報に応じて、前記列形式データを形成する各データ間に形成している空き領域の大きさを変化させる空き領域調整部を備えた、
データ処理装置。
The data processing apparatus according to claim 2, wherein
According to the insertion status information, provided with a free space adjustment unit that changes the size of the free space formed between each data forming the column format data,
Data processing device.
請求項3に記載のデータ処理装置であって、
前記データ操作部は、前記挿入状況情報として、前記列形式データを形成する各データ間に対する前記他のデータの挿入度合いを管理し、
前記空き領域調整部は、前記挿入度合いが高いほど、対応する各データ間に形成している空き領域の大きさが大きくなるよう変化させる、
データ処理装置。
The data processing apparatus according to claim 3, wherein
The data operation unit manages the insertion degree of the other data between the data forming the column format data as the insertion status information,
The free space adjustment unit changes the size of the free space formed between corresponding data as the insertion degree is higher,
Data processing device.
請求項3又は4に記載のデータ処理装置であって、
前記データ操作部は、前記挿入状況情報として、前記列形式データを形成する各データ間に対する前記他のデータの挿入度合いを管理し、
前記空き領域調整部は、前記挿入度合いが低いほど、対応する各データ間に形成している空き領域の大きさが小さくなるよう変化させる、
データ処理装置。
The data processing device according to claim 3 or 4,
The data operation unit manages the insertion degree of the other data between the data forming the column format data as the insertion status information,
The free space adjustment unit changes the size of the free space formed between the corresponding data to be smaller as the insertion degree is lower,
Data processing device.
請求項4又は5に記載のデータ処理装置であって、
前記データ操作部は、前記空き領域調整部にて空き領域の大きさを変化させた各データ間に対する前記挿入度合いを変化させて設定する、
データ処理装置。
The data processing device according to claim 4 or 5,
The data operation unit is configured to change and set the insertion degree between each data in which the size of the free space is changed by the free space adjustment unit.
Data processing device.
請求項1乃至6のいずれかに記載のデータ処理装置であって、
前記形式変換部は、前記列形式データを構成する各データのうち、先頭と後端とに位置する各データの両端に、それぞれ空き領域を形成する、
データ処理装置。
A data processing apparatus according to any one of claims 1 to 6,
The format conversion unit forms free areas at both ends of each data located at the head and the rear end among the data constituting the column format data,
Data processing device.
請求項1乃至7のいずれかに記載のデータ処理装置であって、
前記形式変換部は、表形式データを、列ごとに、前記データである値、順序、位置、の成分に分解したFAST(Filter Array Structure)構造の列形式データに変換する、
データ処理装置。
A data processing apparatus according to any one of claims 1 to 7,
The format conversion unit converts the tabular data into column format data having a FAST (Filter Array Structure) structure that is decomposed into components of the value, order, and position, which are the data, for each column.
Data processing device.
情報処理装置に、
表形式データを列ごとの成分に分解した列形式データに変換する形式変換部と、
前記列形式データに対する操作を行うデータ操作部と、
を実現させるプログラムであって、
前記形式変換部は、前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記データ操作部は、前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
プログラム。
In the information processing device,
A format conversion unit that converts tabular data into column format data broken down into components for each column;
A data operation unit for performing operations on the column format data;
Is a program that realizes
When converting the table format data to the column format data, the format conversion unit forms a free area between the data constituting the column format data, and converts the data into the column format data.
The data operation unit inserts the other data into the empty area formed between the data when the other data is inserted between the data constituting the column format data.
program.
表形式データを列ごとの成分に分解した列形式データに変換し、
前記列形式データに対する操作を行う、データ処理方法であって、
前記表形式データを前記列形式データに変換する際に、当該列形式データを構成する各データの間に空き領域を形成して、当該列形式データに変換し、
前記列形式データを構成する各データ間に他のデータを挿入する際に、当該各データ間に形成された前記空き領域に前記他のデータを挿入する、
データ処理方法。
Convert tabular data into column format data broken down into components for each column,
A data processing method for performing an operation on the column format data,
When converting the table format data into the column format data, a free space is formed between the data constituting the column format data, and the table format data is converted into the column format data.
When inserting other data between the data constituting the column format data, the other data is inserted into the empty area formed between the data,
Data processing method.
JP2014055852A 2014-03-19 2014-03-19 Data processing device Active JP6295754B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014055852A JP6295754B2 (en) 2014-03-19 2014-03-19 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014055852A JP6295754B2 (en) 2014-03-19 2014-03-19 Data processing device

Publications (2)

Publication Number Publication Date
JP2015179353A true JP2015179353A (en) 2015-10-08
JP6295754B2 JP6295754B2 (en) 2018-03-20

Family

ID=54263367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014055852A Active JP6295754B2 (en) 2014-03-19 2014-03-19 Data processing device

Country Status (1)

Country Link
JP (1) JP6295754B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018051424A1 (en) * 2016-09-14 2018-03-22 株式会社日立製作所 Server computer and computer control method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142751A (en) * 1999-11-12 2001-05-25 Hitachi Ltd Method and device for data base management and storage medium with recorded database managing program
WO2005073880A1 (en) * 2004-01-29 2005-08-11 Shinji Furusho Distributed memory type information processing system
JP2008250727A (en) * 2007-03-30 2008-10-16 Fujitsu Broad Solution & Consulting Inc Data management method, program and device
JP2011203899A (en) * 2010-03-25 2011-10-13 Fujitsu Broad Solution & Consulting Inc Program, apparatus and method for processing data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142751A (en) * 1999-11-12 2001-05-25 Hitachi Ltd Method and device for data base management and storage medium with recorded database managing program
WO2005073880A1 (en) * 2004-01-29 2005-08-11 Shinji Furusho Distributed memory type information processing system
JP2008250727A (en) * 2007-03-30 2008-10-16 Fujitsu Broad Solution & Consulting Inc Data management method, program and device
JP2011203899A (en) * 2010-03-25 2011-10-13 Fujitsu Broad Solution & Consulting Inc Program, apparatus and method for processing data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018051424A1 (en) * 2016-09-14 2018-03-22 株式会社日立製作所 Server computer and computer control method

Also Published As

Publication number Publication date
JP6295754B2 (en) 2018-03-20

Similar Documents

Publication Publication Date Title
EP3079078B1 (en) Multi-version concurrency control method in database, and database system
US8682941B2 (en) Database apparatus
EP3575968A1 (en) Method and device for synchronizing active transaction lists
CN110147204B (en) Metadata disk-dropping method, device and system and computer-readable storage medium
CN105989076A (en) Data statistical method and device
EP3349129A1 (en) Region division method in distributed database, region node and system
US8898677B2 (en) Data arrangement calculating system, data arrangement calculating method, master unit and data arranging method
CN102799679A (en) Hadoop-based massive spatial data indexing updating system and method
WO2021238246A1 (en) Method and apparatus for processing operation request for aggregation small file
WO2017045481A1 (en) Method and system for web cross-page selection of data
JP6293709B2 (en) Storage system and storage system program
CN103559247A (en) Data service processing method and device
WO2018090249A1 (en) Log-structured storage method and server
JP6295754B2 (en) Data processing device
JP5790755B2 (en) Database management apparatus and database management method
JPWO2014119269A1 (en) Data set multiplicity changing device, server, and data set multiplicity changing method
US8065496B2 (en) Method for updating information used for selecting candidate in LRU control
US9081695B2 (en) Node determining program, node determining apparatus, and node determining method
CN105117169B (en) A kind of method and device of the disk space management of optimization
JP6189266B2 (en) Data processing apparatus, data processing method, and data processing program
US9715715B2 (en) Efficient cache preloading
JP2015064850A (en) Database monitoring device, database monitoring method, and computer program
WO2015105043A1 (en) Computing system, database management device and computing method
JP6677605B2 (en) Program, storage system, and storage system control method
JP2016162245A (en) Storage control device, storage control method, and storage control program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180104

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180205

R150 Certificate of patent or registration of utility model

Ref document number: 6295754

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150