少し前まで、日経ソフトウエアで「データベース」と言えば、米OracleのOralce DatabaseやMySQL、米MicrosoftのSQL Server、米IBMのDB2などのことでした。これらはみな、「リレーショナルモデル」という理論をベースにしたリレーショナルデータベース管理システム(Relational Database Management System、RDBMS)で、なおかつ、クライアント/サーバー型のものでした。

図1●クライアント/サーバー型リレーショナルデータベース管理システムの使われ方
[画像のクリックで拡大表示]

 1990年代半ばから広く使われているクライアント/サーバー・システムの典型的な形は図1(a)のようなものです。クライアントのアプリケーションは、共有しないデータはファイルシステムの中にあるファイルに保存し、共有するデータはデータベースサーバーソフトに保存を依頼します。1990年代後半には図1(b)のようなWebシステムが一般化しました。ここでも、データベースサーバーソフトの位置付けは変わらなかったと言えます。

 こうしたシステムは今でも業務アプリケーションから個人で作成する簡単なアプリケーションに至るまで広く使われており、クライアント/サーバー型のRDBMSの知識は、ソフトウエア開発者にとって必須のものと言えるでしょう。

二つの「次」が見えてきた

 そして、データベース利用の「次」が見えてきているのが今です。その一つはスマートフォン開発における組み込み型データベース管理システムの存在です。

 AndroidやiOSには「SQLite」というデータベース管理システムが入っています。これは、トランザクション処理にも対応したRDBMSですが、クライアント/サーバー型ではなく「サーバーレス」です。多くのユーザーでデータを共有するために開発されたものではなく、こうしたデータベースは「組み込み型データベース」とも呼ばれます。

 Windowsアプリケーションの開発では、データはファイルに保存するのが基本でした。でも、スマートフォンのアプリケーション開発では、SQLiteのような組み込み型データベースにデータを保存することが多くなっています。ファイルシステムよりも高機能で開発が簡単ですし、複数のプロセスが同じデータを利用しても安全だからです。これからスマートフォンのアプリケーション開発をするなら、組み込み型データベースの知識は欠かせないものと言えます。その知識は他のハードウエア向けの開発でも生かせるでしょう。

この先は会員の登録が必要です。有料会員(月額プラン)は初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら