Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Choisissez le bon mode de diffusion
Les rubriques suivantes expliquent comment choisir le mode le mieux adapté à votre application et comment passer d'un mode à l'autre, si nécessaire.
Rubriques
Quels sont les différents modes de Kinesis Data Streams ?
Un mode détermine la manière dont la capacité d'un flux de données est gérée et la manière dont l'utilisation de votre flux de données vous est facturée. Dans Amazon Kinesis Data Streams, vous pouvez choisir On-demand Standard , On-demand Advantage et Provisioned comme mode pour vos flux de données.
-
On-demand Standard : les flux de données en mode à la demande ne nécessitent aucune planification de capacité et s'adaptent automatiquement pour gérer des gigaoctets de débit d'écriture et de lecture par minute. En mode à la demande, Kinesis Data Streams gère automatiquement les partitions afin de fournir le débit nécessaire.
-
On-demand Avantage : un mode au niveau du compte qui vous offre davantage de fonctionnalités et fournit une structure tarifaire plus simple pour les diffusions à la demande. Dans ce mode, vous pouvez augmenter de manière proactive la capacité de débit d'écriture d'un flux à tout moment. Vous pouvez également déclencher une réduction d'échelle si une rafale de données transitoire a entraîné une redimensionnement du flux bien au-delà de sa capacité de chauffage. Pour ce qui est de la tarification, il n'y a plus de frais fixes pour chaque diffusion. L'ingestion de données, la récupération de données et l'utilisation de la rétention étendue pour tous les flux à la demande sont inférieures d'au moins 60 % à On-demand celles de la version Standard.
-
Provisionné : pour les flux de données dotés d'un mode provisionné, vous devez spécifier le nombre de partitions pour le flux de données. La capacité totale d'un flux de données est la somme des capacités de ses partitions. Vous pouvez augmenter ou diminuer le nombre de partitions dans un flux de données, selon vos besoins.
Vous pouvez utiliser Kinesis Data Streams PutRecord et les PutRecords API pour écrire des données dans vos flux de données, quel que soit le mode. Pour récupérer des données, les trois modes prennent en charge les consommateurs par défaut qui utilisent l'GetRecordsAPI et les consommateurs améliorés Fan-Out (EFO) qui utilisent l'SubscribeToShardAPI.
Toutes les fonctionnalités de Kinesis Data Streams, y compris le mode de rétention, le chiffrement, les mesures de surveillance et autres, sont prises en charge à la fois pour le mode à la demande et le mode provisionné. Kinesis Data Streams garantit une durabilité et une disponibilité élevées à la fois en mode de capacité à la demande et en mode de capacité provisionnée.
On-demand Fonctionnalités et cas d'utilisation du mode standard
Les flux de données en mode à la demande ne nécessitent aucune planification de capacité et s'adaptent automatiquement pour gérer des gigaoctets de débit d'écriture et de lecture par minute. On-demand Le mode simplifie l'ingestion et le stockage de grands volumes de données avec une faible latence, car il élimine le provisionnement et la gestion des serveurs, du stockage ou du débit. Vous pouvez ingérer des milliards d'enregistrements par jour sans aucune surcharge opérationnelle.
On-demand Le mode est idéal pour répondre aux besoins d'un trafic applicatif très variable et imprévisible. Il n'est plus nécessaire de provisionner ces charges de travail pour les capacités de pointe, ce qui peut entraîner des coûts plus élevés en raison d'une faible utilisation. On-demand le mode convient aux charges de travail dont les modèles de trafic sont imprévisibles et très variables.
En mode de capacité à la demande, vous payez par gigaoctet de données écrites et lues à partir de vos flux de données. Il n'est pas nécessaire de spécifier le débit de lecture et d'écriture que vous attendez de votre application. Kinesis Data Streams s'adapte instantanément à vos charges de travail lorsqu'elles augmentent ou diminuent. Pour plus d’informations, consultez la Tarification d’Amazon Kinesis Data Streams
Un flux de données en mode à la demande peut atteindre le double du débit d'écriture maximal observé au cours des 30 jours précédents. Lorsque le débit d'écriture de votre flux de données atteint un nouveau maximum, Kinesis Data Streams adapte automatiquement la capacité du flux de données. Par exemple, si le débit d'écriture de votre flux de données varie entre 10 MB/s et 40 MB/s, Kinesis Data Streams garantit que vous pouvez facilement doubler votre débit de pointe précédent, soit 80 MB/s. Si le même flux de données atteint un nouveau débit de pointe de 50 MB/s, Kinesis Data Streams garantit que la capacité est suffisante pour ingérer 100 % MB/s du débit d'écriture. Toutefois, une limitation du nombre d'écritures peut se produire si votre trafic augmente jusqu'à plus du double du maximum précédent dans un délai de 15 minutes. Vous devez réessayer ces demandes limitées.
La capacité de lecture agrégée d'un flux de données en mode à la demande augmente proportionnellement au débit d'écriture. Cela permet de garantir que les applications consommateur disposent toujours d'un débit de lecture suffisant pour traiter les données entrantes en temps réel. Vous obtenez un débit d'écriture au moins deux fois supérieur à celui des données lues à l'aide de l'API GetRecords. Nous vous recommandons d'utiliser une seule application consommateur avec l'API GetRecord, afin qu'elle dispose d'assez de marge pour rattraper son retard en cas de nécessité de récupération après une interruption. Il est recommandé d'utiliser la Fan-Out fonctionnalité améliorée de Kinesis Data Streams pour les scénarios nécessitant l'ajout de plusieurs applications grand public. Enhanced Fan-Out prend en charge l'ajout de 20 applications grand public à un flux de données à l'aide de l'SubscribeToShardAPI, chaque application grand public disposant d'un débit dédié.
Gérer les exceptions de débit de lecture et d'écriture
En mode à la demande (identique au mode capacité provisionnée), vous devez spécifier une clé de partition pour chaque enregistrement afin d'écrire des données dans votre flux de données. Kinesis Data Streams utilise vos clés de partition pour répartir les données entre les partitions. Kinesis Data Streams surveille le trafic de chaque partition. Lorsque le trafic entrant dépasse 500 KB/s par partition, la partition est divisée en 15 minutes. Les valeurs de la clé de hachage de la partition parent sont redistribuées uniformément sur les partitions enfants.
Si votre trafic entrant dépasse le double du maximum précédent, vous pouvez rencontrer des exceptions de lecture ou d'écriture pendant environ 15 minutes, même si vos données sont réparties de manière uniforme sur l'ensemble des partitions. Nous vous recommandons de réessayer toutes ces demandes afin que tous les enregistrements soient correctement stockés dans Kinesis Data Streams.
Il est possible que vous rencontriez des exceptions de lecture et d'écriture si vous utilisez une clé de partition qui entraîne une distribution inégale des données et que les enregistrements attribués à une partition particulière dépassent les limites de cette dernière. En mode à la demande, le flux de données s'adapte automatiquement pour gérer des modèles de distribution de données inégaux, à moins qu'une seule clé de partition ne dépasse le MB/s débit d'une partition et les limites de 1 000 enregistrements par seconde.
En mode à la demande, Kinesis Data Streams fractionne les partitions de manière égale lorsqu'il détecte une augmentation du trafic. Toutefois, il ne détecte ni n'isole les clés de hachage qui acheminent une plus grande partie du trafic entrant vers une partition donnée. Si vous utilisez des clés de partition très inégales, il se peut que vous continuiez à recevoir des exceptions d'écriture. Pour de tels cas d'utilisation, nous vous recommandons d'utiliser le mode de capacité provisionnée qui prend en charge les fractionnements granulaires des partitions.
On-demand Fonctionnalités et cas d'utilisation du mode Advantage
On-demand Advantage est un paramètre au niveau du compte qui débloque davantage de fonctionnalités et fournit une structure tarifaire différente pour tous les flux à la demande de la région. Dans ce mode, les flux à la demande conservent leurs fonctionnalités et continuent d'adapter automatiquement la capacité en fonction de l'utilisation réelle des données. Si vous souhaitez augmenter de manière proactive la capacité de débit d'écriture d'un flux, vous pouvez configurer le débit chaud. Par exemple, si votre flux de données a un débit d'écriture compris entre 10 MB/s et 40 MB/s, vous pouvez vous attendre à ce qu'il puisse gérer 80MB/s des augmentations de débit instantanées sans limitation. Toutefois, si vous prévoyez qu'un événement à venir connaîtra un pic 200MB/s de trafic, vous pouvez configurer le flux avec un débit chaud de 200MB/s pour vous assurer que la capacité sera disponible lorsque le débit de données arrivera. L'utilisation du débit chaud n'entraîne aucun coût supplémentaire. Si une rafale de données transitoire a entraîné une redimensionnement du flux au-delà de sa capacité maximale, vous pouvez déclencher une réduction d'échelle. Pour ce faire, reconfigurez le débit chaud du flux à une valeur identique ou inférieure. La capacité du flux diminue jusqu'au nombre demandé ou à la quantité nécessaire pour faire face au pic d'utilisation de données ingéré au cours de la dernière heure, selon la valeur la plus élevée.
Un autre On-demand avantage du mode Advantage est que les flux à la demande passent à une structure tarifaire plus simple. Lorsque le mode est activé, vous ne voyez plus de frais fixes par flux et vous ne vous occupez que de l'ingestion de données, de la récupération de données et des frais de conservation étendus facultatifs. Chaque dimension tarifaire bénéficie également d'une réduction significative par rapport à la dimension correspondante dans On-demand Standard. Pour plus d’informations, consultez la Tarification d’Amazon Kinesis Data Streams
Les extractions de données améliorées par ventilateur n'ont pas non plus de prix par rapport aux extractions de données standard dans ce mode. De plus, avec le mode On-demand Advantage, vous pouvez enregistrer jusqu'à 50 consommateurs par stream pour bénéficier d'un fan-out amélioré. L'activation d' On-demand Advantage engage le compte à au moins 25MiB/s effectuer l'ingestion et la récupération 25MiB/s de données sur tous les flux à la demande. Pour les comptes qui répondent à l'exigence d'utilisation minimale, la console Kinesis Data Streams vérifie si les habitudes d'utilisation de votre compte sont adaptées à l'utilisation du mode On-demand Advantage.
Si la consommation de données de votre compte est inférieure aux exigences, la différence vous sera facturée en tant que déficit, mais le tarif réduit sera toujours le même. On-demand L'activation d'Advantage nécessite également une période minimale de 24 heures avant de pouvoir désactiver le mode. Dans l'ensemble, On-demand Advantage est le meilleur moyen de diffuser avec Kinesis Data Streams si vous utilisez un débit constant proche ou supérieur à l'engagement minimum, si vous avez besoin de nombreux utilisateurs de ventilateurs ou si vous utilisez des centaines de flux de données.
Fonctionnalités et cas d'utilisation du mode provisionné
En mode provisionné, après avoir créé le flux de données, vous pouvez augmenter ou diminuer de manière dynamique la capacité de votre partition à l'aide de l'API Console de gestion AWS ou de l'UpdateShardCountAPI. Vous pouvez effectuer des mises à jour pendant qu'une application producteur ou consommateur de Kinesis Data Streams écrit ou lit des données dans le flux.
Le mode provisionné est adapté à un trafic prévisible dont les besoins en capacité sont faciles à prévoir. Vous pouvez utiliser le mode provisionné si vous souhaitez un contrôle précis sur la manière dont les données sont distribuées à travers les partitions.
En mode provisionné, vous devez spécifier le nombre de partitions du flux de données. Pour déterminer la taille d'un flux de données en mode provisionné, vous avez besoin des valeurs d'entrée suivantes :
-
Taille moyenne des enregistrements de données écrits dans le flux en kilo-octets (Ko), arrondie au Ko le plus proche (
average_data_size_in_KB). -
Nombre d'enregistrements de données devant être ajoutés au flux et lus depuis celui-ci, par seconde (
records_per_second). -
Nombre de consommateurs, c'est-à-dire d'applications Kinesis Data Streams qui consomment des données simultanément et indépendamment du flux (
number_of_consumers). -
Bande passante d'écriture entrante en Ko (
incoming_write_bandwidth_in_KB), qui est égale à la tailleaverage_data_size_in_KBmultipliée par la valeur derecords_per_second. -
Bande passante de lecture sortante en Ko (
outgoing_read_bandwidth_in_KB), qui est égale à la tailleincoming_write_bandwidth_in_KBmultipliée par la valeur denumber_of_consumers.
Vous pouvez calculer le nombre initial de partitions (number_of_shards) dont votre flux a besoin en utilisant les valeurs d'entrée de la formule ci-dessous.
number_of_shards = ceiling(max(incoming_write_bandwidth_in_KiB/1024, outgoing_read_bandwidth_in_KiB/2048))
Vous pouvez toujours rencontrer des exceptions de débit de lecture et d'écriture en mode provisionné si vous ne configurez pas votre flux de données pour gérer votre débit maximal. Dans ce cas, vous devez mettre à l'échelle manuellement votre flux de données pour l'adapter à votre trafic de données.
Il est également possible que vous rencontriez des exceptions de lecture et d'écriture si vous utilisez une clé de partition qui entraîne une distribution inégale des données et que les enregistrements attribués à une partition dépassent les limites de cette dernière. Pour résoudre ce problème en mode provisionné, identifiez ces partitions et fractionnez-les manuellement afin de mieux s'adapter à votre trafic. PoPour plus d'informations, consultez la rubrique Repartitionnement d'un flux (français non garanti).
Basculer entre les modes
Pour chaque flux de données de votre Compte AWS, vous pouvez basculer entre le mode à la demande et le mode provisionné deux fois en 24 heures. Le passage d'un mode à l'autre n'entraîne aucune interruption de vos applications qui utilisent ce flux de données. Vous pouvez continuer à écrire et à lire dans ce flux de données. Lorsque vous passez d'un mode à l'autre, soit du mode à la demande au mode provisionné, soit du mode provisionné au mode à la demande, le statut du flux est défini sur Mise à jour. Vous devez attendre que l'état du flux de données passe à Actif afin de pouvoir modifier à nouveau ses propriétés.
Lorsque vous passez du mode capacité provisionnée au mode capacité à la demande, votre flux de données conserve initialement le nombre de partitions qu'il possédait avant la transition. À partir de ce moment, Kinesis Data Streams surveille votre trafic de données et adapte le nombre de partitions de ce flux de données à la demande en fonction de votre débit d'écriture. Lorsque vous passez du mode à la demande au mode provisionné, votre flux de données conserve également dans un premier temps le nombre de partitions qu'il possédait avant la transition, mais à partir de ce moment, vous êtes responsable de surveiller et d'ajuster le nombre de partitions de ce flux de données afin de s'adapter correctement à votre débit d'écriture.
Vous pouvez passer du mode On-demand Standard au mode On-demand Advantage en activant un paramètre au niveau du compte. Lorsqu'il est activé, le compte s'engage à au moins 25MiB/s l'ingestion de données et 25MiB/s l'utilisation de la récupération de données sur tous les flux à la demande de la Région. Après l'avoir activé, vous devez attendre au moins 24 heures avant de pouvoir désactiver On-demand Advantage, mais vous pouvez demander la modification à tout moment. Si vous souhaitez passer d' On-demand Advantage à On-demand Standard, vous devez d'abord supprimer tout débit chaud configuré sur les flux à la demande.