Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3 4 5      [все]
 MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
В связи с сами знаете какими событиями потребовалось настроить полность автономное локальное рабочее место на ноуте. Нужна СУБД, попробовал поставить MySQL. Первоначальное наполнение базы - вставка 30-50 тыс. записей может длится по времени до нескольких часов. Это ужас. В качестве эксперемента попробовал Derby и HQSLDB - тот же объём записей вставляется за несколько минут. Никто не знает как этот MySQL лечить? Или может быть вместо него Oracle XE поставить? Допустимые варианты - PostgreSQL, Oracle, MySQL, MS SQL (нежелательно, но можно). На ноуте 8Гб ОЗУ. Надо ещё IDE запустить, Tomcat и ещё немного разной ерунды по-мелочам.

Сообщение было отредактировано: 7 апр 20, 20:11
7 апр 20, 20:11    [22112519]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
Не понятно, при чем тут Java

По опыту, самая частая ошибка из-за которой СУБД встает колом - Auto Commit.

MySQL не должен быть значительно быстрее/медленнее других СУБД своего класса на простейших операциях

IMHO & AFAIK
7 апр 20, 22:46    [22112558]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17735
Garrick,

"...Ты просто не умеешь их готовить..."
как ты вставляешь эти крохи данных?
ну и есть отдельная ветка по mysql...

Сообщение было отредактировано: 7 апр 20, 23:11
7 апр 20, 23:11    [22112562]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17735
Garrick,

версия mysql?
7 апр 20, 23:39    [22112569]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
Да какая версия. Я в 1999-2000 г. вполне на Pentium с 512 Mb памяти на MySQL пару миллионы строк обрабатывал с откликом меньше десятой секунды.

Правда таблица была простейшая из 3-4 целочисленный полей

p.s. Первая версия вот этой БД http://iss.rybmuseum.ru/
в то время было примерно 90 тыс. предметов, 45 тыс. изображений.
7 апр 20, 23:56    [22112575]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17735
Leonid Kudryavtsev
Да какая версия.
тут дело в том, 5.7 и 8.хх имеют огромную разницу в производительности
8 апр 20, 00:16    [22112580]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
вадя
Garrick,

версия mysql?


Последняя 8-я.
8 апр 20, 08:13    [22112618]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
вадя
Garrick,

"...Ты просто не умеешь их готовить..."
как ты вставляешь эти крохи данных?
ну и есть отдельная ветка по mysql...

Конечно не умею. Вот я и спрашиваю рецеп. Может чего настроить надо, а у меня всё по дефолту.
8 апр 20, 08:15    [22112619]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
Leonid Kudryavtsev

MySQL не должен быть значительно быстрее/медленнее других СУБД своего класса на простейших операциях

Сам в шоке. Такая разница... Что-то тут не так.
8 апр 20, 08:16    [22112620]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17735
Garrick,

как вставляешь?
8 апр 20, 10:32    [22112668]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5288
Garrick
Leonid Kudryavtsev

MySQL не должен быть значительно быстрее/медленнее других СУБД своего класса на простейших операциях

Сам в шоке. Такая разница... Что-то тут не так.


По моему опыту сталкивания с MySQL там всегда "что-то не так".
Но его почему то все еще пытаются использовать в проектах чуть сложнее выборки из одной таблицы.
Этот пост еще раз меня убедил, что если можно не использовать MySQL, то нужно не использовать MySQL. :-)
8 апр 20, 11:48    [22112720]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17735
mad_nazgul
По моему опыту сталкивания с MySQL там всегда "что-то не так".
Но его почему то все еще пытаются использовать в проектах чуть сложнее выборки из одной таблицы.
Этот пост еще раз меня убедил, что если можно не использовать MySQL, то нужно не использовать MySQL. :-)
надо просто уметь работать с базами. никаких проблем не возникает. работаю с mysql что под линуксом , что под окнами
8 апр 20, 11:57    [22112727]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
вадя
Garrick,

версия mysql?

Ты мастер флуда?
30тыр записей вставляет 5 часов.
А ты спросил про версию?
8 апр 20, 12:15    [22112744]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
lleming
Member

Откуда:
Сообщений: 1718
Как вставляем copy paste 100МБ запрос и в рамках одной транзакции все инсерты?


На днях вставлял 10млн mysql8 в докере причем сразу с генерацией 12 полей UUID на все про все около 25сек.
8 апр 20, 12:27    [22112753]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Garrick
В связи с сами знаете какими событиями потребовалось настроить полность автономное локальное рабочее место на ноуте. Нужна СУБД, попробовал поставить MySQL. Первоначальное наполнение базы - вставка 30-50 тыс. записей может длится по времени до нескольких часов. Это ужас. В качестве эксперемента попробовал Derby и HQSLDB - тот же объём записей вставляется за несколько минут.


Стоп-стоп. Это так не делается. Это не фиксится сразу сменой СУБД. Тыж не блондинка?

Идешь в этот форум https://www.sql.ru/forum/mysql

Описываешь проблему. Тебя попросят привести INSERT, DDL-таблички
данные по времени (сколько транзакций в секунду). Примерные сведенья
о железке (HDD/CPU/Memory)

Из поинтов что посмотреть.
- отключить авто-коммит (как уже сказаали)
- отключить индексы на время загрузки
- отключить триггеры
- поиграть с двигателем (MYiSAM/InnoDb) обычно перформанс меняется сильно от смены.
- посмотреть какие типы данных можно заменить на экономные BLOB/XML/JSON просто на VARCHAR
- выключить Windows-активности (антивирус и индексатор документов)
- разнести конкурирующие разделы (сегмент данных БД и исходный файл) на разные физические диски. Или исходный файл в быструю сеть (1Гигабит).

И правильно выбрать утилиту загрузки. Обычно все (!) реально все современные DBMS имеют тулзы
для быстрой загрузки CSV/SQL сырых данных из внешнего файла. Есть рекомендации по форматированию
самого скрипта. В PG/MySQL есть много-строчное форматирование (1 insert + много values).

Это уже в спецфорум.
8 апр 20, 12:42    [22112767]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton


И правильно выбрать утилиту загрузки. Обычно все (!) реально все современные DBMS имеют тулзы
для быстрой загрузки CSV/SQL сырых данных из внешнего файла. Есть рекомендации по форматированию
самого скрипта. В PG/MySQL есть много-строчное форматирование (1 insert + много values).

Это уже в спецфорум.

для этого есть целый фреймворк spring batch

автор может выгружать файлы и простейшая прога их скушает и выгрузить куда покажет

могу написать такую за много бутылок виски))
8 апр 20, 20:05    [22113072]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Там не нужна разработка. Там нужен 1 девопс или админ. И 1 командная строка типа

$ mysqlimport .....
8 апр 20, 20:08    [22113073]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton
Там не нужна разработка. Там нужен 1 девопс или админ. И 1 командная строка типа

$ mysqlimport .....

ну ты от жизни то отстал брат)
какой такой mysql import))
8 апр 20, 20:12    [22113075]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Zzz79
ну ты от жизни то отстал брат)
а ты всё в облаках...cloud foundry)))
8 апр 20, 20:22    [22113082]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
PetroNotC Sharp,
типо того)щас все так построено в приложухах консул ваулт ,тимсити и комунда по дефолту уже
8 апр 20, 20:33    [22113092]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Zzz79
PetroNotC Sharp,
типо того)щас все так построено в приложухах консул ваулт ,тимсити и комунда по дефолту уже
ну это у тебя конкретно.
Если выглянуть в окно, то там вполне всё по другому.
Утилиты, десктопы и ...моя хата с краю..
8 апр 20, 20:40    [22113101]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
mayton
Там не нужна разработка. Там нужен 1 девопс или админ. И 1 командная строка типа

$ mysqlimport .....

ну ты от жизни то отстал брат)
какой такой mysql import))

Хочешь побольше бабла срубить?
8 апр 20, 20:42    [22113103]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
PetroNotC Sharp,там все одинаково давно) доходит до того что ты можешь со сбера сделать ctrl+c и положтить в втб поменяв дто и маперы)

жизнь скучна- все уже написано,с нуля пишут только фриланс проекты за 500 р в месяц)

ты понимаешь в чем засадада современного программированияя - тотальный копипаст


мне тут сегодня дали задачу - суть которой свелась к тому что был в стриме фильтр фильтровал не по одному значению а по двум)
выглядело это примерно так

filter(SOME_FUCKIN_SHIT::equals)


а стало вот так
SOME_FUKIN_SHITS::contains


и это был огразм) так как ты применил свои знания джавы)
8 апр 20, 20:58    [22113118]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton
Zzz79
пропущено...

ну ты от жизни то отстал брат)
какой такой mysql import))

Хочешь побольше бабла срубить?

кто ж мне его даст)
8 апр 20, 20:59    [22113121]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Пфф... тоже мне оргазм.
8 апр 20, 21:01    [22113124]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
mayton
пропущено...

Хочешь побольше бабла срубить?

кто ж мне его даст)

Любой дурак на SpringBatch напишет. Тоже мне архитектура. А ты попробуй сложный код упростить.

Это - высшее кун-фу. Знаешь как в Гонконгских боевиках. Самый лютый мастер рукопашного боя - скромненький
старичок с посохом...
8 апр 20, 21:02    [22113126]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
mayton

Идешь в этот форум https://www.sql.ru/forum/mysql

Я обратился именно сюда, потому как думал, что очень популярная СУБД и наверняка многие из вас уже ставили и использовали её локально на своём ноутбуке или PC, думал получить какие-то лёгкие и правильные рекомендации для чайника где-что настроить чтобы заработало. На специальном форуме сразу начнётся - покажи дамп памяти, конфиг сервера, поправь такую-то настройку в конфигурации, а я даже не представляю где эта конфигурация и как исакать эти настройки. В мои планы сейчас никак не входит изучение многотомных изданий для администраторов баз данных. Для настройки боевых серверов у нас есть специально обученные люди, которые за это деньги получают. Мне надо просто инсталлировать, запустить и использовать. Комфортоно использовать! А не этот тормоз. Я не хочу и не могу потратить кучу времени на изучение тонкостей юстировки зазора в пять сотых миллиметра с помощью кувалды.

В общем, победить не удалось. Снёс нафиг, поставил вместо него OracleXE. Всё сразу взлетело, без всякого шаманства. К тому же есть уже привычные инструменты чем в саму базу заглянуть.

Может быть потом, когда будет много свободного времени я попробую разобраться с этим MySQL и поставлю его ещё раз. Работают же как-то с ним люди. И очень много людей. Даже представить не могу, чтобы оно у всех так тормозило и они продолжали бы им пользоватья. Сегодня не сложилось, видно, не судьба.

P.S. Если у кого-то нет реальных рекомендаций по решению проблемы, предлагаю не флудить по поводу разных фреймворков и прочих гадостей.

P.S.S Данные загружал обычно скриптом из SQL файла (INSERT INTO...). Помимо очень медленной загрузки обнаружилось, что TRUNCATE TABLE тоже выполняется неимоверно долго.
9 апр 20, 11:00    [22113351]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Garrick

В общем, победить не удалось. Снёс нафиг, поставил вместо него OracleXE. Всё сразу взлетело, без всякого шаманства. К тому же есть уже привычные инструменты чем в саму базу заглянуть.

Ну и зря.

Есть мысль что ты просто вместо одной проблемы получишь в будущем еще несколько. Oracle - более сложен
в тонком тюнинге запросов и в сборе статистики. Там просто надо понимать причинно следственную связь
между ETL и вышеперечисленным.

Очень конешно плохо что ты ленишся и думаешь что тебе сразу без диагностики дадут совет поставить
опцию fast=true и все у тебя залетает.

Ну будем посмотреть.
9 апр 20, 11:08    [22113353]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Garrick
Снёс нафиг, поставил вместо

если есть такая возможность, то это прекрасно.
Относись к СУБД как к машинам. Кому то подошла бэха, кому то мэрс.
Если тюнить нет желания, то это тоже вариант.
Удачи!
9 апр 20, 11:21    [22113362]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5288
Garrick

В общем, победить не удалось. Снёс нафиг, поставил вместо него OracleXE. Всё сразу взлетело, без всякого шаманства. К тому же есть уже привычные инструменты чем в саму базу заглянуть.


Ну зачем так радикально, можно было в начале попробовать PostgreSQL :-)
9 апр 20, 12:52    [22113439]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
mad_nazgul,
зачем вы сели на мерс, попробуйте сначала опель)))
9 апр 20, 13:26    [22113462]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5288
PetroNotC Sharp
mad_nazgul,
зачем вы сели на мерс, попробуйте сначала опель)))


Аналогия не верна.

Есть бесплатный полнофункциональный продукт - PostgreSQL.
Возможно подойдет он.
Чем пытаться использовать обрубок продукта - Oracle XE. Который действует по принципу "первая доза бесплатно". :-)

P.S. Для меня Oracle гораздо менее удобная в работе, чем PostgreSQL.
Но как надежное, масштабируемое хранилище данных Oracle вполне себе.
9 апр 20, 15:33    [22113612]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
mad_nazgul,
Бесплатный/полнофунциональный/обрубок.....
А факты то где?
Вы топите один продукт за счет другого... Без фактов.
Я нет.
Подошел к машине, сел, посидел. Понравилось? Бери.
9 апр 20, 15:59    [22113643]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 10171
PetroNotC Sharp
А факты то где?
На страницах информации о продуктах и в их документации.
Потом - да, пробуем, чтобы понять вещи, неочевидные из описаний и документации.
9 апр 20, 16:11    [22113650]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Basil A. Sidorov,
Да.
Автор так и сделал.
Сел в авто (оракле) - ему понравилось.
Тут мимо проходил сосед и говорит что Г машина.
Он в ней сидел и ему не понравилась.
9 апр 20, 17:16    [22113704]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5288
PetroNotC Sharp
mad_nazgul,
Бесплатный/полнофунциональный/обрубок.....
А факты то где?
Вы топите один продукт за счет другого... Без фактов.
Я нет.
Подошел к машине, сел, посидел. Понравилось? Бери.


Опять же аналогия не верна.
Но если её продолжать.

PostgreSQL - бесплатная машина. Есть СТО от дяди Васи, до супер-пупер дорогого. Да хоть сам чини, никто слово не скажет.
OracleXE - бесплатная машина, но вы можете ездить в день не более 10 км и 3ч. Обслуживание в сертифицированном СТО.
Хотите больше - покупаете Oracle
Oracle - платная машина, обслуживается только в специализированном и специализированном СТО.

Это если проводить машинные аналогии.

<:o)
10 апр 20, 07:04    [22113956]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
mad_nazgul,

>OracleXE - бесплатная машина, но вы можете ездить в день не более 10 км и 3ч.
Напишите вместо 10км 250км и будет похоже на правду.
Не надо людей пугать решениями оракле.
10 апр 20, 09:33    [22113982]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
PetroNotC Sharp
mad_nazgul,

>OracleXE - бесплатная машина, но вы можете ездить в день не более 10 км и 3ч.
Напишите вместо 10км 250км и будет похоже на правду.
Не надо людей пугать решениями оракле.


Вообще ни разу не испугали. У нас на бою 90% баз работают на Oracle. За ТО, ремонт, КАСКО, ОСАГО - всё уже проплачено и в бюджет заложено на годы вперёд. :)

Есть большая доля вероятности, что тот проект, прототип которого я сейчас разрабатываю, тоже будет работать на Oracle. Хотя в свете последних решений нет 100% уверенности. А вдруг PstgresSQL.

По поводу XE - кто-то может упустил или не заметил, я говорил, что устанавляваю на ноутбуке (8 GB ОЗУ, Intel Core i3) автономное рабочее место. Поставить туда Oracle Enterprise или PostgreSQL... потом что-то ещё кроме сервера СУБД на этом ноутбуке запускть можно будет? У XE объем потребляемой оперативы ограничен 2 GB - Oracle сам постарался.
10 апр 20, 10:25    [22113995]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Уж сколько я не люблю MySQL. Но такой спонтанный выбор Oracle - это необдуманный шаг.
Вобщем это просто обмен одного технического дебта на другой.
10 апр 20, 10:27    [22113996]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
mayton
Уж сколько я не люблю MySQL. Но такой спонтанный выбор Oracle - это необдуманный шаг.
Вобщем это просто обмен одного технического дебта на другой.

Вот уже уже вторая страница заканчивается, а никто так и не дал конкретного совета, хотя бы и не работающего, как заставить работать эту хрень. Только флуд олин. А мне, как всегда, нужно было ещё вчера. Когда на презентации нового продукта я вместо демострации прототипа начну рассказывать как я победил или не победил MySQL и поэтому у меня не хватило времени на основную работу, меня не только никто не похвалит, но и наоборот... не взирая на всякий карантин, пренебрегая всеми санитарными нормами... сами знаете что сделают.
10 апр 20, 10:35    [22113999]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Garrick,
Все верно. У нас тоже оракле постгри.
По сабжевой бд в ветку этой бд
Удачи.
10 апр 20, 10:38    [22114002]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Garrick
mayton
Уж сколько я не люблю MySQL. Но такой спонтанный выбор Oracle - это необдуманный шаг.
Вобщем это просто обмен одного технического дебта на другой.

Вот уже уже вторая страница заканчивается, а никто так и не дал конкретного совета, хотя бы и не работающего, как заставить работать эту хрень. Только флуд олин. А мне, как всегда, нужно было ещё вчера. Когда на презентации нового продукта я вместо демострации прототипа начну рассказывать как я победил или не победил MySQL и поэтому у меня не хватило времени на основную работу, меня не только никто не похвалит, но и наоборот... не взирая на всякий карантин, пренебрегая всеми санитарными нормами... сами знаете что сделают.

Тебе писали что надо было идти в профильную ветку по MySQL.
Ты запостил в форум Java. И кто кому вредитель?
10 апр 20, 10:53    [22114011]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5288
Garrick
По поводу XE - кто-то может упустил или не заметил, я говорил, что устанавляваю на ноутбуке (8 GB ОЗУ, Intel Core i3) автономное рабочее место. Поставить туда Oracle Enterprise или PostgreSQL... потом что-то ещё кроме сервера СУБД на этом ноутбуке запускть можно будет? У XE объем потребляемой оперативы ограничен 2 GB - Oracle сам постарался.


Ну основной проблемой PostgreSQL было, то что настройки по умолчанию были рассчитаны на запуск чуть ли на кофеварке (утрированно).
Как минимум я читал как установить PostgreSQL на DLink DIR-300.
Так что PostgreSQL вполне себе работает на слабом железе.
10 апр 20, 12:32    [22114088]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Как говорил Арнолд Шварцнегер - при работе с Постгрес есть два правила.
1) Делай вакуум.
2) Не забывай первое правило.

Сообщение было отредактировано: 10 апр 20, 12:47
10 апр 20, 12:48    [22114099]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
PetroNotC Sharp
mad_nazgul,
Бесплатный/полнофунциональный/обрубок.....
А факты то где?

Патчи не выходят от слова совсем. Даже релизы на XE не переносятся.
(11.2.0.2, 11.2.0.3, 11.2.0.4 и так далее)

Бесплатная версия сделанная "на отъе#$%#" для галочки

IMHO
mayton

1) Делай вакуум.
2) Не забывай первое правило.

+100500
10 апр 20, 13:11    [22114113]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
Garrick

По поводу XE - кто-то может упустил или не заметил, я говорил, что устанавляваю на ноутбуке (8 GB ОЗУ, Intel Core i3) автономное рабочее место. Поставить туда Oracle Enterprise или PostgreSQL... потом что-то ещё кроме сервера СУБД на этом ноутбуке запускть можно будет? У XE объем потребляемой оперативы ограничен 2 GB - Oracle сам постарался.

Жесть какая.

У Oracle бинарники вообще не отличаются. Что XE,что Personal Edition, или Standart Edition, или Enterprise Edition - они одни и те же.

Там где работает XE, никаких проблем запустить SE ил EE нет.

А упомянуть в таком контексте PostgreSQL мог только человек, даже инсталятор PostgreSQL не запускавший.
Garrick

У XE объем потребляемой оперативы ограничен 2 GB - Oracle сам постарался.

Жесть какая.

Кол-во потребляемой памяти спокойно указывается при установке (как минимум у версий >=11g). Насколько помню или в процентах от RAM (по умолчанию вроде 75%) или просто мегабайты.

Если ставить программы в режиме Next, Next, Next - то в общем результатам работы удивляться не приходится.
10 апр 20, 13:25    [22114121]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
XE отличается по возможностям. Недоступен partitioning, OLAP и многое другое.
Есть ограничения на количество сессий (user-sessions) и кажется процессоров.
10 апр 20, 13:28    [22114124]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
mayton
XE отличается по возможностям. Недоступен partitioning, OLAP и многое другое.
Есть ограничения на количество сессий (user-sessions) и кажется процессоров.

это понятно.

По возможностям да, а по бинарникам (требованиям к железу) - сильно сомневаюсь (практически уверен в обратном).
10 апр 20, 13:32    [22114127]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Leonid Kudryavtsev
mayton
XE отличается по возможностям. Недоступен partitioning, OLAP и многое другое.
Есть ограничения на количество сессий (user-sessions) и кажется процессоров.

это понятно.

По возможностям да, а по бинарникам (требованиям к железу) - сильно сомневаюсь (практически уверен в обратном).


Вот тут ограничения описаны

https://www.oracle.com/database/technologies/appdev/xe/faq.html#limits
10 апр 20, 13:37    [22114128]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
Leonid Kudryavtsev

А упомянуть в таком контексте PostgreSQL мог только человек, даже инсталятор PostgreSQL не запускавший.

И не отказываюсь. Не запускал ни разу.
10 апр 20, 14:00    [22114143]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Leonid Kudryavtsev
Патчи не выходят от слова совсем. Даже релизы на XE не переносятся.
(11.2.0.2, 11.2.0.3, 11.2.0.4 и так далее)

Бесплатная версия сделанная "на отъе#$%#" для галочки

можно было бы поговорить и обсудить. Только ТСу это совсем не требуется.
Ну а нам зачем здесь про плюсы и минусы СУБД?
Я так думаю.
Задачу ТСа все субд решают. Он сам сказал.
А с MySQL ему нужно немного потрудится.
НЕ нам потрудится а ему.
10 апр 20, 14:05    [22114145]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
И еще упавшая по 600-й ошибке XE не лечится. Всмысле на нее нет техподдержки.
И хорошо если вы сделали холодный бэкап.

Но по опыту наблюдения. На XE либо никто его не делает никогда. Либо он был сделан так давно
что не актуален.

Тоесть растущая база под XE - это не тех-дебт а это просто мина замедленного действия.
10 апр 20, 14:08    [22114149]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
mayton,
Несправедливо когда на маленьких нападают.
Давай тогда минусы постгри.
Они ведь тоже есть.
10 апр 20, 14:26    [22114163]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Боюсь что это ближе к топику Сравнение СУБД

Но напишу пару сентенций.

(Субъективно). Я мало работал с PG чтоб иметь какое-то покрытие по всем фичам.
Но вот из последнего. Понадобился partition-by-hash. Его внедрили в одной из
последних релизов PG. Но он взаимоисключает индекс по ПК. Это такой-себе
архитектурный нежданчик. Хотя вроде партишининг есть. Но какой-то ограниченный
и скудный.

Из преимуществ. Коробочная поддержка ГИС-типов данных. И хорошо индексируется JSON
поле.
10 апр 20, 14:32    [22114171]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
Garrick
И не отказываюсь


Вы когда на MySQL запускали "Вставка производится из файла SQL с инструкциями (INSERT INTO...)" AutoCommit хоть отключали?

Хотя, судя по "MySQL 8-й версии, все настройки по-умолчанию, т.е. "скорее всего нет"

При включенном AutoCommit говорить о "медленно вставке" просто не прилично (в определенных кругах). В крайнем случае, можно говорить только под видом юмора, анекдота.

IMHO & AFAIK

https://dev.mysql.com/doc/refman/8.0/en/commit.html
By default, MySQL runs with autocommit mode enabled
10 апр 20, 14:33    [22114172]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
mayton
Боюсь что это ближе к топику Сравнение СУБД
+1
10 апр 20, 15:00    [22114186]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Я чуть позже сам в Сравнении подниму топик наподобие сравнений бесплатных версий
коммерческих dbms.

Планирую включить OracleXE, IBM DB2 Express-C.

И пожалуй MS. Но сначала хочу узнать у знатоков MS. Что есть что.

Сообщение было отредактировано: 10 апр 20, 17:12
10 апр 20, 17:13    [22114258]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 10171
mayton
IBM DB2 Express-C.
Оно уже всё, ёк - нечего сравнивать.
10 апр 20, 18:29    [22114299]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Basil A. Sidorov, неужели IBM накрылся? Нет ну подприсели конечно их индексы. Особенно после
пандемий. Но не настолько-же?
10 апр 20, 18:32    [22114301]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
mayton,
Ну если экзотика, что делать
10 апр 20, 18:59    [22114314]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Посмотрел на db-engines. Мда. Наблюдается с 2015 года методичный спад. Но не так чтоб уж ужас-ужас...

К сообщению приложен файл. Размер - 78Kb
10 апр 20, 19:10    [22114321]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 10171
mayton
Basil A. Sidorov, неужели IBM накрылся?
Накрылась редакция DB2 Express-C.
Есть редакция для разработчиков, но такое деление чётко предполагает, что конечный продукт будет работать c одним из коммерческих вариантов DB2.
10 апр 20, 22:06    [22114434]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton
Zzz79
пропущено...

кто ж мне его даст)

Любой дурак на SpringBatch напишет. Тоже мне архитектура. А ты попробуй сложный код упростить.

Это - высшее кун-фу. Знаешь как в Гонконгских боевиках. Самый лютый мастер рукопашного боя - скромненький
старичок с посохом...

Spring Batch очень обширен )
он дает шансы и новичкам( много фич из коробки)
но также много фич и для проф проектов

я вот смотрю наш батч код и тупо не выкупаю что там и где)

вот у меня щас простая проблема

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

мне по http прилетает csv я его забираю


по шедулеру два раза в день чекаю дериректорию - если есть парсю csv валидирую и пишу в бд

и вот в чем прикол( оно ни на что не влияет - просто интерес)

у меня на стенде этот сервис работает ок- тоесть шедулер спринговый запускаетсся и запускает джобы

а вот локально ничего не происходит- тоесть подходит время и ничего

ставишь над application @EnableSheduling - все работает локально

но как без анотации этой на стендах работает я не врублюсь

какая то магия спринг актуатора судя по всему
11 апр 20, 18:33    [22114690]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Zzz79,
У тебя бардак когда нибудь прекратится?
Зачем влез в чужую тему?
Поговорить не с кем?
11 апр 20, 21:05    [22114768]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
Zzz79


по шедулеру два раза в день чекаю дериректорию - если есть парсю csv валидирую и пишу в бд

и вот в чем прикол( оно ни на что не влияет - просто интерес)

у меня на стенде этот сервис работает ок- тоесть шедулер спринговый запускаетсся и запускает джобы



Народ с этим Спрингом реально помешался, суют его во все щели.
На Java API уже никто программировать не умеет?

https://docs.oracle.com/javase/tutorial/essential/io/notification.html

Ну или хотя бы Apache Commons-IO
https://commons.apache.org/proper/commons-io/javadocs/api-release/org/apache/commons/io/monitor/FileAlterationObserver.html
12 апр 20, 10:38    [22114894]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
Жестокие советы. Лечения гемороя методом "топором по яйцам"
IMHO
22114535
12 апр 20, 11:30    [22114904]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
Leonid Kudryavtsev,

Ну, да.

И, кстати, погуглил я тут - это оказывается весьма распространённая проблема и тянется ещё с Бог знает каких лохматых годов. Так что не у меня одного руки кривые в этом плане. Просто повезло, наверное какое-то волшебное сочетание звёзд на небе и фазы луны.
12 апр 20, 12:16    [22114915]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
mayton
пропущено...

Любой дурак на SpringBatch напишет. Тоже мне архитектура. А ты попробуй сложный код упростить.

Это - высшее кун-фу. Знаешь как в Гонконгских боевиках. Самый лютый мастер рукопашного боя - скромненький
старичок с посохом...

Spring Batch очень обширен )
он дает шансы и новичкам( много фич из коробки)
но также много фич и для проф проектов

я вот смотрю наш батч код и тупо не выкупаю что там и где)

вот у меня щас простая проблема

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

мне по http прилетает csv я его забираю


по шедулеру два раза в день чекаю дериректорию - если есть парсю csv валидирую и пишу в бд

и вот в чем прикол( оно ни на что не влияет - просто интерес)

у меня на стенде этот сервис работает ок- тоесть шедулер спринговый запускаетсся и запускает джобы

а вот локально ничего не происходит- тоесть подходит время и ничего

ставишь над application @EnableSheduling - все работает локально

но как без анотации этой на стендах работает я не врублюсь

какая то магия спринг актуатора судя по всему

Если ты знаешь как упростить сложное приложение - это хорошо. Это уже синьорный подход.

С спринг-батч для тебя непонятен потому-что юзкейс очень простой.

Давай другой пример. Ты парсишь csv. Очень большой. Порядка 1 Терабайта. Это длинная транзакция.
Длинтся 12 часов. И 12 часов inserts идут в БД и в конце идет commit. Это риски.
БД может лопнуть. Или от сетевых инцедентов отключиться и откатиться назад. Значит надо предусмотреть
разбивку длинной задачи на порции. И делать коммиты чаще. Например по 100_000 строк. Пачка.

Поэтому этот длинный джоб разбивается на шаги (steps) и каждый шаг фиксирует своё состоянии в репозитарии.
(Поищи есть в SpringBatch поддержка этого).

Такая архитектура - более живучая и позволяет загружать твой толстый csv файл с повторами (retries).
В случае сбоя (даже если перегрузить сервер по питанию) состояние job сохраняется и джоб помнит
сколько шагов он уже отработал.
12 апр 20, 12:23    [22114919]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 8552
Garrick
И, кстати, погуглил я тут - это оказывается весьма распространённая проблема и тянется ещё с Бог знает каких лохматых годов. Так что не у меня одного руки кривые в этом плане.....

В чем проблема?
12 апр 20, 14:23    [22114965]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
Leonid Kudryavtsev,

помогло включение параметра 22114104 innodb_flush_log_at_trx_commit

MySQL по дефолту автоматически каждую секунду сохраняет лог транзакции на диск, увеличение тайм-аута до двух секунд, сильно повышает скорость записи в таблицу, но в случае аварии эти не сброшенные в лог на диске записи будут потеряны. Это конкретная глюко-фича InnoDB, при использовании ISAM таблиц такого не наблюдается.
12 апр 20, 16:55    [22114998]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Это про это.
mayton

- поиграть с двигателем (MYiSAM/InnoDb) обычно перформанс меняется сильно от смены.
- разнести конкурирующие разделы (сегмент данных БД и исходный файл) на разные физические диски. Или исходный файл в быструю сеть (1Гигабит).

12 апр 20, 16:59    [22115000]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mad_nazgul
Member

Откуда:
Сообщений: 5288
Garrick

Народ с этим Спрингом реально помешался, суют его во все щели.
На Java API уже никто программировать не умеет?

https://docs.oracle.com/javase/tutorial/essential/io/notification.html

Ну или хотя бы Apache Commons-IO
https://commons.apache.org/proper/commons-io/javadocs/api-release/org/apache/commons/io/monitor/FileAlterationObserver.html


Ну дык куча синтаксического сахара, плюс куча уже готовых решений, которые работают просто прописав одну зависимость, и пары строк в файле настроек. Т.е. думать не надо. Так что не удивительна популярность Spring.
Правда расплачиваться приходится тем, что если нужно "то же самое, но с перламутровыми пуговицами", то начинаются проблемы.
Ну и само приложение распухает как на дрожжах.
13 апр 20, 05:57    [22115161]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
mayton
Это про это.
mayton

- поиграть с двигателем (MYiSAM/InnoDb) обычно перформанс меняется сильно от смены.
- разнести конкурирующие разделы (сегмент данных БД и исходный файл) на разные физические диски. Или исходный файл в быструю сеть (1Гигабит).


1. Я знаю, что MySQL поддерживает два разных формата файлов/хранилища данных, но как ими "поиграться", как переключится с оного на другое вообще не представляю, никаких инструкций на этот счёт не нашел.
2. Как этот совет можно применить на ноутбуке, на локально установленном MySQL?
13 апр 20, 09:46    [22115199]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Garrick
mayton
Это про это.
пропущено...

1. Я знаю, что MySQL поддерживает два разных формата файлов/хранилища данных, но как ими "поиграться", как переключится с оного на другое вообще не представляю, никаких инструкций на этот счёт не нашел.
2. Как этот совет можно применить на ноутбуке, на локально установленном MySQL?

В java серьезные люди чтобы играться фсякой фигней.
Поставил бд. Не завелась за 10 минут - в тему базы или меняй базу.
За субд нам не платят.
13 апр 20, 10:06    [22115205]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Garrick
mayton
Это про это.
пропущено...

1. Я знаю, что MySQL поддерживает два разных формата файлов/хранилища данных, но как ими "поиграться", как переключится с оного на другое вообще не представляю, никаких инструкций на этот счёт не нашел.
2. Как этот совет можно применить на ноутбуке, на локально установленном MySQL?

Вообще не понимаю при чем тут ноутбук.

CREATE TABLE youFuckenTable1 (....) ENGINE=MyISAM;

CREATE TABLE youFuckenTable2 (....) ENGINE=InnoDB;

Создал 2 таблички с одинаковой шапкой и с разными двигателями хранения. Загрузил в первую.
Замерял время. Загрузил во вторую. Замерял.

Элементарный эксперимент.
13 апр 20, 10:16    [22115208]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
+ Еще все тоже самое только в каждой сессии (или транзакции не знаю как там)
сделай

SET autocommit=0;


и

SET autocommit=1;


Тоесть всего 4 эксперимента.
13 апр 20, 10:19    [22115210]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
mayton,
conn = getConnection()
conn.setAutoCommit(false
13 апр 20, 10:33    [22115219]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Да это как вариант. Если он будет грузить внешними утилитами из sql скрипта то будут разные способы.

JDBC - это будет не самый быстрый метод.
13 апр 20, 10:36    [22115220]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 10171
mayton
JDBC - это будет не самый быстрый метод.
При autocommit - без разницы. Без autocommit, скорее всего, любой метод будет "достаточно быстро".
13 апр 20, 10:46    [22115230]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton
Zzz79
пропущено...

Spring Batch очень обширен )
он дает шансы и новичкам( много фич из коробки)
но также много фич и для проф проектов

я вот смотрю наш батч код и тупо не выкупаю что там и где)

вот у меня щас простая проблема

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

мне по http прилетает csv я его забираю


по шедулеру два раза в день чекаю дериректорию - если есть парсю csv валидирую и пишу в бд

и вот в чем прикол( оно ни на что не влияет - просто интерес)

у меня на стенде этот сервис работает ок- тоесть шедулер спринговый запускаетсся и запускает джобы

а вот локально ничего не происходит- тоесть подходит время и ничего

ставишь над application @EnableSheduling - все работает локально

но как без анотации этой на стендах работает я не врублюсь

какая то магия спринг актуатора судя по всему

Если ты знаешь как упростить сложное приложение - это хорошо. Это уже синьорный подход.

С спринг-батч для тебя непонятен потому-что юзкейс очень простой.

Давай другой пример. Ты парсишь csv. Очень большой. Порядка 1 Терабайта. Это длинная транзакция.
Длинтся 12 часов. И 12 часов inserts идут в БД и в конце идет commit. Это риски.
БД может лопнуть. Или от сетевых инцедентов отключиться и откатиться назад. Значит надо предусмотреть
разбивку длинной задачи на порции. И делать коммиты чаще. Например по 100_000 строк. Пачка.

Поэтому этот длинный джоб разбивается на шаги (steps) и каждый шаг фиксирует своё состоянии в репозитарии.
(Поищи есть в SpringBatch поддержка этого).

Такая архитектура - более живучая и позволяет загружать твой толстый csv файл с повторами (retries).
В случае сбоя (даже если перегрузить сервер по питанию) состояние job сохраняется и джоб помнит
сколько шагов он уже отработал.


сsv у меня мальнький- порядка 20 мб

суть то в чем у меня над процессами стоят @Sheduled (cron=${.......})
когда я сборку заливаю на стенд - щедулер отрабатывает

локально же задачи не запускается- тоесть анотация не отрабатывает

но если над Application.class поставить @EnableSheduling - будет работать локально

и вот теперь вопрос - что за магия врубает на стенде шедулеры без анотации @EnableSheduling

используется spring-boot-starter-actuator
13 апр 20, 11:01    [22115237]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
mayton
пропущено...

Если ты знаешь как упростить сложное приложение - это хорошо. Это уже синьорный подход.

С спринг-батч для тебя непонятен потому-что юзкейс очень простой.

Давай другой пример. Ты парсишь csv. Очень большой. Порядка 1 Терабайта. Это длинная транзакция.
Длинтся 12 часов. И 12 часов inserts идут в БД и в конце идет commit. Это риски.
БД может лопнуть. Или от сетевых инцедентов отключиться и откатиться назад. Значит надо предусмотреть
разбивку длинной задачи на порции. И делать коммиты чаще. Например по 100_000 строк. Пачка.

Поэтому этот длинный джоб разбивается на шаги (steps) и каждый шаг фиксирует своё состоянии в репозитарии.
(Поищи есть в SpringBatch поддержка этого).

Такая архитектура - более живучая и позволяет загружать твой толстый csv файл с повторами (retries).
В случае сбоя (даже если перегрузить сервер по питанию) состояние job сохраняется и джоб помнит
сколько шагов он уже отработал.


сsv у меня мальнький- порядка 20 мб

суть то в чем у меня над процессами стоят @Sheduled (cron=${.......})
когда я сборку заливаю на стенд - щедулер отрабатывает

локально же задачи не запускается- тоесть анотация не отрабатывает

но если над Application.class поставить @EnableSheduling - будет работать локально

и вот теперь вопрос - что за магия врубает на стенде шедулеры без анотации @EnableSheduling

используется spring-boot-starter-actuator

На стенде Windows или Linux?

Твоё приложение standalone? Или деплоится в контейнер JBoss/WebSphere/GlassFish ?
13 апр 20, 11:06    [22115241]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton

На стенде Windows или Linux?

Твоё приложение standalone? Или деплоится в контейнер JBoss/WebSphere/GlassFish ?

на стенде Linux
это спринг бут -соотвенственно embded tomcat
13 апр 20, 11:16    [22115247]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Не знаю честно. У тебя есть в гитхабе макет этого?
13 апр 20, 11:17    [22115249]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
причем абсолютно все конфиги идентичны за исключением instanceId
что application.yml
что bootstrap.yml
но локально на ноуте- отработка шедулеров только если на мейн классе стоит @EnableSheduling

я уже голову сломал -почему так происходит,не дает покоя мне этот момент
13 апр 20, 11:18    [22115252]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton
Не знаю честно. У тебя есть в гитхабе макет этого?


нет,это банк,у нас свой закрытый репозиторий
13 апр 20, 11:19    [22115253]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 17735
для загрузки csv есть специальные инструменты, позволяющие напрямую загрузить в базу.
13 апр 20, 11:51    [22115272]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
mayton
Не знаю честно. У тебя есть в гитхабе макет этого?


нет,это банк,у нас свой закрытый репозиторий

Сделай в 5 строчек макет чтоб компилировался. Без ваших бизнесовых названий.
13 апр 20, 12:06    [22115286]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton,
там не все так просто

вообщем перетестил кучу кейсов

вывод - при переходе с 2.0.5 спринг бута на 2.2.4 перестал работать шедулер
13 апр 20, 16:54    [22115514]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Когда твой скедюлер бин поднимается он должен что-то записать в логи.
13 апр 20, 17:24    [22115530]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton,да он и пишет

ворпос то не в логах,а то что с переходом на новый бут анотация @Sheduled перестала работать без @EnableSheduling
13 апр 20, 17:37    [22115534]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79, так добавь.
13 апр 20, 19:38    [22115617]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton,да это понятно)
я хочу разобраться в причние

пс.майтон скажи у нас база постгрес - мы пишем даты согласно тайм зоне
в бд они пишутся по гринвичу

тоесть я сижу в мск ввел 11 в базе 8
мне интересно есть ли способ чтобы все записи писались как положено чтобы их не надо было конвертировать
тоесть я сижу в мск записал в мск 11 и в базу тоже легло 11 а не 8 и потом чтобы можно было это 11 достать а не 8)

а кто то во владике в это время тоже записал 11 и чтобы в базу тоже легло 11 а не 3)
13 апр 20, 21:11    [22115650]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
Zzz79

а кто то во владике в это время тоже записал 11 и чтобы в базу тоже легло 11 а не 3)

А когда кто-то во Владивостоке в 11:00 что-то внёс в базу, а в Москве кто-то в 10:00 как узнать кто из них был первый?
А если вам просто цифры хранить, то используйте цифровое поле, а не TIME.
13 апр 20, 21:28    [22115655]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
Garrick,
ну ты потдеврдил мое мнение- такие вещи нужно хранить без всяких тайм зон
13 апр 20, 21:53    [22115661]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
Garrick
Zzz79

а кто то во владике в это время тоже записал 11 и чтобы в базу тоже легло 11 а не 3)

А когда кто-то во Владивостоке в 11:00 что-то внёс в базу, а в Москве кто-то в 10:00 как узнать кто из них был первый?
А если вам просто цифры хранить, то используйте цифровое поле, а не TIME.

вообще нам не нужно знать кто был первым)
нужно в печатках потом правильно отображать время
я столкнулся с тем что мы в вводим 11 +3 в джесон - в базу пишет 8
на печатке выходит естественно 8
13 апр 20, 21:58    [22115663]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
забыл ник
Member

Откуда:
Сообщений: 3289
Zzz79
Garrick
пропущено...

А когда кто-то во Владивостоке в 11:00 что-то внёс в базу, а в Москве кто-то в 10:00 как узнать кто из них был первый?
А если вам просто цифры хранить, то используйте цифровое поле, а не TIME.

вообще нам не нужно знать кто был первым)
нужно в печатках потом правильно отображать время
я столкнулся с тем что мы в вводим 11 +3 в джесон - в базу пишет 8
на печатке выходит естественно 8

рукалицо.
13 апр 20, 22:01    [22115666]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
mayton,да это понятно)
я хочу разобраться в причние

пс.майтон скажи у нас база постгрес - мы пишем даты согласно тайм зоне
в бд они пишутся по гринвичу

тоесть я сижу в мск ввел 11 в базе 8
мне интересно есть ли способ чтобы все записи писались как положено чтобы их не надо было конвертировать
тоесть я сижу в мск записал в мск 11 и в базу тоже легло 11 а не 8 и потом чтобы можно было это 11 достать а не 8)

а кто то во владике в это время тоже записал 11 и чтобы в базу тоже легло 11 а не 3)

1) Надо смотреть какой тип данных времени у вас в таблице.
https://www.postgresql.org/docs/12/datatype-datetime.html

2) Надо смотреть как приложение настраивает свою локаль (язык страна часовой пояс)
Для java это тоже касается. И какой тип данных JDBC вы выбрали чтобы представлять дату.

Разумеется приложение должно фиксировать дату с учотом поясов чтобы правильно
сделать comparison.

Сообщение было отредактировано: 13 апр 20, 22:42
13 апр 20, 22:43    [22115683]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
забыл ник,
это не я делал уж извините ))
13 апр 20, 23:06    [22115690]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton


Разумеется приложение должно фиксировать дату с учотом поясов чтобы правильно
сделать comparison.

зачем?
Эта дата используется лишь для распечатки документов на кредит)
типо дата подписи или что то в этом роде)
тоесть если клиент запросил кредит во владике -зачем мне в базу писать гринвич+ зона =чтобы потом обратно все жто дело преобразовывать,вместо того,чтобы записать время фактическое?
13 апр 20, 23:09    [22115694]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Zzz79,
Детский вопрос.
В аппСервер с клиента приходит 2013-02-25 18:25:10 +03
Хочешь обрезай, хочешь не обрезай.
14 апр 20, 07:36    [22115756]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
mayton


Разумеется приложение должно фиксировать дату с учотом поясов чтобы правильно
сделать comparison.

зачем?
Эта дата используется лишь для распечатки документов на кредит)
типо дата подписи или что то в этом роде)
тоесть если клиент запросил кредит во владике -зачем мне в базу писать гринвич+ зона =чтобы потом обратно все жто дело преобразовывать,вместо того,чтобы записать время фактическое?

Не совсем правильный вопрос зачем.

Вопрос как правильно. Если твоя задача работает в системе без учота часовых поясов - то ты выбираешь ТИПЫ
данных для БД и JDBC которые не хранят часовой пояс.

Если твоя задача работает в нескольких часовых поясах и для нее важно ФИКСИРОВАТЬ время события
(чтобы в будущем принимать решения о причинно-следственной связи между событиями) то надо соотв.
брать SQL/JDBC типы с зоной. Зональны типы можно конвертить и форматировать красиво чтоб публиковать
+1,+2,+3 e.t.c.

Есть еще третий (гибридный вариант). Твоя систма фиксирует время зонированное но в базе или в системе
время сводится к времени UTC. Так мы делаем. С UTC проще делать арифметику т.к. это просто целое число.

Правда мы теряем сведения о зоне. Но нам пофиг. Если время например паблишится по Нью-Йорку всегда
независимо от того из какой зоны пришло событие.
14 апр 20, 11:13    [22115846]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton,
как правильно поступить если клиента оформляли в москве
в 11.40 ( джейсон 11.40бла бла бла + 3.00)
в базе тип тайм стемп виз тайм зоне
записывается 8.40

и вот я хочу чтобы другой сервис ,который например находится во владике при распечатке документов выводил время обращение клиента 11.40

я так понимаю мы должны убрать тайм зону из базы,либо добавлять в маперы сервиса потребителя методы конвертации
14 апр 20, 11:18    [22115848]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79

и вот я хочу чтобы другой сервис ,который например находится во владике при распечатке документов выводил время обращение клиента 11.40

Я не могу рассказать это тебе оперируя гуманитарным текстом. Очевидно что надо что-то во что-то конвертить.

Я уже жду исходников и DDL таблицы.
14 апр 20, 11:21    [22115851]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 4832
Zzz79,

Это спринг на тебя так влияет? Или облака?)
14 апр 20, 11:36    [22115859]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Alex_Ustinov
Member

Откуда: Nickel
Сообщений: 3220
Zzz79
мы должны убрать тайм зону из базы
базу держи в одной нулевой зоне, на клиенте конвертируй
14 апр 20, 12:13    [22115893]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
Alex_Ustinov
Zzz79
мы должны убрать тайм зону из базы
базу держи в одной нулевой зоне, на клиенте конвертируй

да у нас так и реализовано-я просто не пойму зачем туда сюда конвертировать дату эту?
ведь потребителю важно локальное время подписанта - поэтому получается я сначала дату кладу с тайм зоной потом обратно эту дату переконвертирую
14 апр 20, 12:45    [22115908]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Zzz79
Alex_Ustinov
пропущено...
базу держи в одной нулевой зоне, на клиенте конвертируй

да у нас так и реализовано-я просто не пойму зачем туда сюда конвертировать дату эту?
ведь потребителю важно локальное время подписанта - поэтому получается я сначала дату кладу с тайм зоной потом обратно эту дату переконвертирую

Что важно потребителю - это business requirements ТВОЕГО приложения. И мы их не знаем ясен пень.
В некоторых системах трекается два времени. Время фиксации события в системе. И время юридическое.
Например договор был составлен вчерашним числом но заведен в систему сегодня. Две даты.
14 апр 20, 12:50    [22115912]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Zzz79
Member

Откуда:
Сообщений: 168
mayton
Zzz79
пропущено...

да у нас так и реализовано-я просто не пойму зачем туда сюда конвертировать дату эту?
ведь потребителю важно локальное время подписанта - поэтому получается я сначала дату кладу с тайм зоной потом обратно эту дату переконвертирую

Что важно потребителю - это business requirements ТВОЕГО приложения. И мы их не знаем ясен пень.
В некоторых системах трекается два времени. Время фиксации события в системе. И время юридическое.
Например договор был составлен вчерашним числом но заведен в систему сегодня. Две даты.

для нас важно время по месту подписания договора
далее именно это время должны хавать все потребители( независимо от того места где они находятся )
тоесть ты пришел во владике взял кредит- поставил подпись в 11 00 ,значит это время должно вылезти и в мск при распечатке доков
поэтому я не пойму сакрального смысла конвертить 11 .00 сначала в 3.00 ,а заем обратно)
14 апр 20, 13:08    [22115927]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Я могу ответить на вопрос - "как сделать чтобы".

Но я не отвечу тебе на вопрос "почему". Это - к твоим архитекторам и бизнесам.
14 апр 20, 13:10    [22115932]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Garrick
Member

Откуда: Москва
Сообщений: 2999
Zzz79

Эта дата используется лишь для распечатки документов на кредит)
типо дата подписи или что то в этом роде)

О! Это вообще тема. Задачка для первого класса:
Условие:
Клиент 10-го числа в 7 утра во Владивостоке подписал кредитный договор. В Москве в это время ещё 9-е число. В конце месяца по кредиту начисляются проценты и, как правило, это делается в центральном офисе в Москве.
Вопрос:
За какое количество дней будут начислены проценты?
14 апр 20, 13:11    [22115933]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
mayton
Member

Откуда: loopback
Сообщений: 46531
Я-же говорю. Comparison двух дат. Или вот еще вариант - календарная арифметика интервалов.
14 апр 20, 13:13    [22115935]     Ответить | Цитировать Сообщить модератору
 Re: MySQL очень медленный  [new]
Alex_Ustinov
Member

Откуда: Nickel
Сообщений: 3220
Zzz79
то есть ты пришел во владике взял кредит- поставил подпись в 11 00 ,значит это время должно вылезти и в мск при распечатке доков
поэтому я не пойму сакрального смысла конвертить 11 .00 сначала в 3.00 ,а заем обратно)
ничего непонятно... но вроде все об одном. В доке должно стоять 11:00 (GMT+10) г.Владивосток (т.е. в базе будет 01-00). А то он прилетит в МСК и возьмет еще один кредит в 9-00 по МСК, ведь в МСК еще не будет 11-00..))
Так работают все сайты.....
14 апр 20, 17:48    [22116134]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2 3 4 5      [все]
Все форумы / Java Ответить