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

GitHub issues burndown chart & survival analysis #8

Open
stas-sl opened this issue Apr 17, 2022 · 5 comments
Open

GitHub issues burndown chart & survival analysis #8

stas-sl opened this issue Apr 17, 2022 · 5 comments

Comments

@stas-sl
Copy link

stas-sl commented Apr 17, 2022

Hello, thanks for providing this dataset!

Not sure if this is the right place to post, but I used it my Observable notebook to analyze how long do issues "live" and to create some "burndown" charts.

After playing a bit with Observable + ClickHouse, I found it to be a great combo for performing and sharing such explorations.

Here are some charts for ClickHouse repo:

image

image

@alexey-milovidov
Copy link
Member

Thank you! The charts are amazing and the showcase of using Observable is what we need!
PS. It's sad that I often miss notifications from GitHub, so I've noticed this issue only today.

@alexey-milovidov
Copy link
Member

FYI created issue after reading previous Observable notebook: ClickHouse/ClickHouse#37024

@stas-sl
Copy link
Author

stas-sl commented May 8, 2022

Great, thanks! I was wondering why it wasn't working.

@tylerhannan
Copy link
Member

@stas-sl - This is super amazing.

If you are interested, I'd love to hear a bit more about your experience. Would also be super excited if you are interested in writing a blogpost about the integration on clickhouse.com !

@stas-sl
Copy link
Author

stas-sl commented May 9, 2022

Thanks, @tylerhannan!

I would say my experience was pretty enjoyable, I liked working with Observable and ClickHouse, they are both great and promising products. I came to Observable having previously working with Jupyter Notebooks, so it took some time to adapt to its reactivity model, when cells are not executed from top to bottom, but instead there is a dependency graph of cells, and whenever a parent cell changes, all descendants are re-evaluated.

Of course there are obvious cons and pros comparing to Jupyter Notebooks. The cons are that you don't have access to large number of python data-science packages like pandas/numpy/scikit-learn. The pros are that you don't need a running server, you can start exploring/prototyping in your browser with just a few clicks, and it is much easier to add interactivity to your notebooks. Also I like that it is easy to share your work and explore others, or reuse what others have done by forking/importing their notebooks.

Considering integration with CH, I created a basic client wrapper over HTTP interface, which allowed to create SQL cells inside Observable notebooks. I've tried to use existing Nodejs libraries like this one, but I was unable to make them work in browser. If you aware of other JS client libraries that could work there, I would be interested to know.

Also they have out of the box support for some common databases like Postgres, MySQL, SQLite, BigQuery, Snowflake. I believe, if there would be a good JS client and enough demand/motivation, they could easily add ClickHouse to this list. That would be great!

One issue, I faced, that should be mentioned, as it is quite important, is caching results in public/shared notebooks. The immediate downside of reactivity model of this kind, is that whenever you are opening a notebook, all its cells are re-evaluated including those that querying the database, so if you have many queries, it could cause a mini DDoS attack on your server, so you have to be cautious with that. I've used an ad-hoc workaround to cache query results in file attachments, but being able to switch to live via checkbox. While it solved the issue, it required more manual work, than I'd like. These are known issues (observablehq/feedback#381, observablehq/feedback#58,
observablehq/feedback#175) and I hope, they will be addressed in the future.

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

No branches or pull requests

3 participants