本稿は、森脇氏が執筆した『使える! SQL Anywhere』(翔泳社刊)のP.2~15を抜粋し修正した記事に、森山氏が最新版の内容を一部加筆して再構成されています。
1.1 SQL Anywhereとは
iAnywhere Solutions, Inc.(以下、iAnywhere Solutions社)は、企業情報システムを「いつでも、どこでも」「オンラインでも、オフラインでも」利用できるように、そのインフラとなるソフトウェアをパッケージ製品として提供している。データベースや同期ツールを含む「SQL Anywhere」やPCおよび携帯端末のデバイス管理を可能にする「Afaria」、RFIDデータを管理する「RFID Anywhere」、自然言語によるGUIや検索を可能にする「Answers Anywhere」、IBM Lotus NotesやMicrosoft Exchange Serverとスマートフォン(iPhoneを含む)間とでメールなどの情報を同期する「Mobile Office」(旧製品名:OneBridbe)、GIS(地理情報システム)の構築を支援する「Maplet」などのパッケージ製品がある。また、製品の保守や製品にまつわるコンサルティングサービスも手がける。
本連載では、これらのうち主力製品である「SQL Anywhere」を解説する。まず、開発元のiAnywhere Solutions社と製品の簡単な歴史を紹介してから、製品概要とデータベースの役割について説明し、技術的詳細については次回以降で解説する。
1.1.1 歴史
SQL Anywhereの歴史は、Watcom SQLというデータベースから始まる。このデータベースを開発したのはWatcom International Corporation(以下、Watcom社)である。Watcom社は、1981年にカナダのWaterloo大学の研究グループが母体となって誕生した。そして1992年、MS-DOSとQNX上で動作する省リソースなデータベースとしてWatcom SQL 3をリリースした(※1)。
1994年、Watcom社はPowersoft社に買収され(※2)、続く1995年、Powersoft社はSybase社に買収された。Watcom SQLは、Sybase社の製品群に加えられ、「Sybase SQL Anywhere 5.0」と名前を変えて発売された。現在と同じ製品名称が用いられたのは「SQL Anywhere Studio 6」からである。1999年、Sybase社内に、Mobile and Embedded Computing(MEC)事業部が設立され、この事業部がSQL Anywhereの開発・サポートを担当するようになる。2000年、MEC事業部が分社化され、iAnywhere Solutions社が誕生した。
一方、日本では、サイベース株式会社のアイエニウェア・ソリューション事業部がSQL Anywhere Studioの販売を行っていたが、2003年にこの事業部は、iAnywhere Solutions社の子会社であるアイエニウェア・ソリューションズ株式会社(以下、アイエニウェア・ソリューションズ社)として独立し、現在に至る。
1992年 | Watcom SQL 3リリース |
1994年 | Watcom SQL 4 |
1995年 | Sybase SQL Anywhere 5 |
1996年 | Sybase SQL Anywhere 5.5 |
1998年 | SQL Anywhere Studio 6 |
2000年 | SQL Anywhere Studio 7 |
2001年 | SQL Anywhere Studio 8 |
2003年 | SQL Anywhere Studio 9 |
2004年 | SQL Anywhere Studio 9.0.1日本語版 |
2007年 | SQL Anywhere 10.0.1日本語版 |
2009年 | SQL Anywhere 11.0.1日本語版 |
1981年 | Watcom International Corporation設立 |
1994年 | Powersoft社がWatcom社を買収 |
1995年 | Sybase社とPowersoft社が合併 |
1999年 | Sybase社MEC事業部が設立 |
2000年 | iAnywhere Solutions, Inc.設立 |
2001年 | サイベース株式会社アイエニウェア・ソリューション事業部が設立 |
2003年 | アイエニウェア・ソリューションズ株式会社が設立 |
2004年 | XcelleNet社/Dejima社買収 |
2005年 | Extended Systems社買収 |
2006年 | 本社を赤坂に移転 |
2007年 | GISソフトウェアメーカの(株)コボプランを買収 |
1.1.2 SQL Anywhereのターゲット市場
SQL Anywhereがターゲットとする市場は3つある。
1. モバイルソリューション市場
現在の企業活動においては、オンライン/オフラインを問わず、「いつでも、どこでも」会社のデータにアクセスして活用できることが求められている。そのためには、企業の情報システムをモバイル化するためのツールが必要だ。
SQL Anywhereは、ノートパソコンやPDA(スマートフォンを含む)といったモバイル端末でも動作するデータベースをユーザに提供する。また、データ同期テクノロジもある。代表的な活用分野はCRM(Customer Relationship Management)やSFA(Sales Force Automation)だ。顧客情報や商品情報などをデータベース化し、ノートパソコンやPDAに入れて携帯することで、渉外活動中に企業データを利用できる。データが個々のデバイスに分散してしまうことになるが、同期テクノロジによりデータを中央に集約することが可能だ。
2. アプリケーションやハードウェアへの組み込み市場
パッケージソフトなどのアプリケーションでは、データの保存や検索といったデータベース機能が必要なことが多い。SQL Anywhereは、たとえば、企業会計パッケージやPOS端末などに組み込まれて利用されている。このような利用形態の場合、データベースが高性能なマシン上で使用されるとは限らないが、SQL Anywhereならばエンドユーザにデータベースの存在を意識させないほど省リソースで動作する。また、数多くの店舗や代理店に配備するシステムとして大量のローカルデータベースが必要とされるようなケースにも、SQL Anywhereは適している。SQL Anywhereは、省リソースかつ高機能で、アプリケーションに組み込みやすいからだ。
3. 中小企業・中小規模向け(SMB)市場
中小企業や大企業の支店などの中小規模向け(Small to Medium sized Businesses)市場で用いられるデータベースには、エンタープライズ級の高性能・高機能が求められる一方で、専任のIT担当者やデータベース管理者を設けられないため、できるだけ管理コストを抑えることも必要とされる。
SQL Anywhereは、管理の手間を不要とすることを設計コンセプトに掲げている。また、バージョンを重ねるにつれて中・大規模向けの機能が拡充され、エンタープライズレベルの用途にも対応している。クライアント/サーバシステムやWebアプリケーションのバックエンドにあるデータベースサーバを、PCサーバ上で運用することも多いだろう。そのような場合にも、SQL Anywhereの利用価値は高い。
1.1.3 コンポーネント
SQL Anywhereには、3つの代表的なコンポーネントとGUI管理ツールがある。
SQL Anywhere(データベース)
SQL Anywhereは、SQL Anywhereのメインのコンポーネントであるデータベースだ。Adaptive Server Anywhere(ASA)が現在の正式名称であるが、いずれSQL Anywhereに統一される予定となっている。このため、本連載ではSQL Anywhereという表記を用いることにする。
Ultra Light(データベース)/Ultra Light J(データベース)
Ultra Lightは、Windows CEやPalm OS、Embedded Linuxに対応する超軽量データベースである。また、SQL Anywhere 11より、Java MEとJava SEの各プラットフォームと、BlackBerryスマートフォン向けに設計されたUltra Light Jも提供された。
Mobile Link(同期テクノロジ)
Mobile Linkは、SQL AnywhereやUltra Light/Ultra Light Jと他のデータベースとを同期するためのコンポーネントである。なお、Mobile Link以外の同期テクノロジとしてSQL Remoteと呼ばれるコンポーネントもあるが、本連載では説明を割愛する。
GUI管理ツール
GUI管理ツールとして、データベースを管理するSybase CentralやSQLを実行するInteractive SQLなどがある。
Sybase Centralは、データベースを管理・操作する上で必要な操作をGUIや対話形式のウィザードで行うことが可能で複雑なコマンドを駆使する必要はない。
Interactive SQLはSQL文を実行および結果表示するツールであり、SELECT文の構築を支援するクエリ・エディタ、クエリの実行プランを確認するプラン・ビューワなどの機能が提供される。