
Alessio
30.09.2018
16:45:26
Jooq хороший инструмент

Firstname
30.09.2018
16:50:26
У меня без сприга работа идёт
Batch использую да

Bogdan
30.09.2018
17:44:21
Firstname jooq может сам сгенерировать модельки, по готовой бд

Google

Alessio
30.09.2018
17:52:50
+
Кстати, хорошо, что напомнили, буду двигать тему с jooq на новом проекте

Firstname
30.09.2018
18:10:26
ладно с арихитектурой более менее понятно
но вот 40 к записей в таблицу из 13 полей чет печально вставляются
прям совсем печально
Это обая проблема постгреса?
Или штатно?

Ivan
30.09.2018
18:16:37
А может ещё какие триггеры стоят?
А может диски чем-то награждены?

Mika
30.09.2018
18:18:43

Ivan
30.09.2018
18:18:43
Короче причины могут быть свои в каждом отельном случае
Но да, это тебе не in-memory

Google

Ivan
30.09.2018
18:19:54
Но можешь отключить fsync если любишь рисковать

Firstname
30.09.2018
18:25:13

Ivan
30.09.2018
18:26:10
Ты вставляешь запросом напрямую с jdbc или orm какая?

Firstname
30.09.2018
18:27:01
Hibernate
Генерирует бач
По 50 строк вставляет

Ivan
30.09.2018
18:28:29
Тогда врубай debug show sql и смотри что именно делает hibernate. Возможно, там ещё куча сайд эффектов из-за отношений сущностей. 50 кстати мало, ставь 1000
?
И не вини постгрес, он тут ни при чем) Он хороший

Vlad
30.09.2018
19:04:13

Firstname
30.09.2018
19:18:12

Cargeh
30.09.2018
19:19:56

Ivan
30.09.2018
19:20:14
А откуда ты это грузишь, мб тебе copy надо
А не insert

Firstname
30.09.2018
19:20:27
Из файла

Ivan
30.09.2018
19:20:39
И как ты это делаешь?

Firstname
30.09.2018
19:20:40
В объекты
Объекты в базу

Ivan
30.09.2018
19:20:48
Лул?

Google

Firstname
30.09.2018
19:20:55
Дул?
Что это?

Ivan
30.09.2018
19:21:02
А сразу в базу?

Firstname
30.09.2018
19:21:12

Ivan
30.09.2018
19:21:15
Зачем тебе hibernate

Cargeh
30.09.2018
19:21:24
Там в постгресе дефолтные конфиги на крайне слабую тачку рассчитаны, и в логах нет никаких ошибок со словом "checkpoint"?

Firstname
30.09.2018
19:21:28

Ivan
30.09.2018
19:21:57

Firstname
30.09.2018
19:22:08
Какие логи смотреть?
Постгреса?

Cargeh
30.09.2018
19:22:30

Ivan
30.09.2018
19:22:31
У тебя все очень странное, на маке через hibernate вставлять данные из файла

Cargeh
30.09.2018
19:22:52
По записи там чекпоинты и вал-буфера, если не ошибаюсь

Ivan
30.09.2018
19:23:48
Да там не так много нужно трогать
Это как ключики jvm, они есть, но трогать не стоит сильно)

Firstname
30.09.2018
19:24:47
Ну смотрите, у меня не самоцель ускорить это на маке
Мне надо архитектуру проверить на скорость

Ivan
30.09.2018
19:25:14
Надо расправить на таблицы
А нельзя тулингом Postgres это сделать в обход Java и тем более Сприна, или как миниму Без спринга чистым jdbc

Firstname
30.09.2018
19:25:38
Бд может быть любой

Google

Firstname
30.09.2018
19:26:16
Специфичные для постгреса средства типо bulk load откидываем

Ivan
30.09.2018
19:27:44
Ну если важен перформанс, но нужна переносимость провайдера баз, и хочется Java - то делай хотя бы на чистом jdbc, там по крайней мере можно как можно ниже велосипедить

Firstname
30.09.2018
19:29:50
Изначально проект был на Java сейчас пишем новый архитектурный функционал с помощью hibernate

Cargeh
30.09.2018
19:30:04

Firstname
30.09.2018
19:30:07
Про чистый jdbk я думал

Admin
ERROR: S client not available

Firstname
30.09.2018
19:30:31
Раньше вся инфа хранилась в файлах
Сейчас в бд перегоняем

Митко Соловец?
30.09.2018
19:30:57

Cargeh
30.09.2018
19:31:20
Сейчас в бд перегоняем
Так какая скорость устроит то? Для каких целей измеряете? Там 1к вставок в секунду, 10к, 20к
Может, просто не стоит париться, я к этому

Firstname
30.09.2018
19:39:32
На таком уровне я думаю стоит про проект рассказать и вы все поймете,
Я сейчас встаиваю в htsjdk поддержку баз данных собственно с перспективной допилить до достаточно интересной в применении архитектуры
Это и есть ресеч(статьия на рецензировании)
по поводу скорости вставок - вообще она не критична но будет оч печально если 1 гб вставляется за 20-30 минут
нужно бы за 5-10
ну и собственно требования оттуда
минимум костылей от самих баз
ниаких спецфич
тащить чисто за счет того, что знаешь что делаешь
и у меня чет знаний не очень хватает пока видимо
Ещё такая тема
Почему то на 95 к просела скорость
Ощутимо
Это естественный процесс?

Cargeh
30.09.2018
20:28:05

Firstname
30.09.2018
20:38:51
Ну по опыту сильно проседает на 100К+ процесс доступа к бд?
Вне зависимости от железа

Google

Firstname
30.09.2018
20:40:26
Потому что я вот сижу уже достаточно дохрена
А процесс записи дерградирует

Cargeh
30.09.2018
20:43:26

Firstname
30.09.2018
20:44:27
Понял
Хреново формулирую вопросы

Ivan
30.09.2018
20:46:35

Anton
30.09.2018
21:18:17
Ещё такая тема
Почему то на 95 к просела скорость
На вставке можно поиграться с батчами и не делать коммит после каждой вставки. Это приведет к росту роллбек сегмента но даст прирост по скорости. Можно поотключать констркйнты в бд (всякие foreign keys) - это плохо с точки зрения консистенции бд но опять же даст производительность. С миру по копеечке. Индекс - может тоже при каких-то объемах начать мешать на вставке. В зависимости от бд, стоит посмотреть на типы таблиц оптимизированных для записи.

Firstname
30.09.2018
21:25:16
@Cascade это я так понимаю констркйнты?
Вот на них интересная шняга в логах пишется
почему-то делается update запрос при каждой вставке
хотя другие поля не меняются

Artjom
30.09.2018
21:27:22
код выглядит страшноват

Firstname
30.09.2018
21:27:50
ммм а что с ним такого?

Alexey
30.09.2018
21:27:52

Firstname
30.09.2018
21:28:12
ну я его отключу к хуям, да тут без вариантов

Cargeh
30.09.2018
21:29:15