Translate

mardi 20 mai 2014

Book review : Talend for Big Data by Bahaaldine Azarmi

Bahaaldine Azarmi is a former Oracle and Talend employee. He is now specialized in real-time architecture. In this book " Talend for Big Talend " he assumes that you are already familiar with talend for data integration, so he focused only on big data components. He used a cloudera virtual box as a standbox for a quick start. In the book the author took  twitter sentiment analysis example to explain  Hive, Pig, Sqoop ( Hadoop landscape). The book is organized as follow : 
Chapter 1 : Getting Started with Talend Big Data 
Chapter 2 : Building Our first Big Data Job 
Chapter 3 : Formatting Data 
Chapter 4 : Processing Tweets with Apache Hive 
Chapter 5 : Aggregate Data with Apache Pig 
Chapter 6 : Back to the SQL Database 
Chapter 7 : Big Data Architecture and Integration Patterns
Appendix : Installing Your Hadoop Cluster with Cloudera VM
My concern is that he didn't  go in detail explaining when you should consider using hadoop and big data in your integration process. For somebody with no hadoop and big data knowledge this is a must have chapter to introduce correctly the topics. Also there is a lack of some useful cases where you can see the performance in using Big Data architecture integration  compare to a normal integration process. But if you are already using Talend for Data Integration and want to take a journey on the Big Data world this book can be a good start.
You can purchase a copy here

mardi 6 mai 2014

Retour de Devoxx France et Mix-it 2014

Je passe beaucoup de temps à regarder les conférences en ligne. C'est cool mais on n'a pas la même ambiance que ceux de l'intérieur et j'ai toujours voulu participer à une grande conférence juste pour le fun :). Quand Agnès Crépet m'a proposé de faire une keynote à Mix-IT sur les communautés et le monde du IT en Afrique j'étais super super content. Non seulement j'aurai la chance de suivre d'autres conférences mais aussi je suis invité ( Ca ferait moins mal à ma poche). Uniquement cette première proposition était déjà très grande pour moi mais elle revient quelques jours plus tard  pour me dire qu'elle a aussi négocié une place sponsor avec Google pour moi pour que je puisse participer aussi Devoxx France. Je ne sais pas comment elle arrive à être active dans autant de communauté mais elle y arrive. Je suis pas le seul à me poser cette question donc tout va bien chez moi je me pose les bonnes questions. Si comme moi vous pensez qu'on doit étendre les contrôles anti-dopages à d'autres disciplines suivez mon regard vous êtes le bienvenu.
Donc pour Devoxx j'ai eu mon badge Google et  aussi Google a payé mon hôtel sur Paris et les tickets de train Paris-Lyon.

Un très grand merci à eux
Devoxx c'est une grande conférence 1400 participants, 200 speakers...Ton badge te permet de voter par contact NFC :)

Je vais donner mon retour sur les sessions techniques dans d'autres billets au fait :)

Pour Mix-it je devais faire une keynote sur les communautés techniques en Afrique. J'avais jamais fait une keynote par le passé. L'équipe de Mix-it m'a beaucoup sur presque tous les plans ( à rendre les slides meilleurs, les premiers cobayes sur lesquels je teste mon talk). Ils étaient  sont tous super sympathiques. J'étais stressé durant toute la conférence parce qu'étant l'avant dernier speaker. C'est jamais une bonne position de passer tard :). On est super impatient et on stresse à mort. Surtout quand tu vas voir certains speakers qui débitent 100 mots par secondes et circulent sur tout le podium de droite à gauche comme s'ils étaient à la maison :). Tu sors ravi du talk mais tu te poses la question de savoir si tu pourras faire aussi bien ( euh  je veux dire le dixième aussi bien).
Finalement arrive mon tour, tout se passe bien du moins c'est ce que j'ai ressenti.


Les slides


Pour conclure,  le plus qu'on tire à faire une conférence en vrai c'est la chance d'interagir avec d'autres participants sur  plusieurs aspects (comme la nourriture :), projets, avis sur les conférences etc...), ça donne un côté un peu plus vivant et aussi j'ai vraiment pas eu l'impression de refaire les mêmes talks d'une conférence à l'autre les sujets couvraient un spectre assez large.
Oui, il est temps d'aller bosser maintenant va falloir faire un retour sur tous ces talks :)  

lundi 20 janvier 2014

Book review : Talend Open Studio Cookbook by Rick Barton

Rick barton is a freelance consultant in data integration and ETL for the last 13 years. This book is a recipe of the lessons learned from his past project using Talend Open Studio and Talend Integration Suite. This book is for intermediate and advanced Talend users. He hasn't  started by showing  Open Studio  basics stuff but he went straight by showing tips and tricks to master Talend. He hasn't  included any quick start guide to Talend Open Studio
The book is organized as follow :
Chapter 1 : Introduction and General Principles
Chapter 2 : Metadata and Schemas 
Chapter 3 : Validating Data 
Chapter 4 : Mapping Data 
Chapter 5 : Using Java in Talend
Chapter 6 : Managing Context Variables
Chapter 7 : Working with Databases
Chapter 8 : Managing Files
Chapter 9 : Working with XML, Queues and Web Services
Chapter 10 : Debugging, Logging, and Testing
Chapter 11 : Deployment and Scheduling
Chapter 12 : Common Mistake and Other Useful Hints and Tips
Every  chapter has a sample code that shows how it works. A section called «  Getting ready » shows all the prerequisites to start to job. A section called " how to do it "   shows how to reproduce the job. The missing chapter in the book according to me is "Component creation" which should demonstrate step by step how to add or create a new component in Talend.
If you are already ok with talend basics principles and looking for a way to hone your skills in data integration using Talend tools it’s definitely a book you should go for. You can purchase a copy here http://www.packtpub.com/talend-open-studio-cookbook/book 

mardi 7 janvier 2014

Certification Talend

J’ai passé ma certification Talend pour l'intégration de données  il y’a de cela quelques jours. L’objet de ce billet est de faire un retour d’expérience sur la certification Talend et aussi de parler de mon approche des certifications en général ( Le pourquoi je passe des certifications)

Inscription 
L’achat de la certification se fait directement en ligne à l’aide d’une carte bancaire. Le coût de la certification est de 100$. Après l’achat de la certification en ligne un commercial de Talend vous envoie dans les jours qui suivent les détails de la connexion à la plateforme de test.

Durée et format de l’examen
Le test en ligne n’est pas limité dans le temps du moins vous n'aurez aucun indicateur de temps tout au long du test. Réservez au moins une heure à consacrer à l’examen. Les questions lors de l’examen sont du type QCM (Question à Choix Multiples). Pour réussir à l’examen il faut avoir un score de 80%. L’examen se passe sur une plateforme de test en ligne donc vous pouvez le passer à l’importe quel moment. J'ai choisi de passer ma certification en anglais bien qu'étant francophone parce que l'essentiel des ressources disponibles sont en anglais et des fois la traduction des termes prêtent à confusion.

Ressources et liens utiles pour se préparer
Pour préparer ma certification j'ai lu quelques blogs et livres qui m'ont beaucoup aidé :


Talend offre aussi des formations payantes qui vous préparent aussi à la certification  http://www.talend.com/services/purchase-training-products

Astuces et difficultés
En passant l'examen j'ai gardé mon Talend open studio ouvert et je vérifiais  mes quelques doutes. L'examen de façon général est accessible, si vous êtes habitués à Talend vous n' aurez aucun souci à valider cette certification. Si vous passez la certification en Afrique il faut faire attention à votre connexion internet et s'assurer d'avoir et un bon débit tout au long de l'examen. 


Le pourquoi de la certification talend et des certifications en général  

Je suis tombé sur les outils ETL par un heureux hasard et depuis j'en suis amoureux :). Aussi j'ai vu comment les projets de migrations sont bâclés en Afrique. Pour donner un exemple simple j'ai un compte dans une banque en Afrique ( une grande multi-nationale ). J'ai ouvert mon compte en 2005 et quand je consulte mon historique sur leur site web j'ai juste les données de Novembre 2012. Entretemps il y'a un changement de logiciel et pour minimiser les difficultés de migrations on décide de ne basculer que le solde à l'instant T et pas les transactions. Ce n'est pas génial comme idée, vous perdez une bonne partie de votre historique juste parce que vous changez de logiciel. Vous allez changer de logiciel chaque 5 à 10 ans :). On ne doit pas se permettre  de telle fantaisie avec les données qui constituent la mémoire de l'entreprise. Pour clore ma petite histoire une certification est une façon de montrer qu'on remplit les standards internationaux dans le domaine en question. Elle montre que vous avez passé assez de temps sur le sujet.  Il faut quand même se rendre à l'evidence que le fait de réussir une certification ne fait pas de vous un expert. Réussir à des QCM sur un sujet comme l'intégration de données est juste une validation en supposant que vous ayez fait beaucoup de pratique par le passé. Donc oui pour une certification mais il faut toujours valider ses certifications sur des projets concrets

Enfin le "happy end"

Juste pour vous dire que je suis certifié Talend pour l'intégration de données et si vous avez du boulot pour moi je suis preneur :)








mercredi 13 novembre 2013

amazon s3 avec talend

Ces derniers mois je suis aussi tombé dans la mode du "Cloud Computing". J'ai eu à essayer les services d'Amazon et de Google. En discutant avec +Mawusee Komla Foli-Awli nous sommes promis de faire quelques exemples concrets qui sont parlants pour le contexte africain et même de faire un livre blanc :). La route est encore longue je l'avoue. Mais voici  mon premier billet qui va parler d'un exemple d'utilisation du "cloud". Pour ceux qui sont familiers à ce blog, ils se sont déjà rendu compte que j'adore Talend ( mes amis disent que je pourrai utiliser Talend pour faire mon CV tellement je l'utilise pour tout ). Au delà de mon ressentiment  personnel pour Talend, il s'apprête parfaitement à notre cas d'étude. En gros je vous explique de quoi il s'agit. Dans la plupart des DSI en Afrique pour répondre à la norme d'avoir des sauvegardes en dehors de leurs locaux et ainsi assurer une continuité de service en cas de sinistre, font des sauvegardes de leurs données qui vont déposer dans des coffres forts d'une banque de la place. Ce sont souvent des sauvegardes sur des cartouches qu'une personne va déposer physiquement à la banque. Comme on peut s'en rendre compte le processus n'est pas automatique et soumis au bon vouloir des acteurs.
Dans les lignes qui suivent nous allons faire une démo simple d'une utilisation des storages de la partie IAAS ( Infrastructure As A Service) du cloud d'amazon pour faire une sauvegarde d'une base de données Mysql locale. En gros Amazon offre des disques durs en ligne qui vous permettent si vous souscrivez à leur offre de stocker vos données. Le service s'appelle Amazon S3 ( Simple Storage Service)
Pour les besoins de la démo il nous faut obtenir une clé d'authentification qui va nous permettre d'accéder à notre compte Amazon en programmation. Aller dans Security Credentials puis générez une nouvelle clé.
 Dans Talend nous allons faire une job qui fait un dump d'une base mysql puis à la fin du dump envoie une copie de la sauvegarde sur Amazon S3


On voit un composant tssh qui se connecte par ssh pour faire un dump de la base de données avec la requête mysqldump


Ensuite le composant tS3Put va prendre le fichier dumpé et ira le déposer sur S3.
Vous devriez remplir les champs Access Key et Secret Key avec les clés que vous avez préalablement générer dans la console d'administration d'Amazon AWS.
A la fin de ce job votre dump va dans le data center d'amazon. L'api initial fourni par Amazon permet des reprises de transfert après erreur et est assez robuste et répond bien à notre problématique qui est me mettre notre sauvegarde dans un endroit autre que notre data center local.
On pourra ensuite automatiser notre job Talend pour faire les sauvegardes automatiquement chaque jour et ainsi avoir une copie de nos données hors de nos locaux. 
On peut reproduire le même exemple avec d'autres fournisseurs de cloud comme Google ou bien Microsoft.
A très bientôt pour le livre blanc :).



jeudi 3 octobre 2013

Managing Startups by Tom Eisenmann, O'Reilly

The author Tom Eisenmann is an Harvard Business School professor who studies entrepreneurship. His book is a collection of best blog posts on entrepreneurship as the title mentioned. As writer Tom organized those blogs by topic. The topics covered by this book are wide ranging from how to make a prototype to recruitment techniques and finally get funded by a angel investor or a venture capitalist. All the book is not written in an unique style because it's a collection of personal thoughts and experiences from various founders. Some of the advices in the book are lessons learned the hard way and share so that you can take care of it during your startup endeavour. If you are entrepreneur at heart go through this book it should give you a good insight of difficulty we should encounter when trying to create a startup. You can go directly to a topic you are interested in or read all the book. Below are the topics covered :

  • Lean Startup
  • Business Models
  • Customer Discovery and Validation
  • Marketing: Demand Generation and Optimization
  • Sales, Marketing, and PR Management
  • Product Management/Product Design
  • Business Development and Scaling
  • Funding Strategy
  • Company Culture, Organizational Structure, Recruiting, and Other HR Issue
  • Startup Failure
  • Exiting by Selling Your Company
  • The Startup Mindset and Coping with Startup Pressure
  • Management and Career Advice

vendredi 2 août 2013

Créer une routine Talend

Talend vient par défaut avec l'essentiel des composants et des routines dont vous auriez besoin dans vos tâches d'intégration de données. Mais dans certains cas il arrive qu'il faut réfléchir "out of the box" comme le disent les Anglais pour ajouter du code personnalisé. Pour cela  il faut :

  • Créer une routine
  • Créer un composant
Dans la suite de ce billet nous allons montrer comment on peut créer une routine avec une librairie java. Pour créer une routine il faut aller dans code  puis routines et dans le menu contextuel choisir créer une routine



Une routine est en fait une classe java avec des méthodes. Toutes les méthodes doivent être statiques. C'est les rares moments dans Talend où l'on est fier d'avoir des bases en Java :).

Nous allons utiliser une libraire libphonenumber qui permet d'analyser, formater, et valider des numéros de téléphone. Nous allons prendre un cas simple qui va nous permettre de déterminer le pays d'un numéro de téléphone au format international
Il faut charger les libraires de libphonenumber dans Talend pour pouvoir utiliser cet API dans Talend. Pour le faire click droit Edit routines librairy. De la vous pouvez ajouter les archives .jar dont vous avez besoin.
  Nous allons créer la méthode statique qui permet de retrouver le pays d'un numéro de télephone.


public static String getCountryCode(String bparty) {
  String swissNumberStr = bparty;
  PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
  PhoneNumber swissNumberProto=null;
  try {
   swissNumberProto = phoneUtil
     .parse(swissNumberStr, "ZZ");
  } catch (NumberParseException e) {
   System.err.println("NumberParseException was thrown: "
     + e.toString());
  }
  PhoneNumberOfflineGeocoder geocoder = PhoneNumberOfflineGeocoder.getInstance();

  return geocoder.getDescriptionForNumber(swissNumberProto, Locale.ENGLISH);
 }
Il faut pas oublier de faire les imports suivants :


import com.google.i18n.phonenumbers.*;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import com.google.i18n.phonenumbers.geocoding.*;
import java.util.*;




Maintenant nous allons faire un test simple dans un tJava on utilisera cette routine pour donner le pays d'un numéro en entrée.









Nous pouvons alors intégrer cette routine dans des jobs plus complexes. Alors à vos codes !!!