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.

      Process

      Toutes les requêtes UQL, sauf les 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 une fois terminés 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.

      Retourne :

      • List<Process>: La liste de tous les processus dans l'instance.

      // Récupère tous les processus en cours d'exécution et d'arrêt de l'instance
      
      List<Process> processList = client.top();
      for (Process process : processList) {
          System.out.println(process.getProcessId() + " " + process.getProcessUql());
      }
      

      a_0_539_2 n({_uuid > 300}).e()[:3].n() as p RETURN p{*} LIMIT 500
      

      kill()

      Arrête les processus en cours d'exécution dans l'instance.

      Paramètres :

      • String: ID du processus à arrêter ; défini sur * pour arrêter tous les processus.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response: Résultat de la requête.

      // Récupère tous les processus en cours d'exécution et d'arrêt de l'instance et les arrête tous
      
      List<Process> processList = client.top();
      for (Process process : processList) {
          System.out.println(process.getProcessId() + " " + process.getProcessUql());
      }
      Response response = client.kill("*"); 
      System.out.println(response.getStatus().getErrorCode());
      

      a_0_540_2 n({_uuid > 300}).e()[:3].n() as p RETURN p{*} LIMIT 500
      SUCCESS
      

      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 contre lequel elles sont exécutées jusqu'à leur suppression.

      showTask()

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

      Paramètres :

      • ShowTask (Optionnel) : Configurations pour la tâche à récupérer, incluant id:String, name:String et status:TaskStatus (id a la priorité lorsque id et name sont tous deux définis); si ignoré, toutes les tâches sont récupérées.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • List<Task>: La liste de toutes les tâches dans le graphset.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraphName("miniCircle");
      
      // Exécute un algorithme en tant que tâche dans le graphset 'miniCircle'
      
      Response response = client.uql("algo(degree).params({order: 'desc'}).write({file:{filename: 'degree_all'}})", requestConfig);
      String taskID = (String) response.alias("_task").asTable().getRows().get(0).get(0);
      Thread.sleep(3000);
      
      // Récupère la tâche ci-dessus
      
      ShowTask showTask = new ShowTask();
      showTask.setId(taskID);
      //showTask.setName("degree");
      showTask.setStatus(TaskStatus.DONE);
      
      List<Task> taskList = client.showTask(showTask, requestConfig);
      for (Task task : taskList) {
          System.out.println("Task ID: " + task.getTaskInfo().getTaskId());
          System.out.println("Server ID: " + task.getTaskInfo().getServerId());
          System.out.println("Algo Name: " + task.getTaskInfo().getAlgoName());
          System.out.println("Task Params: " + task.getParam().toString());
          System.out.println("Task Result: " + task.getResult().toString());
      }
      

      Task ID: 54240
      Server ID: 3
      Algo Name: degree
      Task Params: {order=desc}
      Task Result: {total_degree=590.000000, avarage_degree=1.940789, result_files=degree_all}
      

      clearTask()

      Efface (Supprime) les tâches du graphset actuel. Les tâches ayant le statut COMPUTING et WRITING ne peuvent pas être effacées.

      Paramètres :

      • ClearTask (Optionnel) : Configurations pour la tâche à effacer, incluant id:Integer, name:String et status:TaskStatus (id a la priorité lorsque id et name sont tous deux définis); si ignoré, toutes les tâches sont effacées.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retourne :

      • Response: Résultat de la requête.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraphName("miniCircle");
      
      // Exécute un algorithme en tant que tâche dans le graphset 'miniCircle'
      
      Response response = client.uql("algo(degree).params({order: 'desc'}).write({file:{filename: 'degree_all'}})", requestConfig);
      String id = (String) response.alias("_task").asTable().getRows().get(0).get(0);
      Integer taskID = Integer.parseInt(id);
      Thread.sleep(3000);
      
      // Efface la tâche ci-dessus
      
      ClearTask clearTask = new ClearTask();
      clearTask.setId(taskID);
      //clearTask.setName("degree");
      clearTask.setStatus(TaskStatus.DONE);
      
      Response response1 = client.clearTask(clearTask, requestConfig);
      System.out.println("Task " + taskID + " cleared: " + response1.getStatus().getErrorCode());
      

      Task 54242 cleared: SUCCESS
      

      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.

      Retourne :

      • Response: Résultat de la requête.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraphName("Ad_Click");
      
      // Exécute un algorithme en tant que tâche dans le graphset 'Ad_Click'
      
      Response response = client.uql("algo(louvain).params({phase1_loop_num: 20, min_modularity_increase: 0.001}).write({file:{filename_community_id: 'communityID'}})", requestConfig);
      String taskId = (String) response.get(0).asTable().getRows().get(0).get(0);
      
      // Arrête la tâche ci-dessus et imprime le code erreur
      
      Response response1 = client.stopTask(taskId, requestConfig);
      System.out.println("Task " + taskId + " stopped: " + response1.getStatus().getErrorCode());
      
      // Récupère la tâche arrêtée ci-dessus
      ShowTask showTask = new ShowTask();
      showTask.setId(taskId);
      showTask.setStatus(TaskStatus.STOP);
      
      Thread.sleep(3000);
      
      List<Task> taskList = client.showTask(showTask, requestConfig);
      for (Task task : taskList) {
          System.out.println("Task ID: " + task.getTaskInfo().getTaskId());
          System.out.println("Server ID: " + task.getTaskInfo().getServerId());
          System.out.println("Algo Name: " + task.getTaskInfo().getAlgoName());
          System.out.println("Task Params: " + task.getParam().toString());
          System.out.println("Task Result: " + task.getResult().toString());
      }
      

      Task 54248 stopped: SUCCESS
      Task ID: 54248
      Server ID: 3
      Algo Name: louvain
      Task Params: {phase1_loop_num=20, min_modularity_increase=0.001}
      Task Result: {community_count=1228589, modularity=0.647601}
      

      Exemple Complet

      package com.ultipa.www.sdk.api;
      
      import com.ultipa.sdk.connect.Connection;
      import com.ultipa.sdk.connect.conf.RequestConfig;
      import com.ultipa.sdk.connect.conf.UltipaConfiguration;
      import com.ultipa.sdk.connect.driver.UltipaClientDriver;
      import com.ultipa.sdk.connect.request.ShowTask;
      import com.ultipa.sdk.operate.entity.*;
      import com.ultipa.sdk.operate.enums.TaskStatus;
      import com.ultipa.sdk.operate.response.Response;
      import java.util.List;
      
      public class Main {
          public static void main(String[] args) {
              // Configurations de connexion
              UltipaConfiguration myConfig = UltipaConfiguration.config()
                  // URI exemple : .hosts("mqj4zouys.us-east-1.cloud.ultipa.com:60010")
                  .hosts("192.168.1.85:60611,192.168.1.87:60611,192.168.1.88:60611")
                  .username("<username>")
                  .password("<password>");
      
              UltipaClientDriver driver = null;
              try {
                  // Établit une connexion à la base de données
                  driver = new UltipaClientDriver(myConfig);
                  Connection client = driver.getConnection();
      
                  Thread.sleep(3000);
                
                  RequestConfig requestConfig = new RequestConfig();
                  requestConfig.setGraphName("miniCircle");
      
                  // Exécute un algorithme en tant que tâche dans le graphset 'miniCircle'
      
                  Response response = client.uql("algo(degree).params({order: 'desc'}).write({file:{filename: 'degree_all'}})", requestConfig);
                  String taskID = (String) response.alias("_task").asTable().getRows().get(0).get(0);
                  Thread.sleep(3000);
      
                  // Récupère la tâche ci-dessus
      
                  ShowTask showTask = new ShowTask();
                  showTask.setId(taskID);
                  //showTask.setName("degree");
                  showTask.setStatus(TaskStatus.DONE);
      
                  List<Task> taskList = client.showTask(showTask, requestConfig);
                  for (Task task : taskList) {
                      System.out.println("Task ID: " + task.getTaskInfo().getTaskId());
                      System.out.println("Server ID: " + task.getTaskInfo().getServerId());
                      System.out.println("Algo Name: " + task.getTaskInfo().getAlgoName());
                      System.out.println("Task Params: " + task.getParam().toString());
                      System.out.println("Task Result: " + task.getResult().toString());
                  }
              } catch (InterruptedException e) {
                  throw new RuntimeException(e);
              } finally {
                  if (driver != null) {
                      driver.close();
                  }
              }
          }
      }
      
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写