
Andrey
20.04.2017
19:14:06
Ого, а расскажешь? Интересно даже юз кейсы послушать

Dennis
20.04.2017
19:14:41
В обмен на юзкейсы Тарантула в яндексе :)

Pavel
20.04.2017
19:14:41
все используют CH много где %)

Andrey
20.04.2017
19:15:11
Я б с удовольствием рассказал про юз кейсы в яндексе, если бы там работал ))

Google

Pavel
20.04.2017
19:15:47
мы скоро про наш юз кейс будем рассказывать в Мадриде, https://indico.dns-oarc.net/event/26/session/5/contribution/21

Andrey
20.04.2017
19:15:55
А вот правда ребят, есть у кого то кейсы использования CH не для аналитики кликов/посещений/access логов ?

Pavel
20.04.2017
19:16:08
ну вот выше, DNS :)

Andrey
20.04.2017
19:16:25
ага, вот смотрю. Интересно)

Igor
20.04.2017
19:22:49

Виктор
20.04.2017
19:23:06
О, Денис. Добро пожаловать :)
Тарантул в Яндексе нигде не используется, насколько мне известно.

Andrey
20.04.2017
19:23:44

Dennis
20.04.2017
19:25:11
Виктор, спасибо! Я просто слышал, что используется.

Виктор
20.04.2017
19:25:51
Я пробовал у нас, не пошло :)

Dennis
20.04.2017
19:27:00
У вас это в метрике?

Виктор
20.04.2017
19:27:38
Да.
Нужен был нормальный k-v, быстрый, отказоустойчивый и распределённый

Google

Dennis
20.04.2017
19:28:22
С распределннотью пока проблема
Остальное все есть

Pavel
20.04.2017
19:28:31
Redis :)

Виктор
20.04.2017
19:28:38
Да, поэтому и отложили. У нас данных многовато.
Но появилось внутреннее хорошее решение

Pavel
20.04.2017
19:28:50
мы тоже потенциально рассатривали тарантул, но не пошло, выбрали редиску

Dennis
20.04.2017
19:28:52
Редис не отказоустойчив

Виктор
20.04.2017
19:29:05
Redis распределённый? Это с каких пор?
Ну и отказоустойчивость нет же

Dennis
20.04.2017
19:29:16
Не распределеный
Да

Виктор
20.04.2017
19:30:04
Появился мощный k-v на основе внутреннего mapreduce. Быстрый и очень масштабируемый.

Pavel
20.04.2017
19:30:09
тем не менее под задачи подошел ваше ок)

Dennis
20.04.2017
19:30:25

Виктор
20.04.2017
19:30:29
Увидимся, расскажу :)
Да

Dennis
20.04.2017
19:30:39
Давай :)
Закрытый, потому что на внутренние потроха сильно завязан?

Виктор
20.04.2017
19:31:32
По сути да. Это часть YT, нашего mapreduce решения.

Google

Dennis
20.04.2017
19:32:32

Виктор
20.04.2017
19:32:57
Для разных целей. Вебвизор, например, чистый k-v.
Хотим пользовательскую историю также там обновлять, пока не сделали.
То есть скорее не буфер перед кликхаусом, но хранитель обновляемых данных про пользователя, чтобы можно было при обработке потока туда ходить.

Dennis
20.04.2017
19:35:20
А что в качестве буфера?

Alex
20.04.2017
19:35:20
Кстати недавно был доклад, где рассказывали про YT: https://events.yandex.ru/lib/talks/4103/

Виктор
20.04.2017
19:36:06
В качестве буфера кастомный код.

Dennis
20.04.2017
19:38:57
Почему он не часть клика?

Виктор
20.04.2017
19:39:50
Сложный вопрос :)
YT вообще говоря более сложная и большая система.

Pavel
20.04.2017
19:40:57
я вот ною в тикетах и прошу сделать батчер :)
ибо под каждый проект каждый городит свой батчер, это надоедает

Виктор
20.04.2017
19:45:51
Правильно ноешь :)
Батчер нужен.

Vladimir
20.04.2017
19:48:32

Dennis
20.04.2017
19:57:44

Pavel
20.04.2017
19:57:59
слишком сложный и большой
я себе это вижу как реализацию в либе https://github.com/artpaul/clickhouse-cpp/issues/11
по крайне мере в С++ все возможности для этого есть

Vladimir
20.04.2017
20:04:00
А можно ли кликхаус использовать для хранения "горячих" и "холодных" данных с разной степенью репликации? И как это все потом оркестрируется?

Google

Vladimir
20.04.2017
20:04:25
Или кликхаус принципиально не используется с разделением на горячие и холодные данные?

Pavel
20.04.2017
20:04:44
Владимир, шикарный вопрос.
И он как раз к теме батчера
я могу рассказать, какой кейс у меня лично

Vladimir
20.04.2017
20:05:11
О, давайте!)

Pavel
20.04.2017
20:05:23
я коплю в CH трафик и за последние 10 минут он мне нужен горячий, а все прочее - пока диски не кончатся.

Alexey
20.04.2017
20:05:44
Есть возможность использовать батчинг очень простым способом:
- открыть соединение, отправить запрос INSERT и начать отправлять данные. Далее, каждый раз, когда приходит следующая строчка, сразу же отправлять её туда же. По достижению порога на число строк или прошедшего времени, завершать отправку данных.

Pavel
20.04.2017
20:05:48
сейчас 10 минут хранятся в приложении, внутренний буфер и дополнительно отправляются в буфер таблицу в кликхаусе
в итоге когда нужно аналитику по горячим данным - мы потрошим свой буфер в приложении, а когда за прошлый месяц - делаем запрос к CH.
НО очень хочется в обоих случаях делать запрос к CH, просто горячие данные держать в оперативке, а-ля буфер таблице, но быстрой, сейчас буфер довольн омедленный особенно если вставляешь данные поштучно туда...

Vladimir
20.04.2017
20:12:31
а, если я хочу равномерно записывать данные на кластер ,потом машины, где живут старые данные и на которых мало места, использовать только для чтения? как данные в этом случае размазываются (как дистрибуцируются, когда заканчивается место)?

Alexander
20.04.2017
20:13:26

Pavel
20.04.2017
20:13:35
kdb?

Alexander
20.04.2017
20:14:14
kx.com / база kdb, язык q

Pavel
20.04.2017
20:15:10
возможно) она похоже платная. у меня кейс не особо ложащийся на такой вариант, потому что устанвоок базы очень много и они у клиентов

Alexander
20.04.2017
20:16:35
Есть инстанс in-memory, который принимает огромный поток текущих данных, ну и быстро отдает запросы по нему, и есть инстанс, который читает предыдущие дни с диска. В конце дня память сбрасывается на диск.

Pavel
20.04.2017
20:16:58
это очень похоже на linux write pack
ой, write back :)
пока есть оперативка / не сработал таймер все в памяти, кончилась - пишем на диск

Dennis
20.04.2017
20:22:51

Google

Pavel
20.04.2017
20:23:34
это еще один формат схемы, вот в чем еще проблема
я бы с радостью работал в формате CH с обоими стораджами

Dennis
20.04.2017
20:24:05
Это верно
Лучше единый sql поверх обоих хранилищ

Pavel
20.04.2017
20:24:35
именно так
сейчас с одним я говорю на capnp, с другим на CH SQL ;)

Dennis
20.04.2017
20:25:12
А если ещё сделать автоинтеграцию с QlikView, то все интерпрайзы кипятком бы писали от этого

Roman
20.04.2017
20:26:07

Alexander
20.04.2017
20:26:28

Roman
20.04.2017
20:26:43
У QlickView свой формат данных на диске и свой инмемори движок, там некуда внешнее хранилище вкорячивать.

Dennis
20.04.2017
20:27:50

Roman
20.04.2017
20:29:24
На самом деле поставить Tarantool буфером перед КХ очень здравая идея, так можно и row-based security добавить и всякие enterprise-аутентификации.

Dennis
20.04.2017
20:30:08
Но по нему не будет sql

Roman
20.04.2017
20:31:25

Vasiliy
20.04.2017
20:32:20
всем привет

Dennis
20.04.2017
20:33:05

Alexander
20.04.2017
20:33:31

Roman
20.04.2017
20:34:28