Von Google bereitgestellte Konfigurationsparameter

Jedem Connector ist eine Konfigurationsdatei zugeordnet, die die vom Connector verwendeten Parameter enthält. wie die ID für Ihr Repository. Parameter werden als Schlüssel/Wert-Paare definiert, z. B.: api.sourceId=1234567890abcdef

Das Google Cloud Search SDK enthält verschiedene von Google bereitgestellte Parameter, die von verschiedenen Connectors verwendet werden. Von den von Google bereitgestellten Konfigurationsparametern müssen nur die Parameter für den Zugriff auf die Datenquelle in Ihrem Konfigurationsdatei. Sie müssen die von Google bereitgestellten Parameter nicht neu definieren. in Ihrer Konfigurationsdatei, es sei denn, Sie möchten deren Standardwerte überschreiben.

In dieser Referenz werden die von Google bereitgestellten Konfigurationsparameter beschrieben.

Beispiel für eine Konfigurationsdatei

Das folgende Beispiel zeigt eine Identitätskonfigurationsdatei mit Parameter-Schlüssel/Wert-Paaren.

#
# Configuration file sample
#
api.sourceId=1234567890abcdef
api.identitySourceId=0987654321lmnopq
api.serviceAccountPrivateKeyFile= ./PrivateKey.json

#
# Traversal schedules
#
schedule.traversalIntervalSecs=7200
schedule.incrementalTraversalIntervalSecs=600
#
# Default ACLs
#
defaultAcl.mode=fallback
defaultAcl.public=true
  

Häufig festgelegte Parameter

In diesem Abschnitt werden erforderliche und optionale häufig festgelegte Konfigurationsparameter aufgeführt. Falls nicht, für die optionalen Parameter ändern, verwendet der Connector die Standardwerte die vom SDK bereitgestellt werden.

Zugriff auf Datenquellen

In der folgenden Tabelle sind alle Parameter aufgeführt, die für die Anzeige in einer Konfiguration erforderlich sind. -Datei. Welche Parameter Sie verwenden, hängt vom Typ des Connectors ab, den Sie erstellen (Inhalts-Connector oder Identitäts-Connector).

Einstellung Parameter
Datenquellen-ID api.sourceId=1234567890abcdef

Dieser Parameter wird von einem Connector benötigt, um den Speicherort Ihres Repositorys. Sie erhalten diesen Wert, wenn Sie hat eine Datenquelle für die Suche hinzugefügt. Dieser Parameter muss sich in den Konfigurationsdateien des Connectors befinden.

ID der Identitätsquelle api.identitySourceId=0987654321lmnopq

Dieser Parameter wird von Identitätsconnectors benötigt, um den Speicherort einer externen Identitätsquelle. Sie erhalten diesen Wert, als Sie Nutzeridentitäten in Cloud Search zuordnen Dieser Parameter muss in allen Konfigurationsdateien des Identitätsconnectors enthalten sein.

Datei mit privatem Schlüssel für das Dienstkonto api.serviceAccountPrivateKeyFile=./PrivateKey.json

Dieser Parameter enthält den erforderlichen privaten Schlüssel um auf das Repository zuzugreifen. Sie erhalten diesen Wert, als Sie konfigurierten Zugriff auf die Google Cloud Search REST API hinzu. Dieser Parameter muss in allen Konfigurationsdateien enthalten sein.

Dienstkonto-ID api.serviceAccountId=123abcdef4567890

Dieser Parameter gibt das Dienstkonto an ID. Der standardmäßige leere Stringwert ist nur zulässig, wenn die Konfigurationsdatei gibt einen Parameter für eine private Schlüsseldatei an. Dieser Parameter ist erforderlich, wenn Ihre private Schlüsseldatei ist kein JSON-Schlüssel.

Google Workspace-Konto-ID api.customerId=123abcdef4567890

Dieser Parameter gibt die Konto-ID für das Google Workspace-Konto des Unternehmens an. Du hast wenn Sie Nutzerzuordnung Identitäten in Cloud Search Dieser Parameter ist erforderlich, wenn Nutzer mit einem Identitätsconnector.

Stamm-URL api.rootUrl=baseURLPath

Dieser Parameter gibt den Basis-URL-Pfad des Indexierungsdienstes an.

Der Standardwert für diesen Parameter ist ein leerer String, der in https://cloudsearch.googleapis.com

Durchsuchungspläne

Die Planungsparameter bestimmen, wie oft der Connector zwischen Durchläufe.

Einstellung Parameter
Durchlauf mit vollständiger Indexierung beim Start des Connectors schedule.performTraversalOnStart=true|false

Der Connector führt beim Start einen vollständigen Durchlauf Warten auf das Ende des ersten Intervalls. Der Standardwert ist true..

Durchlauf mit vollständiger Indexierung nach Intervall schedule.traversalIntervalSecs=intervalInSeconds

Der Connector führt nach einem bestimmten Intervall einen vollständigen Durchlauf durch. Geben Sie die Intervall zwischen Durchläufen in Sekunden. Der Standardwert ist 86400 (Anzahl der Sekunden an einem Tag).

Beenden nach einem Durchlauf mit Einzeldurchlauf connector.runOnce=true|false

Der Connector führt einmal einen vollständigen Durchlauf durch und schließt ihn dann ab. Dieser Parameter sollte nur Der Wert muss auf true festgelegt sein, wenn Sie eine Strategie mit vollständigem Durchlauf verwenden. Eintrag und Grafik erfordern mehrere Durchläufe, um Änderungen zu erkennen und Inhalte zu indexieren. Standardeinstellung Der Wert ist false (Beenden nach einem Durchlauf ist nicht möglich).

Durchlauf mit Teilindexierung nach einem Intervall schedule.incrementalTraversalIntervalSecs=intervalInSeconds

Der Connector führt nach einem bestimmten Intervall einen Durchlauf mit Teilindexierung durch. Geben Sie das Intervall zwischen den Durchläufen in Sekunden an. Der Standardwert ist 300 (Anzahl der Sekunden in 5 Minuten).

Intervalle für geplante Abfragewarteschlangen schedule.pollQueueIntervalSecs=interval_in_seconds

Das Intervall zwischen den Intervallen für die geplante Abfragewarteschlange (in Sekunden). Dies wird verwendet, List Traversal-Connector verwendet wird. Der Standardwert ist 10..

Zugriffssteuerungslisten

Der Connector steuert den Zugriff auf Elemente mithilfe von ACLs. Mehrere Parameter können Sie den Nutzerzugriff auf indexierte Datensätze mit ACLs schützen.

Wenn in Ihrem Repository individuelle ACL-Informationen mit den einzelnen Elementen verknüpft sind, Sie laden alle ACL-Informationen hoch, um den Zugriff auf Elemente in Cloud Search zu steuern. Wenn Ihr Repository unvollständige oder keine ACL-Informationen bereitstellt, können Sie Standard- ACL-Informationen in den folgenden Parametern, die das SDK dem Connector.

Einstellung Parameter
ACL-Modus defaultAcl.mode=mode

Bestimmt, wann die Standard-ACL angewendet wird. Gültige Werte:

  • none: keine Standard-ACL verwenden (in diesem Modus sind Datensätze nicht suchbar, es sei denn, Sie definieren individuelle ACLs)
  • fallback: Standard-ACL nur verwenden, wenn noch keine ACL vorhanden ist
  • append: Standard-ACL zu vorhandener ACL hinzufügen
  • override: vorhandene ACL durch Standard-ACL ersetzen

Der Standardmodus ist none.

Standardmäßige öffentliche ACL defaultAcl.public=true|false

Als Standard-ACL für das gesamte Repository ist der Zugriff auf die öffentliche Domain festgelegt. Der Standardwert ist false. .

Allgemeine ACL für Gruppen mit Leseberechtigung defaultAcl.readers.groups=google:group1@mydomain.com, group2
Allgemeine ACL für Nutzer mit Leseberechtigung defaultAcl.readers.users=user1, user2, google:user3@mydomain.com
Allgemeine ACL für Gruppen ohne Leseberechtigung defaultAcl.denied.groups=group3
Allgemeine ACL für Nutzer ohne Leseberechtigung defaultAcl.denied.users=user4, user5
Zugriff auf gesamte Domain Um anzugeben, dass jeder indexierte Datensatz für jeden Nutzer öffentlich zugänglich ist in der Domain, legen Sie für die beiden folgenden Parameter Werte fest: <ph type="x-smartling-placeholder">
    </ph>
  • defaultAcl.mode=override
  • defaultACL.public=true
Allgemeine ACL Um eine ACL für jeden Datensatz des Daten-Repositorys anzugeben, legen Sie alle folgenden Parameterwerten: <ph type="x-smartling-placeholder">
    </ph>
  • defaultAcl.mode=fallback
  • defaultAcl.public=false
  • defaultAcl.readers.groups=google:group1@mydomain.com, group2
  • defaultAcl.readers.users=user1@mydomain.com, user2, google:user3@mydomain.com
  • defaultAcl.denied.groups=group3
  • defaultAcl.denied.users=user4, user5

    Es wird angenommen, dass es sich bei jedem angegebenen Nutzer und jeder angegebenen Gruppe um eine lokale Domain handelt. Nutzer/Gruppe, sofern nicht „google:“ vorangestellt ist (Literalkonstante).

    Der Standardnutzer oder die Standardgruppe ist ein leerer String. Nur Nutzer- und Gruppenparameter angeben defaultAcl.public ist auf false gesetzt. Um mehrere Gruppen und Nutzer verwenden, verwenden Sie durch Kommas getrennte Listen.

    Wenn defaultAcl.mode auf none gesetzt ist, werden Datensätze ohne definierte individuelle ACLs nicht durchsuchbar.

Konfigurationsparameter für Metadaten

Einige Objektmetadaten sind konfigurierbar. Connectors können konfigurierbare Metadatenfelder Indexierung. Wenn der Connector kein Feld festlegt, werden die Parameter in der Konfigurationsdatei verwendet um das Feld festzulegen.

Die Konfigurationsdatei enthält eine Reihe benannter Metadaten-Konfigurationsparameter, die ein .field-Suffix, z. B. itemMetadata.title.field=movieTitle. Wenn es einen Wert für diese wird das Metadatenfeld konfiguriert. Wenn für das Feld benannten Metadatenparameter haben, werden die Metadaten mithilfe eines Parameters mit dem Parameter .defaultValue-Suffix).

Die folgende Tabelle enthält Konfigurationsparameter für Metadaten.

Einstellung Parameter
Titel itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
Der Titel des Elements. Wenn title.field nicht auf einen Wert festgelegt ist, wird der Wert für title.defaultValue wird verwendet.
URL des Quell-Repositorys itemMetadata.sourceRepositoryUrl.field=url
itemMetadata.sourceRepositoryUrl.defaultValue=https://www.imdb.com/title/tt0031381/
Die in den Suchergebnissen verwendete Artikel-URL. Sie können einfach festlegen, dass defaultValue URL für das gesamte Repository, z. B. wenn es sich bei Ihrem Repository um eine CSV-Datei handelt und es nur eine gibt URL für jeden Artikel. Wenn sourceRepositoryUrl.field nicht festgelegt ist einen Wert hat, wird der Wert für sourceRepositoryUrl.defaultValue verwendet.
Containername itemMetadata.containerName.field=containerName
itemMetadata.containerName.defaultValue=myDefaultContainerName
Der Name des Dateicontainers, z. B. der Name eines Verzeichnisses oder Ordners im Dateisystem. Wenn wenn containerName.field nicht auf einen Wert festgelegt ist, wird der Wert für containerName.defaultValue wird verwendet.
Objekttyp itemMetadata.objectType.field=type
itemMetadata.objectType.defaultValue=movie
Der Objekttyp, der vom Connector verwendet wird, wie in den Schema. Der Connector indexiert keine strukturierten Daten, wenn diese Eigenschaft nicht angegeben ist.
Wenn für objectType.field kein Wert festgelegt ist, wird der Wert für objectType.defaultValue wird verwendet.
Erstellungszeit itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
Der Zeitstempel der Dokumenterstellung. Wenn createTime.field nicht auf einen Wert festgelegt ist, wird der für createTime.defaultValue verwendet.
Aktualisierungszeit itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
Der Zeitstempel der letzten Änderung des Elements. Wenn updateTime.field nicht auf ist, wird der Wert für updateTime.defaultValue verwendet.
Content-Language itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
Die Inhaltssprache der indexierten Dokumente. Wenn die contentLanguage.field nicht auf einen Wert festgelegt ist, wird der Wert für contentLanguage.defaultValue verwendet.
MIME-Typ itemMetadata.mimeType.field=mimeType
itemMetadata.mimeType.defaultValue=image/bmp
Der ursprüngliche MIME-Typ von „ItemContent.content“ im Quell-Repository. Die maximale Länge beträgt 256 Zeichen. Wenn mimeType.field nicht auf einen Wert festgelegt ist, wird der Wert für mimeType.defaultValue wird verwendet.
Metadaten zur Suchqualität itemMetadata.searchQualityMetadata.quality.field=quality
itemMetadata.searchQualityMetadata.quality.defaultValue=1
Ein Hinweis auf die Qualität des Elements, der die Suchqualität beeinflusst. Wert sollte sein zwischen 0,0 (niedrigste Qualität) und 1,0 (höchste Qualität). Der Standardwert ist 0,0. Wenn die quality.field ist nicht auf einen Wert festgelegt, der Wert für quality.defaultValue wird verwendet.
Hash itemMetadata.hash.field=hash
itemMetadata.hash.defaultValue=f0fda58630310a6dd91a7d8f0a4ceda2
Hash-Wert, der vom API-Aufrufer bereitgestellt wird. Dies kann mit dem items.push-Methode zum Berechnen des geänderten Zustands. Die maximale Länge beträgt 2.048 Zeichen. Zeichen. Wenn hash.field nicht auf einen Wert festgelegt ist, wird der Wert für hash.defaultValue wird verwendet.

Datums-/Uhrzeitformate

Datum/Uhrzeit-Formate geben die in Metadatenattributen erwarteten Formate an. Wenn die Konfigurationsdatei enthält diesen Parameter nicht, werden Standardwerte verwendet. In der folgenden Tabelle sehen Sie diesen Parameter.

Einstellung Parameter
Zusätzliche Datum/Uhrzeit-Formate structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX
Eine durch Semikolons getrennte Liste zusätzlicher java.time.format.DateTimeFormatter Muster zu erkennen. Die Muster werden beim Parsen von Stringwerten für Datums- oder Datum/Uhrzeit-Felder verwendet. in den Metadaten oder dem Schema. Der Standardwert ist eine leere Liste, aber RFC 3339 und RFC 1123. Formate werden immer unterstützt.

Strukturierte Daten

Die Cloud Search API bietet einen Schemadienst, mit dem Sie wie Cloud Search Ihre Daten indexiert und bereitstellt. Wenn Sie eine lokalen Repository-Schema befindet, müssen Sie die lokalen strukturierten Daten angeben, Schemaname.

Einstellung Parameter
Name des lokalen Schemas structuredData.localSchema=mySchemaName

Der Schemaname wird aus der Datenquelle gelesen und für das Repository verwendet Strukturierte Daten.

Der Standardwert ist ein leerer String.

Content- und Suchqualität

Für Repositories mit Datensätzen oder feldbasierten Inhalten (z. B. CRM, CVS, oder Datenbank), ermöglicht das SDK die automatische HTML-Formatierung für Datenfelder. Ihr die Datenfelder zu Beginn der Connector-Ausführung definiert. und verwendet dann eine Inhaltsvorlage, um jeden Datensatz zu formatieren, bevor er auf Cloud Search

In der Inhaltsvorlage wird die Wichtigkeit jedes Feldwerts für die Suche definiert. Der HTML-<title> ist ein Pflichtfeld und als höchste Priorität definiert. Sie können Legen Sie für alle anderen Inhaltsfelder die Wichtigkeitsstufen der Suchqualität fest: hoch, mittel oder niedrig. Jedes Inhaltsfeld, das nicht in einer bestimmten Kategorie definiert ist hat standardmäßig eine niedrige Priorität.

Einstellung Parameter
HTML-Titel für Inhalt contentTemplate.templateName.title=myTitleField

Der HTML-Titel des Inhalts und das Feld mit der höchsten Suchqualität Dieser Parameter ist erforderlich wenn Sie eine HTML-Inhaltsvorlage verwenden. Der Standardwert ist leer .

Hohe Suchqualität für Inhaltsfelder contentTemplate.templateName.quality.high=hField1,hField2

Inhaltsfelder mit einer hohen Suchpriorität. Der Standardwert ist ein leerer String.

Mittlere Suchqualität für Inhaltsfelder contentTemplate.templateName.quality.medium=mField1,mField2

Inhaltsfelder mit mittlerer Suchpriorität. Der Standardwert ist ein leerer String.

Niedrige Suchqualität für Inhaltsfelder contentTemplate.templateName.quality.low=lField1,lField2

Inhaltsfelder mit niedriger Suchpriorität. Der Standardwert ist ein leerer String.

Nicht angegebene Inhaltsfelder contentTemplate.templateName.unmappedColumnsMode=value

Die Verarbeitung nicht angegebener Inhaltsfelder durch den Connector. Gültige Werte sind:

  • APPEND: Fügt der Vorlage nicht spezifizierte Inhaltsfelder hinzu
  • IGNORE: Nicht spezifizierte Inhaltsfelder werden ignoriert

    Der Standardwert ist APPEND.

Feldnamen in HTML-Vorlage einfügen contentTemplate.templateName.includeFieldName=true|false

Gibt an, ob die Feldnamen zusammen mit den Felddaten im HTML-Code berücksichtigt werden sollen Vorlage. Die Standardeinstellung ist true und sorgt dafür, dass die Feldnamen suchbar sind als Teil der Inhaltsdaten.

Ungewöhnlich festgelegte Parameter

Die in diesem Abschnitt aufgeführten Parameter müssen nur selten festgelegt werden. Die Standardeinstellungen der Parameter sind für eine optimale Leistung. Google rät davon ab, diese Parameter auf von den Standardwerten unterscheiden, ohne dass spezifische Anforderungen in der zu erstellen.

Proxykonfiguration

Mit dem SDK können Sie den Connector so konfigurieren, dass er einen Proxy für ausgehende Verbindungen verwendet.

Die Parameter transport.proxy.hostname und transport.proxy.port sind erforderlich, um die Übertragung durch einen Proxy zu ermöglichen. Die anderen Parameter sind möglicherweise Ihr Proxy erfordert eine Authentifizierung oder arbeitet über das SOCKS-Protokoll anstelle von HTTP. Wenn transport.proxy.hostname nicht festgelegt ist, verwendet das SDK keinen Proxy.

Einstellung Parameter
Hostname transport.proxy.hostname=hostname

Der Hostname für den Proxyserver. Dieser Parameter ist bei Verwendung eines Proxys erforderlich.

Port transport.proxy.port=port

Die Portnummer für den Proxyserver. Dieser Parameter ist bei Verwendung eines Proxys erforderlich.

Proxy-Typ transport.proxy.type=type

Der Proxytyp. Gültige Werte sind:

  • HTTP: Der Proxy akzeptiert und leitet Anfragen über HTTP weiter.
  • SOCKS: Der Proxy akzeptiert Pakete über das SOCKS-Protokoll und leitet sie weiter.

Der Standardwert ist HTTP.

Nutzername transport.proxy.username=username

Der Nutzername, der beim Erstellen eines Proxy-Autorisierungstokens verwendet werden soll. Dieser Parameter ist optional und sollte nur festgelegt werden, wenn Ihr Proxy eine Authentifizierung erfordert.

Passwort transport.proxy.password=password

Das Passwort, das beim Erstellen eines Proxy-Autorisierungstokens verwendet werden soll. Dieser Parameter ist optional und sollte nur festgelegt werden, wenn Ihr Proxy eine Authentifizierung erfordert.

Durchquerer

Mit dem SDK können Sie mehrere einzelne Durchläufe angeben, um Parallele Durchläufe in einem Daten-Repository. Die SDK-Vorlagen-Connectors verwenden diese .

Einstellung Parameter
Threadpoolgröße traverse.threadPoolSize=size

Anzahl der Threads, die der Connector erstellt, um eine parallele Verarbeitung zu ermöglichen. A Ein einzelner Iterator ruft Vorgänge nacheinander ab (normalerweise RepositoryDoc-Objekte). Die API ruft die Prozesse jedoch parallel mit dieser Anzahl von Threads auf.

Der Standardwert ist 5.

Partitionsgröße traverse.partitionSize=batchSize

Anzahl der ApiOperation() vor dem Abrufen zusätzlicher APIOperation in Batches verarbeitet werden.

Der Standardwert ist 50.

Traverser-Umfrageanfragen

Der Kern der Cloud Search-Indexierungswarteschlange ist eine priorisierte Warteschlange mit einem für jedes bekanntermaßen existierende Element. Ein Listen-Connector kann eine Abfrage anfordern Elemente aus der Indexierungs-API heraus. Eine Umfrageanfrage erhält die Einträge mit der höchsten Priorität. aus der Indexierungswarteschlange.

Die folgenden Parameter werden in der Vorlage für den SDK-Eintrag verwendet, um Polling-Parameter definieren.

Einstellung Parameter
Repository-Durchlaufer repository.traversers=t1, t2, t3, ...

Erstellt einen oder mehrere Durchläufer, bei denen t1, t2, t3, ... ist der eindeutige Name der einzelnen Elemente. Jeder Name-Traverser hat eigene Einstellungen die mit dem eindeutigen Namen des Durchlaufs identifiziert werden, z. B. traversers.t1.hostload und traversers.t2.hostload.

Zu abgefragte Warteschlange traverser.pollRequest.queue=mySpecialQueue

Warteschlangennamen, die dieser Traverser abfragt. Der Standardwert ist ein leerer String (impliziert) „default“).

traverser.t1.pollRequest.queue=mySpecialQueue

Bei mehreren Durchläufen den Status der Elemente für die einzelnen Durchläufer festlegen (wobei t1 einen bestimmten Durchlauf repräsentiert).

Abfrageverhalten traverser.pollRequest.limit=maxItems

Maximale Anzahl von Elementen, die von einer Abfrageanfrage zurückgegeben werden sollen. Der Standardwert ist 0 (impliziert das Maximum der API).

traverser.t1.pollRequest.limit=limit

Bei mehreren Durchläufen den Status der Elemente für die einzelnen Durchläufer festlegen (wobei t1 einen bestimmten Durchlauf repräsentiert).

Artikelstatus traverser.pollRequest.statuses=statuses

Die spezifischen Status des Elements, die von diesem Durchlauf abgerufen werden, wobei statuses eine beliebige Kombination aus MODIFIED, NEW_ITEM (durch Kommas getrennt). Der Standardwert ist Leerer String (impliziert alle Statuswerte).

traverser.t1.pollRequest.statuses=statusesForThisTraverser

Wenn Sie mehrere Durchläufer haben, legen Sie den Status des Elements für jeden Durchlauf fest (wobei t1, für einen bestimmten Traverser steht).

Hostlast traverser.hostload=threads

Maximale Anzahl aktiver paralleler Threads, die für das Abfragen verfügbar sind. Standardeinstellung Wert ist 5.

traverser.t1.hostload=threadsForThisTraverser

Wenn Sie mehrere Durchläufer haben, legen Sie den Status des Elements für jeden Durchlauf fest (wobei t1, für einen bestimmten Traverser steht).

Zeitüberschreitung traverser.timeout=timeout

Zeitüberschreitungswert für die Unterbrechung dieses Traverser-Abfrageversuchs.

Der Standardwert ist 60.

traverser.t1.timeout=timeoutForThisTraverser

Wenn Sie mehrere Durchläufer haben, legen Sie den Status des Elements für jeden Durchlauf fest (wobei t1, für einen bestimmten Traverser steht).

traverser.timeunit=timeoutUunit

Die Einheiten für das Zeitlimit. Gültige Werte: SECONDS, MINUTES,

traverser.t1.timeunit=timeoutUnit

Wenn Sie mehrere Durchläufer haben, legen Sie den Status des Elements für jeden Durchlauf fest (wobei t1, für einen bestimmten Traverser steht).

In den meisten Fällen kann ein Connector, der nur die erfordert einen einzelnen Satz von Parametern für das Polling. In einigen Fällen müssen Sie mehr als ein Umfragekriterium definieren, wenn Ihr Durchlaufalgorithmus z. B. das Trennen der Elementverarbeitung durch verschiedene Warteschlangen.

In diesem Fall können Sie mehrere Abfragesätze definieren Parameter. Geben Sie zunächst die Namen der Parametersätze mithilfe von repository.traversers Geben Sie für jeden definierten Traverser-Namen den Parameter Konfigurationsdatei mit den Parametern aus der Tabelle oben t1 durch den Namen des Traverser. Damit wird eine Reihe von Abfragen erstellt, -Parameter für jeden definierten Traverser.

Prüfpunkte

Ein Prüfpunkt ist nützlich, um den Status eines inkrementellen Durchlaufs zu verfolgen.

Einstellung Parameter
Prüfpunktverzeichnis connector.checkpointDirectory=/path/to/checkpoint

Gibt den Pfad zum lokalen Verzeichnis an, das für die Prüfpunkte für inkrementellen und vollständigen Durchlauf verwendet werden soll.

Uploads von Inhalten

Inhalt des Elements wird zusammen mit dem Element in Cloud Search hochgeladen, wenn die Größe des Inhalts den angegebenen Grenzwert nicht überschreitet. Wenn die Größe des Inhalts den Grenzwert überschreitet, werden die Inhalte getrennt vom Metadaten und strukturierte Daten.

Einstellung Parameter
Grenzwert für Inhalte api.contentUploadThresholdBytes=bytes

Der Grenzwert für Inhalte, die bestimmen, ob sie inline hochgeladen werden mit anstatt eines separaten Uploads.

Der Standardwert ist 100000 (~100 KB).

Container

Bei der vollständigen Connector-Vorlage wird ein Algorithmus verwendet, der das Konzept eines Ein/Aus-Schaltfläche für temporäre Datenquellenwarteschlange zur Erkennung gelöschter Datensätze in der Datenbank. Das bedeutet, dass bei jedem vollständigen Durchlauf die abgerufenen Datensätze, die sich in einem neue Warteschlange, ersetzen Sie alle vorhandenen Cloud Search-Einträge, die aus der Vorabdurchlauf, die sich in einer alten Warteschlange befinden.

Einstellung Parameter
Containernamen-Tag traverse.queueTag=instance

So führen Sie mehrere Instanzen des Connectors parallel aus, um gemeinsame Daten zu indexieren. ob in verschiedenen Daten-Repositories oder in separaten Teilen eines Daten-Repository) verwenden, ohne sich gegenseitig zu beeinträchtigen, weisen Sie einen eindeutigen Container Name-Tag zu jeder Ausführung des Connectors hinzufügen. Ein eindeutiges Namens-Tag verhindert, dass ein Connector das Löschen der Datensätze einer anderen Instanz.

Das Namens-Tag wird an die Ein-/Aus-Schaltfläche der Warteschlangen-ID des Connectors mit vollständigem Durchlauf angehängt.

Löscherkennung deaktivieren traverse.useQueues=true|false

Gibt an, ob der Connector die Logik zum Ein-/Ausschalten der Warteschlangen für die Löscherkennung verwendet.

Der Standardwert ist true. Er gibt an, dass Warteschlangen verwendet.

Hinweis: Dieser Konfigurationsparameter gilt nur für Connectors. FullTraversalConnector-Vorlage implementieren.

Batch-Richtlinie

Das SDK unterstützt eine Batchrichtlinie, mit der Sie Folgendes ausführen können: Aktionen:

  • Batchanfragen
  • Anzahl der Anfragen in einer Batch-Warteschlange angeben
  • Gleichzeitig ausgeführte Batches verwalten
  • Aufeinanderfolgende Anfragen löschen

Das SDK fasst die Anfragen des Connectors in Batches zusammen, um den Durchsatz während Uploads. Der SDK-Trigger zum Hochladen eines Batches von Anfragen ist entweder Anzahl der Anfragen oder die Zeitüberschreitung, je nachdem, was zuerst eintritt. Wenn zum Beispiel der Parameter Die Batch-Verzögerungszeit ist abgelaufen, ohne dass die Batchgröße erreicht wurde. Wenn die Anzahl der Elemente in der Batch-Größe erreicht ist, bevor die Verzögerungszeit abläuft, wird der Batch-Upload ausgelöst.

Einstellung Parameter
Batchanfragen batch.batchSize=batchSize

Batchanfragen zusammen. Der Standardwert ist 10.

Anzahl der Anfragen in einer Batch-Warteschlange batch.maxQueueLength=maxQueueLength

Maximale Anzahl von Anfragen in einer Batch-Warteschlange zur Ausführung. Der Standardwert ist 1000..

Gleichzeitige Ausführung von Batches batch.maxActiveBatches=maxActiveBatches

Anzahl der zulässigen gleichzeitig ausgeführten Batches. Der Standardwert ist 20.

Aufeinanderfolgende Anfragen automatisch löschen batch.maxBatchDelaySeconds=maxBatchDelay

Anzahl der Sekunden, die gewartet werden soll, bevor Batchanfragen verarbeitet werden automatisch geleert. Die Der Standardwert ist 5.

In Batches zusammengefasste Anfragen beim Herunterfahren löschen batch.flushOnShutdown=true|false

Batchanfragen während des Herunterfahrens von Diensten löschen Der Standardwert ist true.

Ausnahme-Handler

Die Parameter des Ausnahme-Handlers bestimmen, wie nach dem Durchlauf verfahren wird. auf eine Ausnahme stößt.

Einstellung Parameter
Traverser-Anweisung im Falle eines Fehlers traverse.exceptionHandler=exceptions

Legt fest, wie der Traverser vorgehen soll, nachdem eine Ausnahme ausgelöst wurde. Gültige Werte sind:

  • 0 --Durchlauf wird immer abgebrochen, wenn eine Ausnahme auftritt.
  • num_exceptions (z. B. 10) – Abbrechen nach dem Durchlauf auf den angegebenen num_exceptions stößt.

    Der Standardwert ist 0 (wird bei Fehlern immer abgebrochen).

  • ignore--Fehler ignorieren
Wartezeit zwischen Ausnahmen abortExceptionHander.backoffMilliSeconds=backoff

Backoff-Zeit in Millisekunden für die Wartezeit zwischen erkannten Handler-Ausnahmen (wird normalerweise beim Durchlaufen eines Repositorys verwendet). Der Standardwert ist 10.