Quel est le plus facile à apprendre à partir de zéro: SQL ou NoSQL?

SQL est probablement plus facile à apprendre à gratter qu’une architecture NoSQL à la condition que vous utilisiez un nœud contre plusieurs. Dans ce cas, vous n’avez pas à vous soucier des systèmes distribués et le temps passé à apprendre une nouvelle langue peut probablement être proportionné à l’apprentissage de Hive / Pig / MapReduce et de l’architecture de système distribué. Si vous parlez de partitionnement, tout dépend de la façon dont vous formatez vos données, mais au moins les bases de données NoSQL s’en occupent automatiquement pour vous, donc je suppose que ce serait plus facile à utiliser. Mais, puisque nous parlons spécifiquement d’apprentissage, je vais laisser le partage de l’image pour la simplicité de «l’apprentissage» pour utiliser les technologies.

Ventilé ci-dessous:

Temps de configuration
Étant donné que vous devez probablement configurer plusieurs nœuds (en supposant que vous ne partitionnez pas votre base de données SQL) pour voir une raison plausible d’utiliser une base de données NoSQL, quelque chose comme HBase prendra plus de temps à configurer. Vous utiliserez probablement quelque chose comme Amazon EC2 ou EMR pour plus de simplicité, vous avez donc cette surcharge supplémentaire pour apprendre à utiliser les services d’Amazon en plus de l’installation de votre base de données préférée.
Gagnant: SQL (ou égalité si vous utilisez un seul nœud pour les deux)

Il est temps d’apprendre à utiliser
SQL est probablement plus rapide et plus polyvalent à apprendre et j’imagine avec plus de documentation. Je n’ai utilisé MySQL qu’avec parcimonie et je n’ai jamais vraiment utilisé de requêtes complexes, mais j’ai trouvé ce dont j’avais besoin assez rapidement avec une recherche Google. La plupart des bases de données NoSQL se développent encore rapidement aujourd’hui. Bien sûr, si vous cherchez simplement à obtenir / numériser / mettre HBase est bien, mais pour obtenir les mêmes performances (fonctionnalité et non efficacité), vous devrez probablement utiliser Hive / Pig / MapReduce, ce qui peut prendre un temps considérable pour apprendre .
Gagnant: SQL

Mais encore une fois ma réponse plus ou moins de réponses: est-il plus facile d’apprendre une base de données de système distribué ou une seule instance? Veuillez donc en tenir compte, car c’est en grande partie la raison pour laquelle vous choisissez de ne pas utiliser SQL. Si vous pouvez adapter vos données sur un nœud, ne vous en tenir à SQL que lorsque vous vous sentez vraiment incapable de le faire, alors vous devriez explorer d’autres possibilités (partitionnement ou NoSQL). J’espère que cela a aidé!

Cette question est défectueuse.

La variation trouvée dans SQL est beaucoup plus petite que celle trouvée dans l’ensemble des langages et approches d’interrogation presque équivalents dans l’espace NoSQL.

Comparez par exemple les vues Gremlin, Hadoop, Pig, CouchDB et RavenDB linq. Il y en a beaucoup d’autres qui pourraient être choisis. Vraiment un seul de ces éléments doit être choisi pour comparaison afin de répondre raisonnablement à la question.

La même chose s’applique si la question signifie «quelle plateforme de base de données est plus facile à apprendre, un SGBDR ou un magasin NoSQL? Sauf qu’ici, la variation entre différents SGBDR devient beaucoup plus pertinente également, comparez l’apprentissage des dernières versions d’Oracle, Postgres et MS SQL Server. Il y a des différences significatives (lecture, ordre de grandeur, différences).

Et bien sûr, il y a la question, d’apprendre dans quel but? Administrer, utiliser naïvement dans une application, utiliser à différents niveaux d’échelle, avec différents niveaux de disponibilité, différentes performances? La réponse à une question, même bien posée (par exemple, en comparant Postgres et Riak, pour en choisir deux), est susceptible de varier selon toutes ces dimensions.

Je crois que si vous connaissez déjà le SGBD relationnel, SQL est plus facile à apprendre que NoSQL. Également encore nouveau dans le concept de base de données, SOL est plus susceptible d’être plus facile que NoSQL.

De plus, il n’y a pas beaucoup de personnes ayant une expertise dans le SGBD NoSQL et aussi un manque de documentations diverses.

J’apprends actuellement MongoDB et je joue avec ColdFusion.
Les SGBD NoSQL ne conviennent qu’à certains besoins spécifiques.
Par exemple,
La base de données orientée colonne a ses avantages et ses inconvénients.
jetez un oeil à ma diapositive.
http://my-waz.com/data-mining-an…

Livres MongoDB: avoir seulement 10+ numéros !!
http://www.mongodb.org/display/D…

C’est une question beaucoup plus difficile qu’il n’y paraît. Le premier problème est qu’il y a tellement de bases de données NoSQL que vous ne pouvez pas vraiment généraliser.

À bien des égards, l’utilisation de bases de données NoSQL particulières est beaucoup plus simple que SQL. Pour une base de données de documents, par exemple, le côté programmation est généralement beaucoup plus simple, vous pouvez simplement y vider vos objets. Vous devrez peut-être normaliser un peu vos données en fonction du nombre d’objets que vous avez dans les sous-collections de vos objets, mais pour la plupart, vous n’avez pas à faire grand-chose du côté de la programmation.

À d’autres égards, la simplicité rend les choses plus difficiles. La structure de SQL vous permet d’avoir des requêtes et agrégations généralisées et des rapports. Parfois, il est difficile d’extraire les données d’un NoSQL, même s’il peut le faire beaucoup plus rapidement.

SQL d’autre part, vous devez connaître la normalisation et vous aurez besoin d’une grande partie de votre code pour traduire vos objets dans les bases de données.

À bien des égards, il est utile de savoir comment utiliser un SGBDR et de comprendre la normalisation avant d’entrer dans NoSQL, car vous pourrez alors mieux voir les avantages que NoSQL peut vous apporter par rapport à un SGBDR.

NoSQL est plus facile à apprendre. Voici une version PHP:

  $ fp = fopen ('data.db', 'w');
 fwrite ($ fp, '1');
 fclose ($ fp);