Развертывание соединителя базы данных

С помощью коннектора к базам данных Cloud Search вы можете настроить Google Cloud Search для обнаружения и индексирования данных из баз данных вашей организации.

Важные соображения

Вы можете установить и запустить коннектор к базе данных Cloud Search практически в любой среде, где могут работать Java-приложения, при условии, что коннектор имеет доступ как к интернету, так и к базе данных.

Системные требования

Системные требования
Операционная система Windows или Linux
база данных SQL Любая база данных SQL с драйвером, совместимым с JDBC 4.0 или более поздней версии, включая:
  • MS SQL Server (2008, 2012, 2014, 2016)
  • Оракул (11g, 12c)
  • Google Cloud SQL
  • MySQL
Программное обеспечение Драйвер JDBC (скачивается и устанавливается отдельно)

Разверните коннектор

В этих шагах описано, как установить коннектор и настроить его для индексирования ваших баз данных и возврата результатов пользователям Cloud Search.

Предварительные требования

Перед развертыванием коннектора соберите следующую информацию:

Шаг 1. Загрузите и соберите программное обеспечение для подключения к базе данных.

  1. Клонируйте репозиторий коннектора с GitHub.

    $ git clone https://github.com/google-cloudsearch/database-connector.git
    $ cd database-connector

  2. Проверьте выбранную вами версию:

    $ git checkout tags/v1-0.0.3

  3. Создайте коннектор:

    $ mvn package
    Чтобы пропустить тесты, используйте команду mvn package -DskipTests .`.

  4. Распакуйте ZIP-архив с коннектором в каталог установки:

    $ 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

Шаг 2. Настройка коннектора базы данных.

  1. Создайте текстовый файл с именем connector-config.properties (по умолчанию). Google рекомендует использовать расширение .properties или .config . Разместите его в той же директории, что и коннектор.

  2. Добавьте параметры в виде пар ключ-значение. В файле должны быть указаны доступ к источнику данных, доступ к базе данных, полный SQL-запрос для обхода базы данных, заголовок поля содержимого и определения столбцов.

    # 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=true
    

    Параметры, специфичные для конкретной базы данных, см. в справочнике по параметрам конфигурации . Общие параметры см. в разделе «Параметры коннектора, предоставляемые Google» .

Шаг 3. Запустите коннектор базы данных.

Запустите коннектор из командной строки:

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]

Коннектор сообщает об ошибках конфигурации и инициализации. Другие ошибки, такие как недопустимый синтаксис SQL, появляются при первой попытке коннектора получить доступ к базе данных.

Справочник параметров конфигурации

В этом разделе перечислены параметры, используемые в файле конфигурации коннектора базы данных.

Параметры доступа к источнику данных

Параметр Параметр
Идентификатор источника данных api.sourceId = source-ID

Обязательно. Идентификатор источника Cloud Search.

Служебный аккаунт api.serviceAccountPrivateKeyFile = path

Обязательно. Путь к файлу ключа учетной записи службы.

Параметры доступа к базе данных

Параметр Параметр
URL базы данных db.url = database-URL

Обязательно. Полный путь, например, jdbc:mysql://127.0.0.1/dbname .

Реквизиты для входа db.user = username
db.password = password

Обязательно. Для доступа к соответствующим записям необходим доступ на чтение.

Параметры SQL-запроса для обхода

Коннектор использует SQL-запросы SELECT для обхода записей.

  • Полный обход : считывает каждую настроенную запись. Необходим для первоначального индексирования и периодической переиндексации.
  • Инкрементальный обход : считывает только недавно измененные записи. Требует наличия полей с временными метками в базе данных.
Параметр Параметр
Запрос полного обхода db.allRecordsSql = SELECT columns FROM table

Обязательно. Укажите все столбцы, используемые для содержимого, идентификаторов и списков контроля доступа (ACL).

Запрос с инкрементальным обходом db.incrementalUpdateSql = SELECT columns FROM table WHERE update_time > ?

Обязательно для инкрементальных расписаний. Символ "?" является обязательным заполнителем для временной метки.

Параметры определения столбца

Параметр Параметр
Все колонки db.allColumns = column-1 , column-2 , ...

Обязательный параметр. Выводит список всех столбцов, на которые ссылаются SQL-запросы.

Уникальные ключевые колонки db.uniqueKeyColumns = column-1

Обязательный параметр. Определяет уникальный идентификатор для каждой записи.

столбец URL-ссылок url.columns = column-1

Обязательно. Указывает столбец, используемый для отображения кликабельных результатов поиска.

Поля содержимого

Параметр Параметр
Заголовочная колонка contentTemplate.db.title = column-name

Обязательно. Имеет наивысший приоритет для индексации в поисковых системах.

Приоритизация contentTemplate.db.quality.high = column-1

Присвойте столбцам категорию высокого, среднего или низкого качества.