
Nick
03.04.2018
09:08:48
а апдейты магически сами исполнятся?

Pachvarsh
03.04.2018
09:09:05

Nick
03.04.2018
09:09:10
это я еще не завел разговор о консистентности такого решения

Dmitriy
03.04.2018
09:09:13
Короче. У него в каждом документе коллекции есть список с вложенными документами, содержащими поле рейтинг (число). Ему нужно добавить в каждый вложенный документ списка новое поле со значением, равным поряковому номеру документа в этом списке при условии что он отсортирован по полю 'рейтинг' по убыванию
Фууууххх как-то так

Google

Pachvarsh
03.04.2018
09:09:52

Aleksandr
03.04.2018
09:10:06

Pachvarsh
03.04.2018
09:10:30

Nick
03.04.2018
09:10:46
через bulk
балк лишь уменьшает сетевые издержки, по своей логике это одиночные запрсоы упакованный в большой пакет, он производит ровно то же количество действий сколько и одиночные запросы

Aleksandr
03.04.2018
09:10:49

Pachvarsh
03.04.2018
09:11:34

Nick
03.04.2018
09:12:27
это отличается от батчей в привычных mysql

Aleksandr
03.04.2018
09:12:44
что бы махом?

Nick
03.04.2018
09:13:05
махом не получится, хабудьте это слово
махом можно толкьо у кучи документов обновить одинаковым занчением поле

Aleksandr
03.04.2018
09:13:24
ну, просто вы упоминали, что вот так

Google

Aleksandr
03.04.2018
09:13:41
глобально заменяя объект на объект

Nick
03.04.2018
09:13:58
что значит "глобально заменяя объект на объект"?

Aleksandr
03.04.2018
09:15:51
тю, туплю уже тоже, когда мы создаём дублирующий объект с нужными модификациями и потом присваиваем его значение оригинальному объекту. т.е.
objectTrue = {
"1" : "2"
}
objectFake {
"2" : "1"
}
objectTrue = objectFake
ну, всмысле, мы проведём определённые вычисления над парами оригинального объекта и будем их записывать в дублирующий объект. Затем просто одним махом присвоим его

Nick
03.04.2018
09:16:56
вы работаете с БД, извольте изъясняться в терминах БД. замена это удаление старого - вставка нового, либо обновление старого до состояния нвого

Aleksandr
03.04.2018
09:17:12
дрожащими шажками ступаю на кочки бекенд-болота осваивая работу с модулями в ноде и т.д.

Mikhail
03.04.2018
09:20:08

Aleksandr
03.04.2018
09:20:29
понимаете?

Nick
03.04.2018
09:20:34
больше скажу одинаковые термины в разных БД, фреймворках, ОС и т.д. могут означать крайне разные вещи и от контекста определяется что конкретно в данный момент подразумевается

Aleksandr
03.04.2018
09:20:55

Mikhail
03.04.2018
09:21:40

User ?
03.04.2018
09:22:10

Mikhail
03.04.2018
09:24:03

Aleksandr
03.04.2018
09:24:09
однако как то я дальше исполнения ванилы на беке не смотрел
и json документв, которые, на самом деле не совсем джейсон

Stepan
03.04.2018
09:25:33
К чему ванила ?

Google

Stepan
03.04.2018
09:25:54
чат по монге, тут люди разные ЯП используют

Aleksandr
03.04.2018
09:27:22
К чему ванила ?
ну, например я не хочу палить алгоритм. Копипастеру достанется лишь результат (на ходу придумал)

User ?
03.04.2018
09:27:45
Не понял о чем вы)

Stepan
03.04.2018
09:27:50
никто не понял

Aleksandr
03.04.2018
09:28:03
вооот, видите))
значит всё ок, дальше не будем эту тему
давайте про ЯП

Stepan
03.04.2018
09:29:23
не получится, чат по бд, яп - оффтоп

Dmitriy
03.04.2018
09:29:59
о! А как насчет
https://docs.mongodb.com/v3.2/reference/operator/aggregation/redact/#pipe._S_redact
???
Для решения той задачи с рейтингами

Viktor
03.04.2018
09:30:35
Добрый день, кто-нибудь akka.net и персистенс плагин для монги использует? Насколько оно стабильно и продакшен реди?

Aleksandr
03.04.2018
09:30:43
для чего реализованна возможность возврата пользовательских JavaScript-функции? Например

Dmitriy
03.04.2018
09:32:49

Viktor
03.04.2018
09:33:02

Dmitriy
03.04.2018
09:33:22
зачем?
там транзакции, что улучшит персистенс

Viktor
03.04.2018
09:33:29
что за бред?

Pachvarsh
03.04.2018
09:49:27

Dmitriy
03.04.2018
09:56:57
Я сам впервые увидел это оператор
пока что не представляю как его применить

Oleg ?
03.04.2018
12:03:55
Ребят привет. есть монга 3.2 РС. надо удалить 13 миллионов записей. через bulk лучше делать ? коллекция не capped

Nick
03.04.2018
12:05:29
если по одному то хоть как делай долго будет

Google

Oleg ?
03.04.2018
12:05:55
что по одному ?

Nick
03.04.2018
12:06:11
удалять

Oleg ?
03.04.2018
12:07:16
хочу просто по условию {lt: timestamp}
все данные
но как то долго все равно висит и в итоге сессия ssh дропается :)

Nick
03.04.2018
12:09:10
так просто отправляете задание и оно там крутится
если глянуть в db.currentOp() после переподключения, наверняка она там все еще выполняется

Oleg ?
03.04.2018
12:10:26
да, действительно
но все же, никак быстрее это не сделать ?
суммарно получается уже 40 мин удаляется
и осталось еще там 12129949
документов

Nick
03.04.2018
12:12:45
если грубо то 13кк доков - 13кк операций записей, я верю в монгу и оно сгруппирует скажем процентов 80%, это гдето 2кк реальных операций записи, обычный хдд с его 150-200 расчетными IOPs будет делать это около 10к секунд - это минимум 3 часа

Oleg ?
03.04.2018
12:13:25
хм

Nick
03.04.2018
12:13:30
и это если ест ьиндекс
без индекса добавляй полную вычитку данных
на каждый док + операция чтения

Oleg ?
03.04.2018
12:13:55
по коллекции этой есть индекс
понял сейчас, Спасибо за объяснение

Nick
03.04.2018
12:17:22
вообще советую глянуть не запущено ли несколько операций удаления и кильнуть лишние

Google

Nick
03.04.2018
12:17:29
а лучше все и запустить еще раз

Oleg ?
03.04.2018
12:28:38
а как можно кильнуть ? по opid ?

Nick
03.04.2018
12:28:52
db.killOp()
и туда opid

Dimanius851
03.04.2018
14:04:10
всем привет, меня зовут Дима, и у меня разрешает создавать объекты в базе с одинм и тем же значением поля, у которого стоит unique: true

Artem
03.04.2018
14:14:08
Эм... а по русски?

Dimanius851
03.04.2018
14:30:02
стоит unique: true в схеме у поля phone, я создаю объекты с одинаковыми телефонами, не ругается

Nick
03.04.2018
14:33:06
а как вы создаете объекты?

Yurii
03.04.2018
15:01:15

Dimanius851
03.04.2018
15:54:46
понял проблему, а вот такой вопрос, абстрактный

Nick
03.04.2018
15:57:46
а что эти даты значат?
если вам эти даты нужны как отдельные сущности, тогда храните

Dimanius851
03.04.2018
16:02:35
по крайней мере будет порядок сортировки, а значит нужны id, и может будет какой-то текст к ним

Ivan
03.04.2018
16:04:21
Подскажите, в коллекции 2 миллиона записей, фильтр по полю с индексом - 400к записей. Экспорт этого дела на сервере - 50 Мб и по времени 35 секунд. Куда смотреть в ускорении этого дела?

Nick
03.04.2018
16:17:33
а всего 2млн данных сколько места занимают?
а смотреть всегда на системные ресурсы - диски цпу память сеть

yopp
03.04.2018
16:23:02

Ivan
03.04.2018
16:23:46
mongoexport, напрямую, про язык пока даже не говорю