In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf ·...

13
Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved. Page : 1 In-Memory XML Database カレアレア) カレアレア) Fly for Zero Latency Fly for Zero Latency” 2005314株式会社セック マーケティング本部 川口 浩司 Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved. Page : 2 株式会社セックについて 株式会社セックについて 会社理念「社会の安全と発展のために 戦略キーワード「 Realtime@net セックは、 技術重視のシステムインテグレータ(経済産業省 SI 認定企業)です。 セックのビジネスは、 プロフェッショナルなお客様へSI サービス (システムインテグレーション)をご提供します。 SIサービスの内容は、 高度な技術が要求される、「社会公共分野」と「先端分野」の リアルタイムシステムの開発と、ソリューション製品のご提供です。

Transcript of In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf ·...

Page 1: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

1

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 1

In-Memory XML Database

((カレアレア)カレアレア)

““Fly for Zero LatencyFly for Zero Latency””

2005年3月14日

株式会社セックマーケティング本部

川口 浩司

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 2

株式会社セックについて株式会社セックについて

会社理念「社会の安全と発展のために」戦略キーワード「Realtime@net 」

• セックは、技術重視のシステムインテグレータ(経済産業省 SI 認定企業)です。

• セックのビジネスは、プロフェッショナルなお客様へSI サービス (システムインテグレーション)をご提供します。

• SIサービスの内容は、高度な技術が要求される、「社会公共分野」と「先端分野」のリアルタイムシステムの開発と、ソリューション製品のご提供です。

Page 2: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

2

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 3

株式会社セック株式会社セック会社概要会社概要

設立 1970年5月

資本金 4億7730万円(2004年7月10日現在)

代表者 代表取締役社長 矢野恭一

従業員数 200名(2004年7月現在)

売上高 28億1300万円(2003年度実績)

上場取引所JASDAQ(証券コード3741)

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 4

セックのビジネスセックのビジネス

(注)「RealtimePower」は当社のソリューションツールの総称で、当社の登録商標です。

Page 3: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

3

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 5

KareareaKarearea((カレアレア)カレアレア)のの語源語源

ニュージーランドに生息するハヤブサの一種です

ニュージーランド最強の鳥として、ニュージーランド札にも描かれていますKareareaの持つ、強さと素早さのイメージを製品名に託しました

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 6

KareareaKarearea開発のコンセプト開発のコンセプト

速い・安い・簡単世界最高速のXMLデータベースを目指して・・・

お手頃な価格設定(当社比:1ユーザライセンス100万円~)

チューニング不要、分かりやすくリッチなAPI

“データ系XML”にもフォーカスRDB(JDBC)ライクなAPILFMエンジンの性能と機能を最大限活用ユーザからの要望の積極的な取り込み

Page 4: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

4

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 7

KareareaKareareaの特長の特長

ネイティブXMLデータベースXML形式データの格納、取得、XPathによる検索柔軟なソート、集計、Joinなど

インメモリデータベースすべてのデータをメモリ上にて管理冗長なデータの圧縮おおよそ、元のXMLデータと同程度のメモリ使用

大量データに対する高速検索や集計数10万~数100万件のハンドリング

ミリ秒~秒オーダーでの処理

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 8

KareareaKareareaデータベースの構成データベースの構成データベース

複数のフォルダを格納するメモリ領域

フォルダ同じDTDまたはXML Schemaに適合したXMLデータを格納するための領域

DTD or XML Schema一つのフォルダには必ず一つのDTDまたはXML Schemaが対応

XML当該フォルダのDTDまたはXML Schemaに従ったXMLデータを格納

Page 5: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

5

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 9

検索検索

結果セットに対しては、以下のような処理が可能先頭から1つずつ順番にXMLデータを取得

カーソル移動による、特定位置のXMLデータの取得

部分要素や特定のテキスト、属性値の取得

特定のテキスト、属性値の更新別のXPathを与えての絞り込み検索

ソート、集計、他の結果セットとのJoin

XMLXMLXML

XMLXML

フォルダ

XPath

検索

XMLXMLXML

結果セット(順序付き集合)

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 10

ソートソート

例:「日経平均銘柄対象」で絞り込みを行った株価データに対して、出来高の多いにソートし、出来高上位20件の株価データを表示

任意の要素のテキスト、属性値

ソート

XMLXMLXML

新しい結果セット

XMLXMLXML

結果セット(順序付き集合)

条件

(複数指定可)

Page 6: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

6

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 11

集計集計

例:日ごと売り上げXMLデータに対して、次元に店舗と商品、測度に売上額、種類に合計を指定して、店舗、商品ごとの売上高を求める

<posdata><対象日>2005/02/14</対象日><店舗>フランス店</店舗><商品>○○ミルクチョコレート</商品><単価>100</単価><販売数>3</販売数><売上額>300</売上額>

</posdata>

<posdata><対象日>2005/02/14</対象日><店舗>フランス店</店舗><商品>○○ミルクチョコレート</商品><単価>100</単価><販売数>3</販売数><売上額>300</売上額>

</posdata>

<posdata><対象日>2005/02/14</対象日><店舗>フランス店</店舗><商品>○○ミルクチョコレート</商品><単価>100</単価><販売数>3</販売数><売上額>300</売上額>

</posdata>

フランス店 ドイツ店 ・・・○○ミルクチョコレート 300 400△△ホワイトチョコレート 200 500・・・

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 12

集計集計

検索結果(結果セット)に対して、任意の要素のテキスト、属性値を条件に指定して、多次元集計を行う

集計の種類(カウント、最大値、最小値、合計)次元(0~4個)

測度(0~1個)

集計結果をXML(結果セット)化することによって、さらに再検索や集計を行うことが可能

Page 7: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

7

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 13

フォルダ間結合(フォルダ間結合(JoinJoin))

例:株価フォルダ(銘柄コード、日付、出来高)と銘柄フォルダ(銘柄コード、銘柄名)のJoinを行い、銘柄コード、銘柄名、日付、出来高の一覧を表示

<株価><コード>1111</コード><日付>2005/02/14</日付><出来高>3000</出来高>

</株価>

<銘柄><コード>1111</コード><名称>○○製菓</名称>

</銘柄>

<銘柄><コード>1111</コード><名称>○○製菓</名称>

</銘柄>

<株価><コード>1111</コード><日付>2005/02/14</日付><出来高>3000</出来高>

</株価>

銘柄コード 銘柄名 日付 出来高1111 ○○製菓 2005/2/14 30002222 △△食品 2005/2/14 40000・・・・・・ ・・・ ・・・

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 14

フォルダ間結合(フォルダ間結合(JoinJoin))

フォルダの異なる2つの検索結果(結果セット)に対して、任意の要素のテキスト、属性値をキーに指定して、Joinを行うJoin時、結果の取得用に、Joinキー以外の任意の要素のテキスト、属性値を指定可能Join結果は、キーと上記で指定した結果取得用の値の組で返されるJoin結果をXML(結果セット)化することによって、さらに再検索や集計を行うことが可能

Page 8: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

8

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 15

コールバック関数コールバック関数

XPathに用意されていない関数などをユーザがコールバック関数として定義し、XPathの検索式から使用可能

コールバック関数はJavaのメソッドとして定義

引数の個数や型については、特に制限なし

例:XMLデータの座標値を元に、三角関数による回転を行ったうえで距離を求め、その値が一定値より小さいものを検索する

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 16

KarKarファイルファイル

データベースのメモリイメージをディスクに高速書き込みフォルダごとにKar (Karearea Archive) ファイルとして保存

次回起動時に、Karファイルからフォルダを復元(データベースレジューム)XMLファイルからの登録に比べ、数 100倍以上高速

データベース上の既存フォルダに対して、Karファイルの内容のアペンドも可能(同一形式のフォルダのみ)

Page 9: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

9

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 17

リモート接続リモート接続

ローカルモードKareareaとアプリケーションが同一プロセスで動作

Karearea本来の性能を100%発揮

他プロセスからは利用不可

リモート接続モード別途、「Karearea Server」を起動

クライアントアプリケーションからKarearea Serverに接続(RMI)

複数プロセスから同一データベースを同時に利用可能

リモート通信による、若干のパフォーマンス低下が発生する(ただし、検索、集計などの処理自体はサーバ側で行われる)

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 18

更新について更新について

XMLドキュメントの登録(追加)、削除は随時可能

XMLドキュメントの更新は、削除+登録にて対応

XMLの構造の変わらない更新(指定した要素のテキスト値、属性値)が可能

フォルダのスキーマ定義の拡張

フォルダのロック機能(排他制御)

トランザクション機能はなし

Page 10: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

10

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 19

大量データへの対応大量データへの対応

Solaris 64bit版の利用Windows版、Solaris 32bit版では2GBが上限

各機種版でKarファイルの互換性あり

Karファイルのオンデマンド切り替え例えば、週別などの単位でKarファイルを用意しておき、必要になった時点でその都度ロードして利用

一度に全てのデータを検索する必要がない場合に有効

分散データベース機能Karearea 1.4の新機能として開発中

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 20

KareareaKareareaの構成の構成LFM Engine

超高速データ処理エンジン

LXP(LFM XML Processor)LFMとKareareaのインタフェース部

Karearea Java APIKareareaデータベースアクセス用のJava API

Karearea Java APIを使用してアプリケーションプログラムを開発可能

Page 11: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

11

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 21

Karearea Karearea ManagerManagerKarearea付属のGUIツール

データベース管理機能フォルダ作成、削除XML登録、表示

検索、ソートXMLファイルへのエクスポート

テンプレート機能による定型処理の実行検索テンプレート

集計テンプレート

リモート接続専用のKarearea Clientも付属

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 22

karkarコマンドコマンド

Karearea付属のコマンドラインツール

(tarやjarコマンドのようなもの)

c - XMLファイルからのKarファイル作成

x - KarファイルからXMLファイルを抽出

t - Karファイルの内容表示

RDB連携CSVファイルまたはRDBを読み込み、XMLへの一括変換を行いながら、直接karファイルを作成

Page 12: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

12

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 23

事例紹介事例紹介Webシステムのデータベースエンジンとして

人工衛星テレメトリデータモニタシステム

携帯電話エリア情報サービス太陽観測(飛翔体・地上)統合データベース公開システム用プラットフォーム

仮想天文台アンケート集計設計支援システムコンピュータシステム共通運用基盤DB電子番組表

商品企画データベース

Karearea Manager、Clientでの利用製品原価計算

バッチプロセスでの利用メール配送システム

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 24

動作環境動作環境

J2SDK1.3.1以上 または JRE1.3.1以上

(Solaris64bit版はJ2SDK1.4以上または JRE1.4以上)

対応Java

Microsoft Windows 2000/XP (Windows 32bit版)Sun Solaris8/9 (Solaris32bit版、64bit版)

対応OS

20MB以上の空きHDD

256MB以上推奨メモリ

PentiumⅢ 700MHz以上推奨 (Windows 32bit 版)UltraSPARC Ⅲ 400MHz以上推奨 (Solaris 32bit版、64bit版)

CPU

l LFMは、株式会社ターボデータラボラトリー(http://www.digo-tech.com/)が開発した技術です。l 本資料に記載された会社名・製品名は、各社の商標または登録商標です。

Page 13: In-Memory XML Databasexmlconsortium.org/seminar/m32/data/20050314_02-3.pdf · フォルダの異なる2つの検索結果( 結果セット)に対して、 任意の要素のテキスト、属性値をキーに指定して、Joinを

13

Copyright © 2002-2005 Systems Engineering Consultants CO.,LTD. All rights reserved .Page : 25

お問い合わせお問い合わせ

〒150-0031東京都渋谷区桜丘町22-14 NESビル

株式会社セックマーケティング本部

TEL : 03-5458-7727

FAX : 03-5458-7726E-mail : [email protected]

URL : http://www.sec.co.jp/products/karearea/