JP4920303B2 - データ処理システム - Google Patents

データ処理システム Download PDF

Info

Publication number
JP4920303B2
JP4920303B2 JP2006138114A JP2006138114A JP4920303B2 JP 4920303 B2 JP4920303 B2 JP 4920303B2 JP 2006138114 A JP2006138114 A JP 2006138114A JP 2006138114 A JP2006138114 A JP 2006138114A JP 4920303 B2 JP4920303 B2 JP 4920303B2
Authority
JP
Japan
Prior art keywords
data
server
memory
processing
compression means
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.)
Expired - Fee Related
Application number
JP2006138114A
Other languages
English (en)
Other versions
JP2007310592A (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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute 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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2006138114A priority Critical patent/JP4920303B2/ja
Publication of JP2007310592A publication Critical patent/JP2007310592A/ja
Application granted granted Critical
Publication of JP4920303B2 publication Critical patent/JP4920303B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

この発明はデータ処理システムに係り、特に、APサーバ及びDBサーバを備えたデータ処理システムにおける検索速度の高速化を実現する技術に関する。
クライアントサーバ型システムの進展に伴い、より大規模な情報処理の要求に応えるために、データの表示をするクライアントの他にデータの加工を行うAPサーバ及びデータの格納をするDBサーバを備えた、いわゆる三層構造のクライアントサーバシステムが普及してきている。
また、処理速度の向上を図るため、複数のAPサーバを並列配置させることで負荷を分散させることも行われている。
特開2005−165610
ところで、APサーバは廉価なPCサーバで構成することができるため、設置台数を増加させることで処理速度を向上させることは比較的容易であるが、DBサーバについてはデータの同期を維持する必要性があるため、APサーバのように簡単に分散処理に移行することはできない。
もちろん、データベースシステムのベンダ各社は、様々な技術を駆使してソフトウェア及びハードウェアの両面からDBサーバ自体の高速化を図ってきており、その結果一定の成果は上がっているが、その分システムの価格が上昇することは否めない。
また、今後ともクライアントサーバ型システムに担わされるデータベースの規模が増大を続ける限り、いずれはディスクI/O(データの読み書き)速度が壁となり、DBサーバの性能アップでは対応できない時期が来るものと予想される。
この発明は、従来のデータ管理システムが抱えていた上記の問題を解決するために案出されたものであり、DBサーバ自体の性能アップに依存するのではなく、APサーバのメモリ上にDBサーバのテーブルを再現することにより、検索速度の向上を実現することを目的としている。
上記の目的を達成するため、この発明に係るデータ処理システムは、DBサーバとAPサーバを備えたデータ処理システムであって、上記DBサーバが、データベース管理システムと、テーブルを格納したデータベースを備え、上記APサーバが、メモリと、上記DBサーバにSQL文を発行し、上記テーブルに格納されたデータの読み出しを指令するデータ読み出し手段と、DBサーバから送信されたデータを木構造のデータに変換し、上記メモリに格納するデータ圧縮手段と、上記木構造のデータに対し検索処理を実行する手段を備え、上記データ圧縮手段は、上記DBサーバから送信された各レコードの中で、少なくとも最上位のデータ項目については、値が相互に重複する場合に一つのレコードのデータを残して他のレコードのデータを削除し、削除されたデータに従属していた下位のデータを残されたデータに関連付ける第1の処理と、残された最上位のデータ項目を一つの根の元に結合させ、木構造のデータを生成する第2の処理を実行するものであり、さらに、上記データ読み出し手段は上記SQL文において一または複数のデータ項目の値を指定することにより、上記DBサーバから上記テーブルをグループに分割して読み出し、上記データ圧縮手段は上記第1の処理をこのグループ単位で実行するものとし、このデータ圧縮手段による一のグループに対する上記第1の処理が完了した時点で、上記データ読み出し手段による次のグループの読み出しが実行され、全てのグループについて上記第1の処理が完了した時点で、データ圧縮手段は上記第2の処理を実行することを特徴としている。
この発明に係るデータ処理システムにあっては、D Bサーバのデータベース内に格納されていたテーブルが、ディスクに比べて高速アクセスが可能なA Pサーバのメモリ上に木構造のデータとして圧縮された形で再現されるため、APサーバはDBサーバにアクセスすることなく、したがってディスクI/Oを発生させることもなく、必要なデータの高速検索が可能となり、処理速度の飛躍的な向上を実現できる。
また、表形式のデータを木構造のデータに変換する過程で重複するデータ項目のデータが除去され、全体のデータ量が圧縮される結果、比較的容量の小さいAPサーバのメモリでも効率的に必要データを収容することが可能となる。
しかも、APサーバがレコードをDBサーバから取り出すに際し、テーブル全体を一度に受け取るのではなく、特定のデータ項目の値を指定することにより、グループ単位に分割して受け取り、当該グループについて圧縮処理が完了した時点で次のグループに係るレコードを受け取る方式を採用しているため、比較的大きなテーブルであってもAPサーバのメモリ上に格納することが可能となる。
図1は、この発明に係るデータ処理システム10の全体構成図であり、このシステム10は、複数のAPサーバ12と、DBサーバ14と、ロードバランサ(負荷分散装置)16とを備えている。
ロードバランサ16と各APサーバ12間、及び各APサーバ12とDBサーバ14間はネットワークによって接続されている。
また、各APサーバ12に対しては、イントラネット18やインターネット等のネットワーク及びロードバランサ16を介して多数のクライアント端末20が接続されている。
各APサーバ12は、データ処理部22と、データ圧縮部24と、メモリ26とを備えている。
各APサーバ12のハードディスク(図示省略)には、OS及びこのシステム専用のアプリケーションプログラムがセットアップされており、APサーバ12のCPUがこれらのプログラムに従って動作することにより、上記のデータ処理部22及びデータ圧縮部24が実現される。
DBサーバ14は、データベース管理システム(DBMS)28と、業務処理用の各種テーブルが格納されたデータベース30を備えている。
データベース管理システム28は、データベース30を管理し、データベース30に格納されたデータの入出力、更新、および所定の演算などを行う。
図2は、データベース30に格納されたテーブルの一例を示すものであり、このテーブルは、日付、店Cd(店コード)、商品Cd(商品コード)のデータ項目を備えている。
これらのデータ項目間には概念上の階層構造が存在し、日付は最上位項目、店Cdは中位項目、商品Cdは最下位項目に該当する。
ロードバランサ16は、クライアント端末20から送信されたリクエストを、各APサーバ12にかかっている負荷に応じて分散する役割を果たす。
クライアント端末20は、PC等のコンピュータよりなり、OSの他に、Webブラウザプログラムや専用のアプリケーションプログラムがセットアップされている。
以下、図3及び図4のフローチャートに従い、このシステム10における処理手順を説明する。
まず、APサーバ12のデータ処理部22が起動すると(S10)、DBサーバ14に対してSQL文を発行し、データの抽出をリクエストする(S12)。
この際データ処理部22は、例えば図2のテーブルに格納された各レコードを、日付×店コードで特定されるグループ単位で、かつ日付、店コード、商品コードに基づいて昇順に整列させた状態で送信することを指令するSQL文を生成し、DBサーバ14に送信する。
DBサーバ14のデータベース管理システム28から対応のレコードが日付×店コードのグループ単位で送信されると、データ処理部22はこれをデータ圧縮部24に渡す(S14)。
データ圧縮部24は、各レコードの日付と店コードに重複する値が存在するか否かをチェックし、重複がある場合には一つの日付及び一つの店コードを残し、他のデータを除去した後、メモリ26に各データを格納する(S16)。
一つのグループに関してデータの圧縮(重複データの削除)及びメモリ26への格納が完了すると、データ処理部22は次のグループ(日付×店コード)に属するレコードの抽出を指令するSQL文をDBサーバ14に発行し(S18、S12)、データ圧縮部24によるデータの圧縮及びメモリ26への格納が実行される(S14、S16)。
APサーバ12のデータ処理部22及びデータ圧縮部24は、対象となるテーブル上の全グループについて処理が完了するまで、S12〜S16のステップを繰り返す(S18)。
図5は、メモリ26に格納されたデータのイメージを示すものであり、(a)は2006年3月15日の店コード:600店に係るグループのデータに対応している。図示の通り、日付(20060315)及び店コード(600)のデータは先頭レコードについてのみ残されており、他のレコードからは削除されている。この時点で、日付及び店コードが削除されたレコードに係る商品コードのデータは、先頭レコードの商品コードと共に配列として残された日付及び店コードに関連付けられている。
また、(g)は2006年3月17日の店コード:601店に係るグループのデータに対応している。
つぎにデータ圧縮部24は、各グループの中で日付を同じくするもの同士を一つの日付の下に集約し、それぞれを一つの根(root)の元に結合する(この時点で重複する日付は削除される)。
この結果、図6に示すように、DBサーバ14のデータベース30内に格納されていたレコードが、APサーバ12のメモリ26上に木構造のデータとして再現される(S20)。
図2のテーブルにおいては、各レコード毎に日付及び店コードのデータを備えていたが、図5に示した木構造のデータの場合、上位のデータ項目である日付については一切の重複がない形で集約され、下位のデータ項目である店コードについても同一日付のグループ内では重複が存在しない形で集約されているため、データ容量の大幅な圧縮が達成されている。
ここで、クライアント端末20からの検索リクエストをロードバランサ16経由でAPサーバ12が受信すると(図4のS22)、データ処理部22はメモリ26上に形成された木構造のデータに対して検索条件に該当するデータの抽出処理を実行し(S24)、その結果をクライアント端末22に送信する(S26)。
このデータ処理システム10にあっては、DBサーバ14のデータベース30内に格納されていたテーブルが、ディスクに比べて高速アクセスが可能なAPサーバ12のメモリ26上に木構造のデータとして圧縮された形で再現されるため、APサーバのデータ処理部22はDBサーバ14にアクセスすることなく、したがってディスクI/Oを発生させることもなく、必要なデータの高速検索が可能となる。
また、表形式のデータを木構造のデータに変換する過程で重複するデータ項目のデータが除去され、全体のデータ量が圧縮される結果、比較的容量の小さいAPサーバ12のメモリ26(一般に2GB程度)でも効率的に必要データを収容することが可能となる。
さらに、レコードをDBサーバ14から取り出すに際し、テーブル全体を一度に受け取るのではなく、日付及び店コードのデータ項目の値を指定することにより、グループ単位に分割して受け取り、当該グループについて圧縮処理が完了した時点で次のグループに係るレコードを受け取る方式を採用しているため、比較的大きなテーブルであってもAPサーバ12のメモリ26上に格納できるようになる。
この発明に係るデータ処理システムの全体構成図である。 DBサーバのデータベースに格納されたテーブルの一例を示す図である。 このシステムにおける処理手順を示すフローチャートである。 このシステムにおける処理手順を示すフローチャートである。 メモリに格納されたグループデータを示すイメージ図である。 メモリ上に形成された木構造のデータ構造を示すイメージ図である。
符号の説明
10 データ処理システム
12 APサーバ
14 DBサーバ
16 ロードバランサ
18 イントラネット
20 クライアント端末
22 データ処理部
24 データ圧縮部
26 メモリ
28 データベース管理システム
30 データベース

Claims (1)

  1. DBサーバとAPサーバを備えたデータ処理システムであって、
    上記DBサーバが、データベース管理システムと、テーブルを格納したデータベースを備え、
    上記APサーバが、メモリと、上記DBサーバにSQL文を発行し、上記テーブルに格納されたデータの読み出しを指令するデータ読み出し手段と、DBサーバから送信されたデータを木構造のデータに変換し、上記メモリに格納するデータ圧縮手段と、上記木構造のデータに対し検索処理を実行する手段を備え、
    上記データ圧縮手段は、上記DBサーバから送信された各レコードの中で、少なくとも最上位のデータ項目については、値が相互に重複する場合に一つのレコードのデータを残して他のレコードのデータを削除し、削除されたデータに従属していた下位のデータを残されたデータに関連付ける第1の処理と、残された最上位のデータ項目を一つの根の元に結合させ、木構造のデータを生成する第2の処理を実行するものであり、
    さらに、上記データ読み出し手段は上記SQL文において一または複数のデータ項目の値を指定することにより、上記DBサーバから上記テーブルをグループに分割して読み出し、上記データ圧縮手段は上記第1の処理をこのグループ単位で実行するものとし、
    このデータ圧縮手段による一のグループに対する上記第1の処理が完了した時点で、上記データ読み出し手段による次のグループの読み出しが実行され、
    全てのグループについて上記第1の処理が完了した時点で、データ圧縮手段は上記第2の処理を実行することを特徴とするデータ処理システム。
JP2006138114A 2006-05-17 2006-05-17 データ処理システム Expired - Fee Related JP4920303B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006138114A JP4920303B2 (ja) 2006-05-17 2006-05-17 データ処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006138114A JP4920303B2 (ja) 2006-05-17 2006-05-17 データ処理システム

Publications (2)

Publication Number Publication Date
JP2007310592A JP2007310592A (ja) 2007-11-29
JP4920303B2 true JP4920303B2 (ja) 2012-04-18

Family

ID=38843398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006138114A Expired - Fee Related JP4920303B2 (ja) 2006-05-17 2006-05-17 データ処理システム

Country Status (1)

Country Link
JP (1) JP4920303B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5545085B2 (ja) * 2010-07-08 2014-07-09 富士通株式会社 情報検索装置、情報検索方法及びプログラム
JP6509719B2 (ja) * 2015-12-21 2019-05-08 Kddi株式会社 構造データ生成装置、検索装置、構造データ生成方法及び構造データ生成プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06203078A (ja) * 1992-12-28 1994-07-22 Sony Corp 情報検索方法およびその装置
JPH07262018A (ja) * 1994-03-25 1995-10-13 Toshiba Corp 構造化型知識データベース作成方法
US6950823B2 (en) * 2002-12-23 2005-09-27 International Business Machines Corporation Transparent edge-of-network data cache
JP2005165610A (ja) * 2003-12-02 2005-06-23 Nomura Research Institute Ltd トランザクション処理システムおよび方法

Also Published As

Publication number Publication date
JP2007310592A (ja) 2007-11-29

Similar Documents

Publication Publication Date Title
US7447839B2 (en) System for a distributed column chunk data store
JP6388655B2 (ja) 選択性用データビットインターリーブによるリレーショナルデータベースのマルチカラムインデックスの生成
US8214388B2 (en) System and method for adding a storage server in a distributed column chunk data store
US10013440B1 (en) Incremental out-of-place updates for index structures
US7464247B2 (en) System and method for updating data in a distributed column chunk data store
US8060720B2 (en) System and method for removing a storage server in a distributed column chunk data store
US8555018B1 (en) Techniques for storing data
US7457935B2 (en) Method for a distributed column chunk data store
US10061834B1 (en) Incremental out-of-place updates for datasets in data stores
US20050203973A1 (en) Long term data protection system and method
US9760453B2 (en) Two-tier failover service for data disaster recovery
US20120323852A1 (en) Database redistribution utilizing virtual partitions
US9323791B2 (en) Apparatus and method for expanding a shared-nothing system
CN110297869B (zh) 一种ai数据仓库平台及操作方法
CN108021717B (zh) 一种轻量级嵌入式文件系统的实现方法
WO2014058711A1 (en) Creation of inverted index system, and data processing method and apparatus
WO2017156855A1 (en) Database systems with re-ordered replicas and methods of accessing and backing up databases
CN112912870A (zh) 租户标识符的转换
JP4969151B2 (ja) データ処理システム
JP4920303B2 (ja) データ処理システム
JP4850581B2 (ja) データ処理システム
JP4850580B2 (ja) データ処理システム
JP2007310845A (ja) データ処理システム
Thomasian Storage Systems: Organization, Performance, Coding, Reliability, and Their Data Processing, October 13, 2021, Author: Alexander Thomasian
US12050549B2 (en) Client support of multiple fingerprint formats for data file segments

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110705

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110913

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

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

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees