Anwendungsprofile konfigurieren

Auf dieser Seite wird erläutert, wie Sie die Anwendungsprofile für eine Cloud Bigtable-Instanz erstellen und verwalten. Außerdem wird gezeigt, wie Sie mit einem benutzerdefinierten App-Profil eine Verbindung zu Bigtable herstellen.

Bevor Sie diese Seite lesen, sollten Sie sich damit vertraut gemacht haben, was App-Profile sind und wie sie funktionieren. Wenn Sie Anwendungsprofile zum Konfigurieren der Replikation verwenden, sollten Sie mit den Informationen unter Übersicht über die Bigtable-Replikation vertraut sein, die Beispiele für Replikationseinstellungen lesen und die Einstellungen auswählen, die für Ihren Anwendungsfall am besten geeignet sind.

Anwendungsprofil erstellen

Sie können viele verschiedene benutzerdefinierte App-Profile für jede Instanz erstellen. Benutzerdefinierte App-Profile dienen dazu, die Interaktion der einzelnen Anwendung oder Anwendungsfunktion mit einer Instanz zu steuern. Beispielsweise könnten Sie ein App-Profil für eine Batchanwendung verwenden, um deren Traffic in einem einzigen Cluster zu isolieren, und ein anderes App-Profil zur Bereitstellung von hoher Verfügbarkeit für eine andere Anwendung nutzen.

So erstellen Sie ein Anwendungsprofil:

Console

  1. Öffnen Sie in der Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, für die Sie das Anwendungsprofil erstellen möchten.

  3. Klicken Sie im linken Bereich auf Anwendungsprofile.

  4. Klicken Sie auf Anwendungsprofil erstellen.

  5. Geben Sie die Anwendungsprofil-ID ein.

    Die Anwendungsprofil-ID ist eine permanente Kennzeichnung für das App-Profil. Ihre Anwendung gibt diese ID an, wenn sie eine Verbindung zu Bigtable herstellt.

  6. Geben Sie eine Beschreibung des App-Profils ein.

  7. Wählen Sie unter Cluster-Routing entweder Single-Cluster-Routing oder Multi-Cluster-Routing aus. Weitere Informationen

  8. Wenn Sie Single-Cluster auswählen:

    1. Wählen Sie im Drop-down-Menü den Cluster aus, an den Anfragen weitergeleitet werden sollen.

    2. Wenn Sie Transaktionen für einzelne Zeilen aktivieren müssen, klicken Sie das Kästchen Transaktionen für einzelne Zeilen zulassen an.

  9. Wenn Sie Multi-Cluster auswählen:

    1. Um Anfragen an einen beliebigen Cluster in der Instanz weiterzuleiten, wählen Sie im Drop-down-Menü Clustergruppe die Option Beliebiger Cluster aus.
    2. Wenn Sie das Anfragerouting auf einige Cluster in der Instanz beschränken möchten (Clustergruppen-Routing), klicken Sie das Kästchen für jeden Cluster an, den Sie in die Routinggruppe aufnehmen möchten, und klicken Sie dann auf OK.
  10. Klicken Sie auf Erstellen, um das App-Profil zu erstellen.

  11. Aktualisieren Sie Ihren Anwendungscode zur Verbindungsherstellung mit Bigtable so, dass das neue App-Profil verwendet wird.

gcloud

  1. Wenn Sie die Instanz-ID nicht kennen, verwenden Sie den Befehl bigtable instances list, um eine Liste der Instanzen des Projekts aufzurufen:

    gcloud bigtable instances list
    
  2. Verwenden Sie den Befehl bigtable app-profiles create, um ein Anwendungsprofil zu erstellen:

    gcloud bigtable app-profiles create APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--description=DESCRIPTION] \
        [--force] \
        [--route-any] \
        [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...]
        [--route-to=CLUSTER_ID] \
        [--transactional-writes]
    

    Machen Sie folgende Angaben:

    • APP_PROFILE_ID: Die permanente Kennzeichnung des Anwendungsprofils.
    • INSTANCE_ID: Die permanente Kennzeichnung der Instanz.

    Der Befehl akzeptiert die folgenden optionalen Flags:

    • --description=DESCRIPTION: Eine detaillierte Beschreibung des Anwendungsprofils.
    • --force: Ignoriert Warnungen zu möglichen Problemen und Konflikten mit anderen Anwendungsprofilen.
    • --route-any: Aktiviert Multi-Cluster-Routing zum Weiterleiten von Anfragen an jeden verfügbaren Cluster.

      Dieses Flag darf nicht mit den Flags --route-to oder --transactional-writes kombiniert werden.

    • --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...: Eine Liste der Cluster, an die Anfragen weitergeleitet werden sollen. Verwenden Sie diese Option, wenn Sie Anfragen nur an einige der Cluster in der Instanz weiterleiten möchten.

      Dieses Flag darf nicht mit den Flags --route-to oder --transactional-writes kombiniert werden.

    • --route-to=CLUSTER_ID: Die Cluster-ID, an die alle Anfragen weitergeleitet werden sollen. Dieses Flag aktiviert Single-Cluster-Routing.

      Dieses Flag darf nicht mit dem Flag --route-any kombiniert werden.

    • --transactional-writes: Aktiviert im Anwendungsprofil Transaktionen für einzelne Zeilen.

      Dieses Flag darf nicht mit dem Flag --route-any oder --restrict-to kombiniert werden.

  3. Aktualisieren Sie Ihren Anwendungscode zur Verbindungsherstellung mit Bigtable so, dass das neue App-Profil verwendet wird.

Mit einem benutzerdefinierten Anwendungsprofil verbinden

Nachdem Sie ein benutzerdefiniertes Anwendungsprofil erstellt haben, können Sie Ihren Code so aktualisieren, dass Ihre Anwendung beim Verbinden mit Bigtable das Anwendungsprofil verwendet.

Die folgenden Beispiele zeigen, wie Sie ein Anwendungsprofil angeben, wenn Ihre Anwendung einen Bigtable-Client erstellt und eine Verbindung zu einer Instanz herstellt. Ersetzen Sie [APP_PROFILE_ID] durch den entsprechenden Wert.

C#

var client = BigtableClient.Create(appProfileId: "[APP_PROFILE_ID]");

Go

clientConf := bigtable.ClientConfig{AppProfile:"[APP_PROFILE_ID]"}
client, err = bigtable.NewClientWithConfig(ctx, project, instance, clientConf)

HBase Java

// If using BigtableOptions directly:
optionsBuilder.setAppProfileId("[APP_PROFILE_ID]");

// If using BigtableOptionsFactory:
configuration.set(BigtableOptionsFactory.APP_PROFILE_ID_KEY, "[APP_PROFILE_ID]");

// If using system properties, set "google.bigtable.app_profile.id" to
// "[APP_PROFILE_ID]"

// If using CloudBigtableIO for Cloud Dataflow:
config.withConfiguration(BigtableOptionsFactory.APP_PROFILE_ID_KEY,
                         "[APP_PROFILE_ID]");

Node.js

const bigtable = new Bigtable({appProfileId: '[APP_PROFILE_ID]'});

Python

from google.cloud import bigtable

client = bigtable.Client(project=project_id)
instance = client.instance(instance_id)
table = bigtable.table.Table(table_id, instance, '[APP_PROFILE_ID]')

Anwendungsprofil aktualisieren

Sie können die App-Profile einer Instanz jederzeit aufrufen und deren Einstellungen aktualisieren. Dabei gibt Bigtable immer dann eine Warnung aus, wenn eine Aktualisierung zu unerwarteten Änderungen im Verhalten führen könnte.

So rufen Sie ein vorhandenes Anwendungsprofil auf oder aktualisieren das Profil:

Console

  1. Öffnen Sie in der Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie in der Spalte Anwendungsprofile auf das Anwendungsprofil, das Sie ansehen oder aktualisieren möchten.

    Wenn Sie das zu bearbeitende Anwendungsprofil nicht finden, können Sie eine vollständige Liste abrufen. Klicken Sie dazu zuerst auf den Namen der Instanz und dann im linken Bereich auf Anwendungsprofile.

  3. Nehmen Sie die nötigen Änderungen an den Einstellungen vor und klicken Sie dann auf Speichern oder Abbrechen, um den Vorgang ohne Speichern zu beenden.

gcloud

  1. Wenn Sie die Instanz-ID nicht kennen, verwenden Sie den Befehl bigtable instances list, um eine Liste der Instanzen des Projekts aufzurufen:

    gcloud bigtable instances list
    
  2. Wenn Sie die ID des Anwendungsprofils nicht kennen, verwenden Sie den Befehl bigtable app-profiles list, um eine Liste der Anwendungsprofile der Instanz aufzurufen:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    Ersetzen Sie INSTANCE_ID durch die permanente Kennzeichnung der Instanz.

  3. (Optional) Rufen Sie mit dem Befehl bigtable app-profiles describe die Einstellungen des Anwendungsprofils auf:

    gcloud bigtable app-profiles describe APP_PROFILE_ID \
        --instance=INSTANCE_ID
    

    Machen Sie folgende Angaben:

    • APP_PROFILE_ID: Die permanente Kennzeichnung des Anwendungsprofils.
    • INSTANCE_ID: Die permanente Kennzeichnung der Instanz.
  4. Verwenden Sie den Befehl bigtable app-profiles update, um die Einstellungen des Anwendungsprofils zu aktualisieren:

    gcloud bigtable app-profiles update APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--description=DESCRIPTION] \
        [--force] \
        [--route-any] \
        [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...]
        [--route-to=CLUSTER_ID] \
        [--transactional-writes]
    

    Machen Sie folgende Angaben:

    • APP_PROFILE_ID: Die permanente Kennzeichnung des Anwendungsprofils.
    • INSTANCE_ID: Die permanente Kennzeichnung der Instanz.

    Der Befehl akzeptiert die folgenden optionalen Flags:

    • --description=DESCRIPTION: Eine detaillierte Beschreibung des Anwendungsprofils.
    • --force: Ignoriert Warnungen zu möglichen Problemen und Konflikten mit anderen Anwendungsprofilen.
    • --route-any: Aktiviert Multi-Cluster-Routing zum Weiterleiten von Anfragen an jeden verfügbaren Cluster.

      Dieses Flag darf nicht mit den Flags --route-to oder --transactional-writes kombiniert werden.

    • --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...: Eine Liste der Cluster, an die Anfragen weitergeleitet werden sollen. Verwenden Sie diese Option, wenn Sie Anfragen nur an einige der Cluster in der Instanz weiterleiten möchten.

      Dieses Flag darf nicht mit den Flags --route-to oder --transactional-writes kombiniert werden.

    • --route-to=CLUSTER_ID: Die Cluster-ID, an die alle Anfragen weitergeleitet werden sollen. Dieses Flag aktiviert Single-Cluster-Routing.

      Dieses Flag darf nicht mit dem Flag --route-any kombiniert werden.

    • --transactional-writes: Aktiviert im Anwendungsprofil Transaktionen für einzelne Zeilen.

      Dieses Flag darf nicht mit dem Flag --route-any kombiniert werden.

Anwendungsprofil löschen

Sie können die benutzerdefinierten App-Profile einer Instanz löschen, nicht jedoch das standardmäßige App-Profil.

So löschen Sie ein benutzerdefiniertes App-Profil:

Console

  1. Öffnen Sie in der Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, die das zu löschende Anwendungsprofil enthält.

  3. Klicken Sie im linken Bereich auf Anwendungsprofile.

  4. Öffnen Sie das Dreipunkt-Menü  und klicken Sie dann auf Anwendungsprofil löschen. Ein Bestätigungsdialog wird geöffnet.

  5. Folgen Sie der Anleitung im Bestätigungsdialogfeld und klicken Sie dann auf Löschen.

gcloud

  1. Wenn Sie die Instanz-ID nicht kennen, verwenden Sie den Befehl bigtable instances list, um eine Liste der Instanzen des Projekts aufzurufen:

    gcloud bigtable instances list
    
  2. Wenn Sie die ID des Anwendungsprofils nicht kennen, verwenden Sie den Befehl bigtable app-profiles list, um eine Liste der Anwendungsprofile der Instanz aufzurufen:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    Ersetzen Sie INSTANCE_ID durch die permanente Kennzeichnung der Instanz.

  3. Verwenden Sie den Befehl bigtable app-profiles delete, um das Anwendungsprofil zu löschen:

    gcloud bigtable app-profiles delete APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--force]
    

    Machen Sie folgende Angaben:

    • APP_PROFILE_ID: Die permanente Kennzeichnung des Anwendungsprofils.
    • INSTANCE_ID: Die permanente Kennzeichnung der Instanz.

    Der Befehl akzeptiert das folgende optionale Flag:

    --force: Ignoriert Warnungen zu möglichen Problemen und Konflikten mit anderen Anwendungsprofilen.