关于性能有调优的你应该知道的非技术姿势

如果你的帖子为性能调优分类,记得提供下列信息节省下咨询时间,快速进入正题:

  • 机器配置

    • 机器数
    • 磁盘类型
    • CPU 核数
    • 内存大小
  • NebulaGraph 版本号

  • 服务状态,使用 show hosts 语句

  • 图空间 schema

  • 查询语句,需要调优的那条语句

  • 数据量,涉及到的数据量大概多少

  • profile 信息,使用 profile query 语句,参考示例

    nebula> PROFILE format="row" SHOW TAGS;
    +--------+
    | Name   |
    +--------+
    | player |
    | team   |
    +--------+
    Got 2 rows (time spent 2038/2728 us)
    
    Execution Plan
    
    -----+----------+--------------+----------------------------------------------------+----------------------------------------------------------------------
    | id | name     | dependencies | profiling data                                     | operator info                                                       
    |
    -----+----------+--------------+----------------------------------------------------+----------------------------------------------------------------------
    |  1 | ShowTags | 0            | ver: 0, rows: 1, execTime: 42us, totalTime: 1177us | outputVar: [{"colNames":[],"name":"__ShowTags_1","type":"DATASET"}] |
    |    |          |              |                                                    | inputVar:                                                           |
    -----+----------+--------------+----------------------------------------------------+----------------------------------------------------------------------
    |  0 | Start    |              | ver: 0, rows: 0, execTime: 1us, totalTime: 57us    | outputVar: [{"colNames":[],"name":"__Start_0","type":"DATASET"}]    |
    -----+----------+--------------+----------------------------------------------------+--------------------------------------------- -------------------------
    
    

    将返回结果文本粘贴到提问贴中。

    如果 profile 结果过长,可以上传 profile 文件

    建议用 nebula-console 连接数据库之后,使用下述命令提供 profile 信息

    内核 v3.4 版本及其以上:

    nebula> :profile <file_name>;
    

    内核 v3.4 版本以下:

    nebula> :dot a.dot;