@MongoDBRussian

Страница 111 из 342
yopp
25.07.2017
17:18:31
украл, выпил, в банлист

а смысл?

Алексей
25.07.2017
17:19:02
ну ок :)

yopp
25.07.2017
17:19:39
вообще чот в телеграмме второй день дискотека, как в ирц

Google
yopp
25.07.2017
17:28:47
Оппа: https://jira.mongodb.org/browse/SERVER-27848

в 3.6 будут хинты для агрегаций!

Ruslan ?
25.07.2017
17:29:29
Ruslan
25.07.2017
17:32:39
Завтра попробую выставить. Хотя, конечно, мне хотелось глазами посмотреть что память действительно утекает и куда она утекает

yopp
25.07.2017
17:43:37
там есть cache usage per collection / per index

ну и активность кеша по коллекциям/индексам

Ruslan
25.07.2017
17:44:33
Да вот чет на проде страшновато что то непонятное подключать :)

yopp
25.07.2017
17:46:03
оно по своей сути делает три операции: listDatabase, listCollection и collStats. ну и ещё из local.oplog.rs читает последний и первый документ.

экспортер никуда не пишет, ей хватит clusterMonitor роли (как у mms), плюс listCollection на db: '', collection:'' и cluster: true и find в local.oplog.rs

о, сюда положу, пока до документации не добрался: #exporter #roles db.createRole({ role: "grafanaExporter", privileges: [ { resource: { db: "", collection: "" }, actions: [ "listCollections" ] }, { resource: { cluster: true }, actions: [ "listCollections" ] }, { resource: { db: "local", collection: "oplog.rs" }, actions: [ "find" ] } ], roles: [] }) db.grantRolesToUser(<username>, [ { role: "grafanaExporter", db: 'admin' }, { role: 'clusterMonitor', db: 'admin' } ])

Ruslan
25.07.2017
17:54:55
Класс. Спасибо

Sergey
27.07.2017
07:01:45
У меня есть mongoose схема Post для статей в блоге Как мне сохранять текст из textarea, чтобы выводить потом текст по абзацам ? 1) делать массив через split('\n') и сохранять в монго как массив строк(абзацев)? или 2) делать массив после получения текста из базы и передавать на страницу отдельно ?

Google
Alexey
27.07.2017
08:06:38
Сохранять текст с \n или жарить в редис и хранить ключи... И не в монге :). А вообще вопрос не по теме

yopp
27.07.2017
08:08:11
Хватит топить за редис

Alexey
27.07.2017
08:09:58
Это как вариант. Просто кусок html там хранить. Можно выбрать и другое хранилище - я работал с этим, мне понравилось

yopp
27.07.2017
10:03:03
Сохранять текст с \n или жарить в редис и хранить ключи... И не в монге :). А вообще вопрос не по теме
исходить их того что в монге лучше хранить так, как ты будешь читать. Т.е. необходимые трансформации лучше делать при вставке. Разбивка на параграфы не очень сложная трансформация. Если в дальнейшем «параграфы» останутся только эфемерная еденицей, то можно вообще хранить as is и разбивать на параграфы уже при чтении. Если параграфы будут использоваться шире чем просто «отобразить», то есть смысл подумать о том как именно они будут использоваться и исходя из этого выбрать наиболее эффективную схему. Массив строк или массив документов

Это как вариант. Просто кусок html там хранить. Можно выбрать и другое хранилище - я работал с этим, мне понравилось
Это чят про монгу, а не про редис. Если у тебя нет весомых аргументов почему для этой задачи лучше использовать другое хранилище, то не надо его совеовать. «Мне понравилось» не аргумент совершенно.

Ruslan
28.07.2017
08:13:20
Огонь, кеш помог

Видимо докер просвечивал память хоста как объем выделенной памяти

15 из 16 гб данных под кеш это нормально?

Не возникнет каких нибудь неочевидных проблем, что самой монге не хватит оперативной памяти под какие то нужды

При репликации, например

Avoid increasing the WiredTiger internal cache size above its default value - из доки

Пожалуй, плохая идея

Блин, вот возникает вопрос: почему?

Как то "просто избегайте этого" не очень убедительный аргумент

Max
28.07.2017
08:39:22
да потому что оно само отожрет сколько ей надо. В других случаях - если это какой-то контейнер, и реально памяти доступно меньше, чем видно в системе - тогда надо ограничивать верхний потолок. чтобы не выжрала больше, чем надо :)

yopp
28.07.2017
13:18:47
Блин, вот возникает вопрос: почему?
Потому что нет никакого толка

Google
yopp
28.07.2017
13:19:01
в кеше страницы без компрессии хранятся

и компрессия работает при сливании их на диск, а значит в дисковом кеше всё тоже самое, только сжатое

плюс самой монге нужна память, на всякое

если ты всё отдашь под кеш, всё будет очень плохо

в контейнере у процесса не совсем реальное представление о том какие ресурсы ему доступны, так что всегда надо размер кеша указывать руками

.
29.07.2017
07:30:46
Тут где-то проскакивала ссылка про новые фичи монги и там что-то про отслеживание изменений в коллекции было. Может кто напомнить?

Хочу сделать пабсаб

Nick
29.07.2017
10:03:51
https://emptysqua.re/blog/driver-features-for-mongodb-3-6/#notification-api

наверное это имелось ввиду

секция с Notification API

Slava
29.07.2017
10:29:48
Тут где-то проскакивала ссылка про новые фичи монги и там что-то про отслеживание изменений в коллекции было. Может кто напомнить?
нотификацию об изменениях коллекции можно и сейчас сделать(не дожидаясь версии 3.6), подписавшись на изменения оплога

Vladislav
01.08.2017
08:43:12
Всем привет. Есть небольшой вопрос. Я смогу искать по содержимому массива в mongo? К примеру у меня есть запись в которой одним из полей является массив id. Я смогу искать на наличие определенного id в записях -> массивах?

Вопрос отпал.

$elemMatch

lamo2k
01.08.2017
20:22:30
Ребята при агрегациях индексы используется?

В памяти отложилось что вроде нет, но это очень давние воспоминания.

Sergey
01.08.2017
20:28:20
Частично. Всякие сортировки/фильтры лучше делать сначала, потому что по ним индексы работают.

Roman
02.08.2017
00:00:32
Всем привет! кратких 2 вопроса: 1. если один документ ссылается на другой документ (типа foreign key), то изменение обеих документов будет атомарным? 2. возможно ли автоматически resolve'ить документ под идентификатором при query?

Slava
02.08.2017
08:39:18
1 - нет

Google
Max
02.08.2017
10:06:16
а подскажите, пожалуйста, кто сталкивался. внутри монги можно вместо директорий делать симлинки на другие диски? хочется определенные базы (пока только local с оплогом) вытащить на отдельный диск. если вместо $MONGO_HOME/local создать симлинк на другой диск - все ли будет ок? если да - то хочу представить ситуацию: второй диск недоступен, то есть имеем broken link на оплог. что произойдет при старте монги? она не встанет? спрашиваю с прицелом, чтобы не покорраптились данные.

yopp
02.08.2017
10:07:30
можно.

сделать тестовый стол и проверить нужные ситуации

Max
02.08.2017
10:08:31
спасибо. а про второй вопрос есть инфа? или лучше тесты позапускать перед тем как?

+

yopp
02.08.2017
10:08:38
для fopen нет разницы что открывать

Max
02.08.2017
10:08:39
спасибо!

yopp
02.08.2017
10:08:56
не забыть включить directoryPerXYZ

Max
02.08.2017
10:09:22
я сначала думал все-таки mount делать, но потом начнется - надо будет другие директории туда еще перенести, и тогда пляски с mount —bind ... ищу правильный вариант

не забыть включить directoryPerXYZ
да месяц занял переезд на dir per db + index per db :)

И вот сейчас часть нагрузки хочу на другие диски утащить. подбираю правильный вариант.

yopp
02.08.2017
10:10:48
правильный вариант: шардинг

Max
02.08.2017
10:11:54
я шардинг не осилю - данные внутри монги мне неизвестны, да и экспириенса, прям скажем, не хватает. шард кей правильно не соберу. а программеры что-то не торопятся, потому пока воттак приходится выкручиваться.

чем дальше - тем больнее будет. я помню.

yopp
02.08.2017
10:46:00
если нужно скейлить чтение — реплики и readPreference (с учётом требований к актуальности данных)

Vova
02.08.2017
11:50:56
чувствую я попал куда нужно...

Господа, вот такой вопрос, драйвер монги C#. Replica Set из 4х полноценных мемберов. БД 2 Гб из (по сути) бинарных чанков. Требуется всю прочитать (залоадить в память) как можно быстрее. Читаю с одной любой ноды (direct) в 1-5-10-12 потоков. Есть рост скорости чтения с пиком в 12 потоков (=и числу ядер). Дальше пытаюсь распаралелить чтение по всем нодам. Никакого ускорения. Ни при каких комбинациях. Проц загружается на 36-40%. Что узкое место?

Понятно, что "Домах Ландона" делают нативный шардинг. Но он дорогой. На каждую ноду по сути свою replica set. Мне только на чтение нужно и казалось бы - чтение из всех мемберов replica set в паралели даст выхлоп... а не даёт. Why? В чём м.б. затык?

Страница 111 из 342