
Павел
06.06.2018
16:15:58
кассандра при работе по схеме N/2 + 1 на запись ,и чтение N/2 гарантирует, что данные актуальны

Nick
06.06.2018
16:16:38
да в монге сильно по другому

Павел
06.06.2018
16:17:03
Насколько я понял, выбирается масте, а дальше она пишет на слейвы

Google

Павел
06.06.2018
16:17:11
ну верней по цепочке

Nick
06.06.2018
16:17:13
да

Павел
06.06.2018
16:17:36
не понятно, что будет если мастер упадет. в кассандре нечего страшного

Nick
06.06.2018
16:17:40
есть такое понятие как реплика сет, он состоит из одного мастера и остальные слейвы
пишем толкьо в мастер, и либо отвечаем сразу, либо дожидаемся что данные улетели на реплику, это по ссылкам выше write concern

Павел
06.06.2018
16:20:40
это я понял, так и на писал, по цепочке. Но падает мастер ,что дальше ?
вообще именно в этом случае кассандра конечно клевая, жаль монга так не умеет

Nick
06.06.2018
16:21:46
если у вас настроено все пессимистиечки, то один из слейвов станет масетром и работа продолжиться
без потери данных
если без всяких writeConcern и жруналирвоания, то при очень активной записи часть данных точно потеряется

Павел
06.06.2018
16:22:30
А для приложения это произойдет прозрачно?
естественно, в кассандре если писать 1 сервер и он падает, данные теряются

Nick
06.06.2018
16:23:04
вот тут сложно, по идее зависит от драйвера. но точно не скажу

Google

Павел
06.06.2018
16:31:40
похоже для записи нужно брать кассандру
нет
не хочу =(

Nick
06.06.2018
16:33:28
а что такого критично в записи у вас что нет возможности например выдать пользователю ошибку или повторить еще раз запись в базу?

Павел
06.06.2018
16:34:22
не в курсе, моного не планирует пойти по кассандра вей?

Nick
06.06.2018
16:35:37
неа, не вкурсе

Павел
06.06.2018
16:42:03
Была бы лучша db в мире =)

Nick
06.06.2018
16:49:15
а какие вообще проблемы с кассандрой, что ее не хочется брать?

Павел
06.06.2018
17:10:45
хотя, вроде добили возможно сохранять json правно не знаю, что там в вложенными объектами

Sergey
06.06.2018
17:40:35
Всем привет, есть те, кто работает с mongodb через nodejs?

yopp
06.06.2018
17:50:13

Павел
06.06.2018
17:50:33

yopp
06.06.2018
17:51:30
Да, но он будет в масштабе нескольких секунд, необходимых на выборы и повторное подключение всех клиентов
Автоматически

Gleb
06.06.2018
20:21:00
подскажите пожалуйста, использовал кто-нибудь mongo-connector для elasticsearch, есть ли какие подводные камни? смотрю коннектор больше не поддерживается официально MongoDB

Artem
07.06.2018
06:18:59
В принципе никаких подводных камней

Google

Данил
07.06.2018
08:39:27
Добрый день.
Подскажите когда я выполняю скрипт js в монгодб, где он выполняется, на стороне сервера или клиента монги?
В скрипте у меня выборка из бд и далее цикл который творит всякие манипуляции с данными и в конце отдаёт пользователю данные.

Yurii
07.06.2018
08:45:54

Данил
07.06.2018
08:48:33

Yurii
07.06.2018
09:00:42

Данил
07.06.2018
09:04:01
Это нода и модуль "mongodb"?
Не уверен что понимаю вопрос. Запуск производится с использованием самописного клиента через официальный драйвер к mongodb

Yurii
07.06.2018
09:07:18

Данил
07.06.2018
09:14:00

Yurii
07.06.2018
09:15:15

Данил
07.06.2018
09:16:55

Yurii
07.06.2018
09:17:32

Данил
07.06.2018
09:18:50

yopp
07.06.2018
10:21:40
https://twitter.com/MBeugnet/status/1004423166683381767
В десять раз дешевле. Интересно

Artem
07.06.2018
13:42:54
прикольно. но это только при использовании atlas-а. Не все будут имет позможность упарываться в облачное хранение. Или я не прав?

yopp
07.06.2018
13:45:10
Не знаю, но скорее всего ты прав :)

Artem
07.06.2018
13:46:56
мне кажется, это общая тенденция, размахивать заманухами в свои облачные сервисы. Oracle похожую стратегию проводит со своей database 18c

Google

yopp
07.06.2018
13:47:04
Зависит от latency и bandwidth твоего канала и оборудования которое у тебя ‘локальное’
Облака это opex, своё железо это capex
Никто не хочет в capex, все хотят в opex

Алексей
07.06.2018
13:48:10

yopp
07.06.2018
13:48:39

Алексей
07.06.2018
13:48:58
я не оч знаю зачем так. но мы были isp
наверное это роляет

yopp
07.06.2018
13:49:17
Вооот

Artem
07.06.2018
13:49:29
когда то мы имели беседу с чуваками из microsoft-а, за очень большой рюмкой чая, и они много чего порассказывали про облачные мифы))))))

yopp
07.06.2018
13:49:34
Да, есть черта после которой дешевле уже свою инфраструктуру содержать
Computing cloud, когда тебе просто вычислительную мощность дают это одна история. Тебе все ещё надо строить инфраструктуру вокруг.
А вот service cloud, другая история. Тот-же атлас — офигительно для старта. Пусть и кажется что дорого, но на деле они снимают УЙМУ проблем. Если посчитать затраты на содержание кластера своими силами, то выйдет дороже

Artem
07.06.2018
13:54:22
согласен

yopp
07.06.2018
13:56:09
А черту всегда лучше посчитать заранее, кстати. Чтоб понять когда пришла пора закладывать в capex затраты на замену атласа, на свою инфраструктуру.
Причём ничего не мешает сначала поехать на computing cloud, а потом на арендованное железо, а потом на своё железо в чужой стойке и в итоге на свой цод

Gleb
07.06.2018
13:58:54

Anton
08.06.2018
11:59:10
Всем привет! Помогите плиз
Есть коллекция projects.
Есть коллекция applications (отклики на проекты)
Applications имеет поле projectID (string)
Хочу вывести проекты со списком откликов, если есть. Делаю так:
$lookup: {
from: 'applications',
localField: '_id',
foreignField: 'projectId',
as: 'applications'
}
Не работает, так как в projectId - это строка (если сунуть туда ObjectId - работает). Как быть?

Oleg
08.06.2018
12:00:16
dbref
https://docs.mongodb.com/manual/reference/database-references/
должно подойти, если я правильно понял задачу

Google

Anton
08.06.2018
12:01:59
ну это переделка схему нужна. С существующей схемой никак не вытащить?

Oleg
08.06.2018
12:05:54
смысл этой агрегации, что localField и foreignField должны быть одного типа
а так у тебя выходит ObjectId и string
надо чтоб string string или ObjectId ObjectId
но возможно это как-то можно решить :) помог, чем знаю
гугл говорит отрицательно
https://stackoverflow.com/questions/41689349/how-to-convert-string-to-objectid-in-localfield-for-lookup-mongodb

Anton
08.06.2018
16:50:02

Peter
08.06.2018
17:11:47
Быстрый вопрос, $push в $group сохраняет порядок документов? к примеру я сначала делаю $sort: {name: 1} потом $group:{_id: null, result: {$push: ‘$$ROOT’}}

Max
08.06.2018
17:13:36
а кто-то знает, как получить/посмотреть в монге кол-во зашедуленых RangeDelete ?
Суть в том, что сейчас монга не двигает чанки из-за
Chunk move failed :: caused by :: ChunkRangeCleanupPending: can't accept new chunks because there are still 12 deletes from previous migration
и вот это количество бы как-то отслеживать и вытащить в мониторинг.
Есть возможность в монгу запрос всунуть?
в currentOp() видно один RangeDeleter, этого несколько маловато...