L'essentiel d'Apache Spark

Aborder les transformations simples

Testez gratuitement nos 1246 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Abordez les transformations simples, comme l'union, l'intersection et la différence. Grâce à elles, vous pourrez générer de nouveaux RDD.
02:46

Transcription

Qu'en est-il des transformations sur un RDD ? Il y en a plusieurs, évidement, mais elles ne sont pas toutes bonnes à prendre. Il faut se méfier des performances. Bien sûr, vous appliquez les transformations les unes après les autres, souvenez-vous, elles sont paresseuses, elles ne vont se déclencher en chaîne que lorsque vous allez appeler une action à la fin. Vérifiez quand même, par rapport à ce que vous faites, au niveau des performances, mais vous avez des transformations qui vont nécessiter de faire un shuffle ou plutôt de récupérer l'intégralité du RDD pour pouvoir le travailler, si vous faites un tri, par exemple. Il y a notamment des transformations de type GroupBy, qui génèrent des RDD regroupés qui sont particulièrement coûteuses. On va en général préférer faire un « map » et un « reduce », par exemple. On a donc des transformations de type opération relationnelle entre plusieurs RDD. Ici, j'ai mon TR et mon TR2 et je pourrais dire que j'aimerais l'union des deux. Donc, je ferais tr.union et je passe tr2 en paramètre. Je ne vais pas le mettre dans une nouvelle variable, je vais directement faire une action dessus. Vous voyez que cela traîne un peu, il y a du boulot. J'ai donc l'union des deux, tr plus tr2, ça fait 50.000 éléments dans mon RDD. L'union peut aussi s'écrire comme ceci, c'est assez sympa : un petit ++. On peut faire une intersection pour voir quels éléments sont aux deux endroits. On peut faire une exception qui s'appelle « substract ». Donc, cela veut dire trouver tous les éléments de tr qui n'ont pas de match identique dans tr2. S'il s'agit d'une chaîne de caractère, c'est facile à comparer. Si il s'agit de type plus complexe, il faut que les types soient compatibles et on va comparer les types avec une comparaison directe de chaque objet. On va avoir ici facilement 0, comme tr2 est une représentation distincte de tr, chaque élément de tr se trouve dans tr2, c'est donc assez logique. Voilà pour quelques transformations assez simples, finalement. Qui ne sont pas toujours les plus utilisées, parce qu'on va voir des transformations qui vont nous permettre d'appliquer des traitements plus personnalisés à notre RDD, sous forme de fonctions qu'on va envoyer en fonction anonyme en expression lambda par exemple, dans des transformations comme map ou une transformations de tri, où on va envoyer notre propre fonction de tri.

L'essentiel d'Apache Spark

Analysez des données volumineuses avec Apache Spark. Chargez vos données pour les analyser, profitez des opérations de transformation et des actions pour agréger vos données, etc.

3h11 (38 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :16 mars 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !