Veritabanı bağlayıcısı dağıtma

Cloud Search veritabanı bağlayıcısını kullanarak kuruluşunuzun veritabanlarındaki verileri keşfetmek ve dizine eklemek için Google Cloud Search'ü ayarlayabilirsiniz.

Dikkat edilecek önemli noktalar

Cloud Search veritabanı bağlayıcısını, bağlayıcının hem internete hem de veritabanına erişimi olduğu sürece Java uygulamalarının çalıştırılabildiği neredeyse her ortamda yükleyip çalıştırabilirsiniz.

Sistem gereksinimleri

Sistem gereksinimleri
İşletim sistemi Windows veya Linux
SQL veritabanı Aşağıdakiler de dahil olmak üzere JDBC 4.0 veya sonraki sürümlerle uyumlu sürücüsü olan tüm SQL veritabanları:
  • MS SQL Server (2008, 2012, 2014, 2016)
  • Oracle (11g, 12c)
  • Google Cloud SQL
  • MySQL
Yazılım JDBC sürücüsü (ayrı olarak indirilip yüklenir)

Bağlayıcıyı dağıtma

Bu adımlarda, bağlayıcının nasıl yükleneceği ve veritabanlarınızı dizine ekleyecek ve Cloud Search kullanıcılarına sonuç döndürecek şekilde nasıl yapılandırılacağı açıklanmaktadır.

Ön koşullar

Bağlayıcıyı dağıtmadan önce aşağıdaki bilgileri toplayın:

1. Adım: Veritabanı bağlayıcı yazılımını indirme ve oluşturma

  1. Bağlayıcı deposunu GitHub'dan kopyalayın.

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

  2. Seçtiğiniz sürümü inceleyin:

    $ git checkout tags/v1-0.0.3

  3. Bağlayıcıyı oluşturun:

    $ mvn package
    Testleri atlamak için mvn package -DskipTests simgesini kullanın.

  4. Bağlayıcı ZIP dosyasını kurulum dizininize çıkarın:

    $ 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. adım: Veritabanı bağlayıcısını yapılandırma

  1. connector-config.properties (varsayılan) adlı bir metin dosyası oluşturun. Google, .properties veya .config uzantısını önerir. Bağlayıcıyla aynı dizinde tutun.

  2. Parametreleri anahtar/değer çiftleri olarak ekleyin. Dosyada veri kaynağı erişimi, veritabanı erişimi, tam geçişli bir SQL ifadesi, içerik alanı başlığı ve sütun tanımları belirtilmelidir.

    # 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
    

    Veritabanına özgü parametreler için Yapılandırma parametreleri referansı başlıklı makaleyi inceleyin. Sık kullanılan parametreler için Google tarafından sağlanan bağlayıcı parametreleri başlıklı makaleyi inceleyin.

3. Adım: Veritabanı bağlayıcısını çalıştırma

Bağlayıcıyı komut satırından çalıştırın:

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]

Bağlayıcı, yapılandırma ve başlatma hatalarını bildirir. Geçersiz SQL söz dizimi gibi diğer hatalar, bağlayıcı ilk kez veritabanına erişmeye çalıştığında görünür.

Yapılandırma parametreleri referansı

Bu bölümde, veritabanı bağlayıcı yapılandırma dosyasında kullanılan parametreler listelenmektedir.

Veri kaynağı erişim parametreleri

Ayar Parametre
Veri kaynağı kimliği api.sourceId = source-ID

Zorunlu. Cloud Search kaynak kimliği.

Hizmet hesabı api.serviceAccountPrivateKeyFile = path

Zorunlu. Hizmet hesabı anahtar dosyasının yolu.

Veritabanı erişim parametreleri

Ayar Parametre
Veritabanı URL'si db.url = database-URL

Zorunlu. Tam yol (ör. jdbc:mysql://127.0.0.1/dbname.

Kimlik bilgileri db.user = username
db.password = password

Zorunlu. İlgili kayıtlar için okuma erişimi gereklidir.

Geçiş SQL sorgu parametreleri

Bağlayıcı, kayıtlar arasında gezinmek için SQL SELECT sorgularını kullanır.

  • Tam geçiş: Yapılandırılmış her kaydı okur. İlk dizine ekleme ve düzenli olarak yeniden dizine ekleme için gereklidir.
  • Artımlı geçiş: Yalnızca yeni değiştirilen kayıtları okur. Veritabanında zaman damgası alanları gerekir.
Ayar Parametre
Tam geçiş sorgusu db.allRecordsSql = SELECT columns FROM table

Zorunlu. İçerik, kimlikler ve erişim kontrol listeleri için kullanılan tüm sütunları ekleyin.

Artımlı geçiş sorgusu db.incrementalUpdateSql = SELECT columns FROM table WHERE update_time > ?

Artımlı programlar için gereklidir. "?" zorunlu bir zaman damgası yer tutucusudur.

Sütun tanımı parametreleri

Ayar Parametre
Tüm sütunlar db.allColumns = column-1, column-2, ...

Zorunlu. SQL sorgularında başvurulan tüm sütunları listeler.

Benzersiz anahtar sütunları db.uniqueKeyColumns = column-1

Zorunlu. Her kaydın benzersiz kimliğini tanımlar.

URL bağlantısı sütunu url.columns = column-1

Zorunlu. Tıklanabilir arama sonuçları için kullanılan sütunu belirtir.

İçerik alanları

Ayar Parametre
Başlık sütunu contentTemplate.db.title = column-name

Zorunlu. Arama dizine ekleme için en yüksek öncelik.

Öncelik belirleme contentTemplate.db.quality.high = column-1

Sütunları yüksek, orta veya düşük kaliteli olarak belirleyin.