Apprentissage automatique en temps réel dans Azure
Dans la guerre du cloud computing, AWS est le leader incontesté, mais Microsoft Azure semble réduire le pourcentage de plomb chaque trimestre. Google Cloud propose également quelques outils impressionnants, mais ne parvient pas à rattraper Azure. Cela pourrait être dû au fait que Microsoft existe depuis plus longtemps que Amazon et Google sur le marché des entreprises, Azure est préféré à AWS et GCP par de nombreuses entreprises. Gardant cela à l’esprit, j’ai décidé d’approfondir nos recherches sur les différentes technologies disponibles dans Azure.
Il ressort clairement de la fusion de Cloudera & HortonWorks que de l’ère Hadoop et de ses technologies associées, telles que MapReduce, Ruche etc. sont numérotés. L'ingestion d'énormes quantités de données sur le Cloud peut être accomplie sans écrire beaucoup de code en utilisant Azure Data Factory version 2 . Stocker d'énormes quantités de données pouvant être interrogées à l'aide de SQL en quelques secondes seulement ne nécessite plus de configurer un cluster de machines exécutant Cassandra, HBase ou un outil similaire. Azure SQL Data Warehouse facilite la tâche. (Bien que je dois dire que la vitesse d’ASDW est très faible par rapport à BigQuery de Google, mais je garderai ce sujet pour un autre jour!). Il semble que ces deux outils Azure permettront aux entreprises de transférer la plupart de leurs cas d'utilisation ETL sur Azure.
Mon objectif principal était toutefois d'exécuter des algorithmes d'apprentissage automatique disponibles dans Microsoft Azure Machine Learning Studio . en temps réel. Pour mon expérience, j’ai décidé de lancer « Analyse sentimentale sur le flux Twitter ». Je dois dire que j'ai été impressionné par la rapidité avec laquelle j'ai pu configurer cela sur Azure. Il me restait très peu de codage à faire car l’API ‘Sentimental Analysis’ était déjà disponible dans Studio. J'ai pu effectuer la majeure partie de la configuration à l'aide de l'interface graphique.
Si vous souhaitez exécuter cette expérience par vous-même, vous pouvez suivre les étapes décrites dans ce README.md: https://github.com/ ajaychitre / azure-tools / blob / master / README.md
Le code source est disponible sur GitHub à l'adresse: https://github.com/ajaychitre/azure-tools
Voici un récapitulatif des étapes:
- Créez un hub d'événements et envoyez-lui des tweets
- Créez un service Web. Le Studio ML rend cela facile. Bien entendu, si vous souhaitez écrire votre propre algorithme, vous devez lui allouer un temps supplémentaire.
- Créez un travail d'analyse de flux. Vous pouvez écrire la sortie dans de nombreux magasins différents. J'ai choisi ‘Azure Cosmos DB’. (Étonnamment, vous ne pouvez pas écrire à ASDW pour le moment!). La requête "Entrée" de ce travail d'analyse de flux ressemble à ceci:
Remarque: sentiment (texte) appelle le service Web. Cela pourrait potentiellement devenir un goulot d'étranglement si les données entrantes arrivent à une vitesse très élevée.
- Une fois que le travail d'analyse de flux est démarré, vous pouvez commencer à interroger la base de données Cosmos en utilisant des requêtes telles que:
Nous vivons dans le monde de de l'informatique sans serveur ! Dans cette expérience, je n'ai jamais eu à configurer de grappe élastique ou non élastique. Tout ce dont j'avais besoin, j'ai pu demander via une interface graphique et j'ai pu acquérir en quelques minutes. Il n'était pas nécessaire de configurer un cluster de courtiers Kafka, car Azure Event Hub répondait à ce besoin. Du côté de la réception, je n’ai pas eu besoin de configurer un cluster Spark ni d’écrire un travail Spark Streaming. Le travail Azure Streaming Analytics traitait la plupart des subtilités liées à cela. La nature sans serveur de l’informatique permet aux ingénieurs de données de consacrer plus de temps à la résolution des problèmes critiques et aux problèmes liés à l’environnement!
Globalement, je suis assez impressionné par les outils disponibles dans Azure. Bien sûr, il y a beaucoup plus à faire. Vous pouvez envoyer la sortie du travail en streaming à Power BI directement ou indirectement pour créer des graphiques sympas en temps réel. Les possibilités sont infinies!
Source link