Oracle NoSQL Databaseの使用の開始

Oracle NoSQL Databaseは、大規模なストレージとキーと値、JSON、および表形式データへのアクセスを提供する、分散型でシェアード・ナッシングな非リレーショナル・データベースです。あらゆる規模の単純な問合せに予測可能で低レイテンシを実現でき、高可用性を実現するために一から設計されています。

Oracle NoSQL Databaseでは、非常に柔軟なデプロイメントと、アプリケーションからデータ・ストアにアクセスするための様々な方法が提供されます。超低レイテンシのゼロ管理データベースが必要なアプリケーションの場合は、Javaアプリケーションに直接埋め込むことができます。このデプロイメント・シナリオでは、アプリケーションはAPIを使用してデータベースを起動および停止できます。Javaダイレクト・ドライバを使用すると、アプリケーションはデータを読み取ってデータベースに書き込むことができます。ほとんどのシナリオでは、Oracle NoSQLは高速ネットワークで接続されたコモディティ・コンピュータのクラスタにデプロイされます。このデプロイメント・シナリオでは、アプリケーションはOracle NoSQL Databaseクラスタと通信するためにプログラミング言語SDKを選択する必要があります。Oracle NoSQL Databaseには、2種類の言語SDKが用意されています。
  1. 直接ドライバ: このタイプのSDKは、TPC/IPを使用してクラスタ内のすべてのOracle NoSQLノードに直接接続します。したがって、アプリケーションとデータベース・クラスタ内のすべてのOracle NoSQLノードの間のネットワーク・ルートを確保するために注意してください。現在、ダイレクト・ドライバでサポートされているプログラミング言語はJavaのみです。
  2. 標準: このタイプのSDKは、Oracle NoSQL HTTP proxyを介してHTTPプロトコルを使用してデータベースに接続します。標準SDKではHTTPが使用されるため、アプリケーション・コードとロード・バランサ(使用している場合)の間のネットワーク・ルート、またはロード・バランサを使用していない場合にはアプリケーションとHTTPプロキシの間のネットワーク・ルートのみを確認する必要があります。

SQL for Oracle NoSQL Databaseへようこそ。この言語は、Oracle NoSQL Databaseを対象とするSQLに似たインタフェースを提供します。SQL for Oracle NoSQL Databaseデータ・モデルでは、フラット・リレーショナル・データ、階層型の型付けされた(スキーマあり)データおよびスキーマなしのJSONデータがサポートされます。固定データまたは固定データとスキーマレスJSONの組合せを必要とするアプリケーションに対して、明確に定義されたスキーマを持つ表を柔軟に作成できます。純粋なドキュメント指向アプリケーションの場合、主キー・フィールド以外のスキーマ定義がないJSONコレクション表を使用できます。SQL for Oracle NoSQL Databaseは、異なるサブモデル間でインピーダンス・ミスマッチが発生することなく、このようなすべてのデータをシームレスに処理するように設計されています。インピーダンス・ミスマッチとは、データベース・モデルとプログラミング言語モデルの間の差異が原因で発生する問題のことです。

Oracle NoSQL Databaseは、自動言語APIおよびデータ構造を持つ最も人気のあるプログラミング言語とフレームワークの多くをサポートし、アプリケーション言語にネイティブでNoSQLデータベースに格納されているデータにアクセスできます。現在、Javascript (Node.js)、Python、Java、Golang、C#/.NETおよびSpring Dataのプログラミング言語とフレームワークがサポートされています。また、サポートされている統合開発環境(Visual Studio CodeIntelliJまたはEclipse)向けのプラグインを使用してコードを開発する際に、データベースをナビゲートすることもできます。

前提条件: Oracle NoSQL Databaseをインストールしておきます。Oracle NoSQL Databaseの簡略化されたバージョンであるKVLiteを使用することもできます。