@MongoDBRussian

Страница 138 из 342
Алексей
26.10.2017
20:14:56
даже не знаю слышал ли я более странное предложение

Старый
26.10.2017
20:14:59
оценка iops для базы при выполнеии запроса... хм.
у меня есть запросы к mssql которые фактически кладут базу

Алексей
26.10.2017
20:15:18
у всех есть такие запросы.

yopp
26.10.2017
20:16:16
С таким подходом ты насчитаешь чушь полную

Google
yopp
26.10.2017
20:16:43
Потому что ты пытаешься определить размер абстрактного коня в абстрактной системе координат

Старый
26.10.2017
20:16:46
? а ещё у меня многие кодеры потребовали им поченить select count * у кассандры и аэроспайка

yopp
26.10.2017
20:17:18
Даже не коня, а его абстрактной проекции

Старый
26.10.2017
20:17:29
yopp
26.10.2017
20:18:08
Так не из этого исходить надо

Модели нужно строить

Взять срез реальных данных, гигов 100, залить в монгу и исследовать данные

Взять целевые параметры, типа числа потребителей, количества и типа запросов

Взять пиковые параметры, запас

Алексей
26.10.2017
20:20:09
не. всё фигня. требуй all flash на 40Tb

yopp
26.10.2017
20:20:16
Пфф

Алексей
26.10.2017
20:20:25
это под journal

yopp
26.10.2017
20:20:28
NVMe

Google
Алексей
26.10.2017
20:20:35
под данные еще 2 стойки

Старый
26.10.2017
20:20:47
Взять срез реальных данных, гигов 100, залить в монгу и исследовать данные
нет ещё данных, к тому же все данные должны быть подписаны разными ключами и конторами из списка их больше 16 тысяч

yopp
26.10.2017
20:21:07
Пиздец

К абстрактной архитектуре ещё а добавок.

Алексей
26.10.2017
20:21:43
о

я видел ответ на этот вопрос

yopp
26.10.2017
20:22:13
Старый
26.10.2017
20:22:30
?

Алексей
26.10.2017
20:22:33
не. у меня гдето было тз на эту тему

Старый
26.10.2017
20:22:37
30% тебе, 70% мне?
тюремоного срока?

Алексей
26.10.2017
20:24:18
"Время выполнения запросов зависит от параметров, не поддающихся надежной оценке на стадии проектирования"

вот. и нахуй послал. и еще раз вернутся!

чудо а не фраза

Igor
26.10.2017
20:26:00
А может кто-то подсказать (не так давно с монгой работаю, еще не освоился) - есть запрос, который возвращает грубо говоря {elements:[{...}, {...}, {...}]}, в то время как мне нужно - [{...},}{...},{...}]. Как это можно сделать?

yopp
26.10.2017
20:26:24
На клиенте выкусить

Igor
26.10.2017
20:26:49
На клиенте выкусить
Серьезно, больше никак? То есть монга не позволяет устранять излишние вложенности?

yopp
26.10.2017
20:28:43
Можно через AF сделать, но я смысла не вижу.

См

yopp
26.10.2017
20:30:28
Тьфу блин. Короче смотри там на выбор от projection до redact

Google
yopp
26.10.2017
20:30:33
Aggregation framework

yopp
26.10.2017
20:31:48
Но лучше либо избавиться от лишнего подокумента, либо кроить на клиенте

Igor
26.10.2017
20:33:24
Еще один вопрос - мне выдается частенько маппером всякая херня по типу { "$numberInt" : "1" }, { "$numberLong" : "1" } и прочее такое. Можно ли как-то заставить монгу проглатывать и выплевывать адекватные примитивы, или это со стороны фреймворка проблема?

yopp
26.10.2017
20:51:23
Со стороны фреймворка

Bson бинарный же

То что ты показываешь это расширенная json нотация bson

Igor
26.10.2017
20:53:20
То что ты показываешь это расширенная json нотация bson
Просто странно, учитывая то, что загоняю я определенно Json, такое видеть.

yopp
26.10.2017
20:56:07
Весь протокол и обработка внутри базы в bson. То что ты показываешь это проблема десермализации скорее всего

Bson бинарный формат, там тип задаётся 8 битами

Max
27.10.2017
13:27:30
@dd_bb привет! А подскажи, плиз. в лог монги активно пишутся строки типа 2017-10-27T06:17:25.916-0700 I COMMAND [conn26413] query dev_0.subid_cr_info query: { subscription_id: "59c777e14e8fb4f2ff8b45cd", subid_name: "subid1", clicks: { $gte: 100 } } planSummary: IXSCAN { subscription_id: 1, subid_name: 1, clicks: 1 } cursorid:307732170309 ntoreturn:0 ntoskip:0 keysExamined:101 docsExamined:101 numYields:6 nreturned:101 reslen:15921 locks:{ Global: { acquireCount: { r: 14 } }, Database: { acquireCount: { r: 7 } }, Collection: { acquireCount: { r: 7 } } } 105ms оно зачем это говорит? это какой-то лог долгих-кривых запросов, которые стОит передать девелоперам?

там в конце везде сколько-то ms, похоже на медленные запросы. так?

Aleksandr
27.10.2017
13:28:34
ну вон 105 мс у тебя запрос выполняется стоит оптимизировать

yopp
27.10.2017
13:28:37
Типа того.

Там нечего судя по всему оптимизировать. На 101 лукап ключа 101 документ.

Можно лимит приподнять

Сколько qps?

Max
27.10.2017
13:29:44
оно медленно изза диска, 100%

сек

Google
yopp
27.10.2017
13:29:59
Памяти добавьте значит

Max
27.10.2017
13:30:31
qps монгостатом же можно посмотреть?

yopp
27.10.2017
13:30:53
Да

Max
27.10.2017
13:32:23
1.2k ins 3k query 3.5k update 500 getmore 500 command наверное это оно :)

yopp
27.10.2017
13:32:39
А как часто в логи срёт?

Max
27.10.2017
13:33:38
да вот совсем активно ща замеряю, сек

yopp
27.10.2017
13:33:42
Но в целом это признак что на горячие данные не хватает памяти.

Max
27.10.2017
13:34:04
~50 в секунду

yopp
27.10.2017
13:34:37
2% запросов

Долейте памяти, если возможно.

Просто реплика?

Max
27.10.2017
13:36:19
спасибо, попробую диски в пиках до 70% io wait доходят. Да, просто реплика

подозреваю что аналитику сейчас какуюто тяжелую запустили

yopp
27.10.2017
13:36:45
Если бизнес логика позволяет читать с секондарей, то можно какие-то данные оттуда начать читать.

Max
27.10.2017
13:36:53
еще раз спасибо! пойду рисовать предложения владельцам.

yopp
27.10.2017
13:37:11
Из другой коллекции например

Max
27.10.2017
13:37:12
с реплики, afaik, много читается, но перепроверю.

yopp
27.10.2017
13:37:26
Экспортер воткни

Будет видно что в памяти живёт

Max
27.10.2017
13:38:28
экспортер в какой-нить прометеус?

Google
yopp
27.10.2017
13:39:19
https://github.com/db-ai/mongo_collection_exporter

Мой вот этот

Там уже для графаны даже шаблоны есть

Max
27.10.2017
13:40:10
Понял спасибо, сделаю.

Старый
27.10.2017
16:47:29
вот кстати

у кассандры, аэ сциллы есть лог в котором полная последовательность прихода и обработки данных

а есть он у монги, а то чтот туплю

про кластер пока читаю, чтобы поднять в докере

yopp
27.10.2017
23:51:05
у кассандры, аэ сциллы есть лог в котором полная последовательность прихода и обработки данных
В монге это Journal — атомарный лог операций относительно стораджа конкретной ноды. В случае с кластером есть oplog, это чуть более высокоуровневый лог операций, который реплицируется. Оплог работает даже если журнал выключен.

Stepan
29.10.2017
11:49:19
Народ, начал настраивать шардинг в монге. И не могу поднять mongos

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