L'utilisation de MongoDB pour la fonctionnalité de stockage sur le terrain limite-t-elle?


12

J'envisage d' utiliser MongoDB sur un site pour le stockage sur le terrain, et pas seulement de déplacer le cache, la session, les lots, etc., de ma base de données SQL.

L' API de stockage sur le terrain devrait rendre cela transparent, en supposant que j'utilise l'API Drupal pour accéder aux données. Mais cela limite-t-il mon site de quelque façon que ce soit? En particulier, je me demande comment les vues seront affectées.


Cependant, cela sera très probablement fermé car trop large; la seule chose qui m'a éloigné de MongoDB est le fait que je perdrais la fonctionnalité de relations de Views pour les champs stockés à l'aide de MongoDB. Je crains qu'un jour j'en ai besoin et BANG - aucune des requêtes ne pourra être JOINéditée.
Chapabu

C'est l'une des choses qui me sont venues à l'esprit.
Jacob Bolton

@Chapabu Vous pouvez atténuer cela avec le backend de vues
Clive

@Clive Êtes-vous sûr? J'étais sûr d'avoir lu quelque part que ce n'était pas le cas? Je n'ai jamais eu le temps de l'essayer - je ne peux donc pas dire à 100% de toute façon. Si ça marche, bon
sang

2
Je pense que cela peut être réécrit pour lui donner un focus et être un bon ajustement pour le site.
mpdonadio

Réponses:


7

c'est une question cool.

Im sur mon aventure de 5 semaines de jouer avec Drupal 7 et mongo,

Cependant, comme Cahpabu l'a déclaré et cité.

AUCUNE RELATION QUE CE SOIT. Les vues EFQ ne prennent pas en charge les relations parce que Mongo ne prend pas en charge les jointures. "- Dans la section Conversion des vues de ce message. (Juste pour clarifier, je ne suis pas argumentatif, je suis vraiment curieux) - Chapabu 6 sept à 15 : 57

Je pense que vous pouvez faire beaucoup en utilisant mongo avec Drupal, en déplaçant beaucoup d'autres choses dans mongo, comme des sessions, etc. de simples "champs" cependant:

Puisque Views est extrêmement limité avec Mongo db. J'ai découvert qu'il est préférable (et beaucoup plus de temps) de réécrire certains modules personnalisés s'inscrivant dans le schéma de mongo.

Donc, c'est sûr, une grande aventure si vous démarrez un nouveau projet / site. Mais l'aventure sera remplie de grands défis sur la voie mystère.

Même la Maison Blanche a dû retourner à Mysql depuis Mongo. voici une citation que j'ai trouvée dessus.

"La version actuelle dépend de MongoDB. Lorsque nous avons créé l'application pour la première fois, nous voulions nous assurer que nous disposions d'une application et d'une base de données hautement évolutives pour répondre à nos besoins de performances anticipés sous des charges élevées. Nous utilisons MongoDB en production depuis plus d'un an, mais nous avons décidé que les avantages en termes de performances qu'il offre sont contrebalancés par la complexité d'essayer d'étendre les fonctionnalités Drupal soutenues par MongoDB. "

Cependant, d'autres personnes ont eu un grand succès avec mongodb et Drupal 8 Mongodb et Drupal 8

Comme ils l'indiquent dans leur diapositive, il est bien sûr impossible d'obtenir la fonctionnalité complète de mongodb.

Mais vous devrez abandonner plusieurs modules en utilisant SQL, (ce qui est beaucoup) Pour l'instant, j'ai toujours le sentiment que Drupal ne peut pas danser un tango complet avec Mongo. Même en utilisant les modules. c'est toujours un chemin difficile.


Merci d'avoir partagé vos réflexions à ce sujet! C'est apprécié!
Jacob Bolton
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.