web-dev-qa-db-fra.com

TRIM_HORIZON vs DERNIÈRE

Je ne trouve pas dans la documentation formelle de AWS Kinesis aucune explicit référence entre TRIM_HORIZON et le point de contrôle, ni aucune référence entre LATEST et le point de contrôle.

Pouvez-vous confirmer ma théorie:

  • TRIM_HORIZON - Si le nom de l'application est nouveau, je lirai tous les enregistrements disponibles dans le flux. Sinon, nom-application a déjà été utilisé, puis je lirai dansmondernier point de contrôle.

  • LATEST - Si le nom de l'application est nouveau, je lirai tous les enregistrements du flux ayant ajoutéaprèsj'ai souscrit au flux. Sinon, le nom de l'application a déjà été utilisé, je vais lire les messages demylast checkpoint. 

  • La différence entre TRIM_HORIZON et LATEST n'existe que dans le cas où le nom de l'application est nouveau.

5
Ida Amit

De Documentation GetShardIterator (qui correspond à mon expérience avec Kinesis):

Dans la demande, vous pouvez spécifier le type AT_TIMESTAMP de fragment de fragment pour lire les enregistrements d'un instant donné, TRIM_HORIZON pour que ShardIterator pointe le dernier enregistrement non tronqué du fragment dans le système (le plus ancien enregistrement de données du fragment) LATEST afin que vous lisiez toujours les données les plus récentes de la partition. 

Fondamentalement, la différence est de savoir si vous souhaitez commencer par le plus ancien enregistrement non traité (TRIM_HORIZON) ou par "maintenant" (LATEST - saut des données entre le dernier point de contrôle et maintenant). 

1
Krease