Upgrade delle librerie client in corso…
Questa pagina spiega come eseguire l'upgrade di una libreria client di Cloud Bigtable installata in precedenza. Se devi installare una libreria client per la prima volta, segui le istruzioni per il linguaggio di programmazione che preferisci in Librerie client di Cloud Bigtable.
Client Bigtable per Java
I metodi di convenienza in BigtableTableAdminClient e BigtableInstanceAdminClient sono obsoleti.
Per eseguire l'upgrade del codice, chiama i metodi standard del buffer di protocollo utilizzando getBaseClient(). Ciò richiede la sostituzione degli oggetti wrapper personalizzati, come com.google.cloud.bigtable.admin.v2.models.CreateTableRequest, con oggetti di richiesta del buffer di protocollo standard, come com.google.bigtable.admin.v2.CreateTableRequest. Questi oggetti prevedono nomi di risorse completi.
Aggiorna il codice come mostrato nell'esempio seguente:
// Existing code
BigtableTableAdminClient adminClient = BigtableTableAdminClient.create(PROJECT_ID, INSTANCE_ID);
adminClient.createTable(
CreateTableRequest.of(TABLE_ID)
.addFamily("cf1"));
// New code
BigtableTableAdminClient adminClient = BigtableTableAdminClient.create(PROJECT_ID, INSTANCE_ID);
String parent = "projects/" + PROJECT_ID + "/instances/" + INSTANCE_ID;
com.google.bigtable.admin.v2.CreateTableRequest request =
com.google.bigtable.admin.v2.CreateTableRequest.newBuilder()
.setParent(parent)
.setTableId(TABLE_ID)
.setTable(com.google.bigtable.admin.v2.Table.newBuilder()
.putColumnFamilies("cf1", com.google.bigtable.admin.v2.ColumnFamily.getDefaultInstance())
.build())
.build();
adminClient.getBaseClient().createTable(request);
Sostituisci quanto segue:
PROJECT_ID: l'identificatore del progetto BigtableINSTANCE_ID: l'identificatore dell'istanza BigtableTABLE_ID: l'identificatore della nuova tabella
Client HBase per Java
Se esegui l'upgrade dalla versione 1.0 o successive del client HBase per Java, l'unica modifica che devi apportare è aggiornare il numero di versione nella configurazione. Non devi aggiornare il codice.
Se esegui l'upgrade da client HBase pre-1.0, completa i seguenti passaggi:
Aggiorna le dipendenze per utilizzare la libreria client più recente e rimuovere gli artefatti di cui non hai più bisogno:
Rimuovi gli artefatti
bigtable-hbase-1.0,bigtable-hbase-1.1ebigtable-hbase-1.2dalle dipendenze, se presenti.Rimuovi
netty-tcnative-boringssl-staticdalle dipendenze, a meno che un'altra parte dell'applicazione non lo richieda.Aggiungi uno dei seguenti artefatti alle dipendenze, a seconda del caso d'uso. Le versioni
2.xincludono un client asincrono HBase che le versioni1.xnon hanno.bigtable-hbase-1.xobigtable-hbase-2.x: da utilizzare per applicazioni autonome in cui hai il controllo delle dipendenze.bigtable-hbase-1.x-hadoopobigtable-hbase-2.x-hadoop: da utilizzare negli ambienti Hadoop.bigtable-hbase-1.x-shadedobigtable-hbase-2.x-shaded: da utilizzare in ambienti diversi da Hadoop che richiedono versioni precedenti di componenti come protobuf o Guava.
Aggiorna le impostazioni di configurazione per la connessione a Bigtable.
Se le impostazioni di configurazione nel codice o in un file
hbase-site.xmlincludono un valore perhbase.client.connection.impl, modifica il valore incom.google.cloud.bigtable.hbase1_x.BigtableConnection.Se utilizzi direttamente la classe
BigtableConnection, aggiorna il codice in modo da utilizzarecom.google.cloud.bigtable.hbase1_x.BigtableConnectioninvece.Se utilizzi un file
hbase-site.xmlper connetterti a Bigtable:- Aggiungi la proprietà
google.bigtable.instance.idse non è presente. Imposta il valore della proprietà sull'ID istanza. - Rimuovi la proprietà
google.bigtable.cluster.namese è presente. - Rimuovi la proprietà
google.bigtable.zone.namese è presente.
- Aggiungi la proprietà
Se ti connetti a Bigtable chiamando
BigtableConfiguration.connect(), aggiorna il codice come mostrato nell'esempio seguente:
// Existing code BigtableConfiguration.connect(PROJECT_ID, ZONE_ID, CLUSTER_ID); // New code BigtableConfiguration.connect(PROJECT_ID, INSTANCE_ID);Sostituisci quanto segue:
PROJECT_ID: l'identificatore del progetto.ZONE_ID: la zona in cui si trova il cluster.CLUSTER_ID: l'identificatore del cluster.INSTANCE_ID: l'identificatore dell'istanza.
Esegui di nuovo il deployment dell'applicazione in tutti gli ambienti, inclusi sviluppo locale, test, gestione temporanea e produzione.
Per un elenco delle release del client HBase per Java, consulta la cronologia delle release su GitHub.
Vai
A giugno 2016, il client Go ha modificato la modalità di connessione a Bigtable. Anziché specificare un ID cluster e una zona, specifica un ID istanza. Puoi trovare l'ID istanza visitando la Google Cloud console.
Per scaricare la libreria client, visita il repository di codice su GitHub.
Aggiorna il codice come mostrato nell'esempio seguente:
// Existing code
adminClient, err := bigtable.NewAdminClient(ctx, PROJECT_ID, ZONE, CLUSTER_ID)
client, err := bigtable.NewClient(ctx, PROJECT_ID, ZONE, CLUSTER_ID)
// New code
adminClient, err := bigtable.NewAdminClient(ctx, PROJECT_ID, INSTANCE_ID)
client, err := bigtable.NewClient(ctx, PROJECT_ID, INSTANCE_ID)
Sostituisci quanto segue:
PROJECT_ID: l'identificatore del progetto.ZONE: la zona in cui si trova il cluster.CLUSTER_ID: l'identificatore del cluster a cui vuoi connetterti.INSTANCE_ID: l'identificatore dell'istanza a cui vuoi connetterti.
Per un elenco delle release della libreria client Go, consulta la cronologia delle release su GitHub.
Passaggi successivi
- Scopri di più sulle librerie client.
- Scopri di più su come Bigtable si integra con altri strumenti e Google Cloud servizi.