Wdrażanie oprogramowania sprzęgającego bazy danych

Możesz skonfigurować Google Cloud Search tak, aby wykrywał i indeksował dane z baz danych organizacji za pomocą łącznika bazy danych Cloud Search.

Istotne kwestie

Możesz zainstalować i uruchomić łącznik bazy danych Cloud Search w niemal każdym środowisku, w którym można uruchamiać aplikacje Java, o ile łącznik ma dostęp do internetu i bazy danych.

Wymagania systemowe

Wymagania systemowe
System operacyjny Windows lub Linux
Baza danych SQL Dowolna baza danych SQL ze sterownikiem zgodnym z JDBC 4.0 lub nowszym, w tym:
  • MS SQL Server (2008, 2012, 2014, 2016)
  • Oracle (11g, 12c)
  • Google Cloud SQL
  • MySQL
Oprogramowanie Sterownik JDBC (pobrany i zainstalowany oddzielnie)

Wdróż oprogramowanie sprzęgające

Z tych instrukcji dowiesz się, jak zainstalować oprogramowanie sprzęgające i skonfigurować je tak, aby indeksowało bazy danych i zwracało wyniki użytkownikom Cloud Search.

Wymagania wstępne

Zanim wdrożysz łącznik, przygotuj te informacje:

Krok 1. Pobieranie i kompilowanie oprogramowania sprzęgającego bazę danych

  1. Sklonuj repozytorium łącznika z GitHub.

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

  2. Sprawdź wybraną wersję:

    $ git checkout tags/v1-0.0.3

  3. Utwórz oprogramowanie sprzęgające:

    $ mvn package
    Aby pominąć testy, użyj mvn package -DskipTests.

  4. Rozpakuj plik ZIP oprogramowania sprzęgającego w katalogu instalacyjnym:

    $ 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

Krok 2. Konfigurowanie łącznika bazy danych

  1. Utwórz plik tekstowy o nazwie connector-config.properties (domyślna nazwa). Google zaleca rozszerzenie .properties lub .config. Przechowuj go w tym samym katalogu co oprogramowanie sprzęgające.

  2. Dodaj parametry w postaci par klucz-wartość. Plik musi określać dostęp do źródła danych, dostęp do bazy danych, pełne polecenie SQL do przechodzenia, tytuł pola treści i definicje kolumn.

    # 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
    

    Parametry specyficzne dla bazy danych znajdziesz w dokumentacji parametrów konfiguracji. Więcej informacji o parametrach wspólnych znajdziesz w artykule Parametry oprogramowania sprzęgającego dostarczanego przez Google.

Krok 3. Uruchamianie łącznika bazy danych

Uruchom złącze z wiersza poleceń:

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]

Oprogramowanie sprzęgające zgłasza błędy konfiguracji i inicjowania. Inne błędy, takie jak nieprawidłowa składnia SQL, pojawiają się, gdy oprogramowanie sprzęgające po raz pierwszy próbuje uzyskać dostęp do bazy danych.

Informacje o parametrach konfiguracji

Ta sekcja zawiera listę parametrów używanych w pliku konfiguracyjnym oprogramowania sprzęgającego bazę danych.

Parametry dostępu do źródła danych

Ustawienie Parametr
Identyfikator źródła danych api.sourceId = source-ID

Wymagane. Identyfikator źródła Cloud Search.

Konto usługi api.serviceAccountPrivateKeyFile = path

Wymagane. Ścieżka do pliku klucza konta usługi.

Parametry dostępu do bazy danych

Ustawienie Parametr
Adres URL bazy danych db.url = database-URL

Wymagane. Pełna ścieżka, np. jdbc:mysql://127.0.0.1/dbname.

Dane logowania db.user = username
db.password = password

Wymagane. W przypadku odpowiednich rekordów wymagany jest dostęp z możliwością odczytu.

Parametry zapytania SQL dotyczące przechodzenia

Łącznik używa zapytań SQL SELECT do przeglądania rekordów.

  • Pełne przeszukiwanie: odczytuje każdy skonfigurowany rekord. Wymagane w przypadku początkowego indeksowania i okresowego ponownego indeksowania.
  • Przeszukiwanie przyrostowe: odczytuje tylko nowo zmodyfikowane rekordy. Wymaga pól sygnatury czasowej w bazie danych.
Ustawienie Parametr
Zapytanie pełnego przechodzenia db.allRecordsSql = SELECT columns FROM table

Wymagane. Uwzględnij wszystkie kolumny używane w przypadku treści, identyfikatorów i list ACL.

Zapytanie przyrostowe db.incrementalUpdateSql = SELECT columns FROM table WHERE update_time > ?

Wymagane w przypadku harmonogramów przyrostowych. Znak „?” jest obowiązkowym symbolem zastępczym sygnatury czasowej.

Parametry definicji kolumny

Ustawienie Parametr
Wszystkie kolumny db.allColumns = column-1, column-2, ...

Wymagane. Zawiera listę wszystkich kolumn, do których odwołują się zapytania SQL.

Kolumny z unikalnym kluczem db.uniqueKeyColumns = column-1

Wymagane. Określa unikalny identyfikator każdego rekordu.

Kolumna Link URL url.columns = column-1

Wymagane. Określa kolumnę używaną w przypadku wyników wyszukiwania, w które można kliknąć.

Pola treści

Ustawienie Parametr
Kolumna z tytułem contentTemplate.db.title = column-name

Wymagane. Najwyższy priorytet indeksowania.

Priorytety contentTemplate.db.quality.high = column-1

Oznacz kolumny jako wysokiej, średniej lub niskiej jakości.