Overblog Tous les blogs Top blogs Technologie & Science Tous les blogs Technologie & Science
Editer l'article Suivre ce blog Administration + Créer mon blog
MENU

Master Project - NoSQL 工具

10 Juillet 2013 Publié dans #nosql, #java, #opensource

Master Project - NoSQL 工具

严禁转载,使用请注明出处:http://alex2012-c.j.overblog.com/

主要是研究不同类型的数据库,找一个通用的API还操作不同类型的NoSQL,最终选择了Kundera来操作Cassandra/HBase/MongoDB

A l’issue des études qu’on a effectuées sur les différentes API d’exploitation relative à chaque modèle de base de données on a établi ce tableau :

i. JPA Kundera

Kundera est une JPA 2.0 qui rend le travail avec les bases de données simple. Kundera ne réinvente pas la roue en faisant une autre bibliothèque du client, mais plutôt il s’appuie sur les bibliothèques existantes, et construit - au-dessus d’elles- une API enveloppante pour les développeurs
 un code propre qui réduit la complexité et améliore la qualité et la productivité. Kundera supporte la persistance cross-datastore ; Cela signifie qu’on peut sauvegarder et rapporter des entités dans différentes bases de données en utilisant une seule méthode d’appel. Les possibilités offertes par Kundera sont :

- Rendre le travail avec les bases NoSQL simple comme celui avec SQL
- Fournir une solution de mapping pour les BDNoSQL
- Rendre simple la commutation entre les bases de données Actuellement, Kundera supporte les bases suivantes :
- Cassandra (colonne)
- MongoDB (document) (les collections)
- Hbase
- Redis (clé-valeur)
-
Neo4J
- Les bases de données relationnelles

Quelques definitions
Persistance :En programmation, la gestion de la persistance des données (en anglais : persistence) et parfois des états d'un programme réfère au mécanisme responsable de la sauvegarde et de la restauration de données. Ces mécanismes font en sorte qu'un programme puisse se terminer sans que ses données et son état d'exécution ne soient perdus. Ces informations de reprise peuvent être sauvegardées sur disque, éventuellement sur un serveur distant (un serveur de bases de données relationnelles, par exemple). Du fait de la différence de modèles entre les bases de données et les langages de programmation la notion de correspondance entre modèles (en anglais : mapping) est centrale.
JPA : Une interface de programmation Java permettant aux développeurs d’organiser des données dans des applications utilisant la plateforme Java

La persistance dans ce contexte recouvre 3 zones :
• l'API elle-même, définie dans le paquetage javax.persistence
• le langage Java PersistenceQuery (JPQL)
• l'objet/les métadonnéesrelationnelles La technologie JPA (Java Persistance API) a pour objectif d’offrir un modèle d’ORM (Object RelationalMapping) indépendant d’un produit particulier (comme hibernate, TopLink,..). Cettetechnologieestbaséesur :
• Un jeu d’interfaces et de classes permettant de séparer l’utilisateur d’un service de persistance (votre application) et le fournisseur du service.
• Un jeu d’annotations pour préciser la mise en correspondance entre classes Java et tables relationnelles.
• Un fournisseur de persistance ( par exemple hibernate)
• Un fichier XML « persistance.xml » décrivant les moyens de la persistance (fournisseur, datasource, etc.)
Une entité :Une entité est une structure composée d'attributs, représentant un composant identifiable d'un domaine fonctionnel, et potentiellement en relation avec les autres entités du domaine. Par exemple, pour un commerce, plusieurs entités peuvent être mises en jeu:
• Client
• Commande
• Produit
• Rayon
• etc. Relations:
• 1 Client passe n Commandes
• 1 Rayon contient n Produits
• etc. En Java, l'API de Persistance (JPA) fournit l'annotation @Entity qui permet de faire d'une classe Java une entité persistante. Dans une base de données, le terme entité désigne généralement un enregistrement d'une table et les relations à d'autres enregistrements qu'elle possède

Publicité
Master Project - NoSQL 工具
Partager cet article
Repost0
Pour être informé des derniers articles, inscrivez vous :
Commenter cet article