Paramètres de configuration fournis par Google

Chaque connecteur est associé à un fichier de configuration contenant ses paramètres, tels que l'ID de votre dépôt. Les paramètres sont définis sous forme de paires clé-valeur (par exemple, api.sourceId=1234567890abcdef).

Le SDK Google Cloud Search contient plusieurs paramètres de configuration fournis par Google, utilisés par différents connecteurs. Parmi les paramètres de configuration fournis par Google, seuls les paramètres d'accès à la source de données doivent être définis dans le fichier de configuration. Vous n'avez pas besoin de redéfinir les paramètres fournis par Google dans votre fichier de configuration, sauf si vous souhaitez remplacer leurs valeurs par défaut.

Ce document de référence décrit les paramètres de configuration fournis par Google.

Exemple de fichier de configuration

L'exemple suivant montre un fichier de configuration d'identité avec des paires clé/valeur de paramètres.

#
# 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
  

Paramètres généralement définis

Cette section liste les paramètres de configuration obligatoires et facultatifs, couramment définis. Si vous ne modifiez pas les valeurs des paramètres facultatifs, le connecteur utilise les valeurs par défaut fournies par le SDK.

Accès à la source de données

Le tableau suivant répertorie tous les paramètres requis pour figurer dans un fichier de configuration. Les paramètres que vous utilisez dépendent du type de connecteur que vous créez (connecteur de contenu ou connecteur d'identité).

Paramètre Paramètres
ID de la source de données api.sourceId=1234567890abcdef

Ce paramètre est requis par un connecteur pour identifier l'emplacement de votre dépôt. Vous obtenez cette valeur lorsque vous avez ajouté une source de données à la recherche. Ce paramètre doit figurer dans les fichiers de configuration du connecteur.

ID de la source d'identité api.identitySourceId=0987654321lmnopq

Ce paramètre est requis par les connecteurs d'identité pour identifier l'emplacement d'une source d'identité externe. Vous avez obtenu cette valeur en mappant des identités d'utilisateur dans Cloud Search. Ce paramètre doit figurer dans tous les fichiers de configuration du connecteur d'identité.

Fichier de clé privée du compte de service api.serviceAccountPrivateKeyFile=./PrivateKey.json

Ce paramètre contient la clé privée nécessaire pour accéder au dépôt. Vous avez obtenu cette valeur lorsque vous avez configuré l'accès à l'API REST Google Cloud Search. Ce paramètre doit figurer dans tous les fichiers de configuration.

ID du compte de service api.serviceAccountId=123abcdef4567890

Ce paramètre spécifie l'ID du compte de service. La valeur de chaîne vide par défaut n'est autorisée que si le fichier de configuration spécifie un paramètre de fichier de clé privée. Ce paramètre est obligatoire si votre fichier de clé privée n'est pas une clé JSON.

ID de compte Google Workspace api.customerId=123abcdef4567890

Ce paramètre spécifie l'ID du compte Google Workspace de l'entreprise. Vous avez obtenu cette valeur en mappant des identités d'utilisateur dans Cloud Search. Ce paramètre est obligatoire pour synchroniser les utilisateurs à l'aide d'un connecteur d'identité.

URL racine api.rootUrl=baseURLPath

Ce paramètre spécifie le chemin de l'URL de base du service d'indexation.

La valeur par défaut de ce paramètre est une chaîne vide convertie en https://cloudsearch.googleapis.com.

Planifications de balayage

Les paramètres de planification déterminent la fréquence à laquelle le connecteur doit patienter entre chaque balayage.

Paramètre Paramètres
Balayage complet au démarrage du connecteur schedule.performTraversalOnStart=true|false

Le connecteur effectue un balayage complet au démarrage du connecteur, plutôt que d'attendre l'expiration du premier intervalle. La valeur par défaut est true..

Balayage complet après un intervalle schedule.traversalIntervalSecs=intervalInSeconds

Le connecteur effectue un balayage complet après un intervalle donné. Indiquez l'intervalle entre les balayages, en secondes. La valeur par défaut est 86400 (nombre de secondes dans une journée).

Quitter après un seul balayage connector.runOnce=true|false

Le connecteur effectue un balayage complet une fois, puis se ferme. Ce paramètre ne doit être défini sur true que si vous utilisez une stratégie de balayage complet. Les stratégies de listage et de graphique nécessitent plusieurs balayages pour détecter les modifications et indexer le contenu. La valeur par défaut est false (ne quittez pas la page après un seul balayage).

Balayage incrémentiel après un intervalle schedule.incrementalTraversalIntervalSecs=intervalInSeconds

Le connecteur effectue un balayage incrémentiel après un intervalle donné. Indiquez l'intervalle entre les balayages, en secondes. La valeur par défaut est 300 (nombre de secondes dans 5 minutes).

Intervalles de la file d'attente des sondages programmés schedule.pollQueueIntervalSecs=interval_in_seconds

Intervalle entre les intervalles de la file d'attente de sondages programmé (en secondes). Il n'est utilisé que par un connecteur de balayage de liste. La valeur par défaut est 10..

Listes de contrôle d'accès

Le connecteur contrôle l'accès aux éléments à l'aide de LCA. Utiliser plusieurs paramètres vous permet de protéger l'accès des utilisateurs aux enregistrements indexés à l'aide de LCA.

Si votre dépôt dispose d'informations de LCA individuelles associées à chaque élément, importez toutes les informations de LCA pour contrôler l'accès aux éléments dans Cloud Search. Si votre dépôt ne fournit aucune information de LCA ou partielle, vous pouvez indiquer des informations de LCA par défaut dans les paramètres suivants, que le SDK fournit au connecteur.

Paramètre Paramètres
Mode LCA defaultAcl.mode=mode

Détermine quand appliquer la LCA par défaut. Valeurs correctes :

  • none: n'utilisez pas la LCA par défaut (dans ce mode, les enregistrements ne peuvent faire l'objet d'une recherche que si vous définissez des LCA individuelles)
  • fallback: utiliser la LCA par défaut uniquement si aucune LCA n'est présente
  • append: ajouter la LCA par défaut à la LCA existante
  • override: remplacer la LCA existante par la LCA par défaut

Le mode par défaut est none.

LCA publique par défaut defaultAcl.public=true|false

La LCA par défaut utilisée pour l'ensemble du dépôt est définie sur l'accès au domaine public. La valeur par défaut est false. .

Lecteurs de groupe de la LCA commune defaultAcl.readers.groups=google:group1@mydomain.com, group2
Lecteurs de la LCA commune defaultAcl.readers.users=user1, user2, google:user3@mydomain.com
Lecteurs de groupe refusés de la LCA commune defaultAcl.denied.groups=group3
Lecteurs refusés de la LCA commune defaultAcl.denied.users=user4, user5
Accès à l'ensemble du domaine Pour spécifier que chaque enregistrement indexé doit être accessible publiquement par tous les utilisateurs du domaine, définissez les valeurs des deux paramètres suivants :
  • defaultAcl.mode=override
  • defaultACL.public=true
LCA commune définie Pour spécifier une LCA pour chaque enregistrement du dépôt de données, définissez toutes les valeurs de paramètres suivantes :
  • defaultAcl.mode=fallback
  • defaultAcl.public=false
  • defaultAcl.readers.groups=google:group1@mydomain.com, group2 code>
  • defaultAcl.readers.users=user1@mydomain.com, user2, google:user3@mydomain.com
  • defaultAcl.denied.groups=group3
  • defaultAcl.denied.users=user4, user5

    Chaque utilisateur et groupe spécifié est considéré comme un utilisateur/groupe défini par le domaine local, sauf s'il porte le préfixe "google:" (constante littérale).

    L'utilisateur ou le groupe par défaut est une chaîne vide. Fournissez les paramètres utilisateur et de groupe uniquement si defaultAcl.public est défini sur false. Pour répertorier plusieurs groupes et utilisateurs, utilisez des listes d'éléments séparés par une virgule.

    Si defaultAcl.mode est défini sur none, les enregistrements ne peuvent pas faire l'objet d'une recherche si des LCA individuelles sont définies.

Paramètres de configuration des métadonnées

Certaines métadonnées de l'élément sont configurables. Les connecteurs peuvent définir des champs de métadonnées configurables lors de l'indexation. Si le connecteur ne définit aucun champ, les paramètres de votre fichier de configuration sont utilisés pour définir ce champ.

Le fichier de configuration comporte une série de paramètres de configuration de métadonnées nommés indiqués par un suffixe .field, tels que itemMetadata.title.field=movieTitle. Si une valeur est définie pour ces paramètres, elle est utilisée pour configurer le champ de métadonnées. Si aucune valeur n'est définie pour le paramètre de métadonnées nommé, les métadonnées sont configurées à l'aide d'un paramètre comportant le suffixe .defaultValue.

Le tableau suivant présente les paramètres de configuration des métadonnées.

Paramètre Paramètre
Titre itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=Gone with the Wind
Titre de l'élément Si aucune valeur n'est définie pour title.field, la valeur de title.defaultValue est utilisée.
URL du dépôt source itemMetadata.sourceRepositoryUrl.field=url
itemMetadata.sourceRepositoryUrl.defaultValue=https://www.imdb.com/title/tt0031381/
URL d'élément utilisée dans les résultats de recherche. Vous pouvez simplement définir defaultValue pour qu'il contienne une URL pour l'ensemble du dépôt, par exemple si votre dépôt est un fichier CSV et qu'il n'existe qu'une seule URL par article. Si aucune valeur n'est définie pour sourceRepositoryUrl.field, la valeur de sourceRepositoryUrl.defaultValue est utilisée.
Nom du conteneur itemMetadata.containerName.field=containerName
itemMetadata.containerName.defaultValue=myDefaultContainerName
Nom du conteneur de l'élément, tel que le nom d'un répertoire ou d'un dossier de système de fichiers. Si aucune valeur n'est définie pour containerName.field, la valeur de containerName.defaultValue est utilisée.
Type d'objet itemMetadata.objectType.field=type
itemMetadata.objectType.defaultValue=movie
Type d'objet utilisé par le connecteur, tel que défini dans le schéma. Si cette propriété n'est pas spécifiée, le connecteur n'indexe aucune donnée structurée.
Si aucune valeur n'est définie pour objectType.field, la valeur de objectType.defaultValue est utilisée.
Date et heure de création itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
Code temporel de création du document. Si aucune valeur n'est définie pour createTime.field, la valeur de createTime.defaultValue est utilisée.
Date et heure de mise à jour itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
Horodatage de la dernière modification de l'élément. Si aucune valeur n'est définie pour updateTime.field, la valeur de updateTime.defaultValue est utilisée.
Langue du contenu itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=en-US
Langue du contenu des documents indexés. Si aucune valeur n'est définie pour contentLanguage.field, la valeur de contentLanguage.defaultValue est utilisée.
Type MIME itemMetadata.mimeType.field=mimeType
itemMetadata.mimeType.defaultValue=image/bmp
Type MIME d'origine de ItemContent.content dans le dépôt source. La longueur maximale est de 256 caractères. Si aucune valeur n'est définie pour mimeType.field, la valeur de mimeType.defaultValue est utilisée.
Métadonnées sur la qualité de la recherche itemMetadata.searchQualityMetadata.quality.field=quality
itemMetadata.searchQualityMetadata.quality.defaultValue=1
Indication de la qualité de l'article, utilisée pour influencer la qualité de la recherche. La valeur doit être comprise entre 0 (qualité la plus faible) et 1 (qualité la plus élevée). La valeur par défaut est 0.0. Si aucune valeur n'est définie pour quality.field, la valeur de quality.defaultValue est utilisée.
Hachage itemMetadata.hash.field=hash
itemMetadata.hash.defaultValue=f0fda58630310a6dd91a7d8f0a4ceda2
Valeur de hachage fournie par l'appelant de l'API. Vous pouvez l'utiliser avec la méthode items.push pour calculer l'état modifié. La longueur maximale est de 2 048 caractères. Si aucune valeur n'est définie pour hash.field, la valeur de hash.defaultValue est utilisée.

Formats Date/Heure

Les formats de date et d'heure spécifient les formats attendus dans les attributs de métadonnées. Si le fichier de configuration ne contient pas ce paramètre, les valeurs par défaut sont utilisées. Le tableau suivant présente ce paramètre.

Paramètre Paramètre
Autres formats de date et d'heure structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX
Liste de modèles java.time.format.DateTimeFormatter supplémentaires séparés par un point-virgule. Ces formats sont utilisés lors de l'analyse des valeurs de chaîne de tous les champs de date ou de date/heure dans les métadonnées ou le schéma. La valeur par défaut est une liste vide, mais les formats RFC 3339 et RFC 1123 sont toujours acceptés.

Données structurées

L'API Cloud Search Indexing fournit un service de schéma qui vous permet de personnaliser la façon dont Cloud Search indexe et diffuse vos données. Si vous utilisez un schéma de dépôt local, vous devez spécifier le nom du schéma local des données structurées.

Paramètre Paramètres
Nom du schéma local structuredData.localSchema=mySchemaName

Le nom du schéma est lu à partir de la source de données et utilisé pour les données structurées du dépôt.

La valeur par défaut est une chaîne vide.

Qualité du contenu et de la recherche

Pour les dépôts qui contiennent du contenu basé sur des enregistrements ou des champs (par exemple, CRM, CVS ou base de données), le SDK autorise le formatage HTML automatique pour les champs de données. Votre connecteur définit les champs de données au début de son exécution, puis met en forme chaque enregistrement de données à l'aide d'un modèle de contenu avant de l'importer dans Cloud Search.

Le modèle de contenu définit l'importance de chaque valeur de champ pour la recherche. Le champ HTML <title> est obligatoire et défini avec la priorité la plus élevée. Vous pouvez définir des niveaux d'importance de la qualité de la recherche pour tous les autres champs de contenu : élevé, moyen ou faible. Par défaut, tout champ de contenu non défini dans une catégorie spécifique a une priorité faible.

Paramètre Paramètres
Titre HTML du contenu contentTemplate.templateName.title=myTitleField

Titre HTML du contenu et champ de recherche associé à la qualité la plus élevée. Ce paramètre n'est obligatoire que si vous utilisez un modèle de contenu HTML. La valeur par défaut est une chaîne vide.

Qualité de recherche élevée pour les champs de contenu contentTemplate.templateName.quality.high=hField1,hField2

Champs de contenu associés à une priorité de recherche élevée. La valeur par défaut est une chaîne vide.

Qualité de recherche moyenne pour les champs de contenu contentTemplate.templateName.quality.medium=mField1,mField2

Champs de contenu avec une priorité de recherche moyenne. La valeur par défaut est une chaîne vide.

Faible qualité de recherche dans les champs de contenu contentTemplate.templateName.quality.low=lField1,lField2

Champs de contenu associés à une priorité de recherche faible. La valeur par défaut est une chaîne vide.

Champs de contenu non spécifiés contentTemplate.templateName.unmappedColumnsMode=value

Façon dont le connecteur traite les champs de contenu non spécifiés Les valeurs possibles sont les suivantes :

  • APPEND : ajoute les champs de contenu non spécifiés au modèle
  • IGNORE : ignore les champs de contenu non spécifiés

    La valeur par défaut est APPEND.

Inclure les noms des champs dans le modèle HTML contentTemplate.templateName.includeFieldName=true|false

Indique si les noms des champs avec les données de champs doivent être inclus dans le modèle HTML. La valeur par défaut est true. La recherche des noms de champs dans les données de contenu est possible.

Paramètres rarement définis

Vous avez rarement besoin de définir les paramètres répertoriés dans cette section. Les valeurs par défaut des paramètres sont définies pour des performances optimales. Google ne vous recommande pas de définir ces paramètres sur des valeurs différentes de leurs valeurs par défaut, sans exigences spécifiques dans votre dépôt.

Configuration du proxy

Ce SDK vous permet de configurer votre connecteur afin qu'il utilise un proxy pour les connexions sortantes.

Les paramètres transport.proxy.hostname et transport.proxy.port sont requis pour activer le transport via un proxy. Les autres paramètres peuvent être requis si votre proxy nécessite une authentification ou fonctionne sur le protocole SOCKS au lieu de HTTP. Si transport.proxy.hostname n'est pas défini, le SDK n'utilise pas de proxy.

Paramètre Paramètres
Nom d'hôte transport.proxy.hostname=hostname

Nom d'hôte du serveur proxy. Ce paramètre est obligatoire lorsque vous utilisez un proxy.

Port transport.proxy.port=port

Numéro de port du serveur proxy. Ce paramètre est obligatoire lorsque vous utilisez un proxy.

Type de proxy transport.proxy.type=type

Type de proxy. Les valeurs possibles sont les suivantes :

  • HTTP : le proxy accepte et transfère les requêtes via HTTP.
  • SOCKS : le proxy accepte et transfère les paquets via le protocole SOCKS.

La valeur par défaut est HTTP.

Nom d'utilisateur transport.proxy.username=username

Nom d'utilisateur à utiliser lors de la construction d'un jeton d'autorisation proxy. Ce paramètre est facultatif et ne doit être défini que si votre proxy requiert une authentification.

Mot de passe transport.proxy.password=password

Mot de passe à utiliser lors de la construction d'un jeton d'autorisation proxy. Ce paramètre est facultatif et ne doit être défini que si votre proxy requiert une authentification.

Balançoires

Le SDK vous permet de spécifier plusieurs traverseurs individuels pour permettre les balayages parallèles d'un dépôt de données. Les connecteurs de modèle de SDK utilisent cette fonctionnalité.

Paramètre Paramètres
Taille du pool de threads traverse.threadPoolSize=size

Nombre de threads créés par le connecteur pour permettre un traitement en parallèle. Un seul itérateur récupère les opérations en série (généralement des objets RepositoryDoc), mais l'API appelle des processus en parallèle à l'aide de ce nombre de threads.

La valeur par défaut est 5.

Taille de la partition traverse.partitionSize=batchSize

Nombre de ApiOperation() à traiter par lots avant de récupérer d'autres APIOperation.

La valeur par défaut est 50.

Demandes d'interrogation par balayage

Le cœur de la file d'attente d'indexation Cloud Search est une file d'attente de priorités contenant une entrée pour chaque élément connu. Un connecteur de fiche peut demander à interroger des éléments à partir de l'API d'indexation. Une requête d'interrogation obtient les entrées ayant la priorité la plus élevée de la file d'attente d'indexation.

Les paramètres suivants sont utilisés par le modèle de connecteur de fiche SDK pour définir les paramètres d'interrogation.

Paramètre Paramètres
Traverseur de dépôts repository.traversers=t1, t2, t3, ...

Crée un ou plusieurs balayages individuels où t1, t2, t3, ... est le nom unique de chacun. Chaque traverseur nommé possède son propre ensemble de paramètres, qui sont identifiés à l'aide du nom unique du balayage, tel que traversers.t1.hostload et traversers.t2.hostload.

File d'attente à interroger traverser.pollRequest.queue=mySpecialQueue

Noms des files d'attente que ce balayage interroge. La valeur par défaut est une chaîne vide (implique "default").

traverser.t1.pollRequest.queue=mySpecialQueue

Lorsque vous utilisez plusieurs traverseurs, définissez l'état des éléments pour chacun d'eux (où t1 représente un balayage spécifique).

Comportement de l'interrogation traverser.pollRequest.limit=maxItems

Nombre maximal d'éléments à renvoyer par une demande d'interrogation. La valeur par défaut est 0 (implique le maximum de l'API).

traverser.t1.pollRequest.limit=limit

Lorsque vous utilisez plusieurs traverseurs, définissez l'état des éléments pour chacun d'eux (où t1 représente un balayage spécifique).

État de l'élément traverser.pollRequest.statuses=statuses

États de l'élément spécifique que ce balayage interroge, où statuses peut être n'importe quelle combinaison de MODIFIED, NEW_ITEM (séparés par une virgule). La valeur par défaut est une chaîne vide (implique toutes les valeurs d'état).

traverser.t1.pollRequest.statuses=statusesForThisTraverser

Lorsque vous utilisez plusieurs traverseurs, définissez l'état des éléments pour chacun d'eux (où t1 représente un balayage spécifique).

Charge de l'hôte traverser.hostload=threads

Nombre maximal de threads parallèles actifs disponibles pour l'interrogation. La valeur par défaut est 5.

traverser.t1.hostload=threadsForThisTraverser

Lorsque vous utilisez plusieurs traverseurs, définissez l'état des éléments pour chacun d'eux (où t1 représente un balayage spécifique).

Délai avant expiration traverser.timeout=timeout

Valeur du délai avant expiration pour l'interruption de cette tentative d'interrogation du balayage.

La valeur par défaut est 60.

traverser.t1.timeout=timeoutForThisTraverser

Lorsque vous utilisez plusieurs traverseurs, définissez l'état des éléments pour chacun d'eux (où t1 représente un balayage spécifique).

traverser.timeunit=timeoutUunit

Unités du délai avant expiration. Les valeurs valides sont SECONDS, MINUTES,

traverser.t1.timeunit=timeoutUnit

Lorsque vous utilisez plusieurs traverseurs, définissez l'état des éléments pour chacun d'eux (où t1 représente un balayage spécifique).

Dans la plupart des cas, un connecteur utilisant le modèle de connecteur de fiche du SDK ne nécessite qu'un seul ensemble de paramètres pour l'interrogation. Dans certains cas, vous devrez peut-être définir plusieurs critères d'interrogation si votre algorithme de balayage nécessite, par exemple, de séparer le traitement des éléments à l'aide de différentes files d'attente.

Dans ce cas, vous avez la possibilité de définir plusieurs ensembles de paramètres d'interrogation. Commencez par spécifier les noms des ensembles de paramètres à l'aide de repository.traversers. Pour chaque nom de balayage défini, fournissez le fichier de configuration avec les paramètres indiqués dans le tableau ci-dessus en remplaçant t1 par le nom du balayage. Un ensemble de paramètres d'interrogation est alors créé pour chaque balayage défini.

Points de contrôle

Un point de contrôle permet de suivre l'état d'un balayage incrémentiel.

Paramètre Paramètres
Répertoire de point de contrôle connector.checkpointDirectory=/path/to/checkpoint

Indique le chemin d'accès au répertoire local à utiliser pour les points de contrôle de balayage incrémentiel et complet.

Importations de contenus

Le contenu de l'élément est importé dans Cloud Search avec l'élément lorsque sa taille ne dépasse pas le seuil spécifié. Si la taille du contenu dépasse le seuil, le contenu est importé séparément des métadonnées et des données structurées de l'élément.

Paramètre Paramètres
Seuil de contenu api.contentUploadThresholdBytes=bytes

Seuil applicable au contenu qui détermine s'il est importé "en accord avec l'élément" ou s'il est importé séparément.

La valeur par défaut est 100000 (~100 Ko).

Conteneurs

Le modèle de connecteur complet utilise un algorithme impliquant un bouton d'activation/de désactivation de la file d'attente de la source de données temporaire pour détecter les enregistrements supprimés dans la base de données. Cela signifie qu'à chaque balayage complet, les enregistrements récupérés, qui se trouvent dans une nouvelle file d'attente, remplacent tous les enregistrements Cloud Search existants indexés lors du balayage précédent, qui se trouvent dans une ancienne file d'attente.

Paramètre Paramètres
Tag de nom du conteneur traverse.queueTag=instance

Pour exécuter plusieurs instances du connecteur en parallèle afin d'indexer un dépôt de données commun (que ce soit sur des dépôts de données différents ou sur des parties distinctes d'un dépôt de données commun) sans interférer les unes avec les autres, attribuez un tag de nom de conteneur unique à chaque exécution du connecteur. Un tag de nom unique empêche une instance de connecteur de supprimer les enregistrements d'une autre instance.

Le tag de nom est ajouté à l'ID de la file d'attente d'activation/de désactivation du connecteur de balayage complet.

Désactiver la détection de suppression traverse.useQueues=true|false

Indique si le connecteur utilise la logique d'activation/de désactivation de la file d'attente pour détecter les suppressions.

La valeur par défaut est true, qui spécifie que les files d'attente doivent être utilisées.

Remarque: Ce paramètre de configuration ne s'applique qu'aux connecteurs mettant en œuvre le modèle FullTraversalConnector.

Règle de traitement par lot

Le SDK accepte une stratégie de traitement par lot qui vous permet d'effectuer les actions suivantes:

  • Requêtes par lot
  • Spécifiez le nombre de requêtes dans une file d'attente par lot
  • Gérer des lots à exécution simultanée
  • Vider les requêtes par lot

Le SDK regroupe les requêtes du connecteur pour accélérer le débit lors des importations. Le déclencheur du SDK pour importer un lot de requêtes repose soit sur le nombre de requêtes, soit sur le délai avant expiration, selon la première échéance atteinte. Par exemple, si le délai de traitement par lot a expiré sans que la taille de lot soit atteinte, ou si le nombre d'éléments de taille de lot est atteint avant l'expiration du délai, l'importation groupée est déclenchée.

Paramètre Paramètres
Requêtes par lot batch.batchSize=batchSize

Regroupez les requêtes par lot. La valeur par défaut est 10.

Nombre de requêtes dans une file d'attente par lot batch.maxQueueLength=maxQueueLength

Nombre maximal de requêtes dans une file d'attente par lot pour exécution. La valeur par défaut est 1000..

Exécution simultanée de lots batch.maxActiveBatches=maxActiveBatches

Nombre de lots autorisés à exécuter simultanément. La valeur par défaut est 20.

Vider automatiquement les requêtes par lot batch.maxBatchDelaySeconds=maxBatchDelay

Nombre de secondes d'attente avant que les requêtes par lot soient supprimées automatiquement. La valeur par défaut est 5.

Vider les requêtes par lot à l'arrêt batch.flushOnShutdown=true|false

Vide les requêtes par lot lors de l'arrêt du service. La valeur par défaut est true.

Gestionnaires d'exceptions

Les paramètres des gestionnaires d'exceptions déterminent la façon dont le balayage se comporte lorsqu'il rencontre une exception.

Paramètre Paramètres
Instruction de balayage en cas d'erreur traverse.exceptionHandler=exceptions

Comment le balayage doit-il fonctionner après qu'une exception est générée ? Les valeurs possibles sont les suivantes:

  • 0 : annule toujours le balayage après avoir rencontré une exception.
  • num_exceptions (par exemple, 10) : annule une fois que le balayage a rencontré la valeur num_exceptions spécifiée.

    La valeur par défaut est 0 (toujours annulé en cas d'erreur).

  • ignore : ignorez l'erreur.
Temps d'attente entre les exceptions abortExceptionHander.backoffMilliSeconds=backoff

Délai d'attente en millisecondes entre les exceptions de gestionnaire détectées (généralement utilisé lors du balayage d'un dépôt). La valeur par défaut est 10.