代码之家  ›  专栏  ›  技术社区  ›  Oren Shemesh

Pipelinedb在高负载下被卡住,工作进程无所事事地消耗100%的CPU

  •  0
  • Oren Shemesh  · 技术社区  · 6 年前

    注意:我正在寻找关于如何调试这个问题的任何提示,而不一定是这个特定问题的直接答案。

    我已经定义了一些连续视图(计算和、top-K等等),从一个流(有20列,一些文本,大部分是整数和布尔值)输入。 当连续视图所指定的工作不太复杂时,PipelineDB表现良好。

    • (单个)“worker0”进程开始消耗100%的CPU
    • 测试挂起(即copy_from()函数调用不返回)

    当我减少PipelineDB的工作量(通过删除一些连续视图)时,测试工作正常,每秒可以实现20000次插入,至少持续一分钟。

    我已经使用了一些配置参数,特别是那些与内存缓冲区大小、同步方法、时间间隔、最大等待时间等有关的参数,以及工人数量,但是找不到任何可以避免问题的组合。

    我不知道我遇到的是PipelineDB问题,还是PostgreSQL问题。 当然,这不是预期的行为,在实际应用程序中也不能容忍。 欢迎任何提示、猜测、直觉等。

    [orens@rd10 ~]$ps -ef | grep pipelinedb 
    UID   PID  PPID  C STIME TTY    TIME   CMD
    orens 3005 3004  0 11:17 ?    00:00:00 pipelinedb: logger process    
    orens 3007 3004  0 11:17 ?    00:00:00 pipelinedb: checkpointer process    
    orens 3008 3004  0 11:17 ?    00:00:00 pipelinedb: writer process    
    orens 3009 3004  0 11:17 ?    00:00:00 pipelinedb: wal writer process    
    orens 3010 3004  0 11:17 ?    00:00:00 pipelinedb: autovacuum launcher process    
    orens 3011 3004  0 11:17 ?    00:00:00 pipelinedb: stats collector process    
    orens 3012 3004  0 11:17 ?    00:00:00 pipelinedb: pipelinedb scheduler process    
    orens 3014 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: reaper0 [pipeline]    
    orens 3015 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: queue0 [pipeline]    
    orens 3016 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: combiner1 [pipeline]    
    orens 3017 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: combiner0 [pipeline]   
    orens 3018 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: worker0 [pipeline]    
    orens 3046 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: reaper0 [db1]    
    orens 3050 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: queue0 [db1]      
    orens 3052 3004  0 11:17 ?    00:00:00 pipelinedb: bgworker: combiner0 [db1]
    orens 3056 3004 90 11:17 ?    00:01:06 pipelinedb: bgworker: worker0 [db1]    
    orens 3132 3004  1 11:17 ?    00:00:01 pipelinedb: ut_user db1 ::1(58830) COPY
    [orens@rd10 ~]$
    
    0 回复  |  直到 6 年前