6.5 C
New York

Premiers pas avec Apache Spark, S3 et Rockset


Apache Spark est un projet open supply qui a été lancé à l’UC Berkeley AMPLab. Il dispose d’un cadre informatique en mémoire qui lui permet de traiter les expenses de travail de données par heaps et en temps réel. Même si Spark est écrit en Scala, vous pouvez interagir avec Spark avec plusieurs langages comme Spark, Python et Java.

Voici quelques exemples de ce que vous pouvez faire dans vos purposes avec Apache Spark :

  • Construire des pipelines ETL continus pour le traitement des flux
  • BI et analytique SQL
  • Faites du machine studying, et bien plus encore !

Étant donné que Spark prend en cost les requêtes SQL qui peuvent aider à l’analyse des données, vous vous demandez probablement pourquoi utiliser Rockset 🤔🤔 ?

Rockset complète en fait Apache Spark pour analyse en temps réel. Si vous avez besoin d’analyses en temps réel pour les purposes destinées aux purchasers, votre purposes de données besoin d’une latence de requête d’une milliseconde et d’une prise en cost d’une simultanéité élevée. Une fois que vous avez transformé les données dans Apache Spark et les avez envoyées à S3, Rockset extrait les données de S3 et les indexe automatiquement by way of le Index convergé. Vous serez en mesure de rechercher, d’agréger et de rejoindre des collections sans effort, et de mettre à l’échelle vos purposes sans gérer de serveurs ou de clusters.

commencer-avec-apache-spark-s3-rockset-pour-l-analyse-en-temps-reel - figure1.jpg

Commençons avec Apache Spark et Rockset 👀 !

Premiers pas avec Apache Spark

Vous devrez vous assurer que Apache Spark, Scala et la dernière model de Java sont installés. Si vous êtes sur un Mac, vous pourrez l’installer, sinon, vous pouvez télécharger la dernière model ici. Assurez-vous que votre profil est défini sur les chemins corrects pour Java, Spark, and so forth.

Nous devrons également prendre en cost l’intégration avec AWS. Vous pouvez utiliser ceci lien pour trouver le bon aws-java-sdk-bundle pour la model d’Apache Spark que votre software utilise. Dans mon cas, j’avais besoin de aws-java-sdk-bundle 1.11.375 pour Apache Spark 3.2.0.

Une fois que vous avez tout téléchargé et configuré, vous pouvez exécuter Spark sur votre shell :

$ spark-shell —packages com.amazonaws:aws-java-sdk:1.11.375,org.apache.hadoop:hadoop-aws:3.2.0

Assurez-vous de définir vos valeurs de configuration Hadoop à partir de Scala :

sc.hadoopConfiguration.set("fs.s3a.entry.key","your aws entry key")
sc.hadoopConfiguration.set("fs.s3a.secret.key","your aws secret key")
val rdd1 = sc.textFile("s3a://yourPath/sampleTextFile.txt")
rdd1.rely

Vous devriez voir un numéro apparaître sur le terminal.

Tout cela est génial et dandy pour montrer rapidement que tout fonctionne et que vous avez correctement configuré Spark. Remark créer une software de données avec Apache Spark et Rockset ?

Créer une session Spark

Tout d’abord, vous devrez créer une SparkSession qui vous donnera un accès immédiat au SparkContext :

Contenu intégré : https://gist.github.com/nfarah86/1aa679c02b74267a4821b145c2bed195

Lire les données S3

Après avoir créé la SparkSession, vous pouvez lire les données de S3 et transformer les données. J’ai fait quelque selected de tremendous easy, mais ça vous donne une idée de ce que vous pouvez faire :

Contenu intégré : https://gist.github.com/nfarah86/047922fcbec1fce41b476dc7f66d89cc

Écrire des données sur S3

Après avoir transformé les données, vous pouvez réécrire dans S3 :

Contenu intégré : https://gist.github.com/nfarah86/b6c54c00eaece0804212a2b5896981cd

Connexion de Rockset à Spark et S3

Maintenant que nous avons transformé les données dans Spark, nous pouvons accéder à la partie Rockset, où nous allons intégrer S3. Après cela, nous pouvons créer une assortment Rockset où elle ingérera et indexera automatiquement les données de S3. de Rockset Index convergé vous permet d’écrire des requêtes analytiques qui joignent, agrègent et recherchent avec une latence de requête d’une milliseconde.

Créer une intégration et une assortment Rockset

Sur la console Rockset, vous souhaiterez créer une intégration à S3. La vidéo explique remark procéder à l’intégration. Sinon, vous pouvez facilement consulter ces paperwork à mettre en place aussi ! Après avoir créé l’intégration, vous pouvez créer par programme une assortment Rockset. Dans l’exemple de code ci-dessous, je n’interroge pas la assortment tant que le statut n’est pas PRÊT. Dans un autre article de weblog, j’expliquerai remark interroger une assortment. Pour l’instantaneous, lorsque vous créez une assortment, assurez-vous sur la console Rockset que l’état de la assortment est Prêt avant d’écrire vos requêtes et de créer une requête Lambda.

Contenu intégré : https://gist.github.com/nfarah86/3106414ad13bd9c45d3245f27f51b19a

Écrire une requête et créer une requête Lambda

Une fois votre assortment prête, vous pouvez commencer à rédiger des requêtes et à créer un Requête Lambda. Vous pouvez considérer une requête Lambda comme une API pour vos requêtes SQL :

Contenu intégré : https://gist.github.com/nfarah86/f8fe11ddd6bda7ac1646efad405b0405

Cela résume à peu près tout! Découvrez notre GitHub de la communauté Rockset pour le code utilisé dans le flux Twitch.

Vous pouvez écouter le flux vidéo complet. Le flux Twitch explique remark créer un Bonjour le monde avec Apache Spark <=> S3 <=> Rockset.

Vous avez des questions sur cet article de weblog ou sur Apache Spark + S3 + Rockset ? Vous pouvez toujours contacter notre web page communautaire.

Contenu intégré : https://youtu.be/rgm7CsIfPvQ



Related Articles

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici

Latest Articles