Jetez quelque chose dans Kinesis avec python et assurez-vous qu'il est dans

Choses à faire

  1. Lancez "hogehoge" à Kinesis
  2. Vérifiez si "hogehoge" est inclus

Junbi

  1. Rendre Python disponible
  2. Installez boto
  3. Créez un compte pour jouer avec Kinesis avec IAM
  4. Créez un flux et un fragment pour recevoir des données dans Kinesis

Au fait, cette fois, le nom du fragment est "test" et le nombre est un.

Écraser

Main.py


#-*- coding: utf-8 -*-

from boto import kinesis

auth = {"aws_access_key_id":"Veuillez saisir la CLÉ D'ACCÈS IAM", "aws_secret_access_key":"Veuillez saisir la CLÉ D'ACCÈS SECRET d'IAM"}

if __name__ == '__main__':
    #            kinesis.connect_to_region('Région',Informations d'identification IAM)
    Connection = kinesis.connect_to_region('us-east-1',**auth)
    while true:
        #Écrire
        #             Connection.put_record(Nom du flux,Données à écrire, PartitionKey)
        put_response = Connection.put_record('test'    , "hogehoge"  , 'one')
        sleep(10)

seulement ça.

Vue

Un worker est attaché à chaque fragment afin qu'il puisse être traité même si le nombre de fragments augmente.

show.py


# -*- coding: utf-8 -*-
 
import time
import base64
import multiprocessing
from boto import kinesis
import threading

auth = {"aws_access_key_id":"Veuillez saisir la CLÉ D'ACCÈS IAM", "aws_secret_access_key":"Veuillez saisir la CLÉ D'ACCÈS SECRET d'IAM"}

#Le nom du flux
STREAM_NAME='test'
 
def worker(connect, kinesis_iterator):
    next_iterator = kinesis_iterator['ShardIterator']
    while True:
        response = connect.get_records(next_iterator)
        next_iterator = response['NextShardIterator']
        time.sleep(1)
        
        #Afficher le contenu écrit dans la partition
        for data in response['Records']:
            print(data)
 
 
def get_record():
    connect = kinesis.connect_to_region('us-east-1',**auth)
    stream = connect.describe_stream(STREAM_NAME)
    #Obtenez une liste de fragments
    shards = stream['StreamDescription']['Shards']

    #Installez un worker pour chaque partition et obtenez des données
    for shard in shards:
        kinesis_iterator = connect.get_shard_iterator(STREAM_NAME, shard['ShardId'], shard_iterator_type='TRIM_HORIZON')
        job = threading.Thread(target=worker, args=(connect, kinesis_iterator))
        job.start()
 
if __name__ == '__main__':
    get_record()

J'ai pu aller comme ça.

Recommended Posts

Jetez quelque chose dans Kinesis avec python et assurez-vous qu'il est dans
Fractal pour faire et jouer avec Python
Expliquez en détail comment créer un son avec python
Essayez de le faire avec GUI, PyQt en Python
J'ai essayé de créer une interface graphique à trois yeux côte à côte avec Python et Tkinter
Comment se connecter à AtCoder avec Python et soumettre automatiquement
C'est un problème d'écrire "coding: utf-8" en Python, donc je vais faire quelque chose avec Shellscript
Je veux résoudre APG4b avec Python (seulement 4.01 et 4.04 au chapitre 4)
Comment créer une caméra de surveillance (caméra de sécurité) avec Opencv et Python
J'ai essayé de faire un processus d'exécution périodique avec Selenium et Python
Essayez de vous connecter à qiita avec Python
Comment utiliser BigQuery en Python
Gérer les "années et mois" en Python
Lancer le Webhook entrant vers Mattermost en Python
Pour faire fonctionner la station d'horodatage en Python
Comment utiliser is et == en Python
Comment obtenir la différence de date et d'heure en secondes avec Python
Essayez de créer foldl et foldr avec Python: lambda. Aussi mesure du temps
Grattage de la nourriture avec python et sortie en CSV
MessagePack-Try pour lier Java et Python avec RPC
[REAPER] Comment jouer à Reascript avec Python
Comment générer une séquence en Python et C ++
Convertissez des PDF en images en masse avec Python
Je veux faire un jeu avec Python
Essayez de créer un code de "décryptage" en Python
Envoyer un message à Skype et Chatwork en Python
Connectez-vous à Yahoo Business avec Selenium Python
Comment utiliser tkinter avec python dans pyenv
Essayez de créer un groupe de dièdre avec Python
Comment apporter des modifications à l'interpréteur Python dans Pycharm
Pour représenter la date, l'heure, l'heure et les secondes en Python
Comment tracer l'autocorrélation et l'autocorrélation partielle avec Python
[# 1] Créez Minecraft avec Python. ~ Recherche préliminaire et conception ~
J'ai essayé de faire un processus périodique avec CentOS7, Selenium, Python et Chrome
WEB grattage avec python et essayez de créer un nuage de mots à partir des critiques
Convertir la date et l'heure zonées en temps Unixtime dans Python2.7
Un outil pour créer des images de masque pour ETC en Python
Comment convertir / restaurer une chaîne avec [] en python
Procédure pour charger MNIST avec python et sortie en png
Essayez de créer un module Python en langage C
Faisons un outil de veille de commande avec python
Comment faire un calcul de hachage avec Salt en Python
Je veux gérer l'optimisation avec python et cplex
Créez un Slackbot simple avec un bouton interactif en python
Comment exécuter des tests avec Python unittest
Essayez le fonctionnement de la base de données avec Python et visualisez avec d3
[# 2] Créez Minecraft avec Python. ~ Dessin du modèle et implémentation du lecteur ~
Utiliser Kinesis avec Python
Convertissez l'image au format .zip en PDF avec Python
Super Primer to python - Premiers pas avec python3.5 en 3 minutes
Il est trop difficile d'afficher le japonais avec le python3 de Vim.
J'étais accro au grattage avec Selenium (+ Python) en 2020
Je veux travailler avec un robot en python.
Ce n'est pas facile d'écrire Python, c'est facile d'écrire numpy et scipy
Trouvez la matrice Hermite et ses valeurs uniques en Python
Écrire des tests en Python pour profiler et vérifier la couverture
[Python] Comment trier un dict dans une liste et une instance dans une liste