9
votes

Existe-t-il une API standard émergente pour les bases de données NOSQL?

Je me demandais s'il y a des langues standard ou des API d'accéder aux bases de données NOSQL (ou au moins BIGDATA ou de colonne)?

ou devez-vous apprendre la langue spécifique du domaine pour la contribution de chaque fournisseur?


5 commentaires

J'espère que les gens ne fermeront pas cette question. Je veux vraiment juste savoir s'il y a des API unifiées? Vous ne savez pas pourquoi cela serait considéré comme contentieux?


Comme dans, des couches d'abstraction agnostiques de base de données comme PDO pour PHP? Je ne suis pas sûr de ce que la norme pour NOSQL serait, sauf «pas SQL».


Il se manquant peut-être que le point de dépassement de la pile - Pourquoi cette question est-elle controversée et existe-t-il un meilleur forum pour cette enquête? J'essaie de rechercher NOSQL pour un article et je pense que c'est une question très pertinente.


Oui, je pense que c'est une question pertinente, je ne sais pas pourquoi certaines personnes sont si comme ça ...


Quoi qu'il en soit, jusqu'à présent, je n'ai pas vraiment vu de langage NOSQL "standard" par lequel les fournisseurs mettent en œuvre. Peut-être que nous pouvons simplement regarder le plus populaire NOSQL (comme MongoDB) et dire que c'est là que tout le monde va. Un peu comme Amazon S3 pour le stockage d'objets; où il est devenu une norme car beaucoup copient leur interface ...


3 Réponses :


2
votes

La base de données relationnelle a la langue SQL.

Les bases de données NOSQL sont de types différents: graphique, colonnes, document. Valeur clé, etc.

Ils sont tous spécifiques à gérer. Peut-être qu'un type pourrait avoir une langue unifiée, mais entre eux, ce ne serait pas si naturel. Donc, oui, vous devez utiliser / apprendre l'API pour chaque type.

À un autre niveau, si vous utilisez Java en tant que langage de programmation, vous pouvez utiliser des données de printemps qui propose un ensemble de bibliothèques pour accéder à ces bases de données. Je ne l'ai pas utilisé, mais vous serez en mesure de comparer les API entre les différents types de base de données assez facilement.

alors vous avez cette question qui semble bien liée à la vôtre: y a-t-il des normes NOSQL émergeant?


1 commentaires

Il est logique que les bases de données de graphes ne produisaient pas la même API que Columnar, mais qu'en est-il de HBASE vs. Cassandra?



2
votes

J'ai vu 2 initiatives dont l'objectif est de fournir une interface unifiée à tous les NOSQL DB. One est Unql qui fournit une interface de type DML très SQL.

L'autre est Apache Thrift , qui fournit une façon neutre de la langue de décrire et de mettre en œuvre des requêtes.


0 commentaires

3
votes

Un potentiellement intéressant est un Appscale qui fournit une API unifiée pour HBASE, Hypertable, Cluster MySQL, Cassandra, Voldemort, Mongodb, Memcachedb et Redis. L'API est définie par Google pour le moteur d'application Google et est disponible pour Java , python et Go .


1 commentaires

Oh, et si vous utilisez l'API de Google App Moteur à Java, vous devez consulter ObjectFey code.google.com/p/Objectify-appengine