Sobre APIs do OCI SDK

A Oracle Cloud Infrastructure apresenta vários Software Development Kits (SDKs) para facilitar o desenvolvimento de soluções personalizadas.

Os Kits de Desenvolvimento de Software (SDKs) são usados para criar e implantar aplicativos que são integrados aos serviços doOracle Cloud Infrastructure. Existem diferentes SDKs do OCI que suportam Java, Python, Go, .NET, Typescript, Javascript e Ruby. Cada SDK fornece as ferramentas necessárias ao desenvolvimento de um aplicativo, incluindo amostras de código e documentação para criar, testar, diagnosticar e solucionar problemas. O Oracle Cloud Infrastructure SDK permite que você grave um código para gerenciar os recursos da Oracle Cloud Infrastructure.

Usando APIs do OCI SDK

Para usar os SDKs do OCI, você deve ter o seguinte:

OCI SDK for Java: Você pode fazer download do OCI SDK for Java aqui. Além dos requisitos acima, você precisa ter o Java Versão 8 ou mais instalado. Para obter mais detalhes, consulte SDK para Java.

Observação: O OCI SDK também está disponível para Python, Go, Typescript, Javascript, .NET e Ruby. Consulte Guias do OCI SDK.

Criando tabela Singleton com o OCI Java SDK

Você pode usar a classe CreateTableRequest dentro de um método createTable para criar uma nova tabela NoSQL.

O trecho de código a seguir mostra como usar o OCI Java SDK para criar uma tabela singleton.

private static final String DEF_OCI_CONFIG = "~/.oci/config";
private static final String DEF_PROFILE = "DEFAULT";
String tableName = "<table_name>";
String region = "<region_name>";

/* Initialize NoSQLHandle */
   NosqlClient client = connect(endpoint, DEF_OCI_CONFIG, DEF_PROFILE);

/* Create table */
   String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + "(" +
                     "id INTEGER, info JSON, PRIMARY KEY(id)) " ;
   TableLimits limits = TableLimits.builder()
                .maxReadUnits(50)
                .maxWriteUnits(50)
                .maxStorageInGBs(1)
                .build();
   CreateTableDetails.Builder payload = CreateTableDetails.builder()
                .compartmentId(compartmentId)
                .name(tableName)
                .ddlStatement(ddl)
                .tableLimits(limits);
   CreateTableRequest tableReq = CreateTableRequest.builder()
                .createTableDetails(payload.build())
                .build();
   CreateTableResponse tableRes = client.createTable(tableReq);
        output("\nCreating table: " + ddl);
        waitForComplete(client, tableRes.getOpcWorkRequestId());
        output("Table created: " + tableName);

Criando tabela Global Ativa usando o OCI Java SDK

Você pode usar o OCI Java SDK para criar uma tabela Global Active no NDCS.

Para criar uma tabela Global Ativa:

O trecho de código a seguir mostra como criar uma tabela Global Ativa usando o OCI Java SDK.

private static final String DEF_OCI_CONFIG = "~/.oci/config";
private static final String DEF_PROFILE = "DEFAULT";
String tableName = "<table_name>";
String region = "<region_name>";

/* Initialize NoSQLHandle */
   NosqlClient client = connect(endpoint, DEF_OCI_CONFIG, DEF_PROFILE);

/* Create table */
   String ddl = "CREATE TABLE IF NOT EXISTS " + tableName + "(" +
                     "id INTEGER, info JSON, PRIMARY KEY(id)) " +
                     "with schema frozen";
   TableLimits limits = TableLimits.builder()
                .maxReadUnits(50)
                .maxWriteUnits(50)
                .maxStorageInGBs(1)
                .build();
   CreateTableDetails.Builder payload = CreateTableDetails.builder()
                .compartmentId(compartmentId)
                .name(tableName)
                .ddlStatement(ddl)
                .tableLimits(limits);
   CreateTableRequest tableReq = CreateTableRequest.builder()
                .createTableDetails(payload.build())
                .build();
   CreateTableResponse tableRes = client.createTable(tableReq);
        output("\nCreating table: " + ddl);
        waitForComplete(client, tableRes.getOpcWorkRequestId());
        output("Table created: " + tableName);

/* Add replica ca-montreal-1 */
   CreateReplicaDetails info = CreateReplicaDetails
                .builder()
                .region(region)
                .compartmentId(compartmentId)
                .build();
   CreateReplicaRequest replicaReq = CreateReplicaRequest
                .builder()
                .tableNameOrId(tableName)
                .createReplicaDetails(info)
                .build();
   CreateReplicaResponse replicaRes = client.createReplica(replicaReq);
        output("\nAdding replica: " + region);
        waitForComplete(client, replicaRes.getOpcWorkRequestId());
        output("Added replica: " + region);