ClickHouse 创建临时 table
ClickHouse create temporary table
尝试在 ClickHouse 中创建临时 table 时遇到问题。我执行简单查询并收到错误
create TEMPORARY TABLE nn1 as select 1;
message: Code: 113, e.displayText() = DB::Exception: There is no session, e.what() = DB::Exception
有人知道为什么会这样以及如何解决这个问题吗?我想我需要在查询之前启动会话,但我不知道该怎么做。
我正在尝试使用 ClickHouse 的界面进行查询。看起来像
默认情况下,所有通过 HTTP 接口完成的查询都是无状态的。
要使用临时表,您需要有一个活动会话。将具有某些值的 session_id
参数添加到 ClickHouse 请求的 URL 就足够了。
例如:
替换 http://127.0.0.1:8123/
至 http://127.0.0.1:8123/?session_id=mysession
以后使用相同 session_id
的请求将 'remember' 临时表、设置等,您在之前的查询中使用 session_id
。
还请记住,会话使用独占锁,因此您不能同时 运行 2 个具有相同 session_id 的请求。默认情况下会话生命周期等于 60 秒,但可以调整。
尝试在 ClickHouse 中创建临时 table 时遇到问题。我执行简单查询并收到错误
create TEMPORARY TABLE nn1 as select 1;
message: Code: 113, e.displayText() = DB::Exception: There is no session, e.what() = DB::Exception
有人知道为什么会这样以及如何解决这个问题吗?我想我需要在查询之前启动会话,但我不知道该怎么做。
我正在尝试使用 ClickHouse 的界面进行查询。看起来像
默认情况下,所有通过 HTTP 接口完成的查询都是无状态的。
要使用临时表,您需要有一个活动会话。将具有某些值的 session_id
参数添加到 ClickHouse 请求的 URL 就足够了。
例如:
替换 http://127.0.0.1:8123/
至 http://127.0.0.1:8123/?session_id=mysession
以后使用相同 session_id
的请求将 'remember' 临时表、设置等,您在之前的查询中使用 session_id
。
还请记住,会话使用独占锁,因此您不能同时 运行 2 个具有相同 session_id 的请求。默认情况下会话生命周期等于 60 秒,但可以调整。