Kirill
26.09.2017
08:13:47
да
Alexey
26.09.2017
08:17:38
прод сервера? ?
т.е. без тестирования и вникания в детали на проде выполнить "atp upgrade" - это не проблема?
если нужно делать без простоя подобные штуки, то CH предоставляет такую возможность через реплики и правильную архитектуру приложения
Рулон
26.09.2017
08:19:04
sudo service clickhouse-server restart
Google
Рулон
26.09.2017
08:20:01
Alexey
26.09.2017
08:20:43
не понял вопроса
Stas
26.09.2017
08:21:51
Рулон
26.09.2017
08:23:21
Vladimir
26.09.2017
08:27:18
Всем привет!
Подскажите, можно ли как то использовать таблицу А в качестве словаря для таблицы В в одной и той же БД?
Nikolai
26.09.2017
08:30:26
https://clickhouse.yandex/docs/ru/dicts/external_dicts_dict_sources.html#clickhouse
Vladimir
26.09.2017
08:32:08
Спасибо
Рулон
26.09.2017
08:35:05
Nikolai
26.09.2017
08:35:54
да, в конфиге словаря
Рулон
26.09.2017
08:36:26
Не нашел в документации инфу по query_log эту табличку можно почистить (delete ) ? или ch сам старое удалит?
Nikolai
26.09.2017
08:39:25
это где? )
в качестве источника. или я не понял вопрос :)
Google
Рулон
26.09.2017
08:40:04
в каком файл менять <dictionaries>
<dictionary>
или нужно где то создать фалик с этими данными?
Nikolai
26.09.2017
08:42:29
создать отдельный файлик с конфигурацией словаря, написать в config.xml путь к этому файлу. или нескольким, через маску (*_dictionary.xml, например)
Рулон
26.09.2017
08:43:55
Мда, очень юзер френдли )) Спасибо
Nikolai
26.09.2017
08:44:13
(в config.xml это секция <dictionaries_config>)
Александр
26.09.2017
09:04:19
Что-то не понял с пользователями как обращаться. Добавил в users.xml пользователя, через консольные клиенты коннектится, через http никак
При этом в логах нет никаких ошибок
При этом коннектится с любого другого хоста через консольный клиент
По http только default работает
Code: 164, e.displayText() = DB::Exception: Cannot override setting (add_http_cors_header) in readonly mode, e.what() = DB::Exception :)
Профиль ставлю readonly
Как быть?
Nikolai
26.09.2017
09:11:35
для начала попробуйте поставить в users.xml настройку <readonly>2</readonly>
Александр
26.09.2017
09:17:53
Nikolai
26.09.2017
09:26:47
в целом, это не очень хорошее решение, так как пользователь теперь может изменять настройки.
Александр
26.09.2017
09:28:16
Доступ дали аналитику, который с SQL то еще толком не дружит ))
Nikolai
26.09.2017
09:30:07
можно попробовать понять, зачем меняется add_http_cors_header и прописать нужное значение в config.xml, а затем вернуть <readonly>1</readonly>
Konstantin
26.09.2017
09:30:25
Александр
26.09.2017
09:31:25
Ну тут в качестве инициатора использовать КХ выступил я ) Аналитику для упрощения начала общения с КХ дал доступ в tabix. Потом уже будем пересаживать на нативный клиент.
Google
Александр
26.09.2017
09:31:39
Да и сидит этот Аналитик рядом )
Vladimir
26.09.2017
09:32:50
А зачем ему нативный клиент? мы вот из кх прямо в эксель грузим
Konstantin
26.09.2017
09:33:37
я как то постенсялся спрашивать) я чисто на энтузиазме мучаю клиент)
в основном все решается подключением БД к powerbi и уже визуализацией данных
Александр
26.09.2017
09:37:18
У нас не просто посчитать шкалу y с группировкой по шкале x )
Запросы могут быть просто из серии: сколько эвентов в среднем на пользователя за час на таком то курсе.
Что бы понимать для новых заказчиков потребность в железе и пр.
Поэтому грузить в эксель не вариант )
Konstantin
26.09.2017
09:38:31
Александр
26.09.2017
09:40:54
Тоже не совсем то. У нас не финансовая аналитика или рекламная, мы анализируем по большей части сам контент. Например есть тестирования, которые содержат вопросы и варианты ответов, есть ответы пользователей, есть статусы: правильно ответил или нет. Надо посчитать например на сколько эффективна теоретическая часть, которая готовит к этом тестированию и такие вопросы часто задаются. Поэтому аналитики сейчас сами учатся писать запросы и выбирать нужные им данные, вместо того, что бы дергать постоянно разработчиков "добавьте нам такой вот отчет в систему". Система и так обросла отчетами, которые по сути использовались один раз всего.
К каждому вопросу в тестировании привязан какой то блок теории, мы смотрим например сколько времени пользователь провел в теории и как он отвечает на конкретный вопрос, что бы понимать, например, что пользователю в среднем достаточно провести в теоретическом блоке 10 минут, что бы запомнить навсегда правильный ответ на этот вопрос.
Konstantin
26.09.2017
09:43:06
Тоже не совсем то. У нас не финансовая аналитика или рекламная, мы анализируем по большей части сам контент. Например есть тестирования, которые содержат вопросы и варианты ответов, есть ответы пользователей, есть статусы: правильно ответил или нет. Надо посчитать например на сколько эффективна теоретическая часть, которая готовит к этом тестированию и такие вопросы часто задаются. Поэтому аналитики сейчас сами учатся писать запросы и выбирать нужные им данные, вместо того, что бы дергать постоянно разработчиков "добавьте нам такой вот отчет в систему". Система и так обросла отчетами, которые по сути использовались один раз всего.
я имел в виду некий симбиоз, обычно я делаю запрос из PowerBI с КХ, получаю данные и их уже внутри сам визуализирую не трогая разрабов
Александр
26.09.2017
09:43:50
Ааааа, ну такие инструменты у них вроде как есть, не давался в подробности. Им главное получать данные для визуализации, дальше они сами уже разбираются че с ними делать.
Anton
26.09.2017
09:55:03
Добрый день. Подскажите как взять целую часть от числа (тип float). Требуется группировка по целой части.
Konstantin
26.09.2017
09:56:07
toInt вроде бы
Mariya
26.09.2017
09:56:08
Felixoid
26.09.2017
10:50:31
Я вот что-то не нашёл по истории чата. А куда из репозитория на github подевался файл build.md?
Алекс
26.09.2017
10:54:44
Nikolai
26.09.2017
10:57:29
Andrey
26.09.2017
11:28:23
После установки новой версии 1.1.54289 сервер начал падать 3-4 раза в день
2017.09.26 14:21:33.704400 [ 32453 ] <Error> BaseDaemon: ########################################
2017.09.26 14:21:33.704432 [ 32453 ] <Error> BaseDaemon: (from thread 32357) Received signal Segmentation fault (11).
2017.09.26 14:21:33.704456 [ 32453 ] <Error> BaseDaemon: Address: 0x7feacbc9a008
2017.09.26 14:21:33.724958 [ 32453 ] <Error> BaseDaemon: 0. clickhouse-server(unsigned long DB::NonJoinedBlockInputStream::fillColumns<(DB::ASTTableJoin::Strictness)2, HashMapTable<StringRef, HashMapCellWithSavedHash<StringRef, DB::Join::WithUsedFlag<true, DB::Join::RowRefList>, DefaultHash<StringRef>, HashTableNoState>, DefaultHash<StringRef>, HashTableGrower<8ul>, Allocator<true> > >(HashMapTable<StringRef, HashMapCellWithSavedHash<StringRef, DB::Join::WithUsedFlag<true, DB::Join::RowRefList>, DefaultHash<StringRef>, HashTableNoState>, DefaultHash<StringRef>, HashTableGrower<8ul>, Allocator<true> > const&, unsigned long, std::vector<DB::IColumn*, std::allocator<DB::IColumn*> >&, unsigned long, std::vector<DB::IColumn*, std::allocator<DB::IColumn*> >&)+0x29b) [0x333eb6b]
2017.09.26 14:21:33.724988 [ 32453 ] <Error> BaseDaemon: 1. clickhouse-server(DB::Block DB::NonJoinedBlockInputStream::createBlock<(DB::ASTTableJoin::Strictness)2, DB::Join::MapsTemplate<DB::Join::WithUsedFlag<true, DB::Join::RowRefList> > >(DB::Join::MapsTemplate<DB::Join::WithUsedFlag<true, DB::Join::RowRefList> > const&)+0xc22) [0x3341202]
2017.09.26 14:21:33.725006 [ 32453 ] <Error> BaseDaemon: 2. clickhouse-server(DB::NonJoinedBlockInputStream::readImpl()+0x38) [0x3342218]
2017.09.26 14:21:33.725019 [ 32453 ] <Error> BaseDaemon: 3. clickhouse-server(DB::IProfilingBlockInputStream::read()+0x1e6) [0x298a4f6]
2017.09.26 14:21:33.725044 [ 32453 ] <Error> BaseDaemon: 4. clickhouse-server(DB::ExpressionBlockInputStream::readImpl()+0x1a) [0x328e93a]
2017.09.26 14:21:33.725056 [ 32453 ] <Error> BaseDaemon: 5. clickhouse-server(DB::IProfilingBlockInputStream::read()+0x1e6) [0x298a4f6]
2017.09.26 14:21:33.725074 [ 32453 ] <Error> BaseDaemon: 6. clickhouse-server(DB::ParallelInputsProcessor<DB::UnionBlockInputStream<(DB::StreamUnionMode)0>::Handler, (DB::StreamUnionMode)0>::thread(MemoryTracker*, unsigned long)+0xe4) [0x30a85b4]
2017.09.26 14:21:33.725084 [ 32453 ] <Error> BaseDaemon: 7. clickhouse-server() [0x3d2f38f]
2017.09.26 14:21:33.725095 [ 32453 ] <Error> BaseDaemon: 8. /lib/x86_64-linux-gnu/libpthread.so.0(+0x8184) [0x7feed32dc184]
Google
Andrey
26.09.2017
11:28:35
Кто-то ещё с этим столкнулся?
Anton
26.09.2017
11:37:28
Большое спасибо.
SELECT toInt64(4.6)
┌─toInt64(4.6)─┐
│ 4 │
└──────────────┘
Aleksey
26.09.2017
11:38:27
Привет, подскажите, я выполняю alter table... on cluster.. add column, получаю ошибку: An error occured before execution: Code: 371,
e.displayText() = DB::Exception: Table histograms_local is replicated,
but shard #2 isn\'t replicated according to its cluster definition. Что бы это означало?
Рулон
26.09.2017
11:41:26
Ilyas
26.09.2017
11:52:20
восстановить строку из её хеша что ли? %)
Andrey
26.09.2017
11:53:15
:D
Ilyas
26.09.2017
11:54:22
https://www.youtube.com/watch?v=Rnf-BokbiBQ
Рулон
26.09.2017
11:56:06
))) Может не с той стороны смотрю. есть ID (строка) по которой можно определить источник. хранить строку "дорого" на большом объеме. вот думаю как бы ее хранить
Ilyas
26.09.2017
11:57:01
как часть id можно юзать хеш, а рядом саму строку
Konstantin
26.09.2017
11:57:06
а как насчет словаря?
Рулон
26.09.2017
11:58:09
словарь на сотни миллионов строк ?
Konstantin
26.09.2017
11:59:12
у меня в словаре лежит база maxmind
упс не туда посмотрел)
Ilyas
26.09.2017
12:00:00
смотря что за строки, если они нужны, то хранить всё равно придётся, хешем не обойтись
а как хранить - другой вопрос
Konstantin
26.09.2017
12:03:43
а источники не получится както классифицировать или надо целиком всю строку знать?
Felixoid
26.09.2017
12:04:35
Рулон
26.09.2017
12:06:07
Оки. буду думать. Еще раз спасибо)
Nikolai
26.09.2017
12:21:21
После установки новой версии 1.1.54289 сервер начал падать 3-4 раза в день
2017.09.26 14:21:33.704400 [ 32453 ] <Error> BaseDaemon: ########################################
2017.09.26 14:21:33.704432 [ 32453 ] <Error> BaseDaemon: (from thread 32357) Received signal Segmentation fault (11).
2017.09.26 14:21:33.704456 [ 32453 ] <Error> BaseDaemon: Address: 0x7feacbc9a008
2017.09.26 14:21:33.724958 [ 32453 ] <Error> BaseDaemon: 0. clickhouse-server(unsigned long DB::NonJoinedBlockInputStream::fillColumns<(DB::ASTTableJoin::Strictness)2, HashMapTable<StringRef, HashMapCellWithSavedHash<StringRef, DB::Join::WithUsedFlag<true, DB::Join::RowRefList>, DefaultHash<StringRef>, HashTableNoState>, DefaultHash<StringRef>, HashTableGrower<8ul>, Allocator<true> > >(HashMapTable<StringRef, HashMapCellWithSavedHash<StringRef, DB::Join::WithUsedFlag<true, DB::Join::RowRefList>, DefaultHash<StringRef>, HashTableNoState>, DefaultHash<StringRef>, HashTableGrower<8ul>, Allocator<true> > const&, unsigned long, std::vector<DB::IColumn*, std::allocator<DB::IColumn*> >&, unsigned long, std::vector<DB::IColumn*, std::allocator<DB::IColumn*> >&)+0x29b) [0x333eb6b]
2017.09.26 14:21:33.724988 [ 32453 ] <Error> BaseDaemon: 1. clickhouse-server(DB::Block DB::NonJoinedBlockInputStream::createBlock<(DB::ASTTableJoin::Strictness)2, DB::Join::MapsTemplate<DB::Join::WithUsedFlag<true, DB::Join::RowRefList> > >(DB::Join::MapsTemplate<DB::Join::WithUsedFlag<true, DB::Join::RowRefList> > const&)+0xc22) [0x3341202]
2017.09.26 14:21:33.725006 [ 32453 ] <Error> BaseDaemon: 2. clickhouse-server(DB::NonJoinedBlockInputStream::readImpl()+0x38) [0x3342218]
2017.09.26 14:21:33.725019 [ 32453 ] <Error> BaseDaemon: 3. clickhouse-server(DB::IProfilingBlockInputStream::read()+0x1e6) [0x298a4f6]
2017.09.26 14:21:33.725044 [ 32453 ] <Error> BaseDaemon: 4. clickhouse-server(DB::ExpressionBlockInputStream::readImpl()+0x1a) [0x328e93a]
2017.09.26 14:21:33.725056 [ 32453 ] <Error> BaseDaemon: 5. clickhouse-server(DB::IProfilingBlockInputStream::read()+0x1e6) [0x298a4f6]
2017.09.26 14:21:33.725074 [ 32453 ] <Error> BaseDaemon: 6. clickhouse-server(DB::ParallelInputsProcessor<DB::UnionBlockInputStream<(DB::StreamUnionMode)0>::Handler, (DB::StreamUnionMode)0>::thread(MemoryTracker*, unsigned long)+0xe4) [0x30a85b4]
2017.09.26 14:21:33.725084 [ 32453 ] <Error> BaseDaemon: 7. clickhouse-server() [0x3d2f38f]
2017.09.26 14:21:33.725095 [ 32453 ] <Error> BaseDaemon: 8. /lib/x86_64-linux-gnu/libpthread.so.0(+0x8184) [0x7feed32dc184]
на каком-то запросе?
Google
.
26.09.2017
12:32:29
Есть готовые геобазы для внутренних словарей?)
Konstantin
26.09.2017
12:37:24
у maxmind есть geolite-city
http://geolite.maxmind.com/download/geoip/database/GeoLite2-City-CSV.zip
N
26.09.2017
12:49:16
Подскажите, пожалуйста, есть 4и сервера, на кадом включено логирование запросов (system.query_log). Создал на всех серверах distributed таблицу, которая указывает на эти "локальные". Беру, допустим, select count(*) from и получаю разные значения. Сейчас говорю не о том, что появляются новые записи в таблице. А о том, что, условно, три запроса подряд показывают в ответе 300тыс записей, а один раз возвращается - 200тыс. Что происходит или что я делаю не так?
Tima
26.09.2017
12:50:37
Подскажите, пожалуйста, есть 4и сервера, на кадом включено логирование запросов (system.query_log). Создал на всех серверах distributed таблицу, которая указывает на эти "локальные". Беру, допустим, select count(*) from и получаю разные значения. Сейчас говорю не о том, что появляются новые записи в таблице. А о том, что, условно, три запроса подряд показывают в ответе 300тыс записей, а один раз возвращается - 200тыс. Что происходит или что я делаю не так?
Покажите конфиг кластера
N
26.09.2017
12:53:03
Покажите конфиг кластера
<?xml version="1.0"?>
<yandex>
<clickhouse_remote_servers>
<ch_cluster>
<!— shard 1 —>
<shard>
<!— replica 1_1 —>
<replica>
<host>172.20.80.11</host>
<port>9000</port>
</replica>
<!— replica 1_2 —>
<replica>
<host>172.20.80.12</host>
<port>9000</port>
</replica>
</shard>
<!— shard 2 —>
<shard>
<!— replica 2_1 —>
<replica>
<host>172.20.80.13</host>
<port>9000</port>
</replica>
<!— replica 2_2 —>
<replica>
<host>172.20.80.14</host>
<port>9000</port>
</replica>
</shard>
</ch_cluster>
</clickhouse_remote_servers>
<zookeeper-servers>
<node index="1">
<host>172.20.80.1</host>
<port>2181</port>
</node>
<node index="2">
<host>172.20.80.2</host>
<port>2181</port>
</node>
<node index="3">
<host>172.20.80.3</host>
<port>2181</port>
</node>
<node index="4">
<host>172.20.80.4</host>
<port>2181</port>
</node>
<node index="5">
<host>172.20.80.5</host>
<port>2181</port>
</node>
</zookeeper-servers>
<resharding>
<task_queue_path>/clickhouse/task_queue</task_queue_path>
</resharding>
<macros>
<shard>1</shard>
<replica>1</replica>
</macros>
</yandex>
всё "стандартное"
Tima
26.09.2017
12:54:44
Замени ip-адрес на имя сервера (ns или ещё что). Есть такой баг, уже в этом чате обсуждали
Nikolai
26.09.2017
12:54:54
Подскажите, пожалуйста, есть 4и сервера, на кадом включено логирование запросов (system.query_log). Создал на всех серверах distributed таблицу, которая указывает на эти "локальные". Беру, допустим, select count(*) from и получаю разные значения. Сейчас говорю не о том, что появляются новые записи в таблице. А о том, что, условно, три запроса подряд показывают в ответе 300тыс записей, а один раз возвращается - 200тыс. Что происходит или что я делаю не так?
также посмотрите, есть ли какие-нибудь данные в data/database/distributed_table и есть ли в логе ошибки пересылки данных на реплики
Kirill
26.09.2017
12:56:04
У вас там запрос то на одну машину уходит то на другую, сделайте еще 1 кластер в конфиге (all_nodes) и все машины туда пропишите, а не 2-а шарда
Vladimir
26.09.2017
12:56:35
Добрый день, знатоки, а может кто-нибудь на пальцах объяснить разницу между optimize и optimize partition final для replacing merge tree?
N
26.09.2017
12:57:52
Дмитрий
26.09.2017
13:00:18
Kirill
26.09.2017
13:00:43
N
26.09.2017
13:00:51
Vladimir
26.09.2017
13:03:11
Konstantin
26.09.2017
13:03:56
кажется что нет: "ReplacingMergeTree подходит для фоновой чистки дублирующихся данных в целях экономии места, но не даёт гарантий отсутствия дубликатов."
Nikolai
26.09.2017
13:05:53
N
26.09.2017
13:06:18
Vladimir
26.09.2017
13:06:29