8
votes

Qu'est-ce que nosql? Quel est le but de nosql? Où puis-je obtenir suffisamment de matériel sur Nosql?

Comment cela se rapporte à MySQL? Je cherche même des livres et des documents si quelqu'un veuillez mentionner les titres du livre ou des liens ...

Je prévois d'apprendre Nosql ... alors veuillez me suggérer quelques conseils que quelles sont les choses dont nous avons besoin avant d'apprendre?

Peut-on expliquer une fois expliquer clairement la différence entre utiliser MySQL et NOSQL?

Y a-t-il des outils pour migrer la base de données MySQL vers la base de données NOSQL? Si quelqu'un connaît la procédure ou le matériel associé, veuillez m'aider .....

Merci d'avance ...


2 commentaires

Si vous ne savez pas ce que c'est, pourquoi voulez-vous migrer vers elle?


C'est comme avoir le bénéfice d'une base de données sans jamais avoir à utiliser SQL, ADO ou l'une de ces choses - TheDailyWTF .Com / Articles / The_Storray_Engine.aspx


4 Réponses :


14
votes

NOSQL est une catégorie de moteurs de base de données qui ne prennent pas en charge le langage de la requête SQL (structuré de la requête) afin d'obtenir des fonctionnalités de performance ou de fiabilité incompatibles avec la flexibilité de SQL.

Ces moteurs fournissent généralement une langue de requête fournissant un sous-ensemble de ce que SQL peut faire, ainsi que des fonctionnalités supplémentaires. Quel sous-ensemble de SQL est disponible dépend entièrement du moteur, bien qu'il soit assez courant que rejoindre , transaction , limite et non indexé> Où ne sont pas pris en charge.

En conséquence, portant le logiciel existant d'un moteur de base de données SQL standard à un moteur NOSQL nécessitera une réécriture de tous les requêtes de ce logiciel et nécessitera probablement également des modifications de la logique de l'application. elle-même (un exemple classique étant que "l'affichage" Page 11 de 25 "est impossible à faire efficacement dans CouchDB, en raison du manque de limite x décalage y support).

Wikipedia a un joli Liste des moteurs NOSQL .

Le consensus général sur NOSQL semble être que si une partie spécifique de votre logiciel bénéficierait des performances, une fiabilité ou une évolutivité améliorées autorisées par un moteur NOSQL spécifique et n'utilise aucune fonctionnalité indisponible dans ce moteur, puis une migration pourrait être considéré. Il est assez rare que toute une application existante axée sur SQL soit déplacée dans son intégralité sur NOSQL.

Certains moteurs NOSQL ont des fonctionnalités d'importation-SQL automatiques, mais à l'aide de NOSQL impose certaines contraintes d'architecture qui dépendent de ce que vous faites avec les données, une procédure d'importation-SQL à la main sera donc le seul solution indépendamment des importateurs existants.

(Enfin, MySQL porte aucune relation avec Nosql. MySQL n'est qu'un nom d'une implémentation de base de données relationnelle. Puisqu'il implémente SQL, il n'est bien sûr pas une base de données NOSQL.)


1 commentaires

Merci pour votre temps précieux, fournissez une idée de NOSQL. Si possible, pouvez-vous me guider des livres / vidéos ou articles / matériaux pour obtenir plus d'informations ainsi que pour améliorer mes compétences?



2
votes

NOSQL est une classe de système de gestion de base de données différente des bases de données relationnelles traditionnelles (telles que MySQL) dans ces données ne sont pas stockées à l'aide de schémas de table fixes. Principalement, son objectif est de servir de système de base de données pour d'énormes applications Web (Amazon, Google, Facebook, etc.) où ils surperforment des bases de données relationnelles traditionnelles.

Une bonne source d'informations: bases de données NOSQL


0 commentaires

0
votes

Fondamentalement, les systèmes de gestion de la base de données NOSQL sont utiles lorsque vous travaillez avec une quantité énorme de données lorsque la nature de la donnée ne nécessite pas de modèle relationnel. Les données peuvent être structurées, mais NOSQL est utilisée lorsque ce qui compte vraiment est la possibilité de stocker et de récupérer de grandes quantités de données, pas les relations entre les éléments.

Les exemples d'utilisation pourraient être de stocker des millions de paires de clés dans un ou plusieurs tableaux associatifs ou pour stocker des millions d'enregistrements de données. Cette organisation est particulièrement utile pour les analyses statistiques ou en temps réel des listes d'éléments en croissance, telles que les poteaux Twitter ou les journaux Internet Server à partir d'un grand groupe d'utilisateurs.


0 commentaires

13
votes

nosql vs SQL est vraiment sur les compromis.
NOSQL présente des avantages par rapport aux bases de données SQL traditionnelles, car ils abandonnent certaines fonctionnalités SMDBMS afin d'acquérir d'autres fonctionnalités de performance, d'évolutivité et de convivialité.

Qu'est-ce que NOSQL abandonne (varie selon le produit NOSQL):

  • relations entre entités (comme tables). Donc, vous ne pouvez généralement pas "rejoindre" des tables ou des modèles dans une requête.
  • Transactions acides limitées. Le niveau de cohérence de lecture et de capacités d'écriture atomique / commettez sur une ou plusieurs tables / entités varie selon le moteur NOSQL.
  • Aucun langage de domaine standard comme SQL pour avoir exprimé des requêtes ad-hoc. Chaque NOSQL a sa propre API et certains des fournisseurs NOSQL ont une capacité de requête ad-hoc limitée.
  • Modèle de données moins structuré et rigide. NOSQL oblige généralement / donne plus de responsabilités à la couche d'application et au développeur pour définir le schéma - AKA "SCHEMA sur lecture" au lieu de l'écriture.

    Quels gains NOSQL:

    • plus facile à fumer et distribuer les données sur un cluster (à cause de ce que vous abandonnez ci-dessus). Cela peut donner une évolutivité de lecture / écriture beaucoup plus élevée.
    • peut déployer sur du matériel de produits moins chers (et dans le cloud) et de développer une sociabilité plus économiquement.
    • n'a pas besoin autant de soutien du type de DBA avant. Mais si votre Nosql devient gros, vous passerez beaucoup de temps à faire du travail d'administrateur, peu importe.
    • NOSQL Dont un modèle de données LOOSER afin que vous puissiez avoir des ensembles de données de sparser et des ensembles de données variables organisés dans des documents ou des ensembles de colonnes Nom / Valeur. Les modèles de données ne sont pas aussi durs.
    • Les migrations de schéma peuvent être plus faciles, mais met la charge sur la couche d'application pour s'adapter aux modifications du modèle de données.
    • Selon le type d'application que vous construisez, NOSQL peut faire commencer un peu plus facile car vous avez besoin d'une planification de plusieurs fois de votre modèle de données. Donc, pour collecter une vitesse élevée et des données variables, NOSQL peut être géniale. Mais pour la modélisation d'une application ERP, il peut ne pas être un excellent ajustement.

      Il n'y a pas de balle de ruban ici avec NOSQL Il existe de nombreux moteurs NOSQL différents et chacun a sa propre spécialité et ses avantages et ses inconvénients. En général, vous devriez penser à NOSQL en tant que moteur de stockage de données complémentaire et non en remplacement complet de RDBMS / SQL, mais cela dépendra de votre application et de votre environnement fonctionnel.

      Les bases de données relationnelles évoluent également avec de nouveaux moteurs Hybrid NOSQL comme des moteurs MySQL à la sortie et des produits tels que Nuodb et Voltdb (ce que certains appellent NewsQL) en essayant de combler les RDBM. Nuage et le royaume de l'architecture distribuée.


0 commentaires