在 Citus 多租户数据库中显示租户统计信息的问题

问题描述 投票:0回答:1

我的 Citus 多租户数据库设置遇到问题,无法检索预期的租户统计信息。我目前正在 Ubuntu 服务器上运行 Citus 12.1-1,具有一个主节点和四个工作节点。下面,我详细描述了我的设置、我执行的操作以及我遇到的问题。

环境:

  • Citus 版本:12.1-1
  • 主机操作系统:Ubuntu(主节点和工作节点)
  • 节点数量:1个master,4个worker
  1. 创建了两个表

    companies
    campaigns
    ,其中
    id
    中的
    companies
    company_id
    中的
    campaigns
    作为分布列:

    CREATE TABLE companies (id BIGSERIAL, name TEXT);
    SELECT create_distributed_table('companies', 'id');
    
    CREATE TABLE campaigns (id BIGSERIAL, company_id BIGINT, name TEXT);
    SELECT create_distributed_table('campaigns', 'company_id');
    
  2. 将数据插入到这些表中:

    -- Insert data into companies
    -- Insert data into campaigns
    
  3. 对这些表执行各种 SELECT 和 UPDATE 操作。

问题: 当查询

citus_stat_tenants
视图以监控租户相关统计信息时,未显示预期输出。使用的查询及其结果如下:

SELECT tenant_attribute, read_count_in_this_period, query_count_in_this_period, cpu_usage_in_this_period
FROM citus_stat_tenants;

预期结果:

tenant_attribute | read_count_in_this_period | query_count_in_this_period | cpu_usage_in_this_period
------------------+---------------------------+----------------------------+--------------------------
1                |                         1 |                          5 |                 0.000299
3                |                         0 |                          4 |                 0.000314
2                |                         1 |                          3 |                 0.000295

实际结果:

tenant_attribute | read_count_in_this_period | query_count_in_this_period | cpu_usage_in_this_period
------------------+---------------------------+----------------------------+---------------------
(0 rows)

尝试解决:

  • 已验证的 Citus 版本 (12.1-1)。
  • 确保租户ID正确实施和分发。
  • 重新启动 PostgreSQL 服务并检查节点之间的连接。
  • 监控是否有足够的查询活动。

如果您能为解决此问题提供任何指导或帮助,我将不胜感激。具体来说,我希望了解为什么

citus_stat_tenants
视图没有显示预期的租户统计信息,以及我可能采取的任何步骤来解决或纠正此问题。

谢谢。

预期结果:

tenant_attribute | read_count_in_this_period | query_count_in_this_period | cpu_usage_in_this_period
------------------+---------------------------+----------------------------+--------------------------
1                |                         1 |                          5 |                 0.000299
3                |                         0 |                          4 |                 0.000314
2                |                         1 |                          3 |                 0.000295
postgresql database-design multi-tenant citus
1个回答
0
投票

是的,所以我通过尝试很多方法找到了这个问题的解决方案,解决方案是您需要将所有节点中的 citus.stat_tenants_track 设置为“all”才能跟踪统计信息。 您可以将设置放在 postgresql.conf 文件中,以便能够跟踪所有 citus.stat_tenants_track,但它对我不起作用,所以我在 trminal 中执行此功能并且它起作用了。

更改系统设置 citus.stat_tenants_track 为“全部”; 选择 pg_reload_conf();

谢谢。

© www.soinside.com 2019 - 2024. All rights reserved.