Puoi configurare Google Cloud Search per scoprire e indicizzare i dati dei database della tua organizzazione utilizzando il connettore di database di Cloud Search.
Considerazioni importanti
Puoi installare ed eseguire il connettore di database di Cloud Search in quasi tutti gli ambienti in cui possono essere eseguite le app Java, a condizione che il connettore abbia accesso sia a internet sia al database.
Requisiti di sistema
| Requisiti di sistema | |
|---|---|
| Sistema operativo | Windows o Linux |
| Database SQL | Qualsiasi database SQL con un driver conforme a JDBC 4.0 o versioni successive, tra cui:
|
| Software | Driver JDBC (scaricato e installato separatamente) |
Eseguire il deployment del connettore
Questi passaggi descrivono come installare il connettore e configurarlo per indicizzare i database e restituire i risultati agli utenti di Cloud Search.
Prerequisiti
Prima di eseguire il deployment del connettore, raccogli queste informazioni:
- Chiave privata di Google Workspace (contenente l'ID account di servizio). Consulta Configurare l'accesso all'API Cloud Search.
- ID origine dati di Google Workspace. Consulta Aggiungere un'origine dati per la ricerca.
Passaggio 1: scaricare e creare il software del connettore di database
Clona il repository del connettore da GitHub.
$ git clone https://github.com/google-cloudsearch/database-connector.git $ cd database-connector
Estrai la versione selezionata:
$ git checkout tags/v1-0.0.3
Crea il connettore:
Per saltare i test, utilizza$ mvn package
mvn package -DskipTests.Estrai il file ZIP del connettore nella directory di installazione:
$ cp target/google-cloudsearch-database-connector-v1-0.0.3.zip installation-dir $ cd installation-dir $ unzip google-cloudsearch-database-connector-v1-0.0.3.zip $ cd google-cloudsearch-database-connector-v1-0.0.3
Passaggio 2: configurare il connettore di database
Crea un file di testo denominato
connector-config.properties(il valore predefinito). Google consiglia l'estensione.propertieso.config. Mantienilo nella stessa directory del connettore.Aggiungi i parametri come coppie chiave-valore. Il file deve specificare l'accesso all'origine dati, l'accesso al database, un'istruzione SQL di attraversamento completo, un titolo del campo dei contenuti e le definizioni delle colonne.
# Data source access api.sourceId=1234567890abcdef api.identitySourceId=0987654321lmnopq api.serviceAccountPrivateKeyFile=./PrivateKey.json # Database access db.url=jdbc:mysql://localhost:3306/mysql_test db.user=root db.password=passw0rd # Full traversal SQL statement db.allRecordsSql=select customer_id, first_name, last_name, phone from address_book # Column definitions and URL format db.allColumns=customer_id, first_name, last_name, phone db.uniqueKeyColumns=customer_id url.columns=customer_id # Content field contentTemplate.db.title=customer_id # Optional: ACLs defaultAcl.mode=fallback defaultAcl.public=true # Optional: traversal schedule schedule.traversalIntervalSecs=36000 schedule.performTraversalOnStart=truePer i parametri specifici del database, consulta il riferimento dei parametri di configurazione. Per i parametri comuni, consulta Parametri del connettore forniti da Google.
Passaggio 3: eseguire il connettore di database
Esegui il connettore dalla riga di comando:
java -cp "google-cloudsearch-database-connector-v1-0.0.3.jar:mysql-connector-java-5.1.41-bin.jar" com.google.enterprise.cloudsearch.database.DatabaseFullTraversalConnector [-Dconfig=mysql.config]
Il connettore segnala gli errori di configurazione e inizializzazione. Altri errori, come la sintassi SQL non valida, vengono visualizzati quando il connettore tenta di accedere al database per la prima volta.
Riferimento dei parametri di configurazione
Questa sezione elenca i parametri utilizzati nel file di configurazione del connettore di database.
Parametri di accesso all'origine dati
| Impostazione | Parametro |
|---|---|
| ID origine dati | api.sourceId = source-ID
Obbligatorio. L'ID origine di Cloud Search. |
| Service account | api.serviceAccountPrivateKeyFile = path
Obbligatorio. Il percorso del file delle chiavi dell'account di servizio. |
Parametri di accesso al database
| Impostazione | Parametro |
|---|---|
| URL del database | db.url = database-URL
Obbligatorio. Il percorso completo, ad es. |
| Credenziali | db.user = usernamedb.password = password
Obbligatorio. L'accesso in lettura è necessario per i record pertinenti. |
Parametri di query SQL di attraversamento
Il connettore utilizza le query SQL SELECT per attraversare i record.
- Attraversamento completo: legge ogni record configurato. Obbligatorio per l'indicizzazione iniziale e la reindicizzazione periodica.
- Attraversamento incrementale: legge solo i record modificati di recente. Richiede campi timestamp nel database.
| Impostazione | Parametro |
|---|---|
| Query di attraversamento completo | db.allRecordsSql = SELECT columns FROM table
Obbligatorio. Includi tutte le colonne utilizzate per contenuti, ID e ACL. |
| Query di attraversamento incrementale | db.incrementalUpdateSql = SELECT columns FROM table WHERE update_time > ?
Obbligatorio per le pianificazioni incrementali. Il "?" è un segnaposto timestamp obbligatorio. |
Parametri di definizione delle colonne
| Impostazione | Parametro |
|---|---|
| Tutte le colonne | db.allColumns = column-1, column-2, ...
Obbligatorio. Elenca tutte le colonne a cui viene fatto riferimento nelle query SQL. |
| Colonne chiave univoche | db.uniqueKeyColumns = column-1
Obbligatorio. Definisce l'ID univoco per ogni record. |
| Colonna del link URL | url.columns = column-1
Obbligatorio. Specifica la colonna utilizzata per i risultati di ricerca su cui è possibile fare clic. |
Campi dei contenuti
| Impostazione | Parametro |
|---|---|
| Colonna del titolo | contentTemplate.db.title = column-name
Obbligatorio. Priorità più alta per l'indicizzazione della ricerca. |
| Assegnazione delle priorità | contentTemplate.db.quality.high = column-1
Designa le colonne come di qualità alta, media o bassa. |