@clickhouse_ru

Страница 611 из 723
?
05.08.2018
15:47:54
можно как-то дропнуть таблицы по маске имени? то есть вот так я их могу выбрать select name FROM system.tables WHERE name like '%__tmp%' а как дроп прикрутить?

Robert
05.08.2018
15:50:58
может выгрузить названия таблиц в файл через 'DROP TABLE ' || tablename; его потом запустить через параметр в clickhouse-client

?
05.08.2018
15:56:04
да, спасибо, как вариант, думал может есть что-то с меньшим количеством шагов

Robert
05.08.2018
16:18:34
Ну и еще один вопрос. Если у меня есть таблица-полу-справочник (больше 1 млн записей), в которых регулярно происходят обновления атрибутов. Я ее объявляю таким образом. CREATE TABLE runner_catalog ( selection_id UInt64, runner_name String, handicap UInt64, sort_priority UInt8, version UInt64 ) ENGINE = ReplacingMergeTree(version) PARTITION BY intHash64(selection_id) ORDER BY (selection_id, runner_name); Я все правильно делаю? В качестве первичного ключа исползьую selection_id. Но из документации, не совсем понял зачем указывать ORDER BY.

Google
Robert
05.08.2018
16:19:21
Меня смущает, что в документации написано, что слияние происходит в фоне. Значит ли это, что можно столкнуться с ситуацией, когда в таблице runner_catalog будет больше одной записи с одинаковым selection_id?

Robert
05.08.2018
16:59:48
да, не нужен. Спасибо.

Alexander
05.08.2018
17:00:10
И да, записи с одним ключем будут повторяться в какие- то моменты времени. Это решается либо вызовом optimize, либо запросом с группировкой

Robert
05.08.2018
17:00:56
Спасибо. Получилось так. create table runner_catalog ( selection_id UInt64, runner_name String, handicap UInt64, sort_priority UInt8, version UInt64) Engine = ReplacingMergeTree(version) ORDER BY (selection_id);

Fedor
05.08.2018
21:35:27
https://youtu.be/PLMSA_gDdyM
А есть следующий уровень? =) У меня нездоровый, можно даже сказать, академический, интерес к представлению данных. На 10:55 Алексей рассказывает "Как работает индекс". Он упоминает файлы индекса (primary.idx), засечек (.mrk) и данных (.bin). С кем можно обсудить формат этих файлов? https://www.youtube.com/watch?v=PLMSA_gDdyM&t=655

Robert
05.08.2018
22:28:10
@fediq , исходники?

Fedor
05.08.2018
22:29:43
Обсуждать с исходниками - это когда тебя совсем никто не любит. =(

Pavel
05.08.2018
22:38:38
зато они никогда не введут в заблуждение, даже невольно

Roman
05.08.2018
23:24:22
@fediq https://events.yandex.ru/lib/talks/5800/ Вот хороший обзор внутренностей MergeTree движка

Александр
05.08.2018
23:33:02
Обсуждать с исходниками - это когда тебя совсем никто не любит. =(
Уже определили сумму которую готовы выложить за прекрасные новые знания?

open ! = free

Google
Fedor
05.08.2018
23:36:45
Тоже вариант. В ПМ?

Anton
06.08.2018
05:06:07
Для default пароль не задавайте, это поведение нужно поправить, считайте что пока это фича такая.
Спасибо! Помогло. Только жаль, что это нигде в документации не описано...

Добрый день. Может еще кто то знает еще одна ошибка Очистка Materialized View работает только на том сервере, где была создана, на любых других выходит ошибка: ip-172-31-16-10.us-west-2.compute.internal :) truncate table db1.r_test_transactions; TRUNCATE TABLE db1.r_test_transactions Received exception from server (version 18.6.0): Code: 48. DB::Exception: Received from localhost:9000, ::1. DB::Exception: Can't proxy this query. Unsupported query type. 0 rows in set. Elapsed: 0.080 sec. А тут Materialized View была создана и все работает: ip-172-31-16-11.us-west-2.compute.internal :) truncate table db1.r_test_transactions :-] ; TRUNCATE TABLE db1.r_test_transactions Ok. 0 rows in set. Elapsed: 0.047 sec. Это ошибка CH или я опять где-то что то не так делаю?

Gulya
06.08.2018
05:50:46
Подскажите пожалуйста, ClickHouse не позволяет создавать таблицы с одинаковыми наименованием столбцов? engine = log, Хотела создать таблицу, которая имеет пару одинаковых наименования полей как в ранее созданных таблиц, тогда выдает ошибку DB::Exception: Column ID already exists.

Это из за того что движок LOG или в целом clickhouse не позволяет повторение наименование столбцов

новичок в ClickHouse, подскажите плиз не моге найти инфу

Victor
06.08.2018
05:54:04
одинаковые столбцы это как? Это вообще законно?

Stanislav
06.08.2018
05:55:17
А какая бд позволяет?

Gulya
06.08.2018
05:57:16
У меня ранее скажем создана таблица "A" с колонками (id Int32, Name String) engine = log, и скажем я пытаюсь создать таблицу "B" с колонками ( id Int32, City String) engine = log

и тогда у меня возникает ошибка DB::Exception: Column ID already exists.

Кажется я поняла в чем причина

Robert
06.08.2018
06:39:01
Gulya, в чем? Тоже интересно стало.

Sergey
06.08.2018
06:47:45
Кажется я поняла в чем причина
Плюсую интерес к причине.

Dmitry
06.08.2018
07:42:29
Народ

такая штука select one, 2 as one from (select 1 as one, 2 as two)

в результате будет 2 2, а не 1 2

это баг или фича ?

Google
antuan
06.08.2018
07:44:07
А если select one, select 2 as ne_one...?

Dmitry
06.08.2018
07:45:03
если алиасы разные будут то значения правильные вернутся

получается что при таком запросе insert into table (id, name) select 2 as id, 'test' as name, from table where id = 1

выбирается на запись с id = 1, а запись с id 2

Dima
06.08.2018
08:39:38
Здравствуйте Кто-то сталкивался с подобной проблемой: "Poco::Exception. Code: 1000 ... Malformed message: Field value too long/no CRLF found"? Отправляю external_data через curl. Передаю список. Если длинной менее 1000, все ок. Больше - ошибка Через клиент все работает без проблем.

Дмитрий
06.08.2018
08:53:10
привет всем, а у кого-то есть пример как залить сsv в кликхаус на golang?

Max
06.08.2018
08:54:43
Denis
06.08.2018
08:54:53
зачем голанг, если есть cli?

Дмитрий
06.08.2018
08:55:16
Denis
06.08.2018
08:55:59
clickhouse-client умеет csv закидывать на серввер

Дмитрий
06.08.2018
08:56:16
clickhouse-client умеет csv закидывать на серввер
я знаю, спасибо) Просто странный вопрос от вас)

А почему бы просто через хттп запрос не лить?
Спасибо, хотел просто ссылку на готовый пример или вроде того, чтобы не писать самому, не смог найти на просторах(

Max
06.08.2018
08:59:44
Пост запрос в теле цсв а урл "/query=insert into TABLENANE format csv"

Combot
06.08.2018
09:00:46
Дмитрий Мищенко (0) увеличил репутацию Max Grigoriev (1)

Denis
06.08.2018
09:02:11
через cli: clickhouse-client --host=... --query="INSERT INTO ... FORMAT CSV" < /path/to/data.csv

Alexander
06.08.2018
09:04:25
/stat@combot

Combot
06.08.2018
09:04:26
combot.org/c/-1001080295593

Dmitriy
06.08.2018
09:33:32
Всем доброго дня! Ребят подскажите или киньте ссылочку где можно почитать, каким способом кроме пересоздания таблицы можно изменить параметры внутри Engine? Есть таблица с типом SummingMergeTree с явным указанием колонок для суммирования, нужно добавить еще одну колонку в таблицу и включить её в колонки для суммирования! Спасибо!

А лучше всего как убрать с Engine явно заданные колонки, чтобы остался просто ключ по которому будет идти суммирование

Google
Dmitriy
06.08.2018
10:35:15
никак
Спасибо!

Combot
06.08.2018
10:35:16
Dmitriy Lazarchuk (0) увеличил репутацию Dmitry Alekseev (1)

combot.org/c/-1001080295593

Ivan
06.08.2018
11:39:49
Читал в этом чате что в конец ключа можно добавлять, вроде даже тесты на эту фичу написаны

molo4ko
06.08.2018
12:53:58
кстати, рендерер md->html не работает с картинками, кажется

в md на гитхабе все в порядке

Kirill
06.08.2018
13:00:17
Читал в этом чате что в конец ключа можно добавлять, вроде даже тесты на эту фичу написаны
Можно добавляеть если не меняется сортировка для ПК (т.е. в ключ добаляются поля с дефалтовыми значениями) и работает только для MergeTree.

Вячеслав
06.08.2018
13:33:56
Привет! Увидел в тикете на github (https://github.com/yandex/ClickHouse/issues/1178) такую конструкцию: OPTIMIZE TABLE tablename [FINAL] DEDUPLICATE; Про DEDUPLICATE в документации ничего не нашел. Кто нибудь знает что именно делает DEDUPLICATE и работает ли это вообще?

Vasilij
06.08.2018
14:16:42
А кто-нибудь пользуется Kafka и кворумной записью? Не возникнет ли там каких-то граблей?

Evgeny
06.08.2018
14:28:57
А есть какой-то магический вариант задавать в самом начале запроса переменную которая потом будет использоваться в запросах включая подзапросы?

Alexander
06.08.2018
14:32:17
WITH expr AS ident SELECT ...

Roman
06.08.2018
14:34:33
Если бы еще табикс можно как-то приучить нормально форматировать такие выборки :)

Evgeny
06.08.2018
14:39:28
WITH expr AS ident SELECT ...
Это не попадает во вложенные селекты и юнионы же

Vladimir
06.08.2018
14:55:34
Всем привет! Подскажите, пожалуйста, как использовать IPv4StringToNum в JDBC

Пытаюсь sendRowBinaryStream stream.writeString("IPv4StringToNum(" + lfadto.getIp4() + ")") , строка вставляется, но что-то явно идет не так. Переписываются другие поля

Roman
06.08.2018
15:12:56
Подскажите пожалуйста, как использовать кликхаус в качестве backend'а в проекте django?

Roman
06.08.2018
15:39:47
Да только чтение

Google
Pavel Tyavin
06.08.2018
15:40:47
Ну тогда использование orm неоправданно. Просто обращайтесь к вашим ch-табличкам через http интерфейс.

Roman
06.08.2018
15:41:42
Хорошо, а если понадобится запись?

Vsevolod
06.08.2018
15:46:52
а можно ли в tsv поставить значение today() в поле типа Date?

Sergey
06.08.2018
18:41:22
А кто-нибудь пользуется Kafka и кворумной записью? Не возникнет ли там каких-то граблей?
У нас Kafka, но кворум победить не смогли. Задолбало ловить рандомно конфликты нод ZooKeeper, волево вырубили кворум.

Dmitriy
06.08.2018
18:41:23
Привет! Увидел в тикете на github (https://github.com/yandex/ClickHouse/issues/1178) такую конструкцию: OPTIMIZE TABLE tablename [FINAL] DEDUPLICATE; Про DEDUPLICATE в документации ничего не нашел. Кто нибудь знает что именно делает DEDUPLICATE и работает ли это вообще?
Недавно наткнулись на проблему с дедупликацией при инсертах, когда приходили две одинаковых строки на вставку, а в итоге записывалась только одна! В общем дедупликация нужна в том случае когда не ждешь или когда не нужно иметь в таблице две одинаковых строки! По умолчанию она включена, чтобы выключить нужно установить insert_deduplicate в конфиге в 0.

Sergey
06.08.2018
18:46:00
Подскажите пожалуйста, как использовать кликхаус в качестве backend'а в проекте django?
Мне кажется, вы на стопку граблей наступите, когда Django будет генерировать запросы. Кучу всего руками править — то же создание моделей в базе уже со старта не совместимо.

Sergey
06.08.2018
19:15:32
Что тогда посоветуете?
Ничего. :) На деле кворум и Кафка — это разные штуки. Мы об кворум бились при разных источниках данных. Возможно, выкрутитесь через "не получил 200, попробуй записать ещё раз", но, емнип, тут мы уже огребали с дедупликацией, но толком уже не помню. А Кафка норм, как накопитель вполне. Тут ещё несколько человек её так используют.

Что тогда посоветуете?
Блин, не на то ответил. С ORM и ClickHouse пока толком ничего нет, кажется.

Да и зачем? Сила евойная в аналитике, которую можно спихнуть на базу и она не крякнет. Аналитику сию делать на таблицах с большим количеством колонок. Соответственно, у вас и модели раздутые будут. А полезные запросы всё равно вне ORM писать. Если вам всё-таки тут прям очень нужен ORM, кажется, проще наваять своё ровно под свои задачи.

antuan
06.08.2018
19:24:18
алхимию пользуем в связке с кх, особо не жалуемся

благо что запросы там можно какие угодно строить

Страница 611 из 723