Кусок NoSQL запроса в MongoDB:
pipeline:
[
{
$match:
{
$expr:
{
$and:
[
{ $gt: ["$file_count", 5] },
{ $gte: ["$folder_count", 0] },
{ $eq: ["$is_compressed", false]
}
]
}
}
}
]
Кусок SQL запроса:
WHERE (file_count > 5 AND folder_count >= 0) AND is_compressed = 0
Другие языки программирования и технологии
NoSQL - это ужас? Или Mongo - это ужас?
Скорее всего это сильно недоработанный продукт.
Монгу хвалят за скорость, но злые языки говорят, что скорость не за счет отказа от реляционности, а за счет того, что она целиком сидит в оперативной памяти в оджидании запросов. Если так, то ничто не мешает запихнуть в оперативку и всю реляционную базу данных, например, в виде нетовских датасетов, а можно и спроектировать реляционную БД как таблицы пар ключ-значение, и тогда можно сразу в словари распихать.
А еще можно было бы разработать БД из пар ключ-значение, но с языком запросов SQL.
Мой научный руководитель заставил меня спроектировать реляционную БД как нереляционную (вроде имитации OLAP-кубов) и я с тех пор думаю, что принципиальной разницы нет.
Чтобы разработать идеальную БД, надо смотреть бинарники, как там это все реализовано.
Монгу хвалят за скорость, но злые языки говорят, что скорость не за счет отказа от реляционности, а за счет того, что она целиком сидит в оперативной памяти в оджидании запросов. Если так, то ничто не мешает запихнуть в оперативку и всю реляционную базу данных, например, в виде нетовских датасетов, а можно и спроектировать реляционную БД как таблицы пар ключ-значение, и тогда можно сразу в словари распихать.
А еще можно было бы разработать БД из пар ключ-значение, но с языком запросов SQL.
Мой научный руководитель заставил меня спроектировать реляционную БД как нереляционную (вроде имитации OLAP-кубов) и я с тех пор думаю, что принципиальной разницы нет.
Чтобы разработать идеальную БД, надо смотреть бинарники, как там это все реализовано.
[{ $gt: ["$file_count", 5] },{ $gte: ["$folder_count", 0] },{ $eq: ["$is_compressed", false]]
не вижу сильной разницы. Есть разные синтаксисы яп, почему-то люди не скулят по этому поводу. Хотя подобных примеров можно везде нарыть.
не вижу сильной разницы. Есть разные синтаксисы яп, почему-то люди не скулят по этому поводу. Хотя подобных примеров можно везде нарыть.
нет. не ужас. просто разные подходы. вообще обычно фапают на реляционность (скула) не зря же её когда то мутили специально для этого. а на монгу и носкула фапать любят неосиляторы скулы. НО! в некоторых случаях носкула оправдана. а носкула в монге оправдана еще больше, ведь она позволяет обмазываться яваскриптом не только в остальной части кода, но даже и при работе с дазой банных. короче ужаса нет ни там ни там, и все решения оправданы для своих задач. пихать же везде или тока скулу или только носкулу моветон. на ламборгини поле пахать глупость, а на тракторе глупость стритрейсерством заниматься. так же и тут. кстати когда то делал тесты скорости на одних и тех же обьемах данных (порядка 2 гб одна таблица, столбцов мало строк дохера), так вот монга гораздо быстрее возвращала ответ чем мускл
По мне так монговый синтаксис запросов это норм - это же JSON который легко программно строить и разбирать - т. е. тут не нужны парсеры и лексеры в случае необходимости.
Ну а вот сама монга непонятно зачем нужна. Я так и не смог придумать реальную задачу где бы нужно было документно-ориентированное хранилище. Все тоже самое умеет PostgreSQL причем гораздо быстрее и при этом остаются все прелести РСУБД.
NoSQL - это ужас, да. Нет абсолютно никакого смысла туда лезть без осознанной необходимости (ее врядли осазнают хипстеры форсившие монгу и MEAN-стек).
Ну а вот сама монга непонятно зачем нужна. Я так и не смог придумать реальную задачу где бы нужно было документно-ориентированное хранилище. Все тоже самое умеет PostgreSQL причем гораздо быстрее и при этом остаются все прелести РСУБД.
NoSQL - это ужас, да. Нет абсолютно никакого смысла туда лезть без осознанной необходимости (ее врядли осазнают хипстеры форсившие монгу и MEAN-стек).
Похожие вопросы
- Где используются NOSQL базы данных
- SQL, MySQL, PgSQL, NoSQL, Redis Нужно ли для разных СУБД и БД какие-то разные версии языка SQL или она одна на всех?
- помогите с паскалем!!! ужас а не задание!!
- У меня до ужаса тормозит комп. Что сделать чтобы он не тормозил?
- У меня вот такой ужас...
- Почему не заменят формат jpeg? Старику уже 27 лет и он не в лучшей форме сейчас. Столько потерь, это ужас!
- Как правильно включается ужас?... и вообще енто ужас, али проста нуна кнопшку дафануть, шоб яго "убить"?
- Подскажите интересный фильм ужасов!!! Ужас как хочется посмотреть УЖАС :)
- Ужас. Что это такое? Откуда оно приходит? Что оно обозначает? Зачем человеку даётся ужас и способность переживать ужас?
- фильм ужасов. Посоветуйте самый страшный фильм ужасов, а то пишут ужасы а смотришь и смех разбирает.