JP5134989B2 - サーバ、データ転送方法及びプログラム - Google Patents
サーバ、データ転送方法及びプログラム Download PDFInfo
- Publication number
- JP5134989B2 JP5134989B2 JP2008021594A JP2008021594A JP5134989B2 JP 5134989 B2 JP5134989 B2 JP 5134989B2 JP 2008021594 A JP2008021594 A JP 2008021594A JP 2008021594 A JP2008021594 A JP 2008021594A JP 5134989 B2 JP5134989 B2 JP 5134989B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- server
- database
- result
- identifier
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Description
(1)構成
図1は、本実施の形態にかかるデータベースシステムの構成を例示する図である。データベースシステムは、アプリケーションプログラムが実行されるクライアントコンピュータ(以下、クライアントという)50と、データベースサーバ51とを有し、これらがネットワーク52を介して接続されて構成される。ネットワーク52は、例えば、LAN(Local Area Network)、イントラネット、イーサネット(登録商標)又はインターネットなどである。
次に、データベースサーバ51が行うデータ転送処理の手順について図6を用いて説明する。データベースサーバ51の要求受信部511は、クライアント50から送信された処理要求を受信する(ステップS1)。要求処理部512は、ステップS1で受信された処理要求を解析して、データ取得要求であるか又は実データ取得要求であるかを判断する(ステップS2)。例えば、データ取得要求には、取得対象のXMLデータを検索するための検索条件や、取得対象のXMLデータを指定する情報が含まれている。実データ取得要求には、取得対象の要素を指定するための上述のGIDが含まれている。そして、要求処理部512は、このような構成の処理要求について、ステップS2の判断を行い、処理要求がデータ取得要求であると判断した場合(ステップS2:NO)、データ取得要求に応じたXMLデータをデータベース510から取得する(ステップS3)。そして、要求処理部512は、ステップS3で取得したXMLデータの集合に対して加工を適宜行って、XML形式で表現される第1結果データを生成してこれを結果データ管理部513に記憶させる(ステップS4)。
・構造の重要度(pw:パスウェイト)
・サイズに基づく送信コスト(size)
優先度には、「pw」と「size」の逆数を掛け合わせた値を用いる。ここでは、優先度の値が大きいものほど、すぐに送信すべき優先度が高いものとする。
(a)要素e2について
・pw:titleは兄弟で1個しかないので「1」である。
・size:「4」と仮定する。
この結果、要素e2の優先度は、「1/4×1=1/4」と算出される。
(b)要素e3について
・pw:兄弟は1個しかない。上位pwと掛け合わせて「1×1=1」
・size:テキスト長が「10」であるので、「10」とする。
この結果、要素e3の優先度は、「1/10×1=1/10」と算出される。
(c)要素e4について
・pw:兄弟は1個しかない。上位pwと掛け合わせて「1×1=1」
・size:「4」と仮定する。
この結果、要素e4の優先度は、「1/4×1=1/4」と算出される。
(d)要素e5について
・pw:兄弟は2個ある。上位pwと掛け合わせて「1×1/2=1/2」
・size:「4」と仮定する。
この結果、要素e5の優先度は、「1/4×1/2=1/8」と算出される。
(e)要素e6について
・pw:兄弟は1個ある。上位pwと掛け合わせて「1/2×1=1/2」
・size:テキスト長が「20」であるので、「20」とする。
この結果、要素e6の優先度は、「1/2×1/20=1/40」と算出される。
(f)要素e7について
・pw:兄弟は2個ある。上位pwと掛け合わせて「1×1/2=1/2」
・size:テキスト長が「4」であるので、「4」とする。
この結果、要素e7の優先度は、「1/2×1/4=1/8」と算出される。
(g)要素e8について
・pw:兄弟は1個ある。上位pwと掛け合わせて「1/2×1=1/2」
・size:テキスト長が「25」であるので、「25」とする。
この結果、要素e8の優先度は、「1/2×1/25=1/50」と算出される。
次に、データベースシステムの第2の実施の形態について説明する。なお、上述の第1の実施の形態と共通する部分については、同一の符号を使用して説明したり、説明を省略したりする。
図11は、本実施の形態にかかるデータベースシステムの構成を示すブロック図である。本実施の形態にかかるデータベースシステムは、分散データベースシステムである。分散データベースシステムは、クライアント50と、分散データベース60とを有し、これらがネットワーク52を介して接続されて構成される。分散データベース60は1台のコーディネータサーバ61と複数台のデータベースサーバ70A〜70Cとを有する。
“/”:要素間は親子関係であることを示すオペレータ
“//”:要素間は先祖子孫関係であることを示すオペレータ
“.”:任意の要素
この例では、
・scanPath:<paper>要素のオブジェクトID集合を取り出す
・scanData:<paper>要素以下のテキスト要素を取り出す
・testContains:“XML”だけを含むテキスト要素を残す
・sendXML:残ったテキスト要素についてXML形式で表現される文字列を返す
というオペレータ及びオペランドの系列から構成されている。
次に、分散データベース60が行うデータ転送処理の手順について図15〜16を用いて説明する。図15は、データ転送処理のうち、コーディネータサーバ61が行う処理の手順を示すフローチャートである。コーディネータサーバ61の要求受信部610は、クライアント50から送信された処理要求を受信する(ステップS20)。要求処理部611は、ステップS20で受信された処理要求が検索要求(クエリ)かデータ取得要求かを判断する(ステップS21)。処理要求がクエリである場合(ステップS21:YES)、要求処理部611は、当該クエリから、条件に該当するXMLデータを各データベースサーバ70A〜70Cに検索させるためのコードを生成し(ステップS22)、これらを各々データベースサーバ70A〜70Cに送信する(ステップS23)。
なお、本発明は前記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。また、以下に例示するような種々の変形が可能である。
上述した各実施の形態において、コーディネータサーバ61で実行される各種プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、当該各種プログラムを、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成しても良い。データベースサーバ70で実行される各種プログラムについても同様である。
上述の各実施の形態においては、ID範囲決定部は、閾値を用いてID化の範囲を決定したが、これに限らない。例えば、ID範囲決定部は、処理結果として送信可能な結果データの転送サイズの総量を指定して、優先度が高いものから順に要素を結果データに含められるだけ含めて、含められない要素をGIDに変換するようにしても良い。
上述の各実施の形態においては、GIDを特殊タグにより表現したが、これに限らず、例えば、PI(Processing Instructions)を用いて表現しても良い。PIとは、XMLデータの中に、あるアプリケーションへの命令を埋め込むために提供されているものである。SAXなどのイベントハンドラベースのXMLパーサであれば、PIのイベントハンドラで定義しておくことで、クライアント50のアプリケーション側でGIDを検出することができる。
上述の第2の実施の形態においては、データベースサーバ70の有するID範囲決定部714と同様に、要素の優先度を算出して、要素の優先度に基づいて、要素のGID化を判断する機能を、コーディネータサーバ61が有するように構成しても良い。図17は、コーディネータサーバ61がID範囲決定部615を有する構成を例示する図である。このような構成によれば、データベースサーバ70のみならず、コーディネータサーバ61でもID化の範囲を決定することで、クライアント50の応答性をより改善することができる。
51 データベースサーバ
52 ネットワーク
60 分散データベース
61 コーディネータサーバ
70,70A,70B,70C データベースサーバ
510 データベース
511 要求受信部
512 要求処理部
513 結果データ管理部
514 ID範囲決定部
515 結果送信部
610 要求受信部
611 要求処理部
612 結果データ管理部
613 結果受信部
614 結果送信部
615 範囲決定部
700,700A、700B,700C データベース
711 要求受信部
712 要求処理部
713 結果データ管理部
714 ID範囲決定部
715 結果送信部
Claims (15)
- 複数の要素を含むデータの取得を要求する第1処理要求をクライアントから受信する受信手段と、
前記第1処理要求に応じて、データベースから該当の第1データと当該第1データ内における要素間の関連及び各要素の位置付けを示すデータ構造情報とを取得する取得手段と、
前記第1データに含まれる各要素に対して、前記データ構造情報を用いて、各要素を識別子にするか否かを判断する判断手段と、
前記第1データに含まれる要素のうち、前記判断手段によって前記識別子にすると判断された第1要素を第1識別子にすることにより、当該第1識別子と、前記第1データに含まれる要素のうち前記第1要素以外の要素とを含む第2データを生成するデータ生成手段と、
前記第2データを前記クライアントに送信する結果送信手段とを備える
ことを特徴とするサーバ。 - 前記識別子はデータベース識別情報及びオブジェクトIDであることを特徴とする請求項1記載のサーバ。
- 前記判断手段は、
前記第1データに含まれる各要素に対して、前記データ構造情報を用いて、送信の優先度合を示す優先度を算出する算出手段と、
前記優先度と、予め定められた閾値とを用いて、各前記要素を識別子にするか否かを判断する優先判断手段とを有する
ことを特徴とする請求項1又は2に記載のサーバ。 - 前記受信手段は、前記処理要求を、前記クライアントと接続される他のサーバを介して前記クライアントから受信し、
前記結果送信手段は、前記第2データを前記他のサーバを介して前記クライアントに送信する
ことを特徴とする請求項1乃至3に記載のサーバ。 - 前記受信手段は、データの検索を要求する第2処理要求に基づいて当該サーバが実行可能な形式に変換された処理コードを前記他のサーバを介して前記クライアントから受信し、
前記取得手段は、
前記処理コードを実行することにより、前記データベースから前記第1データ及び前記データ構造情報を読み出す読出手段と、
前記第1データを読み出した読出結果を示す結果データを生成する第1生成手段と、
前記結果データを前記他のサーバに送信する第1送信手段とを有する
ことを特徴とする請求項4に記載のサーバ。 - 前記判断手段は、前記受信手段が前記処理コードを受信した後、前記第1データ及び前記データ構造情報の取得を要求する第3処理要求を前記他のサーバを介して前記クライアントから受信した場合、前記読出手段によって読み出された前記第1データに含まれる各要素に対して、前記データ構造情報を用いて、各要素を識別子にするか否かを判断する
ことを特徴とする請求項5に記載のサーバ。 - 前記第1識別子にされた前記第1要素の取得を要求する第4処理要求を前記受信手段が受信した場合、前記第1データに含まれている要素であって前記第1識別子にされる前の前記第1要素を含む第3データを生成する第2生成手段と、
前記第3データを、前記他のサーバを介して前記クライアントに送信する第2送信手段とを更に備える
ことを特徴とする請求項6に記載のサーバ。 - 前記データ生成手段は、前記第1要素を、前記サーバを特定するサーバ特定情報と、前記第1データにおける前記第1要素を特定する要素特定情報とを含む第1識別子にした第2データを生成する
ことを特徴とする請求項7に記載のサーバ。 - 前記第2生成手段は、前記第1識別子に含まれる前記サーバ特定情報によって前記他のサーバから特定されたサーバである場合、前記第1識別子に含まれる要素特定情報によって特定される前記第1要素の取得を要求する第4処理要求を前記受信手段が受信した場合、前記第1識別子に含まれる要素特定情報によって特定される前記第1要素を含む第3データを生成する
ことを特徴とする請求項8に記載のサーバ。 - 前記データベースは、複数に分散されており、そのうちの少なくとも1つの第1データベースを備え、
前記取得手段は、受信された前記第1処理要求に応じて、前記第1データベースから該当の第1データ及び前記データ構造情報を取得する
ことを特徴とする請求項1乃至9のいずれか一項に記載のサーバ。 - 前記データベースは、複数に分散されており、
複数に分散されたデータベースを有する少なくとも1つのデータベースサーバと接続され、
前記取得手段は、受信された前記第1処理要求に応じて、少なくとも1つの前記データベースサーバに対して前記データの取得を要求する取得要求を行い、当該データベースサーバから前記第1データ及び前記データ構造情報を取得する
ことを特徴とする請求項1に記載のサーバ。 - 前記データ、前記第1データ及び前記第2データのうち少なくとも1つは、XML(Extensible Markup Language)により表現されるデータであり、階層構造を有するデータである
ことを特徴とする請求項1乃至10のいずれか一項に記載のサーバ。 - 前記判断手段は、前記データ構造情報を用いて、階層構造における要素の深さ、要素のサイズ及び同一種類の要素が繰り返し表れる数の少なくとも1つを用いて、各要素を識別子にするか否かを判断する
ことを特徴とする請求項11に記載のサーバ。 - 受信手段と、取得手段と、判断手段と、データ生成手段と、結果送信手段とを備えるサーバにおいて実現される方法であって、
前記受信手段が、複数の要素を含むデータの取得を要求する第1処理要求をクライアントから受信する受信ステップと、
前記取得手段が、受信された前記第1処理要求に応じて、データベースから該当の第1データと当該第1データ内における要素間の関連及び各要素の位置付けを示すデータ構造情報とを取得する取得ステップと、
前記判断手段が、取得された前記第1データに含まれる各要素に対して、前記データ構造情報を用いて、各要素を識別子にするか否かを判断する判断ステップと、
前記データ生成手段が、前記第1データに含まれる要素のうち、前記判断ステップで前記識別子にすると判断された第1要素を第1識別子にすることにより、当該第1識別子と、前記第1データに含まれる要素のうち前記第1要素以外の要素とを含む第2データを生成するデータ生成ステップと、
前記結果送信手段が、生成された前記第2データを前記クライアントに送信する結果送信ステップとを含む
ことを特徴とするデータ転送方法。 - 請求項14に記載された方法をコンピュータで実行させることを特徴とするデータ転送プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008021594A JP5134989B2 (ja) | 2008-01-31 | 2008-01-31 | サーバ、データ転送方法及びプログラム |
US12/357,468 US8352481B2 (en) | 2008-01-31 | 2009-01-22 | Server, data transfer method, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008021594A JP5134989B2 (ja) | 2008-01-31 | 2008-01-31 | サーバ、データ転送方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009181463A JP2009181463A (ja) | 2009-08-13 |
JP5134989B2 true JP5134989B2 (ja) | 2013-01-30 |
Family
ID=40932666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008021594A Expired - Fee Related JP5134989B2 (ja) | 2008-01-31 | 2008-01-31 | サーバ、データ転送方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8352481B2 (ja) |
JP (1) | JP5134989B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5172931B2 (ja) | 2010-10-25 | 2013-03-27 | 株式会社東芝 | 検索装置、検索方法および検索プログラム |
US9043363B2 (en) * | 2011-06-03 | 2015-05-26 | Oracle International Corporation | System and method for performing memory management using hardware transactions |
KR101758558B1 (ko) * | 2016-03-29 | 2017-07-26 | 엘에스산전 주식회사 | 에너지 관리 서버 및 그를 갖는 에너지 관리 시스템 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3747525B2 (ja) * | 1996-08-28 | 2006-02-22 | 株式会社日立製作所 | 並列データベースシステム検索方法 |
US6564219B1 (en) * | 1998-11-19 | 2003-05-13 | Emc Corporation | Method and apparatus for obtaining an identifier for a logical unit of data in a database |
JP2001236261A (ja) * | 2000-02-24 | 2001-08-31 | Mitsubishi Electric Corp | 構造化文書閲覧システム及び構造化文書閲覧方法及びサーバ装置及び閲覧装置及びプログラムを記録したコンピュータ読み取り可能な記録媒体及びプロキシサーバ装置 |
EP1150213B1 (en) * | 2000-04-28 | 2012-01-25 | TELEFONAKTIEBOLAGET LM ERICSSON (publ) | Data processing system and method |
JP4774145B2 (ja) * | 2000-11-24 | 2011-09-14 | 富士通株式会社 | 構造化文書圧縮装置および構造化文書復元装置並びに構造化文書処理システム |
JP4163870B2 (ja) * | 2001-12-28 | 2008-10-08 | 富士通株式会社 | 構造化文書変換装置 |
JP4068570B2 (ja) * | 2002-02-08 | 2008-03-26 | 富士通株式会社 | 文書配信装置、文書受信装置、文書配信方法、文書配信プログラム、文書配信システム |
JP4231261B2 (ja) * | 2002-09-12 | 2009-02-25 | 株式会社エヌ・ティ・ティ・ドコモ | 同一性判定装置 |
JP4247135B2 (ja) * | 2004-02-10 | 2009-04-02 | 株式会社東芝 | 構造化文書記憶方法、構造化文書記憶装置、構造化文書検索方法 |
JP4408717B2 (ja) * | 2004-02-19 | 2010-02-03 | 株式会社ジャストシステム | 情報処理システム、蓄積装置、処理装置、蓄積方法、処理方法、ならびに、プログラム |
-
2008
- 2008-01-31 JP JP2008021594A patent/JP5134989B2/ja not_active Expired - Fee Related
-
2009
- 2009-01-22 US US12/357,468 patent/US8352481B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20090198705A1 (en) | 2009-08-06 |
US8352481B2 (en) | 2013-01-08 |
JP2009181463A (ja) | 2009-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7080067B2 (en) | Apparatus, method, and program for retrieving structured documents | |
US8949225B2 (en) | Integrating applications with an RDF repository through a SPARQL gateway | |
US7668806B2 (en) | Processing queries against one or more markup language sources | |
JP6213247B2 (ja) | データ記憶システム、データ記憶システムで実行されるプログラム及び方法 | |
JP4516566B2 (ja) | Xml文書とリレーショナルデータと間のマッピングにおける階層情報の保持 | |
JP5843965B2 (ja) | 検索装置、検索装置の制御方法及び記録媒体 | |
US8983931B2 (en) | Index-based evaluation of path-based queries | |
US7797310B2 (en) | Technique to estimate the cost of streaming evaluation of XPaths | |
JP6720641B2 (ja) | 多言語データティアのデータ制約 | |
JP4384247B2 (ja) | 拡張可能マークアップ言語(xml)のための軽量なアプリケーションプログラムインターフェース(api) | |
US8762410B2 (en) | Document level indexes for efficient processing in multiple tiers of a computer system | |
US8117186B2 (en) | Database processing apparatus, information processing method, and computer program product | |
US8825696B2 (en) | Computer readable storage medium recording database search program, database search device, and database search method | |
US20070016605A1 (en) | Mechanism for computing structural summaries of XML document collections in a database system | |
JP5134989B2 (ja) | サーバ、データ転送方法及びプログラム | |
JP2009544102A (ja) | Xml文書の、意味論を意識した処理 | |
JP4854542B2 (ja) | 文書検索システム及び文書検索方法 | |
US8073841B2 (en) | Optimizing correlated XML extracts | |
JP3914081B2 (ja) | アクセス権限設定方法および構造化文書管理システム | |
JP2006127235A (ja) | 構造化文書管理システム、構造化文書管理方法及びプログラム | |
JP2006031377A (ja) | 構造化文書管理装置、検索装置、記憶方法、検索方法及びプログラム | |
WO2012063451A1 (ja) | 情報処理装置 | |
JP4724177B2 (ja) | Xmlデータにアクセスするためのインデックス | |
US8200679B2 (en) | Estimating cardinalities of XML table constructs within queries | |
Bieliková et al. | Lightweight semantics over web information systems content employing knowledge tags |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100901 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120927 |
|
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: 20121016 |
|
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: 20121112 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151116 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151116 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |