Sobre APIs SDK do OCI
O Oracle Cloud Infrastructure fornece vários SDKs para facilitar o desenvolvimento de soluções personalizadas.
Os SDKs (SDKs) são usados para criar e implantar aplicativos integrados aos serviços do Oracle 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ê crie código para gerenciar recursos do Oracle Cloud Infrastructure.
Usando APIs do OCI SDK
- Uma conta no Oracle Cloud Infrastructure.
- Um usuário que é criado nessa conta em um grupo com uma política que concede as permissões desejadas. Pode ser um usuário para você mesmo ou para outra pessoa/sistema que precise chamar a API.
Observação:
O OCI SDK também está disponível para Python, Go, Typescript, Javascript, .NET e Ruby. Consulte Guias do OCI SDK para obter mais detalhes.Criando uma 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.
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 Active com o OCI Java SDK
Você pode usar o OCI Java SDK para criar uma tabela Ativa Global no NDCS.
- Crie uma tabela NoSQL com pelo menos uma coluna JSON nela.
- Congelar o esquema da tabela. Você pode congelar a tabela ao criá-la adicionando com o esquema congelado na instrução DDL CREATE TABLE.
- Uma tabela de Banco de Dados NoSQL só se torna uma tabela Ativa Global depois de adicionar uma tabela de réplica regional. A tabela de réplica regional é criada em outra região.
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);