
yopp
13.02.2018
11:21:38
Вы свой максимализм умерьте.

anatolii
13.02.2018
11:21:52
В двух словах никто на этот вопрос не ответит

yopp
13.02.2018
11:24:11
Основная разница в отсутствии транзакций. Если мы говорим о хранении данных с жесткими требованиями по целостности связанности и изоляции, например деньги, то удобнее и проще будет с субд которая поддерживает такие инструменты.
В остальном, что быстрее позволит денег начать зарабатывать.

anatolii
13.02.2018
11:24:45
Основная разница в хранении данных

Google

anatolii
13.02.2018
11:24:52
И это очень сильно расслабляет

Alexander
13.02.2018
11:25:09
??– началось кино ))

anatolii
13.02.2018
11:25:15
Я в свое время совал все в один документ, потому что это очень удобно
можно ведь, и это было круто после реляционных бд
И это сиграло жестокую шутку
По этому и даю такие "советы"

Vladislav
13.02.2018
11:26:35
Хорошо, зайдем с другой стороны, как найти баланс между денормализацией и нормализацией ? Я немного практиковался с монгой, но 3 коллекции в одной из которой вложенность, я считаю, не считается. Допустим я хочу сделать интернет магазин. Простая версия, страница акций, новости, товары до 500 шт, допустим (категория и всё такое присутствует).
Я не хайпонуть пришел в монго. Она мне понравилась и я бы хотел попроовать её заюзать, но заранее хочу обезопаситься

anatolii
13.02.2018
11:27:36
Это вопрос не пары предложений структура бд для магазина :)
Тут надо посидеть серьезней

yopp
13.02.2018
11:28:21
Хорошо, зайдем с другой стороны, как найти баланс между денормализацией и нормализацией ? Я немного практиковался с монгой, но 3 коллекции в одной из которой вложенность, я считаю, не считается. Допустим я хочу сделать интернет магазин. Простая версия, страница акций, новости, товары до 500 шт, допустим (категория и всё такое присутствует).
В монге (как и в других документных бд) основной принцип проектирования документов — писать так, как вы будете потом читать
т.е. сводить по возможности к простому find с минимальными условиями и без трансофрмаций
но на ваших масштабах, делайте так, как вам будет удобнее

Google

yopp
13.02.2018
11:29:26
(а ещё лучше подумайте несколько раз, зачем вам писать интернет магазин, когда их готовых как грязи. не в магазине счастье, а в клиентах)

Vladislav
13.02.2018
11:30:10
Тут надо посидеть серьезней
Я так понимаю у тебя есть практика, если на сворганю структуру и прокину вам линку, будет ли у вас немного времени подсказать как было бы лучше и чем чревата моя структура ?

yopp
13.02.2018
11:30:23
Не слушайте его

Vladislav
13.02.2018
11:30:36
для себя

yopp
13.02.2018
11:31:24
Если практика, тогда идите уже код писать

Vladislav
13.02.2018
11:31:33
я люблю заранее выучить и понять ошибки, еще до того, как попросят катить в прод

yopp
13.02.2018
11:31:38
Нет ничего более продуктивного в обучении, чем набить шишек самому
Так это практика или вас в прод попросят катить это?
Если это практика, я повторю совет: перестаньте теоретизировать и «учить» и начните делать. Вы за пару дней получите больше опыта, чем за месяц зубрения
Предварительная оптимизация, в любых её проявлениях, это страшное зло
Make it work, make it right, make it fast

Vladislav
13.02.2018
11:34:07

yopp
13.02.2018
11:34:16
?
приходите потом с конкретными вопросами

Vladislav
13.02.2018
11:34:40
Договорились )

Viktor
13.02.2018
11:49:34
Хорошо, зайдем с другой стороны, как найти баланс между денормализацией и нормализацией ? Я немного практиковался с монгой, но 3 коллекции в одной из которой вложенность, я считаю, не считается. Допустим я хочу сделать интернет магазин. Простая версия, страница акций, новости, товары до 500 шт, допустим (категория и всё такое присутствует).
Я недавно по работе одной из команд вел презентацию по оптимизации производительности в монге. Затронул в частности денормализацию как один из инструментов, так вот моя идея в том, для начала нужно осознать, что нормализация и денормализация это не два противоположных процесса. При проектировании данные все равно нормализуются (хотя бы на бумаге) и только потом после каких-то прогонов на тестах/проде уже применяется денормализация в нужных местах.

Vladislav
13.02.2018
11:53:01
Спасибо за подсказку

Peter
13.02.2018
12:48:10
Вопросик, Есть поле - обьект workingHours: {
sunday: true,
monday: true,
tuesday: true,
}
как убрать поле в обьекте если оно false.
$$REMOVE не работает в project ( 'Use of undefined variable: REMOVE' )

Google

anatolii
13.02.2018
12:49:03
https://docs.mongodb.com/manual/reference/operator/update/unset/

Peter
13.02.2018
12:52:38
в aggregate, в project
а не update документа

anatolii
13.02.2018
12:53:29
В $project тебе надо указать новую структуру, укажи только те ключи которые тебе нужны

Peter
13.02.2018
12:54:36
а мне нужны ключи в зависимости от того, какое значение имеет поле

anatolii
13.02.2018
12:55:01
По идее если в $project ключу указать 0, то оно будет исключено
REMOVE New in version 3.6.

Peter
13.02.2018
12:56:35
$project: {
workingHours: {
sunday: {$cond: {$if:{$eq['$workingHours.sunday', false]}, then: 0, else: 1}}
}
}

anatolii
13.02.2018
12:56:36
Проверь версию

Peter
13.02.2018
12:56:41
так?
так будут значение
Бля
Спасибо-_- 3.4. у меня
(facepalm)
в 3.4. есть способ такое сделать,
ладно, думаю проще в js посмотреть. Спасибо?

anatolii
13.02.2018
12:58:23
Я когда в монге документацию читаю всегда переключаюсь на версию которая у меня, чтоб не было такого

XENONIUM
13.02.2018
13:18:42
В MongoDB есть такой оператор, как $set, но который добавит новое поле к документам, но если такое поле уже там имеется, изменять его не будет?

yopp
13.02.2018
13:19:11

XENONIUM
13.02.2018
13:19:31
Понял. Благо

Google

anatolii
13.02.2018
13:21:03
$exists: false не использует индексы, если что
Если поле важное, проще держать его в схеме с нейтральным значением

yopp
13.02.2018
13:23:54

anatolii
13.02.2018
13:24:32
И?

yopp
13.02.2018
13:24:39

anatolii
13.02.2018
13:26:26
Он переберет все индексы и будет смотреть есть ли такое поле, а если указать поле, допустим в false то он будет знать где искать это поле без полного перебора
Перебор индексов это не использование, это черти что
перебор всех индексов

yopp
13.02.2018
13:28:08
Давайте вы в read-only посидите немного, с целью научиться внятно свои мысли излагать. Вы не советы даёте, а несёте какую-то чушь.

anatolii
13.02.2018
13:28:20
зануда

BuHuIIIko
13.02.2018
14:07:40
Приветствую

Андрей
13.02.2018
14:09:16
привет всем

BuHuIIIko
13.02.2018
14:11:32
Как запустить сервер на винде?

XENONIUM
13.02.2018
14:11:58

yopp
13.02.2018
14:12:57

BuHuIIIko
13.02.2018
14:12:59
Монго выдает феил что компухтер не разрешает подключение

Андрей
13.02.2018
14:13:19
для ленивых есть OpenServer
там монга входит в состав модулей

yopp
13.02.2018
14:13:40
Но вообще проще взять atlas, там есть бесплатный тариф

Андрей
13.02.2018
14:14:01
или так

Google

Igor
13.02.2018
15:27:07

yopp
13.02.2018
19:31:34
https://github.com/heewa/mongotime
О какая клёвая штука
Снимает currentOp и собирает стату по запросам

I saw
14.02.2018
07:25:58
Ребят, доброе утро
Никто не знает, как можно в mongoexport передать файлик в --query?
кто-нибудь как-нибудь обходит то что нужно запрос прямо в коммандной строке писать ?

Arthur
14.02.2018
07:29:20
Всем привет. Подскажите как узнать сколько монга использует оперативной памяти в текущий момент ?

Vlad
14.02.2018
07:36:18

Artem
14.02.2018
08:12:26
top
ну да, наверное самый простой способ
top, htop, atop и т.д.

Arthur
14.02.2018
08:22:14
спасибо

Artur
14.02.2018
11:16:59
Обновился с 3.2 до 3.4 но при старте выдает такое
в чем трабла может быть?

GNU/Docker
14.02.2018
11:18:26
аэ