NipDev 3 – Data et NoSQL

Podcast: Téléchargement

Dans ce troisième épisode, Fabrice, Antoine et Sébastien nous parlent de stockage et de données.

RDBMS

Petite introduction à propos des SGBD Relationnels et des frameworks permettant de les accéder.

Le théorème de CAP

http://ofirm.wordpress.com/2013/01/22/classical-big-data-reading-cap-theorem/

http://randomtechthought.blogspot.fr/2012/07/big-data-understanding-cap-theorem.html

NoSQL

http://blog.rizzif.com/2011/08/31/intro-to-nosql/

http://nosql-database.org/

Différente familles dans NoSQL pour différent besoins :

– base orienté Document : MongoDB, CouchDB

– base orienté clé-valeur : Redis, Riak

– base orienté colonnes : Cassandra

– base orienté graph : Neo4j

Distribution Hadoop par Pivotal:

Pivotal HD : http://blog.gopivotal.com/products/pivotal-hd-ga

Map Reduce

https://fr.wikipedia.org/wiki/MapReduce

Librairies pour faire du map reduce sur des systèmes distribués:

Storm http://storm-project.net/

Thrift http://thrift.apache.org/

Les moteurs de recherche full-text

ElasticSearch

SolR

Autres

Langage de programmation statistique et mathématique (R)  http://www.r-project.org/

Services en ligne gratuit pour tester

MongoDB : Stockage MongoDB en ligne gratuit : https://mongolab.com

Redis : Tutorial interactif très bien fait : http://try.redis.io/

Livre

Seven databases in Seven Weeks

10 réflexions au sujet de « NipDev 3 – Data et NoSQL »

    1. Effectivement, l’idée du numéro zéro n’était pas géniale, avec le décalage, le troisième épisode est en fait le n°2. Donc hop, on saute le numéro 2 pour réaligner tout !!!

  1. Un épisode de qualité bien expliqué 🙂

    Pour Merise, il faut faire attention: si on veut suivre jusqu’au bout, on va pour des coordonnées pousser le vice jusqu’à créer une table pour le type de voie (rue/avenue/boulevard), et le nom de la voie 🙂

    Pour la partie NoSql, je propose sur mon framework depuis 2009 un stockage xml avec un fichier par enregistrement, celui-ci est géré via l’ORM de base comme une base de donnée normale, et l’on peut en plus ajouter des index 😉

    Note: même si le sgbd xml demande de définir des champs (comme une base classique) il accepte que l’on enregistre des champs non référencés 😉

    Et l’avantage : c’est que l’on peut utiliser l’ORM (requete SQL) et switcher vers une base de donnée classique si nécessaire.

    Pour info mon framework sous licence LGPLv3: http://mkdevs.com, des tutoriaux vidéos http://mkdevs.com/screencasts.html (lien 3.Créer un module CRUD)

    Tutoriaux sur programmez.com : http://www.programmez.com/tutoriels.php?tutoriel=120&titre=Decouvrir-un-framework-tres-simple-et-securise-le-mkframework et developppez.com : http://imikado.developpez.com/tutoriels/php/presentation-mkframework/

    Bientôt un tutorial pour créer son propre twitter en 20 pages 😉 (en cours de validation)

    note: je peux voir à l’avenir pour proposer un format de stockage en json complémentaire au xml 😉

    Pour la recherche « full enregistrement », on peut imaginer sur un serveur linux un simple grep qui retournerait les fichiers de données contenant le pattern 😉

  2. Super épisode merci, continuez comme ça! Niveau idées de sujet, j’aimerai bien vous entendre parler de Ruby on Rails. J’ai découvert le dev web avec base de donnes toussa sans rien y connaître (et en ne connaissant toujours pas grand choses aux bases de données) grâce a ce framework et reste étonné de l’efficacité de la chose…

    Je me demande toujours si je découvre juste le monde moderne 🙂 ou si ça a vraiment été un apport important dans l’évolution et l’efficacité du dev web.

  3. Merci pour le PodCast

    Pour la forme, nous utilisons depuis 15ans JStore une base de donnée Java NoSQL qui est un Graph d’Objet en mémoire, Journalisé en XML, et répliquée via de la réplication optimiste (thèse).

    La base est utilisé à travers notre produit chez de nombreux grand compte Français. malheureusement je ne peux pas fournir plus d’info car elle est propriétaire 🙁

    Bosser depuis 10ans sur cette techno est un véritable bonheur ! Du POJO, simple, performant, le top 🙂

  4. Super Podcast comme les deux précédents.

    Si je puis me permettre, je pourrais suggérer d’autres thèmes pour l’émission :
    * les langages de script (PHP, Perl, Python, Lua, etc.)
    * les langages fonctionnels – déjà évoqués vite fait dans ce numéro – avec Scala, LISP, Scheme, Haskell, etc.
    * les éditeurs / IDE de développement (Vim, Emacs, NetBeans, Eclipse, Sublime, etc).

    En tout cas, reposez vous bien pendant vos vacances et continuez ce bon travail !

  5. Merci une nouvelle fois pour cet épisode. J’ai une question sur ce qui a été dit, êtes-vous certain que Cassandra soit basé sur Hadoop ? Je ne l’ai pas utilisé pour le moment mais j’avais plutôt compris que Cassandra pouvait utiliser Hadoop pour ses capacités de MapReduce mais que je pourrai très bien faire du Cassandra sans tirer Hadoop. Ou alors je n’ai pas compris ce passage du podcast :-).
    Encore bonne continuation et vivement l’interview.

    1. Effectivement, il est possible d’utiliser Cassandra sans Hadoop. Cassandra a été créé par facebook puis intégré au projet Apache Hadoop par la suite. Il est possible de faire du Map Reduce Hadoop avec Cassandra mais cela n’est pas obligatoire. Pour résumer, Cassandra n’est pas basé sur Hadoop (si nous l’avons dit comme ça c’est une erreur) mais fait partie du projet Hadoop. Il n’y a pas de dépendances entre les modules Hadoop (Common, HDFS, Map/Reduce et YARN) mais Cassandra peut en tirer partie.
      J’espère que c’est plus clair 😉

Laisser un commentaire