- 第1回:いつでもどこでも使えるデータベース 「SQL Anywhere Studio」
- 第2回:SQL Anywhereのインストールと概要
- 第3回:SQL Anywhereのデータベース管理の基礎
- 第4回:SQL Anywhereでの主キー/スケジュール処理/暗号化
- 第5回:SQL Anywhereのデータベース再構築/アップデート
3.1. Ultra Lightとは
Ultra Lightは、Windows CEやSymbian OS・Palm OSに対応するモバイルデバイス向けデータベースだ(注1)。極めて省リソースで動作し、RDBMSとしての特徴も備える。トランザクションや参照整合性・インデックス・暗号化などの機能を持つ。対応するSQL構文も多彩で、JOIN文を含めたさまざまなSQL文を実行できる。さらに、Mobile Link同期クライアントとしての機能も備え、SQL Anywhereや他社製データベースとのデータ同期も容易だ。このように、Ultra Lightを使えば、スマートフォンやPDA・業務用端末・デジタル機器などのモバイルデバイス向けのアプリケーションを開発する際に、データベースを基盤としたデータ保存や検索機能をえられ、統合データベースとの同期も可能となる。
SQL AnywhereのパッケージにはSQL AnywhereとUltra Lightという2つのデータベースがあることになり、Ultra LightはSQL Anywhereのサブセットと位置付けられる。SQL Anywhereと比べてUltra Lightの機能は制限されるが、モバイルデバイスという利用環境では十分な機能を持つ。SQL Anywhereと比較しながら、Ultra Lightの特徴を示す。制限の詳細については後述する。
Ultra LightとSQL Anywhereとの比較
Ultra LightとSQL Anywherでは、アーキテクチャが大きく異なる(下図)。
Ultra Lightを利用するアプリケーション開発はUltra Light SDK(Software Development Kit)を利用し、SDKが提供するAPIを介してデータベースを操作する。アプリケーションとなる実行バイナリは、Ultra Lightのライブラリと動的または静的にリンクされる。そのため、アプリケーションのプロセス内でUltra Lightが機能する。これはin-process databaseとも呼ばれる形態だ。一方、SQL Anywhereでは、アプリケーションとは別プロセスのデータベースサーバを起動させて、TCP/IP接続といったプロセス間通信でアプリケーションはデータベースを利用する(注2)。 そのため、単純なクエリであれば、プロセス間通信のオーバーヘッドのないUltra Lightの方が高速だ。
また、このような性質上、複数のアプリケーション(プロセス)が一つのUltra Lightデータベースを共有することはできない。Ultra Lightでは、一つのプロセスが一つのデータベースを利用することが想定されている。複数の処理を同時に実行したいのあれば、SQL Anywhereが適する。
ひとことで言えば、単純な処理であればUtra Light、複雑な処理であればSQL Anywhwereとなる。とはいえ、Ultra Lightはモバイルデバイスの用途として十分な機能を備える。
- プラットフォーム
- 省リソース性
- 配布の容易さ
- SQL Anywhereとの互換性
- 開発容易性
省リソース | 性能 | SQL Anywhereとの互換性 | 開発容易性 | 配布 | |
Ultra Light | ◎ | ○ | × | △ | ◎ |
SQL Anywhere for CE | ○ | ◎ | ○ | ○ | △ |
まとめると、アプリケーションが必要とする処理が簡単なものであれば、Ultra Lightを選んだほうがメリットが大きい。処理が複雑であれば、Ultra Lightでは実現不可能ということはないだろうが、SQL Anywhereの機能が便利と思う機会が多いだろう。ここで注意しなければならないのは、Ultra Lightでは無理だからSQL Anywhereと考えたのあれば、今一度、そのような機能が、そもそもモバイルデバイス上で達成可能か考えてみてほしい。モバイルデバイスはデスクトップPCよりもずっとスペックが劣るため、デスクトップPCでは造作もない処理が、モバイルデバイスでは負荷が重すぎてユーザーの使用に耐えないということがある。リソースの限られた機器で快適なアプリケーションを実現するに十分な機能がUltra Lightには備わっているはずだ。
3.1.1. Ultra Lightの特徴と制限
Ultra LightはRDBMSの基本機能をサポートする。主な特徴と制限とを以下に示す。
主な特徴
- インデックス
- キー
- トランザクションとリカバリ
- セキュリティ
- 高パフォーマンス
- Mobile Link 同期クライアント
- GUI管理ツール
項目 | 制限 |
データベースファイルのサイズ | 2GB(またはOSによるファイルサイズ制限) |
データベース内のテーブル数 | データベースファイルのサイズから制限される |
テーブル内のカラム数 | およそ4,000カラム |
テーブル内の行数 | およそ1600万行 |
データベース内の行数 | データベースファイルのサイズから制限される |
データベースへの接続数 | 14接続まで |
行サイズ | およそ16KB(圧縮後)。なお、LONG VARCHAR型とLONG BINARY型の値は別に保存されるので、これには含まれない |