Wdrażanie oprogramowania sprzęgającego bazy danych

Możesz skonfigurować Google Cloud Search tak, aby wykrywał i indeksował dane z baz danych Twojej organizacji za pomocą oprogramowania sprzęgającego do baz danych Cloud Search.

Istotne kwestie

Oprogramowanie sprzęgające do baz danych Cloud Search możesz zainstalować i uruchomić w niemal każdym środowisku, w którym można uruchamiać aplikacje Java, o ile oprogramowanie sprzęgające ma dostęp zarówno do internetu, jak i do bazy danych.

Wymagania systemowe

Wymagania systemowe
System operacyjny Windows lub Linux
Baza danych SQL Dowolna baza danych SQL ze sterownikiem zgodnym ze standardem 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 osobno)

Wdrażanie oprogramowania sprzęgającego

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 oprogramowanie sprzęgające, przygotuj te informacje:

Krok 1. Pobierz i skompiluj oprogramowanie sprzęgające do baz danych

  1. Sklonuj repozytorium oprogramowania sprzęgającego 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. Skompiluj oprogramowanie sprzęgające:

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

  4. Rozpakuj plik ZIP oprogramowania sprzęgającego do katalogu instalacyjnego:

    $ 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. Skonfiguruj oprogramowanie sprzęgające do baz danych

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

  2. Dodaj parametry jako pary klucz-wartość. Plik musi określać dostęp do źródła danych, dostęp do bazy danych, pełne instrukcje SQL dotyczące 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 artykule Informacje o parametrach konfiguracji. Więcej informacji o typowych parametrach znajdziesz w artykule Parametry oprogramowania sprzęgającego dostarczane przez Google.

Krok 3. Uruchom oprogramowanie sprzęgające do baz danych

Uruchom oprogramowanie sprzęgające 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

W tej sekcji znajdziesz listę parametrów używanych w pliku konfiguracji oprogramowania sprzęgającego do 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
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. Do odpowiednich rekordów wymagany jest dostęp z możliwością odczytu.

Parametry zapytania SQL dotyczącego przechodzenia

Oprogramowanie sprzęgające używa zapytań SQL SELECT do przechodzenia po rekordach.

  • Pełne przechodzenie: odczytuje każdy skonfigurowany rekord. Wymagane w przypadku początkowego indeksowania i okresowego ponownego indeksowania.
  • Przechodzenie przyrostowe: odczytuje tylko nowo zmodyfikowane rekordy. Wymaga pól sygnatury czasowej w bazie danych.
Ustawienie Parametr
Zapytanie dotyczące 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 dotyczące przechodzenia przyrostowego db.incrementalUpdateSql = SELECT columns FROM table WHERE update_time > ?

Wymagane w przypadku harmonogramów przyrostowych. „?” to obowiązkowy symbol zastępczy sygnatury czasowej symbol zastępczy.

Parametry definicji kolumn

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

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

Kolumny klucza unikalnego db.uniqueKeyColumns = column-1

Wymagane. Definiuje unikalny identyfikator każdego rekordu.

Kolumna linku 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 tytułu contentTemplate.db.title = column-name

Wymagane. Najwyższy priorytet w przypadku indeksowania wyszukiwania.

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

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