マルチベンダRDBにつながる「DB2 Everyplace」

組み込みデータベースカタログ 第5回

マルチベンダRDBにつながる「DB2 Everyplace」

小島 昇 所属 2006/9/27

組み込みデータベースカタログ第5回は、IBMの組み込みデータベースDB2 Everyplaceを取り上げる。お話を伺ったのは、ソフトウェア事業の中林紀彦氏と猿山悦子氏である。(編集部)

- PR -
製品名: DB2 Everyplace
URL: http://www-06.ibm.com/jp
/software /data/db2/everyplace/
評価版: http://www14.software.ibm.com
/webapp/download/product.jsp

(英語サイト)
メーカー:
(代理店)
日本アイ・ビー・エム
http://www.ibm.com/jp/

企業データを情報端末で社外に持ち出し、利用することを目指して開発されたビジネス指向の強い組み込みデータベース。同期先のリレーショナル・データベースはDB2、IDS、Oracle、Sybase、SQL Serverなど多種に及ぶ。


“DB2”とはまったく別の製品として開発

 PDAやスマートホンといったモバイル機器は、場所を限定せずに自由にデータを持ち運びできる。しかし記憶容量に制限があって、デスクトップPCからデータベース・サーバにアクセスするように豊富な情報を閲覧することはできない。また、モバイル機器では情報が個別のローカルディスクに保存されるため、情報の一元管理は難しい。

 モバイル機器によるデータ操作・管理に付きまとう、こういった問題を解決するために開発されたのが「DB2 Everyplace」である。企業の基幹データベースに蓄積された大容量のデータをモバイル機器から検索、更新することがDB2 Everyplaceの使命といえるだろう。組み込み機器用のデータベースであるが、OSが搭載されたPDAやスマートホンをターゲットにし、人間との対話処理を前提とした製品だ。

 DB2 Everyplaceの前身である「DB2 Everywhere」の開発プロジェクトは1998年から始まった。1999年に無償のSQLインターフェイスとして公開され、2000年にDB2 Everyplaceに名称を変更し、有償版のDB2 Everyplace 7.1としてリリースされた。その後、ユーザーの要求を取り込みながら機能拡張を繰り返し、2006年7月に「DB2 Everyplace V9.1」がリリースされた(表1)。

年代 出来事
1998 小さなデータベース・プロジェクト開始
1999 DB2 Everywhere 1.0
PalmOS向けのSQLインターフェイス(無償)
1999 DB2 Everywhere 1.1
Palm OS向けの小さなデータベース(無償)
2000 DB2 Everyplace 7.1
同期サーバの登場。Palm OS および Windows CE向けの小さなデータベース(最初の有償版)
2001 DB2 Everyplace 7.2
UNIXサーバサポート開始, 強力なフィルター機能および容易な管理性を備える
2002 DB2 Everyplace 8.1
クライアント・プラットフォームサポートにSymbianを追加
2003 DB2 Everyplace 8.1.4、DB2 Everyplace Express
2004 DB2 Everyplace 8.2
ベスト・モバイルデータベース・アワード受賞
2006 DB2 Everyplace 9.1 出荷開始
表1 DB2 Everyplaceの歴史

 DB2 Everyplaceは製品名に“DB2”を冠しているが、業務システム向けのリレーショナル・データベースであるDB2から派生したものではなく、ソースコードレベルから新規に開発された完全に別個の製品である。

 DB2 Everyplaceには「Database Edition」と「Enterprise Edition」の2つのエディションがある。

  • DB2 Everyplace Database Edition
  • DB2 Everyplace Enterprise Edition

 これは構成されるコンポーネントの違いによる。両エディションに共通するのは「DB2 Everyplace データベース」であり、Enterprise Editionのみに「DB2 Everyplace 同期サーバ」が含まれる。それぞれの詳細を見ていこう。

データベース単体で利用するDatabase Edition

 データベース・エンジンをデバイスに組み込み、単体で使用する場合は、同期サーバを含まないDatabase Editionを選択することになる。データベース・エンジン自体のフットプリントは約350kbytesほどであるが、大部分のSQLと集計関数類がサポートされており、通常のリレーショナル・データベースからサーバ機能や同時接続制御などを削除したものと考えてよいだろう。表2の条件を満たせば、データベース自体のサイズ制限はなく、数万レコードに及ぶような大容量のデータを扱えるのが特徴だ。

項目 制限値
最大表サイズ(32ビット・システムの場合) 2Gbytes
表の最大数 65535
表の索引の最大数 15
表内の行の最大長 64kbytes
外部キー内の列の最大数 8
索引内の列の最大数 8
主キー内の列の最大数 8
SQLステートメントの最大長 64kbytes
表内の行の最大数表サイズによって制限される表内の列の最大数 256
CHAR列の最大長 32767bytes
VARCHARまたはBLOB列の最大長 32767bytes
単一レコードにおけるINT、SMALLINT、CHAR、DECIMAL、DATE、TIME、およびTIMESTAMP列の最大結合長 32767bytes
接続当たりのステートメント・ハンドルの最大数 20
チェック制約の最大長 32767bytes
デフォルト値の最大長 32767bytes
10進数の最大サイズ 31けた
単一索引における各列の最大長 1024bytes
日付値の最小年 1
日付値の最大年 9999
表2 データベース・スキーマの制限


同期サーバを持つEnterprise Edition

 Enterprise Editionは、Database Editionに同期サーバが加わった製品である。DB2 Everyplaceのデータベース・エンジンを組み込んだクライアント(モバイル機器など)は、この同期サーバを経由して社内のデータベースを参照、更新できる。社内のデータベースと組み込みデータベースの同期を特徴としている製品はほかにも存在するが、それらの構成はデータベース・サーバとモバイル機器が直接対話する2層構造が一般的だ。DB2 Everyplaceはアプリケーションサーバを経由してリレーショナル・データベースに接続するため、同期先のデータベースは以下のようにマルチベンダ製品への対応が可能となる(2006年9月現在:対応するデータベース製品は今後追加・変更される可能性もある。後述のWebサイトを参照)。

  • DB2 V8.2/V9.1 for Windows、Linux、AIX、HP-UX、Solaris
  • DB2 UDB V8.1 for z/OS
  • DB2 UDB V5R4 for IBM iSeries
  • Informix Dynamic Server 10.0
  • Oracle Database 9i/10g
  • Microsoft SQL Server 2000/2005

  この特性は、既存のデータベース・システムにモバイル環境を追加するケースでは、有利に働くことになるだろう。同期サーバはIBMのアプリケーションサーバ「WebSphere」のコンポーネントを使用しており、一般的な3層構造のWebアプリケーションの構成となるが、クライアントと同期サーバ間、同期サーバとソースデータベース間の同期処理は個別に行われる。クライアントは同期サーバに配置されたミラーデータベースに対して処理を行い、それが完了すると直ちに接続を解放できる(図1)。

図1
 図1 クライアントと同期サーバでのデータ同期

 無線通信など、外出先の非力なネットワーク環境からでも、ストレスなしにデータを同期できることを考えた設計思想といえるだろう。また、同期サーバとソースデータベース間のAPIとしてJDBCを利用する。Javaの標準的なデータベースアクセス手段を用いることで、他社製のリレーショナル・データベースの利用を可能にしている。

関連リンク:
DB2 Everyplace製品サイト
http://www.ibm.com/jp/software/data/db2/everyplace/index.html

DB2 Everyplaceの接続可能データベース
http://www-306.ibm.com/software/data/db2/everyplace/jdbcdatasources.html

スキルアップ/キャリアアップ(JOB@IT)

スポンサーからのお知らせ

- PR -
@IT Sepcial

震災関連・復興支援情報

震災関連・復興支援情報
@IT MONOist/EE Times Japan/環境メディアの製造業技術者向け3メディアを中心に、震災関連/復興支援情報を集めました

次世代エンベデッドコーナー

次世代エンベデッド
“次世代”の組み込み機器を開発するエンジニアを支援するコーナー。新潮流・新技術をインタビューやコラム、解説記事で分かりやすく紹介!

Windows Embeddedコーナー

Windows Embedded
Windows Embedded専門コーナー。Windows Embedded StandardやWindows Embedded CEをはじめとする「Windows Embedded」ファミリの最新動向や技術情報をお届けします!!

Androidコーナー

Android
Android専門コーナー。組み込みデバイスへの適用からアプリケーション開発、イベントレポート、ニュースなどAndroidに関するさまざまな技術情報がここに集結!!

@IT MONOist 求人情報

- PR -