Oracle NoSQL Database Cloud Serviceの開始

Oracle NoSQL Database Cloud Serviceは完全管理型のデータベース・クラウド・サービスであり、単純な問合せに対するレスポンスのレイテンシを予測可能な1桁ミリ秒にする必要があるデータベース操作向けに設計されています。

NoSQL Database Cloud Serviceを使用すると、開発者は、クラスタ・サーバーの設定や、システムのモニタリング、チューニング、診断およびスケーリングの実行を行うことなく、アプリケーション開発に集中できます。NoSQL Database Cloud Serviceは、Internet of Things、ユーザー・エクスペリエンスのパーソナライズ、インスタント不正検出、オンライン・ディスプレイ広告などのアプリケーションに適しています。

Oracle Cloudアカウントに対して認証されたユーザーは、NoSQL表を作成し、表のスループットとストレージ要件を指定できます。Oracleがユーザーにかわって、要件を満たすようにリソースを予約して管理し、容量をプロビジョニングします。容量は、スループットの場合は読取りユニットと書込みユニットを使用して、ストレージ・ユニットの場合はGBを使用して指定します。

この記事には次のトピックが含まれます:

サービスの設定

Oracle NoSQL Database Cloud Serviceを初めて設定する場合、これらのタスクをガイドとして使用します。

タスク リファレンス 関連情報
Oracle NoSQL Database Cloud Serviceをオーダーするか、Oracle無料トライアルにサインアップします。 Oracle Cloud InfrastructureドキュメンテーションOracle Cloud Infrastructureへのサインアップ

Oracle NoSQL Database Cloud Serviceサブスクリプションの月次費用を見積る方法について学習するには、月次費用の見積り を参照してください。

無料アカウントのアップグレードや、支払方法の変更を行うには、Oracle Cloud Infrastructureドキュメンテーション支払方法の変更を参照してください。

Oracle Cloudアカウントのアクティブ化と初めてのサインイン Oracle Cloud Infrastructureドキュメンテーションコンソールへのサインイン

Oracle Cloud Infrastructure Consoleの詳細は、Oracle Cloud Infrastructureドキュメントコンソールの使用を参照してください。

(推奨)サービスのコンパートメントの作成 コンパートメントの作成

コンパートメントを把握していない場合は、Oracle Cloud Infrastructureドキュメンテーションコンパートメントの理解を参照してください。

サービスのセキュリティを管理します。 Oracle NoSQL Database Cloud Serviceのセキュリティ・モデルについて NoSQL Database Cloud Serviceのセキュリティ・モデルについて理解を深めるには、 Oracle NoSQL Database Cloud Serviceのセキュリティ・モデルについてを参照してください。

インフラストラクチャ・コンソールからのサービスへのアクセス

インフラストラクチャ・コンソールからOracle NoSQL Database Cloud Serviceサービスにアクセスする方法について学習します。

  1. ようこそ電子メールからサービスURLを特定し、Oracle NoSQL Database Cloud Serviceにサインインします。
  2. ナビゲーション・メニューを開き、「データベース」をクリックし、NoSQLデータベースをクリックします。
  3. サービス管理者が表に対して作成したコンパートメントを選択します。
現在のページのヘルプを表示するには、ページの上部にあるヘルプ・アイコンヘルプ・ドロワー・アイコンをクリックします。

コンパートメントの作成

Oracle Cloud Infrastructureにサインアップすると、すべてのクラウド・リソースを保持するルート・コンパートメントが含まれるテナンシが作成されます。次に、テナンシ(ルート・コンパートメント)内に追加コンパートメントを作成し、各コンパートメント内のリソースへのアクセスを制御するために対応するポリシーを作成します。Oracle NoSQL Database Cloud Service表を作成する前に、表が属するコンパートメントを設定することをお薦めします。

Oracle Cloud Infrastructure Identity and Access Management (IAM)でコンパートメントを作成します。Oracle Cloud Infrastructureドキュメンテーションテナントの設定およびコンパートメントの管理を参照してください。

Oracle NoSQL Databaseに接続するための認証

アプリケーションをOracle NoSQL Database Cloud Serviceに接続するには、Oracle Cloudアカウントが必要です。

Oracle Cloudアカウントをまだ持っていない場合は、Oracle Cloudで開始できます。Oracle NoSQL Databaseに接続する際は、自分で認証する必要があります。次のいずれかの方法で認証できます。

認証方法#1: ユーザー・プリンシパル

ここでは、認証にOCIユーザーとAPIキーを使用します。アプリケーションの接続に使用される資格証明は、特定のユーザーに関連付けられています。アプリケーションのユーザーを作成する場合は、OCIリソースにアクセスするための認可を参照してください。

次のいずれかの方法を使用して、この認証方法の資格証明を指定できます:
  • ローカル・ディスク上のファイルを使用すると、このファイルには、ユーザーOCID、テナンシOCID、リージョン、秘密キーのパス、指紋などの詳細が含まれます。これは、セキュアなネットワークで作業していて、秘密キーおよび構成をローカルに格納することがセキュリティ・ポリシーに準拠している場合に使用できます。
  • APIを介して資格証明を指定します。
  • ボールト内のどこかに資格証明を格納します。

資格証明を構成する情報:

表1-1資格証明

概要 参照場所
テナンシIDとユーザーID (どちらもOCID) Oracle Cloud InfrastructureドキュメントテナンシのOCIDとユーザーのOCIDの取得場所を参照してください。
API署名キー

アプリケーション・ユーザーに対して、API署名キーを生成し、アップロードする必要があります。これがすでに行われている場合、このステップはスキップできます。

詳細は、Oracle Cloud Infrastructureドキュメンテーションの次のリソースを参照してください:
署名キーのフィンガープリントおよび(オプション)署名キーのパスフレーズ 署名キーのフィンガープリントおよびパスフレーズは、API署名キーの生成およびアップロード中に作成されます。Oracle Cloud Infrastructureドキュメンテーションキーのフィンガープリントの取得方法を参照してください。

ヒント:

API署名キーの生成およびアップロード時に、秘密キー、オプションのパスフレーズ、および公開キーのフィンガープリントの場所をノートにとります。

前述のタスクを実行した後、資格証明情報を収集し、アプリケーションに提供します。

アプリケーションへの資格証明の提供:

Oracle NoSQL Database SDKを使用すると、複数の方法でアプリケーションに資格証明を提供できます。SDKは、構成ファイルと、情報を直接指定できる1つ以上のインタフェースをサポートしています。特定の資格証明インタフェースについて理解するには、使用しているプログラミング言語ドライバのドキュメントを参照してください。

構成ファイルを使用している場合、デフォルトの場所は~/.oci/configです。SDKを使用すると、ファイルを代替の場所に配置できます。次のような内容です:
[DEFAULT]
user=ocid1.user.oc1..aaaaaaaas...7ap
fingerprint=d1:b2:32:53:d3:5f:cf:68:2d:6f:8b:5f:77:8f:07:13
key_file=~/.oci/oci_api_key_private.pem
tenancy=ocid1.tenancy.oc1..aaaaaaaap...keq
pass_phrase=mysecretphrase
[DEFAULT]行は、後続の行でDEFAULTプロファイルが指定されていることを示します。構成ファイルには、[PROFILE_NAME]の接頭辞を持つ複数のプロファイルを含めることができます。例:
[DEFAULT]
user=ocid1.user.oc1..aaaaaaaas...7us
fingerprint=d1:b2:32:53:d3:5f:cf:68:2d:6f:8b:5f:77:8f:07:15
key_file=~/.oci/oci_api_key_private.pem
tenancy=ocid1.tenancy.oc1..aaaaabbap...keq
pass_phrase=mysecretphrase

[MYPROFILE]
user=ocid1.user.oc1..aaaaaaaas...7ap
fingerprint=d1:b2:32:53:d3:5f:cf:68:2d:6f:8b:5f:77:8f:07:13
key_file=~/.oci/oci_api_key_private.pem
tenancy=ocid1.tenancy.oc1..aaaaaaaap...keq
pass_phrase=mysecretphrase

認証方法#2: Instance Principals

Instance Principalsは、インスタンスからサービス・コールを実行できるOracle Cloud Infrastructure Identity and Access Management (IAM)の機能です。インスタンス・プリンシパルでは、コンピュート・インスタンスで実行されているサービスのユーザー資格証明を構成したり、資格証明をローテーションする必要はありません。インスタンス自体がIAMのプリンシパル・タイプになりました。各コンピュート・インスタンスには自身のアイデンティティがあり、インスタンスに追加された証明書を使用して認証されます。これらの証明書は自動的に作成され、インスタンスに割り当てられ、ローテーションされます。

インスタンス・プリンシパル認証を使用すると、インスタンスを認可することで、Oracle Cloud Infrastructureサービスに対してAPIコールを実行できます。必要なリソースおよびポリシーの設定後、インスタンスで実行されているアプリケーションは、Oracle Cloud Infrastructureパブリック・サービスをコールでき、ユーザー資格証明または構成ファイルを構成する必要がなくなります。インスタンス・プリンシパル認証は、構成ファイルを格納しないインスタンスから使用できます。

認証方法#3: リソース・プリンシパル

リソース・プリンシパルを使用して、Oracle Cloud Infrastructureリソースを認証し、これにアクセスできます。リソース・プリンシパルは、一時セッション・トークンと、他のOracle CloudサービスがOracle NoSQL Databaseに対して自身を認証できるようにするセキュアな資格証明で構成されます。リソース・プリンシパル認証はインスタンス・プリンシパル認証とよく似ていますが、サーバーレス・ファンクションなど、インスタンスではないリソースに使用することを目的としています。

リソース・プリンシパルを使用すると、リソースを認可してOracle Cloud Infrastructureサービスに対するアクションを実行できます。各リソースには独自のアイデンティティがあり、リソースは、追加された証明書を使用して認証します。これらの証明書は自動的に作成されてリソースに割り当てられ、ローテーションされるため、リソースにアクセスするために独自の資格証明を作成および管理する必要がなくなります。リソース・プリンシパルを使用して認証する場合、Oracle Cloud Infrastructureリソースにアクセスするための資格証明を作成および管理する必要はありません。

認証後は、Oracle Cloud Infrastructureリソースへのアクセスを認可される必要があります。詳細は、OCIリソースにアクセスするための認可を参照してください。

アプリケーションのNDCSへの接続

アプリケーションをOracle NoSQL Database Cloud Serviceに接続する方法について学習します。

使用可能な多くの方法のいずれかを使用して認証された後、アプリケーションはOracle NoSQL Database Cloud Serviceに接続します。

次のいずれかを使用して、自分自身を認証できます。
  • API署名キー
    • SDK (Java、Python、C#、GO、Node.js)プログラムから直接ハードコードされる
    • デフォルト・プロファイルを含む構成ファイル
    • デフォルト以外のプロファイルを含む構成ファイル
  • 認証トークンを使用するInstance Principals
  • リソース・プリンシパル

認証オプションの詳細は、Oracle NoSQL Databaseへの接続の認証を参照してください。

NDCSに接続するには、次のいずれかの方法を使用します。

  • コードに資格証明を直接指定します。
    /* Use the SignatureProvider to supply your credentials to NoSQL Database.
     * By default, the SignatureProvider will read your OCI configuration file 
     * from the default location, ~/.oci/config. See SignatureProvider for 
     * additional options for reading configurations in other ways.*/
    SignatureProvider sp = new SignatureProvider(
     tenantId,     // a string, OCID
     userId,       // a string, OCID
     fingerprint , // a string
     privateKey,   // a string, content of private key
     passPhrase    // optional, char[]
    );
    //Create an handle to access the cloud service in the us-ashburn-1 region.
    NoSQLHandleConfig config = new NoSQLHandleConfig(Region.US_ASHBURN_1);
    config.setAuthorizationProvider(sp);
    NoSQLHandle handle = NoSQLHandleFactory.createNoSQLHandle(config);
    
    //At this point, your handle is set up to perform data operations. 
  • 構成ファイルを使用したデフォルト・プロファイルとの接続:
    /* Use the SignatureProvider to supply your credentials to NoSQL Database.
     * By default, the SignatureProvider will read your OCI configuration file 
     * from the default location, ~/.oci/config. See SignatureProvider for 
     * additional options for reading configurations in other ways. */
    SignatureProvider sp = new SignatureProvider();
  • 構成ファイルを使用したデフォルト以外のプロファイルとの接続:
    /* Use the SignatureProvider to supply your credentials to NoSQL Database. 
    * Specify the full location of the configuration file in the construtor for SignatureProvider. 
    */
    final String config_file = "<path_to_config_file>";
    SignatureProvider sp = new SignatureProvider(config_file);
  • Instance Principalを使用した接続:

    Instance PrincipalはIAMサービス機能で、インスタンスが認可者(またはプリンシパル)となり、サービス・リソースに対するアクションを実行できます。各コンピュート・インスタンスは、自身のアイデンティティを持ち、追加された証明書を使用して認証を行います。
    SignatureProvider authProvider = new SignatureProvider();
    authProvider = SignatureProvider.createWithInstancePrincipal();
  • リソース・プリンシパルを使用した接続:

    リソース・プリンシパルはIAMサービス機能で、リソースを認可済俳優(またはプリンシパル)にでき、サービス・リソースに対するアクションを実行できます。
    SignatureProvider authProvider = new SignatureProvider();
    authProvider = SignatureProvider.createWithResourcePrincipal();

ハンドルの作成:

us-ashburn-1リージョンでクラウド・サービスにアクセスするためのハンドルを作成します。
NoSQLHandleConfig config = new NoSQLHandleConfig(Region.US_ASHBURN_1); 
config.setAuthorizationProvider(sp);
NoSQLHandle handle = NoSQLHandleFactory.createNoSQLHandle(config); 

この時点で、データ操作を実行するようにハンドルが設定されています。使用されるJavaクラスの詳細は、SignatureProviderを参照してください。

NDCSに接続するには、次のいずれかの方法を使用します。
  • コードに資格証明を直接指定します。
    from borneo.iam import SignatureProvider
    #
    # Use SignatureProvider directly via API. Note that the
    # private_key argument can either point to a key file or be the
    # string content of the private key itself.
    #
    at_provider = SignatureProvider(tenant_id='ocid1.tenancy.oc1..tenancy',
                                    user_id='ocid1.user.oc1..user',
                                    private_key=key_file_or_key, 
                                    fingerprint='fingerprint',   
                                    pass_phrase='mypassphrase')
  • 構成ファイルを使用したデフォルト・プロファイルとの接続:
    from borneo.iam import SignatureProvider
    #
    # Use SignatureProvider with a default credentials file and
    # profile $HOME/.oci/config
    #
    at_provider = SignatureProvider()
  • 構成ファイルを使用したデフォルト以外のプロファイルとの接続:
    from borneo.iam import SignatureProvider
    #
    # Use SignatureProvider with a non-default credentials file and profile
    #
    at_provider = SignatureProvider(config_file='myconfigfile', 
                                    profile_name='myprofile')
  • Instance Principalを使用した接続:

    Instance PrincipalはIAMサービス機能で、インスタンスが認可者(またはプリンシパル)となり、サービス・リソースに対するアクションを実行できます。各コンピュート・インスタンスは、自身のアイデンティティを持ち、追加された証明書を使用して認証を行います。
    at_provider =
    SignatureProvider.create_with_instance_principal(region=my_region)
  • リソース・プリンシパルを使用した接続:

    リソース・プリンシパルはIAMサービス機能で、リソースを認可済俳優(またはプリンシパル)にでき、サービス・リソースに対するアクションを実行できます。
    at_provider = SignatureProvider.create_with_resource_principal()

ハンドルの作成:

Oracle NoSQL Database Cloud Serviceアプリケーションの最初のステップは、サービスにリクエストを送信するために使用するハンドルを作成することです。ハンドルは、資格証明およびその他の認証情報、およびアプリケーションが接続するエンドポイントを使用して構成されます。エンドポイントの例は、リージョンRegions.US_ASHBURN_1を使用することです。
from borneo import NoSQLHandle, NoSQLHandleConfig, Regions
from borneo.iam import SignatureProvider
# the region to which the application will connect
region = Regions.US_ASHBURN_1
# create a configuration object
config = NoSQLHandleConfig(region, at_provider)
# create a handle from the configuration object
handle = NoSQLHandle(config)
次のいずれかの方法を使用すると、アプリケーションをNDCSに接続できます。
  • コードに資格証明を直接指定します。
    privateKeyFile := "/path/to/privateKeyFile"
    passphrase := "examplepassphrase"
    sp, err := iam.NewRawSignatureProvider("ocid1.tenancy.oc1..tenancy",
                                           "ocid1.user.oc1..user",
                                           "us-ashburn-1", 
                                           "fingerprint", 
                                           "compartmentID", 
                                           privateKeyFile ,
                                           &passphrase )
    if err != nil {
        return
    }
    cfg := nosqldb.Config{
        AuthorizationProvider: sp,
        // This is only required if the "region" property is not 
        //specified in the config file.
        Region: "us-ashburn-1",
    }
  • 構成ファイルを使用したデフォルト・プロファイルとの接続:
    cfg := nosqldb.Config{
    // This is only required if the "region" property is not 
    //specified in ~/.oci/config.
    // This takes precedence over the "region" property when both are specified.
        Region: "us-ashburn-1", 
    }
    client, err := nosqldb.NewClient(cfg)
  • 構成ファイルを使用したデフォルト以外のプロファイルとの接続:
    sp, err := iam.NewSignatureProviderFromFile("your_config_file_path", 
               "your_profile_name", "", "compartment_id")
    if err != nil {
        return
    }
    cfg := nosqldb.Config{
        AuthorizationProvider: sp,
        // This is only required if the "region" property is not specified in the config file.
        Region: "us-ashburn-1",
    }
    client, err := nosqldb.NewClient(cfg)
  • Instance Principalを使用した接続:

    Instance PrincipalはIAMサービス機能で、インスタンスが認可者(またはプリンシパル)となり、サービス・リソースに対するアクションを実行できます。各コンピュート・インスタンスは、自身のアイデンティティを持ち、追加された証明書を使用して認証を行います。
    sp, err := iam.NewSignatureProviderWithInstancePrincipal("compartment_id")
    if err != nil {
        return
    }
    cfg := nosqldb.Config{
        AuthorizationProvider: sp,
        Region: "us-ashburn-1",
    }
    client, err := nosqldb.NewClient(cfg)
  • リソース・プリンシパルを使用した接続:

    リソース・プリンシパルはIAMサービス機能で、リソースを認可済俳優(またはプリンシパル)にでき、サービス・リソースに対するアクションを実行できます。
    sp, err := iam.NewSignatureProviderWithResourcePrincipal("compartment_id")
    if err != nil {
        return
    }
    cfg := nosqldb.Config{
        AuthorizationProvider: sp,
        Region: "us-ashburn-1",
    }
    client, err := nosqldb.NewClient(cfg)
NDCSに接続するには、次のいずれかの方法を使用します。
  • コードに資格証明を直接指定します。

    初期構成では、auth.iamプロパティの一部として資格証明を直接指定できます。NoSQLClientインスタンスを次のように作成します。
    const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
    let client = new NoSQLClient({
        region: <your-service-region>
        auth: {
            iam: {
                tenantId: myTenancyOCID,
                userId: myUserOCID,
                fingerprint: myPublicKeyFingerprint,
                privateKeyFile: myPrivateKeyFile,
                passphrase: myPrivateKeyPassphrase
            }
        }
    });
  • 構成ファイルを使用したデフォルト・プロファイルとの接続:

    資格証明はOracle Cloud Infrastructure構成ファイルに格納できます。構成ファイルのデフォルト・パスは~/.oci/configで、~はユーザーのホーム・ディレクトリを表します。Windowsでは、~USERPROFILE環境変数の値です。ファイルには複数のプロファイルを含めることができます。デフォルトでは、SDKはDEFAULTというプロファイルを使用して資格証明を格納します。

    これらのデフォルト値を使用するには、~/.ociディレクトリにconfigという名前のファイルを次の内容で作成します。
    [DEFAULT]
    tenancy=<your-tenancy-ocid>
    user=<your-user-ocid>
    fingerprint=<fingerprint-of-your-public-key>
    key_file=<path-to-your-private-key-file>
    pass_phrase=<your-private-key-passphrase>
    region=<your-region-identifier>
    また、OCI構成ファイルの資格証明とともにリージョン識別子を指定することもできます。ドライバはデフォルトで上の場所を参照し、リージョンが資格証明とともに提供されている場合は、初期構成を指定する必要はなく、引数なしコンストラクタを使用できます。
    const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
    let client = new NoSQLClient();
    または、構成でリージョンを指定することもできます。
    const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
    let client = new NoSQLClient({ region: Region.US_ASHBURN_1 });
  • 構成ファイルを使用したデフォルト以外のプロファイルとの接続:

    OCI構成ファイルの別のパスと構成ファイル内の別のプロファイルを使用できます。この場合、これらは初期構成のauth.iamプロパティ内で指定します。たとえば、OCI構成ファイル・パスが~/myapp/.oci/configで、資格証明をプロファイルJaneに格納する場合:

    次に、次のようにNoSQLClientインスタンスを作成します。
    const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
    let client = new NoSQLClient({
        region: Region.US_ASHBURN_1,
        auth: {
            iam: {
                configFile: '~/myapp/.oci/config',
                profileName: 'Jane'
            }
        }
    });
  • Instance Principalを使用した接続:

    Instance PrincipalはIAMサービス機能で、インスタンスが認可者(またはプリンシパル)となり、サービス・リソースに対するアクションを実行できます。各コンピュート・インスタンスは、自身のアイデンティティを持ち、追加された証明書を使用して認証を行います。

    設定したら、次のようにNoSQLClientインスタンスを作成します。
    const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
    const client = new NoSQLClient({
        region: Region.US_ASHBURN_1,
        compartment: 'ocid1.compartment.oc1..............'
        auth: {
            iam: {
                useInstancePrincipal: true
            }
        }
    });
    前述と同じ構成でJSON構成ファイルを使用することもできます。Instance Principalを使用する場合、コンパートメントID (OCID)をコンパートメント・プロパティとして指定する必要があります。これは、デフォルトのコンパートメントを使用する場合でも必要です。コンパートメント名やパスではなく、コンパートメントIDを使用する必要があります。また、Instance Principalを使用する場合、NoSQLClient APIをコールするときに、表名にコンパートメント名またはパスの接頭辞を付けることはできません。
  • リソース・プリンシパルを使用した接続:

    リソース・プリンシパルはIAMサービス機能で、リソースを認可済俳優(またはプリンシパル)にでき、サービス・リソースに対するアクションを実行できます。

    設定したら、次のようにNoSQLClientインスタンスを作成します。
    const NoSQLClient = require('oracle-nosqldb').NoSQLClient;
    const client = new NoSQLClient({
        region: Region.US_ASHBURN_1,
        compartment: 'ocid1.compartment.oc1...........................'
        auth: {
            iam: {
                useResourcePrincipal: true
            }
        }
    });
    前述と同じ構成でJSON構成ファイルを使用することもできます。リソース・プリンシパルを使用する場合は、コンパートメントID (OCID)をコンパートメント・プロパティとして指定する必要があります。これは、デフォルトのコンパートメントを使用する場合でも必要です。コンパートメント名やパスではなく、コンパートメントIDを使用する必要があります。また、リソース・プリンシパルを使用する場合、NoSQLClient APIをコールするときに、表名にコンパートメント名またはパスの接頭辞を付けることはできません。
NDCSに接続するには、次のいずれかの方法を使用します。
  • コードに資格証明を直接指定します。

    IAMAuthorizationProviderの作成時に、資格証明をIAMCredentialsとして直接指定できます。次のようにNoSQLClientを作成します。
    var client = new NoSQLClient(
        new NoSQLConfig
        {
            Region=<your-service-region>,
            AuthorizationProvider = new IAMAuthorizationProvider(
                new IAMCredentials
                {
                    TenantId=myTenancyOCID,
                    UserId=myUserOCID,
                    Fingerprint=myPublicKeyFingerprint,
                    PrivateKeyFile=myPrivateKeyFile
                })
        });
  • 構成ファイルを使用したデフォルト・プロファイルとの接続:

    資格証明はOracle Cloud Infrastructure構成ファイルに格納できます。構成ファイルのデフォルト・パスは~/.oci/configで、~はユーザーのホーム・ディレクトリを表します。Windowsでは、~USERPROFILE環境変数の値です。ファイルには複数のプロファイルを含めることができます。デフォルトでは、SDKはDEFAULTという名前のプロファイルを使用して資格証明を格納します

    これらのデフォルト値を使用するには、~/.oci ディレクトリにconfigという名前のファイルを次の内容で作成します。
    [DEFAULT]
    tenancy=<your-tenancy-ocid>
    user=<your-user-ocid>
    fingerprint=<fingerprint-of-your-public-key>
    key_file=<path-to-your-private-key-file>
    pass_phrase=<your-private-key-passphrase>
    region=<your-region-identifier>
    また、OCI構成ファイルの資格証明とともにリージョン識別子を指定することもできます。デフォルトでは、ドライバはOCI構成ファイル内の資格証明とリージョンをデフォルト・パスおよびデフォルト・プロファイルで検索します。したがって、前述の資格証明とともにリージョンを指定する場合は、構成を渡さずにNoSQLClientインスタンスを作成できます。
    var client = new NoSQLClient();
    または、NoSQLConfigにリージョン(およびその他のプロパティ)を指定することもできます。
    var client = new NoSQLClient(
        new NoSQLConfig(
        {
            Region = Region.US_ASHBURN_1,
            Timeout = TimeSpan.FromSeconds(10),
        });
  • 構成ファイルを使用したデフォルト以外のプロファイルとの接続:

    OCI構成ファイルの別のパスと構成ファイル内の別のプロファイルを使用できます。この場合、初期構成のauth.iamプロパティ内にこれらを指定します。たとえば、OCI構成ファイル・パスが~/myapp/.oci/configで、資格証明をプロファイルJaneに格納する場合:

    次に、次のようにNoSQLClientインスタンスを作成します。
    var client = new NoSQLClient(
        new NoSQLConfig
        {
            Region = Region.US_ASHBURN_1,
            AuthorizationProvider = new IAMAuthorizationProvider(
                "~/myapp/.oci/config", "Jane")
        });
  • Instance Principalを使用した接続:

    Instance PrincipalはIAMサービス機能で、インスタンスが認可者(またはプリンシパル)となり、サービス・リソースに対するアクションを実行できます。各コンピュート・インスタンスは、自身のアイデンティティを持ち、追加された証明書を使用して認証を行います。設定したら、次のようにNoSQLClientインスタンスを作成します。
    var client = new NoSQLClient(
        new NoSQLConfig
        {
            Region=<your-service-region>,
            Compartment="ocid1.compartment.oc1.............................",
            AuthorizationProvider=IAMAuthorizationProvider.CreateWithInstancePrincipal()
        });
    次のように、JSONで同じ構成を表すこともできます。
    {
        "Region": "<your-service-region>",
        "AuthorizationProvider":
        {
            "AuthorizationType": "IAM",
            "UseInstancePrincipal": true
        },
        "Compartment": "ocid1.compartment.oc1.............................",
    }

    Instance Principalを使用する場合、コンパートメントID (OCID)をcompartmentプロパティとして指定する必要があります。これは、デフォルトのコンパートメントを使用する場合でも必要です。コンパートメント名やパスではなく、コンパートメントIDを使用する必要があります。また、Instance Principalを使用する場合、NoSQLClient APIをコールするときに、表名にコンパートメント名またはパスの接頭辞を付けることはできません。

  • リソース・プリンシパルを使用した接続:

    リソース・プリンシパルはIAMサービス機能で、リソースを認可済俳優(またはプリンシパル)にでき、サービス・リソースに対するアクションを実行できます。設定したら、次のようにNoSQLClientインスタンスを作成します。
    var client = new NoSQLClient(
        new NoSQLConfig
        {
            Region = <your-service-region>,
            Compartment =
                "ocid1.compartment.oc1.............................",
            AuthorizationProvider =
                IAMAuthorizationProvider.CreateWithResourcePrincipal()
        });
    次のように、JSONで同じ構成を表すこともできます。
    {
        "Region": "<your-service-region>",
        "AuthorizationProvider":
        {
            "AuthorizationType": "IAM",
            "UseResourcePrincipal": true
        },
        "Compartment": "ocid1.compartment.oc1.............................",
    }

    リソース・プリンシパルを使用する場合は、コンパートメントID (OCID)をcompartmentプロパティとして指定する必要があります。これは、デフォルトのコンパートメントを使用する場合でも必要です。コンパートメント名やパスではなく、コンパートメントIDを使用する必要があります。また、リソース・プリンシパルを使用する場合、NoSQLClient APIをコールするときに、表名にコンパートメント名またはパスの接頭辞を付けることはできません。

一般的なワークフロー

Oracle NoSQL Database Cloud Serviceを操作するための一連の一般的なタスクです。

Oracle NoSQL Database Cloud Serviceを使用してアプリケーションを初めて開発する場合、これらのタスクをガイドとして使用します。

タスク 説明 詳細情報
アプリケーションの接続 Oracle NoSQL Database Cloud Service表を使用するアプリケーションを接続します。 アプリケーションのNDCSへの接続
アプリケーションの開発 Oracle NoSQL Database Cloud Service表に接続した後で、アプリケーションを開発します。 Oracle Cloudでの開発

Oracle NoSQL Database Cloud Simulatorでの開発

Oracle NoSQL Database Cloud Serviceを初めて設定する場合、サービスの設定を参照してください。

クイック・スタート・チュートリアル

クイック・スタート・チュートリアルにアクセスし、サービスを開始します。

  1. サービスへのアクセス権を取得します。

    クラウド・プロモーションにサインアップするか、Oracle Cloudサブスクリプションを購入します。オーダーをアクティブ化し、ユーザーを作成します(オプション)。サービスの設定を参照してください。

  2. 資格証明を取得して、アプリケーションに接続します。Oracle NoSQL Databaseへの接続の認証を参照してください。

  3. Oracle NoSQL Database Cloud Serviceで表を作成します。