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:
|
| 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:
- Klucz prywatny Google Workspace (zawierający identyfikator konta usługi). Zobacz Konfigurowanie dostępu do interfejsu Cloud Search API.
- Identyfikator źródła danych Google Workspace. Patrz Dodawanie źródła danych do wyszukiwania.
Krok 1. Pobieranie i kompilowanie oprogramowania sprzęgającego bazę danych
Sklonuj repozytorium łącznika z GitHub.
$ git clone https://github.com/google-cloudsearch/database-connector.git $ cd database-connector
Sprawdź wybraną wersję:
$ git checkout tags/v1-0.0.3
Utwórz oprogramowanie sprzęgające:
Aby pominąć testy, użyj$ mvn package
mvn package -DskipTests.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
Utwórz plik tekstowy o nazwie
connector-config.properties(domyślna nazwa). Google zaleca rozszerzenie.propertieslub.config. Przechowuj go w tym samym katalogu co oprogramowanie sprzęgające.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=trueParametry 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. |
| Dane logowania | db.user = usernamedb.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. |