Difference between revisions of "VT2020-AppachePinot-Fiche"

From air
Jump to navigation Jump to search
Line 42: Line 42:
   
 
<br clear=all>
 
<br clear=all>
 
= Limites =
 
   
 
= Exemples d'utilisation =
 
= Exemples d'utilisation =

Revision as of 15:53, 5 December 2020

Abstract

Logo de Appache Pinot


«Pinot is a real-time distributed OLAP datastore, built to deliver scalable real-time analytics with low latency. It can ingest from batch data sources as well as stream data sources (such as Apache Kafka).

Pinot was built by engineers at LinkedIn and is designed to scale up and out with no upper bound. Performance always remains constant based on the size of your cluster and an expected query per second (QPS) threshold.» - Documentation officielle de Appache Pinot


Appache Pinot

Présentation

Pinot est conçu pour exécuter des requêtes OLAP en temps réel avec une latence faible sur des quantités massives de données et d’événements. En plus de l’ingestion en temps réel, Pinot prend également en charge les cas d’utilisation par lots avec les mêmes garanties de faible latence. Il est utilisé lorsque des analyses rapides sont nécessaires sur des données immuables, éventuellement, avec l’ingestion de données en temps réel. Pinot fonctionne très bien pour interroger les données de séries chronologiques avec beaucoup de dimensions et de métriques.

Il faut aussi noter que Pinot ne remplace pas une base de données, c’est-à-dire qu’il ne peut pas être utilisée comme source de stockage ni modifier les données. Bien que Pinot supporte la recherche de texte, ce n’est pas un remplacement pour un moteur de recherche.

Pour qui Pinot à été conçu ?

De plus Pour certains type de business la relation données/temps est très importantes. En effet récupérer des analyses concernant des données qui ont été collectées il y a plusieurs heures/jours est parfois beaucoup trop long. Dans certains cas comme dans la restauration par exemple il faut récupérer et analyser les données en temps réel pour pouvoir répondre à certains besoins/pouvoir régler certains problèmes. Appache Pinot va aussi permettre non seulement au gérant de la plateforme de profiter du traitement/analyse des données en temps réel mais aussi à tout les utilisateurs. On peut donc dire que cette technologie a été pensée pour gérer en temps réel une très grande quantité de donnée avec de nombreuses dimensions et métriques pour un grand nombres d’utilisateur.

Fonctionement

Moèle de stockage

Storage

Tout comme les bases de données traditionnelles Pinot utilise le concept de tabe.Une table est une construction qui se compose de colonnes et de lignes qui sont interrogées en utilisant SQL. Une table est associée à un schéma qui définit les colonnes de la table ainsi que leurs types de données.

Pinot a une architecture de systèmes distribués qui s’étend horizontalement et la taille des tables doit pouvoir augmenter à l'infini. Pour parvenir, toutes les données doivent être réparties sur plusieurs nœuds. Pinot y parvient en découpant les données en segments plus petits.Les segments sont en fait de petits morceux de tables.

Une table est associée à un tenant. Cela permet à toutes les tables appartenant à un espace de noms logique particulier d’être regroupées sous un seul nom de tenant et être isolées des autres tenant. Cette isolation entre les locataires fournit différents espaces de noms pour les applications et les équipes pour empêcher le partage de tables ou de schémas. On peut exploiter un seul cluster et l’étendre au fur et à mesure que de nouveaux tenant augmentent le volume global de requêtes. Les développeurs peuvent gérer leurs propres schémas et tableaux sans être impactés par un autre tenant sur le cluster.


Composents

Compo Pinot


Exemples d'utilisation

Uber eats

Logo UberEats

«Uber eats à créé UberEats Rstaurent Manager qui est un dashboard d'analyse de données très complet qui permet au propriétaire d'un établissement de restauration de connaître toutes les données relatives aux commandes liées à UberEats. Celà permet par exemple de récupérer des données concernant des informations relatives à la satisfaction client, aux menus les plus populaires, aux ventes ou à la qualité du service. Grâce à la technologie Appache Pinot il est donc possible à tout moment de savoir pour le gérant le niveau de traffic relatif à UberEats pour son restaurent. En effet il a instantanement' accès à des données qui lui permette de mieux prévoir et gérer des évènements comme une brusque augmentation de commande par exemple.'»


LikedIn

C’est LinkedIn qui a développé Appache Pinot en 2014 et c’est maintenant le système par défaut pour toutes les analyses de données dont le réseau social à besoin. Si vous avez déjà utilisé LinkedIn vous avez forcément déjà interagie avec Appache Pinot. C’est ce dernier qui gère le système de « Qui a vu mon profile », système qui permet de savoir qui a visionner votre profile dernièrement ( même dans les dernières seconde ). Beaucoup d’autres fonctionnalités de LinkedIn sont gérées grâce à Pinot comme le système d’analyse des posts ou encore celui de « Talent Insght ».

Linkedin.png


Sources

  1. https://docs.pinot.apache.org/
  2. https://www.youtube.com/watch?v=cNnwMF0pOJ8]
  3. https://www.youtube.com/watch?v=mRkWT_EU99M
  4. https://medium.com/@gowthamy/big-data-battle-batch-processing-vs-stream-processing-5d94600d8103
  5. https://github.com/zzhang5/zooinspector
  6. https://github.com/npawar/pinot-tutorial
  7. https://github.com/apache/incubator-pinot
  8. https://pinot.apache.org/
  9. https://docs.pinot.apache.org/basics/getting-started

Veille Technologique 2020

  • Année : VT2020
  • Sujet : Appache Pinot
  • Slides : Slides
  • Auteur : RUZAFA Rémy