19:53:14 From Sergey : Добрый вечер) 19:53:41 From agapov : добрый вечер 19:54:36 From Andy : привет, модная гарнитура. 19:55:24 From Михаил : + 19:55:24 From Sergey Gusarov : + 19:55:26 From Dmitry Zolotarev : + 19:55:26 From Andy : да) 19:56:21 From Andy : 1 минуту. 19:56:23 From Dmitry Zolotarev : да 19:56:24 From agapov : было дело 19:56:29 From i.perov : Угу 19:57:21 From Sergey : на сколько критично опаздывать к сдаче? 20:01:42 From Sergey Gusarov : Добрый вечер. 20:01:47 From Sergey Gusarov : + 20:01:48 From Alexey Kryachko : + 20:01:48 From Vitaly Yushkevich : + 20:01:48 From Dmitriy Shitikov : + 20:01:48 From Kirill Amurskiy : Добрый вечер 20:01:49 From Kirill Amurskiy : + 20:01:49 From agapov : + 20:01:51 From Dmitry Zolotarev : + 20:01:52 From a.khalilov : + 20:01:53 From Владимир Елхин : + 20:03:25 From Kirill Amurskiy : а почему новые не используем? 20:03:27 From Kirill Amurskiy : ясно 20:05:27 From Vitaly Yushkevich : А на пачку предыдущих вопросов (с предыдущего занятия по индексам) когда примерно ждать ответы? :) 20:06:03 From Vitaly Yushkevich : Спасибо! :) По физике гуглится плохо :( 20:06:24 From Kirill Amurskiy : В исходниках Postgres должно быть достаточно подробно) 20:06:40 From Vitaly Yushkevich : Петя Зайцев? 20:09:53 From Vitaly Yushkevich : А Saga в рамках курса будем же рассматриввать? 20:12:22 From Kirill Amurskiy : slow log? 20:12:30 From Kirill Amurskiy : что это угу? 20:12:48 From Vitaly Yushkevich : а у Postgres стабильный план запроса? Или примерно такая же ситуация? 20:14:07 From Kirill Amurskiy : - 20:14:13 From Dmitriy Shitikov : - 20:14:16 From Vitaly Yushkevich : - 20:14:16 From Alexey U : - 20:14:17 From Владимир Елхин : - 20:14:17 From Михаил : - 20:14:18 From Alexander Bogushov : - 20:14:18 From Леонид Черненко : - 20:14:19 From agapov : - 20:14:19 From Sergey Gusarov : - 20:14:20 From Михаил : - 20:14:21 From Aleksey : - 20:14:22 From Юрий Монзиков : - 20:14:24 From Dmitry Zolotarev : - 20:15:32 From agapov : встречали полнотекстовый поиск мускула в проде? 20:15:47 From Vitaly Yushkevich : Я встречал лет 10 назад :) 20:15:54 From Александр Филиппенко : Я встречал) 20:16:04 From Михаил : плохое решение 20:16:08 From Vitaly Yushkevich : работало ) но тогда альтернатив особо не было 20:16:23 From Vitaly Yushkevich : Ну сравнивать с текущими возможностями не корректно 20:16:23 From Леонид Черненко : Если по имени пользователя искать, а пользователей >5M 20:16:24 From Александр Филиппенко : То был сайт на Битриксе, работало куда лучше чем его кастомный поиск 20:16:29 From Vitaly Yushkevich : тогда и php был 5.2 :) 20:16:30 From Александр Филиппенко : Морфология есть 20:16:44 From Sergey Gusarov : в постгри всё хорошо ;) 20:16:45 From Vitaly Yushkevich : морфология по моему есть, но она слабо кастомиться 20:17:16 From Vitaly Yushkevich : Типа синонимы уже не воткнуть и тд. Но я не джедай по нему. Могу не знать. Последние годы мы ES / sphinx тоже используем. 20:17:21 From Леонид Черненко : Как вы будете искать в MySQL по колонке имени пользователя, если пользователей >N миллионов? 20:17:47 From Леонид Черненко : Их нет на слайде? ) 20:17:48 From Vitaly Yushkevich : главное не через like %_% :) 20:17:49 From Александр Федотов : Давайте после занятия с этими вопросами не особо по теме 20:18:01 From Михаил : + 20:18:14 From Александр Филиппенко : ну был конкретный кейс что в магазине ювелирки по запросу "кол" старый поиск выдавал все колье, но ни одного кольца. Я перевёл поиск на full text mysql (он только появился), всё норм заработало 20:19:03 From Леонид Черненко : +++, индекс MySQL fulltext вполне годный в проде 20:20:38 From Alexey Kryachko : + 20:20:40 From Михаил : + 20:20:40 From Владимир Елхин : + 20:20:41 From Леонид Черненко : + 20:20:41 From Dmitriy Shitikov : + 20:20:42 From Vitaly Yushkevich : + 20:20:43 From Aleksey : + 20:20:43 From Alexey U : + 20:20:43 From i.perov : + 20:20:53 From Kirill Amurskiy : это уникальный индекс? 20:20:59 From Kirill Amurskiy : (на примере) 20:21:15 From Kirill Amurskiy : но в примере все значения уникальные? 20:21:25 From Kirill Amurskiy : ясно 20:22:19 From Kirill Amurskiy : сократить количество обращений к диску 20:22:19 From Vitaly Yushkevich : Io дороже 20:22:22 From agapov : из предыдущей лекции - много операций чтения 20:22:29 From Alexander Bogushov : ддолго читать 20:22:30 From Александр Филиппенко : придётся делать много случайных чтений с диска 20:22:30 From Sergey : Снизить нагрузку на диск 20:22:31 From Леонид Черненко : Чтобы уменьшить количество обращений к диску 20:22:34 From Aleksey : потому что чтение дороже 20:22:38 From Юрий Монзиков : не научились читать дешево 20:23:38 From Vitaly Yushkevich : А по схеме вопрос - почему ссылка на данные индекса хранятся в следующем блоке, а не в текущем? Так же доп операция получается 20:23:48 From Kirill Amurskiy : я как раз об этом спрашивал 20:23:50 From Vitaly Yushkevich : Больше данных в каждом блоке 20:23:53 From Леонид Черненко : потому что элементов в блоке больше 2 20:23:53 From Dmitriy Shitikov : ссылки между узлами? 20:23:55 From Александр Филиппенко : сслыки на соседние блоки, 20:23:56 From Kirill Amurskiy : 11 дублируется в листе 20:23:56 From Юрий Монзиков : веток много 20:23:56 From Ивченков : Указатели на соседние блоки? 20:23:56 From Александр Федотов : Связи между нодами 20:23:56 From Михаил : стрелки к соседям 20:23:56 From Dmitriy Shitikov : на одном уровне 20:23:57 From agapov : ссылка на данные, а не данные? 20:24:01 From Sergey Gusarov : есть переходы 20:24:22 From Kirill Amurskiy : вроде же b+ не об этом 20:24:28 From Kirill Amurskiy : нам на предыдущей говорили 20:24:58 From Vitaly Yushkevich : Про это не рассказывали на прошлой лекции :( Но сегодняшняя теория выглядит более правильной 20:25:08 From Kirill Amurskiy : вот это и BTree тоже есть, т.к. без этого не уникальный индекс будет неэфективный 20:25:15 From Vitaly Yushkevich : А по схеме вопрос - почему ссылка на данные индекса хранятся в следующем блоке, а не в текущем? Так же доп операция получается 20:25:18 From Vitaly Yushkevich : Вот тут по примеру 20:25:23 From Vitaly Yushkevich : Индекс 11 20:25:24 From Kirill Amurskiy : Вооот 20:25:27 From Sergey : так мы же еще на верхнем уровне выберем ветку, зачем еще между ними искать? 20:25:29 From Kirill Amurskiy : Это как раз о И+ 20:25:32 From Vitaly Yushkevich : С него ссылка на блок данных 20:25:32 From Kirill Amurskiy : B+ 20:25:34 From Vitaly Yushkevich : где 5-9 20:25:37 From Vitaly Yushkevich : Но нет 11 20:25:39 From Vitaly Yushkevich : 11 в блоке справа 20:25:44 From Kirill Amurskiy : можно звук? 20:25:44 From Sergey : Понял! 20:25:50 From Vitaly Yushkevich : То есть нам нужно сделать смещение на соседний блок и там найти 11 элемент 20:25:53 From Kirill Amurskiy : сказать вслух 20:26:55 From agapov : https://i.stack.imgur.com/l6UyF.png 20:27:17 From agapov : вроде подтверждает сказанное 20:29:36 From Михаил : + 20:29:37 From Vitaly Yushkevich : не совсем :) 20:29:38 From Alexey U : + 20:29:38 From Леонид Черненко : + 20:29:42 From Dmitry Zolotarev : - 20:29:48 From Vitaly Yushkevich : У меня на композитных ключах особенно вопросы 20:30:56 From Александр Филиппенко : Кстати да, непонятно как композитные индексы работают 20:30:59 From Sergey Gusarov : вопрос изначально был, как помню, скорее про то, как в файлах хранятся данные и индексы. 20:31:10 From Kirill Amurskiy : вторичного - это произвольного в смысле? 20:31:26 From Vitaly Yushkevich : это не PK 20:31:38 From Kirill Amurskiy : ну т.е. любой индекс кроме PK 20:31:46 From Vitaly Yushkevich : Вторичный - это не Primary Key 20:32:30 From Kirill Amurskiy : это значит, что он в конце будет обязательно проходить по дереву Primary Key??? 20:33:34 From Kirill Amurskiy : Ну вопрос в том, что он пройдет по дереву вторичного ключа, найдет элемент, возьмет его первичный ключ, пойдет в индекс первичного ключа и будет искать там? 20:34:05 From Kirill Amurskiy : понял 20:34:14 From Vitaly Yushkevich : + 20:34:20 From Леонид Черненко : нет, что такое кластерный непонятно 20:34:51 From Kirill Amurskiy : а если данных много и они не влазят в страницу памяти? 20:34:52 From Леонид Черненко : кто они? 20:35:06 From Kirill Amurskiy : ну условно строка занимает 20 КБ 20:35:09 From Леонид Черненко : + 20:35:31 From Леонид Черненко : ок 20:35:51 From Kirill Amurskiy : т.е. могут быть всякие оптимизации 20:35:54 From Леонид Черненко : а если PRIMARY по какому-нибудь CHAR? 20:36:01 From Леонид Черненко : UUID 20:36:13 From Александр Филиппенко : а поля типа text не отдельно хранятся? 20:36:19 From Kirill Amurskiy : главное чтобы не Bool)) 20:36:35 From Kirill Amurskiy : 2 строки) 20:36:37 From Vitaly Yushkevich : 2 значения ) 20:36:47 From Михаил : поиск будет быстрым ) 20:37:30 From Vitaly Yushkevich : Умеет искать префиксы 20:38:59 From Vitaly Yushkevich : + 20:38:59 From Alexey U : + 20:39:00 From Леонид Черненко : + 20:39:00 From Александр Филиппенко : + 20:39:01 From Dmitriy Shitikov : + 20:39:04 From Aleksey : + 20:39:09 From Dmitry Zolotarev : + 20:39:10 From agapov : + 20:39:11 From Ивченков : + 20:39:11 From Alexey Kryachko : + 20:39:12 From Alexander Bogushov : + 20:39:12 From a.khalilov : + 20:39:13 From Kirill Amurskiy : + 20:39:13 From Михаил : + 20:39:14 From Sergey : на прошлом это проходили 20:39:15 From Anton : + 20:39:15 From Alexey Kirimov : + 20:39:25 From Sergey : + 20:39:27 From Михаил : + 20:40:43 From Kirill Amurskiy : как строки 20:40:58 From Kirill Amurskiy : а строки не так? 20:41:12 From Kirill Amurskiy : ну ок 20:41:16 From Александр Филиппенко : о! Очень актуальная информация) 20:41:19 From OTUS Онлайн-образование : A < AB < ABC < ABD 20:41:20 From Kirill Amurskiy : (по буквам просто вроде тоже по порядку) 20:41:33 From Александр Филиппенко : про порядок 20:41:40 From Kirill Amurskiy : ясно 20:41:50 From Александр Филиппенко : мне как раз для задачи нужен индекс по 3 колонкам 20:41:55 From Kirill Amurskiy : а составной индекс не так будет себя вести? 20:41:59 From Kirill Amurskiy : (если Null) 20:42:08 From Kirill Amurskiy : а как?) 20:42:18 From Kirill Amurskiy : вот если null третий элемент 20:42:24 From Vitaly Yushkevich : а потом делает union по нему? 20:42:34 From Kirill Amurskiy : если будет меньше, то как строки) 20:43:01 From Михаил : это от БД зависит - может быть настройка как работать с NULL 20:43:15 From Kirill Amurskiy : ясно, collation - это важно 20:43:31 From Vitaly Yushkevich : можно будет потом разнице еще раз между многоколоночным индексом и составным (кластерным) 20:44:12 From Vitaly Yushkevich : ок. Тогда разницу между составным и кластерным :) 20:44:49 From Ивченков : А много это сколько? 20:45:42 From Kirill Amurskiy : угу 20:46:58 From Vitaly Yushkevich : Вроде да 20:47:01 From Vitaly Yushkevich : по физике только вопрос 20:47:05 From Vitaly Yushkevich : Кк хранится :) 20:47:07 From Ивченков : А почему это важно, что данные лежат рядом друг с другом? Чтение быстрее? 20:47:47 From Ивченков : post_id,comment_id:) 20:48:31 From Kirill Amurskiy : откройте java vs dotnet, там будет достаточно))) 20:49:10 From Kirill Amurskiy : postId - внешний ключ 20:49:44 From Vitaly Yushkevich : селективность 20:49:48 From agapov : по посту по-любому поииск будет 20:49:49 From Kirill Amurskiy : потому что коменты нужны для одного поста вместе 20:49:50 From Sergey Gusarov : составной отбор сначала по главной сущности, потом уже детальный 20:49:50 From Ивченков : Все комментарии одного поста будут рядом лежать 20:49:53 From Sergey : Все рядом 20:49:54 From Леонид Черненко : Чтобы загрузить сразу все комментарии одного поста 20:50:07 From Vitaly Yushkevich : В смысле физически на диске? 20:50:15 From Kirill Amurskiy : т.е. получается "составной первичный ключ" 20:50:33 From Kirill Amurskiy : у которого, ключевое, первая часть - это postId 20:51:12 From Леонид Черненко : Так вот зачем составной первичный ключ нужен... Не знал этого 20:51:20 From Kirill Amurskiy : мощь 20:51:45 From Alexey Kryachko : Партицирование в MySQL тоже только при составном первичном ключе возможен. 20:51:46 From agapov : автоинкремент на составном ключе норм зайдёт? 20:52:35 From Kirill Amurskiy : а вот по поводу сортировки, как это происходит с точки зрения индексов? 20:52:45 From Kirill Amurskiy : ок 20:53:45 From Vitaly Yushkevich : + 20:53:46 From Ивченков : + 20:53:47 From Kirill Amurskiy : + 20:53:48 From Alexey Kryachko : + 20:53:49 From Михаил : + 20:53:49 From Александр Филиппенко : агрегатные функции для покрывающих индексов работают? 20:53:51 From Sergey : + 20:53:51 From Alexander Bogushov : + 20:53:56 From Dmitry Zolotarev : + 20:54:07 From Леонид Черненко : то что с диска вообще не будет чтения? 20:54:13 From Леонид Черненко : при покрывающем 20:54:27 From Леонид Черненко : ок 20:54:28 From Vitaly Yushkevich : Не будет дополнительного 20:54:43 From Ивченков : А данные тоже по возможности в оперативке хранятся? 20:55:17 From Vitaly Yushkevich : mysql по моему буфера имеет («кэш»), но в основном скидывает 20:58:08 From Kirill Amurskiy : - 20:58:08 From Ивченков : - 20:58:09 From Vitaly Yushkevich : - 20:58:13 From Dmitry Zolotarev : - 20:58:17 From Alexander Bogushov : - 20:59:00 From Kirill Amurskiy : видимо из размера страниц получает 20:59:34 From Vitaly Yushkevich : filtered что тут означает? 21:00:04 From Vitaly Yushkevich : Это в %? 21:00:06 From Kirill Amurskiy : а почему всего 10%? 21:00:14 From Kirill Amurskiy : все остальные f=1 21:01:07 From Kirill Amurskiy : может filtered - это сколько он не просматривал 21:01:10 From Vitaly Yushkevich : Еще длину ключа надо проверять :) 21:01:15 From Vitaly Yushkevich : key_len 21:01:34 From Леонид Черненко : Ещё полезно сравнить количество строк прочитанных с диска и строк в результате. 21:01:50 From Александр Федотов : Не вижу где cardinality индекса 21:02:10 From Александр Филиппенко : только индекс 21:02:11 From Ивченков : За данными не лезем 21:02:13 From Kirill Amurskiy : данные взял из индекса? 21:02:14 From Vitaly Yushkevich : доп параметры - используем индекс 21:02:48 From Vitaly Yushkevich : + 21:02:51 From Ивченков : + 21:02:52 From Леонид Черненко : + 21:02:57 From andrey : + 21:02:59 From Александр Филиппенко : + 21:03:13 From Kirill Amurskiy : а если у нас индекс на a,b,c , а мы выбираем по a,c?? 21:03:20 From Dmitriy Shitikov : т.е. select * лучше вообще не использовать? 21:03:20 From Alexey Kryachko : в стаистике вроде кардиналити показывает у индекса 21:04:58 From Леонид Черненко : Кирилл, сделай индекс на a,c 21:06:15 From Леонид Черненко : select * всегда гоняет лишние данные. Когда выбираешь только нужные, то скорость увеличивается на порядки... 21:06:18 From Kirill Amurskiy : vom 21:06:59 From Ивченков : ++ 21:07:00 From Kirill Amurskiy : + 21:07:01 From Vitaly Yushkevich : + 21:07:02 From Dmitry Zolotarev : ++ 21:07:02 From agapov : + 21:07:15 From andrey : + 21:07:38 From Kirill Amurskiy : а если а Ю3 21:07:41 From Alexey U : а что если OR вместо AND ? 21:07:43 From Александр Филиппенко : а если нужно select c where a=0 and b>0 индекс применится? 21:07:43 From Kirill Amurskiy : a>3 21:07:57 From Ивченков : А order? 21:08:07 From Kirill Amurskiy : а если в последнем примере аЮ3 21:08:10 From Vitaly Yushkevich : с order есть много нюансов :) 21:08:54 From agapov : union так же плох, как or? 21:10:11 From Kirill Amurskiy : использовал индекс? 21:10:33 From Kirill Amurskiy : огонь) 21:10:44 From Михаил : делается full scan 21:10:58 From Kirill Amurskiy : сравним бы по времени с индексом чисто по и 21:11:00 From Kirill Amurskiy : и 21:11:02 From Kirill Amurskiy : b 21:11:23 From Леонид Черненко : на таком количестве данных разницы по времени не будет... 21:11:37 From Kirill Amurskiy : по стоимости я имел в виду 21:12:05 From Kirill Amurskiy : )) 21:12:14 From Alexander Bogushov : Больше колонок взять в запрос 21:12:14 From agapov : мускул прогрессирует. прям всю лекцию срывает 21:12:18 From Kirill Amurskiy : подебажить бы) 21:12:43 From Kirill Amurskiy : filtred очень маленький 21:12:52 From Kirill Amurskiy : переберает все 21:14:42 From Vitaly Yushkevich : И длина ключа видна 21:14:44 From agapov : какой запрос перед этим был? 21:14:45 From Vitaly Yushkevich : меняется 21:14:46 From Александр Федотов : это факты, но почему так работает? 21:14:48 From agapov : проглядео 21:15:16 From Леонид Черненко : Частичный, когда данных из индекса недостаточно чтобы без чтений данных определить, какие точно строки нам нужны. 21:15:17 From Vitaly Yushkevich : + 21:15:23 From Леонид Черненко : так? 21:15:26 From Sergey : + 21:15:32 From agapov : можно не сразу запускать запрос, когда эксплекн json, пожалуйста? 21:16:33 From Vitaly Yushkevich : Частичный, когда данных из индекса недостаточно чтобы без чтений данных определить, какие точно строки нам нужны. - мне кажется не совсем. При условии a=1 and b> 2 and c =3 данных достаточно, но MySQL не умеет индексом фильтровать и поэтому будет сканить 21:17:08 From Vitaly Yushkevich : - 21:17:09 From Kirill Amurskiy : - 21:17:10 From Ивченков : - 21:17:10 From Sergey : - 21:17:20 From Леонид Черненко : Виталий, требую пруфов ) 21:17:28 From Леонид Черненко : ок 21:17:33 From Vitaly Yushkevich : explain :) 21:17:49 From Ивченков : А вот запустили этот IN. Мне кажется не пройдет) 21:17:56 From Ивченков : *запустите) 21:18:00 From Vitaly Yushkevich : In делает эквивалент в = 21:18:05 From Vitaly Yushkevich : по элементам 21:18:11 From Kirill Amurskiy : т.е. a=1 and a=3 and a=5 и т.д. - все норм? 21:18:33 From Vitaly Yushkevich : b in(2,4) <=> where b=2 and b=3 and b=4. Так же? 21:18:47 From Ивченков : Нет 21:18:48 From Ивченков : OR 21:19:02 From agapov : нет 21:19:03 From Kirill Amurskiy : ооо 21:19:04 From Kirill Amurskiy : да 21:19:08 From agapov : 2 or 4 21:19:13 From Vitaly Yushkevich : спс 21:19:26 From Леонид Черненко : Как в ClickHouse работают индексы, будем разбирать? 21:19:38 From Леонид Черненко : :( 21:21:57 From agapov : order by c? 21:22:31 From Kirill Amurskiy : ну логично вообще 21:22:40 From Vitaly Yushkevich : а order by id в составном ключе будет плохо :) а в простом - хорошо :) 21:22:47 From Леонид Черненко : там количество строк большое... похоже не всё хорошо там 21:22:59 From Sergey : a using index condition? 21:23:42 From Kirill Amurskiy : ну он же вытащит все по a=1, а потом уже только эти записи будет сортировать по с? 21:23:56 From Kirill Amurskiy : (ну т.е. в общем-то норм, не всю таблицу соритровать будет) 21:24:10 From Kirill Amurskiy : жесть 21:24:26 From Kirill Amurskiy : с пагинацией вообще плоход будет 21:24:45 From agapov : так в новых версиях можно создавать индексы, где какие-то колонки desc вроде бы 21:24:50 From agapov : или ошибаюсь? 21:24:52 From Vitaly Yushkevich : А select * from tbl where a > 1 order by b desc будет ок? 21:24:59 From Kirill Amurskiy : так и в старой можно вроде 21:25:00 From Vitaly Yushkevich : или нет 21:25:17 From agapov : так проблемы были, если память не изменяет 21:25:41 From Kirill Amurskiy : ясно 21:26:14 From OTUS Онлайн-образование : http://www.mysqltutorial.org/mysql-index/mysql-descending-index/ 21:26:23 From OTUS Онлайн-образование : https://www.percona.com/blog/2016/10/20/mysql-8-0-descending-indexes-can-speedup-your-queries/ 21:26:53 From Vitaly Yushkevich : А select * from tbl where a > 1 order by b desc будет плохим? 21:27:22 From Vitaly Yushkevich : И select * from tbl where a = 1 order by b desc тоже?) 21:27:28 From Александр Федотов : Это плохие запросы для конкретного индекса, а какого именно в презентации не указано 21:27:31 From Vitaly Yushkevich : или он там уже сортирует ок? 21:27:33 From Vitaly Yushkevich : Ага, спасибо 21:27:57 From Ивченков : Ну ок, вот мы поняли что select * from tbl where a > 1 order by b desc это плохо. Но нам надо же как то данные получить. Что делать то?) 21:29:07 From Kirill Amurskiy : а почему? 21:29:13 From Kirill Amurskiy : из-за or? 21:29:54 From Sergey : - 21:29:54 From agapov : - 21:29:55 From a.khalilov : - 21:29:55 From Vitaly Yushkevich : - 21:29:55 From Ивченков : - 21:30:00 From Александр Филиппенко : - 21:30:03 From Леонид Черненко : - 21:31:18 From Kirill Amurskiy : да 21:31:21 From Ивченков : Да 21:31:27 From Kirill Amurskiy : id всегда с собой 21:31:27 From Ивченков : id же в индексе хранится 21:31:30 From Alexander Bogushov : да 21:31:33 From agapov : id и так неявно хранится 21:32:11 From agapov : не встречал myisam в проде 21:33:38 From Vitaly Yushkevich : + 21:33:38 From Ивченков : + 21:33:41 From Александр Филиппенко : а если count по покрывающему индексу, это же всё равно быстрее будет? 21:33:42 From Kirill Amurskiy : ну группировки как и where 21:33:42 From agapov : + 21:33:52 From Dmitry Zolotarev : + 21:33:58 From Ивченков : А если не max в последнем будет? AVG например. 21:36:24 From Dmitry Zolotarev : - 21:36:25 From Sergey : - 21:36:28 From Vitaly Yushkevich : да 21:36:33 From agapov : where перед join норм разве? 21:36:34 From Vitaly Yushkevich : Какой индекс должен быть полный 21:36:38 From Vitaly Yushkevich : с учетом where author? 21:36:42 From Vitaly Yushkevich : В плане последовательности 21:37:08 From Vitaly Yushkevich : спасибо 21:38:18 From Kirill Amurskiy : а если or по одному полю - то это норм? 21:38:47 From Kirill Amurskiy : это же тоже самое что IN? 21:38:58 From agapov : оптимизатор не разрулит? 21:39:41 From Леонид Черненко : Есть ли какая-то утилита, которая по slow-query.log сформирует список необходимых индексов? 21:40:11 From Kirill Amurskiy : SQLServer метерит по этому поводу сам(что надо индекс создать) 21:40:50 From Леонид Черненко : Не то что индекса нет, а какой именно создать. Поля и таблицы 21:41:11 From Александр Филиппенко : а если вместо OR 2 запроса с union? 21:41:18 From Vitaly Yushkevich : индекс может улучшить одни запросы, но убить другие 21:42:33 From Ивченков : + 21:42:34 From Vitaly Yushkevich : + 21:42:37 From Kirill Amurskiy : + 21:42:38 From Dmitriy Shitikov : + 21:42:38 From Alexander Bogushov : + 21:42:40 From agapov : ~ 21:43:32 From andrey : когда меньшенство ? 21:43:44 From Kirill Amurskiy : если БД разложить по разным жестким дискам? 21:43:44 From Александр Филиппенко : когда он покрывающий? 21:47:03 From Vitaly Yushkevich : А со * он полезет в таблицу? 21:50:44 From Kirill Amurskiy : для 2 строк он тоже будет в файл писать? 21:50:46 From Alexey Kryachko : Все значения 21:50:47 From agapov : distinct зло 21:51:06 From Kirill Amurskiy : а она filesort всегда на диске делает? 21:51:13 From Kirill Amurskiy : (или в памяти может) 21:51:15 From agapov : спасибо за интересную лекцию 21:51:15 From Sergey Gusarov : Спасибо! 21:51:23 From Vitaly Yushkevich : Спасибо! Было очень полезно и круто сегодня 21:51:24 From Kirill Amurskiy : спасибо 21:51:28 From Александр Филиппенко : а если вместо OR 2 запроса с union? 21:51:35 From Kirill Amurskiy : серьезный накал индексов сегодня был 21:51:38 From Sergey : спасибо 21:51:39 From i.perov : Полезно, спасибо 21:51:44 From Леонид Черненко : Насколько важно знать индексы на таком глубоком уровне? 21:52:04 From Ивченков : union это and. Нельзя его использовать вместо or. 21:52:07 From Леонид Черненко : Больше чем 90% моих коллег... 21:52:21 From Vitaly Yushkevich : Очень важно знать, как иметь «переписывать запросы" 21:52:25 From Vitaly Yushkevich : уметь* 21:52:32 From Kirill Amurskiy : 90%??? Ты в каком-то супер образованном месте работаешь) 21:53:24 From Sergey Gusarov : да MySQL складывается только в путь, посгри/oracle больше прощает ;) 21:53:43 From andrey : про домашку расскажите, пожалуйста, я пропустил 21:53:47 From Kirill Amurskiy : опрос? 21:53:47 From Леонид Черненко : понял, ответ исчерпывающий, спасибо 21:53:57 From andrey : ок спасибо 21:54:16 From OTUS Онлайн-образование : https://otus.ru/polls/5528/ 21:54:28 From Ивченков : Спасибо! 21:54:30 From Dmitriy Shitikov : спасибо 21:54:36 From a.khalilov : Спасибо) 21:54:37 From Alexey Kirimov : Спасибо! 21:54:39 From Леонид Черненко : топ лекция 21:54:40 From Александр Филиппенко : спасибо 21:54:44 From agapov : хорошего всем вечера 21:54:44 From Sergey Gusarov : Всего доброго! Жду )