アットマーク・アイティ @IT@IT情報マネジメント@IT自分戦略研究所QA@ITイベントカレンダー  
 
 @IT > 組み込みデータベース「Entier」新バージョン登場!
 
@IT Special

 

PR

組み込みデータベース「Entier」新バージョン登場!

高度な検索機能をさらに強化
組み込み開発の効率向上を支援

日立製作所と日立ソフトウェアエンジニアリングが共同開発した組み込みデータベース「Entier(エンティア)」は、空間検索機能や絞り込みインデックスを利用したインクリメンタルサーチなどの高度な検索機能を搭載。携帯電話やカーナビ、情報家電などをメインターゲットに据える。そのEntierが、全文検索などの機能を追加してバージョンアップ。そこで、組み込みデータベースを導入するメリットや、Entierの新機能について紹介する。
    機能の拡張を背景に
組み込みデータベースの重要度が増す

 携帯電話やオーディオ機器、HDD&DVDレコーダなどを中心に、デジタル機器の組み込みソフトウェアは肥大化の一途をたどっている。携帯電話はカメラやテレビ、音楽プレーヤ機能などを搭載し、保存メモリを1GB以上搭載するものも珍しくない。オーディオ機器もPCとの連携や、インターネットを経由した楽曲のダウンロードなどを搭載し、その機能は拡張する一方だ。

 経済産業省「2006年版 組み込みソフトウェア産業実態調査」によると、組み込み製品で利用されるソフトウェアの全ソースコード行数は、その多くが10万行を超えている。工数が増えるほど開発日数やコストが増大し、品質管理も難しくなる。同調査によると、製品出荷後に生じた不具合は、製品仕様(21.5%)やハードウェア(20.6%)に対し、ソフトウェアに起因するものは55.3%とはるかに多い。

 組み込み機器の場合、こうした不具合を製品出荷後に修正するのは難しい。致命的な不具合が生じた際は製品リコールなどのリスクへとつながり、それによって回収コストや企業イメージの失墜など多大な損失を被る可能性がある。

日立製作所 ソフトウェア事業部
ネットワークソフトウェア本部
Entier事業推進室 主任技師 関芳治氏

 こうしたリスクを避けるには、高い品質を保ちながら開発効率を向上させる必要がある。日立製作所 ソフトウェア事業部 関芳治氏は、ミドルウェアとして高速軽量化を実現し、空間検索や全文検索などの高度な検索機能を備える組み込みデータベース「Entier(エンティア)」の導入を勧める。

 組み込みアプリケーション開発の中でデータ管理部分が占める割合はかなり多く、半分もしくはそれ以上ともいわれている。そこで関氏は「データ管理部分に組み込みデータベースを利用すれば、製品品質も開発効率も上がり、市場への製品投入を早めることができます」と語る。

 「デジタルオーディオ機器でも、ネットワークから楽曲をダウンロード購入できるような機能が整いつつあります。HDDを搭載して数GBものコンテンツを保存できるようになると、見たい番組、聴きたい曲を探すのに苦労します。データベースを導入すれば前方一致検索や部分一致検索、類似検索などに活用でき、情報機器の高付加価値化を実現できるのです」(関氏)。

    携帯電話からカーナビまで対応する
軽量・高信頼データベース「Entier」

 Entierは携帯電話やカーナビゲーションシステム、HDD&DVDレコーダを中心としたデジタル機器など、コンシューマエレクトロニクス製品をメインターゲットに据えている組み込みデータベースだ。

 データベースに限らず、組み込み機器向けミドルウェアの要件としては「軽量・高速」「高信頼性」「高機能」などが挙げられる。Entierは信頼性の高いファイルシステムを同梱し、高度な検索機能を数多く備えているにもかかわらず、数百KB程度というロードサイズの軽さを実現している。また、約200万件のデータから、目的の1件を数10ms(注)で絞り込み検索できるという高速性も兼ね備えている。

注:測定環境のシステム要件により増減。

 データベースのトランザクション・ログによるデータ保護だけでなく、FAT16/32互換のファイルシステムにファイル保護機能を備えているのも特長の1つだ。Entierファイルシステムは、各関数の1回のコールを1トランザクションとして原子性を保証しており、不意の電源断が発生した場合でも、データベースでの回復で必要となるログ・ファイルやデータベースファイルが破壊されることはない。そのため、いかなる場合でも、データベースを正常に回復することが可能である。

 「データベースだけでなく、ファイルシステムも提供することで、信頼性の高いデータベースシステムを提案できるのです」(関氏)。

 検索機能の充実に重点を置いて開発したというEntierは、絞り込みインデックスを用いたインクリメンタルサーチ(前方一致検索)機能、地図上の円内や経路沿いにある目標物を検索できる「空間検索機能」など、独自の検索機能が充実している点も見逃せない。

 さらに、2007年2月14日に発表された最新バージョン「Entier Version2」(以下Entier V2)では、新たに全文(部分一致)検索機能や、1つの列に複数のキーワードを入力できる別名(繰り返し列)検索機能なども追加された。

    Entier V1から備える強力な検索機能

 Entier V2の新機能を紹介する前に、V1から備えるEntierの強力な検索機能を紹介しよう。なお、Entier V1の機能の詳細については「組み込みデータベース『Entier』の導入メリット」も合わせてご覧いただきたい。

絞り込み検索(インクリメンタルサーチ)

 ユーザーがキーワードを1文字入力するたびに、リアルタイムに前方一致で検索対象を絞り込んでいく機能。絞り込みインデックスと呼ばれる木構造のインデックスを用いて、データ格納時に次候補の該当件数と文字列を計算するため、高速な検索が可能なのが特長だ。

空間検索

 XY座標の情報と属性値を持つ「GEOMPOINT型」を採用し、2次元空間に配置したデータの集合から指定した範囲に含まれるものを検索する機能。指定した矩形や円、多角形などの図形内にあるデータを検索できる「周辺検索」や、折れ線を中心にバッファ幅を設定した図形を範囲に指定して検索する「経路沿い検索」が簡単なコーディングで可能になる。カーナビで利用すれば、「経路の左側にある駐車しやすい駐車場」という検索も簡単なSQL文1つでコーディングできる。なお、Entier V2では中心点から距離的に近い順にデータを検索できる「距離順検索」も新たに追加された。

SELECT 物件名称, GEOMDISTANCE([現在地], [検索対象列]) XC1
FROM 物件表
WHERE WITHIN([検索対象列],
             REGIONBUFFER([経路情報],
                          [幅],
                          [経路簡略化オプション],
                          [角の丸みオプション],
                          [両側/左側/右側を選択]),
             [属性条件]
             ) = TRUE
ORDER BY XC1
空間検索のSQLコーディングイメージ

(C)2006 ZENRIN CO., LTD.(Z06LB第001号)
Entierの適用イメージ。上記のようなSQLで、こうした機能を実現可能

 空間検索機能はカーナビだけでなく、さまざまな機器に応用が可能だ。例えばHDDレコーダの場合、X軸に「シリアス」から「バラエティ」まで、Y軸には「フィクション」から「ノンフィクション」、Z軸には「視聴率上位」から「下位」までという座標軸を設定し、録画した番組データをマッピングする。それによって類似した番組を視覚的に探せるといった類似検索機能も実現できる。

    Entier V2では全文検索と別名検索により
大幅に検索機能を強化

 続いてEntier V2が搭載した新機能を紹介していこう。

全文(部分一致)検索機能

 全文検索機能は、指定したキーワードを含む文字列を高速に検索するもの。検索対象を単語単位ではなく複数文字単位で分解し、その出現頻度を求める「N-gramインデックス方式」を採用している。辞書ファイルが不要で、高速に検索できるという特長を持つ。

 前方一致による絞り込み検索とは違い、文字列の途中や最後にキーワードが含まれるデータも検索できる。歌詞や曲名に特定のキーワードが含まれる楽曲を検索する場合などに活用が可能だ。

 例えば曲名に「season」というキーワードを含む楽曲を探す場合、絞り込み検索では「Season Train」や「Season in the Sun」などの曲しかヒットしない。だが全文検索を用いれば、「Endless Season」や「Mad Season」といったデータの検索も可能になる。

SELECT * FROM 表名 WHERE CONTAINS(楽曲名, "season") = TRUE
全文(部分一致)検索のSQLコーディングイメージ

全文検索機能の適用例(楽曲検索のデモンストレーション)
注:このデモンストレーションの画面作成には、株式会社ネットディメンションのMatrixEngine(R) embeddedを使用しています。

別名(繰り返し列)検索機能

 複数の情報を格納できる「繰り返し列」と呼ばれる列属性を採用することで、正式名称や略称、愛称などさまざまな表記を持つ名称データを1つの列に格納できる機能。

 例えば「@IT」を検索する際に、「アットマーク・アイティ」「@IT」「アットマークIT」なのどのキーワードを指定しても、同一の検索結果を得ることが可能だ。繰り返し列は最大16個までの別名を持つことができる。

 繰り返し列がない場合に異表記で検索できるようにするためには、名称列を複数用意する必要がある。また、定義した列数分の検索条件を記載しなければならないなど、コーディングが複雑になってしまう。ビル名や施設名など、検索キーワードがあいまいになりがちなデータに活用しやすい機能といえる。

SELECT * FROM 表名 WHERE 名称[ANY] = "@IT"
SELECT * FROM 表名 WHERE 名称[ANY] = "アットマーク・アイティ"
SELECT * FROM 表名 WHERE 名称[ANY] = "@IT"
SELECT * FROM 表名 WHERE 名称[ANY] = "アットマークIT"
別名(繰り返し列)検索の場合。どのSQLを実行しても同一の結果が得られる

SELECT * FROM 表名 WHERE 名称1 = "@IT"
                   OR    名称2 = "@IT"
                   OR    ……
                   OR    名称n = "@IT"
繰り返し列がない場合。検索条件に定義列数分の条件を列記する必要がある

    高付加価値製品の実現を支援

 2005年末に登場したEntier V1は、早くもカーナビや携帯電話、オーディオ機器などに採用され、近日中に搭載機器が出荷される予定だという(注)。V2では大幅な機能強化が実現し、より幅広いジャンルの機器に適用可能になった。

注:組み込み機器の多くがそうであるように、具体的な採用製品は明かされていない。日立製作所のニュースリリース(2007年2月14日)では、アプリックスがミドルウェアフレームワークのデータ管理処理用コンポーネントとしてEntierの採用を表明している。

 今後のバージョンアップについては、「V1をご採用いただいたお客様から多くのご要望をいただいており、そこにはわれわれが気付いていなかったさまざまな個別の機能もあります。そういったものを汎用的な機能として取り込み、次のバージョンに活かしていきます」(関氏)とのこと。

 強力な検索機能を搭載し、急速な進化を遂げているEntier。開発効率や製品品質の向上だけでなく、これまで組み込み機器では難しかった新たな付加価値の創造をも可能にする。

 「アプリケーション同士でデータを相互連携するというのはエンタープライズの世界では当たり前ですが、組み込み機器にも大きな流れとして来ています。この流れをビジネスチャンスとするためにも、ぜひEntierの導入を検討していただきたいと思います」(関氏)。


提供:株式会社 日立製作所
企画:アイティメディア 営業局
制作:
@IT 編集部
掲載内容有効期限:2007年3月31日
 
関連リンク
組み込みデータベースEntier
Entier体験版ソフトウェア
Entierの開発コンセプト(軽量・高速)
Entierの開発コンセプト(安全)
Entierの開発コンセプト(充実した検索機能)
Entierの適用ケース紹介
Entier製品紹介資料(PDF形式)
Entier Version 2の新機能紹介(PDF形式)
携帯・カーナビ・情報家電などの付加価値向上を支援する組み込みデータベース「Entier」の機能強化版を発売(プレスリリース)
日立製作所
日立ソフトウェアエンジニアリング

問い合わせ先
株式会社日立製作所HMCC(日立オープンミドルウェア問い合わせセンター)
0120-55-0504 利用時間9:00〜12:00、13:00〜 17:00(土・日・祝日・弊社休日を除く)
日立ソフトウェアエンジニアリング株式会社
@Sales24 TEL.03-5479-8831 受付時間9:30〜 12:00、13:00〜17:30(土・日・祝日・弊社休日を除く) sales24@hitachisoft.jp

関連記事
カーナビに最適な空間検索を装備した「Entier」(@IT組み込み開発フォーラム記事)
組み込みデータベース「Entier」の導入メリット(@IT Special)


 
@ITトップ@IT Special インデックス会議室利用規約プライバシーポリシーサイトマップ