-
Notifications
You must be signed in to change notification settings - Fork 608
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
docs(tutorial): add a tutorial for the Flink backend #8085
docs(tutorial): add a tutorial for the Flink backend #8085
Conversation
0a43c28
to
1d67bbf
Compare
@chloeh13q for thelinting error you are getting, you can run the pre-commit and that should fix them. https://ibis-project.org/contribute/03_style |
1508f91
to
0305c5a
Compare
The remaining CI failure is because poetry add --group docs pyflink Then we will want to run poetry lock --no-upgrade to update the lock file, then push all those changes up. I think we also might need to re-create the |
If you have https://github.com/casey/just installed, you can run
|
This is unlikely to work, due to docs being built with nix. I suggest freezing the output for now until we can get this working properly. |
@@ -0,0 +1,35 @@ | |||
# Getting started |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Getting started | |
--- | |
execute: | |
freeze: auto | |
--- | |
# Getting started |
to freeze the output as it gets generated on your machine you can add this to the top of each of the qmd
files
* JDK 11 release: Flink requires Java 11. | ||
* Python 3.9 or 3.10. | ||
* Follow [the instructions on the Ibis project page](https://ibis-project.org/install) to install the Flink backend for Ibis. For the tutorial below, we assume that you already have the Ibis package correctly installed in your environment. | ||
* Clone the [example repository](https://github.com/claypotai/ibis-flink-example). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're hosting the example repo under our github account right now, but will most likely need to move this somewhere else (under ibis-project?), clean up some of the code, and figure out how best to structure multiple tutorials and blog posts.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this can now be updated to https://github.com/ibis-project/ibis-flink-example
c0d52d7
to
97438fa
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in general, wrap lines. I would keep the tutorial document a bit more simple and focused on getting the user up and running
* JDK 11 release: Flink requires Java 11. | ||
* Python 3.9 or 3.10. | ||
* Follow [the instructions on the Ibis project page](https://ibis-project.org/install) to install the Flink backend for Ibis. For the tutorial below, we assume that you already have the Ibis package correctly installed in your environment. | ||
* Clone the [example repository](https://github.com/claypotai/ibis-flink-example). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this can now be updated to https://github.com/ibis-project/ibis-flink-example
2ef9142
to
e07325f
Compare
@lostmygithubaccount Thanks for the review, I addressed all of your comments!
The intention is to get to the point where the user can write a transformation. If this is too long, I can split it into two and have the first tutorial go up to the point where we write a simple over aggregation, and the second post cover window aggregation and what the differences are (but the setup code would be identical, i.e. connect to a source, connect to a sink). Alternatively, we can just focus on window aggregation and get rid of the code for over aggregation. We can provide the code for over aggregation in the example repo but not explicitly talk about the syntax in this tutorial. What do you think? P.S. Still pending porting the complete code example to the new ibis-flink-example repo. |
dc555bd
to
87e9613
Compare
87e9613
to
916b9ab
Compare
916b9ab
to
9182e4e
Compare
9182e4e
to
5b7cfc1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks!
this should be good to merge. #8197 is a follow up |
@lostmygithubaccount BTW, we're also working on adding a visualization dashboard to the demo. We think it adds some fun elements and could help make the demo more interactive and tangible. We will provide the complete code for the dashboard so that all that the user needs to do is to spin up the service for the dashboard (via one line command) and then they should be able to see plots on a local port. Does that sound reasonable to you? (We can put this in a separate PR because we're still tweaking some parts) |
sounds great! follow up PR seems fine for that what kind of dashboard is this? Quarto? |
No it's a Dash app. It's not a part of the Quarto rendering - in the tutorial it would tell users to go to http://127.0.0.1:8050/ in the browser to see the dashboard. We're also thinking about adding a grafana dashboard for more complex visualizations, but won't tackle that now. |
why dash? if it's quarto we can put it right in the website (like the backend support matrix) |
From @mfatihaktas :
|
Quick note. Dash apps can be embedded in Quarto easily as |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks!
Description of changes
Add a tutorial for the Flink backend.