无法启动clickhouse服务,文件太多../data/default/< tablename>

cuxqih21  于 2021-07-15  发布在  ClickHouse
关注(0)|答案(1)|浏览(631)

我的独立clickhouse服务器安装有一个奇怪的问题。服务器运行了一段时间,几乎是默认配置,只是数据和tmp目录被替换为单独的磁盘:

cat /etc/clickhouse-server/config.d/my_config.xml 
<?xml version="1.0"?> 
<yandex> 
  <path>/data/clickhouse/</path> 
  <tmp_path>/data/clickhouse/tmp/</tmp_path> 
</yandex>

今天服务器停止响应,出现连接被拒绝错误。重新启动后,服务无法完全启动:

2018.05.28 13:15:44.248373 [ 2 ] <Information> DatabaseOrdinary (default): 42.86%
2018.05.28 13:15:44.259860 [ 2 ] <Debug> default.event_4648 (Data): Loading data parts
2018.05.28 13:16:02.531851 [ 2 ] <Debug> default.event_4648 (Data): Loaded data parts (2168 items)
2018.05.28 13:16:02.532130 [ 2 ] <Information> DatabaseOrdinary (default): 57.14%
2018.05.28 13:16:02.534622 [ 2 ] <Debug> default.event_5156 (Data): Loading data parts
2018.05.28 13:34:01.731053 [ 3 ] <Information> Application: Received termination signal (Terminated)

真的,我停止了57%的进程,因为它开始的时间太长了(也许一两个小时后就可以开始了,我没试过)。
默认情况下,日志级别是“trace”,但我没有说明这种行为的任何原因。
我认为问题出在/data/clickhouse/data/default/event\ 5156中的文件计数。现在是626023目录,ls-la命令在这个目录中不能正常工作,我必须使用find来计算文件:


# time find . -maxdepth 1 | wc -l

626023

real    5m0.302s
user    0m3.114s
sys     0m24.848s

我有两个问题:
1) 为什么clickhouse服务器用默认配置生成这么多文件和目录?
2) 如何在足够的时间内启动服务而不丢失数据?

tkqqtvp1

tkqqtvp11#

数据更新方法中存在问题。我将脚本与jdbc连接器一起使用,并且每个请求发送一个字符串。将方案改为批量更新后,问题得到了解决。

相关问题