|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
собссно вопрос. есть приложение, оно выполняет одну единственную роль - обрабатывать запросы клиентов и возвращать данные. предварительно их откуда то собрав. в общем, ожидания есть одни - эластиксерч под капотом. я напилил некий ПОЦ на хиберсерче. но хиберсерч работает поверх рдбмс. то есть прилетает пользовательский запрос - ХС, идет за данными в эластик по индексированным полям, вытряхивает из него скажем 40 айдих (на страницу) и с этими айди прётся в рдбмс, доставая уже оттуда сущности целиком и простым запросом а ля селект туда сюда фром таблица вхере айди ин () собссно вопрос - насколько эта схема рациональна? почему бы не держать вообще ВСЕ поля в индексе как док целиком? может стоит сразу написать на чистом ес апи клиенте? но у хса много приятных плюшек из коробки которые придется пилить руками. или же эта схема эффективна поверх какой то работающей системы где много связей-джойнов и бохатя жизнью доменная модель а не 2 таблицы три запроса? опять же, я столкнулся с проблемой, что у них оракл, который тащит мешок бдшек и мешок сервисов которые его насилуют денно и ношно. то есть простой запрос типа "выбери 10к записей и отсортируй" без джойнов без ничего на таблицах в 10-30 млн записей отыгрывается от 2х секунд и до 30-ти секунд. один и тот же запрос на одном и том же наборе. и с этим, я так понимаю, ничего уже не поделать. выльется ли это в вариант - что оракл начент тормозить за собой весь хс? видимо, да. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 15:56 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Порадовал термин "ПОЦ". А какой отклик вообще нужен? Будем ли мы бороться за 200 милисекунд? И какое время среднее? 2 или 30 сек? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 16:54 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, авторвытряхивает из него скажем 40 айдих (на страницу) авторто есть простой запрос типа "выбери 10к записей и отсортируй" Хотелки как то не стыкуются. PS: разобраться с производительностью Оракла, не? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 17:08 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Не. Оракл держат бес.п. оракл высокооплачиваемые профи. Посмотрели индексы и сказали все есть оптимизируйте запрос а че там оптимизировать это простейший селект по одному полю и с сортировкой. Тупо тормозит база. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 17:10 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Порадовал термин "ПОЦ". А какой отклик вообще нужен? Будем ли мы бороться за 200 милисекунд? И какое время среднее? 2 или 30 сек? Две секунды - приемлемо. 30 секунд - нет. Структура данных - плоский документ, 30миллилнов штук. Ну почти плоский. 40 полей. Типы запросов - классика отфильтровать по полю а, б, ц, отсортируй выдай пейдж. Размер Пейджа до 10к записей ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 17:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Железа Ораклу хватает? Какая часть тормозит, отбор по полю или сортировка? Набор полей для сортировки меняется или все время один и тот же? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 17:22 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Может меняться. Отжирает сортировка судя по плану. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 17:48 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT mayton Порадовал термин "ПОЦ". А какой отклик вообще нужен? Будем ли мы бороться за 200 милисекунд? И какое время среднее? 2 или 30 сек? Две секунды - приемлемо. 30 секунд - нет. Структура данных - плоский документ, 30миллилнов штук. Ну почти плоский. 40 полей. Типы запросов - классика отфильтровать по полю а, б, ц, отсортируй выдай пейдж. Размер Пейджа до 10к записей ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 17:57 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Странно, сортировка отобранного набора в 10 тысяч строк занимает 30 секунд? "вхере айди ин ()" - в ин десять тысяч айдишников, они туда влезли?)) Рекомендации какие нибудь ораклисты дали? PS: в случае крайней жо можно отсортировать у себя забрав несортированные записи. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 18:05 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Полагаю тебя тоже отнасилуют в топике оракла за эти слова автороракл, который тащит мешок бдшек и мешок сервисов которые его насилуют денно и ношно. то есть простой запрос типа "выбери 10к записей и отсортируй" без джойнов без ничего на таблицах в 10-30 млн записей отыгрывается от 2х секунд и до 30-ти секунд. один и тот же запрос на одном и том же наборе. и с этим, я так понимаю, ничего уже не поделать. Давай немножко попрофессиональнее будем. Сядь перкд ораклом не в выходные и дай нам все факты - запрос, результат, время, план запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 18:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode andreykaT, Странно, сортировка отобранного набора в 10 тысяч строк занимает 30 секунд? "вхере айди ин ()" - в ин десять тысяч айдишников, они туда влезли?)) Рекомендации какие нибудь ораклисты дали? PS: в случае крайней жо можно отсортировать у себя забрав несортированные записи. Нельзя. Когда пагинация на стороне бэка ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 19:22 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT graycode andreykaT, Странно, сортировка отобранного набора в 10 тысяч строк занимает 30 секунд? "вхере айди ин ()" - в ин десять тысяч айдишников, они туда влезли?)) Рекомендации какие нибудь ораклисты дали? PS: в случае крайней жо можно отсортировать у себя забрав несортированные записи. Нельзя. Когда пагинация на стороне бэка Вторым постом mayton тебе сказал ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 19:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, классика жанра джун девелопер * девопс, который про оракл слышали но не работали, но поадминить могут. если нет нормальной ide в sqlplus выполнить SET AUTOTRACE ON, нужны план и статистики запроса. надо понять сколько блоков вытягивает с диска, сколько из кеша, в памяти ли сортирует. если реально тормозят сортировки то очень может быть память зажали и сортирует на диске, тюнить sort_area_size надо. за одно, раз табличка мелкая, может можно alter table cache сделать. если одни и те же запросы то тормозят, то нет, скорее всего таблица/индексы из кеша быстро вытесняются. еще вариант, что оракловые базы сидят на черезчур умном сторидже, активно используемые блоки сторидж переносит на SSD, менее активные на HDD. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 20:42 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
еще неплохо узнать fetchSize для statement и какой запрос используется? надеюсь не where (?,...,?)? (получится что оракл очень часто парсит новый запрос) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 21:05 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 andreykaT, классика жанра джун девелопер * девопс, который про оракл слышали но не работали, но поадминить могут. если нет нормальной ide в sqlplus выполнить SET AUTOTRACE ON, нужны план и статистики запроса. надо понять сколько блоков вытягивает с диска, сколько из кеша, в памяти ли сортирует. если реально тормозят сортировки то очень может быть память зажали и сортирует на диске, тюнить sort_area_size надо. за одно, раз табличка мелкая, может можно alter table cache сделать. если одни и те же запросы то тормозят, то нет, скорее всего таблица/индексы из кеша быстро вытесняются. еще вариант, что оракловые базы сидят на черезчур умном сторидже, активно используемые блоки сторидж переносит на SSD, менее активные на HDD. мне все равно что там. оракл это оракл. я зарепортил что примитивный запрос тормозит с фетчем 150к записей (сортировка да) и всё. а они пусть пляшут как хотят. могут сказать мы ничего ен можем не хотим. мне на это НАПЛЕВАТЬ. но если интересно они предложили профилировать запрос. но запрос строится динамически хибером через критерии поэтому им это снова сложно (там вариантов то по пальцам всё-равно). у меня сложилось впечатление что у всех оракл-дба есть три стандартных отмазки: у тебя запрос тяжелый, проверь индексы, посмотри план. еще раз. один и тот же запрос с одним и тем же набором данных тормозит РАНДОМНО. то есть. сейчас он работает 2 секунды. через час он 30 секунд берет, хоть 10 раз в ряд его дергай (кэш исключается), через час снова 2 секунды. одна и та же таблица один и тот же набор данных. что там оптимизировать? но не суть. я спросил про хиберсерч, а мне начинают рассказывать как оракл тюнить... ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 21:27 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
pavel_nv еще неплохо узнать fetchSize для statement и какой запрос используется? надеюсь не where (?,...,?)? (получится что оракл очень часто парсит новый запрос) не совсем понял. емнип там селект бла бла (селект бла бла ордер бай поле) роунам <=размерСтраницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 21:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
1. fetchSize - какими батчами драйвер забирает из оракла данные сетевыми запросами. Обычно по дефолту ставят не очень большое значение. Если выгребается действительно много записей - это может быть ботлнеком, и увеличение может дать прирост скорости на порядок. 2. по поводу preparedStatement - оракл имеет у себя кэш preparedStatement, и пулять в него разными запросами (разное кол-во параметров) типа SELECT * FROM T WHERE ID IN (?,?,...,?,?) не лучший вариант. Если брать тот же postgres - он менее чувствителен к этому, и то в нем разумнее оперировать массивами SELECT * FROM T WHERE ID=ANY(?), что может быть в разы быстрее из-за единого скана индекса. В oracle тоже можно сделать подобную штуку через самописную структуру типа TABLE OF NUMBER. Но думаю хибер плохо с этим дружит. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 21:41 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
я не могу брать то что захочу. я могу брать: эластиксерч (хс или там чистый клиент), оракл. готовый. попросить развернуть в нем свою бд. но я так понимаю физически это будет тот же хост (или набор хостов - я вообще без понятия как оно там сделано), где крутится и та бд которая примитивный селект рандомно отдает 3-30 сек. еще раз. там нет where id in (дофига значений) там есть where fieldName=fieldValue and where status in (value1, value2 всегда только два) order by someOtherField. всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 21:56 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT но если интересно они предложили профилировать запрос. но запрос строится динамически хибером через критерии поэтому им это снова сложно (там вариантов то по пальцам всё-равно). у меня сложилось впечатление что у всех оракл-дба есть три стандартных отмазки: у тебя запрос тяжелый, проверь индексы, посмотри план. не похожи ваши девопс на дба. дба смотрит план и статистики. без них что-то сказать не реально. andreykaT еще раз. один и тот же запрос с одним и тем же набором данных тормозит РАНДОМНО. то есть. сейчас он работает 2 секунды. через час он 30 секунд берет, хоть 10 раз в ряд его дергай (кэш исключается), через час снова 2 секунды. одна и та же таблица один и тот же набор данных. что там оптимизировать? джуна, который имеет все возможности посмотреть что не так, но вместо этого гадает. может ты просто порнуху качаешь в неудачное время. попроси девопсов посмотреть статистику запроса, в оракловой админке (dbconsole) веб интерфейс, рассчитан совсем на домохохяйку. посмотреть запросы длительностью 30+ секунд займет 3 клика и 10 секунд. да там алерты уже должны про такие запросы быть, с инструкциями как исправить. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:00 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT могут сказать мы ничего ен можем не хотим. мне на это НАПЛЕВАТЬ. они тут причем? Тебе самому наплевать. andreykaT у меня сложилось впечатление что у всех оракл-дба есть три стандартных отмазки: у тебя запрос тяжелый, проверь индексы, посмотри план. дак где тема на ветке дба? andreykaT но не суть. я спросил про хиберсерч, а мне начинают рассказывать как оракл тюнить... балабол ты. Простейший вопрос - "сейчас он работает 2 секунды. через час он 30 секунд" ты хочешь решить не вникая в оракл. Уже было - "каждому микросервису по бд")) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:04 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 andreykaT но если интересно они предложили профилировать запрос. но запрос строится динамически хибером через критерии поэтому им это снова сложно (там вариантов то по пальцам всё-равно). у меня сложилось впечатление что у всех оракл-дба есть три стандартных отмазки: у тебя запрос тяжелый, проверь индексы, посмотри план. не похожи ваши девопс на дба. дба смотрит план и статистики. без них что-то сказать не реально. andreykaT еще раз. один и тот же запрос с одним и тем же набором данных тормозит РАНДОМНО. то есть. сейчас он работает 2 секунды. через час он 30 секунд берет, хоть 10 раз в ряд его дергай (кэш исключается), через час снова 2 секунды. одна и та же таблица один и тот же набор данных. что там оптимизировать? джуна, который имеет все возможности посмотреть что не так, но вместо этого гадает. может ты просто порнуху качаешь в неудачное время. попроси девопсов посмотреть статистику запроса, в оракловой админке (dbconsole) веб интерфейс, рассчитан совсем на домохохяйку. посмотреть запросы длительностью 30+ секунд займет 3 клика и 10 секунд. да там алерты уже должны про такие запросы быть, с инструкциями как исправить. они говорят что они профессионалы. я хз. может и джуны. мне то что? я бы понял там мегазапрос с мешком джойнов и аггрегаций там и т.п. так нет ничего. ) они посмотрели запрос длительностью 30 секунд. это мой запрос (один из). дальше что? их мегатулза сказала смени where not in () на where in () сменил - не помогло. их планзапросник показал убери сортировку - я сказал я не уберу сортировку потому что она мне нужна. они пожали плечами. ну пусть жмут. мне там нечего делать просто потому что совсем нечего. это работа дба. я подозреваю что просто другие сервисы тупо глушат бд и вообще все запросы там тормозят ко всем бд в определенный момент времени. а да еще предложили вытащить всё в память и в памяти отсортировать. (150к записей в моем случае), ну так себе совет. и еще раз. это не относится к теме вопроса. тема чуть другая. за тюнингом запросов я в другой топик пошёл бы. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:13 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Показания все более запутанные, началось с 40 айдишников, потом стало 10к записей, теперь уже 150к)) далее окажется что этот запрос с разными полями сортировки дергает одновременно тысяча пользователей, правда зачем тысяче пользователе 150к записей, даже одному то не понятно зачем такой объем да еще и с пагинацией... )) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:13 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Топик зело неясен. И ораторы не привносят ни капли ясности. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:17 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT мне там нечего делать просто потому что совсем нечего. это работа дба. Проектирование системы и реализация функционала это работа разработчика, если разработчик не в состоянии выделить узкие места и сбалансировать нагрузку, значит он фиговый разработчик. andreykaT я подозреваю что просто другие сервисы тупо глушат бд и вообще все запросы там тормозят ко всем бд в определенный момент времени. Если тормозит все, то это вопрос ДБА, правда результат может быть для разработчика неутешительный, т.е. ДБА выявит код который сильнее всего грузит систему и предложит разработчикам его переделать ... andreykaT а да еще предложили вытащить всё в память и в памяти отсортировать. (150к записей в моем случае), ну так себе совет. Почему? На каждый твой запрос это происходит в памяти сервера с Ораклом, почему бы этому не происходить в памяти сервера на котором крутится сервис бэкенда? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:30 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 надо понять сколько блоков вытягивает с диска, сколько из кеша, в памяти ли сортирует. если реально тормозят сортировки то очень может быть память зажали и сортирует на диске, тюнить sort_area_size надо. за одно, раз табличка мелкая, может можно alter table cache сделать. если одни и те же запросы то тормозят, то нет, скорее всего таблица/индексы из кеша быстро вытесняются Судя по сортировкам 150к записей на каждый пейдж, да еще и разные поля в сортировке в запросах, да еще разработчик там такой не один, похоже все перечисленное сразу имеет место быть)) Как вариант всю таблицу (30 миллионов записей) в кеш, процессоров добавить двойной запас, памяти под сортировку отсыпать чтобы хватало с запасом ... ну и конечно не забыть вычесть затраты на оборудование и лицензии с зарплаты разрабов ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:41 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT они говорят что они профессионалы. я хз. может и джуны. мне то что? я бы понял там мегазапрос с мешком джойнов и аггрегаций там и т.п. так нет ничего. ) в оракле миллион рычажков. девопсы видевшие лишь mysql могут запросто накосячить на ровном месте. например умудрится собрать системную статистику в момент когда твоя бд в кеше сториджа. теперь оптимизатор считает что за 0.5 сек можно поднять 2Тб с дисков и бегать по индексам дороже чем фуллскан. но у тебя я почти уверен что-то много проще. то что ты принимаешь за таблицу вероятно вью, сортировка явно в память не влазит, на медленных дисках явно происходит, наверняка и сетка забита ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:41 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Некто сказал. В программировании существует лишь два характерных затруднения: инвалидация кеша, наименование сущностей и ошибка на единицу Давайте андрейкину задачу просто сведем у контролю кеша и к материализации всех нужных ответов. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:50 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 andreykaT они говорят что они профессионалы. я хз. может и джуны. мне то что? я бы понял там мегазапрос с мешком джойнов и аггрегаций там и т.п. так нет ничего. ) в оракле миллион рычажков. девопсы видевшие лишь mysql могут запросто накосячить на ровном месте. например умудрится собрать системную статистику в момент когда твоя бд в кеше сториджа. теперь оптимизатор считает что за 0.5 сек можно поднять 2Тб с дисков и бегать по индексам дороже чем фуллскан. но у тебя я почти уверен что-то много проще. то что ты принимаешь за таблицу вероятно вью, сортировка явно в память не влазит, на медленных дисках явно происходит, наверняка и сетка забита это - таблица. еще раз. в таблице 30м записей. я даю селект в селекте 150к записей, я делаю сортировку, и беру 10к сверху. ну что тут не ясного то? по весам. запрос без сортировки - 45 попугаев. с сортировкой 11000 попугаев. и опять же. алё, хиберсерч. вопрос. хиберсерч работает поверх рдбмс, насколько такой подход эффективен? против подхода - а давайте всё будем хранить чисто в индексах эластика? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.10.2020, 22:53 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Топик зело неясен. И ораторы не привносят ни капли ясности. У него опять "мешок". Теперь не сервисов а JOIN)) andreykaT я бы понял там мегазапрос с мешком джойнов andreykaT и вообще все запросы там тормозят ко всем бд в определенный момент времени. Сначала было "через 30 минут после первого запроса". Теперь "в определенный момент времени" - в обеденный перерыв. ))) "Если ты сервер - не суетись под клиентом" (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 00:00 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT и опять же. алё, хиберсерч. вопрос. хиберсерч работает поверх рдбмс, насколько такой подход эффективен? против подхода - а давайте всё будем хранить чисто в индексах эластика? Смешно. "Прогеру лень выяснить почему в ЕГО запросах время выполнения зависит от времени на часах". И этот прогер спрашивает про эффективность как архитектурный критерий. Эффективность распила бабла? Или чего? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 00:07 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Совет: - разберитесь кто виноват с вашими запросами - хибер или БД или ваш код. А потом приходите по архитектре. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 00:08 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
А я не понимаю вопросов Андрея. Эластик - неконсистентен с ораклом. И если его это устраивает - пускай делает решение с репликацией. И этот вопрос должен стоять во главе топика. Но всем пофиг. Почему? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 00:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Но всем пофиг. Почему? Кому всем? ТС в пятый раз пишет что ему ПОФИГ на СУБД. Он микросервисный программист. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 00:25 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton А я не понимаю вопросов Андрея. Эластик - неконсистентен с ораклом. И если его это устраивает - пускай делает решение с репликацией. И этот вопрос должен стоять во главе топика. Но всем пофиг. Почему? я вот тоже не вкачу что мне все тут начесывают как оракл ускорить. еще раз повторюсь - я пишу отдельное приложение. которое сгребает данные каким то там своим внутренним образом, а потом по эндпойнтам их отдает через разные условия в запросе. ВСЁ. у меня ощущение что я пришел в магазин туалетную бумагу купить а мне советуют заглушку в задницу вставить и предлагают 25 разных моделей этих заглушек на выбор. еще раз. вопрос прост - хиберсерч использует ЕС поверх рдбмс - насколько целесообразно использовать такую схему а не полностью хранить все данные в ЕС, если у тебя скажем так, структура данных не предусматривает какие то сумасшедшие реляции? я погуглил кучу статей и не нашел однозначного ответа насклько ЕС подходит как документное хранилище. а не быстрый лукап айдишек сущностей с которыми ты идешь потом в другое хранилище (это то как работает ХС). ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 00:51 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Эластик - неконсистентен с ораклом. не. Ещё круче. Хранилище и задачи эластика не совпадают с хранилищем и задачами РСУБД. Если у в эластик хранение вида Код: java 1. 2.
то какого фига ТС тут намешал всё в кучу? Типо - "я использую трамвай, осла и оленей. Но олени перестали жрать еду через 30 минут после заката. Как ехать на трамвае?" ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 01:43 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton И если его это устраивает - пускай делает решение с репликацией. И этот вопрос должен стоять во главе топика. Но всем пофиг. Почему? да вроде распространенный юз кейс, у нас соседний прожект с сайтиком использует оракл + solr индекс. мы им шлем данные в кафку, пишем себе, а под занавес пишем в индекс. не знаю как они точно разруливают неконсистентность, но подозреваю, что просто расчет на то, что когда мы индекс пишем, они успевают в оракл детали записать. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 11:23 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Эвеншуал консистенси вполне себе допускает что в какой то момент времени что то там может быть и не очень готово ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 11:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Тогда бизнес должен быть с этим ок. Типа ты пополнил телефон через терминал на ещё пол часа ждёшь пока телефонный биллинг это увидит. Да на этом eventual построены почти все оптимизации. Но об этом чьорт возьми надо сказать. Я всегда считаю что система должна быть консистентна со своими inputs. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 11:54 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT еще раз. один и тот же запрос с одним и тем же набором данных тормозит РАНДОМНО ... но не суть. я спросил про хиберсерч, а мне начинают рассказывать как оракл тюнить... ... а вы, конечно, лучше других знаете как правильно?Была у меня похожая ситуация - приложение выдавало в лог (однотипные) запросы длительностью больше 2 секунд. Запросы исполнялись секунд по 20. Выдернул несколько таких запросов, посмотрел их планы, подумал и написал эквивалентный запрос, который стабильно исполнялся за две секунды. И, довольный собой, предложил его разработчикам. Нет, ответили разработчики - план твоего запрос хуже. И вот в этот момент наступил "мой маленький звёздный час". Это всё замечательно - ответил я, но реальные планы вашего запроса на нашей базе - совсем другие. Разработчики подумали ещё немного и нашли причину - не хватало индексов внешних ключей. А индексы, как оказалось, надо было перестраивать в процессе обновления. P.S. Ваши проблемы настолько "уникальны", что не подлежат решению "стандартными" средствами? Правда? Или вам просто не хочется делать работу, за которую (по вашему мнению) вам не доплачивают? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 12:56 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT против подхода - а давайте всё будем хранить чисто в индексах эластика? Как этот подход снимает необходимость сортировки? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 16:10 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode andreykaT против подхода - а давайте всё будем хранить чисто в индексах эластика? Как этот подход снимает необходимость сортировки? никак. но есть мнение что эластик это умеет делать быстрее при некоторых обстоятельствах ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 16:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT graycode пропущено... Как этот подход снимает необходимость сортировки? никак. но есть мнение что эластик это умеет делать быстрее при некоторых обстоятельствах Эластик работает быстрее за счет шардинга. На этом все. Больше никаких магических алгоритмов у него нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 18:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT graycode пропущено... Как этот подход снимает необходимость сортировки? никак. но есть мнение что эластик это умеет делать быстрее при некоторых обстоятельствах ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 18:52 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Сказочный программист. И зачем его только в финку выпустили. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 21:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, тебя поле для сортировки постоянно одно и то-же? если да - то можно добавить его в индекс по которому выбираешь, и от сортировки избавишься. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2020, 22:01 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Не понял про индекс и как избавиться. Ты про индекс рдбмс говоришь или про индекс эластика? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 09:02 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton andreykaT пропущено... никак. но есть мнение что эластик это умеет делать быстрее при некоторых обстоятельствах Эластик работает быстрее за счет шардинга. На этом все. Больше никаких магических алгоритмов у него нет. да. он горизонтально масштабируется слегка легче чем рдбмс. по поводу своего вопроса в первом сообщении всё больше склоняюсь что схема хиберсерча разумна когда у тебя набор данных частично обновляем и имеет зависимости на другие таблицы. то есть в индексе ты держишь только то по чему ищешь, остальное для пользователя подтягиваешь из рдбмс по механизмам рдбмс. можно держать всё в эластике но возможно тебе придется постоянно обновлять те поля, которые и не нужны в поиске вовсе. ну и перформанс - в случае эластика это только эластик. в случае эластик + рдбмс - оно будет работать настолько быстро насколько быстро работает самый медленный элемент этой схемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 09:11 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT да. он горизонтально масштабируется слегка легче чем рдбмс. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 09:38 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT насколько быстро работает самый медленный элемент этой схемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 09:39 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT да. он горизонтально масштабируется слегка легче чем рдбмс. я не девопс и не дба. понятия не имею почему рдбмс в заднице. и снова это не тема про оракл и как его улучшить. давай так. мой вариант улучшить производительность там только один - написать грозное письмо и кулачком потрясти. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 09:40 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Оптимальные запросы дело разработчика. (все мемберы топика) Даже после хибера. Я вот, линукс почему то изучаю. Хотя прога кроссплатформенна и казалось бы тонкости наплевать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 09:49 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
И причем оракл вообще. Поставь постгри за пол часа и дай тут диагноз свой)))). Зы. Не люблю ленивых. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 09:50 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT рдбмс в заднице. Сам ты в заднице. Еще пара топиков и мое имхо что ты ошибся профессией. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 10:06 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT рдбмс в заднице. Сам ты в заднице. Еще пара топиков и мое имхо что ты ошибся профессией. Мне твое мнение очень важно. Ты не поверишь Ты ж пойми, там дело может быть вообще в сетевом подключении. И все твои оптимизации имеют мало проку в таком раскладе. Просто потому что дело НЕ в этом. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 10:20 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Андрей. Мне кажется что в форуме не хватает каких то доказательств. Цифр там. Логов. Профилирования. Планов запросов. И у тебя странная манера забрасывания топиков наподобие стиля ЗПТ. Уж слишком она ... Лирическая. Как будто ты развалившись в кресле, средним пальцем левой руки набил послание ради эмоциональной разрядки. Вот мемберы и сердятся. Ты покажи нам всем что ты блин горишь желанием решить проблему. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 10:33 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT Мне твое мнение очень важно. Ты не поверишь andreykaT там дело может быть вообще в сетевом подключении Кто способен локально поднять сервер И ПРОТЕСТИТЬ его. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 10:36 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT рдбмс в заднице. Сам ты в заднице. Еще пара топиков и мое имхо что ты ошибся профессией. А разве это ещё вызывает сомнения? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 11:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Vyatich, Я толерантный) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 11:55 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Давайте все таки не будем обсуждать персону Андрея. А будем ожидать какой-то конкретики по проблеме. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 12:06 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Андрей. Мне кажется что в форуме не хватает каких то доказательств. Цифр там. Логов. Профилирования. Планов запросов. И у тебя странная манера забрасывания топиков наподобие стиля ЗПТ. Уж слишком она ... Лирическая. Как будто ты развалившись в кресле, средним пальцем левой руки набил послание ради эмоциональной разрядки. Вот мемберы и сердятся. Ты покажи нам всем что ты блин горишь желанием решить проблему. еще раз. я разговор заводил о другом. не пойму что на скл запрос все обозлились. окей. хоть и не по теме. вот запрос, обезличил: Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 12:49 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Покажи explain plan. И ты говорил что время резко прыгает. От нескольких секунд до полу-минуты. Возможно в этой полу-минуте происходит переключение плана на другой (динамический запрос). И этот плохой кейс надо сравнить с хорошим. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 12:56 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT не пойму что на скл запрос все обозлились. andreykaT вот запрос, обезличил: ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 12:57 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT mayton Андрей. Мне кажется что в форуме не хватает каких то доказательств. Цифр там. Логов. Профилирования. Планов запросов. И у тебя странная манера забрасывания топиков наподобие стиля ЗПТ. Уж слишком она ... Лирическая. Как будто ты развалившись в кресле, средним пальцем левой руки набил послание ради эмоциональной разрядки. Вот мемберы и сердятся. Ты покажи нам всем что ты блин горишь желанием решить проблему. еще раз. я разговор заводил о другом. не пойму что на скл запрос все обозлились. окей. хоть и не по теме. вот запрос, обезличил: Код: sql 1. 2. 3.
Ну тебе прозрачно намекают, что по опыту такой запрос не должен тормозить на Oracle. Понятно что у тебя возможно нету ни опыта глубокого, ни доступа к базе чтобы достоверно разобраться в чем дело. Но это не повод тебе как грамотному инженеру экалировать этот вопрос выше, к тому кто такой дотуп и возможности имеет. Потому как попытка построить эластиксерч решение не имея к этому обьективных необходимостей характеризует тебя не совсем красивым образом. Ну если тут тупой попил бабла - тогда да - пили что поинтереснее) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 12:58 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Он даже не сказал что с этим запросом не так))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 12:59 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Как в детском саду. - запрос проверяется на ПОВТОРЯЕМОСТЬ ошибки - упрощается пока ошибка не пропадет - зависимость ВЫЯВЛЕННАЯ постится сюда. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:02 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Я Ораклом уже 10 лет не занимался. Но у меня и у присуствующих в топике достаточно знаний чтобы просто поставить эксперимент. Понаблюдать. И потом изменить условия и еще раз понаблюдать и сделать выводы. В конце концов мы придём к какому-то выводу. Но не к эмоционально лирическому. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:08 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
забыл ник andreykaT пропущено... еще раз. я разговор заводил о другом. не пойму что на скл запрос все обозлились. окей. хоть и не по теме. вот запрос, обезличил: Код: sql 1. 2. 3.
Ну тебе прозрачно намекают, что по опыту такой запрос не должен тормозить на Oracle. Понятно что у тебя возможно нету ни опыта глубокого, ни доступа к базе чтобы достоверно разобраться в чем дело. Но это не повод тебе как грамотному инженеру экалировать этот вопрос выше, к тому кто такой дотуп и возможности имеет. Потому как попытка построить эластиксерч решение не имея к этому обьективных необходимостей характеризует тебя не совсем красивым образом. Ну если тут тупой попил бабла - тогда да - пили что поинтереснее) я НЕ решаю эластиком проблему медленного запроса сверху. с чего ты это решил? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, Он даже не сказал что с этим запросом не так))) расскажи что. не томи. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:13 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Угу. "Чтобы судить о качестве приготовленной яичницы, совершенно необязательно уметь нести яйца" (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:13 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp mayton, Он даже не сказал что с этим запросом не так))) расскажи что. не томи. Тут мало уже таких топиков без конкретики. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT Код: sql 1. 2. 3.
Во первых избавиться от in ('A', 'P','D','T','O','TP','AG', 'DG'), материализовать это в with для начала, во вторых заменить rownum на оконную row_number и конечно же переменные должны быть связанные, enti0_.X=:x и rownum between :r_begin and :r_end. Во вторых разобраться с требованиями, я не понимаю кому нужно отбирать 150 тысяч записей и отдавать это порциями по 10 тысяч, как часто будут получать первые 10 тысяч и не получать остальные порции, на сколько часто выполняется такой запрос, рассмотреть вопрос промежуточного кеширования отсортированной выборки, чтобы не сортировать для отдачи 150 тысяч 15 раз. Время выполнения плавает для отдачи всех 150к, т.е. 15 запросов в сумме или для получения 10к? Рассмотреть возможность поместить необходимые поля в индекс в БД, чтобы твой запрос вообще не обращался к таблице. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode, Щас он скажет что запрос не его а хибера. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:16 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Да. Простое рассуждение. Убираем из запроса сортировку. И все равно не укладываемся в 2 секунды. Сетевой канал не позволяет пушнуть 10000 строк. Одна из строк - толстая. Или BLOB. Это тот случайный фактор который просто надо идентифицировать. И в корне изменить постановку. Ну с бизнесом прокашлять... обычно бизнес в этом смысле адекватен и соглашается что толстые строки больше 2 килобайт не надо тащить на клиента. Да масса чего бывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:17 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT пропущено... расскажи что. не томи. Тут мало уже таких топиков без конкретики. слился, трепло? говори что не так. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:17 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp graycode, Щас он скажет что запрос не его а хибера. это запрос действительно хибера. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:18 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp пропущено... флуди дальше. Тут мало уже таких топиков без конкретики. слился, трепло? говори что не так. )))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:18 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp graycode, Щас он скажет что запрос не его а хибера. это запрос действительно хибера. Вы уволены ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:19 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:22 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Да по сути пользователю не нужно 10_000 строк за 2 секунды. Он их даже не осознает. Ему надо дать короткий pre-screening. Чтоб "отпустить" UI и дальше пользователь сам уже решит стоит ли давить кнопу PageDown или explain напротив толстой строки. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode Ну ТС боится с профи пообщаться https://www.sql.ru/forum/1290388/uskorit-zapros-s-neskolkimi-dzhoinami-s-paginaciey?hl=row_limiting_clause ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, При таких объемах пользователь явно не человек, это какая то другая система, только возникает вопрос, зачем отдавать страницами по 10 тысяч документов. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 13:44 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode mayton, При таких объемах пользователь явно не человек, это какая то другая система, только возникает вопрос, зачем отдавать страницами по 10 тысяч документов. да, это другая система и это "публичный" апи. зачем отдавать - такие требования. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:06 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode, Он перекачивает базу из одной в другую (messenger driven arhitecture) так как по его мнению рсубд не справляется. А он заложник микросервисов. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:08 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT graycode mayton, При таких объемах пользователь явно не человек, это какая то другая система, только возникает вопрос, зачем отдавать страницами по 10 тысяч документов. да, это другая система и это "публичный" апи. зачем отдавать - такие требования. А про требования свистим как обычно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:09 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp graycode, Он перекачивает базу из одной в другую (messenger driven arhitecture) так как по его мнению рсубд не справляется. А он заложник микросервисов. Тогда там регулятор в другую сторону крутануть надо. От FIRST_ROWS до ALL_ROWS. Вообще странно это всё. Писать на хибере. Такие вещи обычно делают на native_sql. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:18 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT пропущено... да, это другая система и это "публичный" апи. зачем отдавать - такие требования. А про требования свистим как обычно. ты мне сказал, что ты знаешь как этот запрос сделать лучше. но по ходу ты не знаешь. давай откарячивайся дальше. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:21 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton PetroNotC Sharp graycode, Он перекачивает базу из одной в другую (messenger driven arhitecture) так как по его мнению рсубд не справляется. А он заложник микросервисов. Тогда там регулятор в другую сторону крутануть надо. От FIRST_ROWS до ALL_ROWS. Вообще странно это всё. Писать на хибере. Такие вещи обычно делают на native_sql. пишут на хибере потому что есть хибер. снова не пойму зачем это всё. ну написано. на хибере. работает. запрос прост и без извращений. хибер построил его вполне разумно. что еще надо то не пойму. нельзя отказаться от хибера (как минимум хкл но прям очень подумтаь). и нельзя отказаться от выдачи 10к записей. это такие инпутпарамы. далее, запрос я уже сказал работает норм. ну там нечему ломаться то. просто он непонятно себя ведет с 1сек до 30сек. я еще раз настаиваю на предположении что дело не в запросе. далее, это вообще не проблема топика и не повод для меня напиливать сверху эластик. эластик нужен для другого компонента. который собирает каким то образом данные (через месседжи или там рест-соап или еще как) а потом после обработки отдает их юзерам по фри-текстовым запросам. это если вкратце задачи компонента. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:25 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Писать на хибере. Такие вещи обычно делают на native_sql. Он странный во всем. Начиная от терминов "мешок хххх" ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp пропущено... для публичного апи не надо перекачивать. А про требования свистим как обычно. ты мне сказал, что ты знаешь как этот запрос сделать лучше. но по ходу ты не знаешь. давай откарячивайся дальше. :) 22224763 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:30 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT эластик нужен для другого компонента. который собирает каким то образом данные (через месседжи или там рест-соап или еще как) а потом после обработки отдает их юзерам по фри-текстовым запросам. это если вкратце задачи компонента. Вот это номер. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:31 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT там нечему ломаться то. просто он непонятно себя ведет с 1сек до 30сек. я еще раз настаиваю на предположении что дело не в запросе. Третичная логика прогера - работает - работает но непонятно ведет - дело вообще не в нем ))) *LOL ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:36 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton andreykaT эластик нужен для другого компонента. который собирает каким то образом данные (через месседжи или там рест-соап или еще как) а потом после обработки отдает их юзерам по фри-текстовым запросам. это если вкратце задачи компонента. Вот это номер. в смысле? разве в самом начале этого не сказано? :) еще раз. вопрос был. хс или чистый эластик. плюсы и минусы, резон не резон. по хс я сказал что вот такая то проблема и если я буду юзать хибер-серч то оно может вот так же произойти. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:36 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT mayton пропущено... Тогда там регулятор в другую сторону крутануть надо. От FIRST_ROWS до ALL_ROWS. Вообще странно это всё. Писать на хибере. Такие вещи обычно делают на native_sql. пишут на хибере потому что есть хибер. снова не пойму зачем это всё. ну написано. на хибере. работает. запрос прост и без извращений. хибер построил его вполне разумно. что еще надо то не пойму. нельзя отказаться от хибера (как минимум хкл но прям очень подумтаь). и нельзя отказаться от выдачи 10к записей. это такие инпутпарамы. Потому что хибер не умеет Oracle Hints. Смотри... такая аналогия. Ты - Java-разрабочик и тебя просят пофиксить какой-то java-class. Ты открываешь сорцы и видишь что этот класс @Generated тоесть он есть продукт кодо-генерации от CXF, или других DSL языков и технологий. Фиксить его бесполезно т.к. он вторичен. Первичным является DSL (он же Golden Source) и при любых версионных изменениях будет изменен именно он. Поэтому ты понимаешь что у тебя блин (!) связаны руки блин(!). И ты поймешь гнев и ненависть любых DBA по отношению к ОРМ именно тогда когда сам влезешь и их шкуру. Надо оптимизировать и ты знаешь как - но возможностей нету. Ибо ORM блин (!) не поддерживает hints. И еще много можно чего написать просто про usability. Про алиасы. Форматирование. Но я думаю общая мысль понятна. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:37 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT пропущено... ты мне сказал, что ты знаешь как этот запрос сделать лучше. но по ходу ты не знаешь. давай откарячивайся дальше. :) 22224763 там какой то банальный набор банальных рекомендаций, без раскрытия темы. как сделать запрос лучше? окей, забеф. я уже понял что это был звук в лужу с твоей стороны. как всегда. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:37 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT по хс я сказал что вот такая то проблема ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:38 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp там какой то банальный набор банальных рекомендаций, без раскрытия темы. как сделать запрос лучше? окей, забеф. я уже понял что это был звук в лужу с твоей стороны. как всегда. :) Все твои проблемы решаются банально. Джун за пол дня бы уже решил. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 14:39 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Надо оптимизировать и ты знаешь как - но возможностей нету. Ибо ORM блин (!) не поддерживает hints. И еще много можно чего написать просто про usability. Про алиасы. Форматирование. Но я думаю общая мысль понятна. +1 А порой можно и без хинтов, просто переписать по-человечески запрос, но ORM блин (!) так не может, его самого надо дрессировать и всё равно фигня какая-то получается. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:07 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Hibernate/SpringData разрешает делать native sql https://www.tutorialspoint.com/hibernate/hibernate_native_sql.htm https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#reference тоесть архитектурно ORM не запрещает их. И вопрос нативности - это просто вопрос развитости разработчика. Он в состоянии оценить возможности этой фичи и понять что она ему полезна? Я очень часто слышал доводы против ... дексыть "мы не привязаны к DBMS". Ха... наивные. Да вам проще будет половину кода переписать чем поменять DBMS. И не дай бох она зашла в продакшен. Это уже навсегда. И там не только лицензии. Там и репликации. И 100500 левых систем которые уже сидят на данной dbms как на наркотике. И обученный персонал. И много прочих факторов. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:14 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Vyatich, Там может быть и не орм и не хибер а что угодно вплоть да антивируса сканирующего в определенное время папки. ТС не разбирается с юз кейсом вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:19 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, я про ОРМ вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:26 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Vyatich mayton Надо оптимизировать и ты знаешь как - но возможностей нету. Ибо ORM блин (!) не поддерживает hints. И еще много можно чего написать просто про usability. Про алиасы. Форматирование. Но я думаю общая мысль понятна. +1 А порой можно и без хинтов, просто переписать по-человечески запрос, но ORM блин (!) так не может, его самого надо дрессировать и всё равно фигня какая-то получается. запрос сверху. просили запрос показать обещали разом дать точный совет как только будет предмет обсуждения. предмет есть. теперь покажи "переписанный" запрос. я прямо сразу его проверю. покажешь? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:27 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Vyatich PetroNotC Sharp, я про ОРМ вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:28 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Hibernate/SpringData разрешает делать native sql https://www.tutorialspoint.com/hibernate/hibernate_native_sql.htm https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#reference тоесть архитектурно ORM не запрещает их. И вопрос нативности - это просто вопрос развитости разработчика. Он в состоянии оценить возможности этой фичи и понять что она ему полезна? Я очень часто слышал доводы против ... дексыть "мы не привязаны к DBMS". Ха... наивные. Да вам проще будет половину кода переписать чем поменять DBMS. И не дай бох она зашла в продакшен. Это уже навсегда. И там не только лицензии. Там и репликации. И 100500 левых систем которые уже сидят на данной dbms как на наркотике. И обученный персонал. И много прочих факторов. плюсы не только это. но и проверки во время компиляции а не когда на проде упало потому что букву забыл. ну как бы еще мешок ЗА, в смысле ЗА орм. снова обсуждение не туда. сам запрос собранный хибером то чем конкретно не угодил? там есть какой-то очевидный косяк в нем? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT обещали разом дать точный совет andreykaT покажешь ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Vyatich PetroNotC Sharp, я про ОРМ вообще. обещанный "улучшнный" запрос покажи, трепло. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:30 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT мешок ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:31 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp пропущено... про него согласен, для CRUD ведь применяют. А не как у него. Бред полный. обещанный "улучшнный" запрос покажи, трепло. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT запрос сверху. просили запрос показать обещали разом дать точный совет как только будет предмет обсуждения. предмет есть. теперь покажи "переписанный" запрос. я прямо сразу его проверю. покажешь? Разумеется. Можешь привести план запроса и AWR, чтобы хотя бы понять где находится проблема? Я ведь не слишком о многом прошу? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:33 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT пропущено... обещанный "улучшнный" запрос покажи, трепло. то есть ты не знаешь что с этим запросом НЕ так? так и скажи "Я ПетроНотШарп НЕ знаю что с твоим запросом не так, для меня он выглядит идеальным". слабО? или дальше в лужу дышать будешь, трепло? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:33 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Ты правда подумал что все твои беды из за петро? ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:39 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Мне интересно как тебя 6 мемберов сумеют заставить что то сделать. Они ведь в шестером тебя просят. Я только седьмой) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:41 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT плюсы не только это. но и проверки во время компиляции а не когда на проде упало потому что букву забыл. ну как бы еще мешок ЗА, в смысле ЗА орм. снова обсуждение не туда. сам запрос собранный хибером то чем конкретно не угодил? там есть какой-то очевидный косяк в нем? Я не могу ответить. Ты являешься драйвером проблемы. Ты и должен сказать в чем косяк. Например - долго работает. Вот это косяк. Далее - я прошу тебя показать его план исполнения. Стандартная фича оракла. Без этого никакой архитектор не скажет тебе что не так. Внешне запрос хорош. План покажешь? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:43 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton План покажешь? Все замерли в ожидании. )) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 15:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton andreykaT плюсы не только это. но и проверки во время компиляции а не когда на проде упало потому что букву забыл. ну как бы еще мешок ЗА, в смысле ЗА орм. снова обсуждение не туда. сам запрос собранный хибером то чем конкретно не угодил? там есть какой-то очевидный косяк в нем? Я не могу ответить. Ты являешься драйвером проблемы. Ты и должен сказать в чем косяк. Например - долго работает. Вот это косяк. Далее - я прошу тебя показать его план исполнения. Стандартная фича оракла. Без этого никакой архитектор не скажет тебе что не так. Внешне запрос хорош. План покажешь? https://pasteboard.co/Jyvc0b9.jpg ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 16:40 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
А посчитай плиз Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 16:51 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Идея такая. Индексы тебе не помогают. Они слабо-селективны. Нужно двигаться к partitioning. Но сохранить последний индекс как локальный только для сортировок. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 16:55 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
И какие из частей запроса - вариативны? Тоесть что будет меняться? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:03 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, там каждый раз проходится 180тыс. строк таблицы, чтобы получить только 10тыс. из них. С партициями тоже вопрос в распределении данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:11 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
10 из 180 это примерно 5%. Для современных Ораклов это за гранью полезности индекса. Ну тоесть это очень спорно. И чем больше таблица тем хуже отклик курсора. И поскольку это не UI (как мы выяснили а микросервис) то FIND_FIRST нам не помошник. Нам нужно 100% строк. То будем форсировать физическую кластеризацию строк вокруг интересующих нас ключей. Мой поинт в том чтоб выделить интересующую под-выборку в отдельный hash-partition. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:14 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
даже просто select count(*) from Entity - занимает до 30 секунд. в первый раз и далее уже как боженька пошлёт. - например, 1-2 секунды. Майтон, сейчас посчитаю, если смысл всё еще есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:18 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT даже просто select count(*) from Entity - занимает до 30 секунд. в первый раз и далее уже как боженька пошлёт. - например, 1-2 секунды. Майтон, сейчас посчитаю, если смысл всё еще есть. Есть смысл проверить всё. До тех пор пока тебе не предложим CQRS. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:20 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton А посчитай плиз Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
1) 10kk 2) 190k 3) 10kk 4) 186k ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:21 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT select count(*) from Entity - занимает до 30 Ты удивился что ли блин? Закачать все поля и все записи вообще без индекса? Я фигею с тебя. Или не видел ни разу IDE для бд? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:21 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT если смысл всё еще есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:23 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Нужно видеть распределение данных, чтобы бить на партиции. Только что-то мне подсказывает, что enti0_.X='XXXXXVAL123' - это бОльшая часть таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:24 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Суффикс КК = миллион? Правильно ли я понял 1) 10kk == 10_000_000 2) 190k == 190_000 3) 10kk == 10_000_000 4) 186k == 186_000 ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Vyatich Нужно видеть распределение данных, чтобы бить на партиции. Только что-то мне подсказывает, что enti0_.X='XXXXXVAL123' - это бОльшая часть таблицы. нет. это примерно 180к записей из 10м. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Код: plsql 1.
Сколько возвращает? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:34 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Тоесть вот этот предикат у нас - самый полезный. Код: java 1.
Он - кандидат на ключ партишенинга. Он режет табличку на 1/52 часть и всё остальное туловище. Варианты - списковое партицирования с явным перечислением всех значений? Надо спросить у Андрея сколько уникальных иксов есть? И хеш партицирование с ~50 партишенов. Две из них дадут промах но всяко лучше чем бегать RANGE_SCAN по всей табличке. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:36 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Перед партицированием выясняют полезность и эффективность индексирования. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:40 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Я не знаю теоретической формулы. Поэтому ставлю эксперимент. Его цена все равно будет дешевле чем попытка учесть 100500 параметров сервера... включая случайные влияния соседних сеансов и запросов в этой-же БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:42 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Просто партицирование стоит после индексов в очередности. Вот и все. Это как лечить человека. Антибиотики позже водки)) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:44 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Суффикс КК = миллион? Правильно ли я понял 1) 10kk == 10_000_000 2) 190k == 190_000 3) 10kk == 10_000_000 4) 186k == 186_000 да, всё верно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:50 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Ты-же видел план. INDEX_RANGE_SCAN по enti0_.X='XXXXXVAL123' не дал достаточно скорости. Но этот индекс выполнил другую полезную работу. Он выдает сразу сортирующий итератор (курсор). И это нельзя забывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:50 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Vyatich Код: plsql 1.
Сколько возвращает? 186k, enti0_.a - это уникальный ключ для каждой записи. считай айдишник (но он тоже есть). почему так - ну вот так вот. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:52 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT почему так - ну вот так вот. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:53 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT почему так - ну вот так вот. давай выражусь корректнее - это строковое поле, которое имеет уникальное значение для каждой записи. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:56 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp пропущено... расшифруй) давай выражусь корректнее - это строковое поле, которое имеет уникальное значение для каждой записи. А как быть с ID хибера и rowid оракла? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 17:58 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Внезапно - ОРМ уникальность для объакта обеспечиват через ID записи. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 18:00 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Забудьте про rowId. Он нужен только для обеспечения работы индексов. И для ремонтно-восстановительных работ когда база повреждена. На него нельзя накручивать бизнес-смыслы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 18:04 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Тогда разбей на partitions по enti0_.X и создай локальный, УНИКАЛЬНЫЙ индекс по enti0_.a. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 18:07 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Тоесть вот этот предикат у нас - самый полезный. Код: java 1.
Он - кандидат на ключ партишенинга. Он режет табличку на 1/52 часть и всё остальное туловище. Варианты - списковое партицирования с явным перечислением всех значений? Надо спросить у Андрея сколько уникальных иксов есть? И хеш партицирование с ~50 партишенов. Две из них дадут промах но всяко лучше чем бегать RANGE_SCAN по всей табличке. 10M записей партиционировать ? имхо таблица крошечная, смысла партиционировать нет. планы с картинки бесполезены, т.к. сняты когда вся таблица явно в буферном кеше, затрат на и/о почти нет, соответственно и elapsed time миллисекунда. нужен план с 30 секундами и нормальная статистика, autotrace вот так показывает Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 18:11 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Это кому? Я и не обращаюсь к оракловому. У него два айди что ли? Тогда и будет как есть счас. Бардак в голове и табле ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 18:28 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 нужен план с 30 секундами Но ему не доходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 18:33 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 10M записей партиционировать ? имхо таблица крошечная, смысла партиционировать нет. планы с картинки бесполезены, т.к. сняты когда вся таблица явно в буферном кеше, затрат на и/о почти нет, соответственно и elapsed time миллисекунда. нужен план с 30 секундами и нормальная статистика, autotrace вот так показывает Да. Вот эта ситуация с плавающим откликом показывает что у него полезные блоки выгружаются. И от 2 до 30 секунд - это объясняет. Я-же предлагаю SEQUENTAL_READ по всей таблице заменить на SEQUENTAL_READ по сортируемому полю в рамках 1 партишена который будет в 50 раз меньше. По поводу крошечной таблицы. Мы вычитываем 7М на 10 000 это примерно 700 символов на результирующую строку. Это немало. Возможно оригинальная строка еще шире. В блоке мало строк. А это значит что INDEX_RANGE scan еще менее эффективен. Строки некластеризованы вокруг одного блока. Я кстати в качестве эксперимента предложу Андрейке просто еще раз пересоздать таблицу CTAS по сортированной выборке. Этот чортов фактор кластеризации о котором так любят спрашивать новички... Мдя.... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 18:42 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
конкретно этому запросу должно помочь Код: plsql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 19:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton По поводу крошечной таблицы. Мы вычитываем 7М на 10 000 это примерно 700 символов на результирующую строку. Это немало. Возможно оригинальная строка еще шире. В блоке мало строк. А это значит что INDEX_RANGE scan еще менее эффективен. Строки некластеризованы вокруг одного блока. В 180к записях у него 15 мб, вся талица значит порядка 833 мб. нужен план при 30 секундах и статистика. если реально andreykaT select count(*) from Entity - занимает до 30 то i/o просто мертвое переодически. партиционирорвать 833 мб ... по мне это звучит странно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 19:21 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
По настоящему крутые ораклисты добиваются того чтобы искомые данные ФИЗИЧЕСКИ лежали близко в процессе выборки. Это или партишенинг или кластеризация. Индексы танцуют только на 7% селективности (как было во времена Oracle 8i) и щас кажется задавили до 3%. И сюда-же до кучи игры с механикой заполнения блока. В идеале выгодно чтоб блок заполнялся на 100%. Но это хуже для updates. Можно подключить также Oracle Compression чтоб унылые повторения строк поджать. Получится gzip внутри блока. Тоже можно попробовать. В дата-аналитике еще дальше пошли. Там решили что не нужно физически хранить строку. А нужно - столбец. Но это - если 500 колонок в таблице и выше. И это таки помогает. Вобщем пробуйте физически консолидировать искомые данные. И так чтоб скорость insert/update упала но не сильно. Можно защелкнуть таблицу в приоритетах чтоб она была выше чем другие (BUFFER_POOL_KEEP) если у Андрейки хватит привилегий. Тогда ее никто не вытеснит из BP. Путей - масса. А вы говорите Хибернейт... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 19:24 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 mayton По поводу крошечной таблицы. Мы вычитываем 7М на 10 000 это примерно 700 символов на результирующую строку. Это немало. Возможно оригинальная строка еще шире. В блоке мало строк. А это значит что INDEX_RANGE scan еще менее эффективен. Строки некластеризованы вокруг одного блока. В 180к записях у него 15 мб, вся талица значит порядка 833 мб. нужен план при 30 секундах и статистика. если реально andreykaT select count(*) from Entity - занимает до 30 то i/o просто мертвое переодически. партиционирорвать 833 мб ... по мне это звучит странно. да. в мониторе на ио уходит 98% ресурса и типа 2% - цпу ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 19:35 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT да. в мониторе на ио уходит 98% ресурса и типа 2% - цпу а что там за дисковый массив, можно узнать? И сбрасывается ли HWM? В купе с сильной фрагментацией данных это может привести к проблемам. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 20:19 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Так чо там? Сколько уникальных иксов? Код: java 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 20:22 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Дались тебе такие крупные меры как кластер и партиции. Профи ораклоидов как нас тут не разведешь. 22157184 Он ораклоидов мучил еще летом. Теперь нас тут по этому же вопросу. Скучно ему. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 20:22 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Заметь, какой простой запрос он привел в ветке оракла Код: java 1.
И как обвешал мишурой в ветке java )) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 20:26 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Да будет тебе. Зачем заниматься сбором сведений на человека? Я думаю что Андрей не разраб а PM. Ну тоесть ему-бы поручить задачу кому-то скиллованому и чтоб тот вышел с результатом. Дескыть получилось или бизнес не позволяет расширить лицензии и прикупить нормальное железо или просто прав не дали ибо нефик. Или вообще задача на самом деле не такая уж приоритетная. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 20:29 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Если ему не важен результат то это называется подстава. - ссыль на оракл я просил выше - упростить запрос я просил ТС выше. Если бы сделал сразу, то топик не нужен. Так как ответ был летом от ветки оракла. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 20:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Да будет тебе. Зачем заниматься сбором сведений на человека? Я думаю что Андрей не разраб а PM. Ну тоесть ему-бы поручить задачу кому-то скиллованому и чтоб тот вышел с результатом. Дескыть получилось или бизнес не позволяет расширить лицензии и прикупить нормальное железо или просто прав не дали ибо нефик. Или вообще задача на самом деле не такая уж приоритетная. ..или я просто не дба. ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 21:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Для этого не нужно быть DBA. В Оракле есть тонкая система привилегий. Все можно заказать и все получить. Но меня честно демотивирует твоё нежелание что-то делать. Не хочешь фиксить root-cause - я тебе тут не помошник. Хочешь изучать эластик - ради бога. Только опиши в топике. Дескыть ребята. Скушно. Хочу эластик. И другой разговор пойдет... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 21:17 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Для этого не нужно быть DBA. В Оракле есть тонкая система привилегий. Все можно заказать и все получить. Но меня честно демотивирует твоё нежелание что-то делать. Не хочешь фиксить root-cause - я тебе тут не помошник. Хочешь изучать эластик - ради бога. Только опиши в топике. Дескыть ребята. Скушно. Хочу эластик. И другой разговор пойдет... так я ж с самого начала об этом говорю :) 1) так я с начала топика об этом говорю а вы выпытывать начали что не так давай решим. 2) ну давай решим. :) только я не думаю, что: а) там проблема на поверхности, это не так. и обсуждение тут это показало. б) моей оракловой компетенции (которой нет) хватит это сделать. пока единственный реально исплнимый совет тут прозвучал - это добавить индекс (а он уже добавлен :)) в) у меня в конторе вполне очерченные границы ответственности у каждого. девопсы не лезут к разрабам, разрабы не лезут к дбашникам. дбашники не лезут ни к первым ни ко вторым. а в случае этого запроса и ничего сказать не могут что же тут не так. зы. пока ловлю момент когда каунт выдаст 30 секунд чтоб снять план с него. ...снял - цифры не различаются. что 30 сек что 1 сек. иокост - 8500, цпукост - 1.5 миллиона ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:02 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Но этот индекс выполнил другую полезную работу. Он выдает сразу сортирующий итератор (курсор). И это нельзя забывать. Если это был план быстро работающего запроса, то как он писал выше, поля сортировки у него меняются, т.е. в худшем случае у него возможно table full scan и сортировка. И rownum <= 10000 выглядит странно, потому что пагинация выглядит не так)) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:08 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, опять дурака включил авторне понимаю как физику обмануть? твоя фраза? Значит летом соображал что чтобы пагинацию отдать на клиента надо сначала ВСЕ отсортировать. andreykaT ...снял - цифры не различаются. что 30 сек что 1 сек. и где два плана и два запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:10 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT зы. пока ловлю момент когда каунт выдаст 30 секунд чтоб снять план с него. ...снял - цифры не различаются. что 30 сек что 1 сек. иокост - 8500, цпукост - 1.5 миллиона потому что ты а) смотришь не план выполненого запроса, а предолагаемый б) к гадалке не ходи, смотришь после того как запрос выполнился за 30 секунд и значит все блоки уже в буферном кеше. я говорю джун и девопс, без дба убойная смесь. в нормальной ситуации ты должен был стандартным sqlplus сказать set timing on, set autotrace on и показать резалт дба. дба со свой сороны не должны были ждать от тебя репорта, сами должны были увидеть все в админке. должны были увидеть варнинги, что заросы тупят по 30 секунд. в админке это хорошо видно и видно именно выполнившиеся планы, а не предолагаемые. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:14 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
H5N1 andreykaT зы. пока ловлю момент когда каунт выдаст 30 секунд чтоб снять план с него. ...снял - цифры не различаются. что 30 сек что 1 сек. иокост - 8500, цпукост - 1.5 миллиона потому что ты а) смотришь не план выполненого запроса, а предолагаемый б) к гадалке не ходи, смотришь после того как запрос выполнился за 30 секунд и значит все блоки уже в буферном кеше. я говорю джун и девопс, без дба убойная смесь. в нормальной ситуации ты должен был стандартным sqlplus сказать set timing on, set autotrace on и показать резалт дба. дба со свой сороны не должны были ждать от тебя репорта, сами должны были увидеть все в админке. должны были увидеть варнинги, что заросы тупят по 30 секунд. в админке это хорошо видно и видно именно выполнившиеся планы, а не предолагаемые. в моем видении прекрасного дба должны были сами напрячь булочки и подумать что за чухня что простой селект каунт рандомно тупит 30 сек. даже снимать ничего не надо. мне НЕ интересно колупаться в потрохах оракла. просто потому что я не сделаю это лучше чем дба за тот же отрезок времени как это мог бы сделать адекватный дба. и да, кейс я зарепортил. дальше тут вон народ уже 5 страниц никак не хочет прочесть с чего топик начался и развлекается как может. ну ладно, значит это важнее. стараюсь как могу. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:26 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT, опять дурака включил авторне понимаю как физику обмануть? твоя фраза? Значит летом соображал что чтобы пагинацию отдать на клиента надо сначала ВСЕ отсортировать. andreykaT ...снял - цифры не различаются. что 30 сек что 1 сек. и где два плана и два запроса. я и сейчас это соображаю. всё жду от тебя оптимизированного запроса. а то хиберовский то кривой ведь. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:28 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, этот кривой? Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:31 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT, этот кривой? Код: sql 1.
нет. если ты считаешь иначе - выпрями я подожду. я подозреваю как ты его выпрямишь. но я подожду чтоб ты это сюда запостил. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:35 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, витеевато глаголешь))) Че в нем кривого? Подзапрос и сверху пагинация. Ну, кроме звездочек. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:38 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT H5N1 пропущено... потому что ты а) смотришь не план выполненого запроса, а предолагаемый б) к гадалке не ходи, смотришь после того как запрос выполнился за 30 секунд и значит все блоки уже в буферном кеше. я говорю джун и девопс, без дба убойная смесь. в нормальной ситуации ты должен был стандартным sqlplus сказать set timing on, set autotrace on и показать резалт дба. дба со свой сороны не должны были ждать от тебя репорта, сами должны были увидеть все в админке. должны были увидеть варнинги, что заросы тупят по 30 секунд. в админке это хорошо видно и видно именно выполнившиеся планы, а не предолагаемые. в моем видении прекрасного дба должны были сами напрячь булочки и подумать что за чухня что простой селект каунт рандомно тупит 30 сек. даже снимать ничего не надо. мне НЕ интересно колупаться в потрохах оракла. просто потому что я не сделаю это лучше чем дба за тот же отрезок времени как это мог бы сделать адекватный дба. и да, кейс я зарепортил. дальше тут вон народ уже 5 страниц никак не хочет прочесть с чего топик начался и развлекается как может. ну ладно, значит это важнее. стараюсь как могу. Ну так все правильно говоришь. Обычно в таких случаях я на этом и заканчиваю ресерч. Если от меня ждут результата я так и говорю - проблема вероятно на стороне этих судаков, хочешь - или разбирайся с ними, нет - или на йух. Если оказывается, что проблема всё-таки фундаментальная, но это эти судаки должны четко подтвердить - я задумываюсь о смене архитектуры. В твоём случае объемы данных реально смешные для такого низкого перформанса и я бы пальцем о палец не ударил ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 22:54 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
забыл ник, Они похоже уже четыре месяца мячик друг другу кидают ... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:00 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT, витеевато глаголешь))) Че в нем кривого? Подзапрос и сверху пагинация. Ну, кроме звездочек. тааак. теперь напиши, как он по-твоему мнению должен выглядеть правильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:14 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
забыл ник andreykaT пропущено... в моем видении прекрасного дба должны были сами напрячь булочки и подумать что за чухня что простой селект каунт рандомно тупит 30 сек. даже снимать ничего не надо. мне НЕ интересно колупаться в потрохах оракла. просто потому что я не сделаю это лучше чем дба за тот же отрезок времени как это мог бы сделать адекватный дба. и да, кейс я зарепортил. дальше тут вон народ уже 5 страниц никак не хочет прочесть с чего топик начался и развлекается как может. ну ладно, значит это важнее. стараюсь как могу. Ну так все правильно говоришь. Обычно в таких случаях я на этом и заканчиваю ресерч. Если от меня ждут результата я так и говорю - проблема вероятно на стороне этих судаков, хочешь - или разбирайся с ними, нет - или на йух. Если оказывается, что проблема всё-таки фундаментальная, но это эти судаки должны четко подтвердить - я задумываюсь о смене архитектуры. В твоём случае объемы данных реально смешные для такого низкого перформанса и я бы пальцем о палец не ударил собссно я так и делаю. :) про архитектуру у меня был вопрос в разрезе ХС где эластик поверх рдбмс версус - юзать эластик только без рдбмс. почитал мешок артиклей - однозначного мнения так и не увидал. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:19 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode забыл ник, Они похоже уже четыре месяца мячик друг другу кидают ... Да, ТС любит мячик кидать и ...ничего не делать. Даже для саморазвития. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:19 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT PetroNotC Sharp andreykaT, витеевато глаголешь))) Че в нем кривого? Подзапрос и сверху пагинация. Ну, кроме звездочек. тааак. теперь напиши, как он по-твоему мнению должен выглядеть правильно. Идиотизм какой то. - Топик твой? Топик о проблеме в запросе? В оракле? Если нет, то нахрена ты вообще про оракл говорил? Код: java 1.
Прикинулся как ты идиотом и задаю вопрос - напиши запрос правильно! Я жду)))) LOL ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:23 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Ты уникальный бездельник. - к ДБА ты бегал чтобы они исправили запросы - ко мне пристал чтобы я написал правильный ТВОЙ запрос - всем кукарекал что ты не ДБА и не хочешь им стать))) .... Господа - это поколение #микросервиспрограммистов ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:26 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Такие топики (пустые) бывают когда кодировщики пытаются стать архитекторами. Экстерном. Я понимаю что ты хочешь сменить жену архитектуру на новую. Но архитектура не бывает на пустом месте. Типа выкинул оракл и поставил эластик. Есть проблема - они не взаимозаменяемы))) Поэтому говорить про эту замену с тобой никто не будет. Топик закроется. Старая жена уйдет. А новая хуже прежней будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Вот по ссылке выше andrey_anonymous написал: авторНа самом деле тема не сложная, но и не тривиальная. И вопрос тут не в форме написания, sql - язык декларативный. В приведенном примере вопрос в сортировке. Оптимизатор на основе декларации построит программу действий (план запроса), исходя из собственных возможностей и представлений о прекрасном. Но попробуйте представить, как бы Вы лично решили данную задачу - отобрать Х записей, расположенных в определенном порядке. Праальна, для начала надо отсортировать. Отсортировать ВСЁ множество. Просто потому, что пока не будет просмотрены (и пристроены) все фактические значения ключа сортировки - невозможно сказать, нет ли среди не просмотренных ключа, который встанет перед уже отобранными и, таким образом, сместит весь отсчет. Обойти это нельзя. То есть если писать "правильный запрос" то надо поставить правильно задачу. andrey_anonymous про это написал черным по белому. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.11.2020, 23:46 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, У него и запрос левый, он говорит про пагинацию, а ее нет ... )) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 00:07 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT H5N1 пропущено... потому что ты а) смотришь не план выполненого запроса, а предолагаемый б) к гадалке не ходи, смотришь после того как запрос выполнился за 30 секунд и значит все блоки уже в буферном кеше. я говорю джун и девопс, без дба убойная смесь. в нормальной ситуации ты должен был стандартным sqlplus сказать set timing on, set autotrace on и показать резалт дба. дба со свой сороны не должны были ждать от тебя репорта, сами должны были увидеть все в админке. должны были увидеть варнинги, что заросы тупят по 30 секунд. в админке это хорошо видно и видно именно выполнившиеся планы, а не предолагаемые. в моем видении прекрасного дба должны были сами напрячь булочки и подумать что за чухня что простой селект каунт рандомно тупит 30 сек. даже снимать ничего не надо. мне НЕ интересно колупаться в потрохах оракла. просто потому что я не сделаю это лучше чем дба за тот же отрезок времени как это мог бы сделать адекватный дба. и да, кейс я зарепортил. дальше тут вон народ уже 5 страниц никак не хочет прочесть с чего топик начался и развлекается как может. ну ладно, значит это важнее. стараюсь как могу. Андрей. Разве dba или девопс тебе указывают брать TreeMap или HashMap? Ты это определяешь! Ты тот кто знает потребности бизнеса! Ты знаешь алгоритмы. ДБА может быть советчиком но он не решает какие типы данных включать в таблицу! Партишенинг. Матвью. Это продумывает в первую очередь тот кто создаёт систему! Что за пассивная позиция! Ты согласен заниматься чепухой с эластиком вместо того чтоб открыть справочник по ораклу и просто посмотреть как можно написать create table с учётом твоих потребностей. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 01:23 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT я напилил некий ПОЦ на хиберсерче. но хиберсерч работает поверх рдбмс. то есть прилетает пользовательский запрос - ХС, идет за данными в эластик по индексированным полям, вытряхивает из него скажем 40 айдих (на страницу) и с этими айди прётся в рдбмс, доставая уже оттуда сущности целиком и простым запросом а ля селект туда сюда фром таблица вхере айди ин () собссно вопрос - насколько эта схема рациональна? вполне рациональна. насколько, зависит от вороха деталей. почитал топик, подивился... народ, скажем, странно реагирует не вникнув в детали проблемы :) делайте поиск на ЕС, это нормальное решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 06:01 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt вполне рациональна. насколько, зависит от вороха деталей. Так по логике вещей? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 08:16 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode запрос левый, ) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 08:20 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Я же говорю. Запрос - нормальный. Надо выпрямить структуру данных по которой запрос бегает. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:03 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp graycode запрос левый, ) Вполне логично. Если ТВ говоришь что кривой то ты знаешь как должен выглядеть прямой. Хотя нет. Ты по ходу не знаешь. Ты даже простой вложенный селект боишься разложить :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:09 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT Если ТВ говоришь что кривой то ты знаешь как должен выглядеть прямой Термины - мешок, булки, прямой, кривой только твои в топике. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:27 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Запрос - нормальный. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:27 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, У него рандомно (тоже термин) то работает то нет. Это очень тяжелый случай. Не лечится. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Нормальный в бытовом смысле. Приемлемый. Достаточный чтоб не искать перфекционизма. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:33 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Нормальный в бытовом смысле. Приемлемый. Достаточный чтоб не искать перфекционизма. А что он ищет? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:35 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, У него рандомно (тоже термин) то работает то нет. Это очень тяжелый случай. Не лечится. Я уже объяснил это явление. У базы остывает кеш. За счёт конкурирующих запросов которые выталкивают полезные блоки. И если долго ждать (сутки), то этот же запрос с этим же планом при следующем выполнении полезет вычитывать с диска все блоки. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:37 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Я уже объяснил это явление. У базы остывает кеш. И "как надо" ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:42 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, На уровне черного ящика субд. Не видим никаких кешей. Внутри ящика любая рсубд ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:43 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Я просто устал. У человека есть свои убеждения. А у меня - просто гипотезы как улучшить. Вот мы и кружимся в вальсе. То сходимся. То расходимся. А почему Elastic? Давайте Tarantool. Все одно скушно в этом топике. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:47 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton, На уровне черного ящика субд. Не видим никаких кешей. Внутри ящика любая рсубд Ну сорян. Я не спец по "любым" СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:48 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Да. До эластика разговор вообще не доходил и не дойдет. Пока ТС не прекратит парить мозги про рандомные ошибки. Есть же анекдот про суслика. Кто устраняет рандомность? Думаю если есть тестировщики в штате то они. Если нет, то программист. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:51 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Ну сорян. Я не спец по "любым" СУБД. Не верю: - стабильные результаты - повторяемость результатов - непротиворечивые данные - многопользователские данные - транзакционность ... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 10:54 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton andreykaT пропущено... в моем видении прекрасного дба должны были сами напрячь булочки и подумать что за чухня что простой селект каунт рандомно тупит 30 сек. даже снимать ничего не надо. мне НЕ интересно колупаться в потрохах оракла. просто потому что я не сделаю это лучше чем дба за тот же отрезок времени как это мог бы сделать адекватный дба. и да, кейс я зарепортил. дальше тут вон народ уже 5 страниц никак не хочет прочесть с чего топик начался и развлекается как может. ну ладно, значит это важнее. стараюсь как могу. Андрей. Разве dba или девопс тебе указывают брать TreeMap или HashMap? Ты это определяешь! Ты тот кто знает потребности бизнеса! Ты знаешь алгоритмы. ДБА может быть советчиком но он не решает какие типы данных включать в таблицу! Партишенинг. Матвью. Это продумывает в первую очередь тот кто создаёт систему! Что за пассивная позиция! Ты согласен заниматься чепухой с эластиком вместо того чтоб открыть справочник по ораклу и просто посмотреть как можно написать create table с учётом твоих потребностей. я не уверен что легким путем можно создать новую таблицу и туда всё перетащить с этой на которую миллион зависимостей из других таблиц и просто экземпляров этих таблиц по всем инстансам десятки. то есть масштабы бедствия несколько велики. в общем, я зарепортил кейс. подожду что они там скажут. отмазка "у тебя кривой запрос" у них точно не прокатит, даже наш Петрушка согласился что запрос не кривой. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 11:41 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode PetroNotC Sharp, У него и запрос левый, он говорит про пагинацию, а ее нет ... )) я гляну в код как до компа с ним доберусь. возможно там просто берется топ 10к и всё. возможно просто это запрос первой страницы без скипа. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 11:43 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT я зарепортил кейс. andreykaT возможно там просто берется топ 10к и всё. возможно просто это запрос первой страницы без скипа. и не знает как взять первые N записи после сортировки. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 12:00 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT возможно просто это запрос первой страницы без скипа. Неважно какая страница, запрос должен быть один и запрос должен использовать связанные переменные, в противном случае будет выполняться 15 разных запросов, для каждой страницы свой и каждый из них парсится и для каждого строится свой план выполнения. Запрос твой был бы нормальным году этак в 2005-м на 8-9-й версии Оракла, вот тебе статься от 2007 года On Top-n and Pagination Queries , приведи свой запрос хотя бы к виду актуальному на 2007 год и не забудь использовать связанные переменные, а то прям веет временами когда мамонты по земле бродили)) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:03 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Это ему не поможет. У него в плане - неэффективная выборка по индексу. И сделать с ней вобщем ничего нельзя по причине тех 10% селективности о которых я говорил. Грубо говоря 3% - индекс рулит. 50% рулит партишенинг (+локальный индекс). Где-то между ними стоит мягкая граница где идет вечная война оптимизатора и хинтов. Есть еще другие технологии такие как материализация ответа и кластеризованные таблицы. И вообще отказ от БД как таковой (далее мы дойдем до эластиков-уястиков) но мы еще не вычерпали Оракл. Я так считаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
В смысле в стандартном виде без тюнинга оракл дохнет на паре сотен тысяч записей в таблице на десять миллионов? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:23 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Вопрос поставлен неправильно. А правильно звучит так. Что мы сделали для того чтобы Оракл прочитал с диска (а он почти всегда читает с диска первый раз) наши данные? Причем так чтобы между них было меньше ненужных данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:28 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT В смысле в стандартном виде без тюнинга оракл дохнет на паре сотен тысяч записей в таблице на десять миллионов? Не бывает стандартного вида для любой СУБД, в каждой СУБД своя специфика, запрос который ты генеришь - отстой даже с точки зрения "стандартного" вида)) С Ораклом все в порядке, проблемы с теми кто строит архитектуру приложения, распределяет ресурсы и балансирует нагрузку)) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:47 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, У него вопросы - простые. "оракл дохнет!" А вы тут IO/ селективность/кеши/... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:47 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Я-бы предложил поднять новый топик на тему Эластика и прочих NoSQL систем с совершенно другой постановкой. Ну типа мы создаем новую систему. У этого топика - плохая карма. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:49 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Боюсь там будет примерно то же самое, только под девизом - эластик дохнет)) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:52 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
У эластика активирован механизм экстенсивного наращивания дури. Медленно работает поиск - ты просто платишь больше денег и в элестик-кластер загоняют больне nodes, shards e.t.c. Правда там нет консистентности. Но для логов. Или для документов это не очень актуально. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:56 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode andreykaT В смысле в стандартном виде без тюнинга оракл дохнет на паре сотен тысяч записей в таблице на десять миллионов? Не бывает стандартного вида для любой СУБД, в каждой СУБД своя специфика, запрос который ты генеришь - отстой даже с точки зрения "стандартного" вида)) С Ораклом все в порядке, проблемы с теми кто строит архитектуру приложения, распределяет ресурсы и балансирует нагрузку)) запрос генерит хибер исходя из того что в него запихнули критериями. если ты тоже полагаешь что он может быть лучше, в смысле эта эффективность будет настолько что 30 сек не будет тупить - ну так напиши. Петрушка вот не смог хоть и грозился что знает где его кривость. Я тоже не умею. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 14:59 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Так это и в Оракле работает, можно всю табилцу в память загнать, можно индекс построить под его запрос, чтобы он в таблицу вообще не лез, нод добавить, шардинг и так далее, усё есть, только денег стоит)) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:00 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT эффективность будет настолько что 30 сек не будет тупить Недаром тебе ДБА не верят. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:03 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
У него ослик вылетел по таймауту. А он 8 страниц гонит на оракл. Чудо программист! ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:05 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT 30 сек не будет тупить Ты знаешь почему тупит 30 секунд, в чем разница между 2-мя и 30-ю секундами конкретно? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:06 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode andreykaT 30 сек не будет тупить Ты знаешь почему тупит 30 секунд, в чем разница между 2-мя и 30-ю секундами конкретно? Запрос КРИВОЙ))). ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:08 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode andreykaT 30 сек не будет тупить Ты знаешь почему тупит 30 секунд, в чем разница между 2-мя и 30-ю секундами конкретно? очень странный вопрос для девятой страницы этого топика. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:28 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT очень странный вопрос для девятой страницы этого топика. Этот вопрос задавали практически на каждой странице топика, ответа так и не увидели)) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:31 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT graycode пропущено... Ты знаешь почему тупит 30 секунд, в чем разница между 2-мя и 30-ю секундами конкретно? очень странный вопрос для девятой страницы этого топика. Тут помню что писал. Тут не помню. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode andreykaT очень странный вопрос для девятой страницы этого топика. Этот вопрос задавали практически на каждой странице топика, ответа так и не увидели)) у меня нет ответа на этот вопрос. если бы он был этого срача бы не было. я если честно уже потерял нить дискуссии, на мой вопрос по теме топика был один единственный, пожалуй, ответ, одно единственное мнение, одно единственное сообщение. остальное - какое то непонятное гадание причем вообще не по теме и на вопросы которые я не задавал, плюс плевание в меня дерьмом некоторыми персонажами, которые боятся строчку своего кода показать. умываю руки в этой теме, всем спасибо за участие. всем удачи и профессиональных успехов. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 15:57 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, Это лично твои проблемы и твоя лень как топикстартера. Потерял нить, да и летом уже обсуждали в ветке оракла. Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 16:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT, В течении всего обсуждения тебя пытаются направить на путь поиска причин проблемы, казалось бы обычная работа программиста, выяснить причину и найти пути ее устранения, но что то танцору мешает ... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 16:20 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton Ну сорян. Я не спец по "любым" СУБД. Не верю: - стабильные результаты - повторяемость результатов - непротиворечивые данные - многопользователские данные - транзакционность ... Удивлен? Посмотри какие толстые книги пишут для DBA. Их смысл в одном. Как тюнить дефолтную конфигурацию БД под нужды бизнеса. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 16:38 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Я про метод черного ящика. Он тоже есть и работает. Когда четко ограничиваешь круг. Это уже не для дба а для пользователей продукта "рсубд". Или ветка - Српвнение субд. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 16:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Какой инфо-повод затаскивать в этот топик черный ящик. У Андрейки была проблема перформанса. И эти абстракции никак не приближают нас к ее решению. Ну тоесть я тоже сторонник теоретических подходов. Но в данном кейсе? Ну... не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 16:54 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Очень просто. Что изменилось между двумя запросами. Первый 1 сек, второй 2 часа.? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 17:04 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Вселенная изменчива. У тебя даже электричество в розетке не постоянно. В вечернее время оно понижается. Нагрузка ибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 17:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Вот и говорилось выше что поиск зависимости это работа. Надо работать. Не влезая в ящик. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 17:28 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Если ты решаешь проблему нестабильной работы электроприборов, то ты будешь исключать электрическую сеть путем ее мониторинга во время нестабильной работы электроприборов. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 17:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Я не настаиваю. Я 2000х интересовался базами данных. Читал книжки по Postgres, Oracle, Db2. Но времена меняются. Сегодня DBA на производстве уже не нужен. Техподдержка стала более шаблонизированной. Но общий уровень знаний баз данных среди программистов сильно упал. Я не знаю с чем это связано. Наверное с трендами времени. Хотя учет денег не ушел как задача. Скорее на фоне него дурие задачи (Internet-Of-Thins, BigData, ML, FuzzyText processing) резко вышли на новый уровень и культура реляционок просела. И сам программист перестал быть мотивированным к решению таких задач. Он просто резко меняет постановку отказываясь от ACID в пользу eventual consistency/idempotancy. Благо бизнес это позволяет. А на этих евеншуал можно уже танцевать в сторону файловых хранилищ, или сообщений. Вобщем - красота. Так что я не сомневаюсь что Адрей бросит конешно разбираться с БД. Он выкрутится по своему. Просто будут заказаны и куплены серваки под кеш на базе или Эластика-уястика или Редиса-уедиса... или Ignite или Hazelcast да мало-ли чего. Кеширующих софтин тысячи. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 17:39 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Объем необходимых знаний в каждой дисциплине растет и одному человеку сложно охватывать все и сразу, поэтому идет более глубокая дифференциация, фуллстек уже не может быть эффективным на сложных задачах, банально не хватит актуальности знаний и опыта. Чтобы заказывать серваки и развертывать новую неспецифичную для проекта архитектуру, нужно обоснование, с обоснованием есть явные проблемы ... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 17:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Биллинг. Лицензии на RDBMS были всегда дорогие. Я заметил что Амазон при прочих равных условиях тяготеет к перетаскиванию людей с нормальных БД на свой DynamoDb. И их калькуляторы биллинга обычно к этому способствуют. Люди смотрят и чешут репу. Ой блин... а нахрена нам Постгрес если мы его просто как key-value гоняем. Пускай будет Динамка она дешевле. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 17:48 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Я же говорю. Запрос - нормальный. Надо выпрямить структуру данных по которой запрос бегает. совершенно нет стойкого ощущения, что вы работали в больших корпоративных системах :) ваши "правильные" структуры там не работают. человек озвучил проблему, поиск не работает быстро, проблема плавающая -- очевидно, что задержки приходятся на моменты повышенной нагрузки. что вы заладили, исправь запрос. не пей. не кури. живи по корану. что за бестолковая идеализация мира такая у вас? и решается такое достаточно просто. либо БД выносится на отдельные мощностя, либо делается срез данных на своих мощностях. этому решению 100500 лет в обед. оно прекрасно работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 18:33 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Хвост, ты запрыгнул в вагон который никуда не едет. О чем мы тут? Вот приходи в следующий топик и будешь создавать "отдельные мощности". ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 18:37 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Хвост, ты запрыгнул в вагон который никуда не едет. О чем мы тут? Вот приходи в следующий топик и будешь создавать "отдельные мощности". ни в какой вагон я не запрыгивал, я просто внимательно почитал то, что ТС написал в самом начале. вопрос простой и понятный. ответ такой же простой и понятный. я вот видал много людей, которые пальцы гнут на тему как правильно БД проектировать, запросы писать королевские, всё-то у них летает быстрее света, мастера хинтов куда не плюнь ну-ну. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:12 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton И сам программист перестал быть мотивированным к решению таких задач. Он просто резко меняет постановку отказываясь от ACID в пользу eventual consistency/idempotancy. Благо бизнес это позволяет. А на этих евеншуал можно уже танцевать в сторону файловых хранилищ, или сообщений. Вобщем - красота. я боюсь, что вы путаете круглое с мягким. зачем-то ACID и EC противопоставляете... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Я не мастер хинтов. Я их уже 10 лет как забыл. Я же писал выше. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton Я не мастер хинтов. Я их уже 10 лет как забыл. Я же писал выше. да я про общий фон разглагольствования.. с подобными смешными выводами: graycode В течении всего обсуждения тебя пытаются направить на путь поиска причин проблемы, казалось бы обычная работа программиста, выяснить причину и найти пути ее устранения, но что то танцору мешает ... слышал притчу про отца, сына и осла? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:20 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt, Нормальные выводы. Вот ты шаришь в архитектуре, а ТС двух слов связать не может про: "тормозит при нагрузке или тормозит в полуденный сон". Он только борется с админом своим всю жизнь и с петро)))). Если не умеет логически думать, то кто ему даст там серверы ставить? Кафку, базы, эластик и прочее. Без эластика ему там занятся нечем. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:37 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Вот ты шаришь в архитектуре, а ТС двух слов связать не может про: "тормозит при нагрузке или тормозит в полуденный сон". ТС не может дать вам ответ за систему, которой не владеет. Кроме того, любому самому захудалому спецу должно быть понятно, что причина плавающего времени ответа кроется в нагрузке на БД, которую создают другие системы. Как ты собираешься на это повлиять с помощью своих ЭСКУЭЛЬ запросов? Вставишь туда хинт, чтобы он матом крыл системы, которую нагрузку создают или что? В таких случаях применяют децентрализацию хранилища, забирают срез данных и пинают его как хотят. Тут вот глубокоуважаемый mayton упоминал про биллинг. В этот самый биллинг вам, как внешней системе-потребителю, никогда доступ не дадут. И если ты пойдёшь к ним, с заявлениями, что дескать АЦИД же!!, ОЛАП, и бла-бла, плохая структура, кто вас допустил до проектирования, тебя просто нахер пошлют, и правильно сделают. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt Кроме того, любому самому захудалому спецу должно быть понятно, что причина плавающего времени ответа кроется в нагрузке на БД, которую создают другие системы. Это и есть ВЫЯВЛЕНИЕ ЗАВИСИМОСТЕЙ. Ты предположил что зависимость от других приложений. Я предположил на второй странице что антивирус в 14 00 проверяет на вирус диск С:. Дальше? ))))) Вот этот диалог должен был быть с умным ТС. Но не случилось. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:52 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt ТС не может дать вам ответ за систему, которой не владеет. Вы владеете ими? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:54 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt, Юмор: Кстати у нас на работе реально антивирусник по понедельникам все шерстит на компе. Вырубить прав нет. Так и тормозит все пока не проверит)))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:58 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Хвост поднял знамя менторства? Ну что-ж. Я уступаю. Приходи в эластик миграцию. Будь уважаемым гостем. Назвался груздем - полезай в кузов. P.S. И только попробуй откажись... ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 19:58 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
mayton, Фиг придет. Он обычно в самом конце приходит)))) Когда все разошлись) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 20:00 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Это и есть ВЫЯВЛЕНИЕ ЗАВИСИМОСТЕЙ. Ты предположил что зависимость от других приложений. Я предположил на второй странице что антивирус в 14 00 проверяет на вирус диск С:. Дальше? ))))) Вот этот диалог должен был быть с умным ТС. Но не случилось. ну так задача-то другая.. понятно можно и повыяснять и даже найти виноватого :) mayton Хвост поднял знамя менторства? Ну что-ж. Я уступаю. Приходи в эластик миграцию. Будь уважаемым гостем. Назвался груздем - полезай в кузов. на этом пути у ТС встретятся куда более интересные вызовы. в этом отношении может вы и правы, надо было давить на дба, чем лезть во всё это :) но какой в этом интерес? ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 20:18 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt ну так задача-то другая.. понятно можно и повыяснять и даже найти виноватого :) Так что ли? У него как у эллочки людоедки словарный запас три фразы: "мешок сервисов/шевели булками/кривой запрос". Как ты собрался лечить если не найден виновник болезни. У тебя сегодня с логикой туго. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 21:32 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Девочки не ссорьтесь. Я вообще одинаково люблю и Elastic и Oracle. Я просто философ и эстет строительства систем и ощущаю сожаление когда какая-то из них недоисследована по каким-то причинам. В топике мы не видели AWR/ADDM статистики и говорить о проблемах на сервере пока преждевременно. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 21:55 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
andreykaT есть приложение, оно выполняет одну единственную роль - обрабатывать запросы клиентов и возвращать данные. предварительно их откуда то собрав.... я правильно понял, что есть оракл, который отвечает на запрос от 2 до 30 секунд? а ваше приложение больше похоже на прокси? т.е. перекладывает запросы на эту внешнюю базу? при этом база чужая, вы с ней ничего не можете сделать? кардинальных решений два: 1. что-то все же сделать с той внешней базой, чтобы она справлялась с запросами (оптимизировать запрос, добавить индексов, партиционирование, шардинг и так далее) 2. сделать себе копию данных любым способом, чтобы не зависеть от внешней базы, и регулярно эту копию обновлять и в связи со вторым решением вопрос - можно более подробно про "ХС, идет за данными в эластик по индексированным полям" каким образом в эластике оказались ид из оракловской базы? т.е. все таки что-то туда их сливает? а что если сливать не только ИД, но и поля, которые участвуют в поиске, или даже сделать полную копию? я встречал на проекте вариант, когда в эластике тип записи, ид, данные для полнотекстового поиска и description, пользователь вводит запрос, эластик его обрабатывает и показывает предварительный результат в виде списка (на UI отображался description), если надо перейти и посмотреть найденный объект целиком - на основании типа записи и ид дергался из реляционной базы весь объект но у вас то проблема как раз в последнем шаге - достать весь единичный объект по ид - это тоже от 2 до 30 секунд? сразу скажу, что вот заполнять и обновлять эластик предварительными данными из реляционки - та еще морока была ... |
|||
:
Нравится:
Не нравится:
|
|||
03.11.2020, 22:41 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
17-77, Оракл не очень корректно называть внешней бд. Если коротко, ваш пост: - разбираться почему время гуляет - не разбираться и сделать еще такую же бд чтобы потом опять разбираться. И третье. Если разрабу лень разбираться, то категорически нельзя ему давать в руки что то строить на данном участке. Новые дома, мосты и сооружения. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2020, 08:58 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Если разрабу лень разбираться, то категорически нельзя ему давать в руки что то строить на данном участке. Новые дома, мосты и сооружения. Вот у тебя коннект к инету пропал. Пошёл искать где обрыв провода под землёй. Или лень-матушка? А починить слабо? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 00:43 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt, Все продумано до нас. Методика поиска неисправностей методом "деления пополам". -у соседа работает? У тебя нет. Значит дело не в земле а в тебе. Тоже самое пополам у ТС: - рядом ставим постгри бд. Работает? Это одно. Не работает? Это другое. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 07:07 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Важно только ребёнка не выплескивать вместе с водой. Вот нахрена знать работает ли оно в отдельной СУБД, если оно должно работать в строго определённой среде??? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 07:19 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Все продумано до нас. Методика поиска неисправностей методом "деления пополам". -у соседа работает? У тебя нет. Значит дело не в земле а в тебе. Тоже самое пополам у ТС: - рядом ставим постгри бд. Работает? Это одно. Не работает? Это другое. Угу, а теперь давай на примере лечения или проведения хирургической операции :) Деление пополам. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 07:37 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov Важно только ребёнка не выплескивать вместе с водой. Конечно важно. Дорожные карты поиска неисправностей по данному методу придумывали на крови людей. Видели пилоты и космонавты держат в руках фолианты? Там if... else Если дернули там и зазвенело, то нажми кнопу1, если нет, то кнопу2. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 07:38 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
hVostt PetroNotC Sharp Все продумано до нас. Методика поиска неисправностей методом "деления пополам". -у соседа работает? У тебя нет. Значит дело не в земле а в тебе. Тоже самое пополам у ТС: - рядом ставим постгри бд. Работает? Это одно. Не работает? Это другое. Угу, а теперь давай на примере лечения или проведения хирургической операции :) Деление пополам. Там больному антибиотики дают и смотрят на реакцию. Прогноз 50 на 50. Может помереть либо ребенок либо роженица. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 07:40 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Видели пилоты и космонавты держат в руках фолианты? Как построить цепочку действий между двумя состояниями: "работает в PostgreeSQL" и "работает в Oracle"? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 07:59 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov PetroNotC Sharp Видели пилоты и космонавты держат в руках фолианты? Как построить цепочку действий между двумя состояниями: "работает в PostgreeSQL" и "работает в Oracle"? Теперь давай конкретно. Надо же спорить о чем то) Вот еще вам цепочка действий, алгоритм. На второй чтранице. 22224763 Из за того что он этого не сделал, прошло 8 страниц топика. И вы сами сами вроде на второй чтранице пеняли ТС что он не хочет выпрлнить Стандартные процедуры))) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 08:15 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp то есть с методом что он существует вы уже согласились? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 08:36 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov andreykaT еще раз. один и тот же запрос с одним и тем же набором данных тормозит РАНДОМНО ... но не суть. я спросил про хиберсерч, а мне начинают рассказывать как оракл тюнить... ... а вы, конечно, лучше других знаете как правильно?Была у меня похожая ситуация - приложение выдавало в лог (однотипные) запросы длительностью больше 2 секунд. Запросы исполнялись секунд по 20. Выдернул несколько таких запросов, посмотрел их планы, подумал и написал эквивалентный запрос, который стабильно исполнялся за две секунды. И, довольный собой, предложил его разработчикам. Нет, ответили разработчики - план твоего запрос хуже. И вот в этот момент наступил "мой маленький звёздный час". Это всё замечательно - ответил я, но реальные планы вашего запроса на нашей базе - совсем другие. Разработчики подумали ещё немного и нашли причину - не хватало индексов внешних ключей. А индексы, как оказалось, надо было перестраивать в процессе обновления. P.S. Ваши проблемы настолько "уникальны", что не подлежат решению "стандартными" средствами? Правда? Или вам просто не хочется делать работу, за которую (по вашему мнению) вам не доплачивают? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 10:24 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov вам или вообще покласть "Сложнее всего в мире достигнуть простоты — это крайняя граница опыта и последнее усилие гения". © George Sand. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 10:33 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp а где ваш конкретный совет на 5 шагов. ? Лично я стараюсь воздерживаться от советов в клинических случаях и стараюсь не повторять то, что уже было озвучено другими. В данном конкретном случае начинать надо с планов и статистики запроса в "плохих" и "нормальных" случаях. Для Oracle, Karl.Не демагог?Нет, но боюсь, что вы не сможете понять разницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 11:14 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov В данном конкретном случае начинать надо с планов и статистики запроса в "плохих" и "нормальных" случаях. Для Oracle, Karl. Все разошлись а вы споре). ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 11:31 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov В данном конкретном случае начинать надо с планов и статистики запроса в "плохих" и "нормальных" случаях. Для Oracle, Karl. Об этом на всех девяти страницах топикстартеру и писали ... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 13:36 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode Об этом на всех девяти страницах топикстартеру и писали ... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:03 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:18 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, среднее число сообщений в день - 2,4, PetroNotC Sharp - 11,9. Кто там чего затыкать должен? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:27 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, Все уже закончилось, но вы зачем то после драки решили кулаками помахать, пофонтанировать продуктами жизнедеятельности, зачем? ТС четко дал понять, что ему разбираться не интересно и делать он ничего для выяснения причин не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:38 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov Basil A. Sidorov, среднее число сообщений в день - 2,4, PetroNotC Sharp - 11,9. Кто там чего затыкать должен? Форум борется не с количеством сударь))). Если у вас за 12 страниц было одно предложение ТСу, то с чем остальные ваши посты? ))) LOL Вы же влезли в чужой разговор вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:39 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
graycode Все уже закончилось, но вы зачем то после драки решили кулаками помахать На топикстартера лично я уже давно махнул рукой. И, если почитать мои сообщения (в этом топике) чуть внимательнее, чем вы привыкли - можно понять почему. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:45 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Вы же влезли в чужой разговор вообще. 2. "Не указывайте мне, что я должен делать и я не станут объяснять куда вы можете пройти". ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:47 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, Откуда такая раздраженность, агрессия и неадекватность, вас кто то укусил сегодня утром?)) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:49 |
|
и снова немного архитектуры и эластика с рдбмс
|
|||
---|---|---|---|
#18+
Basil A. Sidorov 2. "Не указывайте мне, что я должен делать и я не станут объяснять куда вы можете пройти". Если следовать этому правилу, я уже два раза должен был объяснить вам, куда вы можете пройти ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2020, 14:51 |
|
|
start [/forum/topic.php?all=1&fid=59&tid=2120628]: |
0ms |
get settings: |
22ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
74ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
4095ms |
get tp. blocked users: |
1ms |
others: | 300ms |
total: | 4530ms |
0 / 0 |