172 похожих чатов

Привет. Я могу спросить по TimescaleDB дополнению? У меня возникают

проблемы с производительностью и на метриках в это время сильно возрастают tup_fetched и tup_returned в секунду. И сильно растет при этом нагрузка на диск. Но включая логирование всех запросов я вижу только INSERT запросы и больше ничего. И так оно и должно быть, в базу идет только запись. Поэтому сейчас я немного в недоумении откуда тогда эти метрики

19 ответов

23 просмотра

Знаю что у clickhouse требования вставлять большими батчами ради производительности. Я так понимаю вы по одной строчке вставляете? Может в этом дело? Не спец в tsc

Nickolay- Автор вопроса
Alex Ilizarov
Знаю что у clickhouse требования вставлять большим...

Да, вставляю по одной строке. Но по идее timeseries базы как раз под это и оптимизируются. Ну и что самое главное, это хочется понимать откуда берется куча fetch/returned в метриках

Nickolay- Автор вопроса
Alex Ilizarov
Знаю что у clickhouse требования вставлять большим...

А кликхаус это ведь больше для анализа база? Когда у тебя уже есть данные и ты их туда заливаешь чтобы делать всякие сложные запросы

Nickolay
А кликхаус это ведь больше для анализа база? Когда...

Насколько я понимаю (могу ошибаться) timescale и clickhouse решают похожие проблемы и обе колоночные. А еще знаю что кликхаус сжимает строки lz4, возможно tsc тоже что то такое делает. Оттуда и перфоманс лосс

Nickolay
Да, вставляю по одной строке. Но по идее timeserie...

https://blog.timescale.com/blog/13-tips-to-improve-postgresql-insert-performance/ Может тут что то по теме есть

Nickolay- Автор вопроса
Nickolay- Автор вопроса
Alexey Bulgakov
Хранилище да

То есть если собираешь в реальном времени метрики, то в идеале их собирать в timeseries базу, а уже оттуда экспортировать в кликхаус, верно?

Nickolay- Автор вопроса
Alex Ilizarov
Зачем так усложнять?)))

А вы как делаете? По идее конечно можно раз в секунду вставлять сразу кучу данных и это будет почти то же самое, что и с timeseries. Но я не знаю как кликхаус работает. Может там нужно один раз вставить сразу все данные

Nickolay
А вы как делаете? По идее конечно можно раз в секу...

Кликхаус советует большими пачками данные вбивать

Nickolay- Автор вопроса
Alex Ilizarov
Кликхаус советует большими пачками данные вбивать

Но вот вопрос какой может быть интервал между вставками, чтобы все было максимально оптимально

Nickolay
Но вот вопрос какой может быть интервал между вста...

Из той статьи что я выше кинул. Зачем кликхаус если tsc вроде тоже самое

Nickolay
Но вот вопрос какой может быть интервал между вста...

Все же я бы посоветовал дочитать ту статью

Nickolay- Автор вопроса
Alex Ilizarov
screenshot Из той статьи что я выше кинул. Зачем кликхаус есл...

Да, надо будет попробовать мне тоже через буфер сделать. Просто меня смутили метрики. То, что там возрастает отношение fetched/returned к inserted. То есть в нормальной ситуации например 4k returned на 1k fetched (и тут тоже непонятно откуда returned, если все запросы это INSERT). А в пике может быть 320k returned на 6к inserted. Очень хочется понять что это вообще значит

Nickolay
Да, надо будет попробовать мне тоже через буфер сд...

https://github.com/timescale/timescaledb/issues/2512#issuecomment-705863640 Вот еще. Лучше хотя бы приблизительно временной порядок соблюдать. У них там куча оптимизаций на это

Alex Ilizarov
Кликхаус советует большими пачками данные вбивать

это уже не так - под капотом он сам создает буфер записей для вставки и вставляет их по мере заполнения буфера

Nickolay- Автор вопроса
Alex Ilizarov
screenshot Из той статьи что я выше кинул. Зачем кликхаус есл...

Если интересно. Я таки сделал буферизацию и все проблемы решились :) Непонятные fetched/returned ушли из метрик и все стало замечательно 😊 Спасибо за помощь!

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта