小编vla*_*mir的帖子

ClickHouse 中的时间比较

也许我错过了一些简单的事情,但我无法让时间过滤工作。

这是我的示例查询:

select toTimeZone(ts, 'Etc/GMT+2') as z
from (select toDateTime('2019-08-31 20:35:00') AS ts)
where z > '2019-08-31 20:34:00'
Run Code Online (Sandbox Code Playgroud)

我期望 0 结果,但得到:

2019-08-31T18:35:00+00:00
Run Code Online (Sandbox Code Playgroud)

这是一个错误,还是我滥用了 toTimeZone() 函数?

谢谢!

clickhouse

3
推荐指数
1
解决办法
1万
查看次数

如何理解ClickHouse的part和partition?

我看到 clickhouse 为每个分区键创建了多个目录。

文档说目录名称格式是:分区名称最小数据块最大数据块数块级别。例如,目录名称是201901_1_11_1.

我认为这意味着该目录是属于分区201901的一部分,具有从111的块并且在级别1。所以我们可以有另一个部分,其目录类似于201901_12_21_1,这意味着这部分属于分区201901,具有从1221的块并且在级别1

所以我认为分区被分成不同的部分。我对吗?

clickhouse

3
推荐指数
1
解决办法
3606
查看次数

ClickHouse 新手,无法创建本地主机

我是 Clickhouse 的新手,正在尝试入门。我已经安装了能够在我的计算机(ubuntu 16.04)上使用它所需的所有软件包,但是当我使用 clickhouse-client 命令时,我得到以下信息:

ClickHouse client version 20.3.4.10 (official build).
Connecting to localhost:9000 as user default.
Code: 516. DB::Exception: Received from localhost:9000. DB::Exception: default: Authentication failed: password is incorrect or there is no user with such name.
Run Code Online (Sandbox Code Playgroud)

有谁知道我应该做什么?

clickhouse

3
推荐指数
1
解决办法
3536
查看次数

Clickhouse查询使用正则表达式

我知道clickhouse提供了replaceRegexpOne()函数,但我想使用正则表达式来查询,而不是替换。像MySQL一样:

select username 
from table 
where username  REGEXP '^[0-9]*$'.
Run Code Online (Sandbox Code Playgroud)

希望你能帮助我,谢谢。

regex database clickhouse

3
推荐指数
1
解决办法
2万
查看次数

将 JSON 数组中的数据收集到 ClickHouse 表中

我在 ClickHouse 表中有一些原始 JSON 数据(实际上是来自 netflow 收集器的 netflow V9),它看起来像这样:

{"AgentID":"10.1.8.1",
       "Header":{"Version":9,"Count":2},
       "DataSets":[
            [{"I":2,"V":"231"},{"I":3,"V":"151"},{"I":8,"V":"109.195.122.130"}],
            [{"I":2,"V":"341"},{"I":3,"V":"221"},{"I":8,"V":"109.195.122.233"}]
       
       ]}'
Run Code Online (Sandbox Code Playgroud)

我的任务是通过以下方式将 DataSets 数组转换为另一个 ClickHouse 表:

I2     I3    I8
-----------------------------
231    151   109.195.122.130
341    221   109.195.122.233
...
 
Run Code Online (Sandbox Code Playgroud)

json netflow clickhouse

3
推荐指数
1
解决办法
6054
查看次数

如何在ClickHouse中获取FLAG的值

ClickHouse 有一些选项的标志。例如,allow_experimental_live_view可以设置为 1:

:) SET allow_experimental_live_view = 1
Run Code Online (Sandbox Code Playgroud)

但是没有办法GET获取标志的值,例如GET allow_experimental_live_view.

有什么方法可以获取flag的值吗?

clickhouse

2
推荐指数
1
解决办法
285
查看次数

Clickhouse二级索引和MySQL普通索引类似吗?

我对何时使用二级索引有点困惑。我有以下代码脚本来定义 MergeTree 表,该表有十亿行。

create table t_mt(
 id UInt8,
 name String,
 job String,
 birthday Date,
 salary UINT8

) engine = MergeTable
primary key id
order by (id)
Run Code Online (Sandbox Code Playgroud)

我将实时运行以下聚合查询:

select job, count(1), avg(salary) 
from t_mt 
group by job 
where salary > 20000
Run Code Online (Sandbox Code Playgroud)

在上面的查询中,我使用了条件过滤器:salary > 20000和分组依据job。我想问在列上定义二级索引是否是一个好习惯salary

我在这里要问的基本问题是我是否可以将Clickhouse二级索引视为MySQL普通索引。也就是说,如果我想按某个列进行过滤,那么我可以在此列上创建(辅助)索引以加快查询速度。

clickhouse

2
推荐指数
1
解决办法
2510
查看次数

我应该在开始插入之前等待 ClickHouse 中的异步删除吗?

我需要在 ClickHouse 中重新加载最后一天的数据。我的想法是使用 ALTER TABLE DELETE 语句删除最后一天的行,然后插入更新的行。

我已经在文档中找到:“突变也可以通过 INSERT INTO 查询进行部分排序:在提交突变之前插入表中的数据将发生突变,而之后插入的数据将不会发生突变。” 但我不明白这句话。那么我应该等待异步删除过程结束后再开始插入,还是立即开始插入可以吗?知道有复制和没有复制两种情况的答案很有趣。

clickhouse

0
推荐指数
1
解决办法
1465
查看次数

标签 统计

clickhouse ×8

database ×1

json ×1

netflow ×1

regex ×1