- - PR -
|
“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 クライアントと同期サーバでのデータ同期 |
無線通信など、外出先の非力なネットワーク環境からでも、ストレスなしにデータを同期できることを考えた設計思想といえるだろう。また、同期サーバとソースデータベース間の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 |
|
関連記事
組み込み開発フォーラム 新着記事
- フルスクラッチの“Hello World”を動かしてみよう(2011/3/31)
- FlexRayプロトコルの概要(その2)(2011/3/29)
- JASA、東北地域に拠点を置く会員企業を支援(2011/3/25)
- NEC、震災の影響を受けた4拠点の生産再開を発表(2011/3/23)
- 内部ブロック図の基礎と共通要素(2011/3/22)
- インテル、被災地におけるITインフラの復旧を支援(2011/3/22)
- Facts on AUTOSAR/AUTOSAR導入の現実(2011/3/18)
- 計測器・震災被害ホットラインを開設、テクトロニクス(2011/3/18)
- ZMP、地震の揺れを多角的に計測するアプリ無償配布(2011/3/16)
- メンター、3Dテレビ・マルチメディア検証プラットフォーム(2011/3/16)
- 【番外編】タチの良い計測値、悪い計測値とは?(2011/3/15)
- tarファイルシステムをAndroidに組み込む!!(2011/3/10)











