- Run the shell to submit the pre-edited demo GQL:
bin/gql_submit.sh --gql geaflow/geaflow-examples/gql/sql_join_to_graph_demo.sqlHere, sql_join_to_graph_demo.sql is an SQL Join query in a simulated streaming graph. Its key content is as follows:
USE GRAPH dy_modern;
select u.name, friend.name
from person u, knows e, person friend
where u.id = e.srcId and e.targetId = friend.id
;This DSL reads node and edge data from the demo_job_data.txt resource file within the project to construct the graph.
Then, it performs a join query on nodes and edges of the graph dy_modern. The engine automatically translates the join semantics into a graph query.
- Output Results
You can print the contents of the result file by running the following command:
cat /tmp/geaflow/sql_join_to_graph_demo_result/partition_0 The query results are written to /tmp/geaflow/sql_join_to_graph_demo_result by default. Users can also customize the output path by modifying the geaflow.dsl.file.path parameter.
jim,jim
kate,kate
lily,lily
lucy,lucy
jim,jim
lucy,lucy
lucy,lucy
jack,jack
- Run the shell to submit the pre-edited demo GQL:
bin/gql_submit.sh --gql geaflow/geaflow-examples/gql/sql_join_to_graph_demo_02.sqlThe key content of the sql_join_to_graph_demo_02.sql file is as follows:
USE GRAPH dy_modern;
SELECT u.name,
friend_num
FROM person u,
(
SELECT srcId AS pid,
COUNT(DISTINCT targetId) AS friend_num
FROM knows
GROUP BY srcId
) t_friend_num
WHERE u.id = pid;This DSL reads node and edge data from the demo_job_data.txt resource file within the project to construct the graph.
Then, it performs a join query on nodes and edges of the graph dy_modern. The engine automatically translates the join semantics into a graph query.
- Output Results
You can print the contents of the result file by running the following command:
cat /tmp/geaflow/sql_join_to_graph_demo_02_result/partition_0 The query results are written to /tmp/geaflow/sql_join_to_graph_demo_02_result by default. Users can also customize the output path by modifying the geaflow.dsl.file.path parameter.
The results show the number of friends recorded for each person in the graph:
lucy,2
jim,1
kate,1
lily,1
jack,1