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

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

когда нужен кликхаус, а когда например мантикора, мои вводные:
1) сейчас используется mysql -1 таблица, 15млн записей,100 колонок (70 varchar/char, остальные 4 datetime, 10 double)
2) изначально не было понятно нужен будет полнотекстовый поиск или аналитические запросы, но на данный момент что часто будут выполняться запросы:
SELECT USDKG,COUNT(ND) AS ND_Count,SUM(G35)
FROM
table
WHERE
G071 = '....' AND `G072` BETWEEN date AND date AND G33 = '........' AND G34 = 'CN' AND GD0 = '10' AND G141 = '.......'
GROUP BY
USDKG;
и
SELECT USDKG,ND,G35
FROM task
WHERE `G072` BETWEEN date AND date AND G33 = '....' AND G34 = 'CN' AND GD0 = '10' AND G091 IN (111,1111,11,111,11,11,1)

т.е по факту нужен не полнотекстовый поиск, а фильтрация по строкам

Вопрос:
1) в таких запросах поойдет больше Кликхауз ?
2) если да, подскажите есть ли триал, как перенести данные из mysql в кликхауз
желательно в контейнерах
3) а также работает ли clickhouse с laravel ?

10 ответов

25 просмотров
Dmitry-Gerasin Автор вопроса

+ нашел https://db-benchmarks.com/?cache=fast_avg&engines=clickhouse_21.8.11.4%2Cmanticoresearch_5.0.2&tests=taxi&memory=110000&queries=0%2C1%2C2%2C3%2C4%2C5%2C6%2C7%2C8%2C9%2C10%2C11%2C12%2C13%2C14%2C15%2C16

Если вам нужны поиски, то почему бы и не попробывать мантикору ? 1) Когда есть огромный массив данных и надо из него получить часть данных. 2) кликхаус полностью опенсоурс, можете у себя разворачивать, перенести не сложно, даже есть реалтайм перенощики данных .... гугл в помощь 3) Кликхаус интегрируется с любой системой которая может отправлять http запросы в CH :)

1) Он используется там где нужна агрегация на больших объемах (15 млн это ничего) 2) Он бесплатный, перенести можна 3) Есть драйвер для работы с ним от the-tinderbox

Dmitry-Gerasin Автор вопроса
Константин
Если вам нужны поиски, то почему бы и не попробыва...

1) ну вот это не те поиски которые я изначально предполагал, раньше я думал что будет что-то типо SELECT 'a fat cat sat on a mat and ate a fat rat'::tsvector @@ 'cat & rat'::tsquery; а пофакту вот как приложил в запросах выше правильно понимаю что впринципе и кликхауз и мантикора подойдет под те запросы ?

Dmitry-Gerasin Автор вопроса
Vladyslav Sakun
1) Он используется там где нужна агрегация на боль...

15 млн это и вправду ничего, но на текущей бд нужно все 100 колонок обмазать индексами и мб только тогда заработает нормально поэтому я прям оч надеюсь что для мантикоры или кликхауза это будет каплей в море

Dmitry Gerasin
15 млн это и вправду ничего, но на текущей бд нуж...

Вас не спасёт кликхауз если Вам нужны индексы на все 100 колонок, да и в целом если такое большое количество индексов, то там проблема в подходе, а не сервисе)

Dmitry-Gerasin Автор вопроса
Vladyslav Sakun
Вас не спасёт кликхауз если Вам нужны индексы на в...

наверное глупый вопрос, но кликхауз сам проставляет индексы ? так как в маникоре я читал что проставляются автоматом secondary indexes

Dmitry Gerasin
наверное глупый вопрос, но кликхауз сам проставляе...

Нет, у него нету secondary indexes, почитайте про то что такое индекс в кликхаузе, там всё сложно когда знакомишься с ним после реляционных БД.

Dmitry Gerasin
1) ну вот это не те поиски которые я изначально пр...

Ответить на ваш вопрос, сможете только вы, после того как вы проведёте ресерч инструментов. Лично я, делал бы на CH .... Но он мне нравится и я его знаю :)

Dmitry Gerasin
15 млн это и вправду ничего, но на текущей бд нуж...

главный вопрос, какой RPS? КХ это не про отправить много маленьких запросов с временем ответа в милисекунды

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта