feat(pipeline): deploy e2e_cems_industrial_emissions_flow from MERICA Canvas UI

This commit is contained in:
2026-10-19 04:04:02 +07:00
parent 13835055b1
commit ab5ba1d7a7
4 changed files with 97 additions and 81 deletions
@@ -6,7 +6,7 @@
"owner_name": "Administrator Lokal (Break-Glass)",
"nodes": [
{
"id": "node-1975",
"id": "node-6716",
"type": "customNode",
"position": {
"x": 80,
@@ -32,7 +32,7 @@
"dragging": false
},
{
"id": "node-3042",
"id": "node-7780",
"type": "customNode",
"position": {
"x": 270,
@@ -61,7 +61,7 @@
"dragging": false
},
{
"id": "node-4059",
"id": "node-8779",
"type": "customNode",
"position": {
"x": 460,
@@ -87,7 +87,7 @@
"dragging": false
},
{
"id": "node-5075",
"id": "node-9796",
"type": "customNode",
"position": {
"x": 650,
@@ -123,7 +123,7 @@
"dragging": false
},
{
"id": "node-6110",
"id": "node-0811",
"type": "customNode",
"position": {
"x": 840,
@@ -136,14 +136,14 @@
"configured": true,
"config": {
"layer": "silver",
"source_parquet_path": "s3://dlh-bronze/staging/raw_cems_telemetry/*.parquet",
"source_path": "s3://dlh-bronze/staging/raw_cems_telemetry/*.parquet",
"source_parquet_path": "s3://dlh-bronze/staging/raw_cems_telemetry_logs/*.parquet",
"source_path": "s3://dlh-bronze/staging/raw_cems_telemetry_logs/*.parquet",
"target_table": "bronze_cems_telemetry_logs",
"table_name": "bronze_cems_telemetry_logs",
"primary_keys": "log_id",
"query": "SELECT log_id, source_id, telemetry_timestamp, so2_mg_nm3, nox_mg_nm3, pm_dust_mg_nm3, co_mg_nm3, flue_gas_flow_m3_s, flue_temp_celsius, sensor_status, created_at FROM read_parquet('s3://dlh-bronze/staging/raw_cems_telemetry/*.parquet') QUALIFY ROW_NUMBER() OVER (PARTITION BY log_id ORDER BY created_at DESC) = 1",
"sql_query": "SELECT log_id, source_id, telemetry_timestamp, so2_mg_nm3, nox_mg_nm3, pm_dust_mg_nm3, co_mg_nm3, flue_gas_flow_m3_s, flue_temp_celsius, sensor_status, created_at FROM read_parquet('s3://dlh-bronze/staging/raw_cems_telemetry/*.parquet') QUALIFY ROW_NUMBER() OVER (PARTITION BY log_id ORDER BY created_at DESC) = 1",
"transformation_sql": "SELECT log_id, source_id, telemetry_timestamp, so2_mg_nm3, nox_mg_nm3, pm_dust_mg_nm3, co_mg_nm3, flue_gas_flow_m3_s, flue_temp_celsius, sensor_status, created_at FROM read_parquet('s3://dlh-bronze/staging/raw_cems_telemetry/*.parquet') QUALIFY ROW_NUMBER() OVER (PARTITION BY log_id ORDER BY created_at DESC) = 1"
"query": "SELECT log_id, source_id, telemetry_timestamp, so2_mg_nm3, nox_mg_nm3, pm_dust_mg_nm3, co_mg_nm3, flue_gas_flow_m3_s, flue_temp_celsius, sensor_status, created_at FROM read_parquet('s3://dlh-bronze/staging/raw_cems_telemetry_logs/*.parquet') QUALIFY ROW_NUMBER() OVER (PARTITION BY log_id ORDER BY created_at DESC) = 1",
"sql_query": "SELECT log_id, source_id, telemetry_timestamp, so2_mg_nm3, nox_mg_nm3, pm_dust_mg_nm3, co_mg_nm3, flue_gas_flow_m3_s, flue_temp_celsius, sensor_status, created_at FROM read_parquet('s3://dlh-bronze/staging/raw_cems_telemetry_logs/*.parquet') QUALIFY ROW_NUMBER() OVER (PARTITION BY log_id ORDER BY created_at DESC) = 1",
"transformation_sql": "SELECT log_id, source_id, telemetry_timestamp, so2_mg_nm3, nox_mg_nm3, pm_dust_mg_nm3, co_mg_nm3, flue_gas_flow_m3_s, flue_temp_celsius, sensor_status, created_at FROM read_parquet('s3://dlh-bronze/staging/raw_cems_telemetry_logs/*.parquet') QUALIFY ROW_NUMBER() OVER (PARTITION BY log_id ORDER BY created_at DESC) = 1"
}
},
"width": 96,
@@ -152,7 +152,7 @@
"dragging": false
},
{
"id": "node-7127",
"id": "node-1818",
"type": "customNode",
"position": {
"x": 1030,
@@ -188,7 +188,7 @@
"dragging": false
},
{
"id": "node-8143",
"id": "node-2864",
"type": "customNode",
"position": {
"x": 1220,
@@ -215,7 +215,7 @@
"dragging": false
},
{
"id": "node-9175",
"id": "node-3898",
"type": "customNode",
"position": {
"x": 1410,
@@ -251,7 +251,7 @@
"dragging": false
},
{
"id": "node-0193",
"id": "node-5020",
"type": "customNode",
"position": {
"x": 1600,
@@ -278,7 +278,7 @@
"dragging": false
},
{
"id": "node-1241",
"id": "node-6105",
"type": "customNode",
"position": {
"x": 1790,
@@ -314,7 +314,7 @@
"dragging": false
},
{
"id": "node-2409",
"id": "node-7152",
"type": "customNode",
"position": {
"x": 1980,
@@ -344,9 +344,9 @@
],
"edges": [
{
"source": "node-1975",
"source": "node-6716",
"sourceHandle": null,
"target": "node-3042",
"target": "node-7780",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -354,12 +354,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-1975-node-3042"
"id": "reactflow__edge-node-6716-node-7780"
},
{
"source": "node-3042",
"source": "node-7780",
"sourceHandle": null,
"target": "node-8143",
"target": "node-2864",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -367,12 +367,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-3042-node-8143"
"id": "reactflow__edge-node-7780-node-2864"
},
{
"source": "node-4059",
"source": "node-8779",
"sourceHandle": null,
"target": "node-5075",
"target": "node-9796",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -380,12 +380,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-4059-node-5075"
"id": "reactflow__edge-node-8779-node-9796"
},
{
"source": "node-5075",
"source": "node-9796",
"sourceHandle": null,
"target": "node-6110",
"target": "node-0811",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -393,12 +393,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-5075-node-6110"
"id": "reactflow__edge-node-9796-node-0811"
},
{
"source": "node-6110",
"source": "node-0811",
"sourceHandle": null,
"target": "node-7127",
"target": "node-1818",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -406,12 +406,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-6110-node-7127"
"id": "reactflow__edge-node-0811-node-1818"
},
{
"source": "node-7127",
"source": "node-1818",
"sourceHandle": null,
"target": "node-8143",
"target": "node-2864",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -419,12 +419,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-7127-node-8143"
"id": "reactflow__edge-node-1818-node-2864"
},
{
"source": "node-8143",
"source": "node-2864",
"sourceHandle": null,
"target": "node-9175",
"target": "node-3898",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -432,12 +432,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-8143-node-9175"
"id": "reactflow__edge-node-2864-node-3898"
},
{
"source": "node-9175",
"source": "node-3898",
"sourceHandle": null,
"target": "node-0193",
"target": "node-5020",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -445,12 +445,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-9175-node-0193"
"id": "reactflow__edge-node-3898-node-5020"
},
{
"source": "node-0193",
"source": "node-5020",
"sourceHandle": null,
"target": "node-1241",
"target": "node-6105",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -458,12 +458,12 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-0193-node-1241"
"id": "reactflow__edge-node-5020-node-6105"
},
{
"source": "node-1241",
"source": "node-6105",
"sourceHandle": null,
"target": "node-2409",
"target": "node-7152",
"targetHandle": null,
"type": "removableEdge",
"style": {
@@ -471,11 +471,11 @@
"strokeWidth": 2
},
"data": {},
"id": "reactflow__edge-node-1241-node-2409"
"id": "reactflow__edge-node-6105-node-7152"
}
],
"notes": [],
"is_draft": false,
"status": "deployed",
"updated_at": "2026-10-18T20:38:50.813467Z"
"updated_at": "2026-10-18T21:03:55.984345Z"
}