Ограничивает ли использование MongoDB для хранения на местах функциональность?


12

Я рассматриваю возможность использования MongoDB на сайте для хранения полей, а не просто для удаления кэша, сессии, лотов и т. Д. Из базы данных SQL.

API поля для хранения должно сделать это бесшовное, предполагая , что я использую Drupal API для доступа к данным. Но это ограничивает мой сайт в любом случае. В частности, мне интересно, как будут затронуты виды .


Это, скорее всего, будет закрыто как слишком широкое; единственное, что удерживало меня от MongoDB, это тот факт, что я потерял бы функциональность отношений Views для полей, хранящихся в MongoDB. Я обеспокоен тем, что однажды мне это понадобится и BANG - ни один из запросов не может быть JOINотредактирован.
Чапабу

Это одна из вещей, которая пришла в голову.
Джейкоб Болтон

@Chapabu Вы можете смягчить это с помощью Mongodb и EFQ Views Backend
Клайв

@Clive Ты уверен? Я был уверен, что где-то читал, что это был не тот случай? У меня никогда не было времени, чтобы попробовать это - так что я не могу сказать 100% в любом случае. Если это работает, то, черт возьми, я не вижу никаких причин, чтобы не использовать его :-)
Chapabu

2
Я думаю, что это может быть переписано, чтобы придать ему фокус и быть подходящим для сайта.
mpdonadio

Ответы:


7

это крутой вопрос.

Я в своем 5-недельном приключении поиграть с Drupal 7 и Монго,

Однако, как заявил и цитировал Кахпабу.

НЕТ ОТНОШЕНИЙ, ЧТО ТАКОЕ. Представления EFQ не поддерживают отношения, потому что Mongo не поддерживает JOIN. "- В разделе" Преобразование представлений "в этом посте. (Просто чтобы уточнить, я не спорю, мне искренне любопытно) - Чапабу 6 сентября в 15 : 57

Я думаю, что вы можете многое сделать, используя mongo с Drupal, перенося множество других вещей в mongo, такие как сессии и т. Д. Простые «поля»:

Так как Views чрезвычайно ограничен с Mongo db. Я обнаружил, что лучше (и гораздо больше времени) переписать некоторые пользовательские модули, вписывающиеся в схему mongo.

Так что это, безусловно, отличное приключение, если вы начинаете новый проект / сайт. Но приключение будет наполнено большими испытаниями на таинственном переулке.

Даже Белый дом должен был вернуться в Mysql из Монго. Вот цитата, которую я нашел на нем.

«Текущий выпуск зависит от MongoDB. Когда мы впервые создали приложение, мы хотели убедиться, что у нас есть хорошо масштабируемое приложение и база данных для удовлетворения наших ожидаемых потребностей в производительности при высоких нагрузках. Мы работаем с MongoDB более года, но мы решили, что преимущества в производительности перевешиваются сложностью попыток расширить возможности Drupal, поддерживаемые MongoDB ».

Однако другие люди добились больших успехов с mongodb и Drupal 8 Mongodb и Drupal 8

Как они заявляют в своем слайде, добиться полной функциональности mongodb, конечно, невозможно.

Но вам придется отказаться от нескольких модулей, использующих SQL (а это много). На данный момент у меня все еще есть ощущение, что Drupal не может танцевать полное танго с Mongo. Даже используя модули. это все еще грубый путь.


Спасибо, что поделились своими мыслями по этому поводу! Это ценится!
Джейкоб Болтон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.