【インタビュー】

ビッグデータの統合

NoSQL技術の進化ともない、Oracle NoSQL Database 3.0も機能を拡張
ビッグデータの戦略と展開により深く関わるようになった

 Oracle NoSQL Database 3.0の発表を受け、本誌*はオラクル・コーポレーションで製品管理ディレクターを務めるデイブ・セグルーへのインタビューをおこない、NoSQLの現状と活用事例、Oracle NoSQL Database 3.0のおもな機能について訊いた。

――今日の企業におけるNoSQLの役割はどのようなところにあると思いますか。


オラクル・コーポレーション
製品管理ディレクター
デイブ・セグルー

セグルー ビッグデータ活用のための技術の1つであるNoSQLは、ビッグデータ・ソリューションのアーキテクチャとその展開にかかわっています。NoSQLは優れた費用対効果、高いパフォーマンス、スケールアウト可能なデータベース・プラットフォームを提供し、構造化・半構造化データをきわめてシンプルに、そして大規模なオペレーションを簡易化します。企業がNoSQLデータベースの導入を進めている理由は、NoSQLデータベースを導入すれば、きわめて柔軟性の高いアプリケーション開発者指向のデータモデルと、シンプルなデータ構造を実現する効率性の高いオペレーションを手にすることができるからです。すなわち導入企業は、新しいタイプのアプリケーションやサービスの提供による収益増、および総体的なITコスト低減を同時に図ることができるということを意味します。


――NoSQLは、リレーショナル・データベース(RDBMS)などほかの情報技術をどのように補完するのでしょうか。

セグルー NoSQLはもともと汎用データベースエンジンとして設計されたものではなく、特定のデータセット管理上の課題に対処する目的で設計されました。つまり、企業のデータ管理ソリューションを実際に構成しているコンポーネントです。これは、均等に分散した低レイテンシのデータベース・プラットフォームを提供してHadoop内のMapReduceプロセスから直接、インデックス付きデータへの高速アクセスを実現することによって、Apache HadoopとHadoopの分散データ処理を補完します。

 それは、大規模データの高速分散処理専用に設計されたrelaxedトランザクション・セマンティクスにより水平スケーラビリティを備えた高速データベースを実現することによって、RDBMSを補完します。この結果、NoSQLはしばしば、新規アプリケーションの作成や新規データセットの取得に、また場合によっては、RDBMSからデータの一部をオフロードして操作するのに使われています。NoSQLデータベースが単独のデータ管理ソリューションに展開されることは決してありません。弊社では各ジョブに最適なテクノロジーを活用して、どのOracle NoSQL Databaseユーザーにも、NoSQLデータベース、RDBMS、Hadoopを組み合わせて提供しています。

――今日の企業はOracle NoSQL Databaseをどのように活用しているのでしょうか。

セグルー 導入しているお客様に伺ったところでは、活用事例は次の3つの基本型に集約することができます。第1に、多くの企業で、Webスケールのパーソナライゼーションやトランザクション・アプリケーションと私が呼んでいるものにOracle NoSQL Databaseが使われています。この種のアプリケーションは顧客サービスや顧客セルフサービスでよく見られます。この種のアプリケーションに適した業種には、金融サービス、保険、広告、マーケティング、オンラインカタログ、ソーシャルメディア、オンライン小売業などがあります。

 第2によく見られる活用事例は、Oracle NoSQL Databaseがリアルタイムイベント処理に使われる例で、その代表的なアプリケーションとしては、詐欺防止、医療用監視、ファクトリー・オートメーション(FA)、サービス品質監視、位置情報追跡などがあります。第3が、Oracle NoSQL Databaseが時系列データ管理に使われる例です。金融サービスで株式や商品の取引情報に使われるほか、各種ユーティリティ、石油・ガス、製造分野ではセンサーデータの取得に使われています。

――これらの活用事例では、ほかのどのようなプロセスやテクノロジーが用いられていますか。

セグルー 導入するテクノロジーは、それによって実現しようとする機能によって大きく変わってきます。これまで見てきたどのケースにおいても、OracleデータベースのようなRDBMSとデータウェアハウスは明らかに近い関係にあり、NoSQLデータベース内のデータに統合されています。多くのケースにおいて、とくにWebスケールのパーソナライゼーションや時系列データ管理では、バッチ処理や入手が容易になっている膨大な量のデータに関する単純な簡易統計の提供にはHadoopやMapReduceも使われています。

 このほか、NoSQLベースのソリューションの一部としてミドルウェア・テクノロジーが組み込まれる例もよく見られます。とくに、Oracle Event ProcessingやOracle Real-Time Decisionsといったソフトウェア製品がリアルタイムイベントの処理や管理に、またOracle Coherenceのようなキャッシュ機能を提供する製品が、同一アプリケーションのキャッシュグリッドでリレーショナルデータ、非リレーショナルデータ双方のキャッシュに使われています。

――オラクルは最近、Oracle NoSQL Databaseの最新版、Oracle NoSQL Database 3.0を発表しました。そのおもな機能、およびビッグデータの処理とアウトプットでどのような改善がなされるかについて伺えますか。

セグルー 2014年4月上旬にリリースされたOracle NoSQL Database 3.0には、とても興味深いいくつかの新機能が搭載されています。セカンダリ・インデックスのサポートを備えた新しい表形式のデータモデル、(当社でzoneと呼ばれている)セカンダリ・データセンターのサポート、そしてセキュリティに関する初の機能セットです。

――新しい表形式のデータモデルとセカンダリ・インデックスの各機能について詳しくお聞かせいただけますか。

セグルー NoSQL技術の導入を推進するには、お客様やアプリケーション開発者が慣れている方法で利用できるようにすることが重要です。その方向に沿って、Oracle NoSQL Database 3.0には表形式のデータモデルを追加しました。それによって、開発者はより簡単にデータを表現し、より迅速にアプリケーションを構築することができます。JSON(JavaScriptオブジェクト表記)構造を使って実装したそれは、テーブルの進化やストレージに適した柔軟なデータモデルです。

 Oracle NoSQL Database 3.0では表形式を導入するとともに、セカンダリ・インデックスを追加することによって、指定されたレコード内のフィールドの任意の組合せに基づいて構築できるようにしました。セカンダリ・インデックスは、Oracle NoSQL Databaseの各シャード内のプライマリデータと同じ場所に配置されています。その利点は、同じシャード内のプライマリレコードと同じ場所にあるこれらのセカンダリ・インデックスの読み込みと書き込みを高速におこなえることにあります。さらに、これらのインデックスはトランザクションの一貫性を維持しており、セカンダリ・インデックスはシャード全体にわたって自動的に並列化されます。その結果、高効率でスケーラブルなインデックス付きスキームが実現し、アプリケーション開発者はこれを活用して、大容量・低レイテンシというクエリ要件を満たすことができます。

「企業がNoSQLデータベースの導入を進めている理由は、
NoSQLデータベースを導入すれば、きわめて柔軟性の高い
アプリケーション開発者指向のデータモデルと、シンプルなデータ構造を
実現する効率性の高いオペレーションを手にすることができるからです」

――新しいセカンダリ・データセンターにはどのような機能がありますか。

セグルー Oracle NoSQL DatabaseはそのRelease 2.1でデータセンターのサポートを導入しました。このことによって企業は、異なるリソース間の自動的なレプリケーションとフェイルオーバーによって、リソース(ストレージノード)を複数のデータセンターに分割することができるようになりました。Oracle NoSQL Database 3.0はセカンダリ・データセンターを追加しています。セカンダリゾーンによって、企業は自動的な非同期レプリケーションによりグローバル・ディストリビューションに参加するリモートデータセンターを定義することができます。

 つまりOracle NoSQL Database 3.0は、データを複製するだけでなく、そのセカンダリ・データセンター機能のおかげで、特定のセカンダリゾーンだけで実行するクエリとワークロードをアプリケーションで定義することもできます。この機能によってアプリケーションは、プライマリゾーン内で実行されるスループットや低レイテンシ・クエリに影響を及ぼすだけでなく、バッチ処理などの特定ワークロードを実行し、またはセカンダリゾーンへのレポートを作成することができます。これらの機能を統合することで企業は、グローバルな災害復旧計画により事業継続性を確保するとともに、プライマリゾーンとセカンダリゾーンの間、またはその全体にわたって、クエリやアプリケーションのロードバランス(負荷均衡)を管理することができます。

――Oracle NoSQL Databaseの最新版では新しいセキュリティ機能が実現していますね。

セグルー Oracle NoSQL Databaseは、クライアント/サーバー間通信とサーバー同士の通信の双方にSSL暗号化通信技術を追加し、それによって、OSに依存しない、クラスタ全体のパスワードを使ったユーザー認証を追加します。パスワードは、難読化されたセキュアなトラストストアまたはOracle Wallet内に格納することができます。これらの2つの機能により、企業は外部からネットワークへの侵入を阻止するとともに、不正アクセスからの機密データ保護を強化することができます。

――NoSQLとOracle NoSQL Databaseはどのように進化してきましたか。また、NoSQLの将来に向け、どのようなビジネス課題、技術的な課題がありますか。

セグルー 私たちが見てきたおもな変化は、アプリケーションの科学的な実験段階からミッションクリティカルな技術の生産展開への移行でした。これはいくつかの面でNoSQL技術に影響を与えました。第1に、意思決定者が変わりました。アプリケーション開発者の役割はもはや、どのNoSQL製品を採用するかを選択するだけに留まりません。企業のIT部門は、提携すべきNoSQL技術ベンダーを選択するうえで重要な影響力を及ぼすようになっています。

 第2の変化は、製品フォーカスがシフトしたことです。草創期のNoSQLでは、技術と機能の焦点が極端に開発者指向でした。フィードとスピードがそのすべてでした。しかしこの1年ほどで、とくに大規模で複雑な生産展開において、セキュリティとシステム管理がその主役に躍り出ました。この進化は、Oracle NoSQL Databaseに搭載される機能にも影響を与えています。この進化は、オラクルの既存のIT技術全体との統合を実現するとともに、災害復旧、セキュリティ、グローバルデータの整合性などの、クリティカルな機能をめぐるITの諸問題に対処するために自動化されたシンプルな管理機能を実現する必要性を強調しています。

 NoSQLによって既存のITインフラを拡張する方法について、総合的な企業指向の視点を共有できる製品や技術パートナーを見極めることが企業の課題だと、私は思っています。 

*1 Oracle Magazine US版

ページの先頭へ