JP6897248B2 - 更新反映プログラム、更新反映方法及び更新反映装置 - Google Patents

更新反映プログラム、更新反映方法及び更新反映装置 Download PDF

Info

Publication number
JP6897248B2
JP6897248B2 JP2017076281A JP2017076281A JP6897248B2 JP 6897248 B2 JP6897248 B2 JP 6897248B2 JP 2017076281 A JP2017076281 A JP 2017076281A JP 2017076281 A JP2017076281 A JP 2017076281A JP 6897248 B2 JP6897248 B2 JP 6897248B2
Authority
JP
Japan
Prior art keywords
record
database
wos
extent
column
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017076281A
Other languages
English (en)
Other versions
JP2018180739A (ja
Inventor
栄二 関
栄二 関
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017076281A priority Critical patent/JP6897248B2/ja
Priority to US15/925,823 priority patent/US10929387B2/en
Publication of JP2018180739A publication Critical patent/JP2018180739A/ja
Application granted granted Critical
Publication of JP6897248B2 publication Critical patent/JP6897248B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/221Column-oriented storage; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Description

本発明は、更新反映プログラム、更新反映方法及び更新反映装置に関する。
リレーショナルデータベース管理システム(Relational Database Management System:RDBMS)では、OLTP(Online Transaction Processing)とOLAP(Online Analytical Processing)の2つの処理が行われる。OLTPは、レコードの挿入、更新及び削除を行う処理であり、OLAPは、すでに蓄積されたレコードに統計処理等を行う処理である。
図9は、OLTPとOLAPの特徴を示す図である。図9において、行型とは、1つの行(レコード)に含まれるデータをまとめて記憶する行型のデータベースを示し、列型(カラムナ)とは、1つの列に含まれるデータをまとめて記憶する列型のデータベースを示す。
図9に示すように、OLTPでは、データベースに対する更新処理が発生するが、OLAPと比較して少数のデータに対する検索が行われる。したがって、OLTPでは、行型を用いる方が列型を用いるより処理が速い。一方、OLAPでは、特定の列に関する集計等で大量データの集計が行われる。したがって、OLAPでは、列型を用いる方が行型を用いるより処理が速い。このため、レコードの挿入、更新及び削除の操作は行型のデータベースに対して行われ、日毎、週毎等非同期に行型のデータベースのデータを列型のデータベースに移す処理が行われる。
近年、直近の集計データをビジネスに生かすことが求められている。例えば、午前の売り上げ状況に基づいて、午後の配送計画を策定することが行われる。このため、行型のデータベースと列型のデータベースの両方の利点を備えたデータベース管理システムに対するニーズが高まっている。
図10及び図11は、行型のデータベースと列型のデータベースの両方の利点を備えたデータベース管理システムのアーキテクチャの概要を説明するための図である。図10は、更新SQLに対する処理を説明するための図であり、図11は、検索SQLに対する処理を説明するための図である。ここで、更新SQLは、レコードの挿入、更新又は削除を行うことによりデータベースを更新するSQLであり、検索SQLはデータベースを検索するSQLである。
図10及び図11に示すように、行型のデータベースと列型のデータベースの両方の利点を備えたデータベース管理システムは、DBバッファ1aを有する。DBバッファ1aは、メインメモリ上の領域であり、行型の書き込みバッファであるWOS(Write Optimized Store)13と、列型のデータ構造のグローバルROS(Read Optimized Store)15を有する。
図10に示すように、更新SQLに対する処理では、行型のデータベースであるオリジナルテーブル11とWOS13が更新SQLと同期的に更新される。そして、更新SQLとは非同期にWOS13のデータをグローバルROS15に反映するWOS−ROS変換が行われる。
また、検索SQLに対する処理では、図11に示すように、WOS13が記憶する直近のデータが列型のローカルROS17aに変換され、ローカルROS17aとグローバルROS15に対して検索が行われる。なお、以下では、グローバルROS15を単にROS15として表す。
また、OLAPでは、検索の高速化のためにBRIN(Block-Range Index)が用いられる。図12は、BRINを説明するための図である。図12は、カラム(column1)が1つのテーブル(tbl1)で、ブロックサイズが4である場合のBRINを示す。
図12に示すように、ブロック#1について値の範囲は「0〜5」であり、ブロック#2について値の範囲は「13〜18」であり、ブロック#3について値の範囲は「53〜60」である。BRINでは、各ブロックに値の範囲がインデックスとして付加される。このため、例えば、「SELECT * FROM tbl1 WHERE column1 > 50;」といった検索では、検索エンジンは、インデックスを用いてブロック#1とブロック#2を読み飛ばすことができ、検索を高速に行うことができる。
BRINは、典型的には、カラムのデータが時系列データである場合に有効であるが、近い値が近い位置にくるようなカラムについて有効である。
なお、表形式のデータを列形式に分割して各レコードに含まれる要素の値に従って並び替える処理を行う複数のデータ処理部のいずれかに要素の値に応じて各レコードを分配し、各データ処理部による処理結果を結合して記憶する技術がある。この技術によれば、更新性能を向上することができる。
また、管理部が、更新要求に応答して、行形式で記憶される情報を更新し、列指向性データ処理部に更新要求を通知し、列指向性データ処理部は、列形式で情報を記憶し、クエリ要求に応答して、列形式で記憶される情報に基づいてクエリ応答を生成する技術がある。この技術によれば、OLTPとOLAPの2分を解消することができる。
特開2015−185104号公報 特表2010−539616号公報
図10及び図11に示した列型のデータベースにおいて図12に示したBRINを用いると、BRINが有効でなくなる場合がある。図13は、BRINが有効な例と有効でない例を示す図である。図13では、列型のデータベースは、取引日と商品コードを記憶する。
図13(a)に示すように、列型のデータベースにレコードの挿入だけが行われた場合には、近い位置には近い取引日がまとまっている。このため、2015年の取引を集計する場合には、検索エンジンは、2016年の取引を読み飛ばすことができる。
一方、図13(b)に示すように、列型で追加型のデータベースでレコードの更新が行われた場合、更新レコードは追加されるので、近い位置に遠い取引日の行が来てしまう。図13(b)では、1行目の商品コードが更新され、新たな行が追加される。このため、2016年の取引に2015年の取引が追加され、2016年の取引が2015年〜2016年の取引に変更される。したがって、2015年の取引を集計する場合に、検索エンジンは、2015年〜2016年の取引を読み飛ばすことができない。
図14A及び図14Bは、WOS−ROS変換によってBRINが有効でなくなる例を示す図である。図14Aに示すように、取引日が「2015/1/1」〜「2015/12/15」である3つのレコードがWOS13にあり、WOS−ROS変換が行われると、取引日の範囲が「2015/1/1〜2015/12/15」であるエクステント#1が作成される。ここで、エクステントは、WOS−ROS変換の単位である。
その後、取引日が「2016/5/15」、「2016/12/10」である2つのレコードが挿入され、取引日が「2015/1/1」であるレコードが更新されると、図14Bに示すように、WOS13に3つのレコードが記憶される。そして、このWOS13に対してWOS−ROS変換が行われると、取引日の範囲が「2015/1/1〜2016/12/10」であるエクステント#2が作成される。
すなわち、取引日が「2015/1/1」であるレコードが更新されたため、取引日の範囲が広いエクステントが作成される。このように、WOS−ROS変換には、BRINが有効でないエクステントを作成することでBRINを利用した検索性能が低下するという問題がある。
本発明は、1つの側面では、BRINを利用した検索性能の低下を抑止することを目的とする。
1つの態様では、更新反映プログラムは、コンピュータに、追記型の列形式のデータベースを更新するレコードを、該レコードが前記データベースへ挿入される挿入レコードである場合に該挿入レコードであることを示す付加情報を付加して、行型の書き込みバッファに蓄積する処理を実行させる。そして、更新反映プログラムは、コンピュータに、書き込みバッファに情報が蓄積されたレコードより、前記付加情報を用いて、前記挿入レコードを、列形式に変換してデータベースに追加する処理を実行させる。
1つの側面では、本発明は、BRINを利用した検索性能の低下を抑止することができる。
図1は、実施例に係るRDBMSによるWOS−ROS変換を説明するための図である。 図2Aは、空行回収におけるWOS残存レコードの回収を説明するための第1の図である。 図2Bは、空行回収におけるWOS残存レコードの回収を説明するための第2の図である。 図3は、実施例に係るRDBMSの機能構成を示す図である。 図4は、オリジナルテーブルとWOSのデータ構造を示す図である。 図5は、WOS−ROS変換処理のフローを示すフローチャートである。 図6は、空行回収処理のフローを示すフローチャートである。 図7は、WOSにTIDを追加する際にフラグを付加する処理のフローを示すフローチャートである。 図8は、RDBMSを実行するコンピュータのハードウェア構成を示す図である。 図9は、OLTPとOLAPの特徴を示す図である。 図10は、更新SQLに対する処理を説明するための図である。 図11は、検索SQLに対する処理を説明するための図である。 図12は、BRINを説明するための図である。 図13は、BRINが有効な例と有効でない例を示す図である。 図14Aは、WOS−ROS変換によってBRINが有効でなくなる例を示す第1の図である。 図14Bは、WOS−ROS変換によってBRINが有効でなくなる例を示す第2の図である。
以下に、本願の開示する更新反映プログラム、更新反映方法及び更新反映装置の実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
まず、実施例に係るRDBMS(Relational Database Management System:リレーショナルデータベース管理システム)によるWOS−ROS変換について説明する。なお、実施例に係るRDBMSは、追加型の関係データベースである。図1は、実施例に係るRDBMSによるWOS−ROS変換を説明するための図である。図1に示すように、WOS13には、2015年の取引データと2016年の取引データが含まれる。
ただし、実施例に係るRDBMSは、WOS13に含まれる全取引データをWOS−ROS変換してエクステントを作成するのではなく、2016年の取引データだけをWOS−ROS変換してエクステントを作成し、2015年の取引データをWOS13に残す。すなわち、実施例に係るRDBMSは、特定のカラムの値が所定の条件を満たすレコードだけを用いてエクステントを作成する。ここで、特定のカラムとは、BRINの作成に用いられるカラムである。
図1において、2015年の取引データは、挿入レコードではなく更新レコードである。したがって、実施例に係るRDBMSは、挿入レコードだけを用いてエクステントを作成することによって、2015年の取引データをWOS13に残すことができる。
このように、実施例に係るRDBMSは、特定のカラムの値が所定の条件を満たすレコードだけを用いてエクステントを作成することによって、特定のカラムの値が近接するレコードのみでエクステントを作成することができる。したがって、実施例に係るRDBMSは、エクステントをブロックとして特定のカラムの値が所定の条件を満たすレコードを用いてBRINを作成することによって、BRINが有効でなくなることを防ぐことができる。
また、実施例に係るRDBMSは、WOS−ROS変換時にWOS13に残されたレコードを空行回収時に回収する。図2A及び図2Bは、空行回収におけるWOS残存レコードの回収を説明するための図である。図2Aは、エクステントの空行を回収するステップ#1を示し、図2Bは、エクステントの後部にWOS13内の近接レコードを追加するステップ#2を示す。ここで、近接レコードとは、BRINが作成されるカラムに関してレコードの値がエクステントのBRINの範囲内のレコードである。
図2Aに示すエクステントにおいて、網掛けが行われた行は、無効行である。図2Aに示すように、実施例に係るRDBMSは、ステップ#1では、無効行を削除して詰めることによって、エクステント後部に空き領域を作成する。図2Aでは、4つの無効行が削除され、4行分の空き領域が作成される。
そして、実施例に係るRDBMSは、図2Bに示すように、ステップ#2において、空き領域にWOS13内の近接レコードを追加する。図2Bでは、エクステントの取引データは2015年の取引データであり、WOS13内には2015年の取引データが2つあるので、2015年の2つの取引データがエクステントの空き領域に追加され、2016年の取引データはWOS13に残される。
このように、実施例に係るRDBMSは、空行回収時にWOS残存レコードを回収することで、WOS−ROS変換時にWOS13に残されたレコードをROS15に反映させることができる。
次に、実施例に係るRDBMSの機能構成について説明する。図3は、実施例に係るRDBMSの機能構成を示す図である。図3に示すように、実施例に係るRDBMS1は、オリジナルテーブル11と、バックエンド部12と、WOS13と、変換部14と、ROS15と、空行回収部16と、SQLプロセッサ17とを有する。
オリジナルテーブル11は、行型のデータベースである。
バックエンド部12は、オリジナルテーブル11へのレコードの挿入、オリジナルテーブル11のレコードの更新及び削除を行う。また、バックエンド部12は、オリジナルテーブル11の操作と同期してWOS13を更新する。
バックエンド部12は、WOS13に挿入レコードを追加する際に、挿入レコードであることを示すフラグを挿入レコードに付加する。また、バックエンド部12は、WOS13に更新レコードを追加する際に、更新レコードであることを示すフラグを更新レコードに付加する。このフラグは、WOS−ROS変換で挿入レコードだけを変換するために用いられる。バックエンド部12は、蓄積部の一例である。
WOS13は、行型の書き込みバッファであり、オリジナルテーブル11とROS15との差分をTID(Tuple-ID)を用いて記憶する。図4は、オリジナルテーブル11とWOS13のデータ構造を示す図である。図4に示すように、オリジナルテーブル11では、各行にTIDが付加されている。
これまでは、説明の便宜上、WOS13がレコードを記憶することとしたが、実際には、WOS13はTIDを記憶する。また、TIDには、レコードが挿入レコードであるか更新レコードであるかを示すフラグが付加される。
変換部14は、WOS−ROS変換を行い、エクステントを作成する。ただし、変換部14は、WOS13に含まれる全レコードをWOS−ROS変換してエクステントを作成するのではなく、挿入レコードだけをWOS−ROS変換してエクステントを作成し、更新レコードをWOS13に残す。変換部14は、TIDに付加されたフラグを用いてWOS13内のレコードが挿入レコードであるか更新レコードであるかを判定する。
ROS15は、オリジナルテーブル11のレコードが列型に変換されたデータベースである。ROS15は、エクステントの集合である。列の集計処理等は、ROS15を用いて行われる。
空行回収部16は、エクステントから空行を回収する。空行回収部16は、エクステント内の無効行を削除して詰めることによってエクステント後部に空き領域を作成する。そして、空行回収部16は、WOS13内の近接レコードを空き領域に追加する。
SQLプロセッサ17は、検索SQLを処理してデータベースの検索を行う。SQLプロセッサ17は、検索SQLを受け取ると、WOS13を変換してローカルROS17aを作成する。そして、SQLプロセッサ17は、ROS15とローカルROS17aを用いて検索を行う。
次に、WOS−ROS変換処理のフローについて説明する。図5は、WOS−ROS変換処理のフローを示すフローチャートである。図5に示すように、変換部14は、1エクステント分の行が溜まった又はWOS13内の全行を処理したか否かを判定し(ステップS1)、1エクステント分の行が溜まった又はWOS13内の全行を処理した場合には処理を終了する。
一方、1エクステント分の行が溜まってなくWOS13内に未処理の行がある場合は、変換部14は、WOS13から1行取り出し(ステップS2)、取り出した行のフラグが挿入を示すか否かを判定する(ステップS3)。
そして、変換部14は、取り出した行のフラグが挿入を示さない場合には、ステップS1に戻り、挿入を示す場合には、取り出した行を、エクステントに追加し、WOS13から削除する(ステップS4)。そして、変換部14は、ステップS1に戻る。
このように、変換部14は、挿入された行だけをエクステントに追加することで、BRINが作成されるカラムの値が近いレコードだけを含むエクステントを作成することができる。なお、変換部14は、挿入された行だけをエクステントに追加する代わりに、BRINが作成されるカラムの値が過去に作成したエクステントに含まれる行を除いてエクステントを作成することもできる。
次に、空行回収処理のフローについて説明する。図6は、空行回収処理のフローを示すフローチャートである。図6に示すように、空行回収部16は、削除行を詰めて新しいエクステントを作成する(ステップS11)。そして、空行回収部16は、BRINが作成されるカラムに関して、新しいエクステント上で最大値及び最小値を計算する(ステップS12)。
そして、空行回収部16は、新しいエクステントの行数が上限に達したか又はWOS13内の全行を処理したか否かを判定し(ステップS13)、新しいエクステントの行数が上限に達したか又はWOS13内の全行を処理した場合には処理を終了する。
一方、新しいエクステントの行数が上限に達しなくWOS13内に未処理の行がある場合は、空行回収部16は、WOS13から1行取り出し(ステップS14)、取り出した行のフラグが更新を示すか否かを判定する(ステップS15)。
そして、空行回収部16は、取り出した行のフラグが更新を示さない場合には、ステップS13に戻り、更新を示す場合には、BRINが作成されるカラムに関して、値は新しいエクステントの最小値以上最大値以下であるか否かを判定する(ステップS16)。
そして、値が新しいエクステントの最小値以上最大値以下でない場合には、空行回収部16は、ステップS13に戻る。一方、値が新しいエクステントの最小値以上最大値以下である場合には、空行回収部16は、取り出した行を、エクステントに追加し、WOS13から削除する(ステップS17)。そして、空行回収部16は、ステップS13に戻る。
このように、空行回収部16は、WOS13から取り出した行の値が新しいエクステントの最小値以上最大値以下である場合に、取り出した行をエクステントに追加することで、WOS−ROS変換でWOS13に残された更新レコードをROS15に反映できる。
次に、WOS13にTIDを追加する際にフラグを付加する処理のフローについて説明する。図7は、WOS13にTIDを追加する際にフラグを付加する処理のフローを示すフローチャートである。
図7に示すように、バックエンド部12は、WOS13へ追加するTIDの通知を受け取り(ステップS21)、オリジナルテーブル11への挿入による追加であるか否かを判定する(ステップS22)。
そして、バックエンド部12は、挿入による追加である場合には、挿入を示すフラグと共にWOS13へTIDを追加し(ステップS23)、挿入による追加でない場合には、更新を示すフラグと共にWOS13へTIDを追加する(ステップS24)。
このように、バックエンド部12が挿入か更新かを示すフラグと共にWOS13へTIDを追加することで、変換部14は、WOS−ROS変換で挿入レコードだけを用いてエクステントを作成することができる。
次に、RDBMS1を実行するコンピュータについて説明する。図8は、RDBMS1を実行するコンピュータのハードウェア構成を示す図である。図8に示すように、コンピュータ50は、メインメモリ51と、CPU52と、LAN(Local Area Network)インタフェース53と、HDD(Hard Disk Drive)54とを有する。また、コンピュータ50は、スーパーIO(Input Output)55と、DVI(Digital Visual Interface)56と、ODD(Optical Disk Drive)57とを有する。
メインメモリ51は、プログラムやプログラムの実行途中結果などを記憶するメモリである。CPU52は、メインメモリ51からプログラムを読出して実行する中央処理装置である。CPU52は、メモリコントローラを有するチップセットを含む。
LANインタフェース53は、コンピュータ50をLAN経由で他のコンピュータに接続するためのインタフェースである。HDD54は、プログラムやデータを格納するディスク装置であり、スーパーIO55は、マウスやキーボードなどの入力装置を接続するためのインタフェースである。DVI56は、液晶表示装置を接続するインタフェースであり、ODD57は、DVDの読み書きを行う装置である。
LANインタフェース53は、PCIエクスプレス(PCIe)によりCPU52に接続され、HDD54及びODD57は、SATA(Serial Advanced Technology Attachment)によりCPU52に接続される。スーパーIO55は、LPC(Low Pin Count)によりCPU52に接続される。
そして、コンピュータ50において実行されるRDBMS1は、DVDに記憶され、ODD57によってDVDから読出されてコンピュータ50にインストールされる。あるいは、RDBMS1は、LANインタフェース53を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読出されてコンピュータ50にインストールされる。そして、インストールされたRDBMS1は、HDD54に記憶され、メインメモリ51に読出されてCPU52によって実行される。
上述してきたように、実施例では、バックエンド部12は、オリジナルテーブル11へのレコードの挿入及びオリジナルテーブル11のレコードの更新を行う際に、WOS13にTIDを追加する。そして、変換部14は、WOS−ROS変換を行う際に、BRINが作成されるカラムに関して特定の条件を満たすレコードだけを用いてエクステントを作成する。したがって、RDBMS1は、BRINが作成されるカラムに関して値が近接するエクステントを作成することができ、BRINを利用した検索性能の低下を抑止することができる。
また、実施例では、変換部14は、特定の条件を満たすレコードとして挿入レコードだけを用いてエクステントを作成する。したがって、変換部14は、BRINが作成されるカラムが時系列データである場合に、BRINが作成されるカラムの値が過去に作成されたエクステントに含まれたレコードを除いてエクステントを作成することができる。
また、実施例では、変換部14は、特定の条件を満たすか否かをBRINが作成されるカラムの値に基づいて判定する。したがって、変換部14は、BRINが作成されるカラムが時系列データである場合に、BRINが作成されるカラムの値が過去に作成されたエクステントに含まれたレコードを除いてエクステントを作成することができる。
また、実施例では、空行回収部16は、エクステントから無効行を削除した場合に、当該エクステントのBRINを満たすレコードをWOS13から取り出して当該エクステントに追加する。したがって、RDBMS1は、変換部14によりWOS13に残されたレコードをROS15に反映することができる。
また、実施例では、バックエンド部12はWOS13にTIDを追加する際に挿入又は更新であることを示すフラグを追加し、変換部14は当該フラグを用いて挿入レコードであるか更新レコードであるかを判定する。したがって、変換部14は、挿入レコードであるか更新レコードであるかを簡単に判定することができる。
1 RDBMS
1a DBバッファ
11 オリジナルテーブル
12 バックエンド部
13 WOS
14 変換部
15 ROS(グローバルROS)
16 空行回収部
17 SQLプロセッサ
17a ローカルROS
50 コンピュータ
51 メインメモリ
52 CPU
53 LANインタフェース
54 HDD
55 スーパーIO
56 DVI
57 ODD

Claims (4)

  1. コンピュータに、
    追記型の列形式のデータベースを更新するレコードを、該レコードが前記データベースへ挿入される挿入レコードである場合に該挿入レコードであることを示す付加情報を付加して、行型の書き込みバッファに蓄積し、
    前記書き込みバッファに情報が蓄積されたレコードより、前記付加情報を用いて、前記挿入レコードを、列形式に変換して前記データベースに追加する
    処理を実行させる更新反映プログラム。
  2. 空行を回収する際に、前記挿入レコードとは異なるレコードを列形式に変換して前記データベースに追加する処理を前記コンピュータにさらに実行させる請求項1に記載の更新反映プログラム。
  3. コンピュータが、
    追記型の列形式のデータベースを更新するレコードを、該レコードが前記データベースへ挿入される挿入レコードである場合に該挿入レコードであることを示す付加情報を付加して、行型の書き込みバッファに蓄積し、
    前記書き込みバッファに情報が蓄積されたレコードより、前記付加情報を用いて、前記挿入レコードを、列形式に変換して前記データベースに追加する
    処理を実行する更新反映方法。
  4. 追記型の列形式のデータベースを更新するレコードを、該レコードが前記データベースへ挿入される挿入レコードである場合に該挿入レコードであることを示す付加情報を付加して、行型の書き込みバッファに蓄積する蓄積部と、
    前記蓄積部により前記書き込みバッファに情報が蓄積されたレコードより、前記付加情報を用いて、前記挿入レコードを、列形式に変換して前記データベースに追加する変換部と
    を有する更新反映装置。
JP2017076281A 2017-04-06 2017-04-06 更新反映プログラム、更新反映方法及び更新反映装置 Active JP6897248B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017076281A JP6897248B2 (ja) 2017-04-06 2017-04-06 更新反映プログラム、更新反映方法及び更新反映装置
US15/925,823 US10929387B2 (en) 2017-04-06 2018-03-20 Relational database management method and update reflection apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017076281A JP6897248B2 (ja) 2017-04-06 2017-04-06 更新反映プログラム、更新反映方法及び更新反映装置

Publications (2)

Publication Number Publication Date
JP2018180739A JP2018180739A (ja) 2018-11-15
JP6897248B2 true JP6897248B2 (ja) 2021-06-30

Family

ID=63711006

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017076281A Active JP6897248B2 (ja) 2017-04-06 2017-04-06 更新反映プログラム、更新反映方法及び更新反映装置

Country Status (2)

Country Link
US (1) US10929387B2 (ja)
JP (1) JP6897248B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11182356B2 (en) 2019-05-23 2021-11-23 International Business Machines Corporation Indexing for evolving large-scale datasets in multi-master hybrid transactional and analytical processing systems
CN111597149B (zh) * 2020-04-27 2023-03-31 五八有限公司 一种数据库的数据清理方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07110784A (ja) * 1993-10-14 1995-04-25 Fujitsu Ltd 追加形式レコード格納方法及び装置
US6226411B1 (en) * 1997-01-31 2001-05-01 Fujitsu Limited Method for data compression and restoration
JP3763992B2 (ja) * 1999-03-30 2006-04-05 富士通株式会社 データ処理装置及び記録媒体
US6453314B1 (en) * 1999-07-30 2002-09-17 International Business Machines Corporation System and method for selective incremental deferred constraint processing after bulk loading data
US8819088B2 (en) * 2005-07-14 2014-08-26 International Business Machines Corporation Implementing storage management functions using a data store system
US20080005077A1 (en) * 2006-06-29 2008-01-03 Eggebraaten Thomas J Encoded version columns optimized for current version access
US9626421B2 (en) 2007-09-21 2017-04-18 Hasso-Plattner-Institut Fur Softwaresystemtechnik Gmbh ETL-less zero-redundancy system and method for reporting OLTP data
US8700674B2 (en) * 2009-07-14 2014-04-15 Hewlett-Packard Development Company, L.P. Database storage architecture
JP2013045208A (ja) * 2011-08-23 2013-03-04 Fujitsu Ltd データ生成方法、装置及びプログラム、検索処理方法、装置及びプログラム
US20150185104A1 (en) * 2014-01-02 2015-07-02 George P. Widas, III System for Calibrating a Tribometer Test Foot
JP6287441B2 (ja) 2014-03-26 2018-03-07 日本電気株式会社 データベース装置
US10671594B2 (en) * 2014-09-17 2020-06-02 Futurewei Technologies, Inc. Statement based migration for adaptively building and updating a column store database from a row store database based on query demands using disparate database systems
US10083203B2 (en) * 2015-08-11 2018-09-25 International Business Machines Corporation Reducing the cost of update, delete, and append-only insert operations in a database
JP2018045285A (ja) * 2016-09-12 2018-03-22 富士通株式会社 情報処理システム、制御装置、処理プログラム、及び処理方法
JP6781373B2 (ja) * 2016-10-05 2020-11-04 富士通株式会社 検索プログラム、検索方法、および検索装置
WO2018069998A1 (ja) * 2016-10-12 2018-04-19 富士通株式会社 処理単位サイズ算出プログラム、処理単位サイズ算出方法及び処理単位サイズ算出装置
JP2018181207A (ja) * 2017-04-20 2018-11-15 富士通株式会社 ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム

Also Published As

Publication number Publication date
US20180293270A1 (en) 2018-10-11
JP2018180739A (ja) 2018-11-15
US10929387B2 (en) 2021-02-23

Similar Documents

Publication Publication Date Title
US10146643B2 (en) Database recovery and index rebuilds
US8775386B2 (en) Device and method for generating copy of database
US8977597B2 (en) Generating and applying redo records
US10223386B2 (en) Read and delete input/output operation for database management
US10725994B2 (en) Automatically revising synopsis table structure
US10275481B2 (en) Updating of in-memory synopsis metadata for inserts in database table
US9916211B2 (en) Relational database recovery
Yang et al. F1 Lightning: HTAP as a Service
CN105426421A (zh) 一种时态监测数据快速可视化方法及系统
CN110096509A (zh) 大数据环境下实现历史数据拉链表存储建模处理的系统及方法
US20130006940A1 (en) Methods and apparatus related to completion of large objects within a db2 database environment
JP6897248B2 (ja) 更新反映プログラム、更新反映方法及び更新反映装置
Kleppmann Designing data-intensive applications
US10083192B2 (en) Deleted database record reuse
JP6508648B2 (ja) データベースを管理するシステム及び方法
US11372883B2 (en) Apparatus for calculating size of processing unit, method for calculating size of processing unit, and non-transitory computer-readable storage medium for storing program
Wust et al. Efficient logging for enterprise workloads on column-oriented in-memory databases
US20180150498A1 (en) Database management device, information processing system, and database management method
JP7024432B2 (ja) データベース管理システム、データ変換プログラム、データ変換方法及びデータ変換装置
JP7095800B2 (ja) 情報処理プログラム、情報処理方法及び情報処理装置
WO2018070011A1 (ja) ジョブ特定プログラム、ジョブ特定方法及びジョブ特定装置
CN115794960A (zh) 关系型数据库的管理方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201217

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210524

R150 Certificate of patent or registration of utility model

Ref document number: 6897248

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150