SQL/pgq:gql火箭的第一级
模式匹配只读子语言注定会成为完整CRUD GQL不可或缺的一部分。就像“GQL火箭的第一级”。这种紧密的联系是GQL项目建议书文件的一部分。
因此,GQL的任务之一是标准化许多方面,例如属性图数据模型、标签的使用以及查询谓词的属性。我们已经获得了一个标准的方法来处理已经可以用现有语言处理的事情。我们希望从各种类似的语言变成一种标准语言。
但是,我们也希望把供应商正在努力发展的产业创新成果带入到定义明确的属性图数据库的产品类别中?6?7。SQL/PGQ出现了新的趋势,如常规路径查询、嵌套路径和路径宏命令,这些都增强了流行的模式匹配范式的功能。GQL将添加其他尚未被所有供应商实施,但至少已被一家供应商实施的创新。
这就导致了SQL/PGQ无法实现,也不太可能实现的功能。
SQL生成表,而GQL生成图
SQL语言在一个关键方面与Cypher有很大不同。Cypher允许用户探索他们的数据图的结构,而无需事先知道将返回什么类型的数据。它们允许您进行真实的图形查询。在这方面,我们不仅要注意值,还要注意数据子集的形状,并定义与图形模式匹配的元素值。换句话说,图查询描述了针对一个或多个输入图计算的子图或投影图。
但是,SQL/PGQ、Cypher和PGQL只允许从图中提取一个表。这是一个必须保留的重要特性,因为否则就不可能获得存储在图元素中的实际数据值。但是将结果限制在表中意味着您不能轻松创建图转换链,也不能对多个输入图执行集合操作。您不能生成和存储快照地图,也不能定义地图投影视图。
GQL将以openCypher Morpheus为基础,结合LDBC G-CORE的灵感,为用户提供组合图查询语言来支持所有这些功能。这将使GQL在概念上等同于SQL。
我认为SQL标准社区在这里做了一个正确的决定:当SQL用户想要从图中查找和投影表时,让SQL引用GQL,但是当用户想要从图中查找和投影图时,使用GQL。这意味着我们可以生成图表并对它们进行分类。这些图形不仅是基于表的视图,也是离散和复杂的数据对象。
这涉及到SQL自然不适合的其他图形函数。
CRUD的图形模式
用于插入、更新和删除图形的DML语句与用于匹配和提取数据的DQL密切相关。因此,最好在两个操作中使用一组共享的以模式为中心的词汇表。这意味着GQL是一个适合在PGQ的“r”上添加“CUD”的环境。
您可以更新图形视图下的表格以获得相同的效果,但这使您无法享受图形数据模型的简单性和强大功能。这就像通过编写对所有基本表的更新来编写SQL视图:这是可能的,但会弄巧成拙。
SQL引用GQL
除了在SQL/PGQ中做的工作,GQL还增加了数据修改,所以我们开发了一个可参考性更强的GQL。如果SQL用户想要将数据从表格数据库推送到存储在数据库目录中的graph对象,自然要引用更多的GQL,并在SQL graph_MODIFY函数中专门为GRAPH执行工作。
我们二级公司早在2017年就在PGQ标准的讨论中首次提出“SQL引用了Cypher”,我们得到的评论是“Cypher是Neo4j一个可以引用的国际标准”。这促使我们直奔GQL。它将是一个官方的国际标准,可以被SQL引用。当然,随着时间的推移,我们可能会希望GQL引用SQL进行表操作!
属性图模式
这导致了SQL不适合的另一个主要功能。图的类型是其节点的类型,加上边的类型和它们可以连接的节点的类型。特定类型的节点和关系存储数据值:特定类型的标签和属性。
SQL没有这种进化概念:复杂类型用类型组合和参数化来表示。表示图形类型最自然的方法是显示它所编码的数据关系的模式。由元素内容的“记录类型”定义的属性图形类型应运而生,模式被用来将这些内容类型组合成节点和关系。
推荐阅读
- 长肉最猛的3种主食,就是你发胖的源头!米饭馒头都得靠边站!
- 牛奶靠边站 补钙就该吃这5种菜!
- 过年“健康零食”,它排第一!芝麻、花生都得靠边站!太香了!
- 春节待客就吃它,糖果饼干都得靠边站,太香了!
- 菠菜靠边站,补铁第一竟是它!和豆腐是绝配,这样做好吃更补血
- 冬天蒸包子白菜萝卜靠边站,用它调馅太香了,做一次吃3天
- dnf:盘点最贵的物品,什么魔剑流光刀只能靠边站
- 长肉最猛3种主食,米饭馒头都靠边站!常吃肝变肥变硬、癌上门,很多人还当早餐吃
- 萝卜白菜靠边站,它才是冬天的好蔬菜,好吃暖胃,汤汁都不剩!
- 羊肉、牛肉靠边站,它才是冬天“神仙肉”!男补肾女补血,小孩补脑老人补钙