Connettiti a SAP DataSphere

In qualità di amministratore BigQuery, puoi creare connection per accedere Dati SAP DataSpa. Questa connessione consente agli analisti di dati di eseguire query i dati in SAP DataSfera.

Prima di iniziare

  1. Abilitare l'API BigQuery Connection.

    Abilitare l'API

  2. Crea un utente del database SAP DataSpa. Prendi nota di nome utente, password, nome host e porta per BigQuery a cui connetterti.

  3. Configura il tenant di SAP DataSphere per accettare il traffico da gli indirizzi IP selezionati in uno dei seguenti modi:

    Per ulteriori informazioni sulla configurazione di SAP DataSphere tenant, vedi Aggiungi l'indirizzo IP alla lista consentita IP.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per connetterti a SAP DataSphere, chiedi all'amministratore di concederti Ruolo IAM Amministratore connessione BigQuery (roles/bigquery.connectionAdmin) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.

Connetti BigQuery a SAP DataSpa

Puoi connettere BigQuery a SAP DataSphere nella console Google Cloud oppure nella a riga di comando bq.

Console

  1. Nella console Google Cloud, vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nel riquadro Explorer, fai clic su aggiungi Aggiungi.

  3. Nel campo di ricerca, cerca e seleziona Connessioni con origini dati esterne.

  4. Nella finestra di dialogo Origine dati esterna:

    • In Tipo di connessione, seleziona SAP HANA.
    • In ID connessione, inserisci un ID connessione per identificare questa connessione.
    • In Tipo di località, specifica una regione da combinare con i dati di SAP DataSfera. Query che utilizzano la connessione deve essere eseguita da questa regione.
    • (Facoltativo) In Nome semplice, inserisci un nome semplice per la connessione, ad esempio My connection resource. Il nome descrittivo può essere qualsiasi valore che ti aiuti a identificare la connessione risorsa se dovessi avere bisogno di modificarla in un secondo momento.
    • (Facoltativo) Per Descrizione, inserisci una descrizione. risorsa di connessione.
    • Per Crittografia, seleziona Chiave di crittografia gestita da Google oppure Chiave di crittografia gestita dal cliente (CMEK). L'utilizzo di una CMEK è facoltativo.
    • Per Host:porta: inserisci l'host e la porta dell'istanza del database SAP, come mostrato in Dettagli utente database nella console web di SAP DataSphere, nel formato HOST:PORT.
    • (Facoltativo) Per Collegamento di rete, inserisci un percorso collegamento di rete che definisce la configurazione di rete utilizzata per stabilire e una connessione a SAP DataSfera.
    • Per Username (Nome utente), inserisci il nome utente del database da Database User Details (Dettagli utente database) nella console web di SAP DataSphere Ad esempio: MY_SPACE#BIGQUERY.
    • Per Password: inserisci la password dell'utente del database.
  5. Fai clic su Crea connessione.

bq

Inserisci il comando bq mk. con i seguenti flag:

  bq mk \
  --connection \
  --location=LOCATION \
  --project_id=PROJECT_ID \
  --connector_configuration '{
    "connector_id": "saphana",
    "endpoint": {
      "host_port": "HOST_PORT"
    },
    "authentication": {
      "username_password": {
        "username": "USERNAME",
        "password": {
          "plaintext": "PASSWORD"
        }
      }
    },
    "network": {
      "private_service_connect": {
        "network_attachment": "NETWORK_ATTACHMENT"
      }
    }
  }' \
  CONNECTION_ID

Sostituisci quanto segue:

  • LOCATION: specifica una regione dell'account BigQuery da combinare con i dati di SAP DataSfera. Query che utilizzano la connessione deve essere eseguita da questa regione.
  • PROJECT_ID: inserisci l'ID progetto Google Cloud.
  • HOST_PORT: inserisci l'host e la porta del server SAP come mostrato in Dettagli utente database nella Console web DataSphere, nel formato HOST:PORT.
  • NETWORK_ATTACHMENT (facoltativo): inserisci il valore collegamento di rete nel formato projects/{project}/regions/{region}/networkAttachments/{networkattachment}. Con questo campo, puoi configurare la connessione a SAP DataSphere in modo che BigQuery apra la connessione da un IP statico .
  • USERNAME: inserisci il nome utente del database da Database Dettagli utente nella console web SAP DataSphere. Ad esempio: MY_SPACE#BIGQUERY.
  • PASSWORD: inserisci la password dell'utente del database.
  • CONNECTION_ID: inserisci un ID connessione per identificarlo connessione.

Condividere le connessioni con gli utenti

Puoi concedere i ruoli seguenti per consentire agli utenti di eseguire query sui dati e gestire le connessioni:

  • roles/bigquery.connectionUser: consente agli utenti di utilizzare le connessioni per connettersi con origini dati esterne ed eseguire query su di esse.

  • roles/bigquery.connectionAdmin: consente agli utenti di gestire le connessioni.

Per ulteriori informazioni su ruoli e autorizzazioni IAM in BigQuery, vedi Autorizzazioni e ruoli predefiniti.

Seleziona una delle seguenti opzioni:

Console

  1. Vai alla pagina BigQuery.

    Vai a BigQuery

    Le connessioni sono elencate nel progetto, in un gruppo denominato Connessioni esterne.

  2. Nel riquadro Explorer, fai clic sul nome del tuo progetto. > Connessioni esterne > connessione.

  3. Nel riquadro Dettagli, fai clic su Condividi per condividere una connessione. Quindi:

    1. Nella finestra di dialogo Autorizzazioni di connessione, condividi il connessione con altre entità aggiungendo o modificando tra cui scegliere.

    2. Fai clic su Salva.

bq

Non puoi condividere una connessione con lo strumento a riga di comando bq. Per condividere una connessione, usa la console Google Cloud oppure metodo dell'API BigQuery Connections per condividere una connessione.

API

Utilizza la Metodo projects.locations.connections.setIAM nella sezione di riferimento dell'API REST di BigQuery Connections, fornisce un'istanza della risorsa policy.

Java

Prima di provare questo esempio, segui le istruzioni per la configurazione di Java nel Guida rapida di BigQuery con librerie client. Per ulteriori informazioni, consulta API Java BigQuery documentazione di riferimento.

Per eseguire l'autenticazione su BigQuery, configura Credenziali predefinite dell'applicazione. Per ulteriori informazioni, vedi Configura l'autenticazione per le librerie client.

import com.google.api.resourcenames.ResourceName;
import com.google.cloud.bigquery.connection.v1.ConnectionName;
import com.google.cloud.bigqueryconnection.v1.ConnectionServiceClient;
import com.google.iam.v1.Binding;
import com.google.iam.v1.Policy;
import com.google.iam.v1.SetIamPolicyRequest;
import java.io.IOException;

// Sample to share connections
public class ShareConnection {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "MY_PROJECT_ID";
    String location = "MY_LOCATION";
    String connectionId = "MY_CONNECTION_ID";
    shareConnection(projectId, location, connectionId);
  }

  static void shareConnection(String projectId, String location, String connectionId)
      throws IOException {
    try (ConnectionServiceClient client = ConnectionServiceClient.create()) {
      ResourceName resource = ConnectionName.of(projectId, location, connectionId);
      Binding binding =
          Binding.newBuilder()
              .addMembers("group:example-analyst-group@google.com")
              .setRole("roles/bigquery.connectionUser")
              .build();
      Policy policy = Policy.newBuilder().addBindings(binding).build();
      SetIamPolicyRequest request =
          SetIamPolicyRequest.newBuilder()
              .setResource(resource.toString())
              .setPolicy(policy)
              .build();
      client.setIamPolicy(request);
      System.out.println("Connection shared successfully");
    }
  }
}

Passaggi successivi