作业管理

    SUBMIT JOB COMPACT 语句会触发 RocksDB 的长耗时 compact 操作。

    compact配置详情请参见Storage服务配置

    SUBMIT JOB FLUSH

    SUBMIT JOB FLUSH语句将内存中的RocksDB memfile写入硬盘。

    示例

    1. +------------+
    2. | New Job Id |
    3. +------------+
    4. | 96 |
    5. +------------+

    SUBMIT JOB STATS语句启动一个作业,该作业对当前图空间进行统计。作业完成后,用户可以使用SHOW STATS语句列出统计结果。详情请参见。

    如果存储在Nebula Graph中的数据有变化,为了获取最新的统计结果,请重新执行SUBMIT JOB STATS

    示例

    1. nebula> SUBMIT JOB STATS;
    2. +------------+
    3. | New Job Id |
    4. +------------+
    5. | 97 |

    SHOW JOB

    Meta服务将SUBMIT JOB请求解析为多个任务,然后分配给进程nebula-storaged。SHOW JOB <job_id>语句显示指定作业和相关任务的信息。

    job_id在执行SUBMIT JOB语句时会返回。

    作业状态

    作业状态的说明如下。

    状态说明
    QUEUE作业或任务在等待队列中。此阶段Start Time为空。
    RUNNING作业或任务在执行中。Start Time为该阶段的起始时间。
    FINISHED作业或任务成功完成。Stop Time为该阶段的起始时间。
    FAILED作业或任务失败。Stop Time为该阶段的起始时间。
    STOPPED作业或任务停止。Stop Time为该阶段的起始时间。
    REMOVED作业或任务被删除。
    1. Queue -- running -- finished -- removed
    2. \ \ /
    3. \ \ -- failed -- /
    4. \ \ /
    5. \ ---------- stopped -/

    SHOW JOBS语句列出所有未过期的作业。

    作业的默认过期时间为一周。如果需要修改过期时间,请修改Meta服务的参数job_expired_secs。详情请参见。

    示例

    1. nebula> SHOW JOBS;
    2. | Job Id | Command | Status | Start Time | Stop Time |
    3. +--------+----------------------+------------+-------------------------+-------------------------+
    4. | 97 | "STATS" | "FINISHED" | 2020-11-28T14:48:52.000 | 2020-11-28T14:48:52.000 |
    5. +--------+----------------------+------------+-------------------------+-------------------------+
    6. | 96 | "FLUSH" | "FINISHED" | 2020-11-28T14:14:29.000 | 2020-11-28T14:14:29.000 |
    7. +--------+----------------------+------------+-------------------------+-------------------------+
    8. | 95 | "STATS" | "FINISHED" | 2020-11-28T13:02:11.000 | 2020-11-28T13:02:11.000 |
    9. +--------+----------------------+------------+-------------------------+-------------------------+
    10. | 86 | "REBUILD_EDGE_INDEX" | "FINISHED" | 2020-11-26T13:38:24.000 | 2020-11-26T13:38:24.000 |
    11. +--------+----------------------+------------+-------------------------+-------------------------+

    STOP JOB

    STOP JOB语句可以停止未完成的作业。

    RECOVER JOB语句会重新执行失败的作业,并返回已恢复的作业数量。

    示例

    1. nebula> RECOVER JOB;
    2. +-------------------+
    3. | Recovered job num |
    4. +-------------------+
    5. | 5 job recovered |
    6. +-------------------+

    FAQ

    如何排查作业问题?

    1. curl "http://{storaged-ip}:19779/admin?space={space_name}&op=compact"