修改密码

请输入密码
请输入密码 请输入8-64长度密码 和 email 地址不相同 至少包括数字、大写字母、小写字母、半角符号中的 3 个
请输入密码
提交

修改昵称

当前昵称:
提交

申请证书

证书详情

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

服务器的MAC地址

Please complete this required field.

Please complete this required field.

取消
申请
ID
产品
状态
核数
申请天数
审批时间
过期时间
MAC地址
申请理由
审核信息
关闭
基础信息
  • 用户昵称:
  • 手机号:
  • 公司名称:
  • 公司邮箱:
  • 地区:
  • 语言:
修改密码
申请证书

当前未申请证书.

申请证书
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

ProductName CreateTime ID Price File
ProductName CreateTime ID Price File

No Invoice

搜索
    中文

      简介

      什么是 UQL

      UQL 全称 Ultipa Graph Query Language,是 Ultipa 图数据库专用的高性能查询与管理语言,其极低的学习成本能让使用者快速上手操作 Ultipa 图系统。

      UQL 支持对图数据的添加、删除、修改、查询(元数据查找、路径查找、子图匹配)、图集管理、schema 管理、属性管理、索引管理、各类任务管理、权限管理等功能。

      可通过 Ultipa CLI(命令行工具)、Ultipa Manager(高可视化数据库查询与管理工具)、VS Code 及 Ultipa Drivers(SDK、APIs等规范)对 UQL 进行调用。

      UQL 的查询机制

      结构化的 UQL 语句输送给 Ultipa Server 后会进行自动解析、优化,再分配给高性能图计算引擎进行图查询,查询后的结果在执行完其余的处理、组装后最终返回给用户。

      UQL 的设计优势

      基于对图的深度理解并结合工业界对图的高维性、扩展性等需求,UQL 采用了与人脑思维模式一致的语义组装逻辑,在设计上具有以下优势:

      • 对点、边、路径、表格等高级数据结构的清晰定义
      • 对上述数据结构的轻松查询、计算、组装与返回
      • 对图查询所需的复杂过滤条件的简洁描述
      • 易读,易写,易学的语法结构

      UQL 的设计优势天然解决了 SQL-like 语言的无法表达高维数据、关联数据查询复杂低效、代码难理解、维护难度高等问题。

      为适应广大开发者的编程习惯,UQL 具备 DQL、DDL、DML、DCL 的语法特性:

      • DQL(Data Query Language):数据查询语法,如点、边、路径的查询;
      • DDL(Data Definition Language):数据定义语法,如增删图集、修改 schema、定义属性、创建索引等;
      • DML(Data Manipulation Language):数据操纵语法,如对图集的元数据等内容进行增、删、改;
      • DCL(Data Control Language):数据访问控制语法,主要用于设置数据库的权限,如用户管理、角色管理、赋权与撤销等。

      作为图查询语言,UQL 在整体功能与兼容性上将和 GQL 国际标准保持同步。该标准的制定工作由 LDBC(Linked Data Benchmark Council,国际关联数据基准委员会)主导,预计将在 2024 年推出。

      Ultipa 团队作为 LDBC 成员全程参与图查询语言 GQL 标准的制定。

      UQL 的构成

      UQL 的编写通常包含链式表达、语义组装、别名调用三个方面。其所采用的函数式风格能满足复杂的数据处理需求,提供无限的语义扩展空间。

      以下为一个典型的 UQL 示例:

      n({_id == "CA001"}).e({time > prev_e.time})[3].n(as target)
      group by target.level with count(target) as quantity
      order by quantity desc
      return target.level, quantity limit 10

      说明:

      • 链式语句:即示例中的 n(...).e(...)[3].n(...),风格为 [命令].[参数].[参数]…,用来增、删、改、查, 一个 UQL 语句可以包含多个链式语句;
      • 子句:即示例中的 group by ...with ...order by ...return ...limit ...,用来加工和组装前面得到的结果;
      • 自定义别名:即示例中的 targetquantity,用来在语句间进行数据调用,需使用关键词 as 先定义再调用;
      • 系统别名:即示例中的 prev_e,用来在模板内部进行数据调用,无需定义直接使用;
      • 函数:即示例中的 count(...),用来对得到的结果进行运算,需要写在子句中;
      • UQL 语句中支持转义符 \、制表符 \t、回车换行符 \r\n 以及注释符 ///**/

      版本更新(V4.3)

      服务器:

      • 重构了 EXTA
      • Server.config 的参数 private_addrpublic_addr 支持域名
      • Property 新增 sub_types

      UQL 新特性:

      • 新增了属性类型 doubledecimalpointbloblistset
      • 支持属性值 null 及其相关运算
      • 聚合运算函数忽略 null
      • 新增多个空间函数、字符串函数、列表函数、类型转换函数
      • 新增操作符 IS NULL, IS NOT NULL, DISTINCT
      • 命令 find()、khop() 支持前缀关键词 OPTIONAL
      • 新增前缀词 TRY 和 DEBUG
      • 支持属性加密存储、属性访问权限
      • 新增与数据增删改相关的触发器功能
      • 新增数据库备份与恢复功能

      UQL 修改:

      • 函数名称变化:
        • distinct() -> dedup()
      • 函数 collect() 收集点、边、路径的全部信息
      • 别名数据结构去掉 ARRAY,将 list 类型合并至 ATTR
      • 插入数据时未提供的属性、插入数据后创建的属性值为 null
      • 重构了前缀关键词 EXPLAIN、PROFILE

      Ultipa 图操作语言 Ultipa 团队发明并设计。

      文件许可:Creative Commons 4.0

      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写