@dba_ru

Страница 392 из 718
Alex
24.01.2018
08:22:26
Alexey чет как-то был слух, что MVCC в mssql реализовано через жопу (точнее через tempdb), из-за чего тупой переезд на постгрес таки ускоряет.

Alexey
24.01.2018
08:22:56
речь не про сокрость, а про space amplification. не бывает чудес

Alex
24.01.2018
08:23:17
ой, сорян, я не правильно прочитал :)

Alexey
24.01.2018
08:24:09
если переезд на постгрес даёт 100x меньший space amplification (а в постгресе с этим ДАЛЕКО не идеально, поверьте), то значит в MSSQL с этим совсем беда. и на это уже давно бы кто-то наступил

Google
Mark
24.01.2018
08:28:33
Смотря какие запросы...
В данном случае запросы вида ``select ... IFNULL(их штук двадцать)...IF.... join ....where` @mikhalken

Alex
24.01.2018
08:29:25
смотря какой джойн

lost
24.01.2018
08:29:41
нужен правильный join

Alex
24.01.2018
08:29:43
EXPLAIN запроса покажи

Mark
24.01.2018
08:32:52


Сам по себе он быстрый, как можно видеть. Но если их штук 600 накапливается, то все ядра в полке.

lost
24.01.2018
08:35:18
я бы посмотрел в сторону table_open_cache, open_files_limit, innodb_open_files

Alex
24.01.2018
08:35:26
их того что ты скинул вот вообще ничига не понятно

на тему скорости

хотя я не умею в мускуль :)

lost
24.01.2018
08:37:13
@MarkEg0rov в профайле можно посмотреть распределение по времени - что запрос делал больше всего

Google
lost
24.01.2018
08:38:45
https://dev.mysql.com/doc/refman/5.5/en/show-profile.html

Валерия
24.01.2018
08:38:46
Эм, в профайле? Это как?
сервис->SQL Server Profiler в SSMS*

Mark
24.01.2018
08:40:52
https://dev.mysql.com/doc/refman/5.5/en/show-profile.html
ВО, блин! Впервые на такое натыкаюсь. Интересненько

я бы посмотрел в сторону table_open_cache, open_files_limit, innodb_open_files
open_files_limit по умолчанию он по идее должен идти 1024. Запросов 600. Или судя из эксплайна каждый запрос открывает три таблицы => 600*3. Или я неправ?



Ilia
24.01.2018
08:54:05
да, я помню. на facebook какой-то крутой 1С-ник хвастался, что перелил данные из MSSQL в постгрес. и они у него ужались в 100 раз! Сто раз, Карл!
Процентов 80 я даю за то, что этот крутой 1С-ник просто не умеет вычислять размер данных, занимаемый в БД... Либо там, либо там.

В данном случае запросы вида ``select ... IFNULL(их штук двадцать)...IF.... join ....where` @mikhalken
Понятно. Запросы типа SELECT... Т.е. на чтение. НУ ТАК БЫ СРАЗУ И СКАЗАЛ, ЭТО ЖЕ СОВСЕМ ДРУГОЕ ДЕЛО!

lost
24.01.2018
09:04:54
можешь в доке погуглить как тюнится этот параметр

точнее последние два

в мускуле много ручек, которые тюнятся исходя от максимального кол-ва коннектов к железке

Mark
24.01.2018
09:09:29
можешь в доке погуглить как тюнится этот параметр
Да, я уже погуглил. Ща смотррю на количество оpened_tables. В каждой из баз, сейчас, когда всё хорошо, их под 200 открыто. А вот в глобальном статусе 30 миллионов. Не совсем могу всосать, откуда 30 лямов набежало

lost
24.01.2018
09:09:50
эта стата собирается за весь аптайм

на то и global

если там "opening tables" - это твой поциент

Google
lost
24.01.2018
09:24:02
опачки

процитирую классика

"ОТКЛЮЧИ КВЕРИ КЭШ НАХУЙ"

Anton
24.01.2018
09:25:15
Классик ща засмущается?

Mark
24.01.2018
09:25:59
"ОТКЛЮЧИ КВЕРИ КЭШ НАХУЙ"
Это из-за его фрагментации ебаной?

lost
24.01.2018
09:26:16
нет, дело не в фрагментации

там по-моему достаточно query_cache_size выкрутить в 0 и всё...

Mark
24.01.2018
09:27:45
Помню, как натыкался на хорошую статью по кешу этому. Кроме того, что всё с ним неоч, там показывалось, как можно высчитать фрагментацию его. И типо с этим тоже проблема

Alexey
24.01.2018
09:28:17
вот лучшая статья по кэшу этому: https://dom.as/tech/query-cache-tuner/

lost
24.01.2018
09:28:28
:DDDDD

А есть плагин?

я поставлю

Anton
24.01.2018
09:29:15
О, классик пришёл))))

Mark
24.01.2018
09:29:21
Такс. Получается, что в моей ситуации на CPU кеш этот вляет или он просто тормозит запросы

?

lost
24.01.2018
09:29:43
и то и то

Alexey
24.01.2018
09:30:40
надо бы кстати такую статью по adaptive hash index написать

а то Оракл что-то борзеет

Mark
24.01.2018
09:35:39
Слышал еще, что в 5.6 скуля с эти кешем вроде получше. Или пиздеж?

Ilia
24.01.2018
09:37:12
query chache ОТКЛЮЧАЙ!

Google
Ilia
24.01.2018
09:37:34
Это из-за его фрагментации ебаной?
ЭТО ИЗЗА ТОГО, ЧТО КЭШНАХУЙНЕНУЖЕН! (извините мой французский)

Слышал еще, что в 5.6 скуля с эти кешем вроде получше. Или пиздеж?
Ответь СЕБЕ на один вопрос: если твоё приложение посылать 20 раз ОДИН И ТОТ ЖЕ ЗАПРОС в MySQL, то кто его писал ? И что надо сделать?

ко?TEXHIK
24.01.2018
09:40:15
ага, щаз

Ilia
24.01.2018
09:40:30
Такс. Получается, что в моей ситуации на CPU кеш этот вляет или он просто тормозит запросы
Пока видно, что просто тормозит запросы. А на что значит "кладёт CPU в полку" ты так и не ответил.

Vladislav
24.01.2018
09:40:31
не хватает

Ilia
24.01.2018
09:41:41
Такс. Получается, что в моей ситуации на CPU кеш этот вляет или он просто тормозит запросы
Очень может быть, что ПОСЛЕ отключения кэша тебе сильно не полегчает. Тут уже приходи один такой... Или это ты и приходил ?

Mark
24.01.2018
10:02:04
lost
24.01.2018
10:03:15
Я склонен думать, что с циферками что-то не так, не может это никак не влиять на cpu

у тебя сервер не на святом духе работает всё-таки

Mark
24.01.2018
10:04:21
Ну, сорта нет, группировок в запросе нет. Жоин, IF, IFNULL и всё. Хз, блин.

Может, когда ему не хватает каких-нибудь table_open_cache, то начинает жрать

Alexey
24.01.2018
10:09:02
эти цифры берутся из getrusage(). ядро linux не обещает точной информации, там всё очень приблизительно и на коротких запросах вполне может оказаться 0

для точной инфы нужно смотреть в performance_schema

Mark
24.01.2018
10:11:32
для точной инфы нужно смотреть в performance_schema
А там разве есть детальная стата по конкретному запросу?

Ilya
24.01.2018
11:25:46
Можно ли автоматически делать записи в джоин таблице с ассоциацией мэни-ту-мэни? (sqlite)

Vladislav
24.01.2018
11:26:33
в плане автоматически? а как БД узнает, что с чем вам надо связать?

Alexander
24.01.2018
11:31:42
Коллеги есть вопрос. Разработчики придумали запрос содержащий критерий ‘text’ like table.column || ‘%’. Убрать его сейчас не получается. Можно ли каким-нибудь индексом его оптимизировать? База - PostgreSQL.

Ilya
24.01.2018
11:31:50
в плане автоматически? а как БД узнает, что с чем вам надо связать?
Ну вот например если есть юзер и коммент и таблица user_comment, это конечно не мэни-ту-мэни, но для примера подойдет. При создании коммента нужно писать обязательно 2 запроса: на создание коммента и на создание записи на связку?

Google
Ilya
24.01.2018
11:34:00
да, если в таблице комментариев нет юзера
У меня сейчас 3 запроса, на селект юзера (проверка существования) и 2 на создание. Можно как-то сделать if или как вообще проверяют другие?

Vladislav
24.01.2018
11:34:47
руками так, ORMы некоторые умеют из коробки иногда такие вещи

Ilya
24.01.2018
11:35:42
руками так, ORMы некоторые умеют из коробки иногда такие вещи
понял, спасибо. Ормы не уважаю, по крайней мере пока не разберусь в sql полностью)

Mark
24.01.2018
12:45:16
Посоны, в в mysql есть гипотетический варик сделать нереплицируемую бд мастером, указать слейв - и подождать пока данные сольются до полного синка?

Или я губу раскатал?

Alexander
24.01.2018
12:58:33
text — это поле?
text - это текст.

А поле справа.

ко?TEXHIK
24.01.2018
12:59:08
Чат, а скажите - возможно ли как-то в postgresql 9,6 воспользоваться индесами так, чтобы счетчик обращений не увеличился?

ко?TEXHIK
24.01.2018
13:08:38
встроеный постгресовский pg_stat_all_tables .idx_scan

Ilgiz
24.01.2018
13:09:32


Ilia
24.01.2018
13:11:18
Видимо, это показаны таблицы с записями...

Ilgiz
24.01.2018
13:12:22
это индексы в таблице, не могу понять именно разрывы что значит

аа понял

разрывы это указатель с узловой страницы предыдущего уровня

Страница 392 из 718