任务

  • UQL提供了对Ultipa的任务管理支持,用户可以随意的去查看,停止,删除任务。Ultipa的任务机制可以帮助用户随时随地的去掌控引擎的运行状态,对运算资源实时作出调整。

  • Ultipa的任务分为两大类:

    • 运行时UQL(UQL Process)
      • 运行时UQL指的是正在运行的UQL,不包括算法相关的UQL。比如查询,添加,修改相关的UQL语句。
    • 算法任务(Algorithm Task)
      • 长耗时算法相关的任务,比如Louvain社区识别,三角形计算等。
  • 运行 UQL ( UQL Process )

    • 除算法以外的UQL将都归类为UQL Process,并且可以通过本小节提供的命令进行管理。

    • 查看运行的 UQL

      from ultipa import Connection,ULTIPA_REQUEST
      conn = Connection(host='host:port', username="root", password="root")
      ret = conn.top()
      print(ret.toJSON())
      
    • 终止运行时 UQL

      from ultipa import Connection,ULTIPA_REQUEST
      conn = Connection(host='host:port', username="root", password="root")
      ret =  conn.kill(ULTIPA_REQUEST.Kill('1'))
      print(ret.toJSON())
      
    • 查看算法任务

      from ultipa import Connection,ULTIPA_REQUEST
      conn = Connection(host='host:port', username="root", password="root")
      ret = conn.showTask(ULTIPA_REQUEST.ShowTask(limit=10))
      print(ret.toJSON())
      
    • 清楚算法任务列表

      from ultipa import Connection,ULTIPA_REQUEST
      conn = Connection(host='host:port', username="root", password="root")
      # 根据id 进行清除 需要将all 设置为False
      ret = conn.clearTask(ULTIPA_REQUEST.ClearTask(id=1,all=False))
      print(ret.toJSON())
      # 清除所有
      ret = conn.clearTask(ULTIPA_REQUEST.ClearTask())
      print(ret.toJSON())
      
    • 取消停止算法任务

      from ultipa import Connection,ULTIPA_REQUEST
      conn = Connection(host='host:port', username="root", password="root")
      ret = conn.stopTask(ULTIPA_REQUEST.StopTask(id=1))
      print(ret.toJSON())