En utilisant AWS re:Post, vous acceptez les AWS re:Post Conditions d’utilisation

Comment puis-je utiliser la bibliothèque KPL pour placer des enregistrements de données dans un flux de données Kinesis ?

Lecture de 3 minute(s)
0

Je souhaite utiliser la bibliothèque Amazon Kinesis Producer (KPL) pour écrire et placer des enregistrements de données dans un flux de données Amazon Kinesis.

Résolution

Prérequis :

  • Une instance Linux Amazon Elastic Compute Cloud (Amazon EC2) en cours d’exécution
  • Un rôle AWS Identity and Access Management (IAM) est associé à votre instance
  • La stratégie KinesisFullAccess est associée au rôle IAM de l’instance

Pour utiliser la bibliothèque KPL afin de placer des enregistrements dans un flux de données Kinesis, procédez comme suit :

  1. Connexion à votre instance Linux.

  2. Installez la dernière version du package de développement OpenJDK 8 :

    sudo yum install java-1.8.0-openjdk-devel
  3. Vérifiez que Java est installé :

    java -version

    Vous obtiendrez une sortie de ce type :

    java version "1.7.0_181"OpenJDK Runtime Environment (amzn-2.6.14.8.80.amzn1-x86_64 u181-b00)
    OpenJDK 64-Bit Server VM (build 24.181-b00, mixed mode)
  4. Exécutez les commandes suivantes pour définir Java 1.8 comme fournisseur par défaut java et javac :

    sudo /usr/sbin/alternatives --config java sudo /usr/sbin/alternatives --config javac
  5. Ajoutez un référentiel contenant un package Apache Maven :

    sudo wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
  6. Définissez le numéro de version des packages Maven :

    sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo
  7. Utilisez yum pour installer Maven :

    sudo yum install -y apache-maven

    Pour vérifier que Maven est bien installé, exécutez la commande suivante :

    mvn -version

    Vous obtiendrez une sortie de ce type :

    Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T07:58:13Z)Maven home: /usr/share/apache-maven
    Java version: 1.7.0_181, vendor: Oracle Corporation
    Java home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.181.x86_64/jre
    Default locale: en_US, platform encoding: UTF-8
    OS name: "linux", version: "4.14.33-51.37.amzn1.x86_64", arch: "amd64", family: "unix"
  8. Installez git, puis téléchargez la bibliothèque KPL depuis le site Web de GitHub :

    sudo yum install gitgit clone https://github.com/awslabs/amazon-kinesis-producer
  9. Ouvrez le répertoire amazon-kinesis-producer/java/amazon-kinesis-producer-sample/, puis dressez la liste des fichiers :

    `cd amazon-kinesis-producer/java/amazon-kinesis-producer-sample/ls`
    `default_config.properties  pom.xml  README.md  src  target`
  10. Exécutez une commande similaire à la suivante pour créer un flux de données Kinesis :

aws kinesis create-stream --stream-name kinesis-kpl-demo --shard-count 2
  1. Exécutez list-streams pour confirmer la création du flux :
aws kinesis list-streams
  1. Ouvrez le fichier SampleProducer.java dans le référentiel GitHub, puis modifiez les champs suivants :
    Pour la chaîne finale statique publique STREAM_NAME_DEFAULT, saisissez le nom du flux de données Kinesis que vous avez créé précédemment.
    Pour la chaîne finale statique publique REGION_DEFAULT, saisissez la région AWS que vous utilisez.
    Exemple :
cd src/com/amazonaws/services/kinesis/producer/samplevi SampleProducerConfig.java
public static final String STREAM_NAME_DEFAULT = "kinesis-kpl-demo";
public static final String REGION_DEFAULT = "us-east-1";
  1. Pour permettre à Maven de télécharger toutes les dépendances du répertoire, exécutez la commande suivante dans le répertoire amazon-kinesis-producer-sample :
mvn clean package
  1. Pour exécuter le producteur et envoyer des données dans le flux de données Kinesis, exécutez la commande suivante dans le répertoire amazon-kinesis-producer-sample :
mvn exec:java -Dexec.mainClass="com.amazonaws.services.kinesis.producer.sample.SampleProducer"
  1. Pour vérifier le nombre d’enregistrements envoyés au flux, consultez le graphique Données entrantes (nombre) dans l’onglet Surveillance de la console Kinesis.

Remarque : le nombre d’enregistrements peut être inférieur à ceux envoyés au flux de données. Ce nombre d’enregistrements inférieur peut être dû au fait que la bibliothèque KPL utilise l’agrégation.

Informations connexes

Écrire dans votre flux de données Kinesis à l’aide de la bibliothèque KPL

Repartage, mise à l’échelle et traitement parallèle

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 8 mois