Change Password

Please enter the password.
Please enter the password. Between 8-64 characters. Not identical to your email address. Contain at least 3 of: uppercase, lowercase, numbers, and special characters.
Please enter the password.
Submit

Change Nickname

Current Nickname:
Submit

Apply New License

License Detail

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

The MAC address of the server you want to deploy.

Please complete this required field.

Please complete this required field.

Cancel
Apply
ID
Product
Status
Cores
Applied Validity Period(days)
Effective Date
Excpired Date
Mac Address
Apply Comment
Review Comment
Close
Profile
  • Full Name:
  • Phone:
  • Company:
  • Company Email:
  • Country:
  • Language:
Change Password
Apply

You have no license application record.

Apply
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

Product Created On ID Amount (USD) Invoice
Product Created On ID Amount (USD) Invoice

No Invoice

v4.5
Search
    Français
    v4.5

      Gestion des Processus et des Tâches

      Cette section présente les méthodes d'un objet Connection pour gérer les processus dans l'instance et les tâches dans le graphset actuel.

      Chaque exemple se concentre uniquement sur l'utilisation de la méthode. Pour un exemple de code complet, veuillez vous référer à l'exemple complet.

      Processus

      Toutes les requêtes UQL, à l'exception des algorithmes exécutés avec la méthode write(), sont exécutées en tant que processus. Les résultats de ces processus sont renvoyés au client à la fin et ne sont pas stockés.

      Top()

      Récupère tous les processus en cours d'exécution et d'arrêt de l'instance.

      Paramètres :

      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête. Si nil est fourni, la fonction utilisera les paramètres de configuration par défaut.

      Retours :

      • []Top : La liste de tous les processus dans l'instance.
      • error : Un objet d'erreur contenant des détails sur les problèmes survenus. nil est retourné si l'opération est réussie.

      // Récupère tous les processus en cours d'exécution et d'arrêt dans l'instance
      
      requestConfig := &configuration.RequestConfig{
        UseMaster: true,
      }
      
      myProcess, err := conn.Top(requestConfig)
      if err != nil {
        println(err)
      }
      
      println(utils.JSONString(myProcess))
      

      [{"process_id":"a_4_12573_2","status":"RUNNING","process_uql":"n().e().n().e().n().e().n() as p return count(p)","duration":"48"}]
      

      Kill()

      Interrompt les processus en cours d'exécution dans l'instance.

      Paramètres :

      • string : ID du processus à tuer ; défini sur * pour tuer tous les processus.
      • bool : Définir sur true pour ignorer l'ID de processus et tuer tous les processus.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête. Si nil est fourni, la fonction utilisera les paramètres de configuration par défaut.

      Retours :

      • Response : Résultat de la requête.
      • error : Un objet d'erreur contenant des détails sur les problèmes survenus. nil est retourné si l'opération est réussie.

      // Récupère tous les processus en cours d'exécution et d'arrêt dans l'instance et tue tous
      
      myProcess, err := conn.Kill("*", true, nil)
      if err != nil {
        println(err)
      }
      
      println("Operation succeeds:", myProcess.IsSuccess())
      

      Operation succeeds: true
      

      Tâche

      Les algorithmes exécutés avec la méthode write() sont exécutés en tant que tâches. Ces tâches sont stockées dans le graphset pour lequel elles sont exécutées jusqu'à ce qu'elles soient supprimées.

      ShowTask()

      Récupère les tâches du graphset actuel.

      Paramètres :

      • string : Nom de l'algorithme ou l'ID de la tâche à récupérer.
      • TaskStatus : Statut de la tâche.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête. Si nil est fourni, la fonction utilisera les paramètres de configuration par défaut.

      Retours :

      • []Task : La liste de toutes les tâches dans le graphset.
      • error : Un objet d'erreur contenant des détails sur les problèmes survenus. nil est retourné si l'opération est réussie.

      requestConfig := &configuration.RequestConfig{
        UseMaster: true,
        GraphName: "miniCircle",
      }
      
      // Exécute un algorithme en tant que tâche dans le graphset 'miniCircle'
      
      _, err1 := conn.Uql("algo(louvain).params({phase1_loop_num: 20, min_modularity_increase: 0.001}).write({file:{filename_community_id: 'communityID', filename_ids: 'ids', filename_num: 'num'}})",
        requestConfig)
      if err1 != nil {
        println(err1)
      }
      time.Sleep(5 * time.Second)
      
      // Récupère la tâche ci-dessus et affiche les informations de la tâche
      
      myTask, _ := conn.ShowTask("louvain", structs.TaskStatusDone, requestConfig)
      println("TaskID:", myTask[0].TaskInfo.TaskID)
      println("Algo name:", myTask[0].TaskInfo.AlgoName)
      println("Task result:", utils.JSONString(myTask[0].Result))
      

      TaskID: 65843
      Algo name: louvain
      Task result: {"community_count":"10","modularity":"0.528182","result_files":"communityID,ids,num"}
      

      ClearTask()

      Efface (supprime) les tâches du graphset actuel. Les tâches avec le statut TaskStatusComputing et TaskStatusWriting ne peuvent pas être effacées.

      Paramètres :

      • string : Nom de l'algorithme ou l'ID de la tâche à récupérer.
      • TaskStatus : Statut de la tâche.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête. Si nil est fourni, la fonction utilisera les paramètres de configuration par défaut.

      Retours :

      • Response : Résultat de la requête.
      • error : Un objet d'erreur contenant des détails sur les problèmes survenus. nil est retourné si l'opération est réussie.

      requestConfig := &configuration.RequestConfig{
        UseMaster: true,
        GraphName: "miniCircle",
      }
      
      // Exécute un algorithme en tant que tâche dans le graphset 'miniCircle'
      
      _, err := conn.Uql("algo(degree).params({order: 'desc'}).write({file:{filename: 'degree_all'}})",
        requestConfig)
      if err != nil {
        println(err)
      }
      
      time.Sleep(1 * time.Second)
      
      // Efface la tâche ci-dessus et imprime le code d'erreur
      
      myTask, _ := conn.ShowTask("degree", structs.TaskstatusAll, requestConfig)
      myTaskID := myTask[0].TaskInfo.TaskID
      println("TaskID is:", myTaskID)
      
      tClear, _ := conn.ClearTask(utils.JSONString(myTaskID), structs.TaskStatusDone, requestConfig)
      println("Task cleared:", tClear.IsSuccess())
      

      TaskID is: 65874
      Task cleared: true
      

      StopTask()

      Arrête les tâches dont le statut est COMPUTING dans le graphset actuel.

      Paramètres :

      • string : ID de la tâche à arrêter ; défini sur * pour arrêter toutes les tâches.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête. Si nil est fourni, la fonction utilisera les paramètres de configuration par défaut.

      Retours :

      • Response : Résultat de la requête.
      • error : Un objet d'erreur contenant des détails sur les problèmes survenus. nil est retourné si l'opération est réussie.

      requestConfig := &configuration.RequestConfig{
        UseMaster: true,
        GraphName: "miniCircle",
      }
      
      // Exécute un algorithme en tant que tâche dans le graphset 'miniCircle'
      
      _, err := conn.Uql("algo(louvain).params({phase1_loop_num: 20, min_modularity_increase: 0.001}).write({file:{filename_community_id: 'communityID'}})",
        requestConfig)
      if err != nil {
        println(err)
      }
      
      // Arrête la tâche ci-dessus et imprime le code d'erreur
      
      myTask, _ := conn.ShowTask("louvain", structs.TaskstatusAll, requestConfig)
      myTaskID := myTask[0].TaskInfo.TaskID
      println("TaskID is:", myTaskID)
      
      // Récupère la tâche arrêtée ci-dessus
      
      tStop, _ := conn.StopTask(utils.JSONString(myTaskID), requestConfig)
      println("Task is stopped:", tStop.IsSuccess())
      

      TaskID is: 65886
      Task is stopped: true
      

      Exemple Complet

      package main
      
      import (
        "time"
      
        "github.com/ultipa/ultipa-go-sdk/sdk"
        "github.com/ultipa/ultipa-go-sdk/sdk/configuration"
        "github.com/ultipa/ultipa-go-sdk/sdk/structs"
        "github.com/ultipa/ultipa-go-sdk/utils"
      )
      
      func main() {
      
        // Configurations de connexion
        //Exemple URI: Hosts:=[]string{"mqj4zouys.us-east-1.cloud.ultipa.com:60010"}
          config, _ := configuration.NewUltipaConfig(&configuration.UltipaConfig{
          Hosts:    []string{"192.168.1.85:60061", "192.168.1.86:60061", "192.168.1.87:60061"},
          Username: "***",
          Password: "***",
        })
      
        // Établit la connexion à la base de données
        conn, _ := sdk.NewUltipa(config)
      
        // Configurations de requête
        requestConfig := &configuration.RequestConfig{
          UseMaster: true,
          GraphName: "miniCircle",
        }
      
        // Exécute un algorithme en tant que tâche dans le graphset 'miniCircle'
        
        _, err1 := conn.Uql("algo(louvain).params({phase1_loop_num: 20, min_modularity_increase: 0.001}).write({file:{filename_community_id: 'communityID', filename_ids: 'ids', filename_num: 'num'}})",
          requestConfig)
        if err1 != nil {
          println(err1)
        }
        time.Sleep(5 * time.Second)
      
        // Récupère la tâche ci-dessus
        myTask, _ := conn.ShowTask("louvain", structs.TaskStatusDone, requestConfig)
        println("TaskID:", myTask[0].TaskInfo.TaskID)
        println("Algo name:", myTask[0].TaskInfo.AlgoName)
        println("Task result:", utils.JSONString(myTask[0].Result))  
      };
      
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写