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

[GIE Doc] Add Tutorials for Gremlin Users #2369

Merged
merged 10 commits into from
Jan 6, 2023
Merged

Conversation

shirly121
Copy link
Collaborator

What do these changes do?

as titled.

Related issue number

Fixes

@zhanglei1949
Copy link
Collaborator

You can check the doc preview at https://alibaba-graphscope-build-pr-2369.surge.sh/

@shirly121
Copy link
Collaborator Author

shirly121 commented Jan 4, 2023

docs/index.rst Outdated
@@ -244,6 +244,7 @@ each of which can be independently scaled to chase for the best end-to-end throu
cpp_tutorials
walkthrough_examples_acrossing_engines
video_tutorials
gremlin_tutorials
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can be place under cpp tutorials.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updated. 74f4323

# Tutorials for Gremlin Users

## Introduction
This documentation guides you how to work with the gremlin graph traversal language in GraphScope. On the one hand we retain the original syntax of most steps from the standard gremlin, on the other hand the usages of some steps are further extended to denote more complex situations in real-world scenarios.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe insert a link to the official gremlin guide somewhere?


## Introduction
This documentation guides you how to work with the gremlin graph traversal language in GraphScope. On the one hand we retain the original syntax of most steps from the standard gremlin, on the other hand the usages of some steps are further extended to denote more complex situations in real-world scenarios.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this file is very long, It would be better if we could add an index here.
e.g.,

  • Supported Steps
  • Limitations

and link them to corresponding sections.


Parameters: </br>
* predicate - the predicate containing another tag to apply.
```bash
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please check the code in the preview link.
It is too long to display in a page.
Maybe following our style guide to wrap at 80 chars is an option.
Or please wrap it manually to make it graceful in a page :)

```
* startKey - the tag containing the object to filter, </br> predicate - the predicate containing another tag to apply.
```bash
g.V().as("a").out().out().as("b").where("b", P.eq("a")) # is the entry referred by `b` equal to the entry referred by `a`?
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto, and check the following codes.

## Limitations
Here we list steps which are unsupported yet. Some will be supported in the near future while others will remain unsupported for some reasons.

### Todo
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Todo -> To be supported

g.V().fold().count(local)
g.V().values('age').fold().sum(local)
```
### Others
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Others -> Unsupported
maybe more cleare?

docs/index.rst Outdated
@@ -40,6 +40,7 @@ and the vineyard store that offers efficient in-memory data transfers.
python_tutorials
java_tutorials
cpp_tutorials
gremlin_tutorials
Copy link
Collaborator

@yecol yecol Jan 6, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, I don't think this file is like a tutorial:
A tutorial is more like a step-by-step guide and wrapped up as a story/process.

For example, if there will be a gremlin_tutorial here,
I would expect it covers these sections:

  • a brief introduction to Gremlin;
  • Launch the GAIA;
  • loading a graph data (maybe a drawing visualizing the graph)
  • supported gremlin-client, how to connect the server;
  • connected, several gremlin queries as examples, full steps please refer to THIS file

conclusively, it maybe more like
The First Five Minutes or The Next Fifteen Minutes in the official doc.

This file is more like an indexing page listing all available/unavailable steps.
Thus, I suggest rename this file as "Supported Gremlin Steps" and put it under ADVANCED TOPICS as below:

  • dive into engines (which will expand to each engine, as below)
  • analytical engine... (To appear)
  • GAIA: interactive engine (To appear)
  • Supported Gremlin Steps

How do you think?

Copy link
Collaborator

@yecol yecol left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@yecol yecol merged commit bb80bbc into alibaba:main Jan 6, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Jan 6, 2023

😭 Deploy PR Preview bb80bbc failed. Build logs

🤖 By surge-preview

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

Successfully merging this pull request may close these issues.

None yet

4 participants