Big Data In AWS - Solution intelligente pour le Big Data

Cet article vous aide à comprendre comment AWS gère intelligemment le Big Data. Il montre également comment AWS peut résoudre facilement les défis du Big Data.

L'idée du Big Data n'est tout simplement pas nouvelle, elle est partout. L'effet du Big Data est partout, des entreprises à la science, du gouvernement aux arts et ainsi de suite. Il n'y a pas de meilleur compagnon que pour traiter et analyser le Big Data. Dans cet article, je vais montrer comment AWS relève les défis du Big Data et les conseils que je vais aborder sont les suivants:



Qu'est-ce que le Big Data?

caractéristiques du big data



Vous pouvez considérer le Big Data comme des actifs d'information à volume élevé, à haute vitesse et / ou à grande variété qui nécessitent des formes de traitement de l'information rentables et innovantes qui permettent d'améliorer la compréhension, la prise de décision et l'automatisation des processus.

Le Big Data comprend 5 V importants qui définissent les caractéristiques du Big Data. Discutons-en avant de passer à AWS.



Qu'est-ce qu'AWS?

comprend de nombreux produits et services de cloud computing différents. La division Amazon très rentable fournit des serveurs, du stockage, du réseautage, de l'informatique à distance, du courrier électronique, du développement mobile ainsi que de la sécurité. En outre. AWS se compose de deux produits principaux: EC2, le service de machine virtuelle d'Amazon, et S3, un système de stockage d'Amazon. Il est si grand et présent dans le monde informatique qu'il est maintenant au moins 10 fois plus grand que son concurrent le plus proche et héberge des sites Web populaires comme Netflix et Instagram.

.

AWS est divisé en 12 régions mondiales dans le monde, chacune d'elles ayant plusieurs zones de disponibilité dans lesquelles ses serveurs sont situés. Ces régions desservies sont divisées afin de permettre aux utilisateurs de fixer des limites géographiques à leurs services, mais aussi d'assurer la sécurité en diversifiant les emplacements physiques dans lesquels les données sont conservées.



Pourquoi le Big Data dans AWS?

Les scientifiques, les développeurs et d'autres passionnés de technologie de nombreux domaines différents tirent parti d'AWS pour effectuer des analyses de Big Data et relever les défis critiques de l'augmentation des V de l'information numérique. AWS vous propose un portefeuille de services de cloud computing pour vous aider à gérer le Big Data en réduisant considérablement les coûts, en s'adaptant à la demande et en augmentant la vitesse de l'innovation.

Amazon Web Services fournit un portefeuille entièrement intégré des services de cloud computing. De plus, il vous aide à créer, sécuriser et déployer vos applications Big Data. De plus, avec AWS, vous n'avez pas besoin de matériel à acheter ni d'infrastructure à entretenir et à faire évoluer. Pour cette raison, vous pouvez concentrer vos ressources sur la découverte de nouvelles informations. Étant donné que de nouvelles fonctionnalités sont constamment ajoutées, vous serez toujours en mesure de tirer parti des dernières technologies sans avoir à prendre des engagements d'investissement à long terme.

java a une relation

Comment AWS peut résoudre les défis du Big Data?

Solutions AWS pour le Big Data

AWS propose de nombreuses solutions pour tous les besoins de développement et de déploiement. En outre, dans le domaine de la science des données et du Big Data, AWS a mis au point des développements récents dans différents aspects de la gestion du Big Data. Avant de passer aux outils, comprenons différents aspects du Big Data pour lesquels AWS peut fournir des solutions.

  1. Ingestion de données
    La collecte des données brutes - transactions, journaux, appareils mobiles, etc. - est le premier défi auquel de nombreuses entreprises sont confrontées lorsqu'elles traitent de Big Data. Une bonne plate-forme Big Data facilite cette étape, permettant aux développeurs d'ingérer une grande variété de données - de structurées à non structurées - à n'importe quelle vitesse - du temps réel au lot.

  2. Stockage des données
    Toute plateforme Big Data a besoin d'un référentiel sécurisé, évolutif et durable pour stocker les données avant ou même après le traitement des tâches. En fonction de vos besoins spécifiques, vous pouvez également avoir besoin de magasins temporaires pour les données en transit.

  3. Traitement de l'information
    C'est à cette étape que la transformation des données passe de son état brut à un format consommable - généralement au moyen de tri, agrégation, jonction et même exécution de fonctions et d'algorithmes plus avancés. Les ensembles de données résultants sont stockés pour un traitement ultérieur ou mis à disposition pour la consommation via des outils de veille économique et de visualisation de données.

  4. Visualisation

    Le Big Data consiste à obtenir des informations exploitables de grande valeur à partir de vos actifs de données. Dans l'idéal, les données sont disponibles pour les parties prenantes grâce à des outils de business intelligence en libre-service et de visualisation de données agiles qui permettent une exploration rapide et facile des ensembles de données.

Outils AWS pour le Big Data

Dans les sections précédentes, nous avons examiné les champs du Big Data dans lesquels AWS peut fournir des solutions. De plus, AWS dispose de plusieurs outils et services dans son arsenal pour permettre aux clients de bénéficier des capacités du Big Data.

Examinons les différentes solutions fournies par AWS pour gérer les différentes étapes impliquées dans la gestion du Big Data

Ingestion

  1. Kinesis

    Amazon Kinesis Firehose est un service entièrement géré permettant de fournir des données de streaming en temps réel directement sur Amazon S3. Kinesis Firehose s'adapte automatiquement au volume et au débit des données en streaming et ne nécessite aucune administration continue. Vous pouvez configurer Kinesis Firehose pour transformer les données de streaming avant de les stocker dans Amazon S3.

  2. Boule de neige
    Vous pouvez utiliser AWS Snowball pour migrer de manière sécurisée et efficace des données en masse depuis des plates-formes de stockage sur site et des clusters Hadoop vers des compartiments S3. Après avoir créé une tâche dans AWS Management Console, vous obtenez automatiquement une appliance Snowball. Après l'arrivée d'une Snowball, connectez-la à votre réseau local, installez le client Snowball sur votre source de données locale, puis utilisez le client Snowball pour sélectionner et transférer les répertoires de fichiers vers le périphérique Snowball.

Espace de rangement

  1. Amazon S3

Amazon S3 est un stockage d'objets sécurisé, hautement évolutif et durable avec une latence de la milliseconde pour l'accès aux données. S3 peut stocker tout type de données de n'importe où - sites Web et applications mobiles, applications d'entreprise et données provenant de capteurs ou d'appareils IoT. Il peut également stocker et récupérer n'importe quelle quantité de données, avec une disponibilité inégalée, et construit à partir de zéro pour offrir 99,999999999% (11 neuf) de durabilité.

2. AWS Glue

Glue est un service entièrement géré qui fournit un catalogue de données pour rendre les données du lac de données détectables. De plus, il a la capacité d'extraire, de transformer et de charger (ETL) pour préparer les données pour l'analyse. En outre, le catalogue de données intégré est comme un magasin de métadonnées permanent pour tous les actifs de données, rendant toutes les données consultables et interrogeables dans une seule vue.

En traitement

  1. EMR
    Pour le traitement du Big Data à l'aide de Spark et Hadoop, Amazon EMR fournit un service géré qui permet de traiter facilement, rapidement et à moindre coût de grandes quantités de données. De plus, EMR prend en charge 19 projets open source différents, notamment Hadoop , Étincelle , et Il est également livré avec des ordinateurs portables EMR gérés pour l'ingénierie des données, le développement de la science des données et la collaboration.

  2. Redshift
    Pour l'entreposage de données, Amazone Redshift offre la possibilité d'exécuter des requêtes analytiques complexes sur des pétaoctets de données structurées. En outre, il comprend Spectre Redshift qui exécute des requêtes SQL directement sur des exaoctets de données structurées ou non structurées dans S3 sans nécessiter de déplacement de données inutile.

Visualisations

  1. Amazon QuickSight

    Pour les tableaux de bord et les visualisations, Amazon Quicksight vous fournit un service d'analyse d'entreprise rapide et basé sur le cloud. Cela facilite la création de superbes visualisations et de tableaux de bord riches. De plus, vous pouvez y accéder à partir de n'importe quel navigateur ou appareil mobile.

Démo - Analyse des données d'espèces végétales et animales menacées d'extinction en Australie.

Dans cette démonstration, nous utiliserons des échantillons de données d'espèces végétales et animales menacées d'extinction des États et territoires d'Australie. Ici, nous allons créer un cluster EMR et le configurer pour exécuter des tâches Apache Hive en plusieurs étapes. Apache Hive sera installé dans le cluster EMR. Ce cluster utilisera EMRFS comme système de fichiers, de sorte que ses emplacements d'entrée et de sortie de données soient mappés à un compartiment S3. Le cluster utilisera également le même compartiment S3 pour stocker les fichiers journaux.

Nous allons maintenant créer un certain nombre d'étapes EMR dans le cluster pour traiter un échantillon de données. Ici, chacune de ces étapes exécutera un script Hive et la sortie finale sera enregistrée dans le compartiment S3. Ces étapes généreront des journaux MapReduce et c'est parce que les commandes Hive sont traduites en tâches MapReduce au moment de l'exécution. Les fichiers journaux de chaque étape sont agrégés à partir des conteneurs générés.

Exemple de données

L'exemple d'ensemble de données pour ce cas d'utilisation est accessible au public à partir du Site Web des données ouvertes du gouvernement australien . Cet ensemble de données concerne les espèces animales et végétales menacées de différents États et territoires d'Australie. Une description des champs de cet ensemble de données et du fichier CSV peut être vue et téléchargée Ici .

Étapes de traitement

La première étape du travail EMR consiste à créer une table Hive en tant que schéma pour le fichier source sous-jacent dans S3. Dans la deuxième étape du travail, nous allons maintenant exécuter une requête réussie sur les données. De même, nous exécuterons ensuite une troisième et une quatrième requête.

Nous allons répéter ces quatre étapes plusieurs fois en une heure, en simulant des exécutions successives d'un travail par lots en plusieurs étapes. Cependant, dans un scénario réel, la différence de temps entre chaque exécution de lot pourrait normalement être beaucoup plus élevée. Le petit intervalle de temps entre les exécutions successives vise à accélérer nos tests.

Seau et dossiers S3

Avant de créer notre cluster EMR, nous devions ici créer un compartiment S3 pour héberger ses fichiers. Dans notre exemple, nous appelons ce compartiment «arvind1-bucket». Les dossiers sous ce compartiment sont affichés ci-dessous dans l'AWS Console pour S3:

comment créer une classe singleton en java

  • Le dossier d'entrée contient les exemples de données

  • Le dossier scripts contient les fichiers de script Hive pour les étapes de travail EMR

  • Le dossier de sortie contiendra évidemment la sortie du programme Hive

  • Le cluster EMR utilise le dossier logs pour enregistrer ses fichiers journaux.

Scripts Hive pour les étapes de travail EMR

1. Cette étape de travail exécute un script Hivepour créer une table Hive externe. Ce tableau décrit le schéma tabulaire du fichier de données CSV sous-jacent. Le script pour cela est le suivant:

CRÉER UN TABLEAU EXTERNE `Espèces_ Menacées` (chaîne` nom scientifique`, chaîne `nom commun`, chaîne` nom scientifique actuel`, chaîne `état menacé`, chaîne` act`, chaîne `nsw`, chaîne` nt`, `qld` chaîne, chaîne `sa`, chaîne` tas`, chaîne `vic`, chaîne` wa`, chaîne `aci`, chaîne` cki`, chaîne `ci`, chaîne` csi`, chaîne `jbt`,` nfi` chaîne, chaîne `hmi`, chaîne` aat`, chaîne `cma`,` bigint sprat taxonid`, bigint `taxonid sprat courant`, chaîne` royaume`, chaîne `class`, chaîne` profile`, `date extraite` chaîne, chaîne `nsl name`, chaîne` family`, chaîne `genus`, chaîne` species`, chaîne `infraspecific rank`, chaîne` infraspecies`, chaîne `species author`, chaîne` infraspecies author`) ROW FORMAT DELIMITED FIELDS TERMINÉ PAR ',' STOCKÉ COMME INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3: // arvind1-bucket / script /'

2. Cette étape du travail exécute une requête pour calculer les cinq principales espèces menacées dans l'état de New South Wales (NSW). Le nom du fichier de requête Hive est en voie de disparitionSpeciesNSW.q et il est montré ci-dessous:

SELECT species, COUNT (nsw) AS number_of_endangered_species FROM Menacé_species WHERE (nsw = 'Yes' OR nsw = 'Endangered') AND 'menacé status' = 'Endangered' GROUP BY species HAVING COUNT (nsw)> 1 ORDER BY number_of_endangered_species DESC LIMIT 5

3.Cette étape du travail exécute une requête pour calculer le nombre total d'espèces végétales menacées pour chaque famille de plantes en Australie. Le nom du fichier de requête Hive esten voie de disparitionPlantSpecies.qet est montré ci-dessous

SELECT family, COUNT (species) AS number_of_endangered_species FROM menace_species2 WHERE royaume = 'Plantae' AND '' statut menacé '' = 'En danger' GROUP BY famille

4. Cette étape répertorie les noms scientifiques des espèces animales éteintes dans l’État australien du Queensland. Le fichier de script est appelé éteintAnimalsQLD.q et est montré ci-dessous:

CHOISISSEZ 'nom commun', 'nom scientifique' FROM espèces_menacées WHERE royaume = 'Animalia' AND (qld = 'Oui' OU qld = 'éteint') ET 'état menacé' = 'éteint'

Agrégation de journaux

Ici, nous avons également téléchargé un fichier JSON appelé logAggregation.json dans le dossier scripts du compartiment S3. Nous utilisons ce fichier pour agréger les fichiers journaux YARN. L'agrégation des journaux est configurée dans le fichier de configuration yarn-site.xml au démarrage du cluster. Le contenu du fichier logAggregation.json est le suivant:

[{'Classification': 'yarn-site', 'Properties': {'yarn.log-aggregation-enable': 'true', 'yarn.log-aggregation.retain-seconds': '-1', 'yarn .nodemanager.remote-app-log-dir ':' s3: // arvind1-bucket / logs '}}]

Après avoir créé le compartiment S3 et copié les données et les fichiers de script dans leurs dossiers respectifs, il est maintenant temps de configurer un cluster EMR. Les instantanés suivants décrivent le processus lors de la création du cluster avec principalement des paramètres par défaut.

Configuration du cluster EMR

Dans la première image, pour configurer le cluster dans la console AWS, nous avons conservé toutes les applications recommandées par EMR, y compris Hive. Nous n'avons pas besoin d'utiliser AWS Glue pour stocker les métadonnées Hive, et nous n'ajoutons aucune étape de travail pour le moment. Cependant, nous devons ajouter un paramètre logiciel pour Hive. Ici, vous devez observer attentivement comment nous spécifions le chemin d'accès au fichier JSON d'agrégation de journaux dans ce champ.

Dans l'étape suivante, nous avons conservé tous les paramètres par défaut. Pour les besoins de notre test, le cluster aura un nœud maître et deux nœuds principaux. Chaque nœud ici est une instance m3.xlarge et possède un volume racine de 10 Go. Nous nommons le cluster arvind1-cluster à l'étape suivante et spécifions l'emplacement s3 personnalisé pour ses fichiers journaux.

Enfin, nous avons spécifié une paire de clés EC2 dans le but d'accéder au nœud maître du cluster. Il n'y a pas de changement dans les rôles IAM par défaut pour EMR, le profil d'instance EC2 et les options de mise à l'échelle automatique. En outre, les nœuds principaux et principaux utilisent par défaut les groupes de sécurité disponibles. Normalement, il s'agit d'une configuration par défaut pour un cluster EMR. Une fois que tout est prêt, le cluster est dans un état «d'attente» comme indiqué ci-dessous:

Soumettre les étapes de la tâche Hive

Après cela, nous devons autoriser l'accès SSH.

  1. Ouvrez la console Amazon EMR à l'adresse https://console.aws.amazon.com/elasticmapreduce/ .
  2. Choisir Clusters .
  3. Choisir la Nom du cluster.
  4. En dessous de Sécurité et accès choisir la Groupes de sécurité pour Master lien.
  5. Choisir ElasticMapReduce-master de la liste.
  6. Choisir Entrant , Éditer .
  7. Recherchez la règle avec les paramètres suivants et choisissez le X icône pour le supprimer:
    • Type SSH
    • Port 22
    • La source Personnalisé 0.0.0.0/0
  8. Faites défiler vers le bas de la liste des règles et choisissez Ajouter une règle .
  9. Pour Type , sélectionnez SSH .Cela entre automatiquement TCP pour Protocole et 22 pour Gamme de ports .
  10. Pour la source, sélectionnez Mon IP Cela ajoute automatiquement l'adresse IP de votre ordinateur client comme adresse source. Vous pouvez également ajouter une plage de Douane adresses IP des clients de confiance et choisissez de ajouter la règle pour créer des règles supplémentaires pour d'autres clients. Dans de nombreux environnements réseau, vous attribuez des adresses IP de manière dynamique, vous devrez donc peut-être modifier périodiquement les règles de groupe de sécurité pour mettre à jour l'adresse IP des clients approuvés.
  11. Choisir sauver .
  12. En option, choisissez ElasticMapReduce-esclave dans la liste et répétez les étapes ci-dessus pour permettre au client SSH d'accéder aux nœuds principaux et de tâches à partir de clients de confiance.

Puisque le cluster EMR est opérationnel, nous avons ajouté quatre étapes de travail. Voici les étapes qu'EMR exécuterait l'une après l'autre. L'image suivante montre les étapes de la console AWS EMR:

comment utiliser la classe de scanner

Une fois que nous avons ajouté les quatre étapes, nous pouvons vérifier l'état de ces étapes comme terminé. Même s'il y a un problème avec l'exécution de ces étapes, dans de tels cas, il peut être résolu à l'aide des fichiers journaux de ces étapes.

C'est donc tout de mon côté dans cet article sur le Big Data dans AWS. J'espère que vous avez compris tout ce que j'ai expliqué ici.

Si vous avez trouvé ce Big Data dans AWS pertinent, vous pouvez consulter le cours en direct et animé par un instructeur d'Edureka sur , co-créé par des praticiens de l'industrie.

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de cette procédure de déploiement d'une application Web Java dans AWS et nous vous répondrons.