• 01 April 2018 (80 messages)
  • https://t.me/clickhouse_ru
    @eigrad #47834 02:47 AM, 01 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @kshvakov #47835 06:11 AM, 01 Apr 2018
    У меня тут появился некоторый интерес по запуску ClickHouse в контейнерах и интересно было бы почитать о каких-нибудь success stories по этому поводу. Интересны, в первую очередь: rkt, porto, lxc ну и о docker тоже можно. По porto, по понятным причинам - это всё к Яндекс, кое что есть тут https://www.youtube.com/watch?v=2QJgCTF1cIE , но может где-то что-то есть ещё?
  • https://t.me/clickhouse_ru
    @stufently #47836 06:24 AM, 01 Apr 2018
    Ну все таки это про докер, и пока тут какие то печальные истории с оф образом кх в докерхабе, яндексоиды обещали делать сборки не на стороне докерхаба а у себя и должно стать все лучше
  • https://t.me/clickhouse_ru
    @stufently #47837 06:24 AM, 01 Apr 2018
    Я бы сказать честно лучше бы сам эти образы собирал в данном случае
  • https://t.me/clickhouse_ru
    @stufently #47838 06:25 AM, 01 Apr 2018
    В lxc ещё у меня крутиться тестовый кх, вроде никаких проблем не наблюдаю
  • https://t.me/clickhouse_ru
    запускать для production или для разработки?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #47839 #47840 07:27 AM, 01 Apr 2018
    Для создания нового продукта, что-то вроде cloud-native clickhouse ;)
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #47836 #47841 07:28 AM, 01 Apr 2018
    Образ я могу создать, интересны некие подводные камни, как падает, насколько часто и почему и т.д.
  • https://t.me/clickhouse_ru
    @stufently #47842 07:29 AM, 01 Apr 2018
    Да вроде не падает, каких то подводных камней вроде тоже не было
  • https://t.me/clickhouse_ru
    память в основном
    надо тюнить под "малый размер"
    меньше background операций
  • https://t.me/clickhouse_ru
    @BloodJazMan #47844 07:41 AM, 01 Apr 2018
    проблем с volumes я не заметил
    но у меня не продакшен
    у меня чисто тестовые среды
  • @Edggomes #47846 10:13 AM, 01 Apr 2018
    Добрый день! Может кто-нибудь знает в каком направлении копать / как решить проблему? Используется async python драйвер, запросы отправляются в 4 потока. Сначала все нормально, но потомк вылезает ошибка
    clickhouse_driver.errors.NetworkError: Code: 210. Device or resource busy (localhost:9000)
    Сервер GCP, свежий, установлены только clickhouse, pandas, + python драйвер для кх. Понимаю, что скорее всего не под адресу, но все может кто сталкивался.
  • @antonio_antuan #47848 10:32 AM, 01 Apr 2018
    А что за драйвер?
  • @Edggomes ↶ Reply to #47848 #47849 10:52 AM, 01 Apr 2018
    GitHub - mymarilyn/aioch: aioch - is a library for accessing a ClickHouse database over native interface from the asyncio

    aioch - is a library for accessing a ClickHouse database over native interface from the asyncio - GitHub - mymarilyn/aioch: aioch - is a library for accessing a ClickHouse database over native int...

  • @antonio_antuan #47850 10:53 AM, 01 Apr 2018
    Судя по всему, aioch. И судя по сорцам либы, должен использоваться executor, т.е. асинхронность не нативная, а реализована на отдельных процессах/тредах/etc. Что логически наводит на мысль о том, почему ошибка возникла. Вывод: не делать к кх из питона асинхронные запросы, по крайней мере с этой либой. Попробуйте какой-нибудь асинхронный одбц клиент (если для кх реализован одбц интерфейс, не в курсе, есть ли он)
  • @antonio_antuan #47851 10:54 AM, 01 Apr 2018
    Но с одбц может получиться та же петрушка, так что особо я бы на него не надеялся
  • @Edggomes #47852 10:57 AM, 01 Apr 2018
    ну вот проблема явно в этом, т.е. простой цикл с использованием обычной библиотеки все работает, а вот асинхронный скрипт - ломается (причем даже если выставляю ограничение в 1 поток)
  • @antonio_antuan #47853 10:58 AM, 01 Apr 2018
    А зачем вам асинхронность вообще с кх? Так много конкурентных запросов?
  • @antonio_antuan #47854 10:59 AM, 01 Apr 2018
    Ещё и с пандасом, так что могу предположить, что нужно просто разово (+/-) загрузить результаты запроса
  • @Edggomes #47855 11:09 AM, 01 Apr 2018
    да, необходимо делать перебор (~миллион комбинаций для arrayExists в where), в пандасе пробовал делать - слишком медленно, через БД быстрее, но хотелось бы еще быстрее, чтобы не сутки ждать пока все варианты не переберутся, а часа 4 хотя бы
  • https://t.me/clickhouse_ru
    @ChuPika #47856 11:09 AM, 01 Apr 2018
    Раз тут зашло за клиенты CH, то может быть кто0то знает в чём может быть дело. Линкуюсь статически и пытаюсь создать соединение в лоб. Но, когда уничтожаются объекты Connection, ConnectionTimeouts и закрывается логгер Poco, бросается SIGSEGV на мьютексе. Нельзя использовать коннектшены как это делаю я или как-то нужно инициализировать и разрушать Poco явно?
    https://pastebin.com/saHpsW25
  • Я бы залил все варианты как внешний словарь и одним запросом перебрал все комбинации на стороне бд
  • По крайней мере, попробовал бы:)
  • https://t.me/clickhouse_ru
    @ikozlov1 #47859 11:27 AM, 01 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @ikozlov1 #47860 11:36 AM, 01 Apr 2018
    Добрый день!
    На VPS на примонтированном диске случился зависон, в результате
    <Error> (Data): Considering to remove broken part /mnt/volume-fra1-01/clickhouse//data/mybase/postback/20180401_20180401_1463046_1463046_0 because it's impossible to repair.
    Файла по указанному пути не существует. Нагуглить пока ничего не удалось.
  • https://t.me/clickhouse_ru
    @ikozlov1 #47861 11:37 AM, 01 Apr 2018
    пока что перегружать сервис не пробовал, но как обнаружил проблему, попробовал его стопнуть - подвис. принял решение ребутнуть машину. Очень долго поднималась, но ура - поднялась.
    Реплики нет. Одна нода.
    Буду признателен за любую наводку.
  • https://t.me/clickhouse_ru
    @stufently #47862 11:38 AM, 01 Apr 2018
    овх сегодня ночью ? ну он потерял часть данных, ругнулся и пошел дальше работать, в чем собственно проблема ?
  • https://t.me/clickhouse_ru
    @ikozlov1 #47863 11:39 AM, 01 Apr 2018
    не поднимается сервис
  • https://t.me/clickhouse_ru
    @stufently #47864 11:39 AM, 01 Apr 2018
    а проверку диска делали после рестарта ?
  • https://t.me/clickhouse_ru
    @stufently #47865 11:40 AM, 01 Apr 2018
    что там вообще с файлухой в итоге ?
  • https://t.me/clickhouse_ru
    @ikozlov1 #47866 11:41 AM, 01 Apr 2018
    нет, пока не делал. посмотрю.
  • https://t.me/clickhouse_ru
    @stufently #47867 11:43 AM, 01 Apr 2018
    у меня что то подобное писал но там реплика есть у кх и вроде как само все просралось, так все таки это ночное падение овх во франции?
  • https://t.me/clickhouse_ru
    @ikozlov1 #47868 11:44 AM, 01 Apr 2018
    это digitalocean - во франкфурте.
  • https://t.me/clickhouse_ru
    @ikozlov1 #47869 11:44 AM, 01 Apr 2018
    FRA1 - у них диски полетели видимо
  • https://t.me/clickhouse_ru
    @stufently #47870 11:49 AM, 01 Apr 2018
    сегодня поднял там один сервер у до
  • https://t.me/clickhouse_ru
    @ikozlov1 #47871 12:00 PM, 01 Apr 2018
    стопаться упорно не хочет. Повис уже минут 5 как.
    /etc/init.d/clickhouse-server stop
    Stop clickhouse-server service:
  • https://t.me/clickhouse_ru
    @ivmaks ↶ Reply to #47871 #47872 12:19 PM, 01 Apr 2018
    Был ребут после последнего обновления? В какой то версии что-то меняли в инит скрипте
  • https://t.me/clickhouse_ru
    @ikozlov1 #47873 12:21 PM, 01 Apr 2018
    вообще, как не печально, это прод и апдейт давно не накатывался. В пн планировали садиться и делать реплики, но вот он - рок судьбы )
  • https://t.me/clickhouse_ru
    @ikozlov1 #47874 12:21 PM, 01 Apr 2018
    Кстати на ДО до сих пор
    1 hour ago
    Our engineering team continues to work on a fix for the issue with Block Storage in our FRA1 region. We appreciate your patience and will post an update as soon as additional information is available.
  • https://t.me/clickhouse_ru
    @ivmaks #47875 12:21 PM, 01 Apr 2018
    Но желательно взглянуть что там ио
  • https://t.me/clickhouse_ru
    @ivmaks #47876 12:21 PM, 01 Apr 2018
    iotop -oa
  • https://t.me/clickhouse_ru
    @ikozlov1 #47877 12:23 PM, 01 Apr 2018
    не знаю, что конкретно там смотреть, но клкхауза там нет, да и впринципе нагрузки нет. нули восновном. проскакивает только постгрес.
  • @Edggomes ↶ Reply to #47855 #47879 01:17 PM, 01 Apr 2018
    Переписал все на asyncio / aiohttp и http клиент, не помогло
  • @70532431 #47883 01:32 PM, 01 Apr 2018
    Администраторы чата, дабы содержать его в чистоте, рассмотрите возможность запуска сюда бота против спамеров - например вот
    https://tgcreator.ru/bot/cleanerchatbot
    Бот @cleanerchatbot - Chat Cleaner Bot

    Привет! Я могу: • Удалять сообщения содержащие ссылки (vk.com,telegram.me,https://t.me и прочие) • Удалять стикеры, документы, фото, видео, аудио, голосовые, пересланные из каналов сообщения • Удалять сообщения за флуд - по умолчанию 3 сообщения в секунду • Удалять команды для ботов и прочее... Попробуй меня!

  • @pookieShmukie #47884 04:48 PM, 01 Apr 2018
    Всем добрый вечер! Уважаемые знатоки, подскажите одну вещь?
    Есть кластер 4х2 (4 шарда, 2 реплики). Есть таблица ReplicatedMergeTree, поверх нее есть Distributed.
    Мне необходимо раз в сутки чистить данные в этой таблице, которые старше недели от текущего дня. Ключ партиционирования - колонка с типом Date. Я на сервере могу выполнить запрос на получение всех кусков таблицы, но вопрос в том, что я получаю локальные куски...если мне нужн подчистить данные на всем кластере, то это мне ходить потребуется по всему кластеру?
  • @pookieShmukie #47885 04:49 PM, 01 Apr 2018
    Что бы собрать информацию о чем чистить, т.к. partition в system.parts указывается как месяц, например 201802, а не как день...
  • https://t.me/clickhouse_ru
    @ikozlov1 #47886 04:50 PM, 01 Apr 2018
    а как чистить планировал? тоже есть подобная задача архивации
  • Через DROP PARTITION
  • https://t.me/clickhouse_ru
    @ikozlov1 #47888 04:50 PM, 01 Apr 2018
    я думал архивировать как то
  • @pookieShmukie #47889 04:50 PM, 01 Apr 2018
    Только вот не понятно одно - нужно ли по кластеру ползать и собирать партиции, которые можно шлепнуть? )
  • @pookieShmukie #47890 04:51 PM, 01 Apr 2018
    Ну можно сделать detach и архивировать
  • @pookieShmukie #47891 04:51 PM, 01 Apr 2018
    Нам архив не требуется, т.к. там логи обработки данные, которые актуальны максимум три дня
  • @pookieShmukie #47892 04:52 PM, 01 Apr 2018
    Похоже придется по всему кластеру ездить и собирать партиции :( Еще проблема с тем, что запрос на удаление партиции реплицируется и тут как бы не знаешь где реплика, где что :) Нужно писать определялку (
  • @pookieShmukie #47893 05:12 PM, 01 Apr 2018
    Блин, судя по названиям партиций, Clickhouse при указании колонки типа Date в качестве ключа партиционирования наваливает данные в партции по месяцам...
  • https://t.me/clickhouse_ru
    @stufently #47894 05:13 PM, 01 Apr 2018
    Верно, ну можно чистить просто реже
  • @201321484 #47896 05:16 PM, 01 Apr 2018
    Блин, судя по названиям партиций, Clickhouse при указании колонки типа Date в качестве ключа партиционирования наваливает данные в партции по месяцам...
  • @pookieShmukie #47897 05:17 PM, 01 Apr 2018
    Я уже нашел пример с данными за неделю. Можно использовать toStartOfDay()
  • Ура! Оно работает! :) Теперь гораздо проще партиции разбирать на запчасти!
  • https://t.me/clickhouse_ru
    @ikozlov1 #47899 06:10 PM, 01 Apr 2018
    👍
  • @artemyij #47900 07:14 PM, 01 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #47893 #47901 07:37 PM, 01 Apr 2018
    если вы использовали старый синтаксис для создания merge tree, то да, он использует столбец с датой, но партиции делает по toYYYYMM(_)
  • @pookieShmukie #47902 07:37 PM, 01 Apr 2018
    В том то и дело, что новый. Просто у меня там было Partition by (eventDate), где eventDate - колонка типа Date
  • @pookieShmukie #47903 07:38 PM, 01 Apr 2018
    Я, конечно могу ошибаться из-за первой версии таблицы, которую могли не обновить
  • @pookieShmukie #47904 07:38 PM, 01 Apr 2018
    Но факт в том, что show create table показал мне partition by и там был eventDate
  • @pookieShmukie #47905 07:38 PM, 01 Apr 2018
    И партиции по месяцам раскладывались
  • @milovidov_an #47906 07:39 PM, 01 Apr 2018
    Так не должно быть. Можете проверить на простом примере?
  • https://t.me/clickhouse_ru
    @orantius #47907 07:39 PM, 01 Apr 2018
    подозрительно.
  • Да
  • @pookieShmukie #47909 08:01 PM, 01 Apr 2018
    Сейчас займусь
  • @pookieShmukie #47910 08:05 PM, 01 Apr 2018
    Хм, все работает отлично. Скорее всего не обновили таблицу и я подумал, что с КХ что-то не так. Прошу прощения за диверсию :)
  • @milovidov_an #47911 08:06 PM, 01 Apr 2018
    Спасибо :)
  • https://t.me/clickhouse_ru
    а можно так партицирование на лету изменить ?
  • Лично я менял партиционирование переливкой данных
  • Нет.
  • А если у меня в ключе партиционирования кортеж, например, (eventType, eventDate), то при запросе select ... from table where eventType = 'some-type', поиск затронет только те партиции, которые относятся к этому eventType?
  • @milovidov_an #47916 08:15 PM, 01 Apr 2018
    Да.
  • Супер! Спасибо!
  • 02 April 2018 (131 messages)
  • https://t.me/clickhouse_ru
    @NickPtic #47919 08:12 AM, 02 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @webmaks #47920 08:16 AM, 02 Apr 2018
    Приветствую.

    Есть вопрос про бэкап/репликацию. В документации говорится, что для этого лучше всего делать репликацию на несколько серверов и если кто-то что-то удалил, то просто на одной из реплик нужно взять данные путем ATTACH PARTITION.

    Не совсем понятен принцип. То есть на одном сервере, который в кластере нам нужно скажем, каждый час по крону делать DETACH? Чтобы в случае чего восстановиться?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #47920 #47921 08:19 AM, 02 Apr 2018
    Если кто-то что-то удалил - это тоже реплицируется, например DROP PARTITION.
  • https://t.me/clickhouse_ru
    а если дроп тейбл делать то оно не реплицируется
  • https://t.me/clickhouse_ru
    @webmaks ↶ Reply to #47921 #47923 08:25 AM, 02 Apr 2018
    Да, я это понимаю, отсюда и вопросы у меня. Просто если мы будем DETACH/FREEZE делать, то оно будет выгружаться в detached/shadow каталоги и можем оттуда их достать путем ATTACH PARTITION.

    Вот хотелось бы понять это так как я описал или все-таки есть какой-то true-way способ, которым рекомендуют пользоваться. Как интересно в Яндексе это реализовано?!
  • https://t.me/clickhouse_ru
    @stufently #47924 08:25 AM, 02 Apr 2018
    ну а зачем удалять то ?
  • https://t.me/clickhouse_ru
    @stufently #47925 08:26 AM, 02 Apr 2018
    фриз делает в целом хардлинки и если удалить из кх то данные все равно по идее останутся
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #47923 #47926 08:31 AM, 02 Apr 2018
    DETACH отцепит кусок данных от таблицы и он не будет доступен, FREEZE сдалает хардлинк, т.е. и данные будут доступны и бэкап на том же сервере
  • https://t.me/clickhouse_ru
    @andrey_konyaev #47927 08:32 AM, 02 Apr 2018
    Всем привет
    Есть ли какой-то механизм для отправки метрик clickhouse в graphite или statsd ?
    Чтобы лучше понимать что происходит с кластером.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #47927 #47928 08:35 AM, 02 Apr 2018
    Документация ClickHouse | Документация ClickHouse

    ClickHouse is a fast open-source column-oriented database management system that allows generating analytical data reports in real-time using SQL queries

  • https://t.me/clickhouse_ru
    @andrey_konyaev #47929 08:50 AM, 02 Apr 2018
    Спасибо!
  • https://t.me/clickhouse_ru
    @NickPtic #47930 08:56 AM, 02 Apr 2018
    Товарищи, всем доброго. Вопрос возник, не кидайтесь в меня лучами добра, пожалуйста.
    archlinux x64, попытка установить из aur.
    Результат:
    Building CXX object dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/StorageSystemAsynchronousMetrics.cpp.o
    In file included from /tmp/yaourt-tmp-littlewolf/aur-clickhouse/src/ClickHouse-1.1.54362-stable/dbms/src/Storages/System/StorageSystemAsynchronousMetrics.cpp:5:0:
    /tmp/yaourt-tmp-littlewolf/aur-clickhouse/src/ClickHouse-1.1.54362-stable/dbms/src/Columns/ColumnString.h: В функции-члене «virtual DB::BlockInputStreams DB::StorageSystemAsynchronousMetrics::read(const Names&, const DB::SelectQueryInfo&, const DB::Context&, DB::QueryProcessingStage::Enum&, size_t, unsigned int)»:
    /tmp/yaourt-tmp-littlewolf/aur-clickhouse/src/ClickHouse-1.1.54362-stable/dbms/src/Columns/ColumnString.h:96:45: ошибка: «*((void*)&<anonymous> +8)», возможно, используется без инициализации в данной функции [-Werror=maybe-uninitialized]
    const size_t size_to_append = s.size() + 1;
    ~~~~~~^~
    cc1plus: все предупреждения считаются ошибками
    make[3]: *** [dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/build.make:63: dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/StorageSystemAsynchronousMetrics.cpp.o] Ошибка 1
    make[2]: *** [CMakeFiles/Makefile2:4078: dbms/src/Storages/System/CMakeFiles/clickhouse_storages_system.dir/all] Ошибка 2
    make[1]: *** [CMakeFiles/Makefile2:5483: dbms/src/Server/CMakeFiles/clickhouse.dir/rule] Ошибка 2
    make: *** [Makefile:1252: clickhouse] Ошибка 2
    Уже пятый день бьюсь, не арбайтенит.
  • https://t.me/clickhouse_ru
    @stufently #47931 08:59 AM, 02 Apr 2018
    юзайте в докере его
  • https://t.me/clickhouse_ru
    @NickPtic #47932 09:01 AM, 02 Apr 2018
    А нативно никак?
  • https://t.me/clickhouse_ru
    @stufently #47933 09:03 AM, 02 Apr 2018
    Ну тут видимо надо заморочиться, уже сто лет сказать честно не компилил ничего. если чего то нет в репах то реально проще это в докере принести
  • https://t.me/clickhouse_ru
    @rheinx #47934 09:10 AM, 02 Apr 2018
    Всем привет.
    Скажите, какой тип атрибута словаря лучше использовать при загрузке поля из Postgres c типом bool?
  • https://t.me/clickhouse_ru
    @proller ↶ Reply to #47930 #47935 09:18 AM, 02 Apr 2018
    cmake -DNO_WERROR=1
  • https://t.me/clickhouse_ru
    вообще оказалось довольно легко он собирается, можно и через инструкцию по сборке и через cmake, и всяких примеров думаю уйма на гитхабе
  • https://t.me/clickhouse_ru
    @ChuPika ↶ Reply to #47930 #47937 09:21 AM, 02 Apr 2018
    yaourt -S clickhouse
  • https://t.me/clickhouse_ru
  • @358181242 #47939 09:24 AM, 02 Apr 2018
    Подскажите как удалить партиции за определенную дату со всех реплик
  • https://t.me/clickhouse_ru
    @Krashuevina #47940 09:29 AM, 02 Apr 2018
    alter table TABLE on cluster CLUSTER_NAME drop partition PARTITION
  • https://t.me/clickhouse_ru
    @Krashuevina #47941 09:29 AM, 02 Apr 2018
    должен быть включен distributed ddl
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #47939 #47942 09:30 AM, 02 Apr 2018
    DROP PARTITION реплицируется
  • @358181242 #47943 09:31 AM, 02 Apr 2018
    Ок. Спасибо
  • https://t.me/clickhouse_ru
    @michael_perlov #47944 09:31 AM, 02 Apr 2018
    alter table TABLE drop partition PARTITION должно быть достаточно
  • https://t.me/clickhouse_ru
    в пределах шарда же?
  • https://t.me/clickhouse_ru
    @michael_perlov #47946 09:32 AM, 02 Apr 2018
    Да
  • https://t.me/clickhouse_ru
    @michael_perlov #47947 09:33 AM, 02 Apr 2018
    Реплики тоже вроде как в пределах шарда )
  • https://t.me/clickhouse_ru
    @rheinx ↶ Reply to #47938 #47948 09:33 AM, 02 Apr 2018
    чет ссылка ведет просто на доку. Можешь поточнее скинуть?)
  • https://t.me/clickhouse_ru
    @rheinx #47949 09:34 AM, 02 Apr 2018
    а все, нашлось. Спасибо
  • https://t.me/clickhouse_ru
    @NickPtic ↶ Reply to #47937 #47950 09:36 AM, 02 Apr 2018
    Он эту ошибку и выдаёт.
  • https://t.me/clickhouse_ru
    @Sablast ↶ Reply to #47949 #47951 09:36 AM, 02 Apr 2018
    пожалуйста)
  • @whetherharder #47952 09:52 AM, 02 Apr 2018
    Подскажите пожалуйста, решал ли кто-нибудь задачу поставить CH без рута ?
  • @DrDareka #47953 10:15 AM, 02 Apr 2018
    А можете пояснить по FREEZE? Попробовал на большой активной таблице (постоянно идет запись) - исходник около 25000 файлов, в архвие 50. По размеру как будто тоже раза в 2 меньше. Он мержит перед архивацией? Или что-то игнорирует? Или у меня запрос еще не закончился? Я подождал минут пять, ничего не меняется.
  • https://t.me/clickhouse_ru
    @NickPtic ↶ Reply to #47935 #47954 11:08 AM, 02 Apr 2018
    Низкий тебе поклон! Спасибо огромное!
  • @vstakhov #47955 11:10 AM, 02 Apr 2018
    @proller а я давно говорил, что от -Werror одно зло
  • @ztlpn ↶ Reply to #47953 #47956 11:13 AM, 02 Apr 2018
    FREEZE бэкапит только активные куски, а в директории таблицы лежат ещё и старые (которые были помержены). Старые удаляются через 8 минут.
  • @DrDareka ↶ Reply to #47956 #47957 11:13 AM, 02 Apr 2018
    понял, спасибо
  • @597512388 #47958 11:28 AM, 02 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @Synoecium #47959 11:56 AM, 02 Apr 2018
    подскажите, плиз, ошибка точь-в-точь как в ишью, куда копнуть чтобы долго и мучительно не выяснять в чем проблема? https://github.com/yandex/ClickHouse/issues/1617
    Crash on SHOW TABLES request #1617

    Version: 54318 Got exception on simple SHOW TABLES request: # clickhouse-client ClickHouse client version 1.1.54318. Connecting to localhost:9000. Connected to ClickHouse server version 1.1.54318. ...

  • https://t.me/clickhouse_ru
    @easya #47960 11:57 AM, 02 Apr 2018
    Приветы. А знает ли кто-нибудь как натравить ALTER TABLE [db.]table DETACH PARTITION на список партиций одной командой в консоли? Допустим, я получил список партиций селектом из system.parts и хочу сделать им всем detach. Спасибо.
  • https://t.me/clickhouse_ru
    @stufently #47961 11:58 AM, 02 Apr 2018
    ну мне кажется тут проще копированием схемы и дроп тейбл делать
  • https://t.me/clickhouse_ru
    @stufently #47962 11:58 AM, 02 Apr 2018
    А или вы не все партиции хотите в таблице удалить ?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #47960 #47963 11:58 AM, 02 Apr 2018
    ClickHouse-Ninja/clickhouse-partition-cleaner

    ClickHouse partition cleaner. Contribute to ClickHouse-Ninja/clickhouse-partition-cleaner development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    @easya #47964 11:58 AM, 02 Apr 2018
    нет, не все. Задача - отцепить старые и ненужные, унести их куда-то в сторонку.
  • https://t.me/clickhouse_ru
    @easya #47965 11:59 AM, 02 Apr 2018
    ну, цикл-то на bash'e я могу написать без проблем. Вопрос в том, можно ли это сделать красиво
  • https://t.me/clickhouse_ru
    @easya #47966 12:00 PM, 02 Apr 2018
    Почитав документацию, встроенных итераторов я не нашел
  • https://t.me/clickhouse_ru
    @easya ↶ Reply to #47963 #47967 12:01 PM, 02 Apr 2018
    А скрипт клевый, спасибо. Положу в копилку :)
  • https://t.me/clickhouse_ru
    пока никак.
  • https://t.me/clickhouse_ru
    @easya ↶ Reply to #47968 #47969 12:42 PM, 02 Apr 2018
    Спасибо, буду использовать итератор снаружи
  • https://t.me/clickhouse_ru
    @Connoreika #47970 12:48 PM, 02 Apr 2018
    Joined.
  • Вчера нечто подобное писал для проекта...чистит партиции старше определенного возраста
  • https://t.me/clickhouse_ru
    @easya #47972 01:15 PM, 02 Apr 2018
    Видимо, задача выносить старье из ch появилась не только у меня
  • https://t.me/clickhouse_ru
    Ну просто они известно как называются
  • https://t.me/clickhouse_ru
    @molo4ko007 #47974 01:28 PM, 02 Apr 2018
    если я хочу изменить индекс в таблице t0, можно сделать как-то проще, чем

    // есть таблица
    t0(d Date, x Int8, y Int8) engine = MergeTree(d, (x, y), 8192)
    // хочу индекс (y, x)
    create table t1 engine = MergeTree(d, (y, x), 8192) as select * from t0
    drop table t0
    // хочу индекс (x, y)
    create table t0 engine = MergeTree(d, (x, y), 8192) as select * from t1
    drop table t1

    ?
  • https://t.me/clickhouse_ru
    @molo4ko007 #47975 01:29 PM, 02 Apr 2018
    На самом деле эта таблица еще и распределенная/шардированная по 3 нодам, хочется как-то минимальными усилиями это сделать
  • https://t.me/clickhouse_ru
    Господа, а можно ли поменять PARTITION BY для таблицы? Меня устроит, что предыдущие части будут лежать как лежали, всё равно в конце-концов таки удалятся. Вот будущие бы...
  • @kochetovnicolai #47977 01:36 PM, 02 Apr 2018
    сейчас нельзя. вариант с сохранением старых данных со старым ключом партиционирования, скорее всего, будет сложно сделать
  • проще не получится. нужно пересортировывать данные с новым ключом, это все равно полный проход по ним
  • https://t.me/clickhouse_ru
    @molo4ko007 #47979 01:38 PM, 02 Apr 2018
    Да, это понятно, я рассчитывал на какой-то шорткат
  • https://t.me/clickhouse_ru
    @molo4ko007 #47980 01:38 PM, 02 Apr 2018
    Спасибо
  • а есть какой-то способ преобразовать старые данные? или только INSERT INTO ... FROM SELECT?
  • @kochetovnicolai #47982 01:47 PM, 02 Apr 2018
    сейчас только insert select
  • https://t.me/clickhouse_ru
    @Vasyaabr #47983 01:57 PM, 02 Apr 2018
    А есть смысл делать MATERIALIZED VIEW с движком Replicated...? Он ведь, как я понимаю, тоже может иначе со временем стать различным?
  • https://t.me/clickhouse_ru
    @Vasyaabr #47984 01:59 PM, 02 Apr 2018
    Просто на репликах уже есть Replicated таблицы, хватит того, что данные на них реплицируются, или вьюшку лучше тоже реплицировать? И как тогда всё это будет работать: не задвоятся ли данные на VIEW, если сначала попадут туда с реплицируемой таблицы, а потом при репликации самого VIEW? ...
  • @AlexanderMillin #47985 02:01 PM, 02 Apr 2018
    materilized view не будет наполняться на реплике
  • @kochetovnicolai #47986 02:02 PM, 02 Apr 2018
    боюсь ошибиться, но кажется, что при фетче кусков вставка в VIEW не происходит. если так, то придется делать Replicated
  • https://t.me/clickhouse_ru
    @Vasyaabr #47987 02:02 PM, 02 Apr 2018
    Ага, спасибо. Значит надо.
  • https://t.me/clickhouse_ru
    @149051052 #47988 02:07 PM, 02 Apr 2018
    Добрый день!
    В CH есть функция подобная rank() (нумерация строк)?
  • https://t.me/clickhouse_ru
    @149051052 #47989 02:09 PM, 02 Apr 2018
    >rowNumberInAllBlocks()
    - вероятно это
  • https://t.me/clickhouse_ru
    @molo4ko007 #47990 02:44 PM, 02 Apr 2018
    Как-то можно отдебажить причину вылета клиента? Коннекчусь через докер (```clickhouse-client —host $REMOTE_CH_HOST```), запускаю запрос и он (клиент) через пару секунд отваливается молча
  • https://t.me/clickhouse_ru
    @molo4ko007 #47991 02:45 PM, 02 Apr 2018
    на сервере

    2018.04.02 14:38:52.824757 [ 264 ] <Error> executeQuery: Code: 32, e.displayText() = DB::Exception: Attempt to read after eof, e.what() = DB::Exception (from 10.8.0.174:57874) (in query: CREATE TABLE shard_0.foo_2 ENGINE = ReplicatedMergeTree('/clickhouse/tables/0/foo_2’, 'node0', day, (x, y), 8192) as select * from shard_0.foo), Stack trace:

    0. /usr/bin/clickhouse-server(StackTrace::StackTrace()+0x15) [0x82e3db5]
    1. /usr/bin/clickhouse-server(DB::Exception::Exception(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)+0x21) [0x2cc1371]
    2. /usr/bin/clickhouse-server(DB::throwReadAfterEOF()+0x4c) [0x2cc13dc]
    3. /usr/bin/clickhouse-server(DB::readVarUInt(unsigned long&, DB::ReadBuffer&)+0x1f9) [0x2cd2de9]
    4. /usr/bin/clickhouse-server(DB::TCPHandler::isQueryCancelled()+0x149) [0x2ccd139]
    5. /usr/bin/clickhouse-server(DB::TCPHandler::processOrdinaryQuery()+0x2fe) [0x2ccddae]
    6. /usr/bin/clickhouse-server(DB::TCPHandler::runImpl()+0x547) [0x2cd12e7]
    7. /usr/bin/clickhouse-server(DB::TCPHandler::run()+0x2a) [0x2cd1f2a]
    8. /usr/bin/clickhouse-server(Poco::Net::TCPServerConnection::start()+0xe) [0x85caf8e]
    9. /usr/bin/clickhouse-server(Poco::Net::TCPServerDispatcher::run()+0x169) [0x85cb369]
    10. /usr/bin/clickhouse-server(Poco::PooledThread::run()+0x76) [0x8be1c86]
    11. /usr/bin/clickhouse-server(Poco::ThreadImpl::runnableEntry(void*)+0x37) [0x8bdde97]
    12. /usr/bin/clickhouse-server() [0x8d9675e]
    13. /lib/x86_64-linux-gnu/libpthread.so.0(+0x76b9) [0x7f2d0d4926b9]
    14. /lib/x86_64-linux-gnu/libc.so.6(clone+0x6c) [0x7f2d0cebf41c]

    2018.04.02 14:38:52.851555 [ 264 ] <Warning> TCPHandler: Client has gone away.
  • ок, спасибо
  • https://t.me/clickhouse_ru
    @molo4ko007 #47993 02:49 PM, 02 Apr 2018
    Что странно - count() по таблице назначения растет, т.е. вроде как все в порядке
  • https://t.me/clickhouse_ru
    @ntukkel #47994 02:59 PM, 02 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @md_uliy #47995 03:01 PM, 02 Apr 2018
    Joined.
  • @ant_cc #47996 03:03 PM, 02 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @archimed_shaman #47998 03:41 PM, 02 Apr 2018
    привет, а как жить, если при вставке в distributed получаю такой вот отлуп?
    Block structure mismatch in RemoteBlockOutputStream stream: different number of columns
    При этом та же вставка в локальную таблицу - все ок.
    Distributed создается так: CREATE TABLE reports_1.events_all AS reports_1.events ....
    Полагаю, что дело в полях, которые имеют default значение и не заполняются явно при вставке
  • @kochetovnicolai #47999 03:43 PM, 02 Apr 2018
    в таблице случайно нет alias столбцов?
  • https://t.me/clickhouse_ru
    @archimed_shaman #48000 03:45 PM, 02 Apr 2018
    alias - нет
  • https://t.me/clickhouse_ru
    @archimed_shaman #48001 03:46 PM, 02 Apr 2018
    есть такие вот, и на них судя по всему, ругань и идет
    ssid │ UInt64 │ DEFAULT │ cityHash64(session_id)
    в них даныне не вставляются из TabSeparated явно, но эти дефолты прописаны и в локальной, и в дистрибутед таблице
  • https://t.me/clickhouse_ru
    @archimed_shaman #48002 03:47 PM, 02 Apr 2018
    причем, такое ощущение, что работать перестало после обновления до последней версии
  • https://t.me/clickhouse_ru
    Релиз ClickHouse 1.1.54362, 2018-03-11......
    "Удалена настройка strict_insert_defaults. Если вы использовали эту функциональность, напишите на clickhouse-feedback@yandex-team.com."

    https://github.com/yandex/ClickHouse/search?utf8=%E2%9C%93&q=strict_insert_defaults&type=
    Если [strict_insert_defaults=1](../operations/settings/settings.md#settings-strict_insert_defaults), то столбцы, для которых не определены DEFAULT, необходимо перечислить в запросе.
    ....
    yandex/ClickHouse

    ClickHouse is a free analytic DBMS for big data. Contribute to yandex/ClickHouse development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    все без DEFAULT перечислены
  • https://t.me/clickhouse_ru
    @archimed_shaman #48005 04:43 PM, 02 Apr 2018
    в общем, когда и в distributed, и в локальных таблицах есть одни и те же дефолты, и когда их не указываешь при инсерте - ругань. если из дистрибутед убрать неуказываемые столбцы, то все работает
  • https://t.me/clickhouse_ru
    @nicname #48006 05:12 PM, 02 Apr 2018
    а кроме цепочки селектов есть возможность дубли по некоторым колонкам отфильтровать или, другими словами, делать выборки только по уникальным строкам?

    пример, есть сырые данные с дублями
    IP | UA |
    127.0.0.1 | 123 |
    127.0.0.1 | 123 |
    127.0.0.1 | 123 |
    127.0.0.2 | 234 |
    127.0.0.2 | 234 |
    127.0.0.2 | 345 |
    127.0.0.2 | 345 |

    надо выбирать из сгруппированных по ip+ua, в данном случае из такой таблицы
    127.0.0.1 | 123 |
    127.0.0.2 | 234 |
    127.0.0.2 | 345 |

    в чем разница: в первом случае COUNT(*) .... GROUP BY IP будет
    3
    4

    а во втором
    1
    2
  • https://t.me/clickhouse_ru
    @stufently #48007 05:14 PM, 02 Apr 2018
    Не знаю как в кх но в SQL можно группировать по двум полям в гроупбай
  • https://t.me/clickhouse_ru
    @nicname #48008 05:17 PM, 02 Apr 2018
    это вроде бы немного другой случай, если сделать GROUP BY IP, UA по первой таблице то все равно будет не 1,2, а 3,2,2
    то есть мне надо по одному результату от каждой "уникальной" строки получить, и с этим уже работать
  • https://t.me/clickhouse_ru
    @stufently #48009 05:19 PM, 02 Apr 2018
    Не очень понял почему у вас должно получиться 1, 2
  • https://t.me/clickhouse_ru
    @mrlamberg #48010 05:19 PM, 02 Apr 2018
    select max(ua) from table group by ip
  • https://t.me/clickhouse_ru
    @mrlamberg #48011 05:19 PM, 02 Apr 2018
    или наоборот min
  • @antonio_antuan #48012 05:19 PM, 02 Apr 2018
    "посчитай мне количество строк, относящихся к группе 127.0.0.1-123"
    "посчитай мне количество строк, относящихся к группе 127.0.0.2-234"
    "посчитай мне количество строк, относящихся к группе 127.0.0.2-345"
  • https://t.me/clickhouse_ru
    @mrlamberg #48013 05:19 PM, 02 Apr 2018
    и это в подзапрос
  • @antonio_antuan #48014 05:19 PM, 02 Apr 2018
    вот и получается 3, 2, 2
  • https://t.me/clickhouse_ru
    @nicname ↶ Reply to #48009 #48015 05:23 PM, 02 Apr 2018
    потому что там по сути SELECT из SELECT'a, я там выше пример привел в чем разница
  • https://t.me/clickhouse_ru
    @nicname ↶ Reply to #48010 #48016 05:24 PM, 02 Apr 2018
    вот похоже на то что нужно, но думал есть вариант без подзапроса обойтись, хотя это вроде достаточно элегантно тоже
  • https://t.me/clickhouse_ru
    @mrlamberg #48017 05:26 PM, 02 Apr 2018
    select ip,ua, count(*) from table group by ip,ua чем не подходит?
  • https://t.me/clickhouse_ru
    @mrlamberg #48018 05:26 PM, 02 Apr 2018
    в случае он 3 2 2 и вернет
  • https://t.me/clickhouse_ru
    @mrlamberg #48019 05:26 PM, 02 Apr 2018
    во втором 1 1 1
  • https://t.me/clickhouse_ru
    @mrlamberg #48020 05:27 PM, 02 Apr 2018
    почему там 1,2 то должно быть?
  • https://t.me/clickhouse_ru
    @nicname #48021 05:28 PM, 02 Apr 2018
    потому что там SELECT COUNT(*) ... GROUP BY IP
    без UA
  • https://t.me/clickhouse_ru
    @mrlamberg #48022 05:28 PM, 02 Apr 2018
    а нужно то сколько получить?
  • https://t.me/clickhouse_ru
    @mrlamberg #48023 05:28 PM, 02 Apr 2018
    1,2 ?
  • https://t.me/clickhouse_ru
    @mrlamberg #48024 05:29 PM, 02 Apr 2018
    я всеравно ничего не понял)
  • https://t.me/clickhouse_ru
    @nicname #48025 05:29 PM, 02 Apr 2018
    ага, то есть мне нужно сначала выбрать уникальные по некоторым колонкам, например IP+UA, а потом уже с этой выборкой работать :)
    двойным селектом то можно это все сделать, но думал есть способы отфильтровать сразу дубли
  • https://t.me/clickhouse_ru
    @mrlamberg #48026 05:30 PM, 02 Apr 2018
    я не понял смысла
  • https://t.me/clickhouse_ru
    @mrlamberg #48027 05:30 PM, 02 Apr 2018
    почему нельзя добавить в group by ua
  • https://t.me/clickhouse_ru
    @nicname #48028 05:34 PM, 02 Apr 2018
    ну это пример синтетический, у меня таблица на сотню колонок в реальности.
    потому что, если, выражаясь в терминах веб-сессий, у меня записано много хитов, а потом надо посчитать количество уникальных пользователей с IE, например, то группируя по IP, UA я все равно получу их хиты.
    поэтому мне надо сначала свернуть их до уникальных пользователей, а их уже считать.
  • https://t.me/clickhouse_ru
    @tommi_v #48029 05:37 PM, 02 Apr 2018
    можно сделать группировку по конкатенации двух полей, не?
  • https://t.me/clickhouse_ru
    @tommi_v #48030 05:37 PM, 02 Apr 2018
    что-то вроде select max(ip), max(ua), count(*) from table group by ip || ua;
  • https://t.me/clickhouse_ru
    @nicname #48031 05:41 PM, 02 Apr 2018
    сейчас попробую, спасибо
  • https://t.me/clickhouse_ru
    @sergebezborodov #48032 05:44 PM, 02 Apr 2018
    Друзья, всем привет

    есть простая таблица вида
    url_hash | value_type | value

    делаю преобразование в столбцы по value_type вида
    SELECT url_hash,
    sumIf(value, value_type = 1) AS count_value_type_1,
    sumIf(value, value_type = 2) AS count_value_type_2,
    sumIf(value, value_type = 3) AS count_value_type_n
    from data_raw
    group by url_hash

    подскажите, как подобное провернуть, когда value - это массив?
  • @milovidov_an #48033 05:52 PM, 02 Apr 2018
    sumIf поменять на sumArrayIf
  • https://t.me/clickhouse_ru
    @nicname ↶ Reply to #48006 #48034 05:56 PM, 02 Apr 2018
    я наверное не очень внятно сформулировал, поэтому и непонятно всем.

    по сути, вопрос к первой таблице такой:
    сколько уникальных пользователей пришло с каждого из айпи?
    ответ будет именно 1 и 2.
    вот можно ли это посчитать одним селектом?
  • https://t.me/clickhouse_ru
    спасибо! в моем случае значения по value_type уникальны, заменил на anyIf
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #48034 #48036 05:59 PM, 02 Apr 2018
    select uniq(user) group by ip?
  • https://t.me/clickhouse_ru
    SELECT IP, uniq(UA) FROM table GROUP BY IP
  • https://t.me/clickhouse_ru
    @den_crane #48038 06:03 PM, 02 Apr 2018
    Есть идеи как поискать утечки памяти в СH ?

    Два тестовых сервера (1.1.54343) один clickhouse-server --daemon сожрал 60 ГБ, его реплика 30ГБ

    1. VIRT 66GB RES 35GB
    (сюда идет бесконечная загрузка create TinyLog , insert into TinyLog from TSV, insert into *MergeTree select from TinyLog, drop TinyLog, таблиц много (соответственно заливающих запросов тоже много), данных ТБ-ы)

    2. VIRT 30GB RES 12GB
    (реплика первого).

    mem type: 1 / 2
    Dictionaries: memory taken: 6.15 GB / 6.15 GB
    PK allocated memory: 2.26 GB / 2.07 GB
    PK in memory : 1.35 GB / 1.35 GB

    на графике 1-го (VIRT) есть ступеньки вверх +~10GB
  • @kochetovnicolai #48039 06:18 PM, 02 Apr 2018
    можно посмотреть на значения метрик generic.current_allocated_bytes и generic.heap_size из system.asynchronous_metrics. heap_size должен быть близок к размеру потребляемой памяти. если current_allocated_bytes небольшой, то память просто занимается кучей для экономии
  • @kochetovnicolai #48040 06:20 PM, 02 Apr 2018
    еще можно посмотреть на memory_usage таблице system.query_log. возможно, что память занимают выполняющиеся запросы
  • https://t.me/clickhouse_ru
    1. VIRT 66GB RES 35GB

    select metric, formatReadableSize(value) from system.asynchronous_metrics where metric like ('%generic.%')
    generic.heap_size 51.97 GiB
    generic.current_allocated_bytes 28.74 GiB

    2. VIRT 30GB RES 12GB
    generic.heap_size 18.80 GiB
    generic.current_allocated_bytes 9.44 GiB

    т.е. утечки нет?
  • @kochetovnicolai #48042 06:38 PM, 02 Apr 2018
    Похоже, что все нормально.
  • @kochetovnicolai #48043 06:39 PM, 02 Apr 2018
    то есть мы не получили подтвержения, что утечка есть :)
  • https://t.me/clickhouse_ru
    ОК, понял, спасибо.
  • https://t.me/clickhouse_ru
    @vladimirmyuge #48045 07:50 PM, 02 Apr 2018
    Кажется мне нужно лямбда выражение, а не очень понимаю как это работает. Мне нужно подсчитать количество элементов массива, удовлетворяющих определенной регулярке, может быть есть какой-то мануал, который по полочкам у меня в голове всё расставит?
  • @milovidov_an #48046 07:50 PM, 02 Apr 2018
    Опубликована презентация с Субботника по базам данных: https://clickhouse.yandex/presentations/database_saturday_2018/
  • arrayCount(x -> match(x, 'regexp'), arr)
  • https://t.me/clickhouse_ru
    Спасибо большое, то что нужно!
    Если вдруг попадётся на глаза удобное руководство про лямбда функции для чайников - тоже буду благодарен :)
  • https://t.me/clickhouse_ru
    @windoozatnick #48049 07:54 PM, 02 Apr 2018
    есть еще arrayExists , если подойдет булевый результат. вроде как работает шустрее
  • https://t.me/clickhouse_ru
    Да, спасибо! Кстати именно arrayExists используется Метрикой для формирования отчётов с фильтрами)
  • 03 April 2018 (182 messages)
  • @127688820 #48051 05:01 AM, 03 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @149051052 #48052 05:44 AM, 03 Apr 2018
    Добрый день
  • https://t.me/clickhouse_ru
    @149051052 #48053 05:45 AM, 03 Apr 2018
    Будет ли резервныый канал на случай, если телеграм закроют?
  • https://t.me/clickhouse_ru
    @ikozlov1 ↶ Reply to #48053 #48054 05:45 AM, 03 Apr 2018
    Так а прокси?
  • https://t.me/clickhouse_ru
    @149051052 #48055 05:46 AM, 03 Apr 2018
    За исключением прокси, VPN и т.п.
  • https://t.me/clickhouse_ru
    @mrlamberg #48056 05:46 AM, 03 Apr 2018
    группа в гугле есть)
  • https://t.me/clickhouse_ru
    покопавшись в логах, выяснил что проблема в "Received signal Illegal instruction (4)." при определенных операциях на клиенте и после этого сервер падает. Ну а потом по истории этой группы выяснил, что для использования активной сборки нужно расширение SSE4.2, а на серваке сейчас стоит старенький Intel Xeon E5450. Написал для тех, у кого подобная проблема возникнет.
  • https://t.me/clickhouse_ru
    @decaseal #48058 07:52 AM, 03 Apr 2018
    Joined.
  • @76915579 #48059 08:05 AM, 03 Apr 2018
    Добрый день!
    Наткнулся на странное поведение. Есть таблица на 16 миллонов строк. Делаю запрос
    SELECT count(), uniq(tr_viol_id) FROM default.simple_tmp
    получаю результат 16299674 и 16285919
    Делаю второй запрос
    SELECT tr_viol_id FROM default.simple_tmp group by tr_viol_id having count() > 1
    получаю пустой результат. Поле не ключевое. Как такое может быть?
  • @76915579 #48060 08:05 AM, 03 Apr 2018
    P.S. Запрос
    select count() from (
    SELECT tr_viol_id FROM default.simple_tmp group by tr_viol_id)
    дает 16299674
  • @pookieShmukie #48061 08:06 AM, 03 Apr 2018
    А кто-то может подсказать как для ReplicatedReplacingMergeTree использовать новый синтаксис с партиционированием? Там просто есть колонка version
  • https://t.me/clickhouse_ru
    @Shegloff #48062 08:06 AM, 03 Apr 2018
    ну значит они всем там у вас разные не больше 1 по кол-ву, uniq считает приближенно
  • https://t.me/clickhouse_ru
    @Shegloff #48063 08:07 AM, 03 Apr 2018
    uniqExact точно считает
  • @76915579 #48064 08:08 AM, 03 Apr 2018
    Спасибо
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #48061 #48065 08:09 AM, 03 Apr 2018
    да также, например:
    CREATE TABLE ...
    (
    ...
    )
    ENGINE = ReplicatedReplacingMergeTree('/clickhouse/tables/{shard}/table_local', '{replica}')
    PARTITION BY day
    ORDER BY (show_id, campaign_id, flight_id, creative_id, day)
    SETTINGS index_granularity = 8192
  • А как version указать?
  • https://t.me/clickhouse_ru
    @Shegloff #48067 08:11 AM, 03 Apr 2018
    сорян, про версию пропустил как-то
  • @pookieShmukie #48068 08:11 AM, 03 Apr 2018
    Вижу, доку, там пишут, что вроде просто version передают после номера реплики
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48066 #48069 08:11 AM, 03 Apr 2018
    ReplicatedReplacingMergeTree('/clickhouse/tables/{shard}/table_local', '{replica}', ver)
  • @pookieShmukie #48070 08:11 AM, 03 Apr 2018
    Спасибо!
  • https://t.me/clickhouse_ru
    @araksin #48071 08:35 AM, 03 Apr 2018
    Joined.
  • @343647023 #48072 08:36 AM, 03 Apr 2018
    Всем привет!
    Хочу обновить КХ. Возникает такая проблема
    alexm93@alexm93-VirtualBox:~/chtest$ sudo apt-get update
    Ign:1 http://repo.yandex.ru/clickhouse/xenial stable InRelease
    Hit:2 http://ru.archive.ubuntu.com/ubuntu xenial InRelease
    Ign:3 http://repo.yandex.ru/clickhouse/deb/stable main/ InRelease
    Hit:4 http://ru.archive.ubuntu.com/ubuntu xenial-updates InRelease
    Hit:5 http://ru.archive.ubuntu.com/ubuntu xenial-backports InRelease
    Ign:6 http://repo.yandex.ru/clickhouse/xenial stable Release
    Hit:7 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial InRelease
    Hit:8 http://repo.yandex.ru/clickhouse/deb/stable main/ Release
    Ign:9 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 Packages.diff/Index
    Ign:10 http://repo.yandex.ru/clickhouse/xenial stable/main i386 Packages.diff/Index
    Ign:11 http://repo.yandex.ru/clickhouse/xenial stable/main all Packages
    Ign:12 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en_US
    Ign:13 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en
    Hit:14 http://security.ubuntu.com/ubuntu xenial-security InRelease
    Ign:15 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 DEP-11 Metadata
    Ign:16 http://repo.yandex.ru/clickhouse/xenial stable/main DEP-11 64x64 Icons
    Ign:17 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 Packages
    Ign:18 http://repo.yandex.ru/clickhouse/xenial stable/main i386 Packages
    Ign:11 http://repo.yandex.ru/clickhouse/xenial stable/main all Packages
    Ign:19 https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 InRelease
    Ign:12 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en_US
    Ign:13 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en
    Hit:20 https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 Release
    Ign:15 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 DEP-11 Metadata
    Ign:16 http://repo.yandex.ru/clickhouse/xenial stable/main DEP-11 64x64 Icons
    Ign:17 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 Packages
    Ign:18 http://repo.yandex.ru/clickhouse/xenial stable/main i386 Packages
    Ign:11 http://repo.yandex.ru/clickhouse/xenial stable/main all Packages
    Ign:12 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en_US
    Ign:13 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en
    Ign:15 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 DEP-11 Metadata
    Ign:16 http://repo.yandex.ru/clickhouse/xenial stable/main DEP-11 64x64 Icons
    Ign:17 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 Packages
    Ign:18 http://repo.yandex.ru/clickhouse/xenial stable/main i386 Packages
    Ign:11 http://repo.yandex.ru/clickhouse/xenial stable/main all Packages
    Ign:12 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en_US
    Ign:13 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en
    Ign:15 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 DEP-11 Metadata
    Ign:16 http://repo.yandex.ru/clickhouse/xenial stable/main DEP-11 64x64 Icons
    Ign:17 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 Packages
    Ign:18 http://repo.yandex.ru/clickhouse/xenial stable/main i386 Packages
    Ign:11 http://repo.yandex.ru/clickhouse/xenial stable/main all Packages
    Ign:12 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en_US
    Ign:13 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en
    Ign:15 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 DEP-11 Metadata
    Ign:16 http://repo.yandex.ru/clickhouse/xenial stable/main DEP-11 64x64 Icons
    Ign:17 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 Packages
  • @343647023 #48073 08:36 AM, 03 Apr 2018
    Ign:18 http://repo.yandex.ru/clickhouse/xenial stable/main i386 Packages
    Ign:11 http://repo.yandex.ru/clickhouse/xenial stable/main all Packages
    Ign:12 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en_US
    Ign:13 http://repo.yandex.ru/clickhouse/xenial stable/main Translation-en
    Ign:15 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 DEP-11 Metadata
    Ign:16 http://repo.yandex.ru/clickhouse/xenial stable/main DEP-11 64x64 Icons
    Err:17 http://repo.yandex.ru/clickhouse/xenial stable/main amd64 Packages
    404 Not Found [IP: 213.180.204.183 80]
    Ign:18 http://repo.yandex.ru/clickhouse/xenial stable/main i386 Packages
    Reading package lists... Done
    W: The repository 'http://repo.yandex.ru/clickhouse/xenial stable Release' does not have a Release file.
    N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
    N: See apt-secure(8) manpage for repository creation and user configuration details.
    E: Failed to fetch http://repo.yandex.ru/clickhouse/xenial/dists/stable/main/binary-amd64/Packages 404 Not Found [IP: 213.180.204.183 80]
    E: Some index files failed to download. They have been ignored, or old ones used instead.
  • https://t.me/clickhouse_ru
    @stufently #48074 08:36 AM, 03 Apr 2018
    Сто лет как сменился репо , смотрите закрепленный пост
  • @343647023 #48075 08:36 AM, 03 Apr 2018
    использую репозиторий из https://clickhouse.yandex/#quick-start
    ClickHouse DBMS

    ClickHouse is a fast open-source column-oriented database management system that allows generating analytical data reports in real-time using SQL queries

  • https://t.me/clickhouse_ru
    @stufently #48076 08:37 AM, 03 Apr 2018
    даже по ссылке которую вы дали уже измененный репо
  • @343647023 #48077 08:37 AM, 03 Apr 2018
    делаю как раз по этой интсрукции
    sudo apt-key adv —keyserver keyserver.ubuntu.com —recv E0C56BD4 # optional

    sudo apt-add-repository "deb http://repo.yandex.ru/clickhouse/deb/stable/ main/"
    sudo apt-get update

    sudo apt-get install -y clickhouse-server clickhouse-client

    sudo service clickhouse-server start
    clickhouse-client
  • https://t.me/clickhouse_ru
    @stufently #48078 08:38 AM, 03 Apr 2018
    Ну а кто старый то репо удалять будет )
  • https://t.me/clickhouse_ru
    @stufently #48079 08:38 AM, 03 Apr 2018
    Err:17 http://repo.yandex.ru/clickhouse/xenial stable/main amd64
  • https://t.me/clickhouse_ru
    @stufently #48080 08:38 AM, 03 Apr 2018
    этол откуда у вас ?
  • https://t.me/clickhouse_ru
    @k3ri0_0 #48081 08:53 AM, 03 Apr 2018
    Привет! Подскажите пожалуйста, кто-нибудь использует Clickhouse в воркбуках Tableau через web-интерфейс tableau?
  • @mrdro_mrdro #48082 09:21 AM, 03 Apr 2018
    Joined.
  • @mrdro_mrdro #48083 09:23 AM, 03 Apr 2018
    Всех приветствую.
    Вопрос: можно ли использовать КХ для полнотекстового поиска по комментариям и постам из вк????
  • https://t.me/clickhouse_ru
    @Sablast ↶ Reply to #48083 #48084 09:24 AM, 03 Apr 2018
    можно
  • https://t.me/clickhouse_ru
    @stufently #48085 09:24 AM, 03 Apr 2018
    не лучшая идея , все таки не тот юзкейс, вам в еластик сфинкс
  • @leonidvspb #48086 09:25 AM, 03 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @neiwick ↶ Reply to #48083 #48087 09:27 AM, 03 Apr 2018
    Конечно можно, и это даже будет работать. Но все таки кликхаус в меньшей степени про работу с текстовыми данными, и другие специализированные решения подойдут вам лучше. Расскажите про ваш кейс, объёмы и структуры данных, думаю вам помогут подобрать правильный инструмент.
  • @343647023 #48088 09:43 AM, 03 Apr 2018
    Возникла такая же ошибка при поиске по полю типа UUID в таблицах семейства MergeTree. При запросе вылехает ошибка DB::Exception: Bad type of Field.
    https://github.com/yandex/ClickHouse/issues/1770
    Если кто сталкивался, скажите как решали проблему?
    UUID field type #1770

    Looks like bug in new data type UUID. Used version 1.1.54327 I can create table with uuid field, insert data using simple string, representing uuid like '0c5049ab-a9fe-46c6-aee6-bcb5e414a19c' The problem in using UUID typed field in WHER...

  • Кейс: надо хранить для нескольких групп надо хранить все посты, все комменты, все лайки, всех подписчиков с инфой о них
  • @mrdro_mrdro #48090 10:21 AM, 03 Apr 2018
    Искать по постам, комментам, инфе в профиле по ключевым словам
  • https://t.me/clickhouse_ru
    @mrlamberg #48091 10:24 AM, 03 Apr 2018
    постгрес, разложить по вектору и повесить GIN индекс
  • https://t.me/clickhouse_ru
    @nicname #48092 10:27 AM, 03 Apr 2018
    тут еще надо уточнять – какой объем данных и какие требования к отчетам
  • @mrdro_mrdro #48093 10:54 AM, 03 Apr 2018
    Объём : пользователи ~10 млн
    Посты ~5 млн
    Комменты~50*посты
    Лайки~1000*посты

    Хотел с этого начать, но не хочу чтобы это было верхней границей

    Отчёты::
    Текстовые поля
    1) все посты с ключевыми словами (в идеале с морфологией)
    Числовые и даты
    1)все агрегации и джойны
  • https://t.me/clickhouse_ru
    @proller #48094 10:58 AM, 03 Apr 2018
    в кликхаусе нет полнотекствого индекса - значит любой like %% будет читать-сравнивать слишком много данных
  • https://t.me/clickhouse_ru
    вам точно в постгрес
  • @mrdro_mrdro #48096 11:02 AM, 03 Apr 2018
    Всем спасибо, что подняли веки)))
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48088 #48097 11:15 AM, 03 Apr 2018
    Можно решить только одним способом - взять и поправить тип UUID, сейчас он не работает
  • https://t.me/clickhouse_ru
    @lekspyl #48098 11:52 AM, 03 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @mytempo #48099 11:57 AM, 03 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @Vasyaabr #48100 12:35 PM, 03 Apr 2018
    При попытке дропнуть базу с MATERIALIZED VIEW (SummingMergeTree) таблицей, поймал ошибку:

    Received exception from server (version 1.1.54370):
    Code: 60. DB::Exception: Received from 127.0.0.1:9003. DB::Exception: Table funprodwh..inner.TurnoversNet doesn't exist..

    И базу не прибить. Помог только detach (кстати, в дока написано что detach database нет, а на самом деле есть) и удаление руками из папки с метаданными.
    Такое тут пробегало, или сделать issue?
  • https://t.me/clickhouse_ru
    @madm1ke #48101 12:49 PM, 03 Apr 2018
    Привет.
    Вопрос по словарям - поддерживает ли CH загрузку http(s)-словарей с basic-авторизацией?
  • Пока с таким не сталкивался, но можно попробовать добавить логин и пароль в ссылку: https://user:pass@www.example.com/dictionary
  • https://t.me/clickhouse_ru
    @madm1ke ↶ Reply to #48102 #48103 12:58 PM, 03 Apr 2018
    так уже пробовал - не работает :(
  • https://t.me/clickhouse_ru
    @stufently #48104 12:59 PM, 03 Apr 2018
    Ограничьте по айпи просто
  • А через браузер получается просмотреть данные по такой ссылке?
  • https://t.me/clickhouse_ru
    @madm1ke #48106 12:59 PM, 03 Apr 2018
    естественно.
  • https://t.me/clickhouse_ru
    @madm1ke #48107 12:59 PM, 03 Apr 2018
    По IP - логично, но хотелось бы убедиться в отсутствии правильного пути.
  • @interlace #48108 01:00 PM, 03 Apr 2018
    А какую ошибку пишет в system.dictionaries?
  • В запросе брали имя таблицы в обратные кавычки?
  • @whetherharder #48110 01:18 PM, 03 Apr 2018
    подскажите пожалуйста, с какими опциями собрать СH чтобы в результате получились отдельные (server, client итд),статически слинкованные бинари ?
  • https://t.me/clickhouse_ru
    @Vasyaabr ↶ Reply to #48109 #48111 01:19 PM, 03 Apr 2018
    Вообще таблицу не упоминал, сразу дропал базу (DROP DATABASE), в которой была куча таблиц, предполагая что дропнуться все таблицы автоматом (почти так и произошло). Имя базы без кавычек.
  • @kochetovnicolai #48112 01:20 PM, 03 Apr 2018
    да, хотел написать про имя базы
  • @kochetovnicolai #48113 01:21 PM, 03 Apr 2018
    должно сработать с обратными кавычками
  • https://t.me/clickhouse_ru
    @Vasyaabr #48114 01:21 PM, 03 Apr 2018
    Ок, я проверю.
  • https://t.me/clickhouse_ru
    @508124506 #48115 01:46 PM, 03 Apr 2018
    Привет. Подскажите пожалуйста, а работает ли resharding?
    Хочется при добавлении ноды в кластер перенести шард на новый сервер. На гитхабе нашел подобный вопрос, он еще открыт и последний комментарий от 20 сентября 2017 года (https://github.com/yandex/ClickHouse/issues/198).
    Resharding doesnt work · Issue #198 · yandex/ClickHouse

    Hi. I use clickhouse version: ii clickhouse-server-base 1.1.54022 amd64 clickhouse-server-base I want to use resharding, if i need to improve performance of my database by adding an other node in t...

  • https://t.me/clickhouse_ru
    @madm1ke ↶ Reply to #48108 #48116 01:49 PM, 03 Apr 2018
    2018.04.03 16:44:52.394881 [ 35 ] <Error> ExternalDictionaries: Failed reloading 'regions' external dictionary: Code: 86, e.displayText() = DB::Exception: Received error from remote server https://name:password@URL/CH_dict_regions.tsv. HTTP status code: 401 Unauthorized, body: <html>
  • https://t.me/clickhouse_ru
    @ksolokhov #48117 01:49 PM, 03 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @manuscript71 #48118 02:07 PM, 03 Apr 2018
    Joined.
  • Если Телеграм закроют, то мы сначала подождём примерно пол дня, чтобы проверить, не откроют его обратно, а потом заведём канал в другой системе.
    Есть предпочтения, какая альтернатива лучше?
  • https://t.me/clickhouse_ru
    jabber пока ещё актуален
  • @291662242 #48121 02:15 PM, 03 Apr 2018
    irc ))
  • https://t.me/clickhouse_ru
    @strangeqargo #48122 02:15 PM, 03 Apr 2018
    плюсую irc
  • @antonio_antuan #48123 02:15 PM, 03 Apr 2018
    icq
  • https://t.me/clickhouse_ru
    @strangeqargo #48124 02:16 PM, 03 Apr 2018
    но скорее всего это будет слак :)
  • https://t.me/clickhouse_ru
    нафиг, для него нет десктопного клиента под линукс
  • @61322181 ↶ Reply to #48125 #48126 02:16 PM, 03 Apr 2018
    Есть, но лучше бы его не было
  • https://t.me/clickhouse_ru
    Тем более
  • https://t.me/clickhouse_ru
    @stufently #48128 02:17 PM, 03 Apr 2018
    Жабер ирк ICQ скорее мертвы чем живы
  • https://t.me/clickhouse_ru
    @stufently #48129 02:17 PM, 03 Apr 2018
    Вероятно в моде нынче слака
  • https://t.me/clickhouse_ru
    @beeblebrox #48130 02:17 PM, 03 Apr 2018
    там десктопный клиент и сайт - примерно одно и то же, разве нет?
  • https://t.me/clickhouse_ru
    @maxoligarh #48131 02:17 PM, 03 Apr 2018
    ямб в открытый доступ яндекс не планирует ?
  • https://t.me/clickhouse_ru
    вполне себе жив irc
  • https://t.me/clickhouse_ru
    Так там вроде на электроне клиент должен быть под все
  • @61322181 ↶ Reply to #48130 #48134 02:17 PM, 03 Apr 2018
    Да, электрон вроде
  • https://t.me/clickhouse_ru
    "на электроне" == "вебклиент"
  • https://t.me/clickhouse_ru
    @strangeqargo #48136 02:17 PM, 03 Apr 2018
    и да, линуксовый слак на электроне, особых жалоб нет, используем давно
  • https://t.me/clickhouse_ru
    Ну ровным счётом я не знаю пользователей ирк кроме себя, о чем то это да и говорит
  • https://t.me/clickhouse_ru
    Ну и покупать клиента, чтобы сидеть на единственном канале...
  • https://t.me/clickhouse_ru
    Есть подозрение что телеграм тоже на электроне
  • https://t.me/clickhouse_ru
    я множество знаю и теперь тебя. но в любом случае, ирк для коммерческих контор маловероятен
  • https://t.me/clickhouse_ru
    @171023284 #48141 02:18 PM, 03 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    Зачем покупать он бесплатный
  • https://t.me/clickhouse_ru
    щьто
  • https://t.me/clickhouse_ru
    Либо я не понимаю, что у них в https://slack.com/pricing, либо в бесплатной версии нет доступа к внешним каналам
  • @61322181 #48145 02:20 PM, 03 Apr 2018
    Мэйл рассылки наше всё
  • https://t.me/clickhouse_ru
    телеграм, кстати, не на электроне, судя по https://github.com/telegramdesktop/tdesktop
    GitHub - telegramdesktop/tdesktop: Telegram Desktop messaging app

    Telegram Desktop messaging app. Contribute to telegramdesktop/tdesktop development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    +100500 за рассылки, кстати...
  • https://t.me/clickhouse_ru
    Вроде всегда был, я раньше сидел, теперь только рабочие слаки остались
  • https://t.me/clickhouse_ru
    Скорее, это было что-то альтернативное.
  • https://t.me/clickhouse_ru
    QT
  • https://t.me/clickhouse_ru
    @strangeqargo #48151 02:22 PM, 03 Apr 2018
    хотя принцип примерно тот же
  • https://t.me/clickhouse_ru
    Угу, C++ и всётакоэ...
  • @mfilimonov #48153 02:23 PM, 03 Apr 2018
    Подскажите - кто-то анализировал разницу (в скорости обработки / в хранении) при различных способах записи URL в кликхаус. Сейчас храним целиком в строках, думаю - не попробовать ли по частям хранить - протокол, домен, путь (как таблицу?), параметры URL. Может есть какие-то best practice на этот счет?
  • @mfilimonov #48154 02:25 PM, 03 Apr 2018
    По идее должно лучше жаться и некоторые типы запросов должны быстрее выполняться. Но если обратно весь URL целиком понадобится - не факт что склеишь в "первозданном" виде.
  • Мы храним целый URL в одном столбце и ещё дополнительно только домен в другом столбце. Если выбирать только домен, то это быстрее на порядки.
    Если вам часто надо выбирать, например, только протокол - то его тоже положите в отдельный столбец.

    А из столбца с целым URL можно домен не вырезать, так как разница будет небольшой.

    И ещё довольно важно вырезать из URL отдельные "мусорные" параметры - например, какие-то длинные шифрованные параметры в base64, которые вы не можете расшифровать. После сжатия они могут отнять в районе 90% места.
  • @milovidov_an #48156 02:31 PM, 03 Apr 2018
    В качестве дополнительных трюков - можно декодировать %-последовательности в URL в UTF-8, но только кроме символов /, &, =, ?, #, ", \, чтобы не портить структуру URL-а. Чтобы получить красивые строки для отображения в отчётах, вида https://yandex.ru/?text=упячка. При этом важно, что %-кодированные последовательности могут быть не обязательно в UTF-8 и кодировку надо правильно определять.
    Link

    Найдётся всё

  • https://t.me/clickhouse_ru
    @JenZolotarev #48157 02:32 PM, 03 Apr 2018
    а есть какой то реальный кейс, чтобы хранить URL as is со всеми квери?
  • https://t.me/clickhouse_ru
    @149051052 #48158 02:32 PM, 03 Apr 2018
    Пользуемся только Slack и только Telegram. Однако Slack не так легок для общения.
  • https://t.me/clickhouse_ru
    @JenZolotarev #48159 02:32 PM, 03 Apr 2018
    всегда казалось, что достаточно хранить оптимизированный URL без квери для разного рода отчетности
  • Да, типичный кейс - логи для расследований.
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #48159 #48161 02:39 PM, 03 Apr 2018
    если потом по этому урлу надо куда-то ходить, то при любой его обработке найдутся такие люди, у которых на измененном урле что-нибудь перестанет работать.
  • @antonio_antuan #48162 02:40 PM, 03 Apr 2018
    @milovidov_an можете подсказать что-нибудь по этому вопросу? баг или фича? https://github.com/yandex/ClickHouse/issues/2124
    Подзапрос выполняется в неверной БД. #2124

    Имеется кластер БД, называется mydb_cluster, имеется БД mydb. БД по умолчанию - mydb_cluster. Есть табличка такая: CREATE TABLE mydb.traffic_stats ( ts_spawn UInt32, user_id UInt32, ...) ENGINE =...

  • Спасибо.
  • На мой взгляд - это фича :) Причем даже задокументированная: https://clickhouse.yandex/docs/ru/query_language/queries/#_8
  • @mfilimonov #48165 02:49 PM, 03 Apr 2018
    >При использовании обычного IN-а, запрос отправляется на удалённые серверы, и на каждом из них выполняются подзапросы в секциях IN / JOIN.
  • @antonio_antuan #48166 02:49 PM, 03 Apr 2018
    действительно, забыл про это
  • @mfilimonov #48167 02:50 PM, 03 Apr 2018
    Ну а то что на "удаленных серверах" отсутствует таблица которая нужна для выполнения подзапроса с IN - это уж вопрос планирования схемы базы.
  • @antonio_antuan #48168 02:50 PM, 03 Apr 2018
    дада, я понял
  • @antonio_antuan #48169 02:50 PM, 03 Apr 2018
    фича
  • @antonio_antuan #48170 02:50 PM, 03 Apr 2018
    спасибо
  • @mfilimonov #48171 02:50 PM, 03 Apr 2018
    Если вместо IN написать GLOBAL IN то наверное заработает.
  • Тогда советую ещё раз всё перепроверить и создать тикет на гитхабе.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48115 #48173 03:06 PM, 03 Apr 2018
    Нет, теперь для этого отдельная тулза https://clickhouse.yandex/docs/ru/single/#utils-clickhouse-copier
  • https://t.me/clickhouse_ru
    @ChuPika #48174 03:11 PM, 03 Apr 2018
    Как работают правила include'ов?
  • В показаном примере из файла /etc/metrika.xml будет подставлена секция <remote-servers>
  • @mfilimonov #48176 03:15 PM, 03 Apr 2018
    Как-то так работает :) А подробности вроде бы есть в документации. Или я не правильно понял вопрос?
  • https://t.me/clickhouse_ru
    @aloneibreak #48177 03:16 PM, 03 Apr 2018
    привет
    есть такая проблема
    2 шарда по 2 реплики
    на всех шардах есть таблица MergeTree
    так же на всех шардах есть таблица Distributed которая смотрит в эти MergeTree
    в какой-то момент запросы на первый шард начинают возвращать ошибку о том, что якобы на репликах второго шарда нет MergeTree таблиц которые он ищет
    лечится пересозданием Distributed таблицы на первом шарде, но помогает ненадолго. через какое-то время проблема повторяется
    с чем может быть связано?
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #48174 #48178 03:17 PM, 03 Apr 2018
    примерно так
    <xsl:template match="*[@incl]" name="inc">
    <xsl:copy>
    <xsl:variable name="x" select="@incl"/>
    <xsl:apply-templates select="document($metrika_path)/yandex/*[name()=$x]/node()"/>
    </xsl:copy>
    </xsl:template>
  • https://t.me/clickhouse_ru
    @ChuPika #48179 03:19 PM, 03 Apr 2018
    @orantius ОМГ
  • https://t.me/clickhouse_ru
    @ChuPika ↶ Reply to #48176 #48180 03:20 PM, 03 Apr 2018
    А, в remote-servers.xml все должно быть завёрнуто в <remote_servers>?
  • https://t.me/clickhouse_ru
    @ChuPika #48181 03:23 PM, 03 Apr 2018
    В любых вариациях с отдельными файлами конфигами получаю
    <Error> Application: zkutil::KeeperException: Fail to initialize zookeeper. Hosts are
  • какой ещё remote-servers.xml? :) Файл с подстановками по умолчанию: /etc/metrika.xml
  • https://t.me/clickhouse_ru
    @orantius #48183 03:24 PM, 03 Apr 2018
    делаете /etc/metrika.xml , в нем <yandex>, в нем <remote_servers>
  • https://t.me/clickhouse_ru
    @ChuPika #48184 03:25 PM, 03 Apr 2018
    Вааааат!? Атрибут include_from может быть определён у тега remote_servers или zookeepers?
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @orantius #48186 03:27 PM, 03 Apr 2018
    заодно и сам почитаю
  • https://t.me/clickhouse_ru
    @molo4ko007 #48187 03:28 PM, 03 Apr 2018
    > xslt
    кх готов в энтерпрайз
  • @mfilimonov #48188 03:28 PM, 03 Apr 2018
    Но на самом деле можно и не использовать этот файл с подстановками. А просто в config.xml или в conf.d написать <yandex>
    <remote_servers>
    <test_cluster>
    <shard>
    <replica>
    <host>node1</host>
    <port>9000</port>
    </replica>
    </shard>
    <shard>
    <replica>
    <host>node2</host>
    <port>9000</port>
    </replica>
    </shard>
    </test_cluster>
    </remote_servers>
    </yandex>
  • https://t.me/clickhouse_ru
    Может, они у меня из инклуда подключаются
  • https://t.me/clickhouse_ru
    @ChuPika ↶ Reply to #48186 #48190 03:28 PM, 03 Apr 2018
    Вот чего-чего, а примеров оч не хватает.
  • https://t.me/clickhouse_ru
    @ChuPika ↶ Reply to #48188 #48191 03:28 PM, 03 Apr 2018
    Супер! То, что нужно. Благодарчик
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #48184 #48192 03:28 PM, 03 Apr 2018
    если верить доке, то нужен элемент include_from, а не атрибут
  • @mfilimonov #48193 03:29 PM, 03 Apr 2018
    Но все равно почитайте: https://clickhouse.yandex/docs/ru/operations/configuration_files/ :)
  • https://t.me/clickhouse_ru
    @ChuPika #48194 03:30 PM, 03 Apr 2018
    Mikhail Как фича риквест, вы можете выпилить вот эту историю с incl и /etc/metrika.xml, чтобы людей не путать?)
  • @mfilimonov #48195 03:36 PM, 03 Apr 2018
    Это не ко мне, я не из Яндекса :) Из моего опыта: этот файл с подстановками правда полезен если один и тот же фрагмент конфигурации нужно многократно в разных местах использовать. Например для <networks> при создании пользователей - чтобы не перечислять несколько подсетей каждый раз. При конфигурации кластера - я так и не понял привносит ли он что-то дополнительно, по сравнению с просто выделенным в отделный файл "подконфигом".
  • @mfilimonov #48196 03:37 PM, 03 Apr 2018
    Процитирую ридми который писал для наших ОПсов.

    Configuration of ClickHouse is stored in XML files.

    With distribution 2 files came: config.xml (main server settings), and users.xml (users, profiles, quotes).

    Generally best practice is to leave the default configs unchanged, and make all the config changes in separate files.
    With that new default settings coming in newer versions will be properly set up.

    All files from conf.d folder will be attached to config.xml
    All files from users.d folder will be attached to users.xml

    For each XML node you can set up following attributes:
    1) remove="remove" : remove the node from config
    2) replace="replace" : replace the node with new variant
    3) incl="node_name" : get the node from substitutions file
    4) from_zk = "/path/to/node". The element value is replaced with the contents of the node at /path/to/node in ZooKeeper
  • @mfilimonov #48197 03:41 PM, 03 Apr 2018
    Ну и например в conf.d/listen.xml записано:
    <?xml version="1.0"?>
    <yandex>
    <listen_host replace="replace">::</listen_host>
    </yandex>
  • @mfilimonov #48198 03:42 PM, 03 Apr 2018
    в users.d/disable_default.xml
    <?xml version="1.0"?>
    <yandex>
    <!-- Remove default users (defined in users.xml), we allow access by passwords only -->
    <users>
    <default remove="remove" />
    <readonly remove="remove" />
    </users>
    </yandex>
  • @mfilimonov #48199 03:44 PM, 03 Apr 2018
    А в users.d/zeppelin.xml
    <?xml version="1.0"?>
    <yandex>
    <users>
    <zeppelin>
    <password>secret</password>
    <networks incl="networks" />
    <profile>readonly</profile>
    <quota>default</quota>
    <allow_databases>
    <database>data</database>
    </allow_databases>
    </zeppelin>
    </users>
    </yandex>
  • @mfilimonov #48200 03:44 PM, 03 Apr 2018
    и т.д.
  • https://t.me/clickhouse_ru
    пришел к аналогичному, но пользователь default оказался нужен для репликации.
  • @vstakhov #48202 04:10 PM, 03 Apr 2018
    [ 63%] Building CXX object utils/config-processor/CMakeFiles/config-processor.dir/config-processor.cpp.o
    /root/ClickHouse/libs/libdaemon/src/BaseDaemon.cpp: In member function 'void SignalListener::onFault(int, siginfo_t&, ucontext_t&, ThreadNumber) const':
    /root/ClickHouse/libs/libdaemon/src/BaseDaemon.cpp:375:26: error: 'BUS_MCEERR_AR' was not declared in this scope
    case BUS_MCEERR_AR:
    ^~~~~~~~~~~~~
    /root/ClickHouse/libs/libdaemon/src/BaseDaemon.cpp:375:26: note: suggested alternative: 'BUS_OBJERR'
  • @vstakhov #48203 04:10 PM, 03 Apr 2018
    пытается боец собраться на CentOS 6
  • https://t.me/clickhouse_ru
    @stufently #48204 04:14 PM, 03 Apr 2018
    Нет смысла уже скоро выйдет восьмерка
  • @vstakhov #48205 04:16 PM, 03 Apr 2018
    tell me more
  • @358181242 #48206 04:16 PM, 03 Apr 2018
    Подскажите кто как делает периодическую загрузку файлов в кх, не хочется писать костыли. Сильно не пинайте, только начал знакомство с кх.
  • @vstakhov #48207 04:16 PM, 03 Apr 2018
    впрочем, вижу, что в мастере оно исправлено
  • https://t.me/clickhouse_ru
    А в чем проблема через кликхаусклиент и готово
  • @358181242 #48209 04:18 PM, 03 Apr 2018
    А можно немного подробнее
  • https://t.me/clickhouse_ru
    @stufently #48210 04:20 PM, 03 Apr 2018
    Ну там есть загрузка данных из файла в доке есть это
  • https://t.me/clickhouse_ru
    @stufently #48211 04:20 PM, 03 Apr 2018
    Какой нибудь CSV или tsv
  • https://t.me/clickhouse_ru
    Кажется, в доку пора разместить FAQ
  • https://t.me/clickhouse_ru
    @JenZolotarev #48213 04:21 PM, 03 Apr 2018
    Или где то рядом...
  • Вроде как в master поправлено
  • @vstakhov #48215 04:22 PM, 03 Apr 2018
    я об этом и написал, да
  • https://t.me/clickhouse_ru
    @Mike_Er ↶ Reply to #48202 #48216 04:23 PM, 03 Apr 2018
    я мастер брал, собралось под 6й центось
  • @vstakhov #48217 04:23 PM, 03 Apr 2018
    штош, будем собирать мастер, там заодно и нужный нам коммит от @proller есть
  • https://t.me/clickhouse_ru
    @ChuPika ↶ Reply to #48196 #48218 04:23 PM, 03 Apr 2018
    Пасиб, оч полезно.
  • угу. Кстати - есть какие-то планы чтоб это поправить? вроде бы должно быть не сложно: https://github.com/yandex/ClickHouse/blob/6f015d8942ce66e0a25cd6657deaf5659148f60d/dbms/src/Storages/StorageReplicatedMergeTree.cpp#L3256
    yandex/ClickHouse

    ClickHouse is a free analytic DBMS for big data.

  • https://t.me/clickhouse_ru
    @catless ↶ Reply to #48201 #48220 04:50 PM, 03 Apr 2018
    в настройках можно указать профиль для системных задач с помощью ключа <system_profile>
  • Это немного о другом. Для репликации (ReplicatedMergeTree) и так соединяется с лидером без пароля и с пользователем default.
  • @Lamobot ↶ Reply to #48221 #48222 05:00 PM, 03 Apr 2018
    В доке написано что можно указывать в настроках remote_servers юзера и пароль к каждому серверу. Они не заменяют default для репликации?
    Я у себя юзера поменял, но не тестил без default.
  • @mfilimonov #48223 05:04 PM, 03 Apr 2018
    Distributed можно настроить c custom паролем, ReplicatedMergeTree нет.
  • https://t.me/clickhouse_ru
    @ChuPika #48224 06:57 PM, 03 Apr 2018
    Как устроен GraphiteMergeTree. Вот, например, rollup'ы описывают, как данные будут схлопнуты?
  • @60086887 #48225 07:00 PM, 03 Apr 2018
    ага
  • @60086887 #48226 07:01 PM, 03 Apr 2018
    типа у тебя есть несколько периодов хранения, и по мере устаревания данных они будут аггрегироваться при мержах
  • @60086887 #48227 07:01 PM, 03 Apr 2018
    по тем правилам, что описаны в роллапе
  • https://t.me/clickhouse_ru
    @inv2004 #48228 07:01 PM, 03 Apr 2018
    Извините, давно не следил - аналитические/оконные функции ещё не появились?
  • Нет, не появились.
  • https://t.me/clickhouse_ru
    @inv2004 #48230 07:09 PM, 03 Apr 2018
    Понял, а пока не в планах?
  • Не в ближайших.
  • https://t.me/clickhouse_ru
    @inv2004 #48232 07:13 PM, 03 Apr 2018
    Понял. Спасибо.
  • 04 April 2018 (129 messages)
  • @Ghostnsk #48233 04:57 AM, 04 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    Рассказываем, как продолжить пользоваться Telegram в случае его блокировки.

    Открыть статью.
    Как обойти блокировку Telegram?

    VPN Чтобы исключить влияние государственной цензуры на ваши коммуникации, на доступ и распространение информации - в первую очередь предлагаем вам установить VPN, как наиболее комплексное решение. Рекомендуем выбрать VPN из данной подборки, где отобраны защищенные сервисы, проверенные международными и российскими цифровыми активистами: VPNLove.me Большинство из этих VPN уже высказали свое негативное отношение к государственной цензуре и отказались от сотрудничества с Роскомнадзором по фильтрации пользовательского…

  • https://t.me/clickhouse_ru
    спасибо
  • https://t.me/clickhouse_ru
    @ksolokhov #48236 08:46 AM, 04 Apr 2018
    Коллеги, можете подсказать в чем может быть проблема: при попытке сделать ALTER TABLE ON CLUSTER ADD COLUMN для DistributedMergeTree таблицы получаю такое сообщение:
    DB::Exception: Table BLA-BLA isn\'t replicated, but shard #2 is replicated according to its cluster definition, e.what() = DB::Exception 11 0
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48236 #48237 08:59 AM, 04 Apr 2018
    Насколько я помню ON CLUSTER недоделано для Distributed, нужно руками на каждой машине запрос выполнить
  • https://t.me/clickhouse_ru
    @ksolokhov #48238 08:59 AM, 04 Apr 2018
  • https://t.me/clickhouse_ru
    @ksolokhov #48239 09:01 AM, 04 Apr 2018
    Спасибо за пояснение
  • https://t.me/clickhouse_ru
    @eigrad #48240 09:07 AM, 04 Apr 2018
    1.1.54370, перевели табличку в распределенный режим, стал ругаться "Too many parts (301). Merges are processing significantly slower than inserts."
    куда смотреть?
  • https://t.me/clickhouse_ru
    @stufently #48241 09:09 AM, 04 Apr 2018
    ну обычно это слишком много мелких вставок
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48240 #48242 09:09 AM, 04 Apr 2018
    в system.merges и system.replication_queue
  • https://t.me/clickhouse_ru
    @eigrad #48243 09:10 AM, 04 Apr 2018
    в system.merges записи проскакивают редко, и проходят быстро... replication_queue гляну, спасибо
  • @343647023 #48244 10:53 AM, 04 Apr 2018
    Добрый день, коллеги

    Делаю инсерт в таблицу такого вида
    INSERT INTO table VALUES (UUIDStringToNum('f9520747-1a12-4aa0-8ab2-d7ba615bc3e2')), (UUIDStringToNum('f9520747-1a12-4aa0-8ab2-d7ba615bc3e2'))...

    При больших объемах иногда возникают ошибки такого вида:
    DB::Exception: Unknown identifier: UUIDStringToNum, e.what() = DB::Exception
    Или
    DB::Exception: Unknown identifier: UUIDStrin, e.what() = DB::Exception

    Кто что думает?
  • https://t.me/clickhouse_ru
    @stufently #48245 10:54 AM, 04 Apr 2018
    вроде вчера писали что тип ууид не работает в кх , но может не так поняол
  • @343647023 #48246 10:55 AM, 04 Apr 2018
    Я вставляю в поле типа FixedString(16) значение, которую получаю на вызоде функции UUIDStringToNum
  • https://t.me/clickhouse_ru
    @stufently #48247 10:56 AM, 04 Apr 2018
    ну ошибка говорит что нет функции ууидтунум
  • https://t.me/clickhouse_ru
    @stufently #48248 10:57 AM, 04 Apr 2018
    вероятно ее нет , либо старая версия и там ее нет , либо новая и там ее выпилили
  • @343647023 #48249 10:58 AM, 04 Apr 2018
    если вставлять по одной строке, то все ок
    но если вставить разом 1000 строк, к примеру, начинают валиться подобные ошибки
  • https://t.me/clickhouse_ru
    Попробуйте из лога вытащить именно ту строку (или пачку строк), которая дает сбой. Есть вероятность, что это получится сделать
  • https://t.me/clickhouse_ru
    @pixelbender #48251 12:06 PM, 04 Apr 2018
    Кто подскажет куда копать? Временами CH рестартится сам по себе в логах только <Information> Application: Received termination signal (Terminated) и других намеков на причину нету
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48251 #48252 12:12 PM, 04 Apr 2018
    OOM killer ?
  • https://t.me/clickhouse_ru
    @pixelbender #48253 12:20 PM, 04 Apr 2018
    Возможно, а не подскажете, как проверить?
  • https://t.me/clickhouse_ru
    @stufently #48254 12:21 PM, 04 Apr 2018
    dmesg
  • https://t.me/clickhouse_ru
    @pixelbender #48255 12:23 PM, 04 Apr 2018
    Спасибо, dmesg - есть записи срабатывания oom killer, но для другого процесса.
  • @pavel_maksimow #48256 12:49 PM, 04 Apr 2018
    Ребят, есть словарь из 19 строк, в кликхаусе подтягиваются только 11 строк, ошибок нет, словарь обновляется. В чем может быть причина, что не все строки видит?

    словарь из файла
  • @pavel_maksimow #48257 12:51 PM, 04 Apr 2018
    понял в чем, ключ дублируется, только уникальные загружает
  • https://t.me/clickhouse_ru
    @eigrad #48258 01:18 PM, 04 Apr 2018
    подскажите, а плюсовый клиент, ну и консольный клиент, при вставке в распределенную таблицу будут слать данные в ту ноду, к которой ему сказали подключиться, или оно настолько крутое что может слать разные строчки напрямую в соответствующие шарды?
  • @kochetovnicolai #48259 01:19 PM, 04 Apr 2018
    Distributed таблица поделит данные по ключу партиционирования и перешлет на шарды
  • https://t.me/clickhouse_ru
    @eigrad #48260 01:20 PM, 04 Apr 2018
    вопрос про то, произойдет ли это на server-side или client-side сам умеет увидеть что таблица distributed и получить адреса шардов откуда-нибудь?
  • https://t.me/clickhouse_ru
    @stufently #48261 01:21 PM, 04 Apr 2018
    на серверсайде
  • https://t.me/clickhouse_ru
    @stufently #48262 01:21 PM, 04 Apr 2018
    клиент вообще по сути не знает что у вас там под капотом , он просто видит таблицу
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #48260 #48263 01:23 PM, 04 Apr 2018
    клиент не знает create, клиент не знает настройки кластера, у него туда может просто не быть доступа
  • @1115100 #48264 02:20 PM, 04 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @AlexAkulov #48265 02:33 PM, 04 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @AlexAkulov #48266 02:38 PM, 04 Apr 2018
    У меня в одном из стобцов храняться пути к файлам, я хочу поискать по ним и не могу правильно двоеточие экранировать.
    Вот такие строчки в КХ
    c:\ex\abonentsservice\13.91.0.1065_deployments-181833\abonents.exe
    c:\ex\abonentsservice\13.91.0.1065_deployments-181833\abonents.exe
    Вот так я пробую
    select Image from wssg.sysmon_logs where Date=today() and EventId=3 and Image like 'с:\ex%' limit 100
    Не работает.
  • https://t.me/clickhouse_ru
    >like 'с:\\ex%' limit 100
  • https://t.me/clickhouse_ru
    @AlexAkulov #48268 02:40 PM, 04 Apr 2018
    тоже нет
  • https://t.me/clickhouse_ru
    @AlexAkulov #48269 02:41 PM, 04 Apr 2018
    DB::Exception: Exception: OptimizedRegularExpression: cannot compile re2: ^c:\\ex, error: invalid escape sequence: \\e., e.what()
  • @interlace #48270 02:43 PM, 04 Apr 2018
    SELECT
    'c:\\example' AS path,
    match(path, '^c:\\\\ex') AS match

    ┌─path────────┬─match─┐
    │ c:\\example │ 1 │
    └─────────────┴───────┘

    1 rows in set. Elapsed: 0.001 sec.
  • @korservick #48271 02:43 PM, 04 Apr 2018
    а Dockerfile на будущее поправили так что он сейчас сломан?
  • https://t.me/clickhouse_ru
    @leidruid #48272 02:43 PM, 04 Apr 2018
    Добрый день!
    Подскажите, есть ли способ более активно кэшировать данные?
    Есть таблица из которой постоянно селектят разными однотипными запросами мы знаем, что этот набор, в 99,5% случаев - последние сутки. Но чтение диска происходит "до дыр", практически постоянно данные перечитываются. Отчасти, это проблема со стороны приложения, которое может ждать не более 30сек, потом запрос повторяется..
    Но что можно сделать на стороне clickhouse ?
  • https://t.me/clickhouse_ru
    @rheinx ↶ Reply to #48272 #48273 02:47 PM, 04 Apr 2018
    если в память влазит, то например держать последние сутки в памяти
  • https://t.me/clickhouse_ru
    @leidruid #48274 02:47 PM, 04 Apr 2018
    Влазит и больше - как ?
  • @ligich #48275 02:50 PM, 04 Apr 2018
    попробуйте chproxy оно кеш умеет
  • @interlace #48276 02:51 PM, 04 Apr 2018
    У меня вопрос. Можно ли создавать Nested структуры данных во вьюшках или простых select-запросах?

    SELECT Nested(1 AS a, 2 AS b) AS c

    Received exception from server:
    Code: 46. DB::Exception: Received from localhost:9000, ::1. DB::Exception: Unknown function Nested.
  • https://t.me/clickhouse_ru
    @gibsn ↶ Reply to #48272 #48277 02:52 PM, 04 Apr 2018
    use_uncompressed_cache не поможет ли?
  • https://t.me/clickhouse_ru
    а более простым способом никак?
  • https://t.me/clickhouse_ru
    @leidruid ↶ Reply to #48277 #48279 02:54 PM, 04 Apr 2018
    неа, не помогает, увеличивал
  • можно попробовать в *like* четыре обратных слеша вместо двух
  • https://t.me/clickhouse_ru
    @leidruid ↶ Reply to #48277 #48281 02:55 PM, 04 Apr 2018
    <uncompressed_cache_size>68719476736</uncompressed_cache_size> вот так сейчас, этого должно хватать на неделю данных
  • https://t.me/clickhouse_ru
    @gibsn ↶ Reply to #48281 #48282 02:58 PM, 04 Apr 2018
    а включить не забыли? 😄 он выключен по дефолту
  • https://t.me/clickhouse_ru
    @leidruid ↶ Reply to #48282 #48283 02:59 PM, 04 Apr 2018
    эмм
  • https://t.me/clickhouse_ru
    @leidruid #48284 03:01 PM, 04 Apr 2018
    Это очень интересный вопрос )
  • https://t.me/clickhouse_ru
    @leidruid #48285 03:04 PM, 04 Apr 2018
    Для запросов, читающих хоть немного приличный объём данных (миллион строк и больше), кэш разжатых блоков автоматически выключается, чтобы оставить место для действительно мелких запросов. Поэтому, можно держать настройку use_uncompressed_cache всегда выставленной в 1.
    Можно комментарий? про миллион строк - это про набор данных в запросе или про количество прочитанных строк в исходных данных ?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48285 #48286 03:07 PM, 04 Apr 2018
    Прочитаных строк в исходных данных
  • https://t.me/clickhouse_ru
    @mrlamberg #48287 03:07 PM, 04 Apr 2018
    а если у меня почти все запросы читают 1+ млн ?
  • https://t.me/clickhouse_ru
    @leidruid #48288 03:07 PM, 04 Apr 2018
    оу, тогда может и не подойти. А есть способ принудительно это использовать ?
  • https://t.me/clickhouse_ru
    @mrlamberg #48289 03:08 PM, 04 Apr 2018
    значит у меня кеш не работает?
  • https://t.me/clickhouse_ru
    @mrlamberg #48290 03:08 PM, 04 Apr 2018
    а то думал почему запросы резко стали выполнятся из 100 мс 3 секунды
  • https://t.me/clickhouse_ru
    @xammett #48291 03:08 PM, 04 Apr 2018
    парни, привет.
  • https://t.me/clickhouse_ru
    @xammett #48292 03:09 PM, 04 Apr 2018
    Подскажите, можно ли как-то отключить лишние уведомления при инсерте в CH из питоновского клиента?
  • https://t.me/clickhouse_ru
    @xammett #48293 03:09 PM, 04 Apr 2018
    чтобы не было block_send ****
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48289 #48294 03:12 PM, 04 Apr 2018
    Это можно посмотреть в метриках select * from system.events where event in ('UncompressedCacheHits', 'UncompressedCacheMisses')
  • @343647023 #48295 03:27 PM, 04 Apr 2018
    Ребят, а есть ли способ заставить КХ автоматически преобразовывать данные при вставке? Чтобы работало также как DEFAULT expr, а не только когда в запросе INSERT не указан соответствующий столбец.
  • @multserhii #48296 03:39 PM, 04 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @gibsn #48297 03:58 PM, 04 Apr 2018
    Есть одна тачка с одним инстансом КХ, одна большая табличка (порядка 10^9 строк), один HDD, движок MergeTree. Данные каждый раз читаются с диска, не из кэша. Запрос вида SELECT col1, ..., coln FROM SomeTable ... . Запрос на чтение одним клиентом одновременно отрабатывает за 100ms, двумя -- каждый по 200ms, ..., n -- каждый по n*100ms, ...

    1. Можно ли при совершении n конкурентных запросов заставить отвечать первому клиенту за 100ms, второму за 200ms, ..., n-ному за n*100ms, ...?
    2. Пусть данные хранятся на разных дисках, осуществляется несколько конкурентных запросов, каждый к своему диску. Насколько сильно эти запросы будут влиять на время выполнения друг друга?
    3. Есть ли продвижение по "Store data at multiple disk volumes of a single server" (https://www.altinity.com/blog/2018/1/8/clickhouse-roadmap-2018)
  • https://t.me/clickhouse_ru
    @stufently #48298 04:00 PM, 04 Apr 2018
    может стоит просто их на ссд положить, там нет проблемы парралельного чтения
  • https://t.me/clickhouse_ru
    @gibsn #48299 04:00 PM, 04 Apr 2018
    у меня 30ТБ в пожатом виде
  • https://t.me/clickhouse_ru
    @stufently #48300 04:00 PM, 04 Apr 2018
    ну либо разнести просто в шард на несколько мелких серверов как у нас например сделано
  • https://t.me/clickhouse_ru
    @stufently #48301 04:01 PM, 04 Apr 2018
    ну а как вы на один хдд диск положили 30 тб ?
  • https://t.me/clickhouse_ru
    @gibsn #48302 04:01 PM, 04 Apr 2018
    пока никак, я пытаюсь понять смогу ли я масштабировать чтение количеством дисков
  • https://t.me/clickhouse_ru
    @stufently #48303 04:02 PM, 04 Apr 2018
    ну больше шпинделей больше иопсов
  • https://t.me/clickhouse_ru
    @gibsn #48304 04:09 PM, 04 Apr 2018
    да, но я не могу быть уверен, что при увеличении количества дисков оно станет работать быстрее, потому что не знаю как оно там внутри у себя сериализует запросы, какие локи держит и какое отношение последовательного кода к параллельному
    фича ж даже официально не поддерживается пока что
  • https://t.me/clickhouse_ru
    @stufently #48305 04:12 PM, 04 Apr 2018
    Очень параллельно на чтение все
  • https://t.me/clickhouse_ru
    @stufently #48306 04:12 PM, 04 Apr 2018
    Несколько шардов все таки лучшее решение
  • https://t.me/clickhouse_ru
    @gibsn #48307 04:13 PM, 04 Apr 2018
    несколько шардов будет, просто не хотелось бы масштабироваться тазами с одним диском на борту)
  • https://t.me/clickhouse_ru
    @leidruid #48308 04:15 PM, 04 Apr 2018
    Напомните, пожалуйста, как сделать так, чтобы при репликации набор данных в момент времени на всех репликах был одинаков?
  • https://t.me/clickhouse_ru
    Ну ставьте по два диска
  • https://t.me/clickhouse_ru
    В RAID1
  • https://t.me/clickhouse_ru
    @stufently #48311 04:17 PM, 04 Apr 2018
    Каждый шард будет выполнять часть задача абсолютно параллельно по сути н шардов будет в н раз быстрее
  • https://t.me/clickhouse_ru
    @gibsn #48312 04:19 PM, 04 Apr 2018
    да, я понимаю, что можно сделать n шардов, можно сделать RAID, но мой изначальный вопрос не "что делать в такой ситуации", а "является ли решение N решением"
  • https://t.me/clickhouse_ru
    @stufently #48313 04:20 PM, 04 Apr 2018
    Не является там же логарифмическая зависимость на обычных хдд , можно больше получить на час 15к оборотов
  • https://t.me/clickhouse_ru
    @stufently #48314 04:20 PM, 04 Apr 2018
    На сас
  • https://t.me/clickhouse_ru
    @stufently #48315 04:21 PM, 04 Apr 2018
    А как вы определили что у вас 30 Тб в сжатом виде?
  • https://t.me/clickhouse_ru
    @gibsn ↶ Reply to #48315 #48316 04:26 PM, 04 Apr 2018
    я залил около 10млрд псевдослучайных строк в кликхаус, посмотрел, сколько получилось, экстраполировал на тот срок за который у меня уже есть данные

    ну и в другой БД оно занимает 30ТБ в пожатом lz4-ом виде
  • https://t.me/clickhouse_ru
    @gibsn #48317 04:26 PM, 04 Apr 2018
    разумеется, оценка в 30ТБ не претендует на точность, но порядок вряд ли будет другой
  • https://t.me/clickhouse_ru
    @eigrad #48318 04:26 PM, 04 Apr 2018
    А другая БД это кто?
  • https://t.me/clickhouse_ru
    @gibsn #48319 04:27 PM, 04 Apr 2018
    самописное)
  • https://t.me/clickhouse_ru
    Ну так у вас данные что ли псевдостучайные?
  • https://t.me/clickhouse_ru
    @stufently #48321 04:28 PM, 04 Apr 2018
    На таких данных конечно и скорость и сджатие будут минимальными
  • https://t.me/clickhouse_ru
    @gibsn #48322 04:29 PM, 04 Apr 2018
    ну более менее из распределения имеющихся
  • https://t.me/clickhouse_ru
    @gibsn #48323 04:29 PM, 04 Apr 2018
    но генеренные
  • https://t.me/clickhouse_ru
    @stufently #48324 04:30 PM, 04 Apr 2018
    Вероятно просто кликхаус не ваш вариант
  • https://t.me/clickhouse_ru
    @gibsn #48325 04:31 PM, 04 Apr 2018
    почему?
  • https://t.me/clickhouse_ru
    @stufently #48326 04:33 PM, 04 Apr 2018
    Ну данные у вас не такие как он любит
  • https://t.me/clickhouse_ru
    @gibsn #48327 04:34 PM, 04 Apr 2018
    а как вы поняли, какие там данные?
    там что-то вроде событий, какие то события случаются сильно чаще, какие то очень часто идут подряд одинаковые
    просто их много
  • https://t.me/clickhouse_ru
    @stufently #48328 04:39 PM, 04 Apr 2018
    Ну вы не даете нам понять от этого так и происходит ) загадка без вводных всегда сложно
  • @204820945 #48329 04:40 PM, 04 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @stufently #48330 04:42 PM, 04 Apr 2018
    ну и запросы чистый селект данных не юзкейс кликхауса
  • https://t.me/clickhouse_ru
    @gibsn #48331 04:43 PM, 04 Apr 2018
    time series события с малым количеством колонок, низкой энтропией, рпс на запись в среднем 25к, на чтение <<, уже есть данные за 5 лет
  • https://t.me/clickhouse_ru
    @stufently #48332 04:45 PM, 04 Apr 2018
    ну покажите пример пару строчек это всегда лучше чем много слов и догадки , мало колонок тоже не айс для кх
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48295 #48333 04:53 PM, 04 Apr 2018
    Такого нет
  • https://t.me/clickhouse_ru
    Причем тут колво колонок? Хоть 2, хоть 202. У КХ вполне определеный кейс - много неизменяемых строк, мало запросов (без сложных join)
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48308 #48335 04:55 PM, 04 Apr 2018
    insert_quorum для вставки и select_sequential_consistency для чтения
  • https://t.me/clickhouse_ru
    @leidruid #48336 04:56 PM, 04 Apr 2018
    спасибо
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    И да, если нужно извлечь все колонки (5 записей из 2х милиардов) - вот это не для КХ
  • https://t.me/clickhouse_ru
    @gibsn ↶ Reply to #48334 #48340 04:57 PM, 04 Apr 2018
    ага, кейс записи -- append only, кейс чтения -- просто достать из базы
  • https://t.me/clickhouse_ru
    @emakarov #48341 04:58 PM, 04 Apr 2018
    в English документации небольшое расхождение в тексте с дефолтным значением пути до данных (`/opt/clickhouse/data/default/
    /opt/clickhouse/metadata/default/) хотя сейчас данные по умолчанию в /var/lib/...`
  • @oleg_kozlyuk #48342 05:02 PM, 04 Apr 2018
    /stat@combot
  • https://t.me/clickhouse_ru
    Не обязательно просто чтение. Ещё и посчитать какой-нибудь средний доход зеленного пользовате в каждую пятую минуту в январе 2006
  • https://t.me/clickhouse_ru
    @gibsn ↶ Reply to #48344 #48345 05:08 PM, 04 Apr 2018
    это я про свой кейс
  • https://t.me/clickhouse_ru
    вам просто запросы надо в очередь выстроить? chproxy ?

    # Enable requests queueing - chproxy will queue up to max_queue_size
    ....
  • https://t.me/clickhouse_ru
    @gibsn ↶ Reply to #48346 #48347 06:53 PM, 04 Apr 2018
    Спасибо
  • https://t.me/clickhouse_ru
    @tarabanton #48348 07:15 PM, 04 Apr 2018
    Меня сегодня позабавило другое, если физически нет default database кластера из конфига, то ломается Distributed с напрямую указанными именами бд :-)
  • https://t.me/clickhouse_ru
    @tarabanton #48349 07:17 PM, 04 Apr 2018
    Я подумывал так защититься от ошибок создания таблиц on cluster без прямого указания бд, но видимо не судьба
  • https://t.me/clickhouse_ru
    @dmbesedin #48350 07:21 PM, 04 Apr 2018
    Подскажите в чем может быть дело: полгода бесперебойно работал сервер КХ, Вдруг невозможно приконектиться, но сервер работает, работу делает, логи пишет. Рестарт сервиса помог
  • @70532431 #48351 07:23 PM, 04 Apr 2018
    OOM
  • @70532431 #48352 07:24 PM, 04 Apr 2018
    или был достигнут лимит на подключения, как вариант
  • https://t.me/clickhouse_ru
    @dmbesedin #48353 07:25 PM, 04 Apr 2018
    Все подключения исправно закрываются, да и странно что за все время не возникало такой проблемы. И оом не убил бы процесс?
  • @70532431 #48354 07:28 PM, 04 Apr 2018
    убил бы, но если у вас systemd мог подняться сам
    я бы ещё проверил сеть к серверу - может, в ней дело было
  • https://t.me/clickhouse_ru
    @dmbesedin #48355 07:29 PM, 04 Apr 2018
    Локально пытался конектится, не давало.
  • https://t.me/clickhouse_ru
    @dmbesedin #48356 07:29 PM, 04 Apr 2018
    Рестарт помог, а поднялся после убийства процесса не помогло, тоже странно
  • @70532431 #48357 07:30 PM, 04 Apr 2018
    смотрите что в syslog/ messages системных
  • https://t.me/clickhouse_ru
    @dmbesedin #48358 07:30 PM, 04 Apr 2018
    Спасибо, посмотрю
  • @70532431 #48359 07:31 PM, 04 Apr 2018
    и ещё - у вас уровень логирования стандартный? просто стандартный логирует все запросы, и в случае недоступности дисковой подсистемы неизвестно, дал бы вообще совершить операцию, подлежащую логированию
  • https://t.me/clickhouse_ru
    @dmbesedin #48360 07:31 PM, 04 Apr 2018
    Да, стандартный
  • @70532431 #48361 07:34 PM, 04 Apr 2018
    рекомендую поменять на warning
    <logger>
    <level>warning</level>
    ...
    </logger>

    если стандартный - то есть trace, то анализируйте логи CH - их будет достаточно)

    может быть что угодно. в моей практике был случай, когда на сервере линки резервировались бондингом и ucarp, и при переключении на резервный линк из-за неправильной настройки обеспечивающих резервироание сервисов не работал и локалхост до переключения обратно на мастер линк.
  • https://t.me/clickhouse_ru
    @dmbesedin #48362 07:37 PM, 04 Apr 2018
    Спасибо, буду рыть в логах
  • https://t.me/clickhouse_ru
    @stufently #48363 07:38 PM, 04 Apr 2018
    ну и можно посмотреть просто dmesg там оом всегда есть
  • 05 April 2018 (205 messages)
  • @AS12389 #48365 12:41 AM, 05 Apr 2018
    Други
    А можно в clickhouse ужимать данные?
  • @AS12389 #48366 12:42 AM, 05 Apr 2018
    Наподобе aggregation, другими словами аггрегировать данные спустя какое-то время. Думаю, что мало кому нужны данные годичной давности с точности до 5 минут
  • https://t.me/clickhouse_ru
    @poslegm #48367 01:35 AM, 05 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48366 #48368 03:36 AM, 05 Apr 2018
    Нет, самостоятельно он так не умеет, но можно написать собственное решение которое будет пережимать данные.
  • https://t.me/clickhouse_ru
    @mrlamberg #48369 05:50 AM, 05 Apr 2018
    у меня ReplacingMergeTree перестала мержить данные
  • https://t.me/clickhouse_ru
    @mrlamberg #48370 05:51 AM, 05 Apr 2018
    ни автоматом ни через OPTIMIZE table
  • https://t.me/clickhouse_ru
    @mrlamberg #48371 05:51 AM, 05 Apr 2018
    если добавить final то возвращает нормально
  • https://t.me/clickhouse_ru
    @mrlamberg #48372 05:51 AM, 05 Apr 2018
    но всеравно не мержит
  • @milovidov_an #48373 05:51 AM, 05 Apr 2018
    Напишите
    SET optimize_throw_if_noop = 1;
    и запустите OPTIMIZE.

    Он напишет, почему не хочет мержить.
  • https://t.me/clickhouse_ru
    @mrlamberg #48374 05:53 AM, 05 Apr 2018
    Code: 388. DB::Exception: Received from localhost:9000, ::1. DB::Exception: There are no need to merge parts according to merge selector algorithm.
  • @milovidov_an #48375 05:54 AM, 05 Apr 2018
    Значит мержить слишком рано.
  • https://t.me/clickhouse_ru
    @mrlamberg #48376 05:54 AM, 05 Apr 2018
    но у меня select count(*) from table возвращает цифру больше чем select count(*) from table final
  • https://t.me/clickhouse_ru
    @mrlamberg #48377 05:54 AM, 05 Apr 2018
    уже 4 дня прошло
  • https://t.me/clickhouse_ru
    @mrlamberg #48378 05:54 AM, 05 Apr 2018
    как перестало мержить
  • https://t.me/clickhouse_ru
    @mrlamberg #48379 05:54 AM, 05 Apr 2018
    сервер перезапускал
  • https://t.me/clickhouse_ru
    @mrlamberg #48380 05:54 AM, 05 Apr 2018
    место свободное есть
  • https://t.me/clickhouse_ru
    @mrlamberg #48381 05:55 AM, 05 Apr 2018
    ночью нагрузки нет вообще
  • https://t.me/clickhouse_ru
    @mrlamberg #48382 05:55 AM, 05 Apr 2018
    а смержится должно примерно половина таблицы
  • @milovidov_an #48383 05:55 AM, 05 Apr 2018
    Фоновый мерж выполняется согласно некоторой эвристике, которая позволяет сэкономить количество перезаписи данных - если есть несколько кусков неравномерного размера, то он предпочитает подождать появления новых данных, а только потом мержить, вместо того, чтобы домерживать до конца.
  • @milovidov_an #48384 05:56 AM, 05 Apr 2018
    Можно форсировать мерж с помощью
    OPTIMIZE TABLE ... PARTITION ... FINAL
  • https://t.me/clickhouse_ru
    @mrlamberg #48385 05:57 AM, 05 Apr 2018
    а не планируется сделать optimize final для таблицы целиком?
  • @milovidov_an #48386 05:58 AM, 05 Apr 2018
    Нет.
  • https://t.me/clickhouse_ru
    @mrlamberg #48387 06:08 AM, 05 Apr 2018
    кинул новую порцию дублей, он начал мержить
  • https://t.me/clickhouse_ru
    @mrlamberg #48388 06:15 AM, 05 Apr 2018
    но в итоге недомержилось 5 записей
  • https://t.me/clickhouse_ru
    @mrlamberg #48389 06:17 AM, 05 Apr 2018
    и даже OPTIMIZE TABLE ... PARTITION ... FINAL
  • https://t.me/clickhouse_ru
    @mrlamberg #48390 06:18 AM, 05 Apr 2018
    не убрал эти 5 записей
  • https://t.me/clickhouse_ru
    @athathot #48391 06:23 AM, 05 Apr 2018
    у меня вот есть неодолимое желание получить шардинг в КХ, но без явовского зукипера. а есть где-то спеки, чего нам "напихонировать" , чтобы наступило счастье?
  • https://t.me/clickhouse_ru
    @stufently #48392 06:24 AM, 05 Apr 2018
    шардинг к зукиперу не имеет отношения
  • https://t.me/clickhouse_ru
    @stufently #48393 06:24 AM, 05 Apr 2018
    в зукипере только репликация
  • https://t.me/clickhouse_ru
    @mrlamberg #48394 06:24 AM, 05 Apr 2018
    Движок MergeTree поддерживает индекс по первичному ключу и по дате и обеспечивает возможность обновления данных в реальном времени.
  • https://t.me/clickhouse_ru
    @mrlamberg #48395 06:24 AM, 05 Apr 2018
    а давно так стало?
  • https://t.me/clickhouse_ru
    @stufently #48396 06:24 AM, 05 Apr 2018
    шардинг весь в конфиге и названии дистрибьютед таблицы настраивается
  • https://t.me/clickhouse_ru
    @mrlamberg #48397 06:25 AM, 05 Apr 2018
    именно часть про обновление в реальном времени
  • https://t.me/clickhouse_ru
    @athathot ↶ Reply to #48392 #48398 06:28 AM, 05 Apr 2018
    спасибо. почитаю
  • https://t.me/clickhouse_ru
    @athathot ↶ Reply to #48393 #48399 06:35 AM, 05 Apr 2018
    а чтобы селекты со всех шардов были прозрачными? для этого кипер не нужен разве?
  • https://t.me/clickhouse_ru
    @stufently #48400 06:36 AM, 05 Apr 2018
    селектам вообще зукипер не нужен
  • https://t.me/clickhouse_ru
    @stufently #48401 06:36 AM, 05 Apr 2018
    в чем прозрачность то , одинаковость реплик вы сами обеспечиваете если у вас нет зукипера
  • https://t.me/clickhouse_ru
    @stufently #48402 06:36 AM, 05 Apr 2018
    если вы про это конечнр
  • https://t.me/clickhouse_ru
    @athathot #48403 06:41 AM, 05 Apr 2018
    нет, мне не надо, чтобы на всех нодах было одинковое содержимое. нам достаточно. чтобы при обращении к любой выдавался полный сет со всех нод. вот этого хочется
  • Можно настроить шарды и делать запросы через Distibuted поверх них
  • @AlexanderMillin #48405 06:44 AM, 05 Apr 2018
    тогда у вас будут данные со всех нод в одном запросе
  • https://t.me/clickhouse_ru
    для этого зукипер не нужен , просто обычный шардинг с дистрибьютед
  • https://t.me/clickhouse_ru
    @athathot ↶ Reply to #48406 #48407 06:55 AM, 05 Apr 2018
    спасибо, я в библиотеку :)
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48397 #48408 06:56 AM, 05 Apr 2018
    Всегда так было
  • https://t.me/clickhouse_ru
    @mrlamberg #48409 06:56 AM, 05 Apr 2018
    странно
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48409 #48410 06:58 AM, 05 Apr 2018
    Скорее всего вы имеете ввиду обновление данных в таблице, тогда нет. Считайте что это про обновление данных по "F5" - можете писать и сразу же получать "актуальный" результат
  • https://t.me/clickhouse_ru
    @mrlamberg #48411 07:00 AM, 05 Apr 2018
    я просто инсерт делаю в MergeTable и он сразу заменяет старые на новые в зависимости от ключа?
  • https://t.me/clickhouse_ru
    @mrlamberg #48412 07:00 AM, 05 Apr 2018
    тогда в ReplacedMergeTable теряется смысл?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48411 #48413 07:02 AM, 05 Apr 2018
    Он ничего не меняет, вы можете делать запросы на чтение в реальном времени (данные обновляются в реальном времени)
  • https://t.me/clickhouse_ru
    @mrlamberg #48414 07:11 AM, 05 Apr 2018
    печально
  • https://t.me/clickhouse_ru
    @mrlamberg #48415 07:11 AM, 05 Apr 2018
    я думал он обновлять может
  • https://t.me/clickhouse_ru
    @mrlamberg #48416 07:12 AM, 05 Apr 2018
    тогда движок поддерживает не обновление в реальном времени, а добавление в реальном времени
  • https://t.me/clickhouse_ru
    @508124506 #48417 07:22 AM, 05 Apr 2018
    Привет. Подскажите пожалуйста, имеет ли смысл использовать тип UUID для хранения уникальных идентификаторов? Есть ли с ним какие то проблемы? В changelog репозитории CH указано, что поддержка UUID неполная.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48417 #48418 07:25 AM, 05 Apr 2018
    Проблем куча, используйте FixedString(16)
  • https://t.me/clickhouse_ru
    а можете привести пример, какие могут возникнуть проблемы с UUID ?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48419 #48420 07:40 AM, 05 Apr 2018
    Ломает репликацию, не работает CAST, хранит обратный набор байт и не совместим со стандартными UUIDTo* функциями, не работают операции сравнения, а так можно использовать )
  • https://t.me/clickhouse_ru
    понятно, спасибо )
  • https://t.me/clickhouse_ru
    @akomiagin #48422 07:57 AM, 05 Apr 2018
    UUID тип сейчас вообще частично сломан
  • https://t.me/clickhouse_ru
    @akomiagin #48423 07:58 AM, 05 Apr 2018
    поэтому в данный момент есть только вариант с FixedString
  • https://t.me/clickhouse_ru
    @akomiagin #48424 08:01 AM, 05 Apr 2018
    UUID field type #1770

    Looks like bug in new data type UUID. Used version 1.1.54327 I can create table with uuid field, insert data using simple string, representing uuid like '0c5049ab-a9fe-46c6-aee6-bcb5e414a19c' The problem in using UUID typed field in WHER...

  • https://t.me/clickhouse_ru
    @akomiagin #48425 08:07 AM, 05 Apr 2018
    Конечно очень хотелось бы чтобы разработчики исправили CAST оператор и операции сравнения для UUID. Жить бы стало проще. Может кто нибудь дать estimatation по срокам на эти баги?
  • https://t.me/clickhouse_ru
    @stufently #48426 08:10 AM, 05 Apr 2018
    Вчера сказали исправьте сами и пришлите пул реквест, так что со сроками все ясно, как только сам починишь
  • https://t.me/clickhouse_ru
    @akomiagin #48427 08:12 AM, 05 Apr 2018
    ))))
  • https://t.me/clickhouse_ru
    @andrey_konyaev #48428 09:13 AM, 05 Apr 2018
    Ловлю очень странное поведение
    `SELECT DISTINCT stack_trace
    FROM dfs.error
    WHERE emergency_datetime > toDateTime('2018-04-05 11:30:34')
    LIMIT 10
    Received exception from server (version 1.1.54370):
    Code: 171. DB::Exception: Received from localhost:9001, 127.0.0.1. DB::Exception: Block structure mismatch in UNION stream: different number of columns:
    stack_trace String String(size = 0)
    stack_trace String String(size = 0), emergency_datetime DateTime UInt32(size = 0).
    `
    `
    :) describe dfs.error
    DESCRIBE TABLE dfs.error
    ┌─name───────────────┬─type─────┬─default_type─┬─default_expression─┐
    │ incoming_message │ String │ │ │
    │ stack_trace │ String │ │ │
    │ emergency_date │ Date │ │ │
    │ emergency_datetime │ DateTime │ │ │
    └────────────────────┴──────────┴──────────────┴────────────────────┘
    4 rows in set. Elapsed: 0.001 sec.
    `
  • https://t.me/clickhouse_ru
    @andrey_konyaev #48429 09:14 AM, 05 Apr 2018
    version 1.1.54370.
  • https://t.me/clickhouse_ru
    @andrey_konyaev #48430 09:17 AM, 05 Apr 2018
    dfs.error - это Distrebuted таблица
  • https://t.me/clickhouse_ru
    @andrey_konyaev #48431 09:17 AM, 05 Apr 2018
    к локальной - работает
  • @kochetovnicolai #48432 09:22 AM, 05 Apr 2018
    похоже на это: https://github.com/yandex/ClickHouse/issues/2156
    но будет отлично, если вы добавите свой пример со структурой таблиц и конфигурацией кластера, на котором падает запрос
    [Exception] DB::Exception: Block structure mismatch in UNION stream: different number of columns · Issue #2156 · yandex/ClickHouse

    env clickhosue-server:version 1.1.54370 centerlog is a distributed table table structure table centerlog ( type String, date Date, time DateTime, appname String, module String, category String, sub...

  • @evgeje #48433 09:26 AM, 05 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @andrey_konyaev #48434 09:26 AM, 05 Apr 2018
    Пойду откатываться(((((
  • @evgeje #48435 09:27 AM, 05 Apr 2018
    ребят, подскажите, когда определен внешний словарь с источником по https с lazy_load false и он почему-то не загружается, КХ считает что таймаут, есть возможность поставить какойто retry может быть?
  • @kochetovnicolai #48436 09:34 AM, 05 Apr 2018
    есть параметр lifetime, можно его покрутить. но меньше 5 секунд, кажется, не получится сделать
    а еще можно сделать system reload dictionary dict_name
    https://clickhouse.yandex/docs/en/dicts/external_dicts_dict_lifetime/#dicts-external_dicts_dict_lifetime
  • @evgeje #48437 09:37 AM, 05 Apr 2018
    он кстати не ходит к словарю который не смог загрузить повторно, lifetime стоит 300
  • @evgeje #48438 09:37 AM, 05 Apr 2018
    и если к нему обращаться например через select dictGetString ... - запрос виснет
  • https://t.me/clickhouse_ru
    @windoozatnick #48439 09:37 AM, 05 Apr 2018
    Коллеги, а по массивам можно делать IN , или обязательно arrayExists ?
  • https://t.me/clickhouse_ru
    @alexanderzaitsev #48440 09:38 AM, 05 Apr 2018
    has()
  • да, я неверно сказал. если словарь не загружается, то время следующей попытки увеличивается экспоненциально
  • @evgeje #48442 09:47 AM, 05 Apr 2018
    исследование проблемы показало - если 1 словарь не загружается из списка - ни один из словарей не работает даже если был загружен успешно
    ну и system reload dictionary dict_name тоже не помогает
  • а вот это странно. запрос должне возвращать ошибку, что словарь не загружен
  • сейчас попытаюсь воспроизвести
  • воспроизвести не получилось. пример:

    ELECT dictGetString('fail', 'String_', toUInt64(2))

    Received exception from server (version 1.1.54373):
    Code: 1000. DB::Exception: Received from localhost:9004, ::1. DB::Exception: Exception: Connections to all replicas failed: test@localhost:12345 as user 123. Stack trace:

    SELECT dictGetString('mysql_flat_5', 'String_', toUInt64(2))

    ┌─dictGetString(\'mysql_flat_5\', \'String_\', toUInt64(2))─┐
    │ 18198135717204167749 │
    └───────────────────────────────────────────────────────────┘

    Можете поделиться какой-нибудь минимальной конфигурацией, на которой такое происходит?
  • https://t.me/clickhouse_ru
    @decaseal #48446 10:11 AM, 05 Apr 2018
    Вопрос по StorageFile.
    Почему нельзя создать таблицу из файла на сервере?

    CREATE TABLE fileTest
    (
    id UInt32,
    data String
    )
    ENGINE = File(TabSeparated, '/path_to_clickhouse/data/test.tsv')

    DB::Exception: Using file descriptor or user specified path as source of storage isn't allowed for server daemons
  • @evgeje #48447 10:12 AM, 05 Apr 2018
    у меня сорсы - tsv'шки через https за nginx
    20 словарей. если указаны все - один обязательно стрельнет timeout'ом

    трейс -
    11. /usr/bin/clickhouse-server(DB::ExternalDictionaries::ExternalDictionaries(std::unique_ptr<DB::IExternalLoaderConfigRepository, std::default_delete<DB::IExternalLoaderConfigReposit
    2018.04.05 08:31:03.549125 [ 4 ] <Error> BaseDaemon: ########################################
    2018.04.05 08:31:03.549146 [ 4 ] <Error> BaseDaemon: (from thread 1) Received signal Aborted (6).
    2018.04.05 08:50:51.446143 [ 1 ] <Error> ExternalDictionaries: Cannot create external dictionary 'section' from config path /etc/clickhouse-server/dictionaries.xml: Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = Timeout: connect timed out: XXX:443, e.what() = Timeout
    2018.04.05 08:50:51.446929 [ 1 ] <Error> ExternalDictionaries: reloadFromConfigFile has thrown while reading from /etc/clickhouse-server/dictionaries.xml: Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = Timeout: connect timed out: XXX:443, e.what() = Timeout
  • https://t.me/clickhouse_ru
    @SergeyLossev #48448 10:14 AM, 05 Apr 2018
    Народ, а подскажите, в чем может быть проблема и куда копать, если КХ перестал отвечать и отдавать Ok по адресу сайт:порт?
  • https://t.me/clickhouse_ru
    @stufently #48449 10:14 AM, 05 Apr 2018
    ну посмотрите ошибки в нгинксе
  • https://t.me/clickhouse_ru
    посмотреть оом киллер и логи кх
  • https://t.me/clickhouse_ru
    @SergeyLossev #48451 10:14 AM, 05 Apr 2018
    оом киллер? Это че?
  • @evgeje #48452 10:14 AM, 05 Apr 2018
    Puma ну а то что из-за одного таймаута не работает всё это как-бы ок считается ?
  • https://t.me/clickhouse_ru
    @stufently #48453 10:14 AM, 05 Apr 2018
    линукс киллер если память кончилась
  • https://t.me/clickhouse_ru
    ну если словаря нет то как то сложно работать всему что на него завязано
  • https://t.me/clickhouse_ru
    вроде и не было такого, создаете таблицу, заливаете данные и з файла кх клиентом
  • @evgeje #48456 10:15 AM, 05 Apr 2018
    на него ничего не завязано. и при этом ни один другой словарь не работает , хотя был загружен успешно
  • https://t.me/clickhouse_ru
    @gukasov #48461 10:16 AM, 05 Apr 2018
    Joined.
  • @evgeje #48462 10:17 AM, 05 Apr 2018
    в nginx ошибок никаких нет, там всё работает без проблем.
    каждый раз рандомный словарь отваливается при старте КХ
  • https://t.me/clickhouse_ru
    @SergeyLossev #48463 10:18 AM, 05 Apr 2018
    Ха, а знаете какой прикол - если захожу со Старбакса, ничего не пишет и висит, а если с расшаренного Андроида - пишет Ok =)
  • https://t.me/clickhouse_ru
    @gukasov #48464 10:18 AM, 05 Apr 2018
    Коллеги, привет. В деве залил в БД фейковые данные. После этого стала вылетать такая ошибка абсолютно при любом запросе. Даже если ввести DROP DATABASE. В чем может быть проблема?
  • @60086887 #48465 10:25 AM, 05 Apr 2018
    с данными это не связано, у тебя есть вью и нет от него sql в метадате
  • https://t.me/clickhouse_ru
    @gukasov #48466 10:29 AM, 05 Apr 2018
    Понял, спасибо
  • специально запрещено, чтобы не читать произвольные файлы. можно создать с именем по умолчанию
  • @evgeje #48468 10:42 AM, 05 Apr 2018
    @kochetovnicolai всё решилось установкой <http_connection_timeout>10</http_connection_timeout>
    который по дефолту равен единице
    но думаю что когда недоступны все словари из-за одного это не айс
  • https://t.me/clickhouse_ru
    @docdvz #48469 10:42 AM, 05 Apr 2018
    Joined.
  • @kochetovnicolai #48470 10:43 AM, 05 Apr 2018
    наверно, все словари идут одновременно обновляться, и один не успевает по таймауту
  • @evgeje #48471 10:43 AM, 05 Apr 2018
    возможно таймаут идет один на всё сразу?
  • @kochetovnicolai #48472 10:44 AM, 05 Apr 2018
    когда все словари недоступы из-за одного, конечно, плохо. попробую воспроизвести конкретно для http словарей
  • скорее всего нет. на всякий случай проверю
  • @evgeje #48474 10:45 AM, 05 Apr 2018
    да, и не забывайте, что запрос к одному из таких "недоступных" словарей виснет(более 5и минут, потом ctrl+c) и ничего не отдает
  • @evgeje #48475 10:45 AM, 05 Apr 2018
    в логах, в такой ситуации, соответственно тоже ничего нет
  • @kochetovnicolai #48476 10:46 AM, 05 Apr 2018
    словарь cached?
  • @evgeje #48477 10:46 AM, 05 Apr 2018
    hashed
  • https://t.me/clickhouse_ru
    Аргумент добавлен и специально запрещен, этот тезиз непонятен
  • @kochetovnicolai #48479 11:07 AM, 05 Apr 2018
    в clickhouse-local должен работать
  • https://t.me/clickhouse_ru
    У вас один сервер (чей hostName()) выдаётся в итоге мёржит результаты с разных серверов (на которые указывает Distributed)
  • https://t.me/clickhouse_ru
    @Krashuevina #48484 11:18 AM, 05 Apr 2018
    это ожидаемое поведение
  • https://t.me/clickhouse_ru
    @Krashuevina #48485 11:19 AM, 05 Apr 2018
    Если вы в консольном клиенте выставите set distributed_group_by_no_merge=1; и выполните внутренний запрос, то там появятся hostname
  • https://t.me/clickhouse_ru
    status_updated входит в выражение шардинга для Distributed?
  • @VitalVas #48490 12:46 PM, 05 Apr 2018
    Я тут надыбал занимательную ошибку
  • @VitalVas #48491 12:47 PM, 05 Apr 2018
    2018.04.05 12:44:23.383013 [ 8 ] <Error> HTTPHandler: Code: 195, e.displayText() = DB::Exception: User default is not allowed to connect from address ::ffff:10.21.90.20, e.what() = DB::Exception, Stack trace:

    0. /usr/bin/clickhouse-server(StackTrace::StackTrace()+0x15) [0x73178b5]
    1. /usr/bin/clickhouse-server(DB::Exception::Exception(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int)+0x1e) [0x19ca19e]
    2. /usr/bin/clickhouse-server(DB::SecurityManager::authorizeAndGetUser(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Poco::Net::IPAddress const&) const+0x5aa) [0x6729a4a]
    3. /usr/bin/clickhouse-server(DB::Context::setUser(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Poco::Net::SocketAddress const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x80) [0x666d310]
    4. /usr/bin/clickhouse-server(DB::HTTPHandler::processQuery(Poco::Net::HTTPServerRequest&, HTMLForm&, Poco::Net::HTTPServerResponse&, DB::HTTPHandler::Output&)+0x542) [0x19e4f02]
    5. /usr/bin/clickhouse-server(DB::HTTPHandler::handleRequest(Poco::Net::HTTPServerRequest&, Poco::Net::HTTPServerResponse&)+0x397) [0x19e9aa7]
    6. /usr/bin/clickhouse-server(Poco::Net::HTTPServerConnection::run()+0x335) [0x7632085]
    7. /usr/bin/clickhouse-server(Poco::Net::TCPServerConnection::start()+0xe) [0x762ad4e]
    8. /usr/bin/clickhouse-server(Poco::Net::TCPServerDispatcher::run()+0x165) [0x762b115]
    9. /usr/bin/clickhouse-server(Poco::PooledThread::run()+0x76) [0x73e6f36]
    10. /usr/bin/clickhouse-server(Poco::ThreadImpl::runnableEntry(void*)+0x37) [0x73e32a7]
    11. /usr/bin/clickhouse-server() [0x76fcfae]
    12. /lib/x86_64-linux-gnu/libpthread.so.0(+0x76b9) [0x7f77de1ed6b9]
    13. /lib/x86_64-linux-gnu/libc.so.6(clone+0x6c) [0x7f77ddc1a41c]
  • @firej #48492 12:48 PM, 05 Apr 2018
    привет! у меня тут зукипер сломался походу и теперь в логах CH вижу кучу таких сообщений -
    (ReplicatedMergeTreeQueue): Not executing log entry for part 20180316_18956_102318_13 because its size (38.99 GiB) is greater than current maximum (19.80 MiB).
  • @firej #48493 12:48 PM, 05 Apr 2018
    есть вообще шанс, что оно само починится?
  • @firej #48494 12:50 PM, 05 Apr 2018
    или может гдето можно подкрутить чтонибудь
  • @VitalVas #48495 12:54 PM, 05 Apr 2018
    при этом...
    [12:53] icinga-labs:~ (✓)# curl -I http://10.27.4.12:8123
    HTTP/1.1 200 OK
    Date: Thu, 05 Apr 2018 12:53:42 GMT
    Connection: Keep-Alive
    Keep-Alive: timeout=3
    Content-Type: text/html; charset=UTF-8
    Content-Length: 4
  • есть шанс, что получится позже, если сейчас идет много мержей. а еще, возможно, на какой-нибудь реплике выставлен max_bytes_to_merge_at_max_space_in_pool меньше, чем у остальных
  • @firej #48497 12:57 PM, 05 Apr 2018
    нет, не выставлен
  • @firej #48498 12:58 PM, 05 Apr 2018
    и через 10 минут почемуто зукипер в итоге вообще помирает
  • https://t.me/clickhouse_ru
    @stufently #48499 12:58 PM, 05 Apr 2018
    а причина смерти ?
  • наверно, в users.xml этот адрес не прописан
  • https://t.me/clickhouse_ru
    @stufently #48501 12:58 PM, 05 Apr 2018
    память , проц, место на диске?
  • @VitalVas ↶ Reply to #48500 #48502 12:59 PM, 05 Apr 2018
    да, он не прописан
  • @VitalVas #48503 12:59 PM, 05 Apr 2018
    там нужно по http отдавать 401 код для таких случаев
  • @VitalVas #48504 01:00 PM, 05 Apr 2018
    и не паниковать....
  • @firej ↶ Reply to #48499 #48505 01:00 PM, 05 Apr 2018
    сложно сказать, в определенный момент он говорит
    2018-04-05 12:53:06,115 - INFO [QuorumPeer[myid=2]/0:0:0:0:0:0:0:0:2181:Leader@496] - Shutting down
    2018-04-05 12:53:06,116 - INFO [QuorumPeer[myid=2]/0:0:0:0:0:0:0:0:2181:Leader@502] - Shutdown called
  • @firej #48506 01:00 PM, 05 Apr 2018
    java.lang.Exception: shutdown Leader! reason: Not sufficient followers synced, only synced with sids: [ 2 ]
  • да, звучит логично
  • @VitalVas ↶ Reply to #48507 #48508 01:10 PM, 05 Apr 2018
    сделаете?)
  • @kochetovnicolai #48509 01:11 PM, 05 Apr 2018
    я бы сделал. надо с коллегами посоветоваться
  • https://t.me/clickhouse_ru
    @vse_chetk0 #48510 01:22 PM, 05 Apr 2018
    Коллеги подскажите можно ли при билде image с КХ сразу выполнить операции создание схемы БД

    пытаюст сделать вот так:
    RUN cat schema.sql | clickhouse-server --client --database=default

    но появляется ошибка
    Code: 210. DB::NetException: Connection refused: (localhost:9000, 127.0.0.1)
  • https://t.me/clickhouse_ru
    @emakarov #48511 01:23 PM, 05 Apr 2018
    Артем имеется в виду билд докера?
  • https://t.me/clickhouse_ru
    @stufently #48512 01:23 PM, 05 Apr 2018
    Да там же команда RUN из докер билд файла, но там по сути же кх не запущен
  • https://t.me/clickhouse_ru
    @stufently #48513 01:24 PM, 05 Apr 2018
    Надо как то хитро его запустить и потом через && заливать и потом убить его
  • https://t.me/clickhouse_ru
    да
  • https://t.me/clickhouse_ru
    @emakarov #48515 01:27 PM, 05 Apr 2018
    только при запуске
  • https://t.me/clickhouse_ru
    @emakarov #48516 01:37 PM, 05 Apr 2018
    думаю, это возможно только если вы напишете на C++ некий код, который будет использовать clickhouse как библиотеку ))
  • https://t.me/clickhouse_ru
    @emakarov #48517 01:39 PM, 05 Apr 2018
    но вообще просто если вам надо иметь структуру базы после запуска то надо сделать скрипт который будет при запуске образа исполняться
    билд это по сути сборка, без работы
  • https://t.me/clickhouse_ru
    @kshvakov #48518 01:41 PM, 05 Apr 2018
    Можно пртосто при билде в /var/lib/clickhouse/metadata/ положить нужные sql
  • https://t.me/clickhouse_ru
    @aloneibreak #48519 01:53 PM, 05 Apr 2018
    привет
    есть такая проблема
    2 шарда по 2 реплики
    на всех шардах есть таблица MergeTree
    так же на всех шардах есть таблица Distributed которая смотрит в эти MergeTree
    в какой-то момент запросы на первый шард начинают возвращать ошибку о том, что якобы на репликах второго шарда нет MergeTree таблиц которые он ищет

    Code: 279. DB::Exception: Received from localhost:9000, 127.0.0.1. DB::NetException. DB::NetException: All connection tries failed. Log:
    There is no table .tablename on server: db4.hostname:9000

    лечится пересозданием Distributed таблицы на первом шарде, но помогает ненадолго. через какое-то время проблема повторяется
    с чем может быть связано?
  • https://t.me/clickhouse_ru
    можно подробнее, у меня в этой директории лежит 2 папки: default и system
  • https://t.me/clickhouse_ru
    @mainnika #48521 01:55 PM, 05 Apr 2018
    А можно ли в LIMIT использовать переменную описанную в WITH? Пробую — получаю Syntax error. Что-то делаю не так или нельзя?
  • @kochetovnicolai #48522 01:58 PM, 05 Apr 2018
    нельзя. возможно, не так сложно добавить
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48520 #48523 01:59 PM, 05 Apr 2018
    например вы хотите создать БД test, а в ней таблицу table, делаете так:

    создаете файл test.sql
    ATTACH DATABASE test
    ENGINE = Ordinary

    файл test/table.sql

    ATTACH TABLE table /* синтаксис как и у CREATE TABLE*/
    (
    Date Date,
    ...
    )
    ENGINE = MergeTree(Date, Date, 8192)
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #48522 #48524 01:59 PM, 05 Apr 2018
    Пулл реквесты приветствуются?
  • @kochetovnicolai #48525 01:59 PM, 05 Apr 2018
    конечно!
  • @kochetovnicolai #48526 02:00 PM, 05 Apr 2018
    тогда, видимо, придется делать поддержку произвольного константного выражения для limit
  • https://t.me/clickhouse_ru
    @mainnika #48527 02:02 PM, 05 Apr 2018
    Интересно было бы разобраться и поконтрибутить, надеюсь найду время
  • странная ситуация. а на db4.hostname:9000 в логах видно, что запрос до нее доходит?
    нет ли еще одного процесса, слушающего 9000?
  • https://t.me/clickhouse_ru
    на db4 в логах нет этих запросов
  • https://t.me/clickhouse_ru
    @aloneibreak #48531 02:34 PM, 05 Apr 2018
    тут важный нюанс - на этих же серверах есть другая пара MergeTree:Distributed таблиц и с ней все впорядке
  • https://t.me/clickhouse_ru
    @aloneibreak #48532 02:37 PM, 05 Apr 2018
    еще вот такое странное в логах
    Code: 84, e.displayText() = DB::Exception: Directory /data/clickhouse/data/mydb/mytable/tmp_merge_20180402_20180408_547040_547110_12/ already exists
  • https://t.me/clickhouse_ru
    спасибо, отличная идея, а ты не знаешь почему билд крешится когда я помещаю файлы в директорию /var/lib/clickhouse/metadata/default ?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48533 #48534 02:40 PM, 05 Apr 2018
    Нет, а какая ошибка?
  • https://t.me/clickhouse_ru
    в stdout ни чего полезного не падает, в dockerfile следующие команды

    COPY default/ /var/lib/clickhouse/metadata/default/

    USER root
    RUN chown -R clickhouse:clickhouse /var/lib/clickhouse/metadata/default/
    USER clickhouse
  • у вас несколько zookeeper серверов?
  • https://t.me/clickhouse_ru
    да
  • @AlexanderMillin #48538 02:48 PM, 05 Apr 2018
    а они точно видят друг-друга? и не запущены в single mode?
  • https://t.me/clickhouse_ru
    видят точно. в логах видно что они пингуют друг друга
  • https://t.me/clickhouse_ru
    telnet zookeeper-node 2181 и сказать там mntr
  • https://t.me/clickhouse_ru
    На одном из узлов будут в числе прочего строки типа:
    zk_followers 2
    zk_synced_followers 2
    zk_pending_syncs 0
  • https://t.me/clickhouse_ru
    Тогда точно зукиперы друг друга видят
  • https://t.me/clickhouse_ru
    @aloneibreak #48543 02:59 PM, 05 Apr 2018
    есть такое, да
    zk_followers 3
    zk_synced_followers 3
    zk_pending_syncs 0
  • Просто по симптомам их действия не согласуются по какой-то причине
  • https://t.me/clickhouse_ru
    @aloneibreak #48545 03:18 PM, 05 Apr 2018
    прям вот постоянно воспроизводится (
    2018.04.05 18:15:23.426996 [ 156 ] <Warning> ConnectionPoolWithFailover: There is no table . mytable_merge_tree on server: db2:9000,
    2018.04.05 18:15:23.427776 [ 156 ] <Warning> ConnectionPoolWithFailover: There is no table . mytable_merge_tree on server: db4:9000,
    2018.04.05 18:15:23.450765 [ 33 ] <Error> executeQuery: Code: 279, e.displayText() = DB::NetException: All connection tries failed. Log:

    There is no table . mytable_merge_tree on server: db2:9000,
    There is no table . mytable_merge_tree on server: db4:9000,

    , e.what() = DB::NetException (from 127.0.0.1:60784) (in query: select count() from mytable), Stack trace:
  • https://t.me/clickhouse_ru
    @aloneibreak #48546 03:19 PM, 05 Apr 2018
    только на одной ноде. на второй ноде этого же шарда все в порядке.
    ни ошибок, ни запросов в логах на остальных нодах не происходит в момент этого запроса
  • интересно еще то, что слева и справа от точки должны быть имя базы и таблицы
  • https://t.me/clickhouse_ru
    mytable_merge_tree - условное имя
  • @kochetovnicolai #48549 03:26 PM, 05 Apr 2018
    понял
  • https://t.me/clickhouse_ru
    @pavel_odintsov #48550 04:21 PM, 05 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @pavel_odintsov #48551 04:21 PM, 05 Apr 2018
    Joined.
  • @firej #48552 04:50 PM, 05 Apr 2018
    товарищи, у меня сервер походу потерял кудато кусок базы
  • @firej #48553 04:50 PM, 05 Apr 2018
    2018.04.05 19:49:14.281393 [ 16 ] <Trace> rt.redir_lr (StorageReplicatedMergeTree): Executing log entry to merge parts 20180209_61656_61656_0, 20180209_61657_61657_0, 20180209_61658_61658_0, 20180209_61659_61659_0, 20180209_61660_61660_0, 20180209_61661_61661_0, 20180209_61662_61662_0, 20180209_61663_61663_0 to 20180209_61656_61663_1
    2018.04.05 19:49:14.281410 [ 16 ] <Warning> rt.redir_lr (StorageReplicatedMergeTree): Part 20180209_61656_61656_0 is covered by 20180209_61656_61661_1 but should be merged into 20180209_61656_61663_1. This shouldn't happen often.
    2018.04.05 19:49:14.281416 [ 16 ] <Debug> rt.redir_lr (StorageReplicatedMergeTree): Don't have all parts for merge 20180209_61656_61663_1; will try to fetch it instead
    2018.04.05 19:49:14.282019 [ 198 ] <Warning> rt.redir_lr (StorageReplicatedMergeTree, PartCheckThread): Checking part 20180209_61656_61663_1
    2018.04.05 19:49:14.282030 [ 16 ] <Information> rt.redir_lr (StorageReplicatedMergeTree): DB::Exception: No active replica has part 20180209_61656_61663_1 or covering part
    2018.04.05 19:49:14.282165 [ 198 ] <Warning> rt.redir_lr (StorageReplicatedMergeTree, PartCheckThread): Checking if anyone has a part covering 20180209_61656_61663_1.
    2018.04.05 19:49:14.282500 [ 198 ] <Warning> rt.redir_lr (StorageReplicatedMergeTree, PartCheckThread): Found parts with the same min block and with the same max block as the missing part 20180209_61656_61663_1. Hoping that it will eventually appear as a result of a merge.
  • @firej #48554 04:50 PM, 05 Apr 2018
    и теперь не может его найти
  • @firej #48555 04:50 PM, 05 Apr 2018
    может ему можно както сказать что все уже, фиг с ним? )
  • @firej #48556 04:51 PM, 05 Apr 2018
    зукипер разросся до 386 гигов, по идее такого ведь не должно быть :(
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #48556 #48557 04:53 PM, 05 Apr 2018
    С настройками по умолчанию, ZooKeeper является бомбой замедленного действия:
    Сервер ZooKeeper не будет удалять файлы со старыми снепшоты и логами при использовании конфигурации по умолчанию (см. autopurge), это является ответственностью оператора.
    Эту бомбу нужно обезвредить.
  • @firej #48558 04:54 PM, 05 Apr 2018
    упс
  • https://t.me/clickhouse_ru
    @Shegloff #48559 04:54 PM, 05 Apr 2018
  • @firej #48560 04:55 PM, 05 Apr 2018
    угу, спасибо ) по autopurge нашел
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #48552 #48561 04:57 PM, 05 Apr 2018
    вы пробовали эти данные поселектить из базы, их правда нет? говорят, такие сообщения это норма для зукипера, на них не стоит обращать внимания
  • @firej #48562 04:57 PM, 05 Apr 2018
    ну так это кликхауз ругается вроде, не?
  • @firej #48563 04:58 PM, 05 Apr 2018
    мне не очень понятно как их селектить в зукипере
  • https://t.me/clickhouse_ru
    @Shegloff #48564 05:00 PM, 05 Apr 2018
    в самом кликхаусе
  • https://t.me/clickhouse_ru
    @Shegloff #48565 05:00 PM, 05 Apr 2018
    данные на репликах норм?
  • https://t.me/clickhouse_ru
    @Shegloff #48566 05:01 PM, 05 Apr 2018
    в system.parts можно найти этот кусок и посмотреть
  • https://t.me/clickhouse_ru
    @Shegloff #48567 05:01 PM, 05 Apr 2018
    есть ли он, скока там строк и размер, и вообще как он себя чувствует, active или как
  • @firej #48568 05:06 PM, 05 Apr 2018
    хм ок, спс
    я включил autopurge и зукипер похудел до 105 мегабайт
  • @firej #48569 05:06 PM, 05 Apr 2018
    теперь вот думаю - это хорошо или плохо )
  • https://t.me/clickhouse_ru
    @Shegloff #48570 05:07 PM, 05 Apr 2018
    👍
  • https://t.me/clickhouse_ru
    @den_crane #48571 05:59 PM, 05 Apr 2018
    а параметры use_uncompressed_cache /uncompressed_cache_size динамические? или нужен рестарт?
  • https://t.me/clickhouse_ru
    @kshvakov #48572 06:33 PM, 05 Apr 2018
    Да, нужен
  • https://t.me/clickhouse_ru
    Это нормально 🙂
  • https://t.me/clickhouse_ru
    @tarabanton #48574 06:54 PM, 05 Apr 2018
    ZK не хранит данных как таковых же
  • @firej #48575 06:54 PM, 05 Apr 2018
    хм ну а что он хранит? ) данных 10TB )
  • https://t.me/clickhouse_ru
    @tarabanton #48576 06:55 PM, 05 Apr 2018
    информацию о БД, задания
  • https://t.me/clickhouse_ru
    @tarabanton #48577 06:55 PM, 05 Apr 2018
    сервисные и координационные нужды обеспечивает
  • https://t.me/clickhouse_ru
    @tarabanton #48578 07:02 PM, 05 Apr 2018
    Я за zk начал следить после печального опыта эксплуатации ранних версий kafka, autopurge ещё опции в конфигами не было. Мой "рекорд" - под 2 терабайта снэпшотов
  • https://t.me/clickhouse_ru
    @den_crane #48579 08:56 PM, 05 Apr 2018
    работает v1.1.54292 (Debian GNU/Linux 9 (stretch) + mariadb-client-10.1) ходит за словарями к percona 5.7
    обновляю до 54343 получаю: external dictionary: Poco::Exception. Code: 1000, e.code() = 2027, e.displayText() = mysqlxx::BadQuery: Malformed packet
    (from thread 1) Received signal Segmentation fault (11).
    Address: NULL pointer.
    ....
    clickhouse-server(DB::MySQLBlockInputStream::MySQLBlockInputStream(mysqlxx::Pool::Entry const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&,
    DB::Block const&, unsigned long)+0x9b) [0x65cfeeb]

    заменил на mysql-client 5.7 не помогло.

    В итоге вернул v1.1.54292.
    Не понимаю что ему надо-то? mysql-client 5.5 ?
  • https://t.me/clickhouse_ru
    @d60e87b4 #48580 11:42 PM, 05 Apr 2018
    Joined.
  • 06 April 2018 (153 messages)
  • https://t.me/clickhouse_ru
    @anuzhny #48581 06:20 AM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @anuzhny #48582 06:21 AM, 06 Apr 2018
    Коллеги, добрый день! Подскажите, есть ли официальная поддрежка решения clickhous или только комюнити ?
  • https://t.me/clickhouse_ru
    @leidruid #48583 06:21 AM, 06 Apr 2018
    Ещё на зимнем митапе была информация, что в России нет поддержки
  • https://t.me/clickhouse_ru
    @leidruid #48584 06:22 AM, 06 Apr 2018
    Зарубежом Altinity вроде занимается
  • https://t.me/clickhouse_ru
    @fabura #48585 06:22 AM, 06 Apr 2018
    https://www.altinity.com/clickhouse/ эти ребята вроде что-то типа такого делают, может ошибаюсь
  • https://t.me/clickhouse_ru
    Альтинити так-то русские ребята, думаю и в России смогут
  • https://t.me/clickhouse_ru
    @anuzhny #48587 06:24 AM, 06 Apr 2018
    спасибо
  • https://t.me/clickhouse_ru
    @BloodJazMan #48588 06:25 AM, 06 Apr 2018
    а какая именно поддержка нужна?
  • https://t.me/clickhouse_ru
    @BloodJazMan #48589 06:26 AM, 06 Apr 2018
    ну то есть у вас уже есть инсталяция CH и у вас какие то проблемы? или вас надо платно проконсультировать на тему подойдет ли CH под ваш workload?
    или вас интересует мониторинг CH 24x7 ?
  • https://t.me/clickhouse_ru
    @stufently #48590 06:28 AM, 06 Apr 2018
    Обычно ентерпрайзу надо и то и то и побольше
  • https://t.me/clickhouse_ru
    @anuzhny ↶ Reply to #48590 #48591 06:39 AM, 06 Apr 2018
    Да верно, комплексный подход. Поставить, настроить и тд сами можем, но в случае проблем багов, необходимо обеспечивать решения, которые бы не приводили к отказу или потери данных.
  • https://t.me/clickhouse_ru
    @pixelbender #48592 06:51 AM, 06 Apr 2018
    Привет, я все с теми же неожиданными рестартами, заметил что они происходят как-то по расписанию:
    2018.04.06 01:00:01.488274 [ 509 ] <Information> Application: Received termination signal (Terminated)
    2018.04.06 02:00:02.012034 [ 508 ] <Information> Application: Received termination signal (Terminated)
    2018.04.06 03:00:02.183767 [ 510 ] <Information> Application: Received termination signal (Terminated)
    2018.04.06 04:00:02.502462 [ 4188 ] <Information> Application: Received termination signal (Terminated)
  • https://t.me/clickhouse_ru
    @pixelbender #48593 06:51 AM, 06 Apr 2018
    Кто знает почему может CH рестартиться сам по себе?
  • https://t.me/clickhouse_ru
    @pixelbender #48594 06:52 AM, 06 Apr 2018
    OOM киллер не убивал
  • https://t.me/clickhouse_ru
    крон, скорее всего
  • https://t.me/clickhouse_ru
    Уж больно регулярно срабатывает
  • https://t.me/clickhouse_ru
    @vse_chetk0 #48597 07:13 AM, 06 Apr 2018
    Коллеги а как можно быстро автоматически создать схему БД в КХ , я так поманию что клиент командной строки не может выполнить больше одной операции за раз ? я хотел сделать вот так , но это больше одной операции он не выполняет

    cat /schema.sql | clickhouse-server --client
  • https://t.me/clickhouse_ru
    @ivmaks ↶ Reply to #48597 #48598 07:13 AM, 06 Apr 2018
    Разделители добавить ;
  • https://t.me/clickhouse_ru
    @stufently #48599 07:13 AM, 06 Apr 2018
    multi-query есть параметр
  • https://t.me/clickhouse_ru
    @stufently #48600 07:14 AM, 06 Apr 2018
    и можно много в схема sql положить
  • @70532431 #48601 07:14 AM, 06 Apr 2018
    Кто-то раньше писал, что в пакете с CH идут скрипты, которые рестартят сервис, если он умирает.
  • https://t.me/clickhouse_ru
    @stufently #48602 07:15 AM, 06 Apr 2018
    это наверно в системд надо смотреть
  • https://t.me/clickhouse_ru
    Да, но они чаще рестартят при умирании.
  • https://t.me/clickhouse_ru
    @ivmaks ↶ Reply to #48601 #48604 07:15 AM, 06 Apr 2018
    В кроне было, сейчас вроде закомментирован
  • https://t.me/clickhouse_ru
    @ivmaks ↶ Reply to #48602 #48605 07:15 AM, 06 Apr 2018
    Да, распавн
  • https://t.me/clickhouse_ru
    @pixelbender #48606 07:43 AM, 06 Apr 2018
    CREATE TABLE requests (
    request_date Date MATERIALIZED toDate(request_time),
    request_time DateTime,
    request_uri String
    ) ENGINE=MergeTree(request_date, (request_time, request_uri), 8192);

    SELECT * FROM requests ORDER BY request_date DESC LIMIT 10;
  • https://t.me/clickhouse_ru
    @pixelbender #48607 07:43 AM, 06 Apr 2018
    Запрос видимо поднимает всю таблицу? Как такое оптимизировать? ...
  • https://t.me/clickhouse_ru
    @goversus #48608 08:06 AM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    WHERE
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48582 #48610 08:23 AM, 06 Apr 2018
    Есть Altinity, официальный партнер Яндекса. Подробнее можете у @alexanderzaitsev узнать
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48602 #48611 08:24 AM, 06 Apr 2018
    Это в cron.d нужно смотреть
  • https://t.me/clickhouse_ru
    @aloneibreak #48612 08:31 AM, 06 Apr 2018
    Подскажите пожалуйста хотя бы куда копать
    Есть два шарда по две реплики КХ
    на все репликах созданы MergeTree таблицы mytable_real
    поверх них на всех репликах созданы Distributed таблицы mytable
    какое-то время все работает хорошо но потом одна из реплик начинает сходить с ума
    например:
    - при запросе select count() from mytable выдает ошибку об отсутствии таблицы mytable_real на втором шарде
    - при insert'e в mytable выдает ошибку об отсутствии колонки в таблице mytable_real. при это колонка присутствует и вставка непосредственно в mytable_real происходит без проблем
  • @kochetovnicolai #48613 08:53 AM, 06 Apr 2018
    а что говорит
    sudo netstat -tulpn | grep :9000
    на каждой реплике? нет ли там нескольких слушающих процессов?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48612 #48614 08:54 AM, 06 Apr 2018
    Какая версия КХ? Железо или докер и прочее? Адреса как ip прописаны или именами (если второе то возможно по хостнейму выдаются разные ip и сервер начинает ходить не туда). Вообще старнное поведение для Distributed, там все очень просто
  • https://t.me/clickhouse_ru
    версия 1.1.54370
    стоит не в докере
    железки по 4 ядра, 16Гб памяти (m4.xlarge)
    хосты прописаны именами
  • https://t.me/clickhouse_ru
    тут еще важный нюанс - на серверах есть другие таблицы созданные так же. с ними все в порядке
  • https://t.me/clickhouse_ru
    @soyayaos ↶ Reply to #48612 #48617 09:02 AM, 06 Apr 2018
    Диски разные? Живые?
  • https://t.me/clickhouse_ru
    @aloneibreak #48618 09:03 AM, 06 Apr 2018
    да. остальные ноды прекрасно видят ту одну, у которой проблемы
  • https://t.me/clickhouse_ru
    @149051052 #48619 09:04 AM, 06 Apr 2018
    Иногда появялется такая ошибка:
    >DB::Exception: ZooKeeper session has been expired
    - какая-то нужная натсройка не устанволена?
  • https://t.me/clickhouse_ru
    @soyayaos ↶ Reply to #48618 #48620 09:07 AM, 06 Apr 2018
    Пробовали указывать хосты ip-адресами, чтобы отсечь возможные проблемы с резолвером?
  • https://t.me/clickhouse_ru
    thanks)
  • https://t.me/clickhouse_ru
    еще нет, но сейчас попробуем
  • https://t.me/clickhouse_ru
    @aloneibreak #48623 09:10 AM, 06 Apr 2018
    но у нас они прописаны в /etc/hosts
  • https://t.me/clickhouse_ru
    @aloneibreak #48624 09:10 AM, 06 Apr 2018
    и в zookeeper ip адреса
  • https://t.me/clickhouse_ru
    это не помогло (
  • @183090369 #48626 10:04 AM, 06 Apr 2018
    Joined.
  • @vstakhov #48627 10:06 AM, 06 Apr 2018
    гм, а сабж можно собрать clang 5?
  • @kochetovnicolai #48628 10:11 AM, 06 Apr 2018
    можно
  • @vstakhov #48629 10:13 AM, 06 Apr 2018
    а кто-то это использует у себя?
  • https://t.me/clickhouse_ru
    @ChuPika #48630 10:14 AM, 06 Apr 2018
    Подскажите, конкеренткая в ставка к ClickHouse, например, по числу ядер на целевой системе быстрее, чем "однопоточная" вставка? А для replicated-таблиц?
  • https://t.me/clickhouse_ru
    @ChuPika #48631 10:15 AM, 06 Apr 2018
    И как реализована поддержка идемпотентности для replicated-таблиц? Не очень понятно, ведь для обычного mergetree такого нет.
  • быстрее. главное, не вставлять суммарно чаще где-то одного блока в секунду. Если в серднем блок вставляется N секунд, то можно вставлять в N потоков.
  • для нескольких последних вставленных блоков храним чексумму в зукипере
  • сборку с clang5 тестируем стандартными функциональными тестами. пакеты, если не ошибаюсь, собираем в gcc
  • https://t.me/clickhouse_ru
    @ChuPika ↶ Reply to #48632 #48635 10:23 AM, 06 Apr 2018
    Блок = max_insert_block_size число строк? На стороне сервера нет тротлинга? А если вставлять в реплицируемую таблицу? Если есть две реплики, то вставлять в 2 N потоков?
  • https://t.me/clickhouse_ru
    @JenZolotarev #48636 10:24 AM, 06 Apr 2018
    джентельмены, кх умеет решардить данные при добавлении нового шарда? если не умеет, то планируется ли появление этого функционала?
  • https://t.me/clickhouse_ru
    @ChuPika ↶ Reply to #48636 #48637 10:24 AM, 06 Apr 2018
    clcikhouse-copier
  • https://t.me/clickhouse_ru
    @stufently #48638 10:24 AM, 06 Apr 2018
    есть отдельная тулза, есть описание в доке
  • https://t.me/clickhouse_ru
    @JenZolotarev #48639 10:25 AM, 06 Apr 2018
    это копипаста, немного не то

    мой вопрос связан с появлением DELETE
  • https://t.me/clickhouse_ru
    @JenZolotarev #48640 10:26 AM, 06 Apr 2018
    т.е. есть два шарда, заполненных на 50%, добавляю 3 и ожидаю, что после перешардирования каждый окажется заполнен на 30%
  • > Блок = max_insert_block_size число строк?
    да
    > На стороне сервера нет тротлинга?
    не должно быть (могу ошибаться)
    > Если есть две реплики, то вставлять в 2 N потоков?
    Если через Distributed, то в N. Можно непосредственно в каждую реплику вставлять разные данные (по N в каждую)
  • https://t.me/clickhouse_ru
    @ChuPika #48642 10:27 AM, 06 Apr 2018
    @kochetovnicolai Спасибо!
  • https://t.me/clickhouse_ru
    @Bereznyak #48643 10:39 AM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    только не 30, а 20, наверное
  • https://t.me/clickhouse_ru
    @JenZolotarev #48645 10:46 AM, 06 Apr 2018
    вы абсолютно правы, я лишь хотел донести мысль
  • https://t.me/clickhouse_ru
    @JenZolotarev #48646 10:47 AM, 06 Apr 2018
    насколько актуальна оценка про UPDATE/DELETE в Q1-Q2 2018?
  • https://t.me/clickhouse_ru
    @mainnika #48648 10:54 AM, 06 Apr 2018
    Хотел спросить тоже по UPDATE/DELETE
  • @kochetovnicolai #48649 10:56 AM, 06 Apr 2018
    То, что в roadmap, пока актуально. https://clickhouse.yandex/docs/ru/roadmap/
  • https://t.me/clickhouse_ru
    @mrlamberg #48650 11:00 AM, 06 Apr 2018
    а апдейт будет настоящим?
  • https://t.me/clickhouse_ru
    спасибо!
  • https://t.me/clickhouse_ru
    @JenZolotarev #48652 11:09 AM, 06 Apr 2018
    про решардинг правда ничего не нашел, своими силами только если?
  • Настоящими. Но не мгновенными. Если очень примерно, что можно будет указать, какие данные и с какими условиями должны быть удалены, а далее в фоне это изменение будет постепенно применяться к кускам. Примерно как мержи.
    Опять же, возможно я где-то ошибаюсь :)
  • https://t.me/clickhouse_ru
    @mrlamberg #48654 11:12 AM, 06 Apr 2018
    гарантированно или как в ReplacedMergeTable ?
  • @kochetovnicolai #48655 11:13 AM, 06 Apr 2018
    гарантированно
  • https://t.me/clickhouse_ru
    @mrlamberg #48656 11:13 AM, 06 Apr 2018
    а это будет новый движок или в простой MergeTable добавите?
  • своими силами или через clcikhouse-copier
  • просто в MergeTree
  • https://t.me/clickhouse_ru
    @mainnika #48659 11:25 AM, 06 Apr 2018
    Спасибо kochetovnicolai !
  • @vstakhov #48660 11:30 AM, 06 Apr 2018
    /root/rpmbuild/BUILD/ClickHouse-07718746959cfc85fcb8ffd29d97c8e217b082a2/contrib/poco/Foundation/src/Thread_STD_POSIX.cpp:170:6: error: no matching function for call to 'pthread_setaffinity_np'
    if (pthread_setaffinity_np(_pData->thread->native_handle(), &cpuset) != 0)
    ^~~~~~~~~~~~~~~~~~~~~~
    /usr/include/pthread.h:477:12: note: candidate function not viable: requires 3 arguments, but 2 were provided
    extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize,
  • @vstakhov #48661 11:30 AM, 06 Apr 2018
    что-то не выходит каменный цветок
  • https://t.me/clickhouse_ru
    @epikhinm #48662 11:33 AM, 06 Apr 2018
    Joined.
  • @vstakhov #48663 11:37 AM, 06 Apr 2018
    /usr/bin/ld: cannot find -lstdc++
    clang-5.0: error: linker command failed with exit code 1 (use -v to see invocation)

    вот оно что, Семен Семеныч
  • @vstakhov #48664 11:37 AM, 06 Apr 2018
    а зачем ему stdc++, когда шланг использует libc++?
  • https://t.me/clickhouse_ru
    @sergun_spb #48665 11:42 AM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    А обратно-совместимо или только для таблиц, созданных в новых версиях?
  • @ztlpn #48667 12:06 PM, 06 Apr 2018
    На старых таблицах будет работать. Но после выполнения UPDATE откатиться не получится.
  • @vadamlyuk #48668 12:44 PM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @kthx000 #48669 01:42 PM, 06 Apr 2018
    в clickhouse-copier параметр task-path должен иметь какое-то специальное значение? из примера не работает Can't get description node /task/path/description
  • @462010105 #48670 02:00 PM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @adidas_vs_nike #48671 03:27 PM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @adidas_vs_nike #48672 03:39 PM, 06 Apr 2018
    подскажите плиз, что такое VersionedCollapsingMergeTree?
  • https://t.me/clickhouse_ru
    @mainnika #48673 03:49 PM, 06 Apr 2018
    ReplacingMergeTree сам по себе мерджится если данных для мерджа нет? Ну т.е. я создал новую таблицу, одним запросом туда данные перегнал, и вот уже пол часа жду пока оно поудаляет дубликаты
  • https://t.me/clickhouse_ru
    @sawaxon #48674 03:50 PM, 06 Apr 2018
    Имеется задача прислывать старые данных с локальных серверов который могут быть недоступные долго время, при это получается что часть данных будут писаться в текущем времени и часть отправлятся как старые данные, насколько мне изветсно это плохо, стоит ли создавать ради такого таблицу на каждую метрику или для это задачи плохо подходит кх?
  • https://t.me/clickhouse_ru
    @sawaxon ↶ Reply to #48673 #48675 03:53 PM, 06 Apr 2018
    ReplacingMergeTree не дает гарантий отсутствия дубликатов. Но вроде OPTIMIZE фиксит.
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #48673 #48676 03:53 PM, 06 Apr 2018
    насколько я понял, к ReplacingMergeTree нужно относиться как к MergeTree, то есть селектить с учетом того, что там могут быть дубли. ReplacingMergeTree просто экономит место на диске, схлопывая дубли. Но можно, например как я, схлопывать данные сразу после вставки c помощью optimize table partition final, и радоваться костылю :)))
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #48675 #48677 03:54 PM, 06 Apr 2018
    Мне не нужна гарантия отсутствия дубликатов. Пока мне интересно как часто оно запускает эту процедуру
  • https://t.me/clickhouse_ru
    @Shegloff #48678 03:55 PM, 06 Apr 2018
    это время не определено, разрабы говорят, как КХ посчитает нужным
  • https://t.me/clickhouse_ru
    @mrlamberg #48679 03:55 PM, 06 Apr 2018
    у меня 4 дня не запускалось
  • https://t.me/clickhouse_ru
    @mainnika #48680 03:55 PM, 06 Apr 2018
    Я так понимаю пока я чего-нибудь туда не инсертну чтобы инициировать merge процесс, данные так и будут
  • https://t.me/clickhouse_ru
    @mrlamberg #48681 03:55 PM, 06 Apr 2018
    пока я снова не начал туда дубли фагачить
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #48679 #48682 03:56 PM, 06 Apr 2018
    да это даже ответ на мой вопрос
  • https://t.me/clickhouse_ru
    @mrlamberg #48683 03:56 PM, 06 Apr 2018
    и в итоге всеравно 5 дублей осталось)
  • https://t.me/clickhouse_ru
    @mrlamberg #48684 03:57 PM, 06 Apr 2018
    которые даже через optimize table partition final не убирались
  • https://t.me/clickhouse_ru
    @Shegloff #48685 03:57 PM, 06 Apr 2018
    если данных не очень много, можно селектить с FINAL
  • https://t.me/clickhouse_ru
    @Shegloff #48686 03:57 PM, 06 Apr 2018
    FINAL отбрасывает дубли
  • https://t.me/clickhouse_ru
    @mrlamberg #48687 03:57 PM, 06 Apr 2018
    у меня 5 всеравно осталось
  • https://t.me/clickhouse_ru
    @mrlamberg #48688 03:58 PM, 06 Apr 2018
    они потом пропали
  • https://t.me/clickhouse_ru
    @Shegloff #48689 03:58 PM, 06 Apr 2018
    значит они на разных шардах, поэтому и не схлопываются
  • https://t.me/clickhouse_ru
    @mrlamberg #48690 03:58 PM, 06 Apr 2018
    после какойто очередной партии
  • https://t.me/clickhouse_ru
    @mrlamberg #48691 03:58 PM, 06 Apr 2018
    у меня 1 сервер
  • https://t.me/clickhouse_ru
    @Shegloff #48692 03:58 PM, 06 Apr 2018
    ну раз пропали, значит все ок
  • https://t.me/clickhouse_ru
    @mainnika #48693 03:58 PM, 06 Apr 2018
    Да поведение примерно такое как я и думал, заинсертил еще пачку дублей, появились чанки для мерджа — схлопнулось сразу
  • https://t.me/clickhouse_ru
    @mrlamberg #48694 03:58 PM, 06 Apr 2018
    даже на optimize table partition final нельзя надеятся
  • https://t.me/clickhouse_ru
    @mrlamberg #48695 03:59 PM, 06 Apr 2018
    и нифига не сразу
  • https://t.me/clickhouse_ru
    @mrlamberg #48696 03:59 PM, 06 Apr 2018
    у меня основная проблема - это когда обновление версии
  • https://t.me/clickhouse_ru
    @mrlamberg #48697 03:59 PM, 06 Apr 2018
    почти всегда нужно заново залить данные в кх
  • https://t.me/clickhouse_ru
    @mrlamberg #48698 04:00 PM, 06 Apr 2018
    не буду же я дропать таблицу и ждать полной синхры)
  • https://t.me/clickhouse_ru
    @Shegloff #48699 04:00 PM, 06 Apr 2018
    в моем костыле все хорошо - я перезаливаю раз в час последние несколько дней из мускуля, схлопывается отменно :)
  • https://t.me/clickhouse_ru
    @mrlamberg #48700 04:00 PM, 06 Apr 2018
    мы заливаем свежие данные почти сразу
  • https://t.me/clickhouse_ru
    @mrlamberg #48701 04:01 PM, 06 Apr 2018
    но при обновлении у нас меняются логики вычисления полей
  • https://t.me/clickhouse_ru
    @mrlamberg #48702 04:01 PM, 06 Apr 2018
    добавляются столбцы
  • @70532431 #48703 04:04 PM, 06 Apr 2018
    В свете последних новостей (блокировка Телеграма) вот годный VPN-чик полностью не за деньги, есть под все платформы.
    https://psiphon.ca/ru/download.html
    Но я бы socks - сервак поднял)
    Psiphon | Скачайте приложение для Android или клиентское ПО для Windows.

    Скачайте Psiphon для Windows и Android напрямую и бесплатно

  • https://t.me/clickhouse_ru
    @mrlamberg #48704 04:07 PM, 06 Apr 2018
    лучше бы ссылку на программу эмиграции)
  • @70532431 #48705 04:09 PM, 06 Apr 2018
    Почитайте про Blue card
  • @70532431 #48706 04:09 PM, 06 Apr 2018
    И про условия эмиграции в Канаду - довольно несложные
  • https://t.me/clickhouse_ru
    @mrlamberg #48707 04:09 PM, 06 Apr 2018
    в канаду усложнили
  • https://t.me/clickhouse_ru
    @mrlamberg #48708 04:10 PM, 06 Apr 2018
    года 2-3 назад
  • https://t.me/clickhouse_ru
    @termina1 #48709 04:11 PM, 06 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #48707 #48710 04:21 PM, 06 Apr 2018
    вроде вот только опять упростили
  • https://t.me/clickhouse_ru
    @mrlamberg #48711 04:24 PM, 06 Apr 2018
    вроде ничего с 2015 года не поменялось
  • https://t.me/clickhouse_ru
    @mrlamberg #48712 04:24 PM, 06 Apr 2018
    нужен контракт с работодателем
  • https://t.me/clickhouse_ru
    @mrlamberg #48713 04:24 PM, 06 Apr 2018
    но с контрактом и в сша можно ехать
  • https://t.me/clickhouse_ru
    @mainnika #48714 04:29 PM, 06 Apr 2018
    Да может перепутал я чего
  • https://t.me/clickhouse_ru
    @mainnika #48715 04:30 PM, 06 Apr 2018
    В Германию ок, blue card несложно получить
  • https://t.me/clickhouse_ru
    @mrlamberg #48716 04:32 PM, 06 Apr 2018
    blue card тоже надо контракт
  • https://t.me/clickhouse_ru
    @mrlamberg #48717 04:33 PM, 06 Apr 2018
    с контрактом можно почти в любую страну
  • https://t.me/clickhouse_ru
    @mainnika #48718 04:35 PM, 06 Apr 2018
    blue card больше флексибл, привязка к работодателю минимальная, сроки маленькие, никаких проверок положения дел с безработицей или чего-то типа
  • @vstakhov #48719 04:40 PM, 06 Apr 2018
    ну вот я ищу себе пограммистов в UK
  • @vstakhov #48720 04:40 PM, 06 Apr 2018
    даже визу сделать готовы тут за сотни нефти
  • @vstakhov #48721 04:41 PM, 06 Apr 2018
    blue card, бесспорно, лучше
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #48720 #48722 04:41 PM, 06 Apr 2018
    совсем плохо все с кадрами?
  • @vstakhov #48723 04:41 PM, 06 Apr 2018
    но фашисты есть фашисты - английский все-таки тут родной
  • @vstakhov #48724 04:41 PM, 06 Apr 2018
    да, все плохо
  • https://t.me/clickhouse_ru
    @mainnika #48725 04:42 PM, 06 Apr 2018
    Где именно к UK так? И какого рода погроммисты?
  • @vstakhov #48726 04:46 PM, 06 Apr 2018
    London: C, Lua, возможно, Perl
  • @vstakhov #48727 04:46 PM, 06 Apr 2018
    работать над Rspamd
  • @3334085 ↶ Reply to #48723 #48728 04:48 PM, 06 Apr 2018
    Мда, вам с такими мыслями по скорее бы на родину вернутся, в глубинку желательно, там то точно все родное и на русском. Позор, приезжая в другую страну вы обязаны принять её законы и язык. И да, и не флудить тут например
  • @vstakhov #48729 04:50 PM, 06 Apr 2018
    спасибо за ценные советы, но меня и здесь неплохо кормят
  • @sr_maks1 ↶ Reply to #48728 #48730 05:14 PM, 06 Apr 2018
    ))) скажите это Парижу)) ну и всей Германии приютившей братьев наших меньших... Ах да. Извините за флуд)
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48653 #48731 06:42 PM, 06 Apr 2018
    А есть где-то публичная ветка, например на GitHub ?
  • кажется, здесь что-то похожее: https://github.com/yandex/ClickHouse/commits/mergetree-mutations2
    может быть есть еще
    yandex/ClickHouse

    ClickHouse is a free analytic DBMS for big data.

  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48732 #48733 07:15 PM, 06 Apr 2018
    Спасибо
  • https://t.me/clickhouse_ru
    @md_uliy #48734 07:42 PM, 06 Apr 2018
    Подскажите, пожалуйста, как в jdbc запихать array в CH через подстановку :value?
  • 07 April 2018 (38 messages)
  • https://t.me/clickhouse_ru
    @serebrserg #48735 07:44 AM, 07 Apr 2018
    Именованные подстановки не реализованы. Сейчас есть только ?
  • @extead #48739 10:08 AM, 07 Apr 2018
    Добрый день! Кто графаной пользуется с плагином для КХ, подскажите, пожалуйста, как побороть проблему автоподстановки "default." перед названиями таблиц. В табиксе оно как-то решено само. В графане пытаюсь выполнить запрос вроде:

    SELECT
    t,
    groupArray((channel, c)) as groupArr
    FROM
    (
    SELECT
    (intDiv(timestamp, 216000) * 216000) * 1000 as t,
    channel,
    count() c
    FROM
    mydatabase.transactions ANY
    LEFT JOIN mydatabase.dict_channel USING merch_name
    WHERE
    event_date >= toDate(1491559351)
    AND timestamp >= 1491559351
    GROUP BY
    t,
    channel
    ORDER BY
    t,
    channel
    )
    GROUP BY
    t
    ORDER BY
    t

    Графана транслирует ошибку от кх:

    Code: 60, e.displayText() = DB::Exception: Table default.mydatabase.dict_channel doesn't exist., e.what() = DB::Exception

    В редакторе запросов выбрана явно нужная база. Так же пробовал различные комбинации. Если убрать вообще префикс с базой из запроса, то ругается вот так

    Code: 60, e.displayText() = DB::Exception: Table default.dict_channel doesn't exist., e.what() = DB::Exception
  • https://t.me/clickhouse_ru
    @ka_ktus #48740 10:24 AM, 07 Apr 2018
    Графана 5 и плагин последней версии - не замечено такого поведения.
    Были другие проблемы с плагином от того, что он сам меняет запрос, но автор исправил не так давно.
  • https://t.me/clickhouse_ru
    @ka_ktus #48741 10:25 AM, 07 Apr 2018
    Кстати, интересно, зачем плагин сам меняет что-то в запросе? Почему не передавать в CH исходный запрос? На гитхабе там последних пара issue по этому поводу есть.
  • @extead #48742 10:29 AM, 07 Apr 2018
    Андрей, а версия КХ какая?
  • https://t.me/clickhouse_ru
    @ka_ktus #48743 10:30 AM, 07 Apr 2018
    Старенькая. 1.1.54304.
  • https://t.me/clickhouse_ru
    @ka_ktus #48744 10:31 AM, 07 Apr 2018
    Графана 5.0.3 и плагин 1.4.1.
  • https://t.me/clickhouse_ru
    У вас таблица с данными случаем не в бд отличной от той где лежит distributed
  • https://t.me/clickhouse_ru
    @tarabanton #48746 10:35 AM, 07 Apr 2018
    Ну или справочник тот же
  • @extead #48747 10:35 AM, 07 Apr 2018
    Нет, обе таблицы не distributed и на одном сервере
  • https://t.me/clickhouse_ru
    @tarabanton #48748 10:36 AM, 07 Apr 2018
    И в одной бд?
  • @extead #48749 10:36 AM, 07 Apr 2018
    ага
  • @extead #48750 10:36 AM, 07 Apr 2018
    то же самое выполняю в табиксе и в консоли кх - работает нормально
  • @extead #48751 10:39 AM, 07 Apr 2018
    Версия кх - 1.1.54236
    Графана 5.0.3, плагин 1.4.1.
  • https://t.me/clickhouse_ru
    @mo1seev #48752 10:39 AM, 07 Apr 2018
    Господа, а можно для log_queries задать время хранения?
  • https://t.me/clickhouse_ru
    @mo1seev #48753 10:40 AM, 07 Apr 2018
    Что бы, скажем, данные больше месяца сами удалялись или перезаписывались?
  • @extead ↶ Reply to #48746 #48754 10:49 AM, 07 Apr 2018
    похоже, что это проблема кх. Воспроизвел так:

    на версии 1.1.54236 в консоли кх выполнил запрос НЕ делая USE перед этим (именно так ведь работают запросы через HTTP):

    Code: 60, e.displayText() = DB::Exception: Table default.mydatabase.dict_channel doesn't exist., e.what() = DB::Exception

    А на версии 1.1.54343 все то же самое отработало корректно.

    Не в курсе, может такое поведение - это отключаемая фича?)
  • @OttoAndrew #48755 11:44 AM, 07 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    Может у вас дефолтные базы разные на разных серверах?
  • https://t.me/clickhouse_ru
    @eigrad #48757 01:03 PM, 07 Apr 2018
    а clickhouse-client умеет в построчный вывод столбцов? как \G у mysql и \x у psql
  • https://t.me/clickhouse_ru
    @eigrad #48758 01:04 PM, 07 Apr 2018
    воу. оказывается он как раз \G и умеет
  • https://t.me/clickhouse_ru
    @molo4ko007 #48759 01:08 PM, 07 Apr 2018
    Можете попробовать ещё разные форматы, просто добавьте в конце запроса, например, `format Vertical`. В документации есть полный список
  • https://t.me/clickhouse_ru
    @eigrad #48760 01:09 PM, 07 Apr 2018
    во, так нативнее, спасибо)
  • https://t.me/clickhouse_ru
    @eigrad #48761 01:11 PM, 07 Apr 2018
    подвисают намертво запросы по distributed таблице, когда сервер упирается в max_concurrent_queries

    через kill query не убиваются, помогает только рестарт сервера...

    кто-нибудь сталкивался?
  • https://t.me/clickhouse_ru
    @eigrad ↶ Reply to #48260 #48762 01:38 PM, 07 Apr 2018
    OMFG! да я просто люблю этих ребят! https://github.com/Vertamedia/chproxy#spread-inserts-among-cluster-shards
  • https://t.me/clickhouse_ru
    @eigrad #48763 01:48 PM, 07 Apr 2018
    гм, но оно таки тоже не умеет понимать куда данные слать, просто какой-то свой load balancing делает :-/
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48752 #48764 04:12 PM, 07 Apr 2018
    Нет, КХ сам не чистит партиции, но для query_log можно задать произвольный ключ партиционирования чтоб можно было удалять не по месяцам
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @webmaks #48766 04:47 PM, 07 Apr 2018
    Приветстую.
    А какие параметры КХ можете посоветовать для построения графиков в системе мониторига? Я хочу, скажем в заббикс добавить мониторинг КХ, чтобы в случае сбоя можно было по графикам быстро понять из-за чего это произошло? Ну или оповещения настроить при достижении определенных значений.
  • https://t.me/clickhouse_ru
    @stufently #48767 04:53 PM, 07 Apr 2018
    Порты , логин , зукипер, количество записей
  • https://t.me/clickhouse_ru
    @webmaks ↶ Reply to #48767 #48768 04:58 PM, 07 Apr 2018
    а какие-нибудь параметры из таблиц
    system.metrics
    system.asynchronous_metrics
    system.events

    нет необходимости?
  • https://t.me/clickhouse_ru
    @stufently #48769 04:59 PM, 07 Apr 2018
    Ну смотря какие падения вы хотите мониторить , в целом мне хватает мониторинга процессора, памяти и места на диске
  • https://t.me/clickhouse_ru
    иногда стоит ещё rps, возможно даже с инсертами отдельно
  • https://t.me/clickhouse_ru
    @nicname #48771 05:26 PM, 07 Apr 2018
    в графане это выглядит вот так
    https://grafana.com/dashboards?search=clickhouse
    Grafana Dashboards - discover and share dashboards for Grafana. | Grafana Labs

    Grafana.com provides a central repository where the community can come together to discover and share dashboards.

  • @spitfire27 #48772 05:44 PM, 07 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @eigrad #48773 06:36 PM, 07 Apr 2018
    внезапно, ни одного graphite'ного дашборда для стандартных метрик которые отправляются clickhouse'ом через carbon?
  • https://t.me/clickhouse_ru
    @den_crane #48774 07:37 PM, 07 Apr 2018
    (v1.1.54327.) случилось странное. У сервера 64ГБ, oom начал прибивать КХ (BackgrProcPool).
    Добавил своп 64ГБ, и вот теперь я увидел что clickhouse-server скушал всю память и своп VIRT 170GB/ RES 61GB.

    Идет мердж:
    elapsed: 2233
    progress: 0.00140
    num_parts: 13
    total_size_bytes_compressed: 148508434057
    total_size_marks: 20606
    bytes_read_uncompressed: 95158253980
    rows_read: 237568
    bytes_written_uncompressed: 9574550341
    rows_written: 131072
    memory_usage: 179221182948

    Подозреваю, что в той таблице появились строки размером до 4МБ, которые очень хорошо жмутся в пару КБ.
    Может это причина?

    Никогда такого не было, и что делать теперь?
  • https://t.me/clickhouse_ru
    @den_crane #48775 08:40 PM, 07 Apr 2018
    В общем поменял max_bytes_to_merge_at_max_space_in_pool с 200Г на 50Г, видимо КХ мержить эти парты уже не будет.
  • 08 April 2018 (38 messages)
  • https://t.me/clickhouse_ru
    @nicname #48776 08:42 AM, 08 Apr 2018
    а можно ли как-то в кх сделать такую штуку:
    SELECT f1, f2, uniq(f3), count(*)....
    GROUP BY f1, f2

    и вот вместо uniq(f3) - вывести не число уникальных значений в этой группировке, а сами эти уникальные значения? как-то в массив, например, объединить?
  • https://t.me/clickhouse_ru
    @nicname #48777 08:47 AM, 08 Apr 2018
    можно – groupUniqArray
  • https://t.me/clickhouse_ru
    @nicname #48778 08:47 AM, 08 Apr 2018
    кх не только не тормозит, но и 🔥
  • https://t.me/clickhouse_ru
    @mo1seev ↶ Reply to #48778 #48779 08:59 AM, 08 Apr 2018
    Сервера теперь горят?
  • https://t.me/clickhouse_ru
    @nicname #48780 09:00 AM, 08 Apr 2018
    работа
  • @500949343 #48781 02:56 PM, 08 Apr 2018
    Привет всем, подскажите новичку. есть таблица с движком MergeTree. при импорте данных часть данных экспортировалась несколько раз и в таблице образовались дубли. как быть, как он них можно проще избавиться?
  • https://t.me/clickhouse_ru
    @stufently #48782 03:02 PM, 08 Apr 2018
    Проще заново залить данные без дублей
  • @500949343 #48783 03:03 PM, 08 Apr 2018
    при условии что данные эти существуют, правда ведь?
  • https://t.me/clickhouse_ru
    @nicname #48784 03:04 PM, 08 Apr 2018
    можно помудрить с генерацией уникального id на основе cityHash64(*)
  • https://t.me/clickhouse_ru
    @nicname #48785 03:05 PM, 08 Apr 2018
    но в случае коллизий могут быть потери
  • @500949343 #48786 03:05 PM, 08 Apr 2018
    я почему-то ожидал от КХ что понятие первыичный ключ будет гарантировать защиту от дублей. но нет....
  • https://t.me/clickhouse_ru
    @nicname #48787 03:05 PM, 08 Apr 2018
    так первичный ключ есть?
  • @500949343 #48788 03:06 PM, 08 Apr 2018
    есть
  • @500949343 #48789 03:06 PM, 08 Apr 2018
    это же обязательное поле
  • https://t.me/clickhouse_ru
    @nicname #48790 03:07 PM, 08 Apr 2018
    он уникальный?
  • https://t.me/clickhouse_ru
    @nicname #48791 03:07 PM, 08 Apr 2018
    в данных
  • @500949343 #48792 03:10 PM, 08 Apr 2018
    да
  • https://t.me/clickhouse_ru
    @nicname #48793 03:11 PM, 08 Apr 2018
    попробуйте
    SELECT *, max(uniqID) FROM table GROUP BY *
    если не получится тогда придется все поля перечислять - по идее должно уникальные строки выбрать. их уже в отдельную таблицу загнать.
  • https://t.me/clickhouse_ru
    @Shegloff #48794 03:11 PM, 08 Apr 2018
    Insert into ваша_тэйбл_temp select <без дублей>
  • https://t.me/clickhouse_ru
    @Shegloff #48795 03:11 PM, 08 Apr 2018
    Потом пересоздать и обратно
  • @500949343 #48796 03:14 PM, 08 Apr 2018
    щас попробую
  • https://t.me/clickhouse_ru
    @Shegloff #48797 03:16 PM, 08 Apr 2018
    Если вы точно знаете, по какому полю дубли, группирните по нему
  • @500949343 #48798 03:18 PM, 08 Apr 2018
    похоже это из-за того что дубли попали в разные месяца😁
  • https://t.me/clickhouse_ru
    @Shegloff #48799 03:21 PM, 08 Apr 2018
    можно сделать такую же таблицу, только с ReplacingMergeTree, и просто перелить как есть, потом optimize table partition final, и дубли схлопнутся
  • @500949343 #48800 03:25 PM, 08 Apr 2018
    когда-нибудь схопнутся))

    Обратите внимание, что дедупликация данных производится лишь во время слияний. Слияние происходят в фоне в неизвестный момент времени, на который вы не можете ориентироваться. Некоторая часть данных может так и остаться необработанной. Хотя вы можете вызвать внеочередное слияние с помощью запроса OPTIMIZE, на это не стоит рассчитывать, так как запрос OPTIMIZE приводит к чтению и записи большого объёма данных.

    Таким образом, ReplacingMergeTree подходит для фоновой чистки дублирующихся данных в целях экономии места, но не даёт гарантий отсутствия дубликатов.
  • https://t.me/clickhouse_ru
    @Shegloff #48801 03:27 PM, 08 Apr 2018
    у меня принудительно запросом optimize table всегда удачно хлопаются
  • https://t.me/clickhouse_ru
    @BloodJazMan #48802 04:22 PM, 08 Apr 2018
    Вопрос про мониторинг Clickhouse
    если clickhouse по умолчанию умеет слать свои метрики в graphite ??
    тогда где можно найти grafana dashboards для этих graphite метрик? никто случайно не делал?
  • https://t.me/clickhouse_ru
    @alexey_laptev #48804 05:32 PM, 08 Apr 2018
    мне кажется не совсем корректная подставновка в Tabix - http://joxi.ru/vAWKbKhkwyaxAW

    должно быть UInt64, иначе ошибка синтаксиса
  • https://t.me/clickhouse_ru
    Плагин меняет запрос когда используются макросы или когда пользователь использует format. Чтобы применить изменения запрос преобразовывается в ast и собирается назад. Да, это не всегда работает так как надо. Но пользователь вполне может не использовать макросы и формат и передавать запрос as is
  • https://t.me/clickhouse_ru
    @ka_ktus #48806 06:34 PM, 08 Apr 2018
    А макросы нельзя просто в строку подставить, реплейсом?
  • https://t.me/clickhouse_ru
    Проверьте, пожалуйста, исходящий запрос во вкладке Network или нажав в Графане кнопку Generated SQL под запросом на предмет подстановки default.
  • https://t.me/clickhouse_ru
    @ka_ktus #48808 06:37 PM, 08 Apr 2018
    А макросы - это в том числе $from, $to и т.д.? Без них - неубодно строить графики :)
  • https://t.me/clickhouse_ru
    эти макросы заменяются реплейсом
  • https://t.me/clickhouse_ru
    @hagen1778 #48810 06:38 PM, 08 Apr 2018
    макросы $rate, $columns - парсером
  • https://t.me/clickhouse_ru
    @ka_ktus #48811 06:40 PM, 08 Apr 2018
    Тогда это не для всех запросов выполняется. Вот здесь в запросе этих макросов не было, а запрос пересобирался
    https://github.com/Vertamedia/clickhouse-grafana/issues/42
    Latest version broke some of queries #42

    May be it was broken in 1.4.1 or in 1.4.0. Plugin got query and send it to Clickhouse without some symbols. See resulting query. There is no comma here &quot;AS t toRelativeMinuteNum&quot; Sett...

  • https://t.me/clickhouse_ru
    @ka_ktus #48812 06:40 PM, 08 Apr 2018
    Разве что $table там ещё есть.
  • https://t.me/clickhouse_ru
    @hagen1778 #48813 06:54 PM, 08 Apr 2018
    Да, Вы правы. Я забыл, что поменял поведение при добавлении adhoc фильтров, т.к. для их работы модифицируется именно ast, который потом снова собирается в запрос но с изменениями после преобразования. Я отключу такое поведение, если не используются adhoc фильтры. Спасибо, что обратили внимание
  • https://t.me/clickhouse_ru
    @ka_ktus #48814 06:58 PM, 08 Apr 2018
    Здорово, спасибо!
  • 09 April 2018 (110 messages)
  • @vstakhov #48816 07:41 AM, 09 Apr 2018
    кстати, господа, я тут недавно занимался сборкой сабжа под CentOS и перепилил несколько сборочные скрипты и спеки, чтобы оно работало с произвольным git тегом/хешем и не собирало gcc с бустом за каким-то лешим
  • @vstakhov #48817 07:41 AM, 09 Apr 2018
    https://github.com/vstakhov/clickhouse-rpm - если кому интересно
    vstakhov/clickhouse-rpm

    ClickHouse DBMS build script for RHEL based distributions - vstakhov/clickhouse-rpm

  • @johnsinitsyn #48818 07:41 AM, 09 Apr 2018
    👍🏻
  • https://t.me/clickhouse_ru
    Господа, в логах есть следующее:
    2018.04.09 12:26:05.022486 [ 213 ] <Error> ServerErrorHandler: Code: 291, e.displayText() = DB::Exception: Access denied to database default, e.what() = DB::Exception, Stack trace:
  • https://t.me/clickhouse_ru
    Как бы узнать, на каком хосте ошиблись с настройками клиента?
  • https://t.me/clickhouse_ru
    коннект - по tcp, про него известно только: TCPHandler: Client has not sent any data.
  • https://t.me/clickhouse_ru
    @ka_ktus ↶ Reply to #48813 #48822 08:46 AM, 09 Apr 2018
    Обновите, пожалуйста, 1.4.3 ещё и в grafana "store".
  • https://t.me/clickhouse_ru
    @Mike_Er ↶ Reply to #48816 #48823 08:51 AM, 09 Apr 2018
    https://github.com/Altinity/clickhouse-rpm вот же есть чудесный билд-скрипт, который все из пакетов ставит, не надо вообще ничего из сорцов собирать
    Altinity/clickhouse-rpm

    ClickHouse DBMS build script for RHEL based distributions - Altinity/clickhouse-rpm

  • @vstakhov #48824 08:54 AM, 09 Apr 2018
    у меня он тоже все из пакетов ставит
  • @vstakhov #48825 08:54 AM, 09 Apr 2018
    я хотел собирать специфический тег, потому что stable сломан в центоси
  • @vstakhov #48826 08:56 AM, 09 Apr 2018
    ну и есть некая пляска с трижды проклятыми сабмодулями и придурошному git archive, да
  • https://t.me/clickhouse_ru
    @Synoecium #48827 08:58 AM, 09 Apr 2018
    читаю по привычке доку на английком, нашел такой перл:
    position(haystack, needle)
    Search for the 'needle' substring in the 'haystack' string. Returns the position (in bytes) of the found substring, starting from 1, or returns 0 if the substring was not found. It has also chimpanzees.
  • https://t.me/clickhouse_ru
    @Synoecium #48828 08:58 AM, 09 Apr 2018
    шимпанзе то за что
  • @vstakhov #48829 08:59 AM, 09 Apr 2018
    это для внимательных читателей
  • https://t.me/clickhouse_ru
    @Synoecium #48830 09:01 AM, 09 Apr 2018
    только я не понял есть такая функция positionCaseInsensitive() или это шутка?
  • https://t.me/clickhouse_ru
    @Synoecium #48831 09:04 AM, 09 Apr 2018
    есть, проверил)
  • https://t.me/clickhouse_ru
    @nicname #48832 09:28 AM, 09 Apr 2018
    правило нужных функций в кх – если какая-то функция нужна, то она там есть
  • @vstakhov #48833 09:35 AM, 09 Apr 2018
    вот мне был недавно нужен substring от 2-го символа до конца строки, и кроме как композицией из substring + strlen это, судя по документации, не решается
  • @vstakhov #48834 09:35 AM, 09 Apr 2018
    вот если бы туда для обработки данных какой luajit прикрутить :)
  • https://t.me/clickhouse_ru
    @orbit4 ↶ Reply to #48766 #48835 09:35 AM, 09 Apr 2018
    у меня есть заготовка template для KX на основе идей добрых людей, которые сделали шаблон для ZK — но вот до графиков у меня руки не дошли — если есть желание — можешь приделать их
  • https://t.me/clickhouse_ru
    @webmaks ↶ Reply to #48835 #48836 09:38 AM, 09 Apr 2018
    Да, давайте. Я пока прикрутил tcp_conn, http_conn, MemoryTracking, Query из system.metrics
  • https://t.me/clickhouse_ru
    @webmaks #48837 09:39 AM, 09 Apr 2018
    было бы здорово
  • https://t.me/clickhouse_ru
    @Sablast ↶ Reply to #48833 #48838 09:49 AM, 09 Apr 2018
    разве это не то поведение которе вам было нужно?:
    SELECT substring('some text string for example', 3)

    ┌─substring(\'some text string for example\', 3)─┐
    │ me text string for example │
    └───────────────────────────
  • https://t.me/clickhouse_ru
    https://github.com/yandex/ClickHouse/blob/master/CONTRIBUTING.md - ссылка на Developer guide ведёт на 404
    yandex/ClickHouse

    ClickHouse is a free analytic DBMS for big data. Contribute to yandex/ClickHouse development by creating an account on GitHub.

  • @vladk1m0 #48840 11:05 AM, 09 Apr 2018
    Joined.
  • @pookieShmukie #48841 12:24 PM, 09 Apr 2018
    @ztlpn @milovidov_an
    Ребят, добрый день! Надыбал кейс когда Buffer таблица не очищает данные почему то.
    1. Создаем ReplacingMergeTree таблицу
    2. Для нее создаем Buffer таблицу
    3. Пишем данные в Buffer таблицу
    4. Делаем DROP Buffer таблицы
    5. Делаем SELECT в ReplacingMergeTree таблицу - записей из буффера нет.
    6. Повторно создаем Buffer таблицу
    7. Делаем SELECT в только что созданную Buffer таблицу и видим там строки, которые были ранее вставленны

    В логах ошибок нет.
  • @pookieShmukie #48842 12:25 PM, 09 Apr 2018
    Версия 1.1.54370
  • https://t.me/clickhouse_ru
    @JenZolotarev #48843 12:26 PM, 09 Apr 2018
    предположу, что удаление происходит не сразу, а вы таблицу Buffer с тем же именем создаете
  • Да. Просто в документации написано, что сброс данных происходит при DROP Buffer таблицы
  • @pookieShmukie #48845 12:27 PM, 09 Apr 2018
    А по факту этого не произошло в моем случае
  • @pookieShmukie #48846 12:29 PM, 09 Apr 2018
    Так же в документации написано

    Данные сбрасываются из буфера и записываются в таблицу назначения, если выполнены все min-условия или хотя бы одно max-условие.

    У меня max_time стоит 60 и данные до сих пор не сбросились, хотя прошло уже минут 10
  • @pookieShmukie #48847 12:36 PM, 09 Apr 2018
    И вот такая строка из буффера превращается вот в такую.
    https://img.facedsid.ru/jtzrz.jpg
  • @pookieShmukie #48848 12:36 PM, 09 Apr 2018
    Буффер таки сработал после нескольких переудалений
  • @pookieShmukie #48849 12:39 PM, 09 Apr 2018
    Вот create table для таблицы
    CREATE TABLE IF NOT EXISTS video_seconds_views (
    entityIri String,
    courseId UInt64,
    learnerId UInt64,
    testColumn String,
    secondsViews Nested(
    viewId String,
    startedAt DateTime,
    endedAt DateTime,
    secondsViewed Array(UInt8),
    secondsCounts Array(UInt32)
    ),
    version DateTime
    ) ENGINE = ReplacingMergeTree(version) PARTITION BY entityIri ORDER BY (learnerId, entityIri) SETTINGS index_granularity = 8192;
  • @201321484 #48850 12:40 PM, 09 Apr 2018
    а зачем вообще удалять буфер ?
    он для того и сделан, чтобы писать в него, он когда надо перекинет данные.
    и читать надо из буфера.
    тогда будут подтягиваться все данные
  • @pookieShmukie #48851 12:42 PM, 09 Apr 2018
    Блин, я его удалил, что бы очистить принудительно, что бы проверить теорию относительно порчи данных
  • @pookieShmukie #48852 12:42 PM, 09 Apr 2018
    И вот такая строка из буффера превращается вот в такую.
    https://img.facedsid.ru/jtzrz.jpg
  • @pookieShmukie #48853 12:43 PM, 09 Apr 2018
    И теория таки подтвердилась. Если в Nested есть Array, числовой по крайней мере, то при сбросе буфера массив "опустошается" чудным образом
  • @pookieShmukie #48854 12:44 PM, 09 Apr 2018
    Хы...все веселее! При записи в саму таблицу такая же канитель. Просто пустые массивы пишутся
  • https://t.me/clickhouse_ru
    я думаю что это хороший повод для issue на github?
  • @pookieShmukie #48856 12:44 PM, 09 Apr 2018
    Я хочу узнать вкурсе ли ребята или нет и потом уже заводить issue ) Может быть у них есть задача во внутреннем трекере
  • @pookieShmukie #48857 12:47 PM, 09 Apr 2018
    например, многомерные массивы нельзя сохранить в таблицы с движком семейства MergeTree
  • @pookieShmukie #48858 12:48 PM, 09 Apr 2018
    И в это же время в changelog 1.1.54337
    Добавлена поддержка хранения многомерных массивов и кортежей (тип данных Tuple) в таблицах.
  • @kochetovnicolai #48859 12:52 PM, 09 Apr 2018
    Заводите issue. Поддержка была добавлена, но такие проблемы могут случаться.
  • @pookieShmukie #48860 12:53 PM, 09 Apr 2018
    Ок. А как от них можно избавиться? ) Например тип на String можно сменить?
  • @pookieShmukie #48861 12:53 PM, 09 Apr 2018
    issue сейчас заведу
  • @kochetovnicolai #48862 12:55 PM, 09 Apr 2018
    Можно попробовать. Сам еще не сталкивался, так что не знаю, что посоветовать.
  • @geklmn #48863 01:01 PM, 09 Apr 2018
    Joined.
  • Смена типа не помогает. Все ок работает только именно с Array(Array()), но Nested внутри которого Array - не работает ни с числами, ни со строками.
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #48864 #48865 01:08 PM, 09 Apr 2018
    но ведь nested, внутри которого array, это и есть array(array())
  • @pookieShmukie #48866 01:08 PM, 09 Apr 2018
    Но при этом в движке Buffer это срабатывает, скорее всего из-за того, что есть AS table... и вот show create table показывает, что там не Nested, а именно Array(Array(String)) например и в Buffer таблице все ок работает.
  • Да, но факт остается фактом. Если в SQL запросе на создание таблицы фигурирует Nested внутри которого есть колонка типа Array, то при вставке данных в такую таблицу - все что в многомерном массиве - испаряется. Пример я приводил выше. Сейчас создал просто вот такого вида таблицу

    CREATE TABLE IF NOT EXISTS video_seconds_views (
    entityIri String,
    courseId UInt64,
    learnerId UInt64,
    testColumn String,
    secondsViews_ViewId Array(String),
    secondsViews_StartedAt Array(DateTime),
    secondsViews_EndedAt Array(DateTime),
    secondsViews_SecondsViewed Array(Array(UInt8)),
    secondsViews_SecondsCounts Array(Array(UInt32)),
    version DateTime
    ) ENGINE = ReplacingMergeTree(version) PARTITION BY entityIri ORDER BY (learnerId, entityIri) SETTINGS index_granularity = 8192;
    и все работает
  • @514280319 #48868 01:21 PM, 09 Apr 2018
    Joined.
  • Multidimensional array does not work in Nested columns #2193

    There is an example of table structure with Nested column which contains two Array columns. CREATE TABLE IF NOT EXISTS video_seconds_views ( entityIri String, courseId UInt64, learnerId...

  • @kochetovnicolai #48870 01:22 PM, 09 Apr 2018
    Спасибо!
  • https://t.me/clickhouse_ru
    @wingrime #48871 02:18 PM, 09 Apr 2018
    Кто нибудь запускал Dynamic Bayesian Network напрямую в кликхаусе?
  • https://t.me/clickhouse_ru
    @Deazer123 #48872 02:24 PM, 09 Apr 2018
    Здравствуйте! Возможно как-то узнать sharding key уже созданной distributed таблицы?
  • https://t.me/clickhouse_ru
    наверное show create table поможет
  • https://t.me/clickhouse_ru
    @Deazer123 #48874 02:27 PM, 09 Apr 2018
    Хм. Спасибо. А в системных табличках без чтения DDL?
  • https://t.me/clickhouse_ru
    @ank1812 #48875 02:29 PM, 09 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @sergun_spb #48876 02:31 PM, 09 Apr 2018
    Подскажите, есть ли туториал как настроить ZooKeeper для работы с ReplicatedMergeTree таблицами ?
  • https://t.me/clickhouse_ru
    @sergun_spb #48877 02:32 PM, 09 Apr 2018
    Или для относительно небольших обьемов(50 инсертов в секунду) лучше использовать репликацию посредством Distributed таблиц ?
  • https://t.me/clickhouse_ru
    @stufently #48878 02:37 PM, 09 Apr 2018
    всегда лучше использовать зукипер
  • https://t.me/clickhouse_ru
    @stufently #48879 02:38 PM, 09 Apr 2018
    50 инсертов уже не мало, лучше бы по реже и большими пачками
  • https://t.me/clickhouse_ru
    к сожалению так не получиться, вот смотрю в сторону Buffer таблиц, но их тоже критикуют
  • https://t.me/clickhouse_ru
    @mrlamberg #48881 02:39 PM, 09 Apr 2018
    кафку поставить?
  • https://t.me/clickhouse_ru
    да вот не перебор ли, мб и так база справиться
  • https://t.me/clickhouse_ru
    @mrlamberg #48883 02:40 PM, 09 Apr 2018
    вешатся будет
  • https://t.me/clickhouse_ru
    @mrlamberg #48884 02:40 PM, 09 Apr 2018
    наглухо
  • https://t.me/clickhouse_ru
    @mrlamberg #48885 02:40 PM, 09 Apr 2018
    периодически
  • https://t.me/clickhouse_ru
    А как критикуют буферные таблицы?
  • https://t.me/clickhouse_ru
    Если таблица назначения является реплицируемой, то при записи в таблицу Buffer будут потеряны некоторые ожидаемые свойства реплицируемых таблиц. Из-за произвольного изменения порядка строк и размеров блоков данных, перестаёт работать дедупликация данных, в результате чего исчезает возможность надёжной exactly once записи в реплицируемые таблицы.

    В связи с этими недостатками, таблицы типа Buffer можно рекомендовать к применению лишь в очень редких случаях.
  • https://t.me/clickhouse_ru
    @sergun_spb #48888 02:45 PM, 09 Apr 2018
    это из офф документации
  • https://t.me/clickhouse_ru
    не ужели все так плохо? Вешаться на вставку ? Или и чтении в том числе ? Я пока столькнлся только с тем что место на диске выжирается, но это при нескольких тысячах инсертов в секунду
  • https://t.me/clickhouse_ru
    @nicname #48890 04:47 PM, 09 Apr 2018
    а подскажите такую штуку, у меня есть небольшой набор пар "ключ-значение", типа
    MyId | Description
    1111 | Petya
    2222 | Vasya

    и выборка из другой большой таблицы, которую я группирую по MyId, в виде
    1111 | 49
    2222 | 1023
    я бы хотел вместо кодов видеть поля из Description из первой таблицы

    то есть это должно быть
    Petya | 49
    Vasya | 1023

    есть какой-то элегантный способ эту задачу решить?
  • https://t.me/clickhouse_ru
    ну вроде как через dictionary можно, либо join
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48888 #48892 05:32 PM, 09 Apr 2018
    Ну, дедупликация не будет работать и с 99.9 % самодельных батчеров, так что это меньшее зло
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @nicname #48894 05:41 PM, 09 Apr 2018
    спасибо
  • https://t.me/clickhouse_ru
    @wingrime #48895 07:09 PM, 09 Apr 2018
    есть ли способ отсортировать массив функцией ?
  • https://t.me/clickhouse_ru
    @orantius #48896 07:19 PM, 09 Apr 2018
    arraySort?
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #48895 #48898 07:21 PM, 09 Apr 2018
    :) select groupArray(a) from (select arrayJoin([1,5,2,9,3,8,18,4]) a order by a)

    ┌─groupArray(a)──────┐
    │ [1,2,3,4,5,8,9,18] │
    └────────────────────┘
  • https://t.me/clickhouse_ru
    @wingrime ↶ Reply to #48896 #48899 07:23 PM, 09 Apr 2018
    ага? чего его нет в доках
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #48896 #48900 07:23 PM, 09 Apr 2018
    :) select arraySort([1, 5, 2, 9, 3, 8, 18, 4])

    ┌─arraySort([1, 2, 3, 4, 5, 8, 9, 18])─┐
    │ [1,2,3,4,5,8,9,18] │
    └──────────────────────────────────────┘
    класс )) а в доке нема
  • https://t.me/clickhouse_ru
    @Shegloff #48901 07:25 PM, 09 Apr 2018
    еще такая есть
    :) select arrayReverseSort([1, 5, 2, 9, 3, 8, 18, 4])

    ┌─arrayReverseSort([1, 5, 2, 9, 3, 8, 18, 4])─┐
    │ [18,9,8,5,4,3,2,1] │
    └─────────────────────────────────────────────┘
  • https://t.me/clickhouse_ru
    @wingrime #48902 07:27 PM, 09 Apr 2018
    а там нету сразу nDCG@K ?
  • Я баловался до поры инсертами в сотню потоков. Выжимал хороший инсерт рейт, но как только стал писать чуточку больше (объем данных), то КХ стало плохо. Он действительно подвисал на фоновых мерджах. У меня на сервере крутится 100 процессов, которые обрабатывают данные и готовят к записи в КХ. Я просто пишу все это дело в кучу по разным файлам. Раз в минуту формирую список файлов, которые нужно вставить в КХ, перемещаю их в другую директорию, мерджу в один файл и вставляю. Максимальная задержка - 1 минута, что вполне себе ок., учитывая то, что это не вешает сервак даже на чтение, а api падало по таймаутам достаточно часто, несмотря на то, что у меня 4 шарда по 2 реплики.
  • Можно сделать PR в гитхабе с исправленной документацией! :)
  • https://t.me/clickhouse_ru
    Спасибо, а реплики с replicatedMergeTree или distributed ?
  • replicated, а поверх них distributed (на всех шардах и репликах), пишу данные в случайную реплику
  • @pookieShmukie #48907 08:11 PM, 09 Apr 2018
    Т.е. случайно одну из восьми машин выбираю и туда пишу
  • https://t.me/clickhouse_ru
    Тогда надо в сторону буфер смотреть
  • https://t.me/clickhouse_ru
    Тут все используют репликейтед нет смысла его не использовать если нужна гарантия одинаковых данных на репликах
  • https://t.me/clickhouse_ru
    Блин, не могу найти документы как этот зоокипер настроить
  • Я буфер использую тоже, но для таблиц в которые данные ну просто в ничтожных количествах пишутся
  • https://t.me/clickhouse_ru
    Так distributed тоже режим реплики поддерживает , но смущает что почему то данные могут немного разъехаться
  • https://t.me/clickhouse_ru
    В ничтожных - это сколько ?, в доке пишут что несколько тыщ в секунду держит
  • @pookieShmukie #48914 08:19 PM, 09 Apr 2018
    Ну, это если по одной строке писать ) я пишу в такие таблице не чаще чем 500 строк в минуту. Просто данных больше нет.
  • https://t.me/clickhouse_ru
    Оно по дефолту умеет , вы разберитесь что такие зукипер сперва
  • https://t.me/clickhouse_ru
    Ну тут очевидно если что то пошло не так оно не умеет разруливать это
  • https://t.me/clickhouse_ru
    @Shegloff #48917 08:20 PM, 09 Apr 2018
    ну там репликацией, в понимании этого слова, и не пахнет, просто данные дублируются и все. а тут тебе реплика и попорченные данные сама скачает, и не позволит дубли записать, и восстановится после сбоя, одни плюсы
  • https://t.me/clickhouse_ru
    Ну там надо понимать что можно записать что тысяч сорок в секунду одним батчем но нельзя записать сто тысяч строк по одной
  • https://t.me/clickhouse_ru
    Это я понял , в принципе устраивает
  • https://t.me/clickhouse_ru
    Зукипер это как etcd примерно только по сути распределённая файловая система на джава
  • https://t.me/clickhouse_ru
    Завтра попробую разобраться, сегодня с наскоку не получилось . Доку для разработчиков надо читать ? Или для админов ?
  • https://t.me/clickhouse_ru
    @sergun_spb #48922 08:25 PM, 09 Apr 2018
    Ок, буду настраивать replicated tree
  • https://t.me/clickhouse_ru
    @stufently #48923 08:26 PM, 09 Apr 2018
    Для админов
  • https://t.me/clickhouse_ru
    @wingrime #48924 09:32 PM, 09 Apr 2018
    sum(чего то) выдало NULL
  • https://t.me/clickhouse_ru
    @wingrime #48925 09:32 PM, 09 Apr 2018
    чего это может быть
  • https://t.me/clickhouse_ru
    @wingrime #48926 09:41 PM, 09 Apr 2018
    понятно - это так таббикс NaN читает
  • 10 April 2018 (91 messages)
  • https://t.me/clickhouse_ru
    @BloodJazMan #48927 05:06 AM, 10 Apr 2018
    а правильно ли я понимаю что
    Common/ProfileEvents.h
    эта статистика не хранится в system таблицах и может быть доступна только через <use_graphite>true</use_graphite> ?
  • @ztlpn ↶ Reply to #48927 #48928 05:59 AM, 10 Apr 2018
    В system.events доступна
  • https://t.me/clickhouse_ru
    SELECT * FROM system.events
    не могу найти DuplicatedInsertBlocks со значнеием 0
    в graphite выгружается
    оно там появляется только есил репликация есть?
  • https://t.me/clickhouse_ru
    @nicname #48930 07:29 AM, 10 Apr 2018
    а у нас sqrt есть, а sqr нету?
  • @N0tNu11 #48931 07:43 AM, 10 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @nicname ↶ Reply to #48930 #48932 07:46 AM, 10 Apr 2018
    значит не нужна!
  • https://t.me/clickhouse_ru
    @tommi_v #48933 07:54 AM, 10 Apr 2018
    ну так это не только у нас
  • https://t.me/clickhouse_ru
    @tommi_v #48934 07:54 AM, 10 Apr 2018
    но i * i должно вам помочь
  • https://t.me/clickhouse_ru
    @nicname #48935 07:59 AM, 10 Apr 2018
    ну да, я и говорю – не нужна. там просто не i, а просто myVeryVeryLongNamedColumn поэтому и спросил )
  • https://t.me/clickhouse_ru
    @alexey_konkov #48936 08:00 AM, 10 Apr 2018
    а что-то типа POW нет разве?
  • https://t.me/clickhouse_ru
    @nicname #48938 08:02 AM, 10 Apr 2018
    да, оно, спасибо
  • @559373089 #48939 08:17 AM, 10 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @BloodJazMan #48940 10:21 AM, 10 Apr 2018
    AsynchronousMetrics.MaxPartCountForPartition

    а кто нибудь может точно объяснить что именно означает эта метрика?
  • https://t.me/clickhouse_ru
    @xammett #48941 10:54 AM, 10 Apr 2018
    парни привет, вы наверно сталкивались с проблемой DB::Exception: Timeout exceeded: elapsed 5.000088625 seconds, когда запрос после 5 секунд валится, есть атрибут max_execution_time, который отвечает за это дело, но при прописывании в конфиге и ребуте после этого, значение в таблице settings остается тем же
  • https://t.me/clickhouse_ru
    @xammett #48942 10:55 AM, 10 Apr 2018
    может быть я что-то неправильно делаю
  • https://t.me/clickhouse_ru
    @xammett #48943 10:56 AM, 10 Apr 2018
    у вас были подобные проблемы?
  • https://t.me/clickhouse_ru
    @Shegloff #48944 10:56 AM, 10 Apr 2018
    ребут не нужен, подхватывается налету, прописывается в профиль в файле users.xml
  • https://t.me/clickhouse_ru
    @xammett ↶ Reply to #48944 #48945 10:57 AM, 10 Apr 2018
    спасибо, думал, что в config.xml
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @xammett ↶ Reply to #48946 #48947 11:01 AM, 10 Apr 2018
    отлично, спасибо
  • https://t.me/clickhouse_ru
    @Sberdyshev #48948 12:10 PM, 10 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @Sberdyshev #48949 12:13 PM, 10 Apr 2018
    Народ, подскажите, а есть ли в РФ компании, предоставляющие поддержку CH?
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @Sberdyshev #48951 12:18 PM, 10 Apr 2018
    Они вроде в UK
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48951 #48952 12:19 PM, 10 Apr 2018
    Они вполне себе и в России, вы можете связаться @alexanderzaitsev
  • https://t.me/clickhouse_ru
    Спасибо!
  • @sr_maks1 #48954 12:31 PM, 10 Apr 2018
    Привет! Кто нибудь использует коннект к КХ из node js?
  • https://t.me/clickhouse_ru
    @kmarenov ↶ Reply to #48954 #48955 12:38 PM, 10 Apr 2018
    Привет, я использую
  • @sr_maks1 ↶ Reply to #48955 #48956 12:39 PM, 10 Apr 2018
    node-clickhouse этот? он стабилен?
  • https://t.me/clickhouse_ru
    @kmarenov #48957 12:41 PM, 10 Apr 2018
    у нас в продакшене вот это https://github.com/apla/node-clickhouse
    стабилен, проблем нет
    GitHub - apla/node-clickhouse: Yandex ClickHouse driver for nodejs

    Yandex ClickHouse driver for nodejs. Contribute to apla/node-clickhouse development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    @aloneibreak #48958 12:52 PM, 10 Apr 2018
    добрый день
    подскажите пожалуйста какие допустимые значения для настройки
    distributed_product_mode
    в документации этого нет
  • https://t.me/clickhouse_ru
    @dMitin #48959 01:00 PM, 10 Apr 2018
    Joined.
  • @AndreyPanasyuk #48960 01:38 PM, 10 Apr 2018
    Ачввпммрьодлтииттто
  • @antonio_antuan #48961 01:47 PM, 10 Apr 2018
    робит-робит
  • "deny", "local", "global", "allow"
  • https://t.me/clickhouse_ru
    спасибо. а не подскажите заодно для каких случаев какое значение? )
  • @kochetovnicolai #48964 01:54 PM, 10 Apr 2018
    Я не знаю, но есть вот такой кусок кода:
    /// The setting for executing distributed subqueries inside IN or JOIN sections.
    enum class DistributedProductMode
    {
    DENY = 0, /// Disable
    LOCAL, /// Convert to local query
    GLOBAL, /// Convert to global query
    ALLOW /// Enable
    };
  • https://t.me/clickhouse_ru
    @aloneibreak #48965 01:55 PM, 10 Apr 2018
    спасибо
  • https://t.me/clickhouse_ru
    @Sharmanshik #48966 02:05 PM, 10 Apr 2018
    Мм, господа, подтвердите плиз, допустим есть шард, в нем к примеру 2 реплики, на которых при запуске были вывполнены правильные create table, затем на одной из реплик были выполнены какие либо alter, которые успешно отреплицировались, теперь я добавляю 3 реплику в шард, для того чтобы поднялась репликация я на новой реплике так же должен сказать create table, теперь вопрос схема таблицы должна быть такая же точно как на тех двух уже сущесвтующих репликах?
  • https://t.me/clickhouse_ru
    @neiwick #48967 02:06 PM, 10 Apr 2018
    Да, с учетом примененого ALTER'а
  • https://t.me/clickhouse_ru
    @Sharmanshik #48968 02:07 PM, 10 Apr 2018
    мы не можем залить на новую реплику некую промежуточную схему и затем при помощи alter довести ее до состояния остальных реплик в шарде, поскольлку это корректируюшие alter бутут в свою очередь реплицированы, что может привести к странным результатам (если таблица вообще создастся)
  • https://t.me/clickhouse_ru
    @Sharmanshik #48969 02:08 PM, 10 Apr 2018
    ясно, спасибо
  • https://t.me/clickhouse_ru
    @sergun_spb #48970 02:15 PM, 10 Apr 2018
    Подскажите пожалуйста, почему может не проходить репликация в одном направление. Есть две таблица с репликациеями между ними, если писать в node1 , то данные в node2 появляються, Наборот - нет. Причем в system.replicas видно что queue_size увеличивается.
    Тут http://collabedit.com/vpg4u по system_replicas результат селектов.
  • https://t.me/clickhouse_ru
    @neiwick #48971 02:18 PM, 10 Apr 2018
    Проверьте доступность порта 9009 на node1 с node2
  • https://t.me/clickhouse_ru
    проверил, все ок
  • https://t.me/clickhouse_ru
    @sergun_spb #48973 02:23 PM, 10 Apr 2018
    а вот с node1 на node2 не пашет
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48970 #48974 02:23 PM, 10 Apr 2018
    В system.replication_queue почему оно не работает
  • https://t.me/clickhouse_ru
    @kshvakov #48975 02:24 PM, 10 Apr 2018
    С node1 резолвится node2?
  • https://t.me/clickhouse_ru
    да, там last_exception: Poco::Exception. Code: 1000, e.code() = 111, e.displayText() = Connection refused, e.what() = Connection refused
  • https://t.me/clickhouse_ru
    резолвится
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #48976 #48978 02:28 PM, 10 Apr 2018
    Вот, в /var/log/clickhouse-server/clickhouse-server.err.log будет более подробно куда он стучится и вот то куда он стучится недоступно
  • https://t.me/clickhouse_ru
    @neiwick ↶ Reply to #48972 #48979 02:28 PM, 10 Apr 2018
    Я следовал вашему сообщению. Если верить логу что вы дали то проблемы с доступом как раз к node2, и данные не появляются в ней, так как очередь копится на первой. Посмотрите в настройки node2, возможно на ней просто закрыт порт, она слушает неправильный адрес, или прописано что-то плохое в https://clickhouse.yandex/docs/en/operations/server_settings/settings/#interserver_http_port
  • https://t.me/clickhouse_ru
    спасибо, разобрался, просто node2 слушал локалхост . Как раз с node1 на node2 проходила репликация, в другую сторону нет, проверил дважды.
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #48972 #48981 02:39 PM, 10 Apr 2018
    🤔
  • @219619353 #48982 02:48 PM, 10 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @sergun_spb #48983 03:04 PM, 10 Apr 2018
    а кто нить у себя в проде дедупликацию отключает для репликейтед таблиц ?
  • https://t.me/clickhouse_ru
    @kshvakov #48984 03:05 PM, 10 Apr 2018
    Там дедупликация на уровне блоков, чтоб она рабатола нужно постораться.
  • https://t.me/clickhouse_ru
    @sergun_spb #48985 03:08 PM, 10 Apr 2018
    по дефолту 100 блоков, я возможно упрусь, так как планирую активно юзать ReplicatedAggregatingMergeTree
  • https://t.me/clickhouse_ru
    @kshvakov #48986 03:09 PM, 10 Apr 2018
    Вам для дедупликации нужно гарантировать что вы вставляете полностью идентичные блоки (тогда КХ поймет что это дубли)
  • https://t.me/clickhouse_ru
    @kshvakov #48987 03:12 PM, 10 Apr 2018
    Пример:

    У нас есть демон который читает из кафки и сбрасывает блоки по таймеру или при определенном количестве строк в блоке. Если что-то пошло не так эти строки из буфера не удаляются и встявятся потом, в каком это будет порядке не понятно, как и количество строк которое мы сбросим. Поэтому у нас дедупликация работать не может
  • https://t.me/clickhouse_ru
    @kshvakov #48988 03:13 PM, 10 Apr 2018
    Но! У нас CollapsedMergeTree который по PK удалит дубликаты
  • https://t.me/clickhouse_ru
    @sergun_spb #48989 03:15 PM, 10 Apr 2018
    ок, наверное действительно надо постараться что бы в проде попасть на дедупликацию
  • @mfilimonov #48990 03:42 PM, 10 Apr 2018
    Добрый вечер. Если в clickhouse-client вставить из буффера какой-нибудь длиннющий многострочный запрос - то фрагменты этого запроса (обычно на конце линий) волшебным и весьма неприятным образом теряются. Сначала грешил на screen/ssh но локально тоже самое. Кто-то сталкивался, или это у меня какой-то неправильный билд?
  • https://t.me/clickhouse_ru
    @proller #48991 03:44 PM, 10 Apr 2018
    а если в какой-нибудь vim-mcedit вставлять то все норм ?
  • https://t.me/clickhouse_ru
    @mytempo #48992 03:56 PM, 10 Apr 2018
    Всем добрый вечер. Есть желание ходить в кликхаус спарком, кто-какие способы оптимизации этого дела знает (помимо не ходить)? Поделитесь, пожалуйста
  • https://t.me/clickhouse_ru
    Можно ходить, ничего страшного нет
  • https://t.me/clickhouse_ru
    @mytempo #48994 04:00 PM, 10 Apr 2018
    Это да, но что можно сделать, чтобы это быстрее было? Помимо вдумчивого использования партиций. Вдруг что-то есть.
  • https://t.me/clickhouse_ru
    @den_crane #48995 05:01 PM, 10 Apr 2018
    Обычно я использую для неопределенной даты окончания периода -- 9999-12-31 23:59:59
    Получается удобно писать
    вместо date_begin <= today() and (date_end >= today() or date_end is null)
    я пишу today() between date_begin and date_end

    Но CH превращает 9999-12-31 23:59:59 --> 1970-01-01 19:59:59

    И что делать? Как жить дальше? Что использовать в виде суперудаленного будущего?
  • https://t.me/clickhouse_ru
    @orantius #48996 05:03 PM, 10 Apr 2018
    2038
  • https://t.me/clickhouse_ru
    @den_crane #48997 05:09 PM, 10 Apr 2018
    Ок. Спс. Надеюсь я сдохну до 38 года и меня коллеги не достанут за такие красивые грабли.
  • https://t.me/clickhouse_ru
    @alexanderzaitsev #48998 05:11 PM, 10 Apr 2018
    Там же давно до 2106 подняли
  • https://t.me/clickhouse_ru
    @alexanderzaitsev #48999 05:12 PM, 10 Apr 2018
    1.1.54310
    Диапазон значений типов Date и DateTime расширен до 2105 года.
  • https://t.me/clickhouse_ru
    @orantius #49000 05:12 PM, 10 Apr 2018
    еще 70 лет, живем. видимо начали секунды считать как uint.
  • https://t.me/clickhouse_ru
    @den_crane #49001 05:26 PM, 10 Apr 2018
    ОК, отлично, но вообще 70 лет хватит не всем (Desperate gas producers sign 100-year shipping deals....).
  • https://t.me/clickhouse_ru
    @alexanderzaitsev #49002 05:27 PM, 10 Apr 2018
    если Газпром заюзаеют CH, тогда придется подумать )
  • https://t.me/clickhouse_ru
    @leidruid ↶ Reply to #48999 #49003 05:31 PM, 10 Apr 2018
    гораздо хуже, что он начинается с 1970 года
  • https://t.me/clickhouse_ru
    @n_mitrofanov #49004 05:50 PM, 10 Apr 2018
    Здравствуйте! Есть таблица типа Memory. После удаления таблицы память не освобождается. Только после перезапуска сервера. Это баг или фича? Или есть возможность покрутить конфигурацию, что бы память срузу освобождалась. ClickHouse server version 1.1.54370
  • https://t.me/clickhouse_ru
    скорее всего фича. Кстати какая память? Вот пример из top
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    3189 clickho+ 20 0 0.105t 0.022t 40820 S 1480 12.0 48474:04 clickhouse-serv

    Я бы на VIRT столбик вообще не смотрел, т.е. реально КХ занимает 0.022TБ.
  • https://t.me/clickhouse_ru
    Нет, вроде физическая

    До добавления таблицы
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    3928 clickho+ 20 0 1819520 1,029g 38588 S 0,0 6,6 0:04.20 /usr/bin/clickhouse-server —config=/etc/clickhouse-server/config.xml

    После добавления таблицы
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    3928 clickho+ 20 0 1844096 1,170g 42748 S 0,0 7,5 0:05.80 /usr/bin/clickhouse-server —config=/etc/clickhouse-server/config.xml

    После drop table
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    3928 clickho+ 20 0 1844096 1,169g 42748 S 0,3 7,5 0:05.89 /usr/bin/clickhouse-server —config=/etc/clickhouse-server/config.xml

    З.Ы. Таблица мелкая - 3KK строк.
  • https://t.me/clickhouse_ru
    @den_crane #49007 06:25 PM, 10 Apr 2018
    1,169g ну по-моему это нормально, это не отдаст, чтобы не перезапрашивать.

    Можно смотреть
    SELECT metric, formatReadableSize(value) FROM system.asynchronous_metrics where (metric LIKE 'generic%')
    сколько показывает generic.current_allocated_bytes, должно быть около 1,169 (не отличаться в разы)
  • https://t.me/clickhouse_ru
    @Shegloff #49008 06:45 PM, 10 Apr 2018
    нужно ли что-то делать если селект висит и висит и не отваливается
  • https://t.me/clickhouse_ru
    @Shegloff #49009 06:45 PM, 10 Apr 2018
    kill не помогает
  • https://t.me/clickhouse_ru
    @Shegloff #49010 06:45 PM, 10 Apr 2018
    elapsed: 13608.366977925
  • https://t.me/clickhouse_ru
    @Shegloff #49011 06:46 PM, 10 Apr 2018
    вроде не мешает...
  • https://t.me/clickhouse_ru
    @Shegloff #49012 06:49 PM, 10 Apr 2018
    'waiting' - запросу отправлен сигнал завершения, ожидается его остановка; и так 3 часа уже
  • https://t.me/clickhouse_ru
    Прямо после drop'a
    generic.heap_size 1.25 GiB
    generic.current_allocated_bytes 1.14 GiB

    Через секунд 30
    generic.heap_size 1.25 GiB
    generic.current_allocated_bytes 23.54 MiB

    Это он оказывается для heap'а держит. Спасибо за консультацию.
  • угу. По ощущениям - это связано в первую очередь со сложностью запроса, во вторую очередь с размером. Т.е. тривиальные большие запросы без проблем из буфера вставляются, а нетривиальные большие - часто портятся при вставке. Попробую сделать воспроизводимый пример.
  • https://t.me/clickhouse_ru
    @proller ↶ Reply to #49012 #49015 07:46 PM, 10 Apr 2018
    Снять трейс всех тредов через gdb и показать -
    sudo apt install clickhouse-common-dbg gdb
    sudo gdb -ex run -batch -ex 'set pagination off' -ex "set logging file gdb.log" -ex 'set logging on' -ex 'continue' -ex 'thread apply all backtrace' -ex 'detach' -ex 'quit' -p $(pidof clickhouse-server)
  • https://t.me/clickhouse_ru
    @proller #49016 07:53 PM, 10 Apr 2018
    и версию сервера конечно
  • https://t.me/clickhouse_ru
    @Shegloff #49017 08:42 PM, 10 Apr 2018
    спс, если до завтра висеть будет, сделаю
  • https://t.me/clickhouse_ru
    @Shegloff #49018 08:42 PM, 10 Apr 2018
    пока висит :)
  • 11 April 2018 (149 messages)
  • https://t.me/clickhouse_ru
    @BloodJazMan #49019 04:19 AM, 11 Apr 2018
    Всем кому интересно как мониторить Clickhouse встроенными в CH средствами

    собрал демо-стенд
    https://github.com/Slach/clickhouse-metrics-grafana
    планирую улучшать Dashboards и добавить Moira Alerts
    и попробую все таки написать документацию
    Slach/clickhouse-metrics-grafana

    Clickhouse grafana dashboard with graphite storage - Slach/clickhouse-metrics-grafana

  • https://t.me/clickhouse_ru
    @JenZolotarev #49020 04:20 AM, 11 Apr 2018
    Интересно, надо будет прикрутить к себе, спасибо
  • @Efber #49021 04:37 AM, 11 Apr 2018
    Joined.
  • @andrey45263 #49022 06:23 AM, 11 Apr 2018
    Подскажите пожалуйста, CH из коробки, столбец с часто повторяющимися значениями Строки, создает ли CH под капотом какой-то словарь по столбцу для улучшения производительности, отъедает ли эта оптимизация оперативки у системы для дальнейшего отображения резулататов запроса? Спасибо
  • https://t.me/clickhouse_ru
    @stufently #49023 06:24 AM, 11 Apr 2018
    не создает
  • https://t.me/clickhouse_ru
    @stufently #49024 06:24 AM, 11 Apr 2018
    в целом все данные пожаты, тем более повторяющиеся
  • @andrey45263 #49025 06:25 AM, 11 Apr 2018
    спасибо!
  • https://t.me/clickhouse_ru
    @sergebezborodov #49026 07:07 AM, 11 Apr 2018
    Друзья, приветствую!

    подскажите, есть ли аналог mysql функции bit_count? (не нашел в доке)
    нужно посчитать расстояние Хэмминга по симхешу
  • https://t.me/clickhouse_ru
    @nicname ↶ Reply to #49019 #49027 07:15 AM, 11 Apr 2018
    а как вот это прикрутить в графану?
    https://github.com/Slach/clickhouse-metrics-grafana/tree/master/grafana
    Slach/clickhouse-metrics-grafana

    clickhouse-metrics-grafana - Clickhouse grafana dashboard with graphite storage

  • https://t.me/clickhouse_ru
    @nicname #49028 07:15 AM, 11 Apr 2018
    или это два разных дашборда?
  • https://t.me/clickhouse_ru
    @nicname #49029 07:17 AM, 11 Apr 2018
    а, у меня через прометеус все тянется, это не подойдет, похоже
  • https://t.me/clickhouse_ru
    @Mblpz0r #49030 09:46 AM, 11 Apr 2018
    Добрый день друзья
    прочитав доку по КХ и посмотрев как делаются там бекапы
    верно ли я понимаю что можно удалить /var/lib/clickhouse/shadow/ после копирования и сам КХ не сломается?
    подскажите пожалуйста
  • https://t.me/clickhouse_ru
    а зачем удалять?
  • https://t.me/clickhouse_ru
    @Mblpz0r ↶ Reply to #49031 #49032 10:01 AM, 11 Apr 2018
    ну потому-что я скопировал на другой сервер
    локально бекапы ненужны
  • https://t.me/clickhouse_ru
    Все что в shadow можно удалить. Саму папку лучше сотавить
  • https://t.me/clickhouse_ru
    @Mblpz0r ↶ Reply to #49033 #49034 10:14 AM, 11 Apr 2018
    а почему лучше оставить
  • https://t.me/clickhouse_ru
    Если будете делать бекапы еще, они будут складыватсья в эту папку
  • https://t.me/clickhouse_ru
    @149051052 #49036 10:15 AM, 11 Apr 2018
    Я не уверен, что CH сам ее создаст
  • https://t.me/clickhouse_ru
    @Mblpz0r #49037 10:16 AM, 11 Apr 2018
    спасибо огромное за помощь
  • https://t.me/clickhouse_ru
    @ivor06 #49039 10:38 AM, 11 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @markovka17 #49040 10:39 AM, 11 Apr 2018
    Привет!
    Подскажите, кто знает
    Например, есть таблица, где три колонки(date, value, type)
    И в type есть три возможных значения
    Как теперь это таблицу "транспонировать", чтобы эти три возможных значения стали новыми колонками?
    Как нибудь по-простому можно?
  • https://t.me/clickhouse_ru
    @sergebezborodov #49041 10:43 AM, 11 Apr 2018
    привет, у меня типа такого
    insert into agg_table (url_hash, count_in_301_redirects, count_in_3xx_redirects, count_in_canonicals)
    SELECT url_hash,
    sumIf(value, vtype = 1) AS count_in_301_redirects,
    sumIf(value, vtype = 2) AS count_in_3xx_redirects,
    sumIf(value, vtype = 3) AS count_in_canonicals
    from raw_table
  • https://t.me/clickhouse_ru
    судя по справке все манипуляции с данными делаются через INSERT INTO table2 SELECT * FROM table1, т.е. перебросом в созданную таблицу по заданным критериям, а потом заменой исходной. Могу ошибаться, но ничего более подходящего не видел
  • https://t.me/clickhouse_ru
    @markovka17 #49043 10:45 AM, 11 Apr 2018
    Окей, всем спасиб)
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49026 #49044 10:58 AM, 11 Apr 2018
    судя по
    SELECT *
    FROM system.functions
    WHERE name LIKE '%bit%'функции нет, но ее должно быть несложно добавить, можете сделать задачу об этом.
  • https://t.me/clickhouse_ru
    @orantius #49045 11:01 AM, 11 Apr 2018
    а пока можно на простом sql попробовать тот кусок из hacker's delight реализовать.
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #49040 #49046 11:02 AM, 11 Apr 2018
    новыми колонками в структуре или выводе select?
  • https://t.me/clickhouse_ru
    @Shegloff #49047 11:03 AM, 11 Apr 2018
    добавить три новые колонки, выселектить зачения из type, и вставить их - куда проще-то? =)
  • https://t.me/clickhouse_ru
    @Uncle_Big_Bogdan #49048 11:04 AM, 11 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    Я может не совсем правильно объяснил что хочу

    Но вот как сейчас :
    date | value | type
    -------------------
    1 | 10 | 1
    1 | 15 | 2
    1 | 20 | 3

    И как я хочу :
    date | type_1 | type_2 | type_3
    ------------------------------
    1 | 10 | 15 | 20
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #49040 #49050 11:07 AM, 11 Apr 2018
    можно создать 3 колонки, а вставлять данные только в type, а в доп.колонках сделать типа
    col1 DEFAULT (if type='monkey', 1, 0)
    , они будут сами заполняться
  • https://t.me/clickhouse_ru
    @Shegloff #49051 11:08 AM, 11 Apr 2018
    если у вас имя колонки содержится в значении type, то по-простому никак
  • https://t.me/clickhouse_ru
    @markovka17 #49052 11:11 AM, 11 Apr 2018
    Я так и думал(
    Ну ладно, спасибо
  • https://t.me/clickhouse_ru
    для тех у кого тянется через прометеус уже есть дашборды от fl1egor
  • https://t.me/clickhouse_ru
    @nicname #49054 11:15 AM, 11 Apr 2018
    ага, ну я думал там что-то другое
  • https://t.me/clickhouse_ru
    там будет другого со временем, если руки дойдут
  • https://t.me/clickhouse_ru
    @Uncle_Big_Bogdan #49056 11:22 AM, 11 Apr 2018
    Приветствую , работали с командой в CH , но он упал , при вызове комманды : clickhouse-client --password ... выдает ошибку : code: 210. BD:netexception: connection refused: (localhost: 9000, ::1) проверили этот порт ничем другим не занят, конфиги отредактировали (так что содержит и :: и ::1). Как запустить ?
  • https://t.me/clickhouse_ru
    проверьте не закомментированы ли строчки с ::, я на этом обжигался
  • https://t.me/clickhouse_ru
    Нет, везде стоит < , вместо , <!
  • https://t.me/clickhouse_ru
    @rledovskiy #49059 11:34 AM, 11 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @CYevhenii #49060 11:45 AM, 11 Apr 2018
    Подскажите пожалуйста функцию, для вычисления интервала между датами
  • https://t.me/clickhouse_ru
    @JenZolotarev #49061 11:45 AM, 11 Apr 2018
    через таймстамп?
  • https://t.me/clickhouse_ru
    @CYevhenii #49062 11:45 AM, 11 Apr 2018
    да
  • https://t.me/clickhouse_ru
    @JenZolotarev #49063 11:49 AM, 11 Apr 2018
    это было предложение)
  • https://t.me/clickhouse_ru
    @jusamorez #49064 11:49 AM, 11 Apr 2018
    select toDate('2018-02-01') - toDate('2018-01-01')
    не?)
  • https://t.me/clickhouse_ru
    @CYevhenii #49065 11:51 AM, 11 Apr 2018
    Спасибо
  • @ZVlad #49066 12:22 PM, 11 Apr 2018
    Помогите с запросом.
    Aggregate function sum(Click) is found in WHERE or PREWHERE in query
    IN:SELECT SiteId, (View) as views, sum(Click) as clicks FROM t.events WHERE clicks=150 group by SiteId FORMAT JSON

    Как его составить, что бы небыло такой ошибки?
  • https://t.me/clickhouse_ru
    @qweran ↶ Reply to #49066 #49067 12:24 PM, 11 Apr 2018
    Подзапрос?
  • https://t.me/clickhouse_ru
    @kshvakov #49068 12:24 PM, 11 Apr 2018
    У ClickHouse с алиасами столбцов нужно быть осторожнее и не называть их также как и колонки
  • @ZVlad ↶ Reply to #49067 #49069 12:24 PM, 11 Apr 2018
    Думал, но не сильно ли нагрузит базу?
  • @ZVlad #49070 12:25 PM, 11 Apr 2018
    Алиасы не совпадают с названием колонок
  • https://t.me/clickhouse_ru
    @kshvakov #49071 12:25 PM, 11 Apr 2018
    Совпадают
  • https://t.me/clickhouse_ru
    @kshvakov #49072 12:25 PM, 11 Apr 2018
    clicks
  • @ZVlad #49073 12:26 PM, 11 Apr 2018
    sum(Click) as clicks не совпадают
  • https://t.me/clickhouse_ru
    @kshvakov #49074 12:28 PM, 11 Apr 2018
    where clicks = 150 ? Если хотите повесить условие на выполнение агрегатной функции то используйте HAVING
  • https://t.me/clickhouse_ru
    @tommi_v #49075 12:28 PM, 11 Apr 2018
    having clicks = 150 не пробовали?
  • @ZVlad #49076 12:28 PM, 11 Apr 2018
    Пробовал HAVING. Тоже ничего
  • https://t.me/clickhouse_ru
    @kshvakov #49077 12:30 PM, 11 Apr 2018
    Значит неправильно пробовали SELECT SiteId, (View) as views, sum(Click) as clicks FROM t.events group by SiteId having clicks=150
  • https://t.me/clickhouse_ru
    @tommi_v #49078 12:31 PM, 11 Apr 2018
    :) select game_id, sum(user_id) as sm from event_log group by game_id having sm = 6;

    SELECT
    game_id,
    sum(user_id) AS sm
    FROM event_log
    GROUP BY game_id
    HAVING sm = 6

    ┌─game_id─┬─sm─┐
    │ 186 │ 6 │
    └─────────┴────┘

    1 rows in set. Elapsed: 0.279 sec. Processed 7.95 million rows, 63.57 MB (28.52 million rows/s., 228.17 MB/s.)
  • @ZVlad #49079 12:34 PM, 11 Apr 2018
    Спасибо! Но что то всеравно не так как мне надо )))
  • @andrey45263 #49080 12:49 PM, 11 Apr 2018
    Подскажите пожалуйста что делать в случае <Debug> MergeTreeReadPool: Slow read, event №1. ? Запрос просто выгребает данные за весь день, дата в индексе
  • @pavlov_m #49081 12:53 PM, 11 Apr 2018
    ничего не делать. Если у вас много потоков на чтение, то с каждым таким событием он будеи их уменьшать. Можете это запретить настройкой.

    Это значит что во время чтнения анализатор говорит что уж слижком медленно, и наверное высокая нагрузка на диск, и тем самым уменьшает в дальнейшем кол-во потоков на чтение
  • @pavlov_m #49082 12:54 PM, 11 Apr 2018
    если интересно, посмотрите параметр read_backoff_min_latency_ms
  • @pavlov_m #49083 12:55 PM, 11 Apr 2018
    если выставить его в ноль, то clickhouse не будет уменьшать кол-во потоков на чтенние
  • https://t.me/clickhouse_ru
    Можно полагать, что SSD будут в этом случае показывать лучше результаты против HDD?
  • @pavlov_m ↶ Reply to #49084 #49085 01:10 PM, 11 Apr 2018
    в любом случае да. но тут многое зависит от кол-ва одновременных запросов и прочего. Если завысить max_threads то и SSD будет тормозить
  • @andrey45263 #49086 01:11 PM, 11 Apr 2018
    спасибо за ответы
  • @novikovantonio #49087 01:12 PM, 11 Apr 2018
    Joined.
  • @pavlov_m #49088 01:13 PM, 11 Apr 2018
    впрочем, если контролируете кол-во одновременных запросов (например через chproxy) и знаете что дисковую подсистему можно подгрузить то можно поиграться с read_backoff_max_throughput и read_backoff_min_interval_between_events_ms. И выставить так, чтобы чтнение было с max_threads как можно дольше
  • @novikovantonio #49089 01:24 PM, 11 Apr 2018
    Добрый день. Имеется 3 таблицы, а именно связка Kafka -> MaterializedView -> MergeTree (все по официальной документации)
    SQL таблиц следующий:

    -- ClickHouse table
    CREATE TABLE IF NOT EXISTS webrtc_stats_audio_received_kafka
    (
    timestamp UInt64,
    clientPlatform String,
    clientId String,
    appVersion String,
    conferenceId String,
    participantId String,
    trackId String,
    audioDelay UInt16,
    audioDelayDiff UInt16,
    isHighAudioDelayDiff UInt8
    )
    ENGINE = Kafka('localhost:9092', 'webrtc_stats_audio_received', 'webrtc_stats_audio_received_clickhouse', 'JSONEachRow');

    -- ClickHouse table
    CREATE TABLE IF NOT EXISTS webrtc_stats_audio_received_merge_tree
    (
    date Date,
    timestamp UInt64,
    clientPlatform String,
    clientId String,
    appVersion String,
    conferenceId String,
    participantId String,
    trackId String,
    audioDelay UInt16,
    audioDelayDiff UInt16,
    isHighAudioDelayDiff UInt8
    )
    ENGINE = MergeTree(date, (trackId, date), 8192);

    -- ClickHouse table
    CREATE MATERIALIZED VIEW IF NOT EXISTS webrtc_stats_audio_received_materialized_view TO webrtc_stats_audio_received_merge_tree AS
    SELECT
    toDate(timestamp) AS date,
    toUInt64(round(timestamp / 1000000)) AS timestamp,
    clientPlatform,
    clientId,
    appVersion,
    conferenceId,
    participantId,
    trackId,
    audioDelay,
    audioDelayDiff,
    isHighAudioDelayDiff
    FROM webrtc_stats_audio_received_kafka;

    При отсутствии записи в кафка топик в логах вижу достаточно частые пары логов:

    clickhouse_1 | 2018.04.11 13:15:53.353265 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Started streaming to 1 attached views
    clickhouse_1 | 2018.04.11 13:15:57.855020 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Stopped streaming to views

    При непрерывной записи данных в кафка топик (где-то раз в секунду) вижу только

    clickhouse_1 | 2018.04.11 13:15:53.353265 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Started streaming to 1 attached views

    а стоппед стриминг не появляетс. Причем данные в мердж три не появляются. И только после того, как я прекращаю запись в кафка топик, в логах внезапно появляется

    clickhouse_1 | 2018.04.11 13:25:57.865020 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Stopped streaming to views

    а также в мердж три появляются все "накопленные" вьюхой данные. Как будто активная запись в кафка таблицу заставляет вьюшку накапливать и ждать окончание записи в кафка таблицу.

    Использую докер, версия ClickHouse, на которой появились проблемы: 1.1.54370
    До этого все предположительно работало на версии 1.1.54327

    Настройки выглядят верно: max_block_size │ 65536 и stream_flush_interval_ms │ 7500

    Спасибо!
  • https://t.me/clickhouse_ru
    @quagway #49090 02:08 PM, 11 Apr 2018
    Здравствуйте

    Пытаемся восстановиться после потери железного хоста по инструкции: https://clickhouse.yandex/docs/ru/table_engines/replication/#_4

    На хосте жил 1 из 3х Zookeeper и 1 из 4х ClickHouse - будем считать, что это реплика одного шарда

    Zookeeper был просто переустановлен

    КХ после выполнения процедуры вроде ожил

    Но количество записей (ReplicatedMergeTree, count(*)) в нем и в его реплике _больше_ того, что было ранее

    Причем логи полны всяких разных записей, самые удивительные это

    <Debug> executeQuery: (from 192.168.0.43:56604) INSERT INTO events ...

    Этот INSERT с "соседа"
  • https://t.me/clickhouse_ru
    @quagway #49091 02:09 PM, 11 Apr 2018
    Подскажите пожалуйста хотя бы куда копать
  • @pavlov_m #49092 02:12 PM, 11 Apr 2018
    IP / настройки макросов / хостнейм такие же как и были?
  • https://t.me/clickhouse_ru
    @quagway #49093 02:12 PM, 11 Apr 2018
    Да
  • https://t.me/clickhouse_ru
    @quagway #49094 02:13 PM, 11 Apr 2018
    Все ставили из пакетов (своих)
  • @pavlov_m #49095 02:13 PM, 11 Apr 2018
    А Insert с "соседа". "Сосед" это другой шард?
  • @pavlov_m #49096 02:14 PM, 11 Apr 2018
    или реплика?
  • @grim_yawn #49097 02:15 PM, 11 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @quagway #49098 02:37 PM, 11 Apr 2018
    А Вы знаете, "сосед" - это хост, на котором была вставка в Distributed-таблицу.

    Клиенты все отключены (вроде как).

    Это может быть очередь записи?
  • https://t.me/clickhouse_ru
    @quagway #49099 02:42 PM, 11 Apr 2018
    Все, вычислили. Это был другой клиент. Извините за беспокойство и спасибо за помощь.
  • @pavlov_m #49100 02:42 PM, 11 Apr 2018
    если вставка в distributed была когда был этот хост отключен то да, это "накопилось"
  • https://t.me/clickhouse_ru
    @quagway #49101 02:42 PM, 11 Apr 2018
    Спасибо.
  • https://t.me/clickhouse_ru
    @kshvakov #49102 02:54 PM, 11 Apr 2018
    А есть способ создать массив определенного размера? Например у меня есть значение 42 (Int64) и мне нужно создать массив этих значений размером 10: [42, 42, 42, 42, 42, 42, 42, 42, 42, 42]
  • https://t.me/clickhouse_ru
    @miptgirl #49103 02:55 PM, 11 Apr 2018
    SELECT arrayMap(x -> 42, range(10)) AS a

    ┌─a───────────────────────────────┐
    │ [42,42,42,42,42,42,42,42,42,42] │
    └─────────────────────────────────┘
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49103 #49104 02:56 PM, 11 Apr 2018
    Спасибо :)
  • https://t.me/clickhouse_ru
    @Shegloff #49105 03:00 PM, 11 Apr 2018
    класс
  • https://t.me/clickhouse_ru
    @belomore #49106 03:38 PM, 11 Apr 2018
    а как лучше поставить clickhouse-client на macbook?
  • https://t.me/clickhouse_ru
    @neiwick #49107 03:40 PM, 11 Apr 2018
    проще использовать через докер docker run -it --host=net yandex/clickhouse-client
  • https://t.me/clickhouse_ru
    @neiwick #49108 03:41 PM, 11 Apr 2018
    Выше были попытки собрать кликхаус под macOS, возможно у кого-то уже есть и нативный клиент
  • https://t.me/clickhouse_ru
    @belomore ↶ Reply to #49107 #49109 03:42 PM, 11 Apr 2018
    круто, спасибо!
  • https://t.me/clickhouse_ru
    @mrlamberg #49110 03:42 PM, 11 Apr 2018
    я через DataGrip подключаюсь)
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49104 #49111 03:44 PM, 11 Apr 2018
    еще есть replicate(42, range(10))
  • clickhouse-client problems with paste huge & complicated multiline query #2211

    Centos7, altinity build. Try to run clickhouse-client -m, and paste the following query: CREATE TABLE sdfklsjdflkjerwouer ( a31 UInt64, sdf6 UInt8, sd52 ...

  • https://t.me/clickhouse_ru
    в принципе, под macOS сейчас кликхаус собирается нормально
  • https://t.me/clickhouse_ru
    @yourock88 #49114 04:12 PM, 11 Apr 2018
    но требуется очень много времени и места
  • https://t.me/clickhouse_ru
    @belomore #49115 04:12 PM, 11 Apr 2018
    даже просто клиент?
  • https://t.me/clickhouse_ru
    @yourock88 #49116 04:12 PM, 11 Apr 2018
    у меня есть только довольно старая сборка под мак, я бы не рекомендовал её использовать
  • https://t.me/clickhouse_ru
    @yourock88 #49117 04:13 PM, 11 Apr 2018
    клиент и сервер это один бинарь :)
  • https://t.me/clickhouse_ru
    @arduanov ↶ Reply to #49106 #49118 04:17 PM, 11 Apr 2018
    v1.1.54343 под мак, самая последняя стабильная не собралась
    https://github.com/arduanov/homebrew-clickhouse
    GitHub - arduanov/homebrew-clickhouse: ClickHouse for MacOS Sierra and High Sierra.

    ClickHouse for MacOS Sierra and High Sierra. Contribute to arduanov/homebrew-clickhouse development by creating an account on GitHub.

  • как вариант можно этим клиентом
    https://github.com/filimonov/chc
    или этим
    https://github.com/hatarist/clickhouse-cli
    GitHub - filimonov/chc: chc: ClickHouse portable command line client

    chc: ClickHouse portable command line client. Contribute to filimonov/chc development by creating an account on GitHub.

  • @mfilimonov #49120 04:18 PM, 11 Apr 2018
    там не все идеально, но в некоторых моментах даже лучше чем оригинальный (например есть autocompletion)
  • https://t.me/clickhouse_ru
    @belomore #49121 04:19 PM, 11 Apr 2018
    во мощь коммьюнити.
  • https://t.me/clickhouse_ru
    @sergun_spb #49122 04:26 PM, 11 Apr 2018
    Читаю спеку для Distibuted таблиц https://clickhouse.yandex/docs/ru/table_engines/distributed/ , абзац про весы шардов :
    Для выбора шарда, на который отправляется строка данных, вычисляется выражение шардирования, и берётся его остаток от деления на суммарный вес шардов. Строка отправляется на шард, соответствующий полуинтервалу остатков от prev_weights до prev_weights + weight, где prev_weights - сумма весов шардов с меньшим номером, а weight - вес этого шарда. Например, если есть два шарда, и у первого выставлен вес 9, а у второго 10, то строка будет отправляться на первый шард для остатков из диапазона [0, 9), а на второй - для остатков из диапазона [10, 19).

    "а на второй - для остатков из диапазона [10, 19)" - тут разве не дожен быть полуинтервал [9,19 ) ?
  • https://t.me/clickhouse_ru
    @proller ↶ Reply to #49115 #49124 04:46 PM, 11 Apr 2018
    сейчас есть возможность собрать именно один клиент но зависимостей у него всеравно большая часть сервера
  • https://t.me/clickhouse_ru
    @pixelbender #49125 04:52 PM, 11 Apr 2018
    а можно ли у КХ настроить flush-интервал к диску?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49111 #49126 05:00 PM, 11 Apr 2018
    👍
  • https://t.me/clickhouse_ru
    @den_crane #49127 06:35 PM, 11 Apr 2018
    какая-то непонятная фигня, все версии КХ свежее чем 1.1.54327 падают на mysql словарях на ядрах 4.9.51-1
    Запускаю в lcx контейнере, причем не важно какой контейнер debian8 или 9, попробовал все версии mysql / maria/percona клиентов, упорно получаю Malformed packet

    <Error> ExternalDictionaries: Cannot create external dictionary 'test_dict' from config path /etc/clickhouse-server/dict/test_dict.xml: Poco::Exception. Code: 1000, e.code() = 2027, e.displayText() = mysqlxx::BadQ
    uery: Malformed packet (mysqlhosttest:3306), e.what() = mysqlxx::BadQuery

    https://pastebin.com/rxAUuWdA

    Проблема только с КХ, из mysql (клиент) теже запросы выполняются без проблем.
  • https://t.me/clickhouse_ru
    @proller #49128 06:44 PM, 11 Apr 2018
    а если собрать на тойже системе?
  • https://t.me/clickhouse_ru
    сейчас попробую. Но проблема что gcc-7 тоже придется собирать.
  • https://t.me/clickhouse_ru
    @quagway #49130 07:04 PM, 11 Apr 2018
    У Вас Debian?
  • https://t.me/clickhouse_ru
    @quagway #49131 07:04 PM, 11 Apr 2018
    Сорри
  • https://t.me/clickhouse_ru
    @quagway #49132 07:04 PM, 11 Apr 2018
    Не видел
  • https://t.me/clickhouse_ru
    @quagway #49133 07:04 PM, 11 Apr 2018
    Собирать будете на Debian 9?
  • https://t.me/clickhouse_ru
    да, а что?
  • https://t.me/clickhouse_ru
    @quagway #49135 07:06 PM, 11 Apr 2018
    Могу поделиться готовым пакетом gcc-7 под stretch. Но, как говорится, на свой страх и риск :)
  • https://t.me/clickhouse_ru
    @quagway #49136 07:07 PM, 11 Apr 2018
    Но можете и время сэкономить :)
  • https://t.me/clickhouse_ru
    @quagway #49137 07:07 PM, 11 Apr 2018
    Или могу поделиться bash, который собирает gcc-7 :)
  • https://t.me/clickhouse_ru
    @den_crane #49138 07:07 PM, 11 Apr 2018
    да, буду благодарен, я готов рискнуть, мне только КХ собрать и проверить поможет или нет.
  • https://t.me/clickhouse_ru
    @den_crane #49139 07:09 PM, 11 Apr 2018
    сколько времени gcc собирается? 12 ядер/32 гига?
  • https://t.me/clickhouse_ru
    @quagway #49140 07:09 PM, 11 Apr 2018
    Сегодня-завтра выложу пакеты куда-нибудь и напишу Вам в личку
  • https://t.me/clickhouse_ru
    @quagway #49141 07:10 PM, 11 Apr 2018
    У нас непубличный репозиторий к сожалению
  • https://t.me/clickhouse_ru
    @den_crane #49142 07:11 PM, 11 Apr 2018
    А баш тоже непубличный (pastebin)
    Ну и спасибо. Буду ждать.
  • https://t.me/clickhouse_ru
    @quagway #49143 07:12 PM, 11 Apr 2018
    Не - баш пожалуйста :)
  • https://t.me/clickhouse_ru
    @quagway #49144 07:12 PM, 11 Apr 2018
    Минуту
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @quagway #49146 07:17 PM, 11 Apr 2018
    Я как тут видно немного считерил - взял dsc из sid

    Но собирается
  • https://t.me/clickhouse_ru
    @den_crane #49147 07:17 PM, 11 Apr 2018
    OK. спасибо, попробую.
  • https://t.me/clickhouse_ru
    @quagway #49148 07:18 PM, 11 Apr 2018
    Не за что
  • https://t.me/clickhouse_ru
    @quagway #49149 07:18 PM, 11 Apr 2018
    Да, ему нужен binutils чуть свежее
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @quagway #49151 07:18 PM, 11 Apr 2018
    Чем сейчас есть или был в stretch
  • https://t.me/clickhouse_ru
    @quagway ↶ Reply to #49139 #49152 07:19 PM, 11 Apr 2018
    Вы знаете - не помню
  • https://t.me/clickhouse_ru
    @quagway #49153 07:19 PM, 11 Apr 2018
    Но точно не дни - часы :D
  • https://t.me/clickhouse_ru
    @proller #49154 07:20 PM, 11 Apr 2018
    это тоже "стабильная" система с софтом выпущеным 10 лет назад?
  • https://t.me/clickhouse_ru
    @quagway #49155 07:23 PM, 11 Apr 2018
    Вы про Debian? :)
  • https://t.me/clickhouse_ru
    @den_crane #49156 07:24 PM, 11 Apr 2018
    вот первый раз за 20 лет с линуксом работаю с дебианом, на текущем месте работы один сплошной дебиан, а шо делать?
  • https://t.me/clickhouse_ru
    @proller #49157 07:24 PM, 11 Apr 2018
    снести и поставть freebsd конечно
  • https://t.me/clickhouse_ru
    @den_crane #49158 07:27 PM, 11 Apr 2018
    я думаю примерно в 15 хостингах из 20, будут несколько удивлены идее поставить freebsd и драйвера тупо не найдут для некоторых железок.
  • https://t.me/clickhouse_ru
    @quagway #49159 07:27 PM, 11 Apr 2018
    Мы - люди подневольные
  • https://t.me/clickhouse_ru
    @quagway #49160 07:41 PM, 11 Apr 2018
    @den_crane Вы только внимательнее со сборкой - у меня помнится в сборочном скрипте не очень старой версии КХ было написано что-то а-ля "which gcc-6", хотя дока была про 7й уже. Лучше с разработчиками посоветоваться.
  • https://t.me/clickhouse_ru
    да спасибо, я КХ-то собирал уже несколько раз, но на убунта-сервер, разберусь.

    по скрипту вот доставил уже (nvptx из sid)

    wget http://ftp.us.debian.org/debian/pool/main/n/nvptx-tools/nvptx-tools_0.20180301-1_amd64.deb
    dpkg -i nvptx-tools_0.20180301-1_amd64.deb
    apt-get install dpkg-dev debhelper patchutils quilt
  • https://t.me/clickhouse_ru
    @quagway #49162 07:44 PM, 11 Apr 2018
    можете тогда и gcc-7 из сида попробовать наверное...
  • @iamnotwizard #49163 07:46 PM, 11 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @den_crane #49164 07:48 PM, 11 Apr 2018
    nvptx это маленький скрипт вроде.
    попробовать можно gcc-7 из сида, но что-то я сомневаюсь, там поди зависимостей пол сида.
    в общем начал gcc7 собираться
  • https://t.me/clickhouse_ru
    @quagway #49165 07:52 PM, 11 Apr 2018
    а binutils новый собрался? без него гцц 7 у меня не собирался...
  • @pookieShmukie #49166 08:15 PM, 11 Apr 2018
    @milovidov_an, доброй ночи! :) А планируется ли сделать для nested колонок нечто подобное:

    select visitId, goal.* from visits array join goals as goal ? Т.е. что бы через * можно было селектить все соедржимое nested колонки?
  • Давно хочу сделать. Уже проверял вариант, в котором так сделано, но пока не закончено.
  • Это жизнь многим упростит! :)
  • @pookieShmukie #49169 08:30 PM, 11 Apr 2018
    Будем ждать! Спасибо!
  • 12 April 2018 (252 messages)
  • https://t.me/clickhouse_ru
    @easya #49171 05:30 AM, 12 Apr 2018
    Подскажите, пожалуйста, можно ли обновить список словарей (в моем случае - удалить ненужные) без рестарта инстанса CH? Спасибо
  • https://t.me/clickhouse_ru
    @easya #49172 05:44 AM, 12 Apr 2018
    А, нашел
    > Словари могут обновляться без перезапуска сервера. Но набор доступных словарей не обновляется.
  • https://t.me/clickhouse_ru
    @nekufa #49173 05:57 AM, 12 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @Antava #49174 06:32 AM, 12 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @ilyaglow #49175 07:05 AM, 12 Apr 2018
    Joined.
  • @Nvarchar495 #49176 07:51 AM, 12 Apr 2018
    Приветик! разворачиваем кластер. можно ли пилить на виртуалках ? или производительность будет намного хуже?
  • @70532431 #49177 07:54 AM, 12 Apr 2018
    делайте, только vmware-tools поставьте
    или open-vm-tools
  • @Nvarchar495 #49178 07:55 AM, 12 Apr 2018
    Спасибо
  • https://t.me/clickhouse_ru
    да у нас на виртуалках
  • @whetherharder #49180 08:08 AM, 12 Apr 2018
    Подскажите пожалуйста, как лучше хранить параметры http урлов?
    Может есть какие устоявшиеся паттерны ?

    Хочется
    1. уметь искать самые частые сочетания параметров для конкретного урла
    2. использовать значения параметров в условиях выборки урлов
    3. минимизировать объем дискового хранилища

    Я придумал только вложенную таблицу, где на каждый тип параметра отдельное поле
  • https://t.me/clickhouse_ru
    @Sablast ↶ Reply to #49180 #49181 08:09 AM, 12 Apr 2018
    мб весь урл стрингом?)
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49176 #49182 08:19 AM, 12 Apr 2018
    А почему не контейнеры? Оверхед меньше и все немного проще
  • https://t.me/clickhouse_ru
    @OlgaRudneva #49183 08:55 AM, 12 Apr 2018
    Joined.
  • это упадничество)
  • https://t.me/clickhouse_ru
    @Sablast ↶ Reply to #49184 #49185 08:58 AM, 12 Apr 2018
    ну не знаю, мне норм. все задачи решаются через функции:
    https://clickhouse.yandex/docs/en/single/#extracturlparameterurl-name
  • Я не разбираюсь :) Пришли технари и спросили, вам виртуалки подойдут? да/нет)
  • а какие у Вас объемы?
    очень строчки длинные, боюсь места много надо будет
    я хотел бы хранить ~50 * 10^9 строчек и при этом влезть в 0,5-0,8TB
    а параметров бывает до 2KB на 1 запрос,в разжатом виде)
  • https://t.me/clickhouse_ru
    @Sablast ↶ Reply to #49188 #49189 09:24 AM, 12 Apr 2018
    в месяц ~2млрд строк
    так а если вы эти строчки разложите по полям у вас разве получится сэкономить объем?
  • https://t.me/clickhouse_ru
    если очень много одинаковых данных то да
  • https://t.me/clickhouse_ru
    @Sablast #49191 09:26 AM, 12 Apr 2018
    если однотипные то согласен
  • @whetherharder #49192 10:02 AM, 12 Apr 2018
    я только не понимаю, насколько хорошо сжимаются массивы
    например, что лучше — хранить столбец со строками, или столбец с массивами строк, порезанных по разделителю ?
  • https://t.me/clickhouse_ru
    @OlgaRudneva #49193 10:04 AM, 12 Apr 2018
    Подскажите, пожалуйста, как работает ODBC-драйвер сейчас? Кто пользуется. Есть ли проблемы?
  • https://t.me/clickhouse_ru
    @Shegloff #49194 10:10 AM, 12 Apr 2018
    zabbix прекрасно селектит из кх через odbc, проблем нет, centos 7
  • https://t.me/clickhouse_ru
    под винду так и не смог завести, плюнул и использую http, все хорошо
  • https://t.me/clickhouse_ru
    @OlgaRudneva #49196 10:14 AM, 12 Apr 2018
    понятно, спасибо). мы сейчас используем компоненты визуализации DevExpress (возможно, кто-то трогал), там очень просто создавать dashboard к любым источникам, вот думаю, нужно ли кардинально менять dashboard, в случае если я захочу делать витрины на clickhouse.
  • https://t.me/clickhouse_ru
    @OlgaRudneva #49197 10:15 AM, 12 Apr 2018
    но, видимо, надо методом проб и ошибок.
  • https://t.me/clickhouse_ru
    @Shegloff #49198 10:40 AM, 12 Apr 2018
    после включения distributed_ddl перестали создаваться таблицы с произвольным ключом партиционирования:
    Syntax error: failed at position 338 (line 14, col 1):

    CREATE TABLE db.table_local ON CLUSTER repl
    (
    date Date,
    page_id UInt64,
    project String,
    account String,
    tag_id UInt64,
    revenue UInt64,
    shows UInt64,
    clicks UInt64,
    type String
    )
    ENGINE = ReplicatedReplacingMergeTree('/clickhouse/tables/{shard}/table_local', '{replica}')
    PARTITION BY date
    ORDER BY (page_id, account, tag_id, date)
    SETTINGS index_granularity = 8192

    Expected one of: INTO OUTFILE, FORMAT
    подсвечивает PARTITION
    версия 1.1.54343
  • https://t.me/clickhouse_ru
    @Shegloff #49199 10:41 AM, 12 Apr 2018
    поменял на старый формат, создалось
  • @291662242 #49200 10:41 AM, 12 Apr 2018
    @OlgaRudneva если DevExpress под .NET то вот ADO.NET provider через нативный протокол: https://github.com/killwort/ClickHouse-Net
    GitHub - killwort/ClickHouse-Net: Yandex ClickHouse fully managed .NET client

    Yandex ClickHouse fully managed .NET client. Contribute to killwort/ClickHouse-Net development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    @OlgaRudneva #49201 10:44 AM, 12 Apr 2018
    поняла, спасибо)
  • https://t.me/clickhouse_ru
    @anuzhny #49202 10:49 AM, 12 Apr 2018
    Коллеги, подписался неделю назад на канал этот. Наблюдаю сплошные проблемы с КХ, это точно ентерпрайз уже решение ?
  • https://t.me/clickhouse_ru
    @stufently #49203 10:50 AM, 12 Apr 2018
    точно, просто многие хотят странного и принимают странные решения
  • https://t.me/clickhouse_ru
    @Shegloff #49204 10:53 AM, 12 Apr 2018
    ну именно "проблем с КХ" я не вижу :) так, чтобы потерял данные, или встал колом, или еще что-то
  • https://t.me/clickhouse_ru
    @Shegloff #49205 10:53 AM, 12 Apr 2018
    в основном тут проблемы у клиента, не у сервера
  • https://t.me/clickhouse_ru
    @anuzhny ↶ Reply to #49204 #49206 10:53 AM, 12 Apr 2018
    Было ару дней назад в переписке.
  • https://t.me/clickhouse_ru
    @andrey4ernov #49207 10:54 AM, 12 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @Shegloff #49208 10:56 AM, 12 Apr 2018
    это все ерунда, "очень быстро" и "очень бесплатно" все перевешивает :) на проде с репликацией вообще никаких гвоздей
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49202 #49209 10:59 AM, 12 Apr 2018
    Вы можете подписаться на любой активный канал о СУБД и увидеть кучу проблем
  • https://t.me/clickhouse_ru
    ну это проблемы из разряда я не следил за зукипером и кончилось место и он умер
  • https://t.me/clickhouse_ru
    @stufently #49211 11:06 AM, 12 Apr 2018
    или у нас сдохли диски и на ноде был кх и зукипер и теперь не пойми что получилось
  • https://t.me/clickhouse_ru
    @stufently #49212 11:06 AM, 12 Apr 2018
    Больше напоминаем проблемы я сам выстретил в себе в ногу и пистолет плохой
  • https://t.me/clickhouse_ru
    Либо вы можете обойтись без кх и тогда вам кх не нужен, либо нет. Альтернатив продукту нет.
    Т.е. выбирать не из чего. Либо платить деньги за редшифт и вертику, сильно больше, чем затраты на доп. программистов и круглосуточных дба.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49213 #49214 11:07 AM, 12 Apr 2018
    Есть как минимум Greenplum
  • https://t.me/clickhouse_ru
    @stufently #49215 11:10 AM, 12 Apr 2018
    он как минимум на постгресе и это про другое
  • https://t.me/clickhouse_ru
    @kshvakov #49216 11:11 AM, 12 Apr 2018
    Он про тоже самое, но SQL у него более размашистый как у PostgreSQL
  • https://t.me/clickhouse_ru
    @stufently #49217 11:12 AM, 12 Apr 2018
    у него внутри же постгрес
  • https://t.me/clickhouse_ru
    что то банальный импорт и замена data source не взлетает :)
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49217 #49219 11:16 AM, 12 Apr 2018
    PostgreSQL даже "ванильный" очень расширяемая штука, например Citus и https://github.com/postgrespro/vops. В Greenplum используется кодовая база PostgreSQL, но он там сильно переписан как, собственно, и Virtica
    GitHub - postgrespro/vops

    Contribute to postgrespro/vops development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    ну когда изучал вопрос как то про него нигде не увидел инфы , думаете так будет быстро варить триллион записей как кх на слабом железе?
  • https://t.me/clickhouse_ru
    @mrlamberg #49221 11:17 AM, 12 Apr 2018
    не будет
  • https://t.me/clickhouse_ru
    Вы с каким префиксом данных хоаните? Кликхаус надо настроить
  • https://t.me/clickhouse_ru
    Посмотрите config.xml в репозитории
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49220 #49224 11:23 AM, 12 Apr 2018
    Greenplum медленнее КХ, но за счет более продвинутой поддержки SQL, работы с типами данных и отсутствием ряда проблем молодого продукта он, вполне себе, может быть более правильным выбором чем КХ
  • https://t.me/clickhouse_ru
    Медленнее для нас не вариант, именно скорость основной критерий у нас по выбору, чтобы строить отчёты онлайн
  • https://t.me/clickhouse_ru
    @kenota #49226 11:25 AM, 12 Apr 2018
    Коллеги, добрый день. А кто нибудь видел/делал бенчмарки на коннектор из Кафки в кх?
  • https://t.me/clickhouse_ru
    @kenota #49227 11:26 AM, 12 Apr 2018
    Т.е. Kafka engine
  • https://t.me/clickhouse_ru
    не уверен, что понял правильно

    я взял доску queries, которая дергает таблицу system, поменял data source и еще какие то настройки сверху нужны?
  • https://t.me/clickhouse_ru
    @azubarev #49229 11:49 AM, 12 Apr 2018
    Коллеги, подскажите, пожалуйста, как можно передать в toDate массив?
    Сейчас есть такое (работает):
    toRelativeMonthNum(Date) in (toRelativeMonthNum(toDate('2018-03-01')))
    Надо, чтобы в toDate(массив дат).
    Есть предложение куда смотреть?
  • https://t.me/clickhouse_ru
    unexpected query_log отсутствует в system
  • https://t.me/clickhouse_ru
    @miptgirl ↶ Reply to #49229 #49231 11:52 AM, 12 Apr 2018
    Кажется, должен помочь arrayMap
  • https://t.me/clickhouse_ru
    вам нужно поменять настройки КХ так, чтобы он начал логировать запросы. По дефолту он этого не делает
  • https://t.me/clickhouse_ru
    @azubarev ↶ Reply to #49231 #49233 11:54 AM, 12 Apr 2018
    Спасибо, сейчас попробую
  • https://t.me/clickhouse_ru
    Я не знаю, есть ли в указанном репо инструкция как это сделать, но вы можете взять ее отсюда в разделе How to install
    https://grafana.com/dashboards/2515
    ClickHouse Queries dashboard for Grafana | Grafana Labs

    Helps to visualize most frequent, slowest, failed queries. Shows queries rate per second, table with last queries

  • https://t.me/clickhouse_ru
    инструкции в моем репо нет еще
  • https://t.me/clickhouse_ru
    Greenplum же совсем для других целей, не для olap
  • https://t.me/clickhouse_ru
    ??? ;) колончный greenplum не для OLAP нагрузок? а для чего?
  • https://t.me/clickhouse_ru
    @BloodJazMan #49238 12:07 PM, 12 Apr 2018
    =) вот вы лучше скажите мне не смотрел ли кто в сторону
    https://github.com/baidu/palo ?
    apache/incubator-doris

    Apache Doris (Incubating). Contribute to apache/incubator-doris development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    не увидел сначала что он и колоночно умеет
  • https://t.me/clickhouse_ru
  • @pookieShmukie #49241 12:23 PM, 12 Apr 2018
    А кто подскажет функцию которая складывает значения в массивах по индексам?
    Вот такие массивы. На выходе нужен массив такой же длинны, только где все просуммированно? https://img.facedsid.ru/bomqg.jpg
  • @pookieShmukie #49242 12:23 PM, 12 Apr 2018
    Кто помнит на память? )
  • https://t.me/clickhouse_ru
    @kshvakov #49243 12:25 PM, 12 Apr 2018
    sumMap
  • @275203247 #49244 12:25 PM, 12 Apr 2018
    Joined.
  • @pookieShmukie #49245 12:28 PM, 12 Apr 2018
    У меня не два массива ( У меня есть например три массива одной длины:

    [0,1,1,1]
    [1,1,1,1]
    [1,1,0,1]

    На выходе нужно получить [2,3,2,3] например
  • @pookieShmukie #49246 12:28 PM, 12 Apr 2018
    Я помню, что видел где то примеры, но не могу найти нигде (
  • https://t.me/clickhouse_ru
    @orantius #49247 12:29 PM, 12 Apr 2018
    SELECT sumForEach(x)
    FROM
    (
    SELECT arrayJoin([[0, 1, 1, 1], [1, 1, 1, 1], [1, 1, 0, 1]]) AS x
    )
    ┌─sumForEach(x)─┐
    │ [2,3,2,3] │
    └───────────────┘
  • Дааааа! То, что нужно! Спасибо!
  • Ну тут во-первых влияние "ошибки выжившего" . В основном народ начинает по чатам / форумам ходить если что-то не работает. Те у кого все работает - не ищут чаты / форумы чтоб написать "боже как же это восхитительно".
  • https://t.me/clickhouse_ru
    Вертика написана с нуля, там только парсер SQL взят внешний какой-то. Постгресовские корни в Гринпламе его сильно ограничивают. Примерно в три раза медленее Вертики на одинаковых данных.
  • @mfilimonov #49251 01:00 PM, 12 Apr 2018
    А во вторых кликхаус действительно пока не идеален. Но с его неидеальностью вполне можно жить. Просто загрузите пару сотен гб данных и выполните какой-нибудь селект. Эффект "вау" гарантирую, особенно если пересаживаетесь с обычных строковых rdbms
  • @mfilimonov #49252 01:02 PM, 12 Apr 2018
    Если пересаживаться со всяких хадупув и т.п. - то эффект "вау" тоже будет, но главным образом из-за того как всё может быть просто - не нужно сложных кластеров, мап-редьюсов, мезосов и т.п. просто загрузил данные из CSV и получил над ними полный контроль
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49250 #49253 01:03 PM, 12 Apr 2018
    В вертике постгресовые корни сильнее и эти корни Майкл Стоунбрейкер )
  • @mfilimonov #49254 01:03 PM, 12 Apr 2018
    А если для веб-аналитики - то кликхаус обладает кучей очень специфических и очень полезных фичеров узко заточенных под эту конкретную проблему.
  • https://t.me/clickhouse_ru
    @alexanderzaitsev #49255 01:08 PM, 12 Apr 2018
    > В вертике постгресовые корни сильнее и эти корни Майкл Стоунбрейкер )

    Он не корни, он садовник )
  • @275203247 #49256 01:54 PM, 12 Apr 2018
    Подскажите, пожалуйста, не сталкивался ли кто-нибудь с необходимостью конвертировать uuid в формате mixed-endian в строку? Функция UUIDNumToString принимает uuid как big-endian. Пока только такое придумал:
  • @275203247 #49257 01:54 PM, 12 Apr 2018
    UUIDNumToString(toFixedString(concat(reverse(substring(docUuid, 1, 4)), reverse(substring(docUuid, 5, 2)), reverse(substring(docUuid, 7, 2)), substring(docUuid, 9, 8)), 16))
  • @275203247 #49258 01:54 PM, 12 Apr 2018
    Можно ли как-то попроще сделать?
  • @teknik2008 #49259 02:20 PM, 12 Apr 2018
    Как вернуть массив элементов которых нет в базе из переданного массива
    К примеру
    В базе есть 1,2,5,7,9
    Я передал 1,2,3,4,5,6,7,8,9
    Получил 3,4,6,8
  • https://t.me/clickhouse_ru
    @orantius #49260 02:22 PM, 12 Apr 2018
    лямбды, фильтры
  • https://t.me/clickhouse_ru
    @miptgirl #49261 02:23 PM, 12 Apr 2018
    или arrayJoin, подзапрос и groupArray )
  • https://t.me/clickhouse_ru
    @mainnika #49262 02:25 PM, 12 Apr 2018
    btw лямбды крутые, я недавно запрос строил и так радовался им 😀
  • Они нормально отработают к примеру на 1М элементах в запросе? Или лучше делить?
  • @teknik2008 #49264 02:49 PM, 12 Apr 2018
    Насколько оптимален этот запрос?
    SELECT
    arrayFilter(x -> has(groupArray(user_id),x)=0, [2,3,4,5]) AS res
    FROM
    download
    WHERE user_id IN (2,3,4,5)
    GROUP BY 1
    LIMIT 100
  • https://t.me/clickhouse_ru
    @orantius #49265 02:51 PM, 12 Apr 2018
    а он делает то что вам надо?
  • Вот это
  • @teknik2008 #49267 02:53 PM, 12 Apr 2018
    Как вернуть массив элементов которых нет в базе из переданного массива
    К примеру
    В базе есть 1,2,5,7,9
    Я передал 1,2,3,4,5,6,7,8,9
    Получил 3,4,6,8
  • https://t.me/clickhouse_ru
    @orantius #49268 03:01 PM, 12 Apr 2018
    arrayIntersect есть, arraySubtract что-то не вижу.
  • https://t.me/clickhouse_ru
    @vladimirmyuge #49269 03:12 PM, 12 Apr 2018
    Что-то вылетело, а какая функция объединяет элементы при агрегации, мне нужно как то так:
    select client_id, make_array(watch_id) from hits group by client_id
  • https://t.me/clickhouse_ru
    @Krashuevina #49270 03:13 PM, 12 Apr 2018
    groupArray?
  • https://t.me/clickhouse_ru
    @navel_tail #49271 03:13 PM, 12 Apr 2018
    Добрый день. Уверен кто-то уже измерял разницу в скорости селектов по ключу если он Date или DateTime?
    Сейчас у нас ключ в формате Date и нам этого вполне хватало, но вот пришла идея вводить часовые пояса, но тогда не достаточно просто даты, нужно и время
  • https://t.me/clickhouse_ru
    Оно, спасибо!
  • https://t.me/clickhouse_ru
    Ну и храните время отдельным столбцом
  • https://t.me/clickhouse_ru
    Сейчас вопрос в другом. Настолько ли нам нужны часовые пояса, если существует просадка по времени. Если просадки нет или она незначительная, то так и сделаем, разве что ключ изменим
  • https://t.me/clickhouse_ru
    @skatnies #49275 03:20 PM, 12 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @andrey4ernov #49277 04:03 PM, 12 Apr 2018
    Всем доброго дня!
    Нарвался на КХ при изучении систем, которые могли бы потянуть большие объемы данных, но по описанию вижу, что для OLTP оно не годится.
    Сам я не разработчик, поэтому прошу помощи - подскажите на что можно посмотреть, если нужна высоконагруженная СУБД и обвязка?
    Заранее спасибо!
  • https://t.me/clickhouse_ru
    @mrlamberg #49278 04:04 PM, 12 Apr 2018
    мы используем postgres+clickhouse )
  • https://t.me/clickhouse_ru
    @mrlamberg #49279 04:04 PM, 12 Apr 2018
    в кликхаусе только нужные для аналитики данные
  • https://t.me/clickhouse_ru
    @mrlamberg #49280 04:05 PM, 12 Apr 2018
    такчто вполне подходит
  • В кликхаусе только id шки? А имена словарями подключаете?
  • https://t.me/clickhouse_ru
    @mrlamberg #49282 04:13 PM, 12 Apr 2018
    имена словарям подключаются уже в жаве
  • https://t.me/clickhouse_ru
    @mrlamberg #49283 04:13 PM, 12 Apr 2018
    в кх только циферки
  • https://t.me/clickhouse_ru
    @mrlamberg #49284 04:13 PM, 12 Apr 2018
    руки не доходят внешние справочники сделать
  • @teknik2008 #49285 04:13 PM, 12 Apr 2018
    А почему не словари КХ?
  • @teknik2008 #49286 04:14 PM, 12 Apr 2018
    Ясно
  • https://t.me/clickhouse_ru
    @mrlamberg #49287 04:14 PM, 12 Apr 2018
    а так нам очень нравится
  • https://t.me/clickhouse_ru
    @mrlamberg #49288 04:14 PM, 12 Apr 2018
    и нету риска
  • https://t.me/clickhouse_ru
    @mrlamberg #49289 04:14 PM, 12 Apr 2018
    мы можем в любой момент дропнуть кх
  • https://t.me/clickhouse_ru
    @mrlamberg #49290 04:14 PM, 12 Apr 2018
    и залить заново
  • @teknik2008 #49291 04:14 PM, 12 Apr 2018
    Храните в оперативе? А сортировка по имени как?
  • @teknik2008 #49292 04:15 PM, 12 Apr 2018
    Просто КХ дает сортировку и поиск по подключенным словарям
  • @teknik2008 #49293 04:15 PM, 12 Apr 2018
    Это удобно для таблиц и поиска в целом
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #49289 #49294 04:15 PM, 12 Apr 2018
    Аж глаз задёргался
  • https://t.me/clickhouse_ru
    @Shegloff #49295 04:16 PM, 12 Apr 2018
    Хорошо у вас
  • А в чем проблема?
  • https://t.me/clickhouse_ru
    @mrlamberg #49297 04:16 PM, 12 Apr 2018
    мы и так при переходе на новую версию дропаем)
  • https://t.me/clickhouse_ru
    @mrlamberg #49298 04:16 PM, 12 Apr 2018
    потому что меняются логики формирования части атрибутов
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #49296 #49299 04:17 PM, 12 Apr 2018
    ну у нас например 15T данных, куча разных скриптов и демонов данные льет, заливать заново это боль
  • https://t.me/clickhouse_ru
    @Shegloff #49300 04:18 PM, 12 Apr 2018
    без репликации никуда
  • @teknik2008 #49301 04:19 PM, 12 Apr 2018
    Ну то понятно, я вот думаю как себя словари поведут, у нас я настаиваю на словарях, и не много стремно. Чтобы не вылезло боком.
  • https://t.me/clickhouse_ru
    @mrlamberg #49302 04:20 PM, 12 Apr 2018
    я бы вот не рискнул делать кх основной бд
  • https://t.me/clickhouse_ru
    @mrlamberg #49303 04:20 PM, 12 Apr 2018
    слишком много заморочек
  • https://t.me/clickhouse_ru
    @mrlamberg #49304 04:20 PM, 12 Apr 2018
    с транзакциями и т.д.
  • https://t.me/clickhouse_ru
    @mrlamberg #49305 04:20 PM, 12 Apr 2018
    нужно делать самому транзакции на уровне приложения
  • https://t.me/clickhouse_ru
    @mrlamberg #49306 04:20 PM, 12 Apr 2018
    + удаления нету
  • https://t.me/clickhouse_ru
    @mrlamberg #49307 04:20 PM, 12 Apr 2018
    не подходит вообще для основной бд
  • https://t.me/clickhouse_ru
    @mrlamberg #49308 04:21 PM, 12 Apr 2018
    ну у нас пока в 100 гб укладывается кх
  • https://t.me/clickhouse_ru
    @Shegloff #49309 04:22 PM, 12 Apr 2018
    словари из мускуля, живут в памяти прекрасно:
    SELECT
    type,
    element_count
    FROM system.dictionaries

    ┌─type───┬─element_count─┐
    │ Hashed │ 2939 │
    │ Hashed │ 966854 │
    │ Hashed │ 1611475 │
    │ Hashed │ 70 │
    │ Hashed │ 29613 │
    │ Hashed │ 61948 │
    │ Hashed │ 3093 │
    │ Hashed │ 3599277 │
    │ Hashed │ 318636 │
    │ Hashed │ 64 │
    │ Hashed │ 19428 │
    │ Hashed │ 15570993 │
    │ Hashed │ 1028 │
    │ Hashed │ 320681 │
    │ Hashed │ 2745141 │
    └────────┴───────────────┘
  • https://t.me/clickhouse_ru
    храним в оперативке, по имени не сортируем
  • https://t.me/clickhouse_ru
    @mrlamberg #49311 04:26 PM, 12 Apr 2018
    если нужна сортировка по имени
  • https://t.me/clickhouse_ru
    @mrlamberg #49312 04:26 PM, 12 Apr 2018
    у нас в справочниках есть поле ord
  • https://t.me/clickhouse_ru
    @mrlamberg #49313 04:26 PM, 12 Apr 2018
    в котором указана нужна сортировка
  • https://t.me/clickhouse_ru
    @mrlamberg #49314 04:27 PM, 12 Apr 2018
    потом что постоянно просят костыль в виде "а вот этого всегда вверху"
  • https://t.me/clickhouse_ru
    @sawaxon #49315 04:27 PM, 12 Apr 2018
    Насколько плохо пушить старые по времени данные в кх?
  • https://t.me/clickhouse_ru
    @mrlamberg #49316 04:27 PM, 12 Apr 2018
    и вот это поле, если надо добавляем
  • КХ только для статистики, воркеры собирают данные(id шки в основном и числа) из mysql в дерномализованном виде и кладут в КХ, потом по этим данным строим отчеты
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #49315 #49318 04:30 PM, 12 Apr 2018
    Всегда так делаю, не вижу ничего плохого
  • Ясно. Ну у каждого свои велосипеды
  • https://t.me/clickhouse_ru
    @mrlamberg #49320 04:34 PM, 12 Apr 2018
    я вообще update и delete жду
  • https://t.me/clickhouse_ru
    @mrlamberg #49321 04:34 PM, 12 Apr 2018
    чтобы весь кх переделать
  • https://t.me/clickhouse_ru
    @mrlamberg #49322 04:35 PM, 12 Apr 2018
    и синхронизацию
  • https://t.me/clickhouse_ru
    @mrlamberg #49323 04:35 PM, 12 Apr 2018
    и справочники
  • https://t.me/clickhouse_ru
    @mrlamberg #49324 04:35 PM, 12 Apr 2018
    возможно еще микросервис на жаве заменить на lua
  • https://t.me/clickhouse_ru
    @mrlamberg #49325 04:35 PM, 12 Apr 2018
    если получится подключится
  • Я не думаю что будет нормальный update
    Скорее всего будет типа, давайте перепишем блок с данными где нужно обновить.
  • https://t.me/clickhouse_ru
    @mrlamberg #49327 04:37 PM, 12 Apr 2018
    у нас данные не так часто меняются
  • https://t.me/clickhouse_ru
    мб greenplum ?
  • https://t.me/clickhouse_ru
    @mrlamberg #49329 04:37 PM, 12 Apr 2018
    но иногда надо
  • https://t.me/clickhouse_ru
    @mrlamberg #49331 04:37 PM, 12 Apr 2018
    и делит очень нужен
  • https://t.me/clickhouse_ru
    @mrlamberg #49332 04:37 PM, 12 Apr 2018
    даже пусть с переписыванием всего блока
  • https://t.me/clickhouse_ru
    @mrlamberg #49333 04:38 PM, 12 Apr 2018
    + чтобы при обновлении версии таблицу не дропать
  • https://t.me/clickhouse_ru
    @mrlamberg #49334 04:38 PM, 12 Apr 2018
    а обновлять незаметно для пользователя
  • https://t.me/clickhouse_ru
    @mrlamberg #49335 04:38 PM, 12 Apr 2018
    пусть оно там в фоне мержится
  • А слопование не подходит?
  • https://t.me/clickhouse_ru
    @mrlamberg #49337 04:38 PM, 12 Apr 2018
    иногда надо удалить целиком без остатка
  • https://t.me/clickhouse_ru
    @mrlamberg #49338 04:39 PM, 12 Apr 2018
    пытались сделать replacedmergetable
  • https://t.me/clickhouse_ru
    @mrlamberg #49339 04:39 PM, 12 Apr 2018
    вообще не фонтан
  • https://t.me/clickhouse_ru
    @Shegloff #49340 04:40 PM, 12 Apr 2018
    А мне нравится, куча таблиц, сразу после инсерта в скрипте делаю optimize table partition final, пока нареканий нет
  • https://t.me/clickhouse_ru
    @mrlamberg #49341 04:40 PM, 12 Apr 2018
    а мне не помогает
  • https://t.me/clickhouse_ru
    @mrlamberg #49342 04:40 PM, 12 Apr 2018
    вот сегодня
  • https://t.me/clickhouse_ru
    @mrlamberg #49343 04:40 PM, 12 Apr 2018
    100к записей
  • https://t.me/clickhouse_ru
    @mrlamberg #49344 04:40 PM, 12 Apr 2018
    делаю optimize table partition final
  • https://t.me/clickhouse_ru
    @mrlamberg #49345 04:40 PM, 12 Apr 2018
    0 толку
  • https://t.me/clickhouse_ru
    @mrlamberg #49346 04:40 PM, 12 Apr 2018
    всмысле 100к лишних записей
  • @teknik2008 #49347 04:41 PM, 12 Apr 2018
    Ясно, а перезапись партиций. Типа если надо удалить, взять нужные данные из партиции, удалить и вставить снова
  • https://t.me/clickhouse_ru
    @mrlamberg #49348 04:41 PM, 12 Apr 2018
    я хотел уже так делать
  • https://t.me/clickhouse_ru
    @mrlamberg #49349 04:41 PM, 12 Apr 2018
    но это пока не критично
  • https://t.me/clickhouse_ru
    @mrlamberg #49350 04:41 PM, 12 Apr 2018
    и можно дождатся update/delete
  • @teknik2008 #49351 04:41 PM, 12 Apr 2018
    Ясно
  • https://t.me/clickhouse_ru
    @mrlamberg #49352 04:42 PM, 12 Apr 2018
    пока данные за 20 минут переливаются
  • https://t.me/clickhouse_ru
    @mrlamberg #49353 04:42 PM, 12 Apr 2018
    из постгреса в кх
  • https://t.me/clickhouse_ru
    @mrlamberg #49354 04:42 PM, 12 Apr 2018
    можно дропать
  • https://t.me/clickhouse_ru
    @Shegloff #49355 04:42 PM, 12 Apr 2018
    Странно, у меня всегда хлопается одним запросом до последней записи, например в таблице где партиции по дню, ~2 млн строк за день, перезаливаю раз в час, хлопается сразу же
  • https://t.me/clickhouse_ru
    @mrlamberg #49356 04:42 PM, 12 Apr 2018
    у меня партиции по стандартному ключу
  • @teknik2008 #49357 04:42 PM, 12 Apr 2018
    Главное чтобы update/delete не влияли на скорость выборки
  • https://t.me/clickhouse_ru
    @mrlamberg #49358 04:42 PM, 12 Apr 2018
    может если сделать по 1 дню, то лучше станет
  • https://t.me/clickhouse_ru
    @mrlamberg #49359 04:43 PM, 12 Apr 2018
    мы готовы смирится с падением скорости на какойто промежут времени
  • https://t.me/clickhouse_ru
    @mrlamberg #49360 04:43 PM, 12 Apr 2018
    когда выполняется update/delete
  • https://t.me/clickhouse_ru
    @mrlamberg #49361 04:43 PM, 12 Apr 2018
    днем у нас мало записей приходит
  • https://t.me/clickhouse_ru
    @mrlamberg #49362 04:43 PM, 12 Apr 2018
    все в основном ночью
  • https://t.me/clickhouse_ru
    @Shegloff #49363 04:44 PM, 12 Apr 2018
    У вас версия кх какая
  • https://t.me/clickhouse_ru
    @mrlamberg #49364 04:44 PM, 12 Apr 2018
    вчера обновлялся
  • https://t.me/clickhouse_ru
    @mrlamberg #49365 04:44 PM, 12 Apr 2018
    думал, мб баг где
  • https://t.me/clickhouse_ru
    @mrlamberg #49366 04:44 PM, 12 Apr 2018
    а нет
  • https://t.me/clickhouse_ru
    @mrlamberg #49367 04:44 PM, 12 Apr 2018
    не помогло
  • https://t.me/clickhouse_ru
    @Shegloff #49368 04:44 PM, 12 Apr 2018
    У меня 343, может не надо обновляться)))
  • https://t.me/clickhouse_ru
    @mrlamberg #49369 04:45 PM, 12 Apr 2018
    и воспроизводится еще както странно
  • https://t.me/clickhouse_ru
    @mrlamberg #49370 04:45 PM, 12 Apr 2018
    не всегда
  • https://t.me/clickhouse_ru
    может парты нельзя смержить потому что итоговый размер очень большой будет?
    или дубликаты уже лежат в одном парте, нечего мержить (это пофикшено имхо) (если залить дубликаты одним инсертом, то они не схлопнуться)
  • https://t.me/clickhouse_ru
    @Shegloff #49372 04:45 PM, 12 Apr 2018
    У вас точно данные с одним ключом не разьезжаются по шардам?
  • https://t.me/clickhouse_ru
    @mrlamberg #49373 04:45 PM, 12 Apr 2018
    1 машина
  • https://t.me/clickhouse_ru
    @mrlamberg #49374 04:46 PM, 12 Apr 2018
    места свободного чуть меньше чем сама бд занимает
  • https://t.me/clickhouse_ru
    @Shegloff #49375 04:46 PM, 12 Apr 2018
    Опа
  • https://t.me/clickhouse_ru
    @Shegloff #49376 04:46 PM, 12 Apr 2018
    Может в этом дело
  • https://t.me/clickhouse_ru
    @mrlamberg #49377 04:46 PM, 12 Apr 2018
    но партиции то не больше гигобайта
  • https://t.me/clickhouse_ru
    это не важно, размер парта определяется параметром merge чего-то там.
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #49371 #49379 04:47 PM, 12 Apr 2018
    Хорошая мысль про итоговый размер
  • https://t.me/clickhouse_ru
    @mrlamberg #49380 04:47 PM, 12 Apr 2018
    на прошлой неделе у меня вообще дублей было столькоже, столько настоящих данных
  • https://t.me/clickhouse_ru
    @mrlamberg #49381 04:47 PM, 12 Apr 2018
    просто х2
  • https://t.me/clickhouse_ru
    @mrlamberg #49382 04:47 PM, 12 Apr 2018
    я изначально надеялся запихивать вообще все
  • https://t.me/clickhouse_ru
    @mrlamberg #49383 04:47 PM, 12 Apr 2018
    при обновлении
  • https://t.me/clickhouse_ru
    @mrlamberg #49384 04:47 PM, 12 Apr 2018
    и пусть оно там удалит старое
  • https://t.me/clickhouse_ru
    @mrlamberg #49385 04:48 PM, 12 Apr 2018
    но чтото не пошло
  • https://t.me/clickhouse_ru
    @Shegloff #49386 04:48 PM, 12 Apr 2018
    Селекты с final убирают дубли, с ним медленно выходит?
  • https://t.me/clickhouse_ru
    @mrlamberg #49387 04:48 PM, 12 Apr 2018
    медленно
  • https://t.me/clickhouse_ru
    @mrlamberg #49388 04:48 PM, 12 Apr 2018
    почти в 5 раз
  • https://t.me/clickhouse_ru
    @Shegloff #49389 04:49 PM, 12 Apr 2018
    Ну да, у меня также
  • https://t.me/clickhouse_ru
    @mrlamberg #49390 04:49 PM, 12 Apr 2018
    надо попробовать ключ по дням сделать
  • https://t.me/clickhouse_ru
    @mrlamberg #49391 04:49 PM, 12 Apr 2018
    может легче станет
  • https://t.me/clickhouse_ru
    @Shegloff #49392 04:50 PM, 12 Apr 2018
    У меня когда своб.места остаётся мало, кх перестает мержить
  • https://t.me/clickhouse_ru
    @mrlamberg #49393 04:50 PM, 12 Apr 2018
    ну я не думаю что ему 90 гб для мержа мало
  • https://t.me/clickhouse_ru
    @mrlamberg #49394 04:51 PM, 12 Apr 2018
    если реально так, то можно еще сотку выпросить
  • https://t.me/clickhouse_ru
    @mrlamberg #49395 04:51 PM, 12 Apr 2018
    правда возмущаются, когда ссд просишь
  • https://t.me/clickhouse_ru
    @den_crane #49396 04:53 PM, 12 Apr 2018
    вы проверьте есть ли вообще что мержить
    select * from system.parts where table =
    и параметр max_bytes_to_merge_at_max_space_in_pool
  • https://t.me/clickhouse_ru
    @mrlamberg #49397 04:53 PM, 12 Apr 2018
    ну я проверяю дубли сравнивая результат между final и не final запросом
  • https://t.me/clickhouse_ru
    @den_crane #49398 04:54 PM, 12 Apr 2018
    дубликаты илиминируются при мерже партиций (в старых версиях КХ)
  • https://t.me/clickhouse_ru
    @mrlamberg #49399 04:55 PM, 12 Apr 2018
    ну у меня вставки идут по месяцам
  • https://t.me/clickhouse_ru
    @mrlamberg #49400 04:55 PM, 12 Apr 2018
    такчто просто в партицию кидается еще столькоже данных
  • https://t.me/clickhouse_ru
    @mrlamberg #49401 04:55 PM, 12 Apr 2018
    сколько там было
  • https://t.me/clickhouse_ru
    @mrlamberg #49402 04:55 PM, 12 Apr 2018
    при обновлении версии всмысле
  • https://t.me/clickhouse_ru
    @den_crane #49403 04:58 PM, 12 Apr 2018
    я оговариваюсь, не партиций, а партов, каждый новый инсерт это новый парт, который будет смержен, а может и не будет, это зависит.
  • https://t.me/clickhouse_ru
    @mrlamberg #49404 04:59 PM, 12 Apr 2018
    от чего зависит?
  • https://t.me/clickhouse_ru
    @den_crane #49405 05:02 PM, 12 Apr 2018
    t.me/clickhouse_ru/48373
    Alexey Milovidov in ClickHouse не тормозит

    Напишите SET optimize_throw_if_noop = 1; и запустите OPTIMIZE. Он напишет, почему не хочет мержить.

  • https://t.me/clickhouse_ru
    @mrlamberg #49406 05:12 PM, 12 Apr 2018
    а это делал тогда
  • https://t.me/clickhouse_ru
    @mrlamberg #49407 05:12 PM, 12 Apr 2018
    он мне говорил, что мержить нечего
  • https://t.me/clickhouse_ru
    @den_crane #49408 05:24 PM, 12 Apr 2018
    Ну т.е. дубликаты залиты за один инсерт или я чего-то не понимаю.
  • https://t.me/clickhouse_ru
    @mrlamberg #49409 05:28 PM, 12 Apr 2018
    были записи
  • https://t.me/clickhouse_ru
    @mrlamberg #49410 05:28 PM, 12 Apr 2018
    я этиже записи заливаю, но немного измененнные
  • https://t.me/clickhouse_ru
    @mrlamberg #49411 05:29 PM, 12 Apr 2018
    и с версией+1
  • https://t.me/clickhouse_ru
    @mrlamberg #49412 05:29 PM, 12 Apr 2018
    одной пачкой
  • https://t.me/clickhouse_ru
    @mrlamberg #49413 05:29 PM, 12 Apr 2018
    и ему походу норм
  • https://t.me/clickhouse_ru
    @den_crane #49414 05:46 PM, 12 Apr 2018
    есть еще прикол, имя партиции сделайте копи паст из
    select * from system.parts where table =

    я однажды опечатался в цифре (11111) и не заметил, а КХ ничего не говорит , у него все successfully

    optimize table mytable partition 11111 final
    ---
    0 rows affected
    optimize executed successfully
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49414 #49415 06:03 PM, 12 Apr 2018
    Действительно, нужно какой-то результат выводить
  • https://t.me/clickhouse_ru
    @mrlamberg #49416 06:05 PM, 12 Apr 2018
    я прямо через селект формировал строчку optimize table mytable partition 11111 final
  • https://t.me/clickhouse_ru
    @mrlamberg #49417 06:05 PM, 12 Apr 2018
    такчто ошибок быть не могло
  • @vludv ↶ Reply to #49414 #49419 07:00 PM, 12 Apr 2018
    Вроде бы если поставить настройку optimize_throw_if_noop=1, то должно ругаться (по-умолчанию она выключена)
  • @kgdrusaaremaa #49420 07:29 PM, 12 Apr 2018
    как узнать результирующий тип поля?
  • @kgdrusaaremaa #49421 07:30 PM, 12 Apr 2018
    например вот SELECT IPv6StringToNum('2a00:1450:401b:804::200e') AS addr
    такой тип будет у addr?
  • https://t.me/clickhouse_ru
    @Sablast ↶ Reply to #49421 #49422 07:36 PM, 12 Apr 2018
    Используйте toTypeName()
  • спасибо.
  • @IamYaroslav #49424 08:11 PM, 12 Apr 2018
    Joined.
  • @595847235 #49425 08:16 PM, 12 Apr 2018
    Joined.
  • 13 April 2018 (196 messages)
  • https://t.me/clickhouse_ru
    @ShaDyRUN #49427 03:18 AM, 13 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @Vasyaabr #49428 06:24 AM, 13 Apr 2018
    Привет!
    А как работает [TO[db.]name] при создании MATERIALIZED VIEW?
    Попытался выполнить
    CREATE MATERIALIZED VIEW Turnovers2 TO Turnovers ENGINE = SummingMergeTree(RecordDate, ( RecordDate, NetID ), 8192) POPULATE;
    на что получил синтаксическую ошибку на слове Engine (у таблицы Turnovers он MergeTree, если что).
    В документации почти ничего.
  • https://t.me/clickhouse_ru
    @kshvakov #49429 06:28 AM, 13 Apr 2018
    TO указывает на уже созданную таблицу и при дропе самого VIEW эта таблица не будет удаляться как при обычном MV и .inner. таблицах
  • https://t.me/clickhouse_ru
    @kshvakov #49430 06:29 AM, 13 Apr 2018
    т.е. просто пишем CREATE MATERIALIZED VIEW v_view TO table AS
  • https://t.me/clickhouse_ru
    @Vasyaabr #49431 06:33 AM, 13 Apr 2018
    Ага. Тогда такой вопрос (юзкейс) :)
    У нас есть одна большая таблица (миллиарды записей на 400 колонок). И к ней - MATERIALIZED VIEW c ENGINE = ReplicatedSummingMergeTree. Совершенно штатный случай - добавление к основной таблице новых колонок.
    Непонятно, как поддерживать MATERIALIZED VIEW? В доках написано что ALTER не поддерживается. Дропать и потом подсоединять с POPULATE - это жесть, на проде будут потеряны записи для агрегирования во вьюхе (или остановится обработка очереди).
    Быть может, использовать как раз TO, дропать вьюху, добавлять колонки в .inner, и снова создавать вьюху с TO?
  • https://t.me/clickhouse_ru
    @kshvakov #49432 06:35 AM, 13 Apr 2018
    МЫ делаем так: создаем view с to на готовую таблицу, если нужно что-то поменять останавливаем запись, делаем ALTER в таблицу, дропаем и создаем MV с учетом записи в новую колонку
  • https://t.me/clickhouse_ru
    @Vasyaabr #49433 06:36 AM, 13 Apr 2018
    Спасибо! Будем пробовать.
  • https://t.me/clickhouse_ru
    @kshvakov #49434 06:38 AM, 13 Apr 2018
    TO и делали для того чтоб можно было достаточно легко MV обслуживать
  • https://t.me/clickhouse_ru
    @Sersecr001 #49435 07:10 AM, 13 Apr 2018
    Есть ли какие планы по переносу этого канала в другой месенджер?
  • https://t.me/clickhouse_ru
    @149051052 #49436 07:15 AM, 13 Apr 2018
    Текстовая трансляция
    https://www.gazeta.ru/tech/2018/04/13_a_11715859.shtml
    Пятница, 13-е: черный день для Telegram

    Мессенджер Telegram будет заблокирован на всей территории России — такое решение принял Таганский суд Москвы. Как заявила судья Смолина, это решение подлежит немедленному исполнению. «Газета.Ru» вела онлайн-трансляцию заседания, на котором решалась судьба Telegram.

  • https://t.me/clickhouse_ru
    @mrlamberg #49437 07:16 AM, 13 Apr 2018
    и чо они за день решение вынесут?
  • https://t.me/clickhouse_ru
    @Sersecr001 #49438 07:17 AM, 13 Apr 2018
    Есть идея как то перекинуть все сообщения этой группы в архив. Очень выручает поиск по схожим вопросам и проблемам.
  • https://t.me/clickhouse_ru
    Могут и вынести и заблокировать
  • https://t.me/clickhouse_ru
    @mrykin ↶ Reply to #49437 #49440 07:17 AM, 13 Apr 2018
    решение могут и за день вынести, а вот реализация может затянуться, если только они заранее не подготовились )
  • https://t.me/clickhouse_ru
    @JenZolotarev #49441 07:17 AM, 13 Apr 2018
    что, простите? а как же время на ожалование и все такое?
  • https://t.me/clickhouse_ru
    @mrlamberg #49442 07:17 AM, 13 Apr 2018
    да подключить прокси
  • https://t.me/clickhouse_ru
    @mrlamberg #49443 07:17 AM, 13 Apr 2018
    да и все
  • https://t.me/clickhouse_ru
    @JenZolotarev #49444 07:18 AM, 13 Apr 2018
    я тоже не вижу в этом проблемы
  • https://t.me/clickhouse_ru
    @mrlamberg #49445 07:18 AM, 13 Apr 2018
    если заблочат вечером заморочусь, арендую vps гденить в европе
  • https://t.me/clickhouse_ru
    @JenZolotarev #49446 07:18 AM, 13 Apr 2018
    как будто мы не в IT работаем
  • https://t.me/clickhouse_ru
    @stufently #49447 07:20 AM, 13 Apr 2018
    мне кажется дуров должен сразу выпустить клиент со встроенным прокси и впн
  • https://t.me/clickhouse_ru
    @JenZolotarev #49448 07:20 AM, 13 Apr 2018
    функционал прокси добавили еще когда первые отголоски этого безобразия появились
  • https://t.me/clickhouse_ru
    В ОАЭ ни скайп, ни вотсапп, ни телеграмм, ни вайебер ... итд не работает голосовой вызов. ВПН трафик режут и штраф за использование 10.000$.
    Понятно что решение найдем, но будет не удобно.
  • https://t.me/clickhouse_ru
    @kshvakov #49450 07:26 AM, 13 Apr 2018
    У Яндекса ведь был какой-то свой месенджер?
  • https://t.me/clickhouse_ru
    @OrNixx #49451 07:26 AM, 13 Apr 2018
    прикольно... опенвпн тоже вычисляют и режут?
  • https://t.me/clickhouse_ru
    @OrNixx #49452 07:26 AM, 13 Apr 2018
    по 443му порту пустить, например
  • https://t.me/clickhouse_ru
    @kshvakov #49453 07:26 AM, 13 Apr 2018
    Link

    Яндекс 360 для бизнеса — набор сервисов для работы, объединенных общим интерфейсом. С его помощью можно решать самые разные задачи: вести переписку, хранить документы и проводить видеовстречи. Яндекс 360 объединяет Почту, Диск, Календарь, Телемост, Мессенджер и Заметки.

  • https://t.me/clickhouse_ru
    На 100%
  • https://t.me/clickhouse_ru
    @OrNixx #49455 07:27 AM, 13 Apr 2018
    0_о а как? он отличается от https-трафика?
  • https://t.me/clickhouse_ru
    китайцы режут легко
  • https://t.me/clickhouse_ru
    Все режут, если мобильный или доманий интернет
  • https://t.me/clickhouse_ru
    он похож на хттпс трафик только портом, а всем остальным отличается
  • https://t.me/clickhouse_ru
    Есть хитрость - vpn завернуть в https - только тогда работает
  • https://t.me/clickhouse_ru
    @OrNixx #49460 07:28 AM, 13 Apr 2018
    да, про это тоже подумал
  • https://t.me/clickhouse_ru
    @stufently #49461 07:28 AM, 13 Apr 2018
    ябыл недавно в китае и каждый раз их фаервол все умнее и умнее
  • https://t.me/clickhouse_ru
    @OrNixx #49462 07:28 AM, 13 Apr 2018
    а как это технически? через прокси?
  • https://t.me/clickhouse_ru
    @stufently #49463 07:28 AM, 13 Apr 2018
    иногда просто не коннектит и все
  • https://t.me/clickhouse_ru
    @OrNixx #49464 07:29 AM, 13 Apr 2018
    что за долбанутый мир стал...
  • https://t.me/clickhouse_ru
    Нет. Stunnel. Кстати его не плохо использовать для работы с CH
  • https://t.me/clickhouse_ru
    Ты не заметил что война идет?
  • https://t.me/clickhouse_ru
    @OrNixx #49467 07:30 AM, 13 Apr 2018
    ну это уже следствие того, что мир стал долбанутый
  • https://t.me/clickhouse_ru
    @Sersecr001 #49468 07:31 AM, 13 Apr 2018
    Может дуров для россии просто секретные чаты отключит? Но архив группы надо обязательно сделать. Здесь очень много полезной инфы
  • https://t.me/clickhouse_ru
    @kenota ↶ Reply to #49457 #49469 07:32 AM, 13 Apr 2018
    Китайцы вроде весь трафик просто на себя переправляют и подсовывают сертификат фаервола, а там внутри уже смотрят на трафик. Вся страна под Mitm партии :)
  • https://t.me/clickhouse_ru
    архив вроде есть где то , я просто часто когда по кх ищу встречаю в инете на каком то сайте ответы с архива чата, но не запомнил где именно
  • https://t.me/clickhouse_ru
    @mainnika #49471 08:05 AM, 13 Apr 2018
    Просто нужно сюда бота добавить который будет писать в базу архив сообщений с веб гуем. Кажется чат русской федоры так работает
  • @kgdrusaaremaa #49472 08:06 AM, 13 Apr 2018
    Куда будем переезжать после блокировки Телеграма?
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #49472 #49473 08:06 AM, 13 Apr 2018
    В матрицу)
  • https://t.me/clickhouse_ru
    @nicname #49474 08:06 AM, 13 Apr 2018
    в европу
  • @kgdrusaaremaa #49475 08:07 AM, 13 Apr 2018
    Ребят я серьезно... Читаю канал много интересного...жаль терять.
  • https://t.me/clickhouse_ru
    @oxgrouby #49476 08:07 AM, 13 Apr 2018
    Правительство рекомендует ICQ.
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #49475 #49477 08:08 AM, 13 Apr 2018
    Я тоже про матрицу https://matrix.org
    Link

    Matrix is an open standard for interoperable, decentralised, real-time communication

  • https://t.me/clickhouse_ru
    @oxgrouby #49479 08:08 AM, 13 Apr 2018
    лично я с удовольствием в ирку бы )
  • @justedro #49480 08:08 AM, 13 Apr 2018
    @veesecurity
  • https://t.me/clickhouse_ru
    @mrlamberg #49481 08:08 AM, 13 Apr 2018
    форум в торе?)
  • https://t.me/clickhouse_ru
    @OrNixx #49482 08:09 AM, 13 Apr 2018
    зачем переезжать? тут каждый в состоянии настроить прокси
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #49482 #49484 08:10 AM, 13 Apr 2018
    за уровнем жизни 😀
  • @kgdrusaaremaa #49486 08:36 AM, 13 Apr 2018
    Будут блокировать.
  • @70532431 ↶ Reply to #49451 #49487 08:38 AM, 13 Apr 2018
    почитайте про stunnel. Работало там, где все OpenVPN блокировались :)
    коробочное решение:
    https://github.com/StreisandEffect/streisand
  • https://t.me/clickhouse_ru
    @OrNixx #49488 08:38 AM, 13 Apr 2018
    спасибо, пригодится
  • https://t.me/clickhouse_ru
    @kenota ↶ Reply to #49471 #49489 08:53 AM, 13 Apr 2018
    О, а подскажите ссылку на чат русской федоры.
  • https://t.me/clickhouse_ru
    @Vasyaabr #49490 09:08 AM, 13 Apr 2018
    drop partition отрабатывает на связанный с таблицей MATERIALIZED VIEW? Или надо там тоже руками дропать?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49490 #49491 09:11 AM, 13 Apr 2018
    В новых версиях только MV созданные без TO могут пробрасывать дроп партиций, а так нужно руками делать
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #49489 #49492 09:13 AM, 13 Apr 2018
    В телеграме? https://t.me/russianfedora
    Russian Fedora Community

    Чат русскоязычных поклонников Fedora. Новостной канал: @rfrnews Сайт: https://ru.fedoracommunity.org FAQ: https://russianfedora.github.io/FAQ Если вы не можете отправить ссылки и скриншоты - это антиспам бот, сообщите админу. Russian language only.

  • https://t.me/clickhouse_ru
    @kenota ↶ Reply to #49492 #49493 09:14 AM, 13 Apr 2018
    Спасибо
  • https://t.me/clickhouse_ru
    Пробовал. Блокируют в ОАЭ
  • @70532431 ↶ Reply to #49495 #49496 09:42 AM, 13 Apr 2018
    может, вы на стандартном порту пробовали OpenVPN? У меня в арабских странах, в том числе в ОАЭ, летом работало.
  • https://t.me/clickhouse_ru
    Может плохо разобрался.
  • @antonio_antuan #49498 09:57 AM, 13 Apr 2018
    Есть задача - сделать дамп случайных данных из рабочей таблицы. Как это лучше всего делать? Обычный способ select * from table where rand() < 0.1 работать будет, я так понимаю, так себе
  • @antonio_antuan #49499 09:58 AM, 13 Apr 2018
    если вообще будет:
    :) select count() from traffic_stats where rand() < 0.1;

    SELECT count()
    FROM traffic_stats
    WHERE rand() < 0.1

    ┌─count()─┐
    │ 1 │
    └─────────┘
    :) select count() from traffic_stats;

    SELECT count()
    FROM traffic_stats

    ┌─────count()─┐
    │ 11151022329 │
    └─────────────┘
  • @antonio_antuan #49500 10:00 AM, 13 Apr 2018
    где-то в этом чате что-то такое уже срашивали, но я чет не осилил найти
  • https://t.me/clickhouse_ru
    @Shegloff #49501 10:14 AM, 13 Apr 2018
    select * from db.table where id % (случайное число) = 0 limit 100000
  • https://t.me/clickhouse_ru
    @alexey_konkov #49502 10:14 AM, 13 Apr 2018
    коллеги, добрый день!
    подскажите, кто знает/сталкивался:
    1. есть таблица MergeTree
    2. есть MATERIALIZED VIEW от неё SummingMergeTree
    при этом периодически наблюдается, что значения в суммируемых полях MV отличаются от сумм по полям таблицы с учётом группировок

    отчего подобное может происходить?
    версия 1.1.54304
  • https://t.me/clickhouse_ru
    @Shegloff ↶ Reply to #49498 #49503 10:15 AM, 13 Apr 2018
    select * from db.table where id % (случайное число) = 0 limit 100000
    случайное число = select number from (select number from system.numbers limit 1000) order by rand() limit 1
  • @antonio_antuan #49504 10:21 AM, 13 Apr 2018
    Нету айди :(
  • @antonio_antuan #49505 10:21 AM, 13 Apr 2018
    Так бы да
  • @antonio_antuan #49506 10:21 AM, 13 Apr 2018
    Было б попроще
  • https://t.me/clickhouse_ru
    @alexey_konkov #49507 10:24 AM, 13 Apr 2018
    эммм... а rand() чего отдаёт? вроде как UInt32
    https://clickhouse.yandex/docs/ru/functions/random_functions
  • https://t.me/clickhouse_ru
    @alexey_konkov #49508 10:27 AM, 13 Apr 2018
    select number from (select number from system.numbers limit 100) where (rand() / 4294967295) < 0.1;
  • https://t.me/clickhouse_ru
    @nicname #49509 10:27 AM, 13 Apr 2018
    ORDER BY cityHash64(rand()) LIMIT 100
  • https://t.me/clickhouse_ru
    @na_qoy_qatsi #49510 10:28 AM, 13 Apr 2018
    Joined.
  • @antonio_antuan #49511 10:28 AM, 13 Apr 2018
    на 11ккк строк памяти, боюсь, не хватит)
  • @antonio_antuan #49512 10:29 AM, 13 Apr 2018
    SELECT *
    FROM traffic_stats
    ORDER BY cityHash64(rand()) ASC
    LIMIT 100

    Ok.
    Query was cancelled.

    0 rows in set. Elapsed: 7.004 sec. Processed 270.06 million rows, 64.40 GB (38.56 million rows/s., 9.19 GB/s.)
  • https://t.me/clickhouse_ru
    @orantius #49513 10:32 AM, 13 Apr 2018
    sample 0.001 ?
  • @antonio_antuan #49514 10:32 AM, 13 Apr 2018
    нет выражения для семплирования, без него же не работает вроде?
  • @antonio_antuan #49515 10:33 AM, 13 Apr 2018
    угу, не работает
  • https://t.me/clickhouse_ru
    @orantius #49516 10:33 AM, 13 Apr 2018
    да, без него не работает
  • https://t.me/clickhouse_ru
    заменить rand() на rand() / 4294967295 не пробовали?
  • @antonio_antuan #49518 10:35 AM, 13 Apr 2018
    ооо, так уже лучше, спасибо
    SELECT count()
    FROM traffic_stats
    WHERE (rand() / 4294967295) < 0.00001

    ┌─count()─┐
    │ 111618 │
    └─────────┘
  • @antonio_antuan #49519 10:38 AM, 13 Apr 2018
    а в чем фишка? что-то связанное со взаимодействием флоата и инта?
  • @antonio_antuan #49521 10:42 AM, 13 Apr 2018
    а всё, догнал
  • @antonio_antuan #49522 10:42 AM, 13 Apr 2018
    :)
  • @antonio_antuan #49523 10:42 AM, 13 Apr 2018
    спасибо
  • https://t.me/clickhouse_ru
    @alexey_konkov #49524 10:43 AM, 13 Apr 2018
    :О)
  • https://t.me/clickhouse_ru
    @Shegloff #49525 10:43 AM, 13 Apr 2018
    👍🏿
  • https://t.me/clickhouse_ru
    @f41gh7 #49526 10:45 AM, 13 Apr 2018
    день добрый, после обновления с 54337 до 54342 и выше сломались логи ( больше не пишутся в stdout и лог файлы), проблема наблюдается только при запуске в kubernetes (docker version - 17.03), все версии младше 54342 работают нормально. запускается через bash /entrypoint.sh - образ из докерхаба с кастомным entrypoint. Есть идеи куда посмотреть?
  • https://t.me/clickhouse_ru
    UP!
    никто не сталкивался?
  • https://t.me/clickhouse_ru
    @rheinx ↶ Reply to #49502 #49528 10:48 AM, 13 Apr 2018
    в какую сторону отличается? Если в меньшую, много ли данных льете? Может просто не успевает?
  • https://t.me/clickhouse_ru
    @alexey_konkov #49529 10:49 AM, 13 Apr 2018
    да, в MV данных меньше
    льём прилично

    если не успевает — то как с этим бороться?
  • https://t.me/clickhouse_ru
    @rheinx ↶ Reply to #49529 #49530 10:51 AM, 13 Apr 2018
    для теста, попробуйте остановить наливку и подождать завершения всех мержей. Ну просто чтоб точно понимать оно это или нет. Поскольку я просто предположил.
  • https://t.me/clickhouse_ru
    @alexey_konkov #49531 10:51 AM, 13 Apr 2018
    хотя... 1М в час записей
  • https://t.me/clickhouse_ru
    @alexey_konkov #49532 10:52 AM, 13 Apr 2018
    разницу наблюдаю ещё за март, так что все мержи давно бы должны пройти уже
  • https://t.me/clickhouse_ru
    @alexey_konkov #49533 10:52 AM, 13 Apr 2018
    будем копаться
  • https://t.me/clickhouse_ru
    @rheinx #49534 10:53 AM, 13 Apr 2018
    тогда нужно провалидировать ключи. Не помню в деталях, но там суть в том что если не верно ключи указаны, суммирование работает немного не так как ожидается.
    Сейчас попробую найти письмо, я когда то писал с подобной проблемой.
  • @343647023 #49535 11:04 AM, 13 Apr 2018
    Добрый день,
    может кто-нибудь подробней рассказать, когда лучше пользоваться PREWHERE, а когда WHERE
    Судя по документации скорость запроса станет только лучше, если пользоваться PREWHERE
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49535 #49536 11:07 AM, 13 Apr 2018
    PREWHERE нужен когда есть условия по колонке на которую нет индекса
  • https://t.me/clickhouse_ru
    @kshvakov #49537 11:08 AM, 13 Apr 2018
    и когда остальные условия не откидывают большую часть данных
  • @Nvarchar495 #49538 11:09 AM, 13 Apr 2018
    Друзья , подскажите куда копать?
  • @Nvarchar495 #49539 11:09 AM, 13 Apr 2018
    Clickhouse-client --host localhost работает
  • @Nvarchar495 #49540 11:10 AM, 13 Apr 2018
    clickhouse-client -host Ip этого сервера -- refused
  • @343647023 #49541 11:10 AM, 13 Apr 2018
    То есть сначала в PREWHERE указываем колонки, по которым нет индекса, а в WHERE те, которые входят в PK. или же можно все сразу указать в PREWHERE, эффект будет тот же?
  • @Nvarchar495 #49542 11:10 AM, 13 Apr 2018
    порты вроде открыты (8123, 9000,9009)
  • вам поможет /etc/hosts и netstat -nlpd
  • https://t.me/clickhouse_ru
    @proller #49544 11:11 AM, 13 Apr 2018
    <listen_host>::</listen_host> ?
  • @bkrols ↶ Reply to #49540 #49545 11:11 AM, 13 Apr 2018
    По умолчанию слушает только lo, видимо у вас при -host ломится уже не туда
  • @bkrols #49546 11:12 AM, 13 Apr 2018
    Ребят, всем привет!

    Похоже я обнаружил issue в HTTP интерфейсе, а именно:
    1) Пишу поток данных в HTTP интерфейс подобным образом: 'INSERT INTO table FORMAT RowBinary <binary data>'
    2) Если так совпадает, что в <binary data> первый байт = 0x20 (пробел), CH не получается прочитать пачку данных в этом запросе (видимо скипает лишнего)
    3) И возвращает Code: 33, e.displayText() = DB::Exception: Cannot read all data, e.what() = DB::Exception

    version 1.1.54370
    Это как-то можно обойти или создавать issue на github'e (поиском по чему-то подобному не нашел)?
    Фикс видится простым (я надеюсь). Мне он мешает, поэтому скорее всего сделаю себе патч, могу позже сделать и pull request.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49541 #49547 11:16 AM, 13 Apr 2018
    В этом случае эффект быстрее будет если все в WHERE пихнуть, КХ сам пытается соптимизировать и закинуть колонки в PREWHERE. Вообще нужно пробовать на ваших данных и запросе, самый большой эффект когда нет в запросе индексных колонок и все пихаем в PREWHERE
  • @343647023 #49548 11:18 AM, 13 Apr 2018
    Ок
    Спасибо
  • это в конфиге кликхауса?
  • https://t.me/clickhouse_ru
    @proller #49550 11:19 AM, 13 Apr 2018
    да
  • @vor_nik ↶ Reply to #49484 #49551 11:30 AM, 13 Apr 2018
    без гражданства то
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #49551 #49552 11:31 AM, 13 Apr 2018
    в чем проблема?
  • https://t.me/clickhouse_ru
    в PREWHERE имеет смысл заносить условие по неиндексной колонке, если размер колонки не большой (инт, дата и т.п.), при этом это условие даст хорошую фильтрацию данных

    в этом случае КХ "быстро" пробежится по этой колонке, оставив для дальнейшего рассмотрения лишь отфильтрованное, а дальше уже будет разбираться с индексами из WHERE
  • @artworkde #49555 12:24 PM, 13 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @CYevhenii #49556 01:01 PM, 13 Apr 2018
    Можно ли джоинить по двум параметрам?
  • https://t.me/clickhouse_ru
    @orantius #49557 01:02 PM, 13 Apr 2018
    да
  • https://t.me/clickhouse_ru
    @CYevhenii #49558 01:11 PM, 13 Apr 2018
    как?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49558 #49559 01:14 PM, 13 Apr 2018
    USING (a, b)
  • https://t.me/clickhouse_ru
    @den_crane #49560 01:15 PM, 13 Apr 2018
    select a,b,c,d from (select 1 a, 2 b, 3 c) all left join (select 1 a, 2 b, 4 d) using (a,b)
  • https://t.me/clickhouse_ru
    @CYevhenii #49561 01:16 PM, 13 Apr 2018
    Спасибо
  • https://t.me/clickhouse_ru
    @den_crane #49562 01:18 PM, 13 Apr 2018
    и "по выражению"
    select a,b,c,x,d from (select 1 a, 2 b, -5<0 x, 3 c) all left join (select 1 a, 2 b, -55<0 x,4 d) using (a,b,x)
  • https://t.me/clickhouse_ru
    @docdvz #49563 01:38 PM, 13 Apr 2018
    добрый день, сейчас изучаю кликхаус для нового проекта, подскажите - для mergetree нету опции автоинкрементируемого поля?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49563 #49564 01:40 PM, 13 Apr 2018
    Нет
  • https://t.me/clickhouse_ru
    @ksolokhov #49565 01:40 PM, 13 Apr 2018
    Коллеги, добрый день! Пытаюсь создать таблицу в CH получаю такую ошибку: Existing table metadata in ZooKeeper differs in primary key. Stored in ZooKeeper: event_date, cityHash64(event_id), local: time, cityHash64(event_id) раньше такой ключ был, но таблицу я удалил после этого, почему не удалились записи из zk?
  • https://t.me/clickhouse_ru
    @ksolokhov #49566 01:41 PM, 13 Apr 2018
    их теперь надо вручную удалить?
  • https://t.me/clickhouse_ru
    @ksolokhov #49567 01:43 PM, 13 Apr 2018
    а я кажется понял... удалил таблицу не со всех реплик
  • https://t.me/clickhouse_ru
    @ksolokhov #49568 01:43 PM, 13 Apr 2018
    забыл ON CLUSTER
  • https://t.me/clickhouse_ru
    @mainnika #49569 01:55 PM, 13 Apr 2018
    @kshvakov я тут проблему внезапную обнаружил с голанг драйвером.

    Ошибка в конвертации time.Time в toDate/toDateTime. helpers.go:127
    В коде это так: у меня дата — начало месяца 2015-03-01 00:00:00, поле типа DateTime.
    Но драйвер конвертит эту дату в toDate(кол-во дней) и выборка в итоге некорректная из-за этого. Написал пока воркароунд — +1 наносекунда.

    Issue на гитхабе вроде по этому поводу нет, я напишу, или может сам придумаю как пофиксить сразу с PR.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49569 #49570 02:03 PM, 13 Apr 2018
    Я знаю об этой проблеме, буду фиксить введя новые типы для даты и даты и времени с таймзоной
  • https://t.me/clickhouse_ru
    @mainnika ↶ Reply to #49570 #49571 02:03 PM, 13 Apr 2018
    Окей! Спасибо
  • https://t.me/clickhouse_ru
    @baltazorbest #49573 02:12 PM, 13 Apr 2018
    Здравствуйте. Подскажите пожалуйста, как можно посмотреть какие движки поддерживает кликхауз который уже установлен? Интересует движок MySQL , не уверен что версия которая сейчас установлена, поддерживает этот тип движка. Спасибо.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49573 #49574 02:26 PM, 13 Apr 2018
    Можно просто попробовать создать таблицу с необходимым движком
  • https://t.me/clickhouse_ru
    @baltazorbest #49575 02:27 PM, 13 Apr 2018
    в целом да, буду тогда пробовать
  • https://t.me/clickhouse_ru
    @baltazorbest #49577 02:39 PM, 13 Apr 2018
    и еще вопрос по поводу MySQL движка, какие права нужны пользователю для правильной работы? или хватит SELECT привилегии?
  • https://t.me/clickhouse_ru
    @murrzik #49578 02:54 PM, 13 Apr 2018
    Joined.
  • @pookieShmukie #49579 03:06 PM, 13 Apr 2018
    У меня тут веселая история с КХ :)
  • @pookieShmukie #49580 03:06 PM, 13 Apr 2018
    2018.04.13 18:06:05.903434 [ 15 ] <Trace> InterpreterSelectQuery: FetchColumns -> Complete
  • @pookieShmukie #49581 03:06 PM, 13 Apr 2018
    Вот лог заваливает вот такими строками и запрос может висеть несколько минут
  • @pookieShmukie #49582 03:07 PM, 13 Apr 2018
    В таблице сего 3 строчки
  • @Dima_Ishchenko #49583 03:07 PM, 13 Apr 2018
    Joined.
  • @pookieShmukie #49584 03:15 PM, 13 Apr 2018
    Версия 54370. Причем на 54343 этот запрос отрабатывает куда шустрей.
  • https://t.me/clickhouse_ru
    @Shegloff #49585 03:15 PM, 13 Apr 2018
    поканьте таблицу и запрос, интересно же :)
  • @70532431 ↶ Reply to #49579 #49586 03:16 PM, 13 Apr 2018
    Поставьте логгер в Warning, зачем вам Tracę?
  • Дак я его спецом включил, что бы понять че происходит ) Почему запрос висит
  • CREATE TABLE test.video_views
    (
    entityIri String,
    courseId UInt64,
    learnerId UInt64,
    actorId UInt64,
    duration UInt16,
    fullWatched UInt8,
    fullWatchedDate DateTime,
    fullWatchedDuration UInt16,
    fullWatchedTime UInt16,
    fullWatchedViews UInt16,
    `views.viewId` Array(String),
    `views.startedAt` Array(DateTime),
    `views.endedAt` Array(DateTime),
    `views.viewDuration` Array(UInt16),
    `views.watchedPart` Array(Float32),
    `views.fullWatched` Array(UInt8),
    `views.progress` Array(Float32),
    `views.reject` Array(UInt8),
    `views.viewNumber` Array(UInt16),
    `views.repeatingView` Array(UInt8),
    `views.ranges` Array(String),
    version DateTime
    )
    ENGINE = ReplacingMergeTree(version)
    PARTITION BY entityIri
    ORDER BY (learnerId, entityIri)
    SETTINGS index_granularity = 8192
  • @pookieShmukie #49589 03:17 PM, 13 Apr 2018
    Таблица
  • @pookieShmukie #49590 03:18 PM, 13 Apr 2018
    Запрос

    SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average`, `duration`, `full-watched-learners-count`, `overall-watchers-count`, `overall-full-watched-learners-count`, `views-count`, `time-before-full-watched-average`, if (isNaN((`overall-full-watched-learners-count`/`overall-watchers-count`) * 100), 0, (`overall-full-watched-learners-count`/`overall-watchers-count`) * 100) as `overall-watched-part`, if (isNaN((`full-watched-learners-count`/`watchers-count` * 100)), 0, (`full-watched-learners-count`/`watchers-count` * 100)) as `full-watched-part`, if (isNaN((`rejects-count`/`views-count` * 100)), 0, (`rejects-count`/`views-count` * 100)) as `rejects-part` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average`, `duration`, `full-watched-learners-count`, `overall-watchers-count`, `overall-full-watched-learners-count`, `views-count`, `time-before-full-watched-average` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average`, `duration`, `full-watched-learners-count`, `overall-watchers-count`, `overall-full-watched-learners-count`, `views-count` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average`, `duration`, `full-watched-learners-count`, `overall-watchers-count`, `overall-full-watched-learners-count` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average`, `duration`, `full-watched-learners-count`, `overall-watchers-count` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average`, `duration`, `full-watched-learners-count` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average`, `duration` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average`, `views-count-before-full-watched-average` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count`, `progress-average` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average`, `rejects-count` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average`, `watched-part-average` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average`, `repeating-views-count-average`, `views-duration-average` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`,
  • @pookieShmukie #49591 03:18 PM, 13 Apr 2018
    `reject-views-duration-average`, `repeating-views-count-average` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average`, `reject-views-duration-average` FROM (SELECT `entityIri`, `watchers-count`, `time-repeating-average` FROM (SELECT `entityIri`, `watchers-count` FROM (SELECT `entityIri` FROM `CloM8CwMR2`) ANY LEFT JOIN (SELECT uniq(learnerId) as `watchers-count`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(viewDurationSum) as `time-repeating-average`, `entityIri` FROM (SELECT sum(views.viewDuration) as viewDurationSum, `entityIri`, `learnerId` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `views`.`repeatingView` = 1 AND `learnerId` IN `tkRpHxGqM1` GROUP BY `learnerId`, `entityIri`) GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(views.viewDuration) as `reject-views-duration-average`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `views`.`reject` = 1 AND `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(viewsCount) as `repeating-views-count-average`, `entityIri` FROM (SELECT count() as viewsCount, `learnerId`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `courseId` = 1 AND `entityIri` IN `CloM8CwMR2` WHERE `views`.`repeatingView` = 1 AND `learnerId` IN `tkRpHxGqM1` GROUP BY `learnerId`, `entityIri`) GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(views.viewDuration) as `views-duration-average`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(views.watchedPart) as `watched-part-average`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT count() as `rejects-count`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `views`.`reject` = 1 AND `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(progressMax) as `progress-average`, `entityIri` FROM (SELECT max(views.progress) as progressMax, `entityIri`, `learnerId` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `learnerId`, `entityIri`) GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(fullWatchedViews) as `views-count-before-full-watched-average`, `entityIri` FROM `video_views` FINAL PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT any(duration) as `duration`, `entityIri` FROM `video_views` FINAL PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT uniq(learnerId) as `full-watched-learners-count`, `entityIri` FROM `video_views` FINAL PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `fullWatched` = 1 AND `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT uniq(learnerId) as `overall-watchers-count`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT uniq(learnerId) as `overall-full-watched-learners-count`,
  • @pookieShmukie #49592 03:18 PM, 13 Apr 2018
    `entityIri` FROM `video_views` FINAL PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `fullWatched` = 1 AND `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT count() as `views-count`, `entityIri` FROM `video_views` FINAL ARRAY JOIN `views` PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) ANY LEFT JOIN (SELECT avg(fullWatchedTime) as `time-before-full-watched-average`, `entityIri` FROM `video_views` FINAL PREWHERE `entityIri` IN `CloM8CwMR2` AND `courseId` = 1 WHERE `learnerId` IN `tkRpHxGqM1` GROUP BY `entityIri`) USING `entityIri`) FORMAT JSON
  • https://t.me/clickhouse_ru
    @Shegloff #49593 03:19 PM, 13 Apr 2018
    🙈
  • Это еще маленький :)
  • @pookieShmukie #49595 03:19 PM, 13 Apr 2018
    Это из-за того, что можно сделать только один джоин за запрос...приходится городить лестницу из запросов и прокидывать колонки снизу вверх.
  • @pookieShmukie #49596 03:20 PM, 13 Apr 2018
    Но суть не в этом. Суть в том, что почему то на разных версиях этот запрос отрабатывает по разному. На текущей стабильной он работает капец как долго. Причем он примерно 160 секунд валит в логи вот такую строчку, что я скинул и потом за 1мс выполняет запрос.
  • https://t.me/clickhouse_ru
    @proller #49597 04:01 PM, 13 Apr 2018
    а что такое CloM8CwMR2
  • https://t.me/clickhouse_ru
    @proller #49598 04:02 PM, 13 Apr 2018
    и tkRpHxGqM1
  • @vstakhov #49599 04:04 PM, 13 Apr 2018
    я напечатал это в терминале и случайно вызвал Ктулху, не делайте так!
  • https://t.me/clickhouse_ru
    @emakarov #49600 04:07 PM, 13 Apr 2018
    вот это запрос
  • https://t.me/clickhouse_ru
    @murrzik #49601 04:16 PM, 13 Apr 2018
    Друзья, кто-нибудь реализовывал на КХ аналог aggregation() over (partition by ...) оракла? Функция runningAccumulate() не спасает :(
  • https://t.me/clickhouse_ru
    @proller ↶ Reply to #49599 #49602 04:17 PM, 13 Apr 2018
    Ктулху это хорошо - много свежей кальмарятины!
    а проблему воспроизвести всеравно надо
  • https://t.me/clickhouse_ru
    @navel_tail #49603 04:18 PM, 13 Apr 2018
    Я бы попробовал поочерёдно изнути наружу избавляться от джоинов и в теории можно будет понять на каком этапе тормозит.
    А вообще накой вам такая сложная структура? Сделайте одну огромную таблицу и будет счастье
  • @vstakhov #49605 04:20 PM, 13 Apr 2018
    @proller Iä! Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!
  • https://t.me/clickhouse_ru
    @rheinx #49606 04:31 PM, 13 Apr 2018
    Ребят, а что означает ошибка?

    2018.04.13 19:30:11.427727 [ 22 ] <Error> HTTPHandler: Cannot send exception to client: Code: 24, e.displayText() = DB::Exception: Cannot write to ostream, e.what() = DB::Exception, Stack trace:

    убрал трейс для читаемости
  • https://t.me/clickhouse_ru
    @leidruid #49607 04:32 PM, 13 Apr 2018
    У меня такое когда клиент отвалился, по таймауту, например
  • Это локальные файлы
  • @pookieShmukie #49610 04:54 PM, 13 Apr 2018
    Которые как временные таблицы используются
  • https://t.me/clickhouse_ru
    @rheinx #49611 04:59 PM, 13 Apr 2018
    Ребят, а можно выдать права доступа только на 1 базу?
  • Есть регрессия производительности при анализе запросов с большим количеством подзапросов в FROM. Я имел её ввиду ещё когда готовил релиз, но решил что это пока не очень важно, так как она начинает иметь значение на цепочках из хотя бы десятков подзапросов. Исправить можно.
  • @milovidov_an #49613 05:18 PM, 13 Apr 2018
    Ваш запрос красиво выглядит в клиенте, надеюсь вы писали его не вручную.
  • Нет конечно :) У нас генератор таких запросов существует )
  • Это на самом деле маленький запрос. Мы собираем гораздо бОльшие запросы, да такие, что пришлось пилить транспорт через CLI клиент, т.к. использовались временные таблицы из локальных файлов + запрос на столько большой, что в URL не помещается из-за ограничения по длине :(
  • @pookieShmukie #49616 05:20 PM, 13 Apr 2018
    Будем ждать фикс! :) Надеюсь, что в чейнджлоге появится информация об исправлении!
  • Но ведь можно отправлять запрос по HTTP POST-ом. Также можно увеличить max_query_size, max_ast_elements, max_ast_depth, max_subqueries_depth,,,
  • Не получается, если мы отправляем запрос постом + multipart шлем
  • @pookieShmukie #49619 05:25 PM, 13 Apr 2018
    Мы даже хотели напилить фикс под это дело, что бы при отправке файлов на сервер по HTTP для запроса, можно было постом так же и запрос передать, но у нас спецов в плюсах не нашлось ( Просили знакомого сделать, но он предпочел не тратить на это время :(
  • Действительно, помню о таком.
  • Просто CLI не позволяет из PHP делать асинхронные запрос. Точнее это можно сделать, но блин...там будут кейсы когда останутся зомби процессы, а возиться с ними не хочется. Асинхронщина по HTTP давала нам не плохую скорость :) Но это не критично. Мы все тешим себя надеждой, либо дождаться официальной фичи, либо найти все таки разработчика на плюсах, который это поправит
  • Мы дали эту задачу незнакомому энтузиасту с улицы.
  • Даже не знаю как на это реагировать, но я посмеялся от души )))
  • @pookieShmukie #49624 05:36 PM, 13 Apr 2018
    Надеюсь, что сделает!
  • @vstakhov #49625 05:40 PM, 13 Apr 2018
    Энтузиаст, поди, мелочь просил, а вы с ним так жестоко
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49611 #49626 08:58 PM, 13 Apr 2018
    Да, можно. Для пользователя указывается список баз в allow_databases, например:
    <users>
    <username>
    <password></password>
    <allow_databases>
    <database>test</database>
    </allow_databases>
    </username>
    </users>
  • https://t.me/clickhouse_ru
    @rheinx ↶ Reply to #49626 #49627 08:59 PM, 13 Apr 2018
    Спасибо! А может быть тогда есть возможность пойти дальше и сделать для части баз RO доступ, а для части RW?
    Может быть есть дока по этому поводу?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49627 #49628 09:01 PM, 13 Apr 2018
    Нет, так сделать нельзя. На данный момент в ClickHouse очень упращенный механизм разграничения прав
  • https://t.me/clickhouse_ru
    @Kentmmm #49629 09:04 PM, 13 Apr 2018
    Телеграмм бот «Telegram Proxy (SOCKS5) Bot» в списке сайта Telegram-store.com
    https://ru.telegram-store.com/catalog/bots/proxy_socks5_bot/
  • https://t.me/clickhouse_ru
    @archduke_mephistopheies #49630 10:35 PM, 13 Apr 2018
    Joined.
  • 14 April 2018 (18 messages)
  • https://t.me/clickhouse_ru
    @k0st1an #49631 09:15 AM, 14 Apr 2018
    Народ, кто нить решал подобную проблему? https://github.com/yandex/ClickHouse/issues/2070
    SegFault with Distributed Kafka Tables · Issue #2070 · yandex/ClickHouse

    I am using Clickhouse 1.1.54362. Steps I followed: Verified everything works with a non-replicated table. Create local tables on all hosts in cluster Create distributed table on all hosts in cluste...

  • https://t.me/clickhouse_ru
    @archduke_mephistopheies #49632 09:36 AM, 14 Apr 2018
    господа, нужно мне было сделать cumsum внутри групп, поискал я тут в группе и нашел только такое t.me/clickhouse_ru/2430

    по аналогии сделал для своих данных https://gist.github.com/mephistopheies/971769aec94162da9314d86e3cc9bf45

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

    upd: ессесно такой изврат вышел за пределы памяти -)
    Mariya Mansurova in ClickHouse не тормозит

    В принципе, в CH тоже можно посчитать cumulative sum - не очень красиво, но вроде работает CREATE TABLE test ENGINE = Log AS SELECT arrayJoin([1, 2, 3]) as value SELECT value1 as value, sum(value2) as cumsum FROM (SELECT value as value1, 1 as fake FROM test ) ALL INNER JOIN (SELECT value as value2, 1 as fake FROM test ) USING fake WHERE value1 >= value2 GROUP BY value1

  • https://t.me/clickhouse_ru
    @proller ↶ Reply to #49631 #49633 09:46 AM, 14 Apr 2018
    а можно воспроизведение этой проблемы поместить в скрипт чтоб запустить и упало? тогда было бы легче решить
  • https://t.me/clickhouse_ru
    @k0st1an ↶ Reply to #49633 #49634 09:54 AM, 14 Apr 2018
    Могу пошагово описать, с командами. Так норм?
  • https://t.me/clickhouse_ru
    @proller #49635 09:59 AM, 14 Apr 2018
    да
  • https://t.me/clickhouse_ru
    @329389572 #49636 12:46 PM, 14 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @ntkachev #49637 12:49 PM, 14 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @xammett #49638 05:32 PM, 14 Apr 2018
    парни, привет. поделитесь как можно максимально быстро заджоинить справочник к distibuted таблице, либо нужно эту таблицу-справочник подключать как-то по другому. Ситуация следующая, есть 2 ноды, distributed таблица c ключом rand(), на первой ноде есть справочник, с которым пытаюсь заджоиниться, естественно получается медленно, тк, данным из второй ноды нужно джоиниться с этим справочником по сети
  • https://t.me/clickhouse_ru
    @orantius #49639 05:36 PM, 14 Apr 2018
    а может его на обоих нодах держать?
  • https://t.me/clickhouse_ru
    @Oleg369285 #49640 06:41 PM, 14 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @xammett ↶ Reply to #49639 #49641 06:43 PM, 14 Apr 2018
    у меня была такая идея,еще не пробовал, возможно есть более быстрые способы в виде подключения внешних словарей или чего-нибудь похожего
  • @antonio_antuan #49642 07:17 PM, 14 Apr 2018
    мне недавно подсказали про global join, может, вам тоже подойдет?
  • @antonio_antuan #49644 07:18 PM, 14 Apr 2018
    При использовании GLOBAL ... JOIN-а, сначала, на сервере-инициаторе запроса, выполняется подзапрос для вычисления "правой" таблицы, и затем эта временная таблица передаётся на каждый удалённый сервер, и на них выполняются запросы, с использованием этих переданных временных данных.

    Следует быть аккуратным при использовании GLOBAL JOIN-ов. Подробнее читайте в разделе "Распределённые подзапросы" ниже.
  • https://t.me/clickhouse_ru
    @k0st1an ↶ Reply to #49635 #49645 08:01 PM, 14 Apr 2018
    Положил ссылку на скрипт в изис https://github.com/yandex/ClickHouse/issues/2070. КХ падает даже без сообщений в топике Кафки. Как только вьюха подключается … сервер КХ умирает.
    SegFault with Distributed Kafka Tables · Issue #2070 · yandex/ClickHouse

    I am using Clickhouse 1.1.54362. Steps I followed: Verified everything works with a non-replicated table. Create local tables on all hosts in cluster Create distributed table on all hosts in cluste...

  • https://t.me/clickhouse_ru
    @xammett #49646 08:15 PM, 14 Apr 2018
    Спасибо
  • Словари для таблиц-справочников - самое подходящее решение.
  • https://t.me/clickhouse_ru
    @xammett ↶ Reply to #49647 #49648 09:48 PM, 14 Apr 2018
    Спасибо, попробую
  • 15 April 2018 (7 messages)
  • https://t.me/clickhouse_ru
    @aiakunin #49649 08:52 AM, 15 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @ayri_sena #49650 01:38 PM, 15 Apr 2018
    Joined.
  • @sergeik #49651 05:58 PM, 15 Apr 2018
    Добрый вечер! Подскажите плиз что с этим можно сделать:
    <Warning> ConnectionPoolWithFailover: Connection failed at try №1, reason: Code: 209, e.displayText() = DB::NetException: Timeout exceeded while reading from socket (...), e.what() = DB::NetException
  • @telemxm #49652 07:05 PM, 15 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @azat_yarullin #49653 07:14 PM, 15 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @proller #49654 08:25 PM, 15 Apr 2018
    а с сетью все норм?
  • https://t.me/clickhouse_ru
    @kshvakov #49655 09:09 PM, 15 Apr 2018
    Интересно чем это начинание закончится? 🙂 https://github.com/yandex/ClickHouse/issues/2218
    A good notice - Enterprise ClickHouse Database IDE #2218

    Hello Yandex friends, after several tests on ClickHouse, I felt the power of this tool. I would like to thank the wonderful work done by the Yandex team. We are already using the company where I wo...

  • 16 April 2018 (100 messages)
  • https://t.me/clickhouse_ru
    а чувак TABIX то смотрел? ;) чем оно ему не угодило?
  • https://t.me/clickhouse_ru
    @tommi_v #49657 04:42 AM, 16 Apr 2018
    смотрел, судя по тексту
    > For the tools of interaction with ClickHouse are very bad and full of bug (like Tabix).
  • @sergeik ↶ Reply to #49654 #49658 05:20 AM, 16 Apr 2018
    Да, все норм. 3 реплики, запрос простой ~3/10 раз подвисает с такой на несколько секунд.
  • @sergeik #49659 05:20 AM, 16 Apr 2018
    Все реплики рядышком физически
  • https://t.me/clickhouse_ru
    @stufently #49660 05:23 AM, 16 Apr 2018
    Посмотрите логи кх, посмотрите логи syslog посмотрите dmesg
  • https://t.me/clickhouse_ru
    @stufently #49661 05:23 AM, 16 Apr 2018
    Ощущение что не хватает файлов или сокетов или соединений в фаерволе
  • https://t.me/clickhouse_ru
    @baltazorbest #49662 06:58 AM, 16 Apr 2018
    Приветствую. Подскажите пожалуйста, обновояю сейчас версию clickhouse и смотрю что раньше использовался метод сжатия данных lz4 а сейчас zstd , вопрос в следующим что бы перейти на новый вид сжатия достаточно указать просто новый метод или же нужно как то переливать данные? Спасибо.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49662 #49663 07:01 AM, 16 Apr 2018
    Данные переливать не нужно, новый метод сжатия будет работать для новых кусков
  • https://t.me/clickhouse_ru
    @baltazorbest #49664 07:01 AM, 16 Apr 2018
    т.е. достаточно просто в конфиг файле изменить метод сжатия и все?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49664 #49665 07:02 AM, 16 Apr 2018
    Да, этого должно хватить, но нужно понимать зачем оно вам
  • https://t.me/clickhouse_ru
    @baltazorbest #49666 07:04 AM, 16 Apr 2018
    спасибо, для экономии места 🙂
  • https://t.me/clickhouse_ru
    @baltazorbest #49667 07:05 AM, 16 Apr 2018
    а с zstd просядет скорость выборки?
  • https://t.me/clickhouse_ru
    @kshvakov #49668 07:06 AM, 16 Apr 2018
    Для сжатых данных конечно просядет
  • https://t.me/clickhouse_ru
    @kshvakov #49669 07:06 AM, 16 Apr 2018
    Но, у КХ еще есть кэш расжатых блоков, если он у вас неплохо справляется то сильно оно вас не зацепит
  • https://t.me/clickhouse_ru
    @baltazorbest #49670 07:08 AM, 16 Apr 2018
    просто нашел сравнение lz4 и zstd сжатия и вижу что zstd в плане выборки медленее, я так понимаю за счет того что данные больше сжаты
  • https://t.me/clickhouse_ru
    @baltazorbest #49671 07:08 AM, 16 Apr 2018
    оставлю я наверное lz4 тогда 🙂
    но спасибо за информацию
  • @sergeik ↶ Reply to #49661 #49672 07:20 AM, 16 Apr 2018
    Похоже файервол. Благодарю за помощь 🙏
  • https://t.me/clickhouse_ru
    @baltazorbest #49673 07:56 AM, 16 Apr 2018
    Подскажите пожалуйста такой момент, можно ли как то делать подзапрос с другой таблицы?
    в mysql можно сделать что то типа такого:
    select
    t1.id,
    (select count table2 where event_date = t1.event_date and field2 = t1.field2) as cnt
    from
    table1 as t1
    where
    t1.event_date = curdate() and
    field2 = 5
  • https://t.me/clickhouse_ru
    @baltazorbest #49674 07:57 AM, 16 Apr 2018
    смотрел что можно через any left join но там идет сравнение по 1 полю, а нужно по двум
  • https://t.me/clickhouse_ru
    JOIN можно делать через несолько полей:
    >USING id, user_id
  • https://t.me/clickhouse_ru
    @baltazorbest #49676 07:58 AM, 16 Apr 2018
    о, спасибо, сейчас попробую
  • https://t.me/clickhouse_ru
    @baltazorbest #49677 07:59 AM, 16 Apr 2018
    а если название полей разное то уже никак?
  • https://t.me/clickhouse_ru
    @baltazorbest #49678 07:59 AM, 16 Apr 2018
    в t1 - event_date в t2 - date поля
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49673 #49679 08:01 AM, 16 Apr 2018
    1. коррелированные подзапросы не поддерживаются.
    2. конкретно этот запрос можно переписать в виде
    select t1.id, cnt
    from table1 join
    (select field2,event_date,count() as cnt from table2 join ( select field2,event_date from table1 where event_date=curdate()) using field2,event_date group by field2,event_date)
    using field2
    может получиться что-то рабочее.
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49677 #49680 08:01 AM, 16 Apr 2018
    select x as y в подзапросе - будут одинаковые
  • Спасибо за ссылку, понаблюдаю, интересно что получится )
  • https://t.me/clickhouse_ru
    @eigrad #49682 08:31 AM, 16 Apr 2018
    А это не тот же чувак который metabase драйвер последним обещался разработать?
  • @garikanet #49683 08:35 AM, 16 Apr 2018
    Вроде он же
  • @whetherharder #49684 08:44 AM, 16 Apr 2018
    подскажите пожалуйста, как правильно посчитать количество уникальных кортежей параметров
    есть таблица вида
    create table hits(url String,params Nested (Name String,Value String))

    хочется отфильтровать часть параметров по params.Name
    1.arrayFilter(x -> x not in ('bad name1','bad name2'),params.Name)

    2.из результата сделать тупл my_tuple

    3.посчитать количество уникальных туплов на каждый url
    select my_tuple,url,count
    from hits group by my_tuple,url
    group by my_tuple,url
  • https://t.me/clickhouse_ru
    @orantius #49685 08:50 AM, 16 Apr 2018
    uniqArray(arrayFilter((n, v) -> 1, p.Name, p.Value), arrayFilter((v, n) -> 1, p.Value, p.Name)) group by url
  • https://t.me/clickhouse_ru
    @orantius #49686 08:50 AM, 16 Apr 2018
    где вместо 1 фильтр по имени или значению.
  • если не ошибаюсь,это будет количество уникальных элементов в кортеже на каждый url
    а мне хотелось бы количество уникальных кортежей
  • https://t.me/clickhouse_ru
    @orantius #49688 09:16 AM, 16 Apr 2018
    ну вы посмотрите, вдруг подойдет.
  • https://t.me/clickhouse_ru
    @orantius #49689 09:20 AM, 16 Apr 2018
    хотя.. а вы в данном случае что считаете кортежом? пару name-value?
  • @pavlov_m #49690 09:26 AM, 16 Apr 2018
    Добрый день, поднял старые бекапы. Но выборки перестали работать. Запрос падает с DB::Exception: Size of filter doesn't match size of column.
    Версия 1.1.54370.

    Подскажите, что можно сделать? Кастование полей к их типу поможет?

    Думается мне что в той партиции были альтеры по ресайзу колонки в большую сторону.. но точно сказать не могу
  • да. и мне хочется результат вида url, (name,value),count()
  • @Ghostnsk ↶ Reply to #49690 #49692 10:04 AM, 16 Apr 2018
    Мне помогло добавление полей в where, так что бы они при этом ни на что не влияли
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49691 #49693 10:06 AM, 16 Apr 2018
    и count() означает что, количество раз которое была такая комбинация url,name,value?
  • @pavlov_m ↶ Reply to #49692 #49694 10:06 AM, 16 Apr 2018
    пробовал. выбрало чуточку больше, но итог все равно Exception. Позже попробую все поля что есть добавить в Where с условиями...
  • @Ghostnsk #49695 10:07 AM, 16 Apr 2018
    У меня кстати тоже с 70ой проявилось
  • https://t.me/clickhouse_ru
    @andreyzayko #49696 10:18 AM, 16 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @andreyzayko #49697 10:22 AM, 16 Apr 2018
    Коллеги, привет!
    Подскажите, пожалуйста, есть ли где -то сравнение кликхауса с BigQuery?
  • https://t.me/clickhouse_ru
  • https://t.me/clickhouse_ru
    @mrykin ↶ Reply to #49698 #49699 10:40 AM, 16 Apr 2018
    спасибо! :)
  • @loeumansky #49700 10:57 AM, 16 Apr 2018
    Добрый день,
    Пишем в лог таблицу пустое значение в поле (string), которое затем перетекает в другую таблицу в виде Nullable(UInt8). При Insert Select идет проверка исходного поля.
    SELECT a FROM test

    ┌─a─┐
    │ │
    └───┘

    Insert into test1 (b) select a=''?NULL:a from test;
    Attempt to read after eof: Cannot parse UInt8 from String, because value is too short.

    А вот когда делаем:
    Insert into test1 (b) select a!=NULL?a:NULL from test;
    работает.

    SELECT b FROM test1

    ┌──b─┐
    │ \N │
    └────┘

    Подскажите, в чем тут дело?

    Спасибо
  • https://t.me/clickhouse_ru
    @orantius #49701 11:00 AM, 16 Apr 2018
    дело в том, что вы пытаетесь вставить строку в числовую колонку
  • https://t.me/clickhouse_ru
    @orantius #49702 11:02 AM, 16 Apr 2018
    а clickhouse по сравнению с обычным sql несколько более строго типизирован.
  • https://t.me/clickhouse_ru
    @orantius #49703 11:05 AM, 16 Apr 2018
    когда вы явным образом что-то преобразуете, то есть немного больше уверенности в том, что получится то что вы ожидаете, а не "что-то". также например интересно, вот у вас a!=null ? a : null выдал null. на пустой строке, видимо. он ведь у вас вообще на любой строке это выдает? потому что с null не так надо сравнивать.
  • @loeumansky #49704 11:12 AM, 16 Apr 2018
    Спасибо, просто смутило то, что при a=''?NULL:a ClickHouse не обнаружил пустое значение в поле, хотя оно там есть (по крайней мере визуально, вместо \N).
  • https://t.me/clickhouse_ru
    @orantius #49705 11:17 AM, 16 Apr 2018
    действительно. скорее всего это объясняется еще одной особенностью поведения clickhouse, он вычисляет обе ветки if
  • @loeumansky #49706 11:29 AM, 16 Apr 2018
    Спасибо, будем знать
  • https://t.me/clickhouse_ru
    Спасибо!
  • https://t.me/clickhouse_ru
    @emakarov ↶ Reply to #49697 #49708 11:41 AM, 16 Apr 2018
    есть вот такой набор сравнений http://tech.marksblogg.com/benchmarks.html
    Summary of the 1.1 Billion Taxi Rides Benchmarks

    Benchmarks & Tips for Big Data, Hadoop, AWS, Google Cloud, PostgreSQL, Spark, Python & More...

  • https://t.me/clickhouse_ru
    @149051052 #49711 11:51 AM, 16 Apr 2018
    sad
  • https://t.me/clickhouse_ru
    насколько показательно сравнение из этой статьи?
  • https://t.me/clickhouse_ru
    @emakarov ↶ Reply to #49712 #49713 11:57 AM, 16 Apr 2018
    ну он там подробно методологию и шаги описывает по каждому тесту чтоб было понятно
  • https://t.me/clickhouse_ru
    @Synoecium #49714 11:57 AM, 16 Apr 2018
    просто в одном месте кластер, в другом видеокарта, а потом обычный проц
  • @antonio_antuan #49715 11:58 AM, 16 Apr 2018
    MergeTree(pickup_date, pickup_datetime, 8192)
    SELECT cab_type, count(*)
    FROM trips_mergetree
    GROUP BY cab_type

    SELECT passenger_count,
    avg(total_amount)
    FROM trips_mergetree
    GROUP BY passenger_count

    SELECT passenger_count,
    toYear(pickup_date) AS year,
    count(*)
    FROM trips_mergetree
    GROUP BY passenger_count,
    year

    SELECT passenger_count,
    toYear(pickup_date) AS year,
    round(trip_distance) AS distance,
    count(*)
    FROM trips_mergetree
    GROUP BY passenger_count,
    year,
    distance
    ORDER BY year,
    count(*) DESC
  • https://t.me/clickhouse_ru
    @emakarov #49716 11:58 AM, 16 Apr 2018
    как сравнить bigQuery и запрос на Intel Core i5 4670K конечно, не очень понятно
  • @antonio_antuan #49717 11:58 AM, 16 Apr 2018
    структура таблицы малость не подходит под запросы
  • @milovidov_an #49718 12:42 PM, 16 Apr 2018
    ClickHouse C++ Meetup, 16 мая 2018, Москва — События Яндекса

    Приглашаем всех, кто пишет на С++, поговорить о СУБД ClickHouse.

  • None
  • @milovidov_an #49720 12:43 PM, 16 Apr 2018
    Опубликовано видео с мероприятия "Субботник по базам данных": https://events.yandex.ru/events/yasubbotnik/31-march-2018/
    Я.Субботник по базам данных, 31 марта 2018, Санкт-Петербург — События Яндекса

    31 марта прошёл Я.Субботник по базам данных в Санкт-Петербурге

  • https://t.me/clickhouse_ru
    @baltazorbest #49721 12:43 PM, 16 Apr 2018
    спасибо за видео 🙂
  • @umatomba #49722 12:59 PM, 16 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    Руководитель группы Алексей Миловидной 
    ошибка?
  • https://t.me/clickhouse_ru
    @sawaxon #49724 01:03 PM, 16 Apr 2018
    Какой сейчас статус по update/delete?
  • @umatomba #49725 01:03 PM, 16 Apr 2018
    Ребят подскажите пожалуйста, как добиться от семплирования равномерного распределения результата? Возможно ли это? Какой у SAMPLE алгоритм?
  • https://t.me/clickhouse_ru
    @orantius #49726 01:05 PM, 16 Apr 2018
    алгоритм у sample такой. условие sample 0.x равносилен условию sample_expr < 0.x*max_value(typeof(expr))
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49725 #49727 01:06 PM, 16 Apr 2018
    а вам нужно равномерное распределение чего
  • @umatomba #49728 01:07 PM, 16 Apr 2018
    результата который возвращает select с семплированием, но понимаю он не о том
  • @umatomba #49729 01:09 PM, 16 Apr 2018
    необходимо иметь возможность получить значения через равные промежутки времени, управляя размером промежутка. на входе данные с гранулярностью 1sec
  • https://t.me/clickhouse_ru
    @orantius #49730 01:10 PM, 16 Apr 2018
    и как вы хотите сделать это с помощью семплирования?
  • @umatomba #49731 01:10 PM, 16 Apr 2018
    уже получается никак
  • https://t.me/clickhouse_ru
    @orantius #49732 01:11 PM, 16 Apr 2018
    select from table sample 1sec действительно не работает. а какие вам нужны значения, может просто погруппировать по секунде?
  • @umatomba #49733 01:16 PM, 16 Apr 2018
    значения нужны разные в зависимости от запроса. сбор например идет каждую сукунду но нужно иметь возможность получить значения с разными интервалами (5s, 10s, 30s, 60s, 1800s ... -> строить графики). подумал может это както на стороне базы можно решить не созраняя в отдельных таблицах
  • https://t.me/clickhouse_ru
    @orantius #49734 01:28 PM, 16 Apr 2018
    а как вы это делаете в любой другой базе?
  • @umatomba #49735 01:29 PM, 16 Apr 2018
    group by time
  • @umatomba #49736 01:29 PM, 16 Apr 2018
    но что-то тут в доке не могу найти как это сделать
  • https://t.me/clickhouse_ru
    @orantius #49737 01:32 PM, 16 Apr 2018
    для некоторых гранулярностей есть toStartOf фунции, для остальных можно поделить на нужный шаг
  • @umatomba #49738 01:35 PM, 16 Apr 2018
    ага выглядит как то что нужно, благодарю
  • Спасибо! Говорят, у них спелл-чекер меня не узнаёт. Исправили.
  • https://t.me/clickhouse_ru
    @panov_andy #49740 02:27 PM, 16 Apr 2018
    Joined.
  • @577502903 #49742 03:59 PM, 16 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @k0st1an #49743 04:18 PM, 16 Apr 2018
    Где можно почитать по тем метрикам, что КХ отправляет в графит?
  • @milovidov_an #49744 04:19 PM, 16 Apr 2018
    Сейчас документации по этим метрикам нет.
  • https://t.me/clickhouse_ru
    @k0st1an #49745 04:20 PM, 16 Apr 2018
    Печаль
  • https://t.me/clickhouse_ru
    @pavlovre #49746 05:06 PM, 16 Apr 2018
    Joined.
  • @vludv #49747 07:45 PM, 16 Apr 2018
    Joined.
  • @githubreleases_bot #49748 b o t 08:34 PM, 16 Apr 2018
    yandex/ClickHouse was tagged: v1.1.54378-stable
    Link: https://github.comhttps://github.com/yandex/ClickHouse/releases/tag/v1.1.54378-stable
    Release notes:
    v1.1.54378-stable
    yandex/ClickHouse

    ClickHouse is a free analytic DBMS for big data.

  • https://t.me/clickhouse_ru
    @Sersecr001 #49749 09:09 PM, 16 Apr 2018
    @clickhouse_ru
  • @lalayansuren #49750 09:09 PM, 16 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @nonamehobo #49751 09:10 PM, 16 Apr 2018
    есть ли в клике функция или метод, которые позволяют быстро определить принадлежит ли тот или иной ipv4/6 набору подсетей?
  • @milovidov_an #49752 09:14 PM, 16 Apr 2018
    Нет.
  • @milovidov_an #49753 09:14 PM, 16 Apr 2018
    Впрочем, можно использовать словари типа trie.
  • @milovidov_an #49754 09:14 PM, 16 Apr 2018
    Они позволяют классифицировать IP адреса по подсетям, как например, для geoip задачи.
  • https://t.me/clickhouse_ru
    Спасибо, будем смотреть
  • https://t.me/clickhouse_ru
    @fabura ↶ Reply to #49751 #49756 10:49 PM, 16 Apr 2018
    Вы случаем не в Роскомнадзоре работаете?)
  • https://t.me/clickhouse_ru
    @rheinx ↶ Reply to #49756 #49757 10:54 PM, 16 Apr 2018
    😂😂😂😂😂
  • @romakorzh #49758 11:30 PM, 16 Apr 2018
    лол
  • 17 April 2018 (255 messages)
  • @AlexanderMillin #49759 04:02 AM, 17 Apr 2018
    😂👍
  • @sichkarev #49760 04:51 AM, 17 Apr 2018
    😭
  • https://t.me/clickhouse_ru
    @149051052 #49761 04:53 AM, 17 Apr 2018
    😆😆😆😆😆
  • https://t.me/clickhouse_ru
    слышал это вы заблокировали 600к айпишников в амазоне
  • https://t.me/clickhouse_ru
    @dlartagnan #49763 04:57 AM, 17 Apr 2018
    Интересно, какого это работать на Роскомнадзор... Наверное, потом ночью кошмары снятся)
  • https://t.me/clickhouse_ru
    Может быть подойдет:
    >IPv4NumToStringClassC(ipv4) IN ('123.123.123.xxx', '123.123.124.xxx', '123.123.125.xxx', ...)
  • https://t.me/clickhouse_ru
    @stufently #49765 05:01 AM, 17 Apr 2018
    минуту назад пришло письмо [members-discuss] Russian government blocked 2mln IPs at 16/04/2018 Умоляю остановитесь.
  • https://t.me/clickhouse_ru
    @Vasyaabr #49766 05:02 AM, 17 Apr 2018
    На Хабре уже разразились статьёй: https://habrahabr.ru/post/353630/
    РКН заблокировал несколько КРУПНЫХ подсетей Amazon и Google (UPD.: и продолжает блокировать новые!)

    Сегодня вечером сразу на нескольких ресурсах появилась новость о блокировке РКН нескольких подсетей Amazon. Позже появилась информация, что в бан улетела и одна...

  • https://t.me/clickhouse_ru
    @Stofeles #49767 05:04 AM, 17 Apr 2018
    толку то, право голоса свое прокакали 18го, теперь 6 лет будте добры хавайте что дают
  • https://t.me/clickhouse_ru
    можно приводить ip к подсети
    SELECT IPv4NumToString(bitAnd(IPv4StringToNum('127.0.0.100'), IPv4StringToNum('255.255.255.0')))

    IPv4StringToNum - переводим в int
    bitAnd - накладываем битовую маску на ip
    IPv4NumToString - обратное преобразование int -> ip
  • https://t.me/clickhouse_ru
    @a_oblikov #49769 05:07 AM, 17 Apr 2018
    т.е. применяя bitAnd с ip и маской всегда получается адрес подсети
  • https://t.me/clickhouse_ru
    @a_oblikov #49770 05:07 AM, 17 Apr 2018
    если адрес подсети совпадает это значит, что ip входит в сеть
  • @IvanZhiltsov #49771 05:20 AM, 17 Apr 2018
    Ip_trie словарь со списком всех интернет сетей и автономок, connection_log на несколько миллиардов строк, и запрос с группировкой и сортировкой по номеру автономки отрабатывает за разумное количество секунд.
  • https://t.me/clickhouse_ru
    @fiksilya #49772 05:20 AM, 17 Apr 2018
    Товарищи, есть таблица table, примерно 10 Гб (Engine=Log). Пытаюсь выполнить пободный запрос:
    CREATE TABLE new_table Engine=Log AS
    SELECT
    id,
    argMin(A, id),
    argMin(B, id),
    argMin(C, id),
    argMin(D, id),
    argMin(E, id),
    argMin(F, id)
    FROM table
    GROUP BY id

    Запрос требует около 30 Гб. Есть ли способ уменьшить память для выполнения запроса?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49772 #49773 05:26 AM, 17 Apr 2018
    Да, есть. Нужно выставить max_bytes_before_external_group_by в нужное вам значение
  • https://t.me/clickhouse_ru
    @stufently #49774 05:27 AM, 17 Apr 2018
    Ну у вас там таблица наверно на тридцать гигов получается, уберите группировку и по идее должно полегчать, так как чтобы отсортировать ему нужна полность таблица
  • https://t.me/clickhouse_ru
    @fiksilya ↶ Reply to #49773 #49775 05:28 AM, 17 Apr 2018
    Спасибо, понимал, что должен быть параметр, но не увидел его
  • @pavel_maksimow #49776 06:53 AM, 17 Apr 2018
    Ребят, как лечить ошибку "502 Bad Gateway" выходит при создании таблицы
  • @tomazov #49777 06:54 AM, 17 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @stufently #49778 06:55 AM, 17 Apr 2018
    отказаться от нгинкса
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49776 #49779 06:56 AM, 17 Apr 2018
    Таймауты покрутить
  • https://t.me/clickhouse_ru
    504 это timeout
    а тут похоже кто-то обрывает соединение с nginx до получения ответа
  • https://t.me/clickhouse_ru
    @BloodJazMan #49781 06:57 AM, 17 Apr 2018
    или просто proxy_pass на nginx не на тот IP настроен
  • @pavel_maksimow #49782 06:58 AM, 17 Apr 2018
    спасибо, nginx гляну
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49780 #49783 07:00 AM, 17 Apr 2018
    Точно )
  • https://t.me/clickhouse_ru
    @Mike_Er #49784 07:22 AM, 17 Apr 2018
    О, группа за 1.5к перешагнула :)
  • https://t.me/clickhouse_ru
    @kenota ↶ Reply to #49776 #49785 07:29 AM, 17 Apr 2018
    Обычно такое когда nginx не может подсоединиться к апстриму. Кх в докере? Порт наружу проброшен?
  • КХ не в докере, порт проброшен.
  • https://t.me/clickhouse_ru
    @kenota ↶ Reply to #49786 #49787 07:31 AM, 17 Apr 2018
    Тогда в логах nginx должна быть информация что не так с апстримом.
  • хорошо, гляну, еще не заглядывал. спасибо
  • @vstakhov #49789 07:44 AM, 17 Apr 2018
    @milovidov_an а почему не взяли нормальные trie из rbldnsd?
  • @vstakhov #49790 07:45 AM, 17 Apr 2018
    судя по коду btrie, там наивный алгоритм без сжатия
  • @489505010 #49791 07:48 AM, 17 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49789 #49792 07:50 AM, 17 Apr 2018
    Marek Vavruša в английском чатике может сказать почему, т.к. он словарь делал
  • @vstakhov #49793 07:52 AM, 17 Apr 2018
    ну, мне не очень-то интересно, просто сам долго искал хорошую реализацию, даже одно время сам сочинил path compression алгоритм
  • @vstakhov #49794 07:52 AM, 17 Apr 2018
    но в итоге остановился на level compressed trie от rbldnsd, тупо потому что лукапы в 10 раз быстрее
  • @vstakhov #49795 07:52 AM, 17 Apr 2018
    даже на v4, не говоря уж о v6
  • https://t.me/clickhouse_ru
    @kshvakov #49796 07:54 AM, 17 Apr 2018
    Я думаю Marek'у это будет интересно, им в Cloudflare обычно важна производительность
  • @pavlov_m ↶ Reply to #49690 #49797 08:09 AM, 17 Apr 2018
    Проблема ушла с новым релизом! Спасиб
  • https://t.me/clickhouse_ru
    @xammett #49798 08:10 AM, 17 Apr 2018
    @kshvakov Кирилл, добрый день. Скажите, пожалуйста, планируется ли в будущем прикручивать возможность подключения справочников из postgresql, а так же будет ли возможность хранить пользователей в какой-либо внешней базе, вместо прописывания в xml файле?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49798 #49799 08:13 AM, 17 Apr 2018
    Из постгреса можно уже сейчас подключать справочники через ODBC https://clickhouse.yandex/docs/en/dicts/external_dicts_dict_sources/#example-of-connecting-postgresql
  • https://t.me/clickhouse_ru
    @kshvakov #49800 08:19 AM, 17 Apr 2018
    Насчет внешнего источника для пользователей я не в курсе, может быть @milovidov_an что-то знает, но, я не думаю что Яндексу это очень нужно. Понятно что LDAP, например, нужен корпоративным пользователям, а если нужен то это только вопрос времени насколько быстро и в каком виде он появится (и кто его сделает). Сейчас, насколько мне известно, только Altinity выступает как сторонняя компания занимающаяся КХ, может еще кто-то есть и, скорее всего, инициатива должна исходить оттуда.
  • https://t.me/clickhouse_ru
    @xammett #49801 08:20 AM, 17 Apr 2018
    спасибо за ответ
  • https://t.me/clickhouse_ru
    @mrlamberg #49802 09:36 AM, 17 Apr 2018
    а не подскажете, как можно сделать distinct с or
  • https://t.me/clickhouse_ru
    @mrlamberg #49803 09:36 AM, 17 Apr 2018
    типо
  • https://t.me/clickhouse_ru
    @mrlamberg #49804 09:36 AM, 17 Apr 2018
    select count(distinct A or B) from table
  • https://t.me/clickhouse_ru
    @orantius #49805 09:36 AM, 17 Apr 2018
    uniq()
  • @pookieShmukie #49806 09:36 AM, 17 Apr 2018
    Столкнулся с ошибкой: Cannot read all array values: read just 235 of 236.
    Кто-то знает в чем дело? )
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49804 #49807 09:37 AM, 17 Apr 2018
    а что это должно выдавать в ответ?
  • https://t.me/clickhouse_ru
    @mrlamberg #49808 09:39 AM, 17 Apr 2018
    число уникальных строчек
  • Судя по коду https://github.com/yandex/ClickHouse/blob/master/dbms/src/DataTypes/DataTypeArray.cpp#L234
    Это происходит, если данные в колонках отличаются
  • @pookieShmukie #49810 09:39 AM, 17 Apr 2018
    Но странно как КХ такое пропустил оО
  • https://t.me/clickhouse_ru
    @orantius ↶ Reply to #49808 #49811 09:41 AM, 17 Apr 2018
    число строчек у которых уникально что, A or B?
  • https://t.me/clickhouse_ru
    @k0st1an ↶ Reply to #49810 #49812 09:50 AM, 17 Apr 2018
    КХ много чего пропускает, потом встать не может :(
  • https://t.me/clickhouse_ru
    ну есть 2 поля, уникальность нужно проверять через OR
  • https://t.me/clickhouse_ru
    @orantius #49814 09:59 AM, 17 Apr 2018
    уникальность через or. интересно. при этом A B это не boolean, да?
  • https://t.me/clickhouse_ru
    да, А и В это строки)
  • @slimmaster #49816 10:12 AM, 17 Apr 2018
    Добрый день кто нибудь пользовался jdbc драйвером для клика? Постоянно вылетает ошибка соединения
  • https://t.me/clickhouse_ru
    Пользуемся, бед не знаем
  • https://t.me/clickhouse_ru
    аналогично
  • Можно пример строки соединения. Ужо не знаю что ему не так
  • @SobakaRU #49820 10:26 AM, 17 Apr 2018
    Подскажите, а с чем связан такой дескрипшн у свежайшего доступного пакета:
    Package: clickhouse-server-base
    Version: 1.1.54378
    [...]
    Description: DEPRECATED PACKAGE: Server binary for clickhouse
  • https://t.me/clickhouse_ru
    ClickHouse/clickhouse-jdbc

    JDBC driver for ClickHouse. Contribute to ClickHouse/clickhouse-jdbc development by creating an account on GitHub.

  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49810 #49822 10:59 AM, 17 Apr 2018
    Это, видимо, у вас в Nested разные по длине колонки, сейчас КХ действительно никак это не чекает, просто пишутся как колонки где идет: название Nested структуры; точка; название колонки в структуре
  • Ну я тоже так подумал. Придется у себя это проверять. Раньше кх ругался на такое.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49812 #49824 11:00 AM, 17 Apr 2018
    Вставляются они нормально, но при чтении он этот блок выкинет
  • Спасибо
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49823 #49826 11:01 AM, 17 Apr 2018
    Значит регрессия, надо править
  • https://t.me/clickhouse_ru
    @proller ↶ Reply to #49820 #49827 11:10 AM, 17 Apr 2018
    Теперь лучше использовать clickhouse-client и clickhouse-server
  • @pookieShmukie #49828 11:13 AM, 17 Apr 2018
    @milovidov_an @ztlpn @kochetovnicolai завести issue?
  • @pookieShmukie #49829 11:13 AM, 17 Apr 2018
    Значит регрессия, надо править
  • @pookieShmukie #49830 11:13 AM, 17 Apr 2018
    Это, видимо, у вас в Nested разные по длине колонки, сейчас КХ действительно никак это не чекает, просто пишутся как колонки где идет: название Nested структуры; точка; название колонки в структуре
  • @kochetovnicolai #49831 11:16 AM, 17 Apr 2018
    Да, лучше завести. При вставке, если правильно помню, действительно нет такой проверки.
  • https://t.me/clickhouse_ru
    я не прошёл собеседование, не благонадёжен и недостаточно неадекватен
  • @vstakhov #49833 11:27 AM, 17 Apr 2018
    вы себя недооцениваете
  • https://t.me/clickhouse_ru
    @neurox ↶ Reply to #49832 #49834 11:28 AM, 17 Apr 2018
    😁
  • https://t.me/clickhouse_ru
    @mrlamberg #49835 11:53 AM, 17 Apr 2018
    а как будет вести себя таблица join, если я начну в нее лить дубли?
  • https://t.me/clickhouse_ru
    Скорее всего покорно примет данные
  • https://t.me/clickhouse_ru
    @azubarev #49837 12:05 PM, 17 Apr 2018
    Подскажите, пожалуйста, как и куда надо прописать use_uncompressed_cache? Да и все параметры https://clickhouse.yandex/docs/en/operations/settings/settings
    Settings | ClickHouse Documentation

    Settings distributed_product_mode Changes the behaviour of distributed subqueries. ClickHouse applies this setting when

  • https://t.me/clickhouse_ru
  • No check for length of nested columns data arrays #2231

    In version 1.1.54343 Clickhouse checks lengths of nested column data arrays, but in 1.1.54362 this check disappeared. I didn&#39;t check older versions for fixes, but i think there is the same brok...

  • @kochetovnicolai #49840 12:12 PM, 17 Apr 2018
    Спасибо!
  • @pookieShmukie #49841 12:12 PM, 17 Apr 2018
    Сейчас еще закину файлец с данными
  • https://t.me/clickhouse_ru
    @azubarev ↶ Reply to #49838 #49842 12:13 PM, 17 Apr 2018
    Спасибо!
  • Возможно, достаточно вставить 1 строку с массивами разного размера, чтобы запрос упал?
  • @pookieShmukie #49844 12:15 PM, 17 Apr 2018
    Я точно не знаю. Я пытался сейчас на разных версиях с таблицей другой структуры это провернуть, что только не делал - не получилось. А вот конкретно со структурой как в issue и данными как в файле (там всего одна строка) - запрос на select * падает. На самом деле падает в любом случае, когда пытается nested прочитать
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49843 #49845 12:16 PM, 17 Apr 2018
    Скорее всего я смогу воспроизвести на минимальном примере, 5 мин
  • https://t.me/clickhouse_ru
    @kshvakov #49846 12:22 PM, 17 Apr 2018
    Добавил небольшой пример для воспроизведения
  • @kochetovnicolai #49847 12:24 PM, 17 Apr 2018
    Спасибо!
  • https://t.me/clickhouse_ru
    @kirill_bushev #49848 12:30 PM, 17 Apr 2018
    Joined.
  • Спасибо! Я пробовал пример с одной строкой в Nested колонку и двумя значениями в массиве :) А вот наоборот не попробовал.
  • https://t.me/clickhouse_ru
    @Sersecr001 #49850 12:43 PM, 17 Apr 2018
    Всем привет. Может ли кто помочь с тонкой настройкой chproxy и CH? Напишите плиз в личку. А то один разобраться не могу. Само собой не даром.
  • https://t.me/clickhouse_ru
    @Sersecr001 #49851 12:58 PM, 17 Apr 2018
    При отправке 3 партий из 1800 запросов на добавления возникают ошибки у некотрых запросов: Unknown error field: Error: read ECONNRESET

    Error: [ Id: 151B87319A4EE08F; User "default"(3) proxying as "default"(3) to "127.0.0.1:8123"(8); RemoteAddr: "135.159.86.36:43190"; LocalAddr: "135.159.86.36:9090"; Duration: 2.001769892s ]: cannot reach 127.0.0.1:8123; query: ""
  • https://t.me/clickhouse_ru
    @kshvakov #49852 01:00 PM, 17 Apr 2018
    А ClickHouse на машине с chproxy есть? Он у вас на localhost запросы шлет
  • https://t.me/clickhouse_ru
    да именно так
  • https://t.me/clickhouse_ru
    @Sersecr001 #49854 01:02 PM, 17 Apr 2018
    Когда сократил max_concurrent_queries с 10 до 2 ошибок стало значительно меньше
  • https://t.me/clickhouse_ru
    @kshvakov #49855 01:03 PM, 17 Apr 2018
    Т.е. вы шлете 1800 INSERT за раз ?
  • https://t.me/clickhouse_ru
    @stufently #49856 01:04 PM, 17 Apr 2018
    шлите один инсерт с 1800 записями это решит ваши проблемы
  • https://t.me/clickhouse_ru
    @Sersecr001 #49857 01:08 PM, 17 Apr 2018
    try {
    await ctx.getDB().querying(query);
    } catch (e) {
    console.error("Error /push-call-data", query, e)
    } // и таких query - 1800 - 3 раза
  • https://t.me/clickhouse_ru
    А что делать если это невозможно?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49858 #49859 01:09 PM, 17 Apr 2018
    Писать в MySQL/PostgreSQL etc )
  • https://t.me/clickhouse_ru
    @diliuskh #49860 01:11 PM, 17 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    1800 INSERT - это поток или разовое?
  • https://t.me/clickhouse_ru
    Если разовое (скажем, раз-два в минуту) - можно и Buffer прикрутить.
  • https://t.me/clickhouse_ru
    Можите объяснить почему такие проблемы. и При уменьшении в chproxy max_concurrent_queries с 10 до 2 уменьшает количество ошибок?
  • https://t.me/clickhouse_ru
    1. Это поток. 2. Buffer уже прикручен. Изменение параметров буфер таблицы не влияет.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49863 #49865 01:15 PM, 17 Apr 2018
    Он начинает в очереди держать запросы и одновременно пишет меньше.
  • https://t.me/clickhouse_ru
    Кеш что-то исправит. Но хорошо, а почему 10 одновременно для него проблема?
  • https://t.me/clickhouse_ru
    @Sersecr001 #49867 01:17 PM, 17 Apr 2018
    Кеш что-то исправит?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49866 #49868 01:17 PM, 17 Apr 2018
    КХ заточен под вставку данных блоками, а не по одной строке
  • https://t.me/clickhouse_ru
    Понятно. Но эти данные сначала пишутся в Buffer таблицу, которая как я понимаю и призвана решить данный вопрос?
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49869 #49870 01:23 PM, 17 Apr 2018
    В нее тоже не рекомендуется лупить по одной записи в цикле
  • @solhov #49871 01:24 PM, 17 Apr 2018
    я такой рекомендации не видел
  • @solhov #49872 01:25 PM, 17 Apr 2018
    т.е. почему с обычными таблицами так не рекомендуется — всё предельно очевидно: каждый инсерт превращается в отдельный файл на fs. со всемы вытекающими, в том числе и с последующим мерджем
  • https://t.me/clickhouse_ru
    Так что тогда делать, допустим идет поток данных 1000 в секунду и их надо писать в одну таблицу
  • @Merlin_Metso #49874 01:27 PM, 17 Apr 2018
    Joined.
  • https://t.me/clickhouse_ru
    @Sersecr001 #49875 01:27 PM, 17 Apr 2018
    Причем интересная закономерность. Если 500 записей в одном потоке и поток 1 - то все отлично. Если в течении 1 сек послать послать еще один поток в 500 записей начинаются ошибки.
  • https://t.me/clickhouse_ru
    @kshvakov ↶ Reply to #49873 #49876 01:28 PM, 17 Apr 2018
    Пишем в очередь, а из нее читаем и переодически сбрасываем одним инсертом в БД
  • https://t.me/clickhouse_ru
    Так вот и не понятно зачем тогда Buffer
  • https://t.me/clickhouse_ru
    chproxy так может?
  • https://t.me/clickhouse_ru
    Да и по сути это Buffer получается — разве нет?