Size: a a a

ClickHouse не тормозит

2020 July 17

K

Kid in ClickHouse не тормозит
setAcl /newznode auth:username:password:crdwa
newznode это /clickhouse в моем случае
в zk.Cli ls /
возвращает: clickhouse, zookeeper
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alexander Selivanov
Друзья. а есть у КХ какой-то лаг? Мы щас видим ситуацию, когда записи в бд появляются через 2-3 минуты после их создания, в таблице 6 млн строк
ну если запись в Distributed то да, можно туда натолкать быстрее чем она раскидывает
источник

AS

Alexander Selivanov in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
ну если запись в Distributed то да, можно туда натолкать быстрее чем она раскидывает
То есть это expected behavior?
источник

ЕК

Евгений Король... in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
да, если единственным полем в order by (или первым)
спасибо, вспомнил что у меня уже есть подобный пример. 0.3 с запрос для таблицы с 90367391846 записей =)
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Иван
- таблица ХХХ (основная) реплицируемая
- таблица ууу идентичная ХХХ
- в таблице ууу есть партиция (на всех хостах есть). В таблице ХХХ такой патриции нет пока.

- эту партицию надо ALTER TABLE xxx ATTACH ... FROM yyy, чтобы она не копировалась по сети много раз (на каждую реплику), а приаттачилась на каждом хосте из таблицы yyy.


- в результате получил такую ошибку
>- эту партицию надо ALTER TABLE xxx ATTACH ... FROM yyy, чтобы она
> не копировалась по сети много раз (на каждую реплику), а приаттачилась на каждом хосте из таблицы yyy.

так нельзя, выстрел в ногу, данные задублируете
КХ при атаче скачивает на все реплики

но есть хак сейчас найду как это сделать
источник

AS

Alexander Selivanov in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
ну если запись в Distributed то да, можно туда натолкать быстрее чем она раскидывает
А как можно ускорить без distributed? Типа больше ресурсов выделить? У нас не кластер а один сервер под ch
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alexander Selivanov
А как можно ускорить без distributed? Типа больше ресурсов выделить? У нас не кластер а один сервер под ch
а зачем вам distributed тогда?
источник

AS

Alexander Selivanov in ClickHouse не тормозит
Ну так я и не говорил про distributed. У нас через кафка консьюмер создаются записи в CH и они сильно отстают - я об этом, то есть прям наблюдал сидел за конкретный time range сидел делал запросы и видел как записи, которые должны были создаться еще 5 минут назад только щас создавались
источник

CO

Chern Oleksander in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
temporary table всегда уже с engine = memory

create temporary table tt as select 1
OK

и это не тоже самое что
create table tt engine=Memory as select 1

temporary видны только ее сессии и копируются между нодами автоматически, не temporary видны всем и не копируются
Спасибо, ух как замудрили ) Буду знать
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Иван
- таблица ХХХ (основная) реплицируемая
- таблица ууу идентичная ХХХ
- в таблице ууу есть партиция (на всех хостах есть). В таблице ХХХ такой патриции нет пока.

- эту партицию надо ALTER TABLE xxx ATTACH ... FROM yyy, чтобы она не копировалась по сети много раз (на каждую реплику), а приаттачилась на каждом хосте из таблицы yyy.


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

CO

Chern Oleksander in ClickHouse не тормозит
И не знаю, может не в этот чат, но всё же
а можно ли как-то через R сделать запись в таблицу в ClickHouse
не могу найти в библиотеки ClickHouse dbWriteTable
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Chern Oleksander
Спасибо, ух как замудрили ) Буду знать
temporary таблицы нужны для distriubted запросов c global, они там неявно создаются
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alexander Selivanov
Ну так я и не говорил про distributed. У нас через кафка консьюмер создаются записи в CH и они сильно отстают - я об этом, то есть прям наблюдал сидел за конкретный time range сидел делал запросы и видел как записи, которые должны были создаться еще 5 минут назад только щас создавались
фейспалм.жпг
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
лаг в кафка и происертили в КХ это блин две большие разницы. Ну неуспевает консьюмер консьюмить и что?
версия КХ какая? с какими параметрами kafka engine ?
источник

И

Иван in ClickHouse не тормозит
Благодарю, именно так и делал, возможно описал это непонятно.
В результате повторил операцию, она выполнилась. Сделал check table он вернул 1, потом сделал на всякий случай optimize deduplicate.
Но причину ошибки я так и не понял
источник

AG

Artemeey Gavryushin in ClickHouse не тормозит
Добрый день!

Обычно партиции с датой хранятся в папке в формате YYYYMM, и это удобно при работе с отключенными партициями

Если партиции нумеруются так: PARTITION BY round(check_id / 20000)
То партиция с id = 27 хранится в папке 311af58b151d88a3f5937f951cae3949
По какой логике формируется имя папки в таком случае? Если способ найти среди множества папок папку с нужной партицией (не смотря в system.parts для каждой партиции)?

http://joxi.ru/brR15PLIY9L3yA?d=1
источник

AS

Alexander Selivanov in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
лаг в кафка и происертили в КХ это блин две большие разницы. Ну неуспевает консьюмер консьюмить и что?
версия КХ какая? с какими параметрами kafka engine ?
в чем и прикол консьюмер быстро консьюмит, в кафке лаг 0.

ClickHouse server version 20.5.2 revision 54435

Консьюмер у нас свой для кафки
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Иван
Благодарю, именно так и делал, возможно описал это непонятно.
В результате повторил операцию, она выполнилась. Сделал check table он вернул 1, потом сделал на всякий случай optimize deduplicate.
Но причину ошибки я так и не понял
ааа, я криво прочитал изначально. Видимо есть какой-то баг в дизайне КХ. Попробую воспроизвести
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alexander Selivanov
в чем и прикол консьюмер быстро консьюмит, в кафке лаг 0.

ClickHouse server version 20.5.2 revision 54435

Консьюмер у нас свой для кафки
и во что вы вставляете? в какой engine?
источник

И

Иван in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
ааа, я криво прочитал изначально. Видимо есть какой-то баг в дизайне КХ. Попробую воспроизвести
Не знаю причины, столкнулся в первый раз(такие манипуляции делал и ранее), вот stack-trace, вдруг пригодится. Версия клика 19.17.6.36
DB::Exception: Code: 999: Coordination::Exception. Coordination::Exception: Transaction failed (Node exists): Op #7, path: /clickhouse/tables/xxx/yyy/1/blocks/20200716_replace_from_71AE3CA85FB62AEE0E9FD22461ED0C68. Stack trace:

0. 0x559d4cd3a0e0 StackTrace::StackTrace() /build/obj-x86_64-linux-gnu/../dbms/src/Common/StackTrace.cpp:228
1. 0x559d509ed1c0 Coordination::Exception::Exception(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int) /build/obj-x86_64-linux-gnu/../dbms/src/Common/ZooKeeper/IKeeper.cpp:27
2. 0x559d509ed813 Coordination::Exception::Exception(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int) /usr/include/c++/9/bits/basic_string.h:222
3. 0x559d509f5df2 zkutil::KeeperMultiException::KeeperMultiException(int, std::vector<std::shared_ptr<Coordination::Request>, std::allocator<std::shared_ptr<Coordination::Request> > > const&, std::vector<std::shared_ptr<Coordination::Response>, std::allocator<std::shared_ptr<Coordination::Response> > > const&) /usr/include/c++/9/bits/basic_string.h:222
4. 0x559d4cb80a5e zkutil::ZooKeeper::multi(std::vector<std::shared_ptr<Coordination::Request>, std::allocator<std::shared_ptr<Coordination::Request> > > const&) [clone .cold] /build/obj-x86_64-linux-gnu/../dbms/src/Common/ZooKeeper/ZooKeeper.cpp:915
5. 0x559d503790d5 DB::StorageReplicatedMergeTree::replacePartitionFrom(std::shared_ptr<DB::IStorage> const&, std::shared_ptr<DB::IAST> const&, bool, DB::Context const&) /usr/include/c++/9/bits/stl_vector.h:108
6. 0x559d50398d34 DB::StorageReplicatedMergeTree::alterPartition(std::shared_ptr<DB::IAST> const&, DB::PartitionCommands const&, DB::Context const&) /usr/include/c++/9/bits/shared_ptr_base.h:729
7. 0x559d508af15a DB::InterpreterAlterQuery::execute() /usr/include/c++/9/bits/stl_vector.h:1005
8. 0x559d5022b0de DB::executeQueryImpl(char const*, char const*, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool, DB::ReadBuffer*, bool) /build/obj-x86_64-linux-gnu/../dbms/src/Interpreters/executeQuery.cpp:319
9. 0x559d5022c52e DB::executeQuery(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool, bool) /usr/include/c++/9/bits/shared_ptr_base.h:1180
10. 0x559d4cdc3704 DB::TCPHandler::runImpl() /build/obj-x86_64-linux-gnu/../dbms/programs/server/TCPHandler.cpp:249
11. 0x559d4cdc414b DB::TCPHandler::run() /build/obj-x86_64-linux-gnu/../dbms/programs/server/TCPHandler.cpp:1238
12. 0x559d50cddfe0 Poco::Net::TCPServerConnection::start() /build/obj-x86_64-linux-gnu/../contrib/poco/Net/src/TCPServerConnection.cpp:57
13. 0x559d50cde6fd Poco::Net::TCPServerDispatcher::run() /usr/include/c++/9/bits/atomic_base.h:327
14. 0x559d523b4871 Poco::PooledThread::run() /usr/include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:748
15. 0x559d523b261c Poco::ThreadImpl::runnableEntry(void*) /build/obj-x86_64-linux-gnu/../contrib/poco/Foundation/include/Poco/AutoPtr.h:205
16. 0x559d52b28780 execute_native_thread_routine /usr/lib/debug/usr/bin/clickhouse
17. 0x7f9365d5e6ba start_thread /lib/x86_64-linux-gnu/libpthread-2.23.so
18. 0x7f93656884dd clone /lib/x86_64-linux-gnu/libc-2.23.so
источник