Question

Dois-je utiliser Cassandra pour un projet 100 000 utilisateur? MySQL 5, je recherche en texte intégral et le partitionnement des tables. Je commence un Q & Un tel système SO avec CodeIgniter. Il est un passage de vBulletin à un nouveau système. Dans l'ancien système vBulletin j'avais 100.000 utilisateurs, avec un poste compte total d'environ 80 000. Dans les 3 ou 4 prochaines années, je pense qu'il y aura de plus en plus d'utilisateurs et des postes les deux. Alors, dois-je utiliser Cassandra au lieu de MySQL 5?

Si j'utilise Cassandra, je dois changer de grille-Service dédié virtuel hébergement à Temple Media. Parce que Cassandra n'est pas fourni dans le cadre d'un système d'hébergement, j'ai besoin d'utiliser une solution de serveur VPS ou DV. Si j'utilise MySQL, l'hébergement est pas un problème, mais ce sur les performances, la vitesse de recherche.

Par ailleurs, quelle est la base de données en utilisant Stack Overflow?

Était-ce utile?

La solution

Vous dites 100.000 utilisateurs - mais combien d'utilisateurs simultanés

?
  

Cassandra ne se construit pas dans le système d'hébergement

L'utilisation d'un service hébergé sur un seul serveur suggère un très opération à petite échelle - et votre limité évidemment par votre budget. Il n'y a certainement aucun avantage en cours d'exécution Cassandra sur un seul nœud de serveur.

  

Dans MySQL 5 ont recherche en texte intégral

Ce qui est pas une solution très évolutive -. Vous devriez certainement penser à l'aide d'une recherche normalisée (que je crois que vous auriez à faire si vous migrez à Cassandra de toute façon)

Étant donné que vous pouvez facilement l'échelle la solution MySQL à plusieurs bases de données en utilisant la réplication avant même de penser à une solution entièrement en cluster, et vous n'ont évidemment pas le budget pour faire votre propre hébergement, la migration vers Cassandra semble comme un matraquage massif.

Autres conseils

je suggère D'après les informations que vous avez fournies, tenir à MySQL.

Tout comme une note côté, Facebook utilisait MySQL dans un premier temps, et finalement déplacé à uniquement après stockait plus de 7 téraoctets de données de la boîte de réception, pour plus de 100 millions d'utilisateurs.

Wikipedia aussi gère des centaines de giga-octets des données textuelles dans MySQL.

Je ne vous recommandons d'utiliser cassandra dans votre cas pour les raisons suivantes:

  1. Cassandra a besoin d'une bonne compréhension de l'application que vous construisez. Il sera beaucoup plus difficile de faire des changements et d'exécuter des requêtes complexes par rapport aux données stockées dans cassandra. SQL est plus souple et plus facile à entretenir. Cassandra est bon quand vous avez besoin de stocker d'énormes quantités de données et quand vous savez exactement comment les données stockées dans cassandra seront accessibles et triées.

  2. Mysql fonctionne très bien pour des millions de lignes si elles sont correctement construites sont des index.

  3. Si vous frappez des goulots d'étranglement dans l'avenir avec MySQL, vous pouvez regarder exactement ce que vos problèmes et l'échelle de les utiliser cassandra. Je veux dire que vous devez être en mesure de combiner les deux approches:. SQL et NoSQL dans le même projet

En ce qui concerne MySQL index de texte intégral, je peux dire qu'il est inutile. Je veux dire que cela fonctionne trop mauvais pour être utilisé dans des projets hochgeladen. Regardez sphinxsearch.com, qui est une grande mise en œuvre de la recherche en texte intégral fait pour les bases de données SQL.

Mais si vous attendez que votre système se développe rapidement et va servir des millions d'utilisateurs, vous devriez envisager cassandra depuis le début.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top