sqlfow was comprised of two parts: frontend and backend.
-
Send the SQL script received from the browser in JSON to the backend.
-
After receiving the result which includes the data lineage and diagram model generated by the backend, visualize the diagram model in the browser.
-
Highlight the dataflow in the diagram when the user clicks on a specific column.
-
SQLFlow
: receiving the SQL script from the frontend and parse the SQL script into parse tree nodes by utilizing the GSP library, then calculate the dlineage by analyzing AST. -
FlowLayout
: Calculating the layout of database objects(table/column) in the dlineage and generate the diagram model with all necessary position data, including nodes and edges.FlowLayout
depends ondoLayout library
to layout the database objects. -
Return a JSON snippet including the data lineage and diagram model to the frontend.
sqlfow was comprised of two parts: frontend and backend. The frontend and backend can be installed on the same server, or they can be installed seperated on two different servers.