É possível configurar o Google Cloud Search para descobrir e indexar dados dos bancos de dados da sua organização usando o conector de banco de dados do Cloud Search.
Considerações importantes
É possível instalar e executar o conector de banco de dados do Cloud Search em quase qualquer ambiente que execute aplicativos Java, desde que o conector tenha acesso à Internet e ao banco de dados.
Requisitos do sistema
| Requisitos do sistema | |
|---|---|
| Sistema operacional | Windows ou Linux |
| Banco de dados SQL | Qualquer banco de dados SQL com um driver compatível com JDBC 4.0 ou posterior, incluindo:
|
| Software | Driver JDBC (baixado e instalado separadamente) |
Implantar o conector
Estas etapas descrevem como instalar e configurar o conector para indexar seus bancos de dados e retornar resultados aos usuários do Cloud Search.
Pré-requisitos
Antes de implantar o conector, colete estas informações:
- Chave privada do Google Workspace (que contém o ID da conta de serviço). Consulte Configurar o acesso à API Cloud Search.
- ID da fonte de dados do Google Workspace. Consulte Adicionar uma origem de dados para pesquisar.
Etapa 1. Baixar e criar o software do conector de banco de dados
Clone o repositório do conector que está no GitHub.
$ git clone https://github.com/google-cloudsearch/database-connector.git $ cd database-connector
Confira a versão selecionada:
$ git checkout tags/v1-0.0.3
Crie o conector:
Para pular testes, use$ mvn package
mvn package -DskipTests.Extraia o arquivo ZIP do conector para o diretório de instalação:
$ 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
Etapa 2. configurar o conector de banco de dados
Crie um arquivo de texto chamado
connector-config.properties(o padrão). O Google recomenda a extensão.propertiesou.config. Mantenha no mesmo diretório do conector.Adicione parâmetros como pares de chave-valor. O arquivo precisa especificar acesso à fonte de dados, acesso ao banco de dados, uma instrução SQL de travessia completa, um título de campo de conteúdo e definições de coluna.
# 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=truePara parâmetros específicos do banco de dados, consulte a Referência dos parâmetros de configuração. Para parâmetros comuns, consulte Parâmetros do conector fornecidos pelo Google.
Etapa 3. executar o conector de banco de dados
Execute o conector na linha de 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]
O conector informa erros de configuração e inicialização. Outros erros, como sintaxe SQL inválida, aparecem quando o conector tenta acessar o banco de dados pela primeira vez.
Referência dos parâmetros de configuração
Esta seção lista os parâmetros usados no arquivo de configuração do conector de banco de dados.
Parâmetros de acesso à fonte de dados
| Configuração | Parâmetro |
|---|---|
| ID da origem de dados | api.sourceId = source-ID
Obrigatório. O ID da origem do Cloud Search. |
| Conta de serviço | api.serviceAccountPrivateKeyFile = path
Obrigatório. O caminho para o arquivo de chave da conta de serviço. |
Parâmetros de acesso ao banco de dados
| Configuração | Parâmetro |
|---|---|
| URL do banco de dados | db.url = database-URL
Obrigatório. O caminho completo, por exemplo, |
| Credenciais | db.user = usernamedb.password = password
Obrigatório. É necessário ter acesso de leitura aos registros relevantes. |
Parâmetros de consulta SQL de traversals
O conector usa consultas SQL SELECT para percorrer registros.
- Travessia completa: lê todos os registros configurados. Necessário para a indexação inicial e a reindexação periódica.
- Traversal incremental: lê apenas registros modificados recentemente. Exige campos de carimbo de data/hora no banco de dados.
| Configuração | Parâmetro |
|---|---|
| Consulta de travessia completa | db.allRecordsSql = SELECT columns FROM table
Obrigatório. Inclua todas as colunas usadas para conteúdo, IDs e ACLs. |
| Consulta de traversal incremental | db.incrementalUpdateSql = SELECT columns FROM table WHERE update_time > ?
Obrigatório para programações incrementais. O "?" é um marcador de posição obrigatório de carimbo de data/hora. |
Parâmetros de definição de coluna
| Configuração | Parâmetro |
|---|---|
| Todas as colunas | db.allColumns = column-1, column-2, ...
Obrigatório. Lista todas as colunas referenciadas em consultas SQL. |
| Colunas de chave exclusiva | db.uniqueKeyColumns = column-1
Obrigatório. Define o ID exclusivo de cada registro. |
| Coluna de link do URL | url.columns = column-1
Obrigatório. Especifica a coluna usada para resultados de pesquisa clicáveis. |
Campos de conteúdo
| Configuração | Parâmetro |
|---|---|
| Coluna de título | contentTemplate.db.title = column-name
Obrigatório. Prioridade máxima para indexação de pesquisa. |
| Priorização | contentTemplate.db.quality.high = column-1
Designar colunas como de alta, média ou baixa qualidade. |