クロスプラットフォーム対応の開発言語とモバイルDBがIoTの開発効率を向上させる、エンバカデロのRAD Studio [PR]

2015年3月25日

これまで私たちが親しんできたPCやモバイル機器よりもさらに小型のコンピュータが、新しいITの主役になろうとしています。

IoT時代のマルチデバイス開発ソリューション

例えば、話題をさらっているアップルのApple Watchを筆頭とするスマートウォッチやAndroid Wearなどのウェアラブル端末、あるいは家電や工作機械や建物などに組み込まれたさまざまなセンサー類など。

これらはいわゆる「モノのインターネット」、Internet of Things(IoT)として、新しいビジネスやサービスを作り上げていくことになると見られています。

直接ネットにつながらないデバイスも

IoTに登場するデバイスは何らかの形でネットにつながることが想定されますが、直接ネットに接続するケースと、何らかのデバイスを経由してネットにつながる2つのケースが考えられます。

fig多くのモノはPCやモバイル機器経由でネットにつながると見られている

安定した電源や回線を提供しやすい、建物内のセンサーやカメラなどは直接ネットにつながる能力を持つケースが多いでしょう。

一方で、例えばApple WatchやAndroid WearなどのウェアラブルデバイスはiPhoneやAndroid端末などとペアリングが必要とされていますし、コストやネットワーク環境、電源まわりなどに制限がある電子タグや一センサーなども、近接するモバイルデバイスやWindowsやLinuxマシンがハブとなってデータを収集し、その後にネットへ接続することになるでしょう。

調査会社の米Dimensional Researchによると、IoTの末端から接続されるデバイスOSの1位がAndroid、2位はWindows、3位がiOSだとされています。

となると、IoTを活用するためのアプリケーションには新しい発想が求められる一方で、そのアプリケーションプラットフォームはこれまで親しんできたiPhoneやAndroidやWindows、LinuxなどがIoTでも引き続き重要な位置を占めそうです。と同時に、IoTでは末端のデバイスが決まれば、ほぼ自動的にそのインターフェイスや特性に合わせてペアリング先のデバイスやハブデバイスも決まるでしょう。開発者に対してクロスプラットフォームへの要請が一層高くなりそうです。

単一のコードでクロスプラットフォーム対応がカギに

こうした要請に対して対応できる開発ツールが、エンバカデロ・テクノロジーズの「RAD Studio」です。

RAD Studioでは、C++もしくはObject Pascalによる単一のコードでWindows、Mac、iOS、Androidのマルチプラットフォームに対応し、Wi-FiやBluetoothを使ってウェアラブルデバイスやIoTデバイスなどとの通信を行える「アップテザリングコンポーネント」も用意されているため、デバイス間の通信も容易にプログラミング可能。

fig

ウェアラブルデバイスやIoTは新しいデバイスが次々に登場し、またデバイスや周辺ソフトウェアのバージョンアップも速い、非常に変化の大きい領域です。プラットフォームごとにC#やJavaやSwiftやObjective-Cなどの言語とそれぞれのライブラリを把握して開発することは正攻法ではあっても、その人材を揃え、あるいは既存のエンジニアが新しい言語を学習し、しかもそれをビジネスの現場でメンテナンスし続けることは容易ではありません。

C++もしくはObject Pascalという単一の言語とライブラリですべてのプラットフォーム対応のアプリケーションを記述でき、しかもネイティブな機能を利用可能、ネイティブアプリケーションが生成されるRAD Studioは、IoTの開発環境として優れた選択肢を提供するといえるでしょう。

IoTだからこそローカルデータベースの重要性が高まる

fig

ウェアラブルデバイスとペアリングされるデバイス、IoTのハブとなるデバイスでは、収集したデータを一時的に収集し、場合によってはフィルタリングなどの前処理をしたうえで中央のサーバやクラウドへ確実に送信することが、多くのアプリケーションで実装される機能となるはずです。

データを失うことなく安全に前処理や転送を行うには、データの永続化、すなわちローカルデータベースの機能がアプリケーションに求められるでしょう。

RAD Studioでは、マルチプラットフォーム対応のInterBaseを備えており、Windows、MacOS、iOS、Android、Linuxをサポート。モバイルアプリケーション、業務アプリケーションに組み込むことができます。

InterBaseはわずかなメモリとディスクスペースで実行可能で、定期的な管理タスクなどは不要。障害にも強い構造で、IoTデバイスから送られてくるデータの保管場所として適切なデータベースです。

データスキーマの視覚化も迅速な開発に欠かせない

そしてIoTのアプリケーションで最大のポイントは、集まったデータをどう解析しビジネスに生かすかでしょう。しかし、さまざまなモノやデバイスからさまざまな種類のデータが集まるIoTの環境では、最初から完成されたスキーマ設計ができるとはかぎりませんし、さまざまな種類のデータベースが、さまざまな用途ごとに作られることも起こるでしょう。

アプリケーションもデータベースのスキーマも、新しいIoTのアプリケーションの開発に取り組む過程でさまざまな試行錯誤を繰り返すことになることが考えられます。

こうした柔軟なデータベースの管理に対応したデータベース活用ツールに「ER/Studio」があります。

ER/Studioは、既存のデータベースを容易にリバースエンジニアリングし、全体を可視化するだけでなく、横断的にモデルやメタデータの共有ができます。つまり、どこにどのようなデータベースがあり、そのスキーマがどうなっているのかを可視化し、必要ならばそれをもとに最適化もできます。

fig

アプリケーションの開発過程では、データベースのスキーマが変更されたり、あるいはアプリケーションで処理すべきデータがどこにどのような形式で格納されているのかといった情報が十分に共有されていないことが起こりがちです。

ER/Studioは主要なリレーショナルデータベースはもちろん、Hadoop、Teradata、Netezza、Greenplumといったビッグデータ向けのデータベースもサポートしています。既存のデータベースとIoTで集めたデータの連係や活用を試行錯誤し、新しい見方を発見するツールとしても使えるでしょう。

IoT時代のマルチデバイス開発ソリューション

エンバカデロでは、こうした「IoT時代のマルチデバイス開発ソリューション」を紹介する特設ページを公開。同社の開発ツール、データベースツール、組み込みデータベースソリューションについて紹介しています。

IoT時代のマルチデバイス開発ソリューション

(本記事はエンバカデロ・テクノロジーズ提供のタイアップ記事です)

あわせて読みたい

業界動向 IoT PR エンバカデロ




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本