
La base de données orientée documents est une évolution de la base de données clé-valeur telle que précédemment présentée. Ici chaque clé n’est plus associée à une valeur sous forme de bloc binaire mais à un document dont la structure reste libre.
Les applications effectuent majoritairement des requêtes en lecture par identifiant ; ce constat a conduit au développement des bases de données clé-valeur. Les applications Web diffusent des pages entières résultant d’un ensemble de jointures en base : les bases de données orientées documents découlent de ce second constat.
Au-delà de ce cas d’utilisation, la modélisation des données sous forme de documents permet également de stocker de manière idéale toute forme de structure de données non plane, c’est-à-dire qui nécessiterait en ensemble de jointures en logique relationnelle. Malgré tout, il ne s’agit nullement d’un rejet des bases de données relationnelles : la modélisation en document ne permet pas la même flexibilité dans les requêtes et les chargements de données que la modélisation relationnelle.
Mathias Stearn a présenté ces concepts en action avec MongoDB, l’une des deux bases de données orientées documents actuelles, l’autre étant CouchDB. Mathias Stearn travaille actuellement pour 10gen, l’entreprise derrière MongoDB.
Lire la suite de cet article »

La revue de presse de l’actualité Java/J2EE hebdomadaire proposée par Xebia.
Actualité éditeurs / SSII
RIA
Le coin de la technique
Lire la suite de cet article »

Vision simplifiée à l’extrême, la base de données clé-valeur se comporte, du point de vue de son application cliente, comme une grosse table de hachage persistante. Ce type de base de données trouve sa légitimité dans le constat que les applications présentent de nombreux accès à la base de données qui ne sont que de simples lectures ou écritures à partir d’un identifiant.
Partant de la même idée, Amazon a créé sa base de données distribuée Dynamo dont les idées ont été reprises par de nombreux projets. Ce type de système distribué, robuste, et répliqué est toutefois bien loin du concept de table de hachage de base, c’est pourquoi Bryan Fink s’est attaché à présenter le cheminement logique qui a permis de passer de l’un à l’autre.
Bryan Fink a enfin introduit Riak – projet sur lequel il travaille chez Basho – en tant qu’implémentation de base de données clé-valeur.
Lire la suite de cet article »
Le NoSQL regroupe de nombreuses bases de données, récentes pour la plupart, qui se caractérisent par une logique de représentation de données non relationnelle et qui n’offrent donc pas une interface de requêtes en SQL.
Cassandra, Neo4j, Riak, Redis ou encore HBase sont des noms de projet qui brillent par leur présence dans l’actualité depuis quelques mois. Bien qu’ils soient tous étiquetés ‘NoSQL’ de grandes disparités les distinguent. Du fait de l’hétérogénéité de ces bases de données, des familles se sont créées pour les regrouper.
Cet article présente un tour d’horizon de l’ensemble de ces familles, de leurs caractéristiques et de leurs intérêts. Il a ensuite présenté le positionnement actuel du mouvement NoSQL, sa croissance et ce que ces nouvelles base de données peuvent apporter aux entreprises. Il s’agissait d’une session d’introduction dans la mesure où les principes théoriques de chaque famille sont largement couverts par les sessions qui suivent et que le positionnement stratégique sera débattu par la suite.
Lire la suite de cet article »

La conférence NoSQL Europe se tient cette semaine à Londres, du 20 au 22 avril, deux jours de conférences et un jour d’atelier. Cet évènement suit de quelques semaines le NoSQL Live de Boston.
Le NoSQL est un sujet récurent depuis quelques temps. En fait principalement depuis qu’un nom a été adopté pour cette famille de technologies, leur conférant ainsi une visibilité commune. Le NoSQL désigne ainsi toute base de données non relationnelle qui organise le stockage des informations d’une manière alternative. Qu’il s’agisse de bases de données orientées documents, orientées colonnes, graphes, ou clé-valeur, leur but est toujours d’offrir une manière plus simple et/ou plus performante pour stocker certains types de données.
Durant les 2 jours à venir, les différentes familles de base de données NoSQL seront présentées de manière théorique et pratique au travers de nombreux retours d’expérience venant d’Amazon, Twitter, BBC, The Guardian ou encore Comcast.
Le but est donc clairement de dresser un état des lieux de cette technologie, de son intérêt pour les entreprises, des avantages que l’on peut en espérer et des inconvénients à prendre en compte.
Tout comme Devoxx en novembre dernier, Xebia couvrira l’évènement au travers de nombreux articles sur ce blog et d’un flux d’information en live sur Twitter.
La soirée Scala du Paris JUG a eu lieu ce Mardi 13 Avril, et à ce titre nous tenions à remercier les organisateurs de cet événement ainsi que les personnes présentes dans la salle.
Merci aussi pour la troisième mi-temps qui a été l’occasion de retours positifs sur les présentations de la soirée et qui nous a permis de constater que ces dernières ont donné envie à beaucoup de personnes de s’essayer à Scala. En effet, comme l’explique Nicolas Martignole dans son article, cette troisième mi-temps permet de poursuivre les discussions et les débats que les présentations engendrent mais aussi de rencontrer des personnes passionnées comme nous le sommes.
Vous trouverez les slides de notre présentation à cette adresse.
Merci encore et à bientôt !

La revue de presse de l’actualité Java/J2EE hebdomadaire proposépar Xebia.
Agilité
SOA
Le coin de la technique
Lire la suite de cet article »
3ème épisode de notre série. Il est temps pour notre magnifique application de dépasser la barre symbolique de l’utilisateur unique. Mais comme nous nous sentons confiants et forts, nous allons pousser le vice de passer à, tenez vous bien, 5 utilisateurs concurrents. Et comme certains diraient, « Et là, c’est le drame ». Les temps se dégradent à vitesse grand V.
Lire la suite de cet article »

La revue de presse de l’actualité Java/J2EE hebdomadaire proposée par Xebia.
Actualité éditeurs / SSII
Agilité
Lire la suite de cet article »
Adepte de longue date de Fitnesse, j’ai toujours aimé l’aspect collaboratif du wiki permettant de sortir les tests du code et de les exposer à d’autres populations moins technique. Cependant, malgré le succès du projet et la grande communauté qui l’entoure, Fitnesse reste compliqué à mettre en place et certaines fonctionnalités de bases font cruellement défaut. De plus, le passage de Fit à Slim a fortement contribué à complexifier le projet.
Pour moi, Fitnesse est un projet passionnant et porteur de nombreuses innovations. Cependant, l’absence de structuration et le manque de documentation le rend très difficile à mettre en oeuvre et demande une réelle expérience. Je vous conseille tout de même de garder un oeil sur celui-ci, car, depuis l’année dernière, le projet est redevenu très dynamique (pas moins de sept releases) et semble gagner en maturité (je vous conseille notamment cet article sur les nouveautés).
J’ai plusieurs fois dans le passé eu l’occasion de voir des présentations de GreenPepper par les équipes de Pyxis. GreenPepper partage le même concept que Fit/Fitnesse mais a fait le choix de s’appuyer sur un Wiki existant robuste et mature : Confluence. Ce choix est un des gros atouts de GreenPepper, mais c’est aussi la raison qui m’a toujours fait écarter cette alternative. En effet, j’ai toujours trouvé difficile de promouvoir un logiciel en expliquant qu’il faudrait non pas acheter une mais deux licences (pour les entreprises non équipées en Confluence) et qu’il faudrait configurer et maintenir les deux logiciels.
Cependant, ce point de blocage a été adressé lors de la version 2.6 sortie en novembre 2009, qui permet désormais de pouvoir faire reposer GreenPepper sur XWiki qui est gratuit et open source.
Je vous propose donc de m’accompagner dans le test de cette nouvelle version au travers de cet article qui aborde :
- l’installation de GreenPepper et la configuration de XWiki,
- la création des premiers tests,
- la configuration de Maven et Eclipse pour GreenPepper,
- la création des fixtures,
- un petit retour d’expérience,
- mes espoirs pour le futur.
Avant de vous lancer dans la lecture de cet article, notez que celui-ci est purement technique et nullement philosophique. La présentation de l’ATDD (Acceptance Test Driven Development) ne sera pas abordée ici.
Lire la suite de cet article »