
yopp
02.04.2017
15:45:49
но ты меня натолкнул на очень-очень-очень интересную мысль

Алексей
02.04.2017
15:45:51
на мой взгялд с ними проблема простая мелкие запросы основной трафик базы. они обычно укалыдываются в < 3ms. а если они вдруг подрастают до 5 ms. всё начинает быть плохо

yopp
02.04.2017
15:46:14
очень интересную :D

Алексей
02.04.2017
15:47:16
ну есть мысль что для запросов которые top5 по колву надо предлагать выносить это в более дешевые кеши, конечно если такая возможность есть

Google

yopp
02.04.2017
15:47:40
пока не будет возможности шардить индексы — смысла не имеет
не понимаю почему после перехода на WT они не сделали это первым делом

Алексей
02.04.2017
15:48:03
я имеею ввиду за пределы монги вообще

yopp
02.04.2017
15:48:08
вынеси запросы на отдельный сервер, с кучей памяти и явно в клиенте выбирай сервер для исполнения
(в смысле отдельная реплика)
с нулевым приоритетом

Алексей
02.04.2017
15:49:00
ну мне иногда странно когда на базу идет нагрузка на коллекцию из 50 элементов. а запросов туда идет ацкий ад сколько

yopp
02.04.2017
15:49:14
коллекция из 50 элементов будет 100% висеть в памяти
и работать это будет ровно как твой редис

Алексей
02.04.2017
15:49:33
будет висеть да.
может я просто не знаю чего. но когда у мен ятот раз была беда с одним отсутствующем индексом у меня ацццки все висело.
я зачем то в этот момент решил что лучше меньше запросов в монгу.

Google

Slava
03.04.2017
10:38:29
всем привет. подскажите пожалуйста в какую сторону копать, если сервер с монгой отжирает более 90% CPU, а вернее это проблема сервера или кривых запросов?
Используем монгу 3.2.7, праймари сервер, это хетцнеровская виртуалка CX50 (4 vCores, 16GB RAM, 400GB SSD).

yopp
03.04.2017
10:41:46
Вангую кривые запросы. влючить профайлер, посмотреть что в slowqueries

Slava
03.04.2017
10:43:29
да, slowqueries есть над чем поработать, спасибо.

Roman
03.04.2017
10:50:10
@dd_bb а вот чем ты свои монги бэкапишь?

yopp
03.04.2017
10:50:27

Dmitry
03.04.2017
11:18:32
господа, решил я значится сделать авторизацию в монге по юзеру паролю, достаточно ли просто запускать mongod —auth и создать в конкретной базе юзера с правами readWrite?


yopp
03.04.2017
11:24:55
https://docs.mongodb.com/manual/tutorial/enable-authentication/
Там по шагам всё
УИИИИИИ https://jira.mongodb.org/browse/SERVER-19758
Resolution: Fixed
Fix Version/s: 3.5.5
В 3.6 будет наконец стата по аггрегациям нормальная
Слушайте, я же вот не ебусь в глаза.
https://docs.mongodb.com/manual/reference/method/sh.updateZoneKeyRange/#compound-shard-key
Там есть (вызывающий теоретические вопросы, но мы это опустим) такой пример:
sh.updateZoneKeyRange(
"exampledb.collection",
{ a : MinKey, b : 1 },
{ a : MaxKey, b: 10 },
"alpha"
);
sh.updateZoneKeyRange(
"exampledb.collection",
{ a : MinKey, b : 10 },
{ a : MaxKey, b: 20 },
"beta"
);
mongos> sh.updateZoneKeyRange(
... "foobar.rangefail",
... { a : MinKey, b : 1 },
... { a : MaxKey, b: 10 },
... "cold"
... );
{ "ok" : 1 }
mongos> sh.updateZoneKeyRange(
... "foobar.rangefail",
... { a : MinKey, b : 10 },
... { a : MaxKey, b: 20 },
... "hot"
... );
{
"code" : 178,
"ok" : 0,
"errmsg" : "Zone range: { a: MinKey, b: 10.0 } -->> { a: MaxKey, b: 20.0 } on hot is overlapping with existing: { a: MinKey, b: 1.0 } -->> { a: MaxKey, b: 10.0 } on cold"
}
mongos> db.runCommand("buildInfo")["version"]
3.4.3
При этом в протоколе такого примера нет, в js тестах такого примера нет, в cpp тестах такого примера нет.


Sergey
03.04.2017
16:19:40

yopp
03.04.2017
16:20:24
Вот суки
Лучше бы спеки нормально отредактировали: https://github.com/mongodb/specifications
The CollectionCloner then just runs find and getMore requests on the sync source repeatedly until it fetches all of the documents.
А кто-то помнит, в mmap у курсора как изоляция обеспечивалась при getmore?

Google

yopp
03.04.2017
16:49:16
В WT с CoW всё понятно, курсор открылся в одной сессии, сессия видит только свою версию дерева страниц. Пока открыта сессия, страницы не попадают в GC.
https://codewithintent.com/how-to-secure-mongodb/ /cc @stefanthegreat
Если у вас ещё не задеплоена аутентификация в монгу — идите и задеплойте.

Sergey
04.04.2017
18:45:33
ещё есть такие?

Alex
04.04.2017
18:48:32
Тысячи их

redbeard
04.04.2017
18:49:28
ога, незадеплоенных

yopp
04.04.2017
18:49:49
А, да, если вы считаете что раз у вас монга в мир не смотрит, значит это не для вас. Именно для вас.

Dmitry
05.04.2017
01:11:09

Dmitrij
05.04.2017
08:51:05
Всем привет, подскажите пожалуйста как реализовать систему диалогов в mongo?

yopp
05.04.2017
09:07:40
А причём тут монга?

GNU/Docker
05.04.2017
09:09:01
Я абсолютно не понял вопрос.

Dmitrij
05.04.2017
09:11:12
я хочу на монге реализовать систему сообщений с потдержкой диалогов, и не очень бы хотелось хранить отдельно коллекцию дталогов и коллекцию сообщений, думаю может кто знает правильное решение этого вопроса

Dmitry
05.04.2017
09:12:59
господа все мучает вопрос: помню раньше когда ставишь себе какую-нить joomla она в MySQL создает рандомно чуть символов и к названию базы дописывает. Что-то это было связано с секурностью, нужно ли делать точно так же в монге?
префикс - вот как это называлось

yopp
05.04.2017
09:14:21
"listDatabases"

Алексей
05.04.2017
09:15:11
а это для шаред хостингов было
что бы на одну муську можно было 5 сотен джумл поставить

Google

Dmitry
05.04.2017
09:15:49
тобишь вообще не нужно это для монги?

yopp
05.04.2017
09:16:01
нет, вообще не нужно

Dmitry
05.04.2017
09:16:29
я в монге новичок

Алексей
05.04.2017
09:17:13
монга тут не причем

yopp
05.04.2017
09:17:24
почитай, у монги очень хорошая документация и нормальные туториалы

Алексей
05.04.2017
09:17:46
и даже крутые видяшки с обучением

yopp
05.04.2017
09:17:55
в университете?

Dmitry
05.04.2017
09:40:27
Ребят, я покурю, но чатик на то и чатик)
Чтобы оперативно найти информацию

GNU/Docker
05.04.2017
09:41:07
А я думал документация для этого...

yopp
05.04.2017
09:41:40

Slava
06.04.2017
07:49:03
привет. подскажите насколько далеко или близко от правды вот такая фраза(коллега выпалил):
если индекс в документе создается на поле, которое всегда содержит разные значения, то вставка документа в коллекцию будет намнго медленне, чем
если создать индекс на поле значения которого не всегда разные.
В доке по индексам WT ничего похоже не удалось найти.

Dmitrii
06.04.2017
08:01:50
проверь на правктике, за одно и нам расскажешь

Aleksandr
06.04.2017
08:03:08
народ, а монга умеет искать в связанных документах?
к примеру, есть коллекция заказов, у которой есть ссылка на владельца заказа и исполнителя заказа (обе сущности ссылаются на коллекцию контрагентов)
как мне получить к какой группе контрагентов относится исполнитель (поле group_id у коллекции контрагентов)?
а точнее сделать выборку по заказам, у которых покупатели относятся к определенной группе

yopp
06.04.2017
08:09:10

Slava
06.04.2017
08:10:16
вот, я тоже самое сказал, что это хрень какая-то, а коллека аргументировал, что так как значения всегда разные у нас будет большая глубина дерева

Google

yopp
06.04.2017
08:11:08
Кек
И?

Slava
06.04.2017
08:12:11
а если у нас значение не всегда разные, тот тут глубина маленькая и вставка будет быстрее

yopp
06.04.2017
08:12:18
А какая разница какая глубина дерева?

Slava
06.04.2017
08:13:17
якобы, чем глубже дерево, тем "дольше" будет вставлятся новый элемент в него

yopp
06.04.2017
08:13:30
Почему?

Slava
06.04.2017
08:14:55
вот внятный ответ он чет не смог дать

yopp
06.04.2017
08:16:12
Даже если там есть разница, на фоне всего остального она будет совершенно не заметна. Но сделай бенч, да.
Вообще неселективный индекс — плохо.

Alex
06.04.2017
09:46:20
ну тут вопрос что надо быстрая вставка или быстрое чтение имхо

yopp
06.04.2017
09:46:42
потому что io будет дороже чем вся эта история с балансировкой дерева
парсинг и анализ bson
и вот это всё