Cassandra ou MySQL / PostgreSQL?
-
22-09-2019 - |
Question
Je énorme base de données (un peu WordNet) et que vous voulez savoir s'il est plus facile d'utiliser Cassandra au lieu de MySQL
| PostrgreSQL
Toute ma vie, j'utilisais MySQL
et PostrgreSQL
et je pouvais facilement penser en termes d'algèbre relationnelle, mais il y a quelques semaines j'ai appris Cassandra et qu'il est utilisé dans Facebook et Twitter.
est-il plus pratique?
Quel SGBD sont généralement utilisés de nos jours pour stocker les données de réseau social, les relations entre les objets, wordnet?
Autres conseils
Il n'y a rien comme une solution de Silver Bullet, tout est construit pour résoudre le problème spécifique et a ses propres avantages et inconvénients. Il est à vous de décider - ce que vous avez énoncé du problème et quelle est la meilleure solution adaptée à votre problème. Que vous utilisiez Cassandra (NoSQL) ou MySQL (SGBDR), il est tout entraîné par les besoins de votre système. Voici les entrées qui vous aideront à prendre une meilleure décision en décidant sur la base de données.
Pourquoi utiliser NoSQL
Dans le cas de la base de données SGBDR, ce qui rend le choix est assez facile parce que presque toutes les bases de données comme MySQL, Oracle, MS SQL, PostgreSQL dans cette offre de catégorie presque même genre de solutions orientées vers la propriété ACID. En ce qui concerne NoSQL, la décision devient difficile parce que chaque base de données NoSQL offre une solution différente et vous devez comprendre ce qui est le mieux adapté à vos besoins app / système. Par exemple, MongoDB convient pour les cas d'utilisation où les exigences de votre système schéma moins de stockage de documents. HBase pourrait adapter pour les moteurs de recherche, l'analyse des données du journal, tout lieu où la numérisation énorme, deux dimensions moins de jointure des tables est une exigence. Redis est conçu pour fournir en mémoire recherche de variétés de structures de données arborescentes, file d'attente, liste de liens, etc et peut être bon moyen pour faire du classement en temps réel, type de pub sous système. De même, il existe d'autres bases de données dans cette catégorie (y compris Cassandra), qui correspond à des problèmes différents. Maintenant déplaçons à la question d'origine, et d'y répondre un par un.
Quand utiliser Cassandra
Faire partie de la famille NoSQL, Cassandra offre une solution pour le problème où votre exigence est d'avoir très lourd système d'écriture et vous voulez avoir système de reporting assez réactif au-dessus de ces données stockées. Envisager d'utiliser le cas de l'analyse Web où les données du journal sont stockées pour chaque demande et que vous voulez construire la plate-forme d'analyse autour d'elle pour compter par heure coups, par navigateur, par IP, etc de manière en temps réel. Vous pouvez consulter le blog post (
Je suggère d'analyser votre demande. Cassandra devrait mieux travailler avec de grandes échelles de données, multi-usages.
Neo4j -. serait mieux pour les structures spéciales, graphiques
Cassandra et d'autres magasins NoSQL sont utilisés pour les sites basés sociaux en raison de leur besoin d'écriture massives opérations basées. Non pas que MySQL et Postgres ne peuvent pas y parvenir, mais NoSQL nécessite beaucoup moins de temps et d'argent, en général.
Sons comme vous voudrez peut-être regarder Neo4j si, juste en termes de vos besoins de modèle d'objet.
Tous les produits différents et ils ont tous leurs avantages et de Conn. Quel genre de problème avez-vous résoudre?
énorme, comme dans Tb?