clickhouse_ru | Неотсортированное

Telegram-канал clickhouse_ru - ClickHouse не тормозит

11016

Обсуждаем ClickHouse

Подписаться на канал

ClickHouse не тормозит

А в чем смысл lag по всему набору строк без указания смещения?

Читать полностью…

ClickHouse не тормозит

keeper как отдельный демон или в составе clickhouse-server?

Читать полностью…

ClickHouse не тормозит

обычные реквесты

и в метрику и в клик


url_params = urlencode(
[
('date1', user_request.start_date_str),
('date2', user_request.end_date_str),
('source', user_request.source),
('fields', ','.join(user_request.fields))
]
)

headers = {'Authorization': 'OAuth ' + user_request.token}

url = '{host}/management/v1/counter/{counter_id}/logrequests/evaluate?'\
.format(host=HOST, counter_id=user_request.counter_id) + url_params

r = requests.get(url, headers=headers)

Читать полностью…

ClickHouse не тормозит

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

у меня до сих пор работает

но если хочется пандас, то вот примитивный пример
https://github.com/handgunman/primitive-scripts/blob/main/logs_download_simple.py

Читать полностью…

ClickHouse не тормозит

Сам не рад, что полез в pandas

Читать полностью…

ClickHouse не тормозит

Добрый вечер. Подскажите, пожалуйста, какой наилучший алгоритм для загрузки с помощью python скрипта логов визитов из API Метрики в таблицу ClickHouse.
Я получаю данные

response_result = requests.get(api_url_result, headers=headers)

Как я понимаю данные в tsv формате
tsv_data = StringIO(response_result.text)
df = pd.read_csv(tsv_data, sep='\t')

Вот я и получаю pandas df. А дальше начинается полный писец. Не могу привести все 90 полей в чувства, чтобы они загрузились. Может не стоить возиться с pandas, а загружать другим способом? Подскажите, плс.

Читать полностью…

ClickHouse не тормозит

thousand separator не поддерживается, и в c++ printf тоже емнип не умеет

Читать полностью…

ClickHouse не тормозит

До запятой, разделить разрядов, например 55 555 555.55 через пробел, что-то все варианты перебрал, ошибка. SELECT printf('%.01f',55555555.55). Что нужно указать до точки в функции...

Читать полностью…

ClickHouse не тормозит

Это к сожалению работает только для знака после запятой( все варианты как разряды перебрал(

Читать полностью…

ClickHouse не тормозит

табличка в ch служебная

Читать полностью…

ClickHouse не тормозит

лан, поживем так) @den_crane спасибки)

Читать полностью…

ClickHouse не тормозит

я решил так


row_number(x) OVER (ORDER BY x ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS rn,
if(rn=1,null,m) as result

Читать полностью…

ClickHouse не тормозит

через prometheus доступно

Читать полностью…

ClickHouse не тормозит

всем привет! подскажите кто как мониторит состояние keeper'ов? как понять, что кластер операбелен, кворум собран и пр? собирать вывод 4lw или есть нормальные инструменты? как проверить состояние синхронизации метадаты?

Читать полностью…

ClickHouse не тормозит

If x is Nullable, the result will have NULL in the first row (or wherever there’s insufficient data).

Читать полностью…

ClickHouse не тормозит

отдельный демон на другом хосте

Читать полностью…

ClickHouse не тормозит

там одна проблемма - массивы

Читать полностью…

ClickHouse не тормозит

Спасибо. А если без pandas, то как лучше попробовать?

Читать полностью…

ClickHouse не тормозит

Есть какой-то рекомендуемый подход?

Читать полностью…

ClickHouse не тормозит

Пытался без pandas, не зашло, решил поработать с типами данных.
Вот мой код до pandas:

reader = csv.reader(StringIO(data), delimiter='\t')
header = [col.replace('ym:s:', '') for col in next(reader)] # Упрощённый маппинг
rows = list(reader)

batch_size = 10000
for i in range(0, len(rows), batch_size):
batch = []
for row in rows[i:i+batch_size]:
row_dict = dict(zip(header, row))
row_dict = convert_dates(row_dict)
batch.append(row_dict)

try:
client.insert('yaMetLogs', batch)
print(f"Вставлено {min(i+batch_size, len(rows))}/{len(rows)} строк")
except Exception as e:
print(f"Ошибка при вставке: {str(e)}")
print("Проблемная строка:", batch[0] if batch else "нет данных")

Читать полностью…

ClickHouse не тормозит

я не про это, я про то что с помощью Null таблицу -> MV -> *mergetree вы можете делать любые трансформации при вставке

https://den-crane.github.io/Everything_you_should_know_about_materialized_views_commented.pdf

https://youtu.be/1LVJ_WcLgF8?list=PLO3lfQbpDVI-hyw4MyqxEk3rDHw95SzxJ&t=7597

Читать полностью…

ClickHouse не тормозит

Я поискал в интернете и не нашел чтобы где-то говорилось про то, что вставка в связку null engine -> MV -> ReplicatedMergeTree обеспечивает exactly once.
Если допустить, что у меня всегда вставка в одну партицию, есть поблочная дедупликация в целевой mergetree и deduplicate_blocks_in_dependent_materialized_views=1, то можно ли с уверенностью сказать что данные не потеряются и дубликатов не будет?

Читать полностью…

ClickHouse не тормозит

Что такое до запятой? Запятая это decimal separator?

Читать полностью…

ClickHouse не тормозит

$ cat /etc/clickhouse-server/users.d/allow_deprecated_error_prone_window_functions.xml
<?xml version="1.0" ?>
<clickhouse>
<profiles>
<default>
<allow_deprecated_error_prone_window_functions>1</allow_deprecated_error_prone_window_functions>
</default>
</profiles>
</clickhouse>

Читать полностью…

ClickHouse не тормозит

всем привет
кто может подсказать, как изменить настройку внутри таблицы system.settings?
хочу изменить параметр allow_deprecated_error_prone_window_functions

Читать полностью…

ClickHouse не тормозит

просто думал что это костыль))

Читать полностью…

ClickHouse не тормозит

да, все верно. ответ искался про первую в результате, так что в этом ответе все ок)

Читать полностью…

ClickHouse не тормозит

вот что написал gpt


WITH t AS (
SELECT 1 AS x
UNION ALL
SELECT 2
UNION ALL
SELECT 3
),
t2 AS (
SELECT x::int, ROW_NUMBER() OVER (ORDER BY x) AS rn FROM t
),
t3 AS (
SELECT CASE WHEN rn = 1 THEN NULL ELSE x END AS x, rn FROM t2
)
SELECT
x,
AVG(x) OVER (ORDER BY rn ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS m
FROM t3
ORDER BY rn;


SELECT CASE WHEN rn = 1 THEN NULL

что тоже неверно

Читать полностью…

ClickHouse не тормозит

у вас ROWS BETWEEN 1 PRECEDING AND CURRENT ROW
это ДВЕ строки

Читать полностью…

ClickHouse не тормозит

для кх gpt сказала, что все ок - Use avg(...) or other functions directly, not wrapped )

Читать полностью…
Подписаться на канал