Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User-Interactive Graph Pattern Query Tool #3740

Open
pomelo-nwu opened this issue Apr 23, 2024 · 1 comment
Open

User-Interactive Graph Pattern Query Tool #3740

pomelo-nwu opened this issue Apr 23, 2024 · 1 comment
Assignees

Comments

@pomelo-nwu
Copy link
Collaborator

Project Description:

The advent of the Graph Query Language (GQL) standard signifies the maturation of graph technology development. While the development standard has been established for developers. learning, comprehending, and constructing GQL statements remains a significant challenge for ordinary users.

This project aims to develop a user-interactive graph pattern query tool that empowers users to define query patterns and filter conditions aligned with business semantics through intuitive visual operations such as drawing, dragging, and editing. The system will dynamically translate these operations into the corresponding standard query language, facilitating seamless integration between user intent and database queries, and unlocking the full potential of user-driven analysis.

User Scenario Example:

A user drags a circular node onto the interface, specifies its type as "Person," and filters the age distribution of nodes based on the "age" attribute, selecting nodes with ages between 18 and 28. Upon clicking the "Query" button, the system converts these operations into the corresponding Cypher query statement:

MATCH (p:Person) WHERE p.age >= 18 AND p.age <= 28 RETURN p

Project Deliverables:

  • Provide users with a comprehensive UI interface that enables them to express their graph pattern intentions for nodes, edges, attributes, paths, and other graph elements.
  • Implement real-time Cypher statement conversion based on user interaction results.

Challenging Goals:

  • Define a JSON configuration file (GPE) to facilitate graph pattern expression and support file import and export functionalities.
  • Enhance GPE to enable conversion across multiple query languages, including Cypher, Gremlin, and GQL.
  • Leverage LLM capabilities to support user-uploaded sketch graphs for graph pattern conversion and query execution.

Project Difficulty: Advanced

Skill Requirements:

  • HTML
  • JavaScript
@pomelo-nwu
Copy link
Collaborator Author

基于用户交互的图模式查询工具

项目描述:

随着图查询语言 GQL 标准的发布,标志着图技术的发展已进入成熟阶段。虽然开发者的研发标准确定了,但是对于普通用户而言,学习,理解,编写 GQL 语句依然是一个很高的门槛。
本项目旨在开发一套基于用户交互的图模式查询工具,通过手绘,拖拽,编辑等直观的可视化操作,让用户定义符合业务语义的查询模式,过滤条件。系统实时将其转化为对应的标准查询语言,实现用户意图与数据库查询之间的无缝对接,极大释放用户自主分析的潜力。

用户场景举例:

用户在界面中拖拽一个圆形节点,将其类型指定为 Person,并在该节点的年龄属性 (age) 上数值分布上,筛选年龄位于 18 至 28 岁之间。当用户点击“查询”按钮时,系统将这些操作转化为对应的 Cypher 查询语句:

MATCH (p:Person) WHERE p.age >= 18 AND p.age <= 28 RETURN p 

项目产出:

  • 为用户提供一套 UI 交互,能够实现用户对于节点,边,属性,路径等图模式意图表达。
  • 根据用户的交互结果,实现对于 Cypher 语句的转化

挑战型目标:

  • 定义一份 JSON 配置文件(简称 GPE ),来实现这种表达,并支持文件的导入与导出功能。
  • GPE 能够支持 Cypher/Gremlin/GQL 等多查询语言的转化
  • 基于 LLM 能力,支持用户上传草稿图进行图模式的转化与查询

难度: 进阶

技能要求:HTML,Javascript,Canvas 等

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants