JP2005352561A - データベースサーバ及びデータベースクライアント - Google Patents

データベースサーバ及びデータベースクライアント Download PDF

Info

Publication number
JP2005352561A
JP2005352561A JP2004169832A JP2004169832A JP2005352561A JP 2005352561 A JP2005352561 A JP 2005352561A JP 2004169832 A JP2004169832 A JP 2004169832A JP 2004169832 A JP2004169832 A JP 2004169832A JP 2005352561 A JP2005352561 A JP 2005352561A
Authority
JP
Japan
Prior art keywords
data
search
decompression
unit
database
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
JP2004169832A
Other languages
English (en)
Other versions
JP4451722B2 (ja
Inventor
Kaori Chichibu
かおり 秩父
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2004169832A priority Critical patent/JP4451722B2/ja
Publication of JP2005352561A publication Critical patent/JP2005352561A/ja
Application granted granted Critical
Publication of JP4451722B2 publication Critical patent/JP4451722B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】 データを圧縮した形式で保持するデータベースシステムのデータ格納方式と取り出し方式において、サーバのデータベース格納領域の効率的使用を保ちつつ、通信データ量の削減、解凍処理にかかる負荷分散を図ることを課題とする。
【解決手段】 特定データ型圧縮部103は、特定型のカラムデータを単独で圧縮して、データ格納領域108に記憶させ、一括圧縮部104は、特定型以外の連続するカラムデータを一括して圧縮して、データ格納領域108に記憶させる。解凍識別部106は、検索結果となるカラムであって、特定型のカラムを解凍しない部分とし、検索文に含まれるそれ以外のカラムを解凍する部分として、解凍部107で解凍する。
【選択図】 図1

Description

本発明は、データを圧縮した形式で保持するデータベースシステムのデータ格納方式と取り出し方式に係り、サーバのデータベース格納領域の効率的使用を保ちつつ、通信データ量の削減、解凍処理にかかる負荷分散を図ることができる方式に関する。
データを圧縮した形式で保持するデータベースシステムのデータ格納方式と取り出し方式において、従来は、システム全体における各種資源の使用率の低減化、及び検索処理の高速化を図るため、レコード単位で受け取るデータをカラム単位で圧縮しデータベースに格納しておき、必要に応じて解凍して検索し、クライアント側に圧縮されたままのデータとカラム情報位置を送信してクライアント側でデータを解凍する方法が提案されている(例えば、特許文献1)。
しかし、このような従来のデータベースシステムのデータ格納方式と取り出し方式のうちレコードをカラム単位で圧縮する方法では、圧縮の単位が小さくなり、サーバのデータベース格納領域の削減効果が小さい。基幹業務に必要なデータだけでなくWeb上の様々なデータやログを格納するといった今日のデータベースの使い方を考慮すると、データベース格納領域の圧縮による削減はできるだけ大きいことが望ましい。また、クライアントへ送信する検索結果データは圧縮データであるが、検索結果データ以外にカラム位置情報を送信するため、通信量削減効果が小さい。さらに、検索時に必要に応じて解凍したデータであっても、クライアントへの送信データは圧縮データであるためクライアントで再度解凍する必要があり、サーバで解凍するデータ量が多くなるほど処理オーバヘッドが増大するという問題があった。
別の従来技術として、データベース処理の単純化、高速化、データベースの機密保持を可能にするために、固定長、可変長文字列データを固定長の内部符号に置換して格納する方法も提案されている(例えば、特許文献2)。
このように、固定長、可変長文字列データを固定長の内部符号に置換して格納する方法では、数値型のデータは圧縮されないため、サーバの格納領域の削減効果が小さい。また、解凍手段はサーバだけに存在し、クライアントへは全て解凍されたデータが送信されるため、通信量は削減されないという問題があった。
特開平8−314957号公報 特開昭63−121942号公報
この発明は上記のような問題点を解決するためになされたもので、データを圧縮した形式で保持するデータベースシステムのデータ格納方式と取り出し方式において、サーバのデータベース格納領域の効率的使用を保ちつつ、通信データ量の削減、解凍処理にかかる負荷分散を図ることを目的とする。
本発明に係るデータベースサーバは、
データベースクライアントからの要求を受けて、1つ又は複数のカラムからなるレコードデータを格納し、格納したデータを検索するデータベースサーバにおいて、
データベースクライアントからの要求に応じて、データを格納する処理を行うデータ格納処理部として、
特定のデータ型のカラムのカラムデータを単独で圧縮し、データ格納領域に記憶させる特定データ型圧縮部と、
特定のデータ型以外のカラムのカラムデータを一括して圧縮し、データ格納領域に記憶させる一括圧縮部とを有し、
データベースクライアントからの要求に応じて、データ格納領域を検索文に従って検索する処理を行う検索処理部として、
検索文に含まれるカラムのうち、検索結果に含まれるが検索キーでない特定のデータ型を解凍しない部分として識別し、検索文に含まれるカラムのうち、解凍しない部分以外のカラムを解凍する部分として識別する解凍識別部と、
検索結果となるカラムについて、解凍処理の有無を示すフラグを付加するデータ変換部とを有することを特徴とする。
本発明においては、サーバのデータベース格納領域の効率的使用を保ちつつ、通信データ量の削減、解凍処理にかかる負荷分散を図ることができる。
実施の形態1.
以下本発明を図面に示す実施例に基づいて説明する。図1はこの発明におけるデータベースシステムの構成図である。
図1において、データベースシステムを構成するデータベースサーバ1とデータベースクライアント2はネットワーク3を介して接続されている。また、データベースクライアント2は必要に応じて応用プログラム4から呼び出される。尚、データベースサーバ1とデータベースクライアント2はシステムを示す名称であって、1つの装置に相当する場合に限らない。
データベースサーバ1はデータ格納領域108を有し、データ格納領域108へは、データベース管理部であるデータ格納処理部101や検索処理部105を経てアクセスされる。
データ格納処理部101はデータベースに投入するデータを圧縮する圧縮部102を有し、圧縮部102は特定のデータ型だけを単独で圧縮する特定データ型圧縮部103と、特定データ型圧縮部103では圧縮されないデータ(特定のデータ型以外のカラムデータ)を一括して圧縮する一括圧縮部104とを有する。更に、カラム毎に特定のデータ型か否かを判定するデータ型判定部110と、特定のデータ型以外のカラムデータを一時的に記憶するデータ蓄積部111とを有する。
検索処理部105は、データベースクライアント2から送信された検索文を解析し、検索キーに含まれるカラムと検索結果に含まれるカラムを判別する検索文解析部112と、レコードデータを構成するカラムについて解凍するデータと解凍しないデータを判別する解凍識別部106と、解凍処理を行う解凍部107を有する。更に、解凍したデータと解凍しないデータを一時的にデータを蓄積するデータ蓄積部113と、検索結果を取得する検索結果取得部114と、解凍フラグを付加して検索結果を通信データに変換するデータ変換部115とを有する。
データベースクライアント2は、データベースサーバ1から送信されたデータが圧縮されたデータか否かを解凍識別部21で判別して、解凍が必要であれば解凍部22で解凍し、結果データを応用プログラム4へ渡すように構成されている。
応用プログラム4(検索依頼処理部の例)は、データベースクライアント2へ送信された圧縮されたままのデータを解凍せずに要求する場合に、解凍が不要である旨を、データベースクライアント2に対して指定する。解凍不要指定部23は、解凍が不要である旨を記憶する。データベースクライアント2は図1では1つであるが、複数接続されていてもよい。
次に動作について説明する。本説明では特定データ型圧縮部103で圧縮する特定のデータ型を固定長文字列型として説明する。特定のデータ型は、他の型であっても構わない。
まず、データベースサーバ1においてデータ格納領域108へ登録するデータ格納処理部101の動作を図3のフローチャートと図4のデータフローを用いて説明する。図3は本実施形態のデータ型を考慮したデータ格納処理を示すフローチャートである。図4は、データ格納処理に係るデータフローを示す図である。
データベースサーバ1は、まず入力部100で、データベースクライアント2より格納するレコードデータを受信し、データ型判定部110によりカラム毎に固定長文字列型であるかを判別する(ステップ51)。特定のデータ型(固定長文字列型)以外の場合は(ステップ52)、当該カラムのデータをデータ蓄積部111に蓄積しておく(ステップ54)。
特定のデータ型(固定長文字列型)の場合は(ステップ52)、前回の一括圧縮以降に蓄積されたカラムデータ群を、一括圧縮部104によりまとめて圧縮する(ステップ53)。このとき、蓄積されているカラムデータをクリアする。そして、特定のデータ型(固定長文字列型)の当該カラムデータを特定データ型圧縮部103により圧縮する(ステップ55)。
最後のカラムまで(ステップ56)、ステップ51からステップ55を繰り返す。この結果、データ格納領域108には図2に示すような形式で格納される。
図2は1レコードが4つ以上のカラムで構成され、それぞれのデータ型が順に整数型、日付型、固定長文字列型、整数型である場合の格納データの圧縮結果を示す。固定長文字列型データでない最初のカラムと2番目のカラムはまとめて圧縮され、3番目のカラムはこれのみで圧縮される。
次にデータベースサーバ1における検索処理部105の動作を図5のフローチャートと図6のデータフローを用いて説明する。図5は本実施形態の検索処理を示すフローチャートである。図6は、検索処理に係るデータフローを示す図である。
入力部100で受信した検索文を、検索文解析部112により解析する(ステップ61)。その結果、検索キーに使われるカラムと、検索結果に使われるカラムを抽出する。解凍識別部106は、検索結果に含まれるが検索キーとなっていない特定のデータ型(固定長文字列型)のカラムデータを除き、検索キー又は検索結果に含まれるカラムが格納されているデータを解凍部107により解凍する。更に解凍部107では解凍されたデータと圧縮されたままの特定のデータ型(固定長文字列型)のデータを対応付けて、データ蓄積部に記憶させる(ステップ62)。
検索結果取得部114は、各レコード毎に検索キーに含まれるカラムのデータをデータ蓄積部から読みこみ、検索条件を満たすか判定し、検索結果となるレコードを特定する(ステップ63)。そして、データ変換部113で、取得した検索結果を通信データに変換する際に、結果データ毎に解凍されているか否かを示す解凍フラグを付加し、圧縮されたままのカラムデータには解凍フラグを立て、これらをまとめて通信データとして出力部109からネットワーク3を介してデータベースクライアント2へ送信する(ステップ64)。
次に、データベースクライアント2における動作を図7のフローチャートを用いて説明する。図7は本実施形態のデータベースサーバ1からデータベースクライアント2へ送られた検索結果を応用プログラム4で取得するまでの手順を示すフローチャートである。
データベースクライアント2は、入力部20でデータベースサーバ1からの検索結果である通信データを受信し(ステップ71)、解凍識別部21で受信した通信データを結果データに分割し、解凍フラグにより結果データが圧縮データかどうかの判別をする(ステップ72)。圧縮データである場合は(ステップ73)、応用プログラム4により指定される解凍不要指定部23の内容が、解凍が必要と示されている場合に(ステップ74)、解凍部22により解凍する(ステップ75)。結果データの最後まで(ステップ76)、ステップ72からステップ75を繰り返す。このようにして通信データから復元された検索結果を応用プログラム4に渡す。
以上のように、サーバでの圧縮が1つのカラム単位ではなく、特定のデータ型の場合を除いて一括して圧縮するので、サーバのデータベース格納領域の効率的使用が図られる。
また、特定のデータ型の場合は圧縮したまま通信するので、全て解凍したデータを通信する場合に比べて通信データ量の削減が図られる。
さらに、サーバで解凍する部分とクライアントで解凍する部分に分けたので、解凍処理にかかる負荷分散が図られる。
そして、サーバで解凍した部分を再度クライアントで解凍することはないので、二度手間もない。
さらに、応用プログラムは必要に応じて圧縮したままのデータを受け取れるので、解凍の手間が省かれる。
実施の形態2.
以上の実施形態では、データ格納処理部102の動作をデータベースクライアント2で受信したデータの単位で格納するものとして説明したが、受信したデータをデータベースサーバ1で蓄積し、一定数のデータ量に達した時点で圧縮し格納してもよい。本実施の形態により、サーバのデータベース格納領域の削減効果が大きくなる。
実施の形態3.
以上の実施形態では、データベースクライアント2が、ネットワークを介してデータベースサーバ1にアクセスするものとして説明したが、データベースクライアント2をデータベースサーバ1と同じ装置に配しても同様の効果を得られる。
実施の形態4.
解凍不要の指定を行わない形態であっても、特定のデータ型以外のデータ群を一括して圧縮することにより、サーバのデータベース格納領域の効率的使用が図られる。
その場合には、図9のように、解凍不要指定部23は省かれ、図8のように解凍不要の判断(S74)の処理も行わない。
実施の形態5.
また、解凍不要の指定は、上述のように結果データ中に圧縮データと非圧縮データが混在している場合以外にも有効である。
例えば、分割した結果データがすべて圧縮されている前提の場合には、図10のように、すべての結果データについて解凍不要の判断を行う(ステップ74)。
データベースサーバ1とデータベースクライアント2は、コンピュータであり、各要素はプログラムにより処理を実行することができる。また、プログラムを記憶媒体に記憶させ、記憶媒体からコンピュータに読み取られるようにすることができる。
図11は、データベースサーバ1とデータベースクライアント2のハードウエア構成例を示す図である。バスに、演算装置1101、データ記憶装置1102、メモリ1103、通信インターフェース1104が接続されている。データ記憶装置1102は、例えばROM(Read Only Memory)やハードディスクである。メモリ1103は、通常RAM(Random Access Memory)である。
プログラムは、通常データ記憶装置1102に記憶されており、メモリ1103にロードされた状態で、順次演算装置1101に読み込まれ処理を行う。
システム構成を示す図である。 データ格納領域の構成例を示す図である。 データ格納処理のフローを示す図である。 データ格納処理のデータフローを示す図である。 検索処理のフローを示す図である。 検索処理のデータフローを示す図である。 クライアント処理のフローを示す図である。 実施の形態4に係るクライアント処理のフローを示す図である。 実施の形態4に係るクライアントの構成を示す図である。 実施の形態5に係るクライアント処理のフローを示す図である。 ハードウェア構成例を示す図である。
符号の説明
1 データベースサーバ、2 データベースクライアント、4 応用プログラム、20 入力部、21 解凍識別部、22 解凍部、23 解凍不要指定部、24 出力部。

Claims (4)

  1. データベースクライアントからの要求を受けて、1つ又は複数のカラムからなるレコードデータを格納し、格納したデータを検索するデータベースサーバにおいて、
    データベースクライアントからの要求に応じて、データを格納する処理を行うデータ格納処理部として、
    特定のデータ型のカラムのカラムデータを単独で圧縮し、データ格納領域に記憶させる特定データ型圧縮部と、
    特定のデータ型以外のカラムのカラムデータを一括して圧縮し、データ格納領域に記憶させる一括圧縮部とを有し、
    データベースクライアントからの要求に応じて、データ格納領域を検索文に従って検索する処理を行う検索処理部として、
    検索文に含まれるカラムのうち、検索結果に含まれるが検索キーでない特定のデータ型を解凍しない部分として識別し、検索文に含まれるカラムのうち、解凍しない部分以外のカラムを解凍する部分として識別する解凍識別部と、
    検索結果となるカラムについて、解凍処理の有無を示すフラグを付加するデータ変換部とを有することを特徴とするデータベースサーバ。
  2. データベースサーバへ検索を要求し、応答として検索結果を受信するデータベースクライアントにおいて、
    1つ又は複数のカラムデータからなる検索結果を、複数の分割されたデータとして、それぞれの解凍処理の有無を示すフラグとともに入力する入力部と、
    フラグにより解凍処理されていないデータを識別する解凍識別部と、
    解凍処理されていないデータを解凍する解凍部とを有することを特徴とするデータベースクライアント。
  3. データベースクライアントは、検索を依頼する検索依頼処理部と接続され、更に、
    検索依頼処理部から、解凍の要否を入力する入力部と、
    解凍の要否を記憶する解凍不要指定部とを有し、
    前記解凍部は、解凍不要指定部に解凍の要が記憶されている場合にデータを解凍することを特徴とする請求項2記載のデータベースクライアント。
  4. 検索依頼処理部からの依頼に応じて、データベースサーバへ検索を要求し、応答として検索結果を受信するデータベースクライアントにおいて、
    検索依頼処理部から解凍の要否を入力する入力部と、
    解凍の要否を記憶する解凍不要指定部と、
    解凍不要指定部に解凍の要が記憶されている場合にデータを解凍する解凍部とを有することを特徴とするデータベースクライアント。
JP2004169832A 2004-06-08 2004-06-08 データベースサーバ及びデータベースシステム Expired - Fee Related JP4451722B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004169832A JP4451722B2 (ja) 2004-06-08 2004-06-08 データベースサーバ及びデータベースシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004169832A JP4451722B2 (ja) 2004-06-08 2004-06-08 データベースサーバ及びデータベースシステム

Publications (2)

Publication Number Publication Date
JP2005352561A true JP2005352561A (ja) 2005-12-22
JP4451722B2 JP4451722B2 (ja) 2010-04-14

Family

ID=35587023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004169832A Expired - Fee Related JP4451722B2 (ja) 2004-06-08 2004-06-08 データベースサーバ及びデータベースシステム

Country Status (1)

Country Link
JP (1) JP4451722B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011145883A (ja) * 2010-01-14 2011-07-28 Fujitsu Ltd 圧縮装置、方法及びプログラム、並びに展開装置、方法及びプログラム
WO2016189639A1 (ja) * 2015-05-26 2016-12-01 株式会社日立製作所 計算機システム及び記憶制御方法
WO2017154065A1 (ja) * 2016-03-07 2017-09-14 株式会社日立製作所 計算機及びデータベース管理方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102752312B (zh) * 2012-07-17 2015-04-22 厦门游家网络有限公司 一种批量解压缩swf文件的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011145883A (ja) * 2010-01-14 2011-07-28 Fujitsu Ltd 圧縮装置、方法及びプログラム、並びに展開装置、方法及びプログラム
WO2016189639A1 (ja) * 2015-05-26 2016-12-01 株式会社日立製作所 計算機システム及び記憶制御方法
WO2017154065A1 (ja) * 2016-03-07 2017-09-14 株式会社日立製作所 計算機及びデータベース管理方法
JPWO2017154065A1 (ja) * 2016-03-07 2018-11-22 株式会社日立製作所 計算機及びデータベース管理方法
US10866941B2 (en) 2016-03-07 2020-12-15 Hitachi, Ltd. Computer and database management method

Also Published As

Publication number Publication date
JP4451722B2 (ja) 2010-04-14

Similar Documents

Publication Publication Date Title
US7924183B2 (en) Method and system for reducing required storage during decompression of a compressed file
US5870756A (en) Interchangeable storage medium containing program for processing data files thereupon to match a data file format to a computer system
US11221992B2 (en) Storing data files in a file system
US20050108189A1 (en) System and method for building a large index
EP3422204A1 (en) Method and apparatus for archiving database, and method and apparatus for searching archived database
CN110851409A (zh) 一种日志压缩、解压缩方法、设备及存储介质
US20050102304A1 (en) Data compressor, data decompressor, and data management system
JP2007537642A (ja) Xmlデータの構造化されたブロック単位の圧縮及び解凍方法及び装置
JP4451722B2 (ja) データベースサーバ及びデータベースシステム
US10162832B1 (en) Data aware deduplication
EP2690565B1 (en) Method and system for compressing data records and for processing compressed data records
US6654867B2 (en) Method and system to pre-fetch compressed memory blocks using pointers
JP2006100973A (ja) データ圧縮装置、及びデータ伸長装置
JPH10261969A (ja) データ圧縮方法および装置
US7528982B2 (en) Printer, print instruction terminal, printing system, printing program, and printing method
JP5570202B2 (ja) 構造化文書解析装置、構造化文書解析方法、及びコンピュータプログラム
JP6107524B2 (ja) 文書管理装置及び文書管理プログラム
CN117194355B (zh) 基于数据库的数据处理方法、装置和电子设备
US11994957B1 (en) Adaptive compression to improve reads on a deduplication file system
US20240111439A1 (en) Multi-domain configurable data compressor/de-compressor
US8392362B2 (en) Systems and methods associated with hybrid paged encoding and decoding
WO2024037002A1 (zh) 一种数据的缩减方法、装置、设备、存储介质及处理器
JP3190855B2 (ja) 圧縮データの復元方式
CN117076388A (zh) 一种文件处理的方法、装置、存储介质及电子设备
KR20010065763A (ko) 인터넷상에서의 유동적 다중채널과 가변적 스트림을이용한 전송정보 압축 및 해제장치 및 그 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091217

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees