2017-06-16 4 views
0

Peut-on avoir plusieurs destinations à partir de Kinesis Firehose? J'ai vu cette image enter image description herePlusieurs destinations pour Kinesis

À partir de là, il semble qu'il soit possible d'ajouter s3, redshift et recherche élastique à partir d'un seul feu. Je veux exactement faire ça.

Mais quand je le fais à partir de la console aws, alors il ne demande qu'une seule destination. Pour la recherche élastique, elle demande également S3. Donc, je suis capable d'ajouter une recherche élastique et s3 mais toujours redhift est à gauche. Je ne suis pas sûr de savoir comment le faire à partir du même kinésis. S'il vous plaît aider.

Répondre

1

Comme vous l'avez dit, il n'est pas disponible maintenant mais, en utilisant une fonctionnalité récemment ajoutée de firehose, vous pouvez écrire sur 3 d'entre eux en utilisant un firehose.

Mais je ne suis pas sûr que ce soit la façon optimale de le faire, vous devez comparer les coûts aws et le développement puis décider.

Si vous voulez essayer voici comment vous pouvez le faire. Configurez firehose pour écrire dans redshift, les fichiers intermédiaires seront sur s3, (éventuellement les fichiers intermédiaires sont supprimés) afin que vous puissiez les stocker dans un autre compartiment avec réplication de seau ou déclencher une nouvelle notification de fichier et le déplacer vers un autre seau en utilisant un lambda fonction. Dans le même temps pour écrire chaque enregistrement à Elasticsearch, vous utiliserez la connexion firehose lambda, il est dans la console firehose, appelée, transformation de données. (lien ci-dessous) Écrivez une demande simple de post-écriture d'elasticsearch http pour chaque enregistrement que firehose a eu, ainsi vous aurez des données sur la destination 3.

https://aws.amazon.com/blogs/compute/amazon-kinesis-firehose-data-transformation-with-aws-lambda/

Comme je l'ai dit avant que cela puisse coûter plus cher, et ayant 2 redshift écriture faisant lances et ES + S3 écriture est plus facile.