Jedem Connector ist eine Konfigurationsdatei mit den vom Connector verwendeten Parametern zugeordnet, z. B. 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 mehrere von Google bereitgestellte Konfigurationsparameter, die von verschiedenen Connectors verwendet werden. Von den von Google bereitgestellten Konfigurationsparametern müssen in der Konfigurationsdatei nur die Parameter für den Zugriff auf die Datenquelle definiert werden. Sie müssen die von Google bereitgestellten Parameter in Ihrer Konfigurationsdatei nicht neu definieren, 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
Gängige Parameter
In diesem Abschnitt werden die erforderlichen und optionalen, häufig festgelegten Konfigurationsparameter aufgeführt. Wenn Sie die Werte für die optionalen Parameter nicht ändern, verwendet der Connector die vom SDK bereitgestellten Standardwerte.
Zugriff auf Datenquellen
In der folgenden Tabelle sind alle Parameter aufgeführt, die in einer Konfigurationsdatei enthalten sein müssen. Welche Parameter Sie verwenden, hängt vom Connector-Typ ab, den Sie erstellen (Inhalts- oder Identitätsconnector).
Einstellung | Parameter |
---|---|
ID der Datenquelle | api.sourceId=1234567890abcdef
Dieser Parameter wird von einem Connector benötigt, um den Speicherort Ihres Repositorys zu ermitteln. Sie erhalten diesen Wert, wenn Sie eine Datenquelle zur Suche hinzugefügt haben. 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 zu ermitteln. Sie haben diesen Wert erhalten, 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 privaten Schlüssel, der für den Zugriff auf das Repository erforderlich ist. Sie haben diesen Wert erhalten, als Sie den Zugriff auf die Google Cloud Search REST API konfiguriert haben. Dieser Parameter muss in allen Konfigurationsdateien enthalten sein. |
Dienstkonto-ID | api.serviceAccountId=123abcdef4567890
Dieser Parameter gibt die Dienstkonto-ID an. Der leere Stringwert ist standardmäßig nur zulässig, wenn in der Konfigurationsdatei ein Parameter für die private Schlüsseldatei angegeben wird. Dieser Parameter ist erforderlich, wenn Ihre private Schlüsseldatei kein JSON-Schlüssel ist. |
Google Workspace-Konto-ID | api.customerId=123abcdef4567890
Dieser Parameter gibt die Konto-ID für das Google Workspace-Konto des Unternehmens an. Sie haben diesen Wert erhalten, als Sie Nutzeridentitäten in Cloud Search zuordnen. Dieser Parameter ist erforderlich, wenn Nutzer mit einem Identitätsconnector synchronisiert werden. |
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 |
Durchlaufpläne
Die Planungsparameter bestimmen, wie oft der Connector zwischen den Durchläufen wartet.
Einstellung | Parameter |
---|---|
Durchlauf mit vollständiger Indexierung beim Start des Connectors | schedule.performTraversalOnStart=true|false
Beim Start des Connectors wird ein Durchlauf mit vollständiger Indexierung durchgeführt, anstatt zu warten, bis das erste Intervall abläuft. Der Standardwert ist |
Durchlauf mit vollständiger Indexierung nach Intervall | schedule.traversalIntervalSecs=intervalInSeconds
Nach einem bestimmten Intervall wird ein Connectordurchlauf mit vollständiger Indexierung durchgeführt. Geben Sie das Intervall zwischen den Durchläufen in Sekunden an. Der Standardwert ist |
Beenden nach einem einzigen Durchlauf | connector.runOnce=true|false
Der Connector führt einmal einen vollständigen Durchlauf und dann den Vorgang aus. Dieser Parameter sollte nur auf |
Durchlauf mit Teilindexierung nach einem Intervall | schedule.incrementalTraversalIntervalSecs=intervalInSeconds
Der Connector führt nach einem bestimmten Intervall einen inkrementellen Durchlauf durch.
Geben Sie das Intervall zwischen den Durchläufen in Sekunden an. Der Standardwert ist |
Intervalle für geplante Abfragewarteschlangen | schedule.pollQueueIntervalSecs=interval_in_seconds
Das Intervall zwischen den Intervallen für geplante Abfragewarteschlangen (in Sekunden). Er wird nur von einem Connector für Auflistungsdurchläufe verwendet. Der Standardwert ist |
Zugriffssteuerungslisten
Der Connector steuert den Zugriff auf Elemente mithilfe von ACLs. Wenn Sie mehrere Parameter verwenden, können Sie den Nutzerzugriff auf indexierte Datensätze mit ACLs schützen.
Wenn Ihrem Repository individuelle ACL-Informationen zugeordnet sind, laden Sie 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 über die folgenden Parameter angeben, die vom SDK für den Connector bereitgestellt werden.
Einstellung | Parameter |
---|---|
ACL-Modus | defaultAcl.mode=mode
Legt fest, wann die Standard-ACL angewendet wird. Zulässige Werte:
Der Standardmodus ist |
Öffentliche Standard-ACL | defaultAcl.public=true|false
Die Standard-ACL, die für das gesamte Repository verwendet wird, ist auf Public Domain-Zugriff festgelegt.
Der Standardwert ist |
Allgemeine ACL-Gruppenleser | 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 | Wenn Sie angeben möchten, dass jeder indexierte Datensatz für jeden Nutzer in der Domain öffentlich zugänglich ist, legen Sie die beiden folgenden Parameter mit Werten fest:
|
Allgemein definierte ACL | Um eine ACL für jeden Datensatz des Daten-Repositorys anzugeben, legen Sie alle folgenden Parameterwerte fest:
|
Konfigurationsparameter für Metadaten
Einige der Objektmetadaten sind konfigurierbar. Connectors können während der Indexierung konfigurierbare Metadatenfelder festlegen. Falls der Connector kein Feld festlegt, wird das Feld anhand der Parameter in Ihrer Konfigurationsdatei festgelegt.
Die Konfigurationsdatei enthält eine Reihe benannter Metadatenkonfigurationsparameter, die durch ein .field
-Suffix gekennzeichnet sind, z. B. itemMetadata.title.field=movieTitle
. Wenn ein Wert für diese Parameter vorhanden ist, wird er zum Konfigurieren des Metadatenfelds verwendet. Wenn für den benannten Metadatenparameter kein Wert vorhanden ist, werden die Metadaten mit einem Parameter mit dem Suffix .defaultValue
konfiguriert.
Die folgende Tabelle enthält Metadaten-Konfigurationsparameter.
Einstellung | Parameter |
Titel | itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=
Titel des Elements Wenn für title.field kein Wert festgelegt ist, wird der Wert für title.defaultValue verwendet.
|
Quell-Repository-URL | itemMetadata.sourceRepositoryUrl.field=url
itemMetadata.sourceRepositoryUrl.defaultValue=https://www.imdb.com/title/tt0031381/
Die in den Suchergebnissen verwendete Artikel-URL. Sie können die defaultValue einfach so festlegen, dass sie eine URL für das gesamte Repository enthält, z. B. wenn Ihr Vertreter eine CSV-Datei hat und es nur eine URL für jedes Element gibt. Wenn für sourceRepositoryUrl.field kein Wert festgelegt ist, wird der Wert für sourceRepositoryUrl.defaultValue verwendet.
|
Containername | itemMetadata.containerName.field=containerName
itemMetadata.containerName.defaultValue=myDefaultContainerName
Der Name des Containers des Elements, z. B. der Name eines Dateisystemverzeichnisses oder -ordners. Wenn für containerName.field kein Wert festgelegt ist, wird der Wert für containerName.defaultValue verwendet.
|
Objekttyp | itemMetadata.objectType.field=type itemMetadata.objectType.defaultValue=
Der Objekttyp, der vom Connector verwendet wird, wie im Schema definiert. Wenn diese Eigenschaft nicht angegeben ist, indexiert der Connector keine strukturierten Daten. Wenn für objectType.field kein Wert festgelegt ist, wird der Wert für objectType.defaultValue verwendet.
|
Erstellt am | itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
Zeitstempel der Dokumenterstellung. Wenn für createTime.field kein Wert festgelegt ist, wird der Wert für createTime.defaultValue verwendet.
|
Aktualisiert am | itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
Der Zeitstempel der letzten Änderung des Elements. Wenn für updateTime.field kein Wert festgelegt ist, wird der Wert für updateTime.defaultValue verwendet.
|
Content-Language | itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=
Die Inhaltssprache der indexierten Dokumente. Wenn für contentLanguage.field kein Wert festgelegt ist, wird der Wert für contentLanguage.defaultValue verwendet.
|
MIME-Typ | itemMetadata.mimeType.field=mimeType
itemMetadata.mimeType.defaultValue=
Der ursprüngliche MIME-Typ von ItemContent.content im Quell-Repository. Die maximale Länge beträgt 256 Zeichen. Wenn für mimeType.field kein Wert festgelegt ist, wird der Wert für mimeType.defaultValue verwendet.
|
Metadaten zur Suchqualität | itemMetadata.searchQualityMetadata.quality.field=quality
itemMetadata.searchQualityMetadata.quality.defaultValue=
Gibt die Qualität des Elements an, die zur Beeinflussung der Suchqualität verwendet wird. Der Wert sollte zwischen 0,0 (niedrigste Qualität) und 1,0 (höchste Qualität) liegen. Der Standardwert ist 0,0. Wenn für quality.field kein Wert festgelegt ist, wird der Wert für quality.defaultValue verwendet.
|
Hash | itemMetadata.hash.field=hash
itemMetadata.hash.defaultValue=f0fda58630310a6dd91a7d8f0a4ceda2
Hash-Wert, der vom API-Aufrufer bereitgestellt wird. Dies kann mit der Methode items.push verwendet werden, um den geänderten Status zu berechnen. Die maximale Länge beträgt 2.048 Zeichen. Wenn für hash.field kein Wert festgelegt ist, wird der Wert für hash.defaultValue verwendet.
|
Datums-/Uhrzeitformate
Datum/Uhrzeit-Formate geben die in Metadatenattributen erwarteten Formate an. Wenn die Konfigurationsdatei diesen Parameter nicht enthält, 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. Die Muster werden beim Parsen von Stringwerten für Datums- oder Datum-Uhrzeitfelder in den Metadaten oder im Schema verwendet. Der Standardwert ist eine leere Liste. Die Formate RFC 3339 und RFC 1123 werden jedoch immer unterstützt.
|
Strukturierte Daten
Die Cloud Search Indexing API bietet einen Schemadienst, mit dem Sie anpassen können, wie Cloud Search Ihre Daten indexiert und bereitstellt. Wenn Sie ein Schema für ein lokales Repository verwenden, müssen Sie den Namen des lokalen Schemas für strukturierte Daten angeben.
Einstellung | Parameter |
---|---|
Name des lokalen Schemas | structuredData.localSchema=mySchemaName
Der Schemaname wird aus der Datenquelle gelesen und für strukturierte Repository-Daten verwendet. Der Standardwert ist ein leerer String. |
Inhalts- und Suchqualität
Bei Repositories, die eintrags- oder feldbasierte Inhalte enthalten (z. B. CRM-, CSV- oder Datenbank), ermöglicht das SDK die automatische HTML-Formatierung von Datenfeldern. Die Datenfelder werden zu Beginn der Connector-Ausführung vom Connector definiert. Anschließend werden die Datensätze mithilfe einer Inhaltsvorlage formatiert, bevor sie in Cloud Search hochgeladen werden.
Die Inhaltsvorlage definiert die Wichtigkeit jedes Feldwerts für die Suche.
Das HTML-Feld <title>
ist erforderlich und hat die höchste Priorität. Für alle anderen Inhaltsfelder können Sie die Wichtigkeitsstufen der Suchqualität festlegen: 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 des Inhalts | contentTemplate.templateName.title=myTitleField
Der HTML-Titel des Inhalts und Feld mit der höchsten Suchqualität. Dieser Parameter ist nur erforderlich, wenn Sie eine Vorlage für HTML-Inhalte verwenden. Der Standardwert ist ein leerer String. |
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 einer mittleren Suchpriorität. Der Standardwert ist ein leerer String. |
Geringe 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 Vorgehensweise des Connectors bei nicht spezifizierten Inhaltsfeldern. Gültige Werte sind:
|
Feldnamen in HTML-Vorlage einschließen | contentTemplate.templateName.includeFieldName=true|false
Gibt an, ob die Feldnamen zusammen mit den Felddaten in der HTML-Vorlage verwendet werden sollen. Der Standardwert ist |
Selten festgelegte Parameter
Die in diesem Abschnitt aufgeführten Parameter müssen Sie nur selten festlegen. Die Standardeinstellungen der Parameter sind für eine optimale Leistung festgelegt. Es wird nicht empfohlen, diese Parameter ohne spezielle Anforderungen in Ihrem Repository auf Werte festzulegen, die sich von ihren Standardwerten unterscheiden.
Proxykonfiguration
Mit dem SDK können Sie den Connector so konfigurieren, dass für ausgehende Verbindungen ein Proxy verwendet wird.
Die Parameter transport.proxy.hostname
und transport.proxy.port
sind erforderlich, um die Übertragung über einen Proxy zu ermöglichen. Die anderen Parameter sind möglicherweise erforderlich, wenn Ihr Proxy eine Authentifizierung erfordert oder über das SOCKS-Protokoll statt über HTTP arbeitet. 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. |
Proxytyp | transport.proxy.type=type
Der Proxytyp. Gültige Werte sind:
Der Standardwert ist |
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. |
Traversen
Mit dem SDK können Sie mehrere individuelle Durchläufe festlegen, um parallele Durchläufe eines Daten-Repositorys zu ermöglichen. Die SDK-Vorlagen-Connectors verwenden diese Funktion.
Einstellung | Parameter |
---|---|
Größe des Threadpools | traverse.threadPoolSize=size
Anzahl der Threads, die vom Connector für die parallele Verarbeitung erstellt werden. Ein einzelner Iterator ruft Vorgänge nacheinander ab (in der Regel RepositoryDoc-Objekte), die API ruft jedoch Prozesse parallel auf und verwendet diese Anzahl von Threads. Der Standardwert ist |
Partitionsgröße | traverse.partitionSize=batchSize
Anzahl der Der Standardwert ist |
Durchlaufanfrage-Umfrageanfragen
Der Kern der Cloud Search-Indexierungswarteschlange ist eine Prioritätswarteschlange, die für jedes bekannte Element einen Eintrag enthält. Ein Connector für Einträge kann Elemente von der Indexierungs-API abfragen. Bei einer Abfrageanfrage werden die Einträge mit der höchsten Priorität aus der Indexierungswarteschlange abgerufen.
Die folgenden Parameter werden in der Connector-Vorlage für SDK-Einträge verwendet, um Abfrageparameter zu definieren.
Einstellung | Parameter |
---|---|
Repository-Durchsucher | repository.traversers=t1, t2, t3, ...
Erstellt einen oder mehrere einzelne Durchsucher, wobei t1, t2, t3, ... der eindeutige Name jedes einzelnen Traversers ist. Jeder Traverser hat eigene Einstellungen, die durch den eindeutigen Namen des Traversers identifiziert werden, z. B. |
Abzurufende Warteschlange | traverser.pollRequest.queue=mySpecialQueue
Warteschlangennamen, die von diesem Durchsucher abgefragt werden. Der Standardwert ist ein leerer String (impliziert „Standard“). |
traverser.t1.pollRequest.queue=mySpecialQueue
Wenn Sie mehrere Durchläufer haben, legen Sie den Status des Elements für jeden Durchsucher fest, wobei t1 für einen bestimmten Durchsucher steht. |
|
Abfrageverhalten | traverser.pollRequest.limit=maxItems
Maximale Anzahl von Elementen, die von einer Abfrageanfrage zurückgegeben werden sollen.
Der Standardwert ist |
traverser.t1.pollRequest.limit=limit
Wenn Sie mehrere Durchläufer haben, legen Sie den Status des Elements für jeden Durchsucher fest, wobei t1 für einen bestimmten Durchsucher steht. |
|
Artikelstatus | traverser.pollRequest.statuses=statuses
Die Status des jeweiligen Elements, die von diesem Durchlaufer abgefragt werden, wobei statuses eine beliebige Kombination aus |
traverser.t1.pollRequest.statuses=statusesForThisTraverser
Wenn Sie mehrere Durchsucher haben, legen Sie den Status des Elements für jeden Durchsucher fest, wobei t1 einen bestimmten Durchsucher darstellt. | |
Hostlast | traverser.hostload=threads
Maximale Anzahl aktiver paralleler Threads, die für das Abfragen verfügbar sind. Der Standardwert ist |
traverser.t1.hostload=threadsForThisTraverser
Wenn Sie mehrere Durchsucher haben, legen Sie den Status des Elements für jeden Durchsucher fest, wobei t1 einen bestimmten Durchsucher darstellt. |
|
Zeitlimit | traverser.timeout=timeout
Zeitüberschreitungswert zur Unterbrechung dieses Durchlaufversuchs. Der Standardwert ist |
traverser.t1.timeout=timeoutForThisTraverser
Wenn Sie mehrere Durchsucher haben, legen Sie den Status des Elements für jeden Durchsucher fest, wobei t1 einen bestimmten Durchsucher darstellt. |
|
traverser.timeunit=timeoutUunit
Die Zeitüberschreitungseinheiten. Gültige Werte: |
|
traverser.t1.timeunit=timeoutUnit
Wenn Sie mehrere Durchsucher haben, legen Sie den Status des Elements für jeden Durchsucher fest, wobei t1 einen bestimmten Durchsucher darstellt. |
In den meisten Fällen ist für einen Connector, der die Connector-Vorlage für den SDK-Eintrag verwendet, nur ein einziger Parametersatz für Abfragen erforderlich. In einigen Fällen müssen Sie möglicherweise mehr als ein Abfragekriterium definieren, wenn Ihr Durchlaufalgorithmus beispielsweise eine Trennung der Elementverarbeitung in verschiedenen Warteschlangen erfordert.
In diesem Fall haben Sie die Möglichkeit, mehrere Sätze von Abfrageparametern zu definieren. Geben Sie zuerst die Namen der Parametersätze mithilfe von repository.traversers
an. Geben Sie für jeden definierten Traverser-Namen die Konfigurationsdatei mit den Parametern aus der obigen Tabelle an. Ersetzen Sie dabei t1
durch den Namen des Traversers. Dadurch wird eine Reihe von Abfrageparametern für jeden definierten Traverser erstellt.
Prüfpunkte
Ein Prüfpunkt ist nützlich, um den Status eines inkrementellen Durchlaufs zu verfolgen.
Einstellung | Parameter |
---|---|
Checkpoint-Verzeichnis | connector.checkpointDirectory=/path/to/checkpoint
Gibt den Pfad zum lokalen Verzeichnis an, der für die Prüfpunkte für inkrementelle und vollständige Durchläufe verwendet werden soll. |
Uploads von Inhalten
Der Inhalt eines Elements wird zusammen mit dem Element in Cloud Search hochgeladen, wenn seine Größe den angegebenen Grenzwert nicht überschreitet. Wenn die Größe des Inhalts den Grenzwert überschreitet, wird er getrennt von den Metadaten und strukturierten Daten des Objekts hochgeladen.
Einstellung | Parameter |
---|---|
Grenzwert für Inhalte | api.contentUploadThresholdBytes=bytes
Der Schwellenwert für Inhalte, die bestimmt, ob diese „direkt mit dem Artikel“ und nicht mit einem separaten Upload hochgeladen werden. Der Standardwert ist |
Container
Die vollständige Connector-Vorlage verwendet einen Algorithmus, der auf dem Konzept einer temporären Ein-/Aus-Schaltfläche für Datenquellen basiert, um gelöschte Datensätze in der Datenbank zu erkennen. Bei jedem Durchlauf mit vollständiger Indexierung ersetzen die abgerufenen Datensätze in einer neuen Warteschlange alle vorhandenen Cloud Search-Einträge, die aus dem vorherigen Durchlauf indexiert wurden und sich in einer alten Warteschlange befinden.
Einstellung | Parameter |
---|---|
Container-Name-Tag | traverse.queueTag=instance
Wenn Sie mehrere Instanzen des Connectors parallel ausführen möchten, um ein gemeinsames Daten-Repository zu indexieren (sei es in verschiedenen Daten-Repositories oder separaten Teilen eines gemeinsamen Daten-Repositorys), ohne einander zu beeinträchtigen, weisen Sie jeder Ausführung des Connectors ein eindeutiges Container-Namens-Tag zu. Ein eindeutiges Namens-Tag verhindert, dass eine Connector-Instanz die Datensätze eines anderen Nutzers löscht. Das Name-Tag wird an die Ein-/Aus-Schaltfläche für die Ein-/Aus-Schaltfläche des Connectors für den vollständigen Durchlauf angehängt. |
Löscherkennung deaktivieren | traverse.useQueues=true|false
Gibt an, ob der Connector für die Löscherkennung eine Ein-/Aus-Logik für Warteschlangen verwendet. Der Standardwert ist Hinweis: Dieser Konfigurationsparameter gilt nur für Connectors, die die Vorlage |
Batchrichtlinie
Das SDK unterstützt eine Batchrichtlinie, mit der Sie die folgenden Aktionen ausführen können:
- Batchanfragen
- Anzahl der Anfragen in einer Batchwarteschlange angeben
- Gleichzeitig ausgeführte Batches verwalten
- Batchanfragen leeren
Das SDK fasst die Anfragen des Connectors in Batches zusammen, um den Durchsatz während des Uploads zu beschleunigen. Der SDK-Trigger zum Hochladen eines Batches von Anfragen erfolgt entweder nach der Anzahl der Anfragen oder nach dem Zeitlimit, je nachdem, was zuerst eintritt. Wenn beispielsweise die Batchverzögerungszeit abgelaufen ist, ohne dass die Batchgröße erreicht wurde, oder wenn die Anzahl der Elemente in der Batchgröße vor Ablauf der Verzögerungszeit erreicht wird, wird der Batch-Upload ausgelöst.
Einstellung | Parameter |
---|---|
Batchanfragen | batch.batchSize
Batchanfragen Der Standardwert ist |
Anzahl der Anfragen in einer Batchwarteschlange | batch.maxQueueLength=maxQueueLength
Maximale Anzahl von Anfragen in einer Batchwarteschlange zur Ausführung.
Der Standardwert ist |
Gleichzeitige Ausführung von Batches | batch.maxActiveBatches=maxActiveBatches
Anzahl der zulässigen gleichzeitig ausgeführten Batches.
Der Standardwert ist |
Batchanfragen automatisch leeren | batch.maxBatchDelaySeconds=maxBatchDelay
Anzahl der Sekunden, die gewartet werden soll, bevor Batchanfragen automatisch geleert werden. Der Standardwert ist |
Batchanfragen beim Herunterfahren leeren | batch.flushOnShutdown=true|false
Batchanfragen während des Herunterfahrens des Dienstes leeren
Der Standardwert ist |
Ausnahme-Handler
Die Parameter des Ausnahme-Handlers bestimmen, wie der Traverser weitergeht, nachdem eine Ausnahme erkannt wurde.
Einstellung | Parameter |
---|---|
Durchlaufanweisung im Fall eines Fehlers | traverse.exceptionHandler=exceptions
Legt fest, wie der Traverser nach dem Auslösen einer Ausnahme verfahren soll. Gültige Werte sind:
|
Wartezeit zwischen Ausnahmen | abortExceptionHander.backoffMilliSeconds=backoff
Die Backoff-Zeit in Millisekunden für den Abstand zwischen erkannten Handler-Ausnahmen (wird normalerweise beim Durchsuchen eines Repositorys verwendet). Der Standardwert ist |