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 Graphset

      Cette section introduit des méthodes sur un objet Connection pour gérer des graphsets dans la base de données.

      Chaque exemple est concentré exclusivement sur l'utilisation de la méthode. Pour un exemple de code complet, veuillez vous référer à l'exemple complet.

      ShowGraph()

      Récupère tous les graphsets de la base de données.

      Paramètres :

      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

      • List<GraphSet> : La liste de tous les graphsets dans la base de données.

      // Récupère tous les graphsets et affiche les noms de ceux qui ont plus de 2000 edges
      
      var graphsetList = await ultipa.ShowGraph();
      
      foreach (var graph in graphsetList)
      {
          if (graph.TotalEdges > 2000)
          {
              Console.WriteLine(graph.Name);
          }
      }
      

      Display_Ad_Click
      ERP_DATA2
      wikiKG
      

      GetGraph()

      Récupère un graphset de la base de données par son nom.

      Paramètres :

      • string : Nom du graphset.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

      • GraphSet : Le graphset récupéré.

      // Récupère le graphset nommé 'wikiKG' et affiche toutes ses informations
      
      var graph = await ultipa.GetGraph("wikiKG");
      Console.WriteLine(
          $"ID: {graph.Id}\n"
              + $"Name: {graph.Name}\n"
              + $"TotalNodes: {graph.TotalNodes}\n"
              + $"TotalEdges: {graph.TotalEdges}\n"
              + $"Status: {graph.Status}\n"
              + $"Description: {graph.Desc}"
      );
      

      True
      ID: 13844
      Name: wikiKG
      TotalNodes: 44449
      TotalEdges: 167799
      Status: MOUNTED
      Description:
      

      CreateGraph()

      Crée un nouveau graphset dans la base de données.

      Paramètres :

      • GraphSet : Le graphset à créer ; le champ name doit être défini, description est optionnel.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // Crée un graphset et affiche le code d'erreur
      
      var graph = new GraphSet();
      graph.Name = "testCSharpSDK";
      graph.Desc = "Description for testCSharpSDK";
      
      var resp = await ultipa.CreateGraph(graph);
      Console.WriteLine(resp.Status.ErrorCode);
      

      Un nouveau graphset testCSharpSDK est créé dans la base de données, et le pilote affiche :

      Success
      

      CreateGraphIfNotExist()

      Crée un nouveau graphset dans la base de données, en gérant les cas où le nom de graphset donné existe déjà en ignorant l'erreur.

      Paramètres :

      • GraphSet : Le graphset à créer ; le champ name doit être défini, description est optionnel.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

      • UqlResponse : Résultat de la requête.
      • bool : Si le graphset existe déjà.

      // Crée un graphset et affiche le code d'erreur
      
      var graph = new GraphSet();
      graph.Name = "testCSharpSDK";
      graph.Desc = "Description for testCSharpSDK";
      
      var resp1 = await ultipa.CreateGraphIfNotExist(graph);
      Console.WriteLine("Graph already exists: " + resp1.Item2);
      Console.WriteLine(
          "First creation: " + (resp1.Item1 != null ? resp1.Item1.Status.ErrorCode : "null")
      );
      
      // Tente de créer le même graphset à nouveau et affiche le code d'erreur
      
      var resp2 = await ultipa.CreateGraphIfNotExist(graph);
      Console.WriteLine("Graph already exists: " + resp2.Item2);
      Console.WriteLine(
          "Second creation: " + (resp2.Item1 != null ? resp2.Item1.Status.ErrorCode : "Failed")
      );
      

      Un nouveau graphset testCSharpSDK est créé dans la base de données, et le pilote affiche :

      Graph already exists: False
      First creation: Success
      Graph already exists: True
      Second creation: Failed
      

      DropGraph()

      Supprime un graphset de la base de données par son nom.

      Paramètres :

      • string : Nom du graphset.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // Crée un graphset puis le supprime, affiche le résultat
      
      var graph = new GraphSet();
      graph.Name = "testCSharpSDK";
      graph.Desc = "Description for testCSharpSDK";
      
      var newGraph = await ultipa.CreateGraph(graph);
      Console.WriteLine("Creation: " + newGraph.Status.ErrorCode);
      
      Thread.Sleep(2000);
      
      var dropIt = await ultipa.DropGraph("testCSharpSDK");
      Console.WriteLine(JsonConvert.SerializeObject(dropIt));
      

      Creation: Success
      {"UqlReply":{"Status":{"ErrorCode":0,"Msg":"","ClusterInfo":null},"TotalTimeCost":0,"EngineTimeCost":0,"Alias":[],"Paths":[],"Nodes":[],"Edges":[],"Attrs":[],"Graphs":[],"Tables":[],"Statistics":null,"ExplainPlan":null},"Status":{"ErrorCode":0,"Msg":"","ClusterInfo":null},"Statistic":{"NodeAffected":0,"EdgeAffected":0,"TotalCost":6,"EngineCost":0},"Explain":[]}
      

      AlterGraph()

      Modifie le nom et la description d'un graphset existant dans la base de données par son nom.

      Paramètres :

      • GraphSet : Le graphset existant à modifier ; le champ name doit être défini.
      • GraphSet : La nouvelle configuration pour le graphset existant ; l'un ou les deux champs name et description doivent être définis.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // Renomme le graphset 'testCSharpSDK' en 'newGraph', définit une description pour lui, et affiche le résultat
      
      var graph1 = new GraphSet();
      graph1.Name = "testCSharpSDK";
      var newGraph = await ultipa.CreateGraph(graph1);
      
      var graph2 = new GraphSet();
      graph2.Name = "newGraph";
      graph2.Desc = "The graphset is altered";
      
      var alterIt = await ultipa.AlterGraph(graph1, graph2);
      Console.WriteLine(JsonConvert.SerializeObject(alterIt));
      

      {"UqlReply":{"Status":{"ErrorCode":0,"Msg":"","ClusterInfo":null},"TotalTimeCost":0,"EngineTimeCost":0,"Alias":[],"Paths":[],"Nodes":[],"Edges":[],"Attrs":[],"Graphs":[],"Tables":[],"Statistics":null,"ExplainPlan":null},"Status":{"ErrorCode":0,"Msg":"","ClusterInfo":null},"Statistic":{"NodeAffected":0,"EdgeAffected":0,"TotalCost":1,"EngineCost":0},"Explain":[]}
      

      Truncate()

      Tronque (supprime) les nodes ou edges spécifiés dans le graphset donné ou tronque l'ensemble du graphset. Notez que tronquer des nodes provoquera la suppression des edges attachés à ces nodes affectés. L'opération de tronquage conserve la définition des schemas et des properties tout en supprimant les données.

      Paramètres :

      • TruncateParams : L'objet à tronquer ; le champ graphName doit être défini, schema et DbType sont optionnels, mais si schema ou DbType est défini, l'autre doit l'être aussi.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // Tronque les nodes @user dans le graphset 'myGraph_1' et affiche le code d'erreur
      
      var truncate1 = new GraphAPI.TruncateParams()
      {
          graphName = "myGraph_1",
          schema = "user",
          DbType = DBType.Dbnode,
      };
      var res1 = await ultipa.Truncate(truncate1);
      Console.WriteLine(res1.Status.ErrorCode);
      
      // Tronque tous les edges dans le graphset 'myGraph_2' et affiche le code d'erreur    
      
      var truncate2 = new GraphAPI.TruncateParams()
      {
          graphName = "myGraph_2",
          schema = "*",
          DbType = DBType.Dbedge,
      };
      var res2 = await ultipa.Truncate(truncate2);
      Console.WriteLine(res2.Status.ErrorCode); 
      
      // Tronque le graphset 'myGraph_3' et affiche le code d'erreur
      
      var truncate3 = new GraphAPI.TruncateParams() { graphName = "myGraph_3" };
      var res3 = await ultipa.Truncate(truncate3);
      Console.WriteLine(res3.Status.ErrorCode);
      

      Success
      Success
      Success
      

      CompactGraph()

      Compacte un graphset en nettoyant ses données invalides et redondantes sur le disque serveur. Les données valides ne seront pas affectées.

      Paramètres :

      • string : Nom du graphset.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // Compacte le graphset 'miniCircle' et affiche le code d'erreur
      
      var res = await ultipa.CompactGraph("miniCircle");
      Console.WriteLine(res.Status.ErrorCode);
      

      Success
      

      HasGraph()

      Vérifie l'existence d'un graphset dans la base de données par son nom.

      Paramètres :

      • string : Nom du graphset.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // Vérifie l'existence du graphset 'miniCircle' et affiche le résultat
      
      var res = await ultipa.HasGraph("miniCircle");
      Console.WriteLine("Graph exists: " + res);
      

      Graph exists: True
      

      UnmountGraph()

      Démonte un graphset pour économiser la mémoire de la base de données.

      Paramètres :

      • string : Nom du graphset.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // / Démonte les graphsets 'miniCircle' et affiche le résultat
      
      var res = await ultipa.UnMountGraph("miniCircle");
      Console.WriteLine(res.Status.ErrorCode);
      

      Success
      

      MountGraph()

      Monte un graphset dans la mémoire de la base de données.

      Paramètres :

      • string : Nom du graphset.
      • RequestConfig (Optionnel) : Paramètres de configuration pour la requête.

      Retours :

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

      // Monte les graphsets 'miniCircle' et affiche le résultat
      
      var res = await ultipa.MountGraph("miniCircle");
      Console.WriteLine(res.Status.ErrorCode);
      

      Success
      

      Exemple Complet

      using System.Security.Cryptography.X509Certificates;
      using System.Threading;
      using System.Xml.Linq;
      using Microsoft.Extensions.Logging;
      using Newtonsoft.Json;
      using UltipaService;
      using UltipaSharp;
      using UltipaSharp.api;
      using UltipaSharp.configuration;
      using UltipaSharp.connection;
      using UltipaSharp.exceptions;
      using UltipaSharp.structs;
      using UltipaSharp.utils;
      using Logger = UltipaSharp.utils.Logger;
      using Property = UltipaSharp.structs.Property;
      using Schema = UltipaSharp.structs.Schema;
      
      class Program
      {
          static async Task Main(string[] args)
          {
              // Configuration de la connexion
              //Exemple URI: Hosts=new[]{"mqj4zouys.us-east-1.cloud.ultipa.com:60010"}
              var myconfig = new UltipaConfig()
              {
                  Hosts = new[] { "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
              var ultipa = new Ultipa(myconfig);
              var isSuccess = ultipa.Test();
              Console.WriteLine(isSuccess);
             
              // Configuration des requêtes
              RequestConfig requestConfig = new RequestConfig() { UseMaster = true };
        
      
              // Crée un nouveau graphset 'testCSharpSDK'  
      
              var graph = new GraphSet();
              graph.Name = "testCSharpSDK";
              graph.Desc = "Description for testCSharpSDK";
      
              var newGraph = await ultipa.CreateGraph(graph);
              Console.WriteLine("Creation: " + newGraph.Status.ErrorCode);
      
              Thread.Sleep(2000);
      
              // Supprime le graphset 'testCSharpSDK' juste créé
              var dropIt = await ultipa.DropGraph("testCSharpSDK");
              Console.WriteLine(dropIt.Status.ErrorCode);
      
        }
      }
      
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写