マイコミジャーナル

知りたい!を刺激する総合専門サイト


  1. エンタープライズ

  2. インタビュー

【インタビュー】

Marie-Anne Neimat氏、高速オンメモリデータベースOracle TimesTenを語る

2006/07/28

後藤大地

Oracleは積極的な買収戦略を通じて、多くのポートフォリオを獲得してきた。同社はもともとエンタープライズ向けのデータベースOracle DBを開発してきたが、買収によって組み込み向けデータベースポートフォリオも拡充している。同社が買収した組み込み向けデータベースはBerkeley DBなどを含め3プロダクトあるが、なかでもオンメモリで超高速なレスポンスタイムを実現するデータベースポートフォリオにTimesTenがある。TimesTenはどういったプロダクトであるか、製品開発担当からくわしく話をうかがった。

Oracle TimesTen

オラクル、リアルタイム&エンベデッドデータベース製品開発担当バイスプレジデント Marie-Anne Neimat氏はにこやかな笑顔で登場、TimesTenに関する説明をおこなった。「TimesTenは1500を越える企業で導入実績があります。特にリアルタイムな用途に採用されています」と同氏。

図1 オラクル、リアルタイム&エンベデッドデータベース製品開発担当バイスプレジデント Marie-Anne Neimat氏

Marie-Anne Neimat氏は、HPの研究所やBritton Leeを通じて25年以上にわたりソフトウェアエンジニアリングおよびマネージメントを経験。現在はOracleにおいて組み込み製品の全体方向性や開発からリリースまでの責任者をつとめている。2005年6月、OracleはTimesTenを買収。同氏は同買収にともなってOracleへ入社。もともとはTimesTen創業者のひとりであり、技術開発部門のバイスプレジデントをつとめていた。

「TimesTenの特徴は驚異的なレスポンスタイムにあります。このため、スループットもきわめて良好です。プロセッサに対するスケーラビリティも高いレベルで備えています。また、アプリケーションからはライブラリを通じてデータベースを使うことができますし、サーバクライアントモデルによる接続もサポートしています。もちろんアクセスはJDBC、ODBCといった標準のAPIを使っておこなうことができますし、システムの管理も設定も最低限ですむため、保守がきわめて簡単という特徴もあります」。

図2 高速なレスポンスタイム

図3 プロセッサに対するスケーラビリティの高さ

TimesTenが高速な実行速度を実現している大きな理由は、データベース自身がメモリ上に保持されていることにある。メモリ上にデータベースがある場合、信頼性や稼働性、障害発生時における復旧可能性が気になるところだが、そのあたりはどうなっているのだろうか。

図4 TimesTen、動作の特徴

「データの永続化をはかるにあたって、トランザクションログとチェックポイントファイルがディスクに書き出されています。ロックに関してもさまざまなレベルでのロックが可能です。デフォルトではレコードレベルでのロックに設定されています。オンメモリデータベースではキャッシュの書き込みと永続性はトレードオフといえます。ディスクへの書き込みにおける安全性はReplicationを使うことで回避しています。2つのマシンに対してデータをコピーすることで、安全性を確保しています」。

TimesTenとOracle DB、補間し合うデータベース

「Oracle DBとTimesTenには相互に特徴があります。TimesTenはメモリセントリック、Oracle DBはディスクセントリックです。接続方法やデプロイ方法、レスポンスタイムなどにも違いがります。実行速度はTimesTen、ディスク容量やスケーラビリティについてはOracle DBの方に一日の長があるといえます」。

つまり、フロントエンドにはTimesTenを配置し高速な処理を実現、バックエンドにはOracle DBを配置してデータの永続性の実現、高いスケーラビリティの実現、といった組み合わせが考えられる。たとえばWebアプリケーションシステムを考えた場合、フロントエンドにTimesTenを配置し、TimesTenの永続化としてバックエンドにOracle DBを配置する。普段のレスポンスタイムはTimesTenにより高速性を実現し、背後にOracle DBを配置することでアクセス数に対する高いスケーラビリティを実現することができる。

同様の取り組みはBerkeley DBの説明においてもあった。これはOracleの戦略というよりは、エンドツーエンドに対してサービスを提供しようとした場合に、自然と似たような取り組みがでてくるのだという。

2つのオプション、Replication & Cache Connect to Oracle

TimesTenには2つのオプション製品が用意されている。データを複製するReplicationと、Oracle DBとの接続をサポートするCache Connect to Oracleだ。TimesTenの顧客のほとんどがReplicationを活用している。Cache Connect to Oracleに関しては3割強の顧客が採用しているとのことだ。TimesTenはオンメモリデータベースであることから、データの同期を実現するReplicationの採用は、信頼性確保の面においてほぼ必須といえるだろう。

図5 TimesTen オプション

図6 TimesTen Replication

図7 TimesTen Cache Connect to Oracle

図8 Oracle TimesTen + Oracle Database

Replicationでは同期か非同期か、復旧の方法、複製する対象やレベルの選択などいくつもの設定を実施することができる。そしてこれら機能は自動的に実施されるため、アプリケーション側は複製を実施したいという設定をおこなうたけで、あとは背後で処理が実施されるようになっている。

Chache Connect to Oracleは、キャッシュの保持にOracle DBを使うためのオプションだ。どのレベルでキャッシュするのかを自由に設定することができる。複数のキャッシュを保持することや、Replicationと組み合わせて活用することもできる。

TimesTenのビジネス戦略

OracleはTimesTenやBerkeley DB、Liteなどの組み込み向けプロダクトを獲得している。しかし、これらプロダクトと市場が衝突することはないとする。「たしかにBerkeley DBもTimesTenも同じ組み込み向けですが、Berkeley DBは組み込んでカスタマイズして使う用途であること、TimesTenはSQLで使うという違いがあるため、住みわけが実現されていると思います。独立していた会社であったときも分野が重複したことはほとんどありません」。

TimesTenはこれまで独立したプロダクトとして開発されてきており、今後もOracle DBに統合される予定はないとされている。Oracle Fusion Middlewareという全体戦略からみた場合、TimesTenは両方の面を備えている。ほかのSOAコンポーネントど同様にコンポーネントという面もあるし、これまでどおり独立したデータベースプロダクトという面も保持しつづけるだろう。なお、同氏はOracleの買収によって、Oracleブランドによる市場の拡張があったことを買収の影響としてあげることができるとする。

関連サイト


特別企画


注目サイト