-
Notifications
You must be signed in to change notification settings - Fork 603
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs: rework why Ibis article to explain what Ibis is and other updat…
…es (#8490) ## Description of changes - add link to the Why VoDa blog post from who concept article - makes some formatting edits in the who concept article per guidelines - major rework of Why Ibis concept article, including what Ibis is - add RisingWave to install tabset ## Issues closed closes #8251 closes #8488
- Loading branch information
1 parent
1b84cd1
commit c44f357
Showing
4 changed files
with
365 additions
and
44 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
from __future__ import annotations | ||
|
||
import plotly.graph_objects as go | ||
|
||
backend_categories = { | ||
"SQL-generating": [ | ||
"BigQuery", | ||
"ClickHouse", | ||
"DataFusion", | ||
"Druid", | ||
"DuckDB", | ||
"Exasol", | ||
"Flink", | ||
"Impala", | ||
"MSSQL", | ||
"MySQL", | ||
"Oracle", | ||
"PostgreSQL", | ||
"PySpark", | ||
"RisingWave", | ||
"Snowflake", | ||
"SQLite", | ||
"Trino", | ||
], | ||
"Expression-generating": ["Dask", "Polars"], | ||
"Naïve execution": ["pandas"], | ||
} | ||
|
||
category_colors = { | ||
"Ibis API": "#999999", | ||
"Naïve execution": "#FF8C00", | ||
"Expression-generating": "#6A5ACD", | ||
"SQL-generating": "#3CB371", | ||
} | ||
|
||
nodes, links = [], [] | ||
node_index = {} | ||
|
||
nodes.append({"label": "Ibis API", "color": category_colors["Ibis API"]}) | ||
node_index["Ibis API"] = 0 | ||
|
||
|
||
idx = 1 | ||
for category, backends in backend_categories.items(): | ||
nodes.append({"label": category, "color": category_colors[category]}) | ||
node_index[category] = idx | ||
links.append({"source": 0, "target": idx, "value": len(backends)}) | ||
idx += 1 | ||
|
||
for backend in backends: | ||
if backend not in node_index: | ||
nodes.append({"label": backend, "color": category_colors[category]}) | ||
node_index[backend] = idx | ||
idx += 1 | ||
links.append( | ||
{ | ||
"source": node_index[category], | ||
"target": node_index[backend], | ||
"value": 1, | ||
} | ||
) | ||
|
||
|
||
fig = go.Figure( | ||
data=[ | ||
go.Sankey( | ||
node=dict( | ||
pad=20, | ||
thickness=20, | ||
line=dict(color="black", width=0.5), | ||
label=[node["label"] for node in nodes], | ||
color=[node["color"] for node in nodes], | ||
), | ||
link=dict( | ||
source=[link["source"] for link in links], | ||
target=[link["target"] for link in links], | ||
value=[link["value"] for link in links], | ||
), | ||
) | ||
] | ||
) | ||
|
||
fig.update_layout( | ||
title_text="Ibis backend types", font_size=14, margin=dict(l=30, r=30, t=80, b=30) | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.