This is an automated email from the ASF dual-hosted git repository.

vinoth pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/hudi.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 53180b22cd7 [DOCS] Draft of Hudi 1.0 Announce blog (#12502)
53180b22cd7 is described below

commit 53180b22cd735b579985caa83149b5ee23b608fa
Author: vinoth chandar <[email protected]>
AuthorDate: Mon Dec 16 23:36:32 2024 -0800

    [DOCS] Draft of Hudi 1.0 Announce blog (#12502)
---
 .../backwards-compat-writing.excalidraw            | 1120 +++++++++++
 .../expression-index-date-partitioning.excalidraw  | 1969 ++++++++++++++++++++
 website/blog/2024-12-16-announcing-hudi-1-0-0.md   |  195 ++
 .../assets/images/backwards-compat-writing.png     |  Bin 0 -> 161889 bytes
 .../images/expression-index-date-partitioning.png  |  Bin 0 -> 122845 bytes
 .../static/assets/images/nbcc_partial_updates.gif  |  Bin 0 -> 804160 bytes
 6 files changed, 3284 insertions(+)

diff --git a/site-image-source/backwards-compat-writing.excalidraw 
b/site-image-source/backwards-compat-writing.excalidraw
new file mode 100644
index 00000000000..66ffe6ff9bd
--- /dev/null
+++ b/site-image-source/backwards-compat-writing.excalidraw
@@ -0,0 +1,1120 @@
+{
+  "type": "excalidraw",
+  "version": 2,
+  "source": "https://excalidraw.com";,
+  "elements": [
+    {
+      "id": "oIBbOYblwcXRC0JHgj8wW",
+      "type": "rectangle",
+      "x": 1114.267578125,
+      "y": 346.232421875,
+      "width": 47.78124999999997,
+      "height": 279.80859375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#228be6",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b3f",
+      "roundness": null,
+      "seed": 1130605477,
+      "version": 518,
+      "versionNonce": 1202167173,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404056889,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "oGwO-P6uHR-1oqsFsqVuQ",
+      "type": "rectangle",
+      "x": 716.63671875,
+      "y": 346.328125,
+      "width": 242.71484375,
+      "height": 144.72265625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#f3f0ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6W",
+      "roundness": {
+        "type": 3
+      },
+      "seed": 1497530507,
+      "version": 32,
+      "versionNonce": 1513383493,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "id": "mvz6oExjGjlSrmxFQYL4f",
+          "type": "arrow"
+        },
+        {
+          "id": "TGyxThzFmglkFHHsPOiL-",
+          "type": "arrow"
+        }
+      ],
+      "updated": 1734404415336,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "ZJ9RiYgEXHD93mv7y0Q-E",
+      "type": "rectangle",
+      "x": 1108.6171875,
+      "y": 344.59765625,
+      "width": 306.671875,
+      "height": 282.45703125,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6X",
+      "roundness": null,
+      "seed": 2020945579,
+      "version": 96,
+      "versionNonce": 702934661,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "id": "TIUXc_qZfyAKxLpwrFGLR",
+          "type": "arrow"
+        },
+        {
+          "id": "p_sGQTpaiawwcdUPi6PQH",
+          "type": "arrow"
+        }
+      ],
+      "updated": 1734404143134,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "iGqg3Gnhwrjq4cxLNkW4d",
+      "type": "rectangle",
+      "x": 1111.87109375,
+      "y": 345.365234375,
+      "width": 303.25390624999994,
+      "height": 33.62109375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#1971c2",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6Y",
+      "roundness": null,
+      "seed": 1470220869,
+      "version": 272,
+      "versionNonce": 1193643403,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404034618,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "dT5Pdi4Q3Jek4vy4CM_1X",
+      "type": "text",
+      "x": 741.25,
+      "y": 374.640625,
+      "width": 190.4198455810547,
+      "height": 75,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6a",
+      "roundness": null,
+      "seed": 1611156811,
+      "version": 123,
+      "versionNonce": 1840289317,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734403915364,
+      "link": null,
+      "locked": false,
+      "text": "Writer\n(binaryVersion=1.0.0\ntableVersions=6,8)",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "Writer\n(binaryVersion=1.0.0\ntableVersions=6,8)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "sswS0ySzPT4c6I4HOj2UV",
+      "type": "rectangle",
+      "x": 1269.482421875,
+      "y": 721.029296875,
+      "width": 242.71484375,
+      "height": 144.72265625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#f3f0ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6b",
+      "roundness": {
+        "type": 3
+      },
+      "seed": 146730059,
+      "version": 195,
+      "versionNonce": 1952587365,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "id": "Dw02Onhqlyx2JnJHsccR8",
+          "type": "arrow"
+        }
+      ],
+      "updated": 1734404193867,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "o1G-s3gfMH7_ENKQ6yQFr",
+      "type": "text",
+      "x": 1287.7757110595703,
+      "y": 749.341796875,
+      "width": 203.05982971191406,
+      "height": 75,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6c",
+      "roundness": null,
+      "seed": 441527019,
+      "version": 320,
+      "versionNonce": 1797010469,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734403972463,
+      "link": null,
+      "locked": false,
+      "text": "Async Table Services\n(binaryVersion=1.0.0\ntableVersions=6,8)",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "Async Table 
Services\n(binaryVersion=1.0.0\ntableVersions=6,8)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "ymTQexeZXQ19X8vrvV0BH",
+      "type": "rectangle",
+      "x": 1555.962890625,
+      "y": 342.044921875,
+      "width": 242.71484375,
+      "height": 144.72265625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#f3f0ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6d",
+      "roundness": {
+        "type": 3
+      },
+      "seed": 1021024325,
+      "version": 75,
+      "versionNonce": 632992133,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "id": "4lLOUlVX6vMN-oz_h1jRw",
+          "type": "arrow"
+        }
+      ],
+      "updated": 1734404180240,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "WEvrP-z1DeUFY0FG-hA8v",
+      "type": "text",
+      "x": 1580.576171875,
+      "y": 370.357421875,
+      "width": 190.4198455810547,
+      "height": 75,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6e",
+      "roundness": null,
+      "seed": 1017792421,
+      "version": 184,
+      "versionNonce": 956216197,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734403882822,
+      "link": null,
+      "locked": false,
+      "text": "queries\n(binaryVersion=1.0.0\ntableVersions=6,8)",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "queries\n(binaryVersion=1.0.0\ntableVersions=6,8)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "bbbjf9K4POPCfgN4Rkm3u",
+      "type": "rectangle",
+      "x": 1556.931640625,
+      "y": 500.001953125,
+      "width": 242.71484375,
+      "height": 144.72265625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6f",
+      "roundness": {
+        "type": 3
+      },
+      "seed": 1567711653,
+      "version": 81,
+      "versionNonce": 467881637,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "id": "4lLOUlVX6vMN-oz_h1jRw",
+          "type": "arrow"
+        }
+      ],
+      "updated": 1734404210438,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "HjnyMAunp3fPGW_d1YnID",
+      "type": "text",
+      "x": 1579.4249215722084,
+      "y": 528.314453125,
+      "width": 194.65984618663788,
+      "height": 75,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6g",
+      "roundness": null,
+      "seed": 1317004549,
+      "version": 188,
+      "versionNonce": 90483205,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734403831672,
+      "link": null,
+      "locked": false,
+      "text": "queries\n(binaryVersion=0.14+\ntableVersion=6)",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "queries\n(binaryVersion=0.14+\ntableVersion=6)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "4lLOUlVX6vMN-oz_h1jRw",
+      "type": "arrow",
+      "x": 1802.22265625,
+      "y": 566.36328125,
+      "width": 87.12890625,
+      "height": 151.1484375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6h",
+      "roundness": {
+        "type": 2
+      },
+      "seed": 1223404741,
+      "version": 252,
+      "versionNonce": 1577646757,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734403873942,
+      "link": null,
+      "locked": false,
+      "points": [
+        [
+          0,
+          0
+        ],
+        [
+          85.3125,
+          -80.07421875
+        ],
+        [
+          -1.81640625,
+          -151.1484375
+        ]
+      ],
+      "lastCommittedPoint": null,
+      "startBinding": {
+        "elementId": "bbbjf9K4POPCfgN4Rkm3u",
+        "focus": 0.5922883518289153,
+        "gap": 2.576171875,
+        "fixedPoint": null
+      },
+      "endBinding": {
+        "elementId": "ymTQexeZXQ19X8vrvV0BH",
+        "focus": -0.5812256751253844,
+        "gap": 1.728515625,
+        "fixedPoint": null
+      },
+      "startArrowhead": null,
+      "endArrowhead": "arrow",
+      "elbowed": false
+    },
+    {
+      "id": "kLma69JqsaBuZ8wBPX8bQ",
+      "type": "rectangle",
+      "x": 976.060546875,
+      "y": 721.013671875,
+      "width": 242.71484375,
+      "height": 144.72265625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6i",
+      "roundness": {
+        "type": 3
+      },
+      "seed": 1224028139,
+      "version": 267,
+      "versionNonce": 1869690053,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "id": "Dw02Onhqlyx2JnJHsccR8",
+          "type": "arrow"
+        }
+      ],
+      "updated": 1734404217211,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "Hp00HDUCWa66unRvyFjIi",
+      "type": "text",
+      "x": 994.3538360595703,
+      "y": 749.326171875,
+      "width": 203.05982971191406,
+      "height": 75,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6j",
+      "roundness": null,
+      "seed": 1849555595,
+      "version": 404,
+      "versionNonce": 1500104581,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404010458,
+      "link": null,
+      "locked": false,
+      "text": "Async Table Services\n(binaryVersion=0.14+\ntableVersions=6)",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "Async Table 
Services\n(binaryVersion=0.14+\ntableVersions=6)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "IVa5OJVcbHsZ5YQgqNMG6",
+      "type": "rectangle",
+      "x": 716.990234375,
+      "y": 509.677734375,
+      "width": 242.71484375,
+      "height": 144.72265625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6k",
+      "roundness": {
+        "type": 3
+      },
+      "seed": 1434293157,
+      "version": 91,
+      "versionNonce": 354593893,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "id": "mvz6oExjGjlSrmxFQYL4f",
+          "type": "arrow"
+        }
+      ],
+      "updated": 1734404346389,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "3BClmP91D90ri_J7VaSuy",
+      "type": "text",
+      "x": 739.4835153222084,
+      "y": 537.990234375,
+      "width": 194.65984618663788,
+      "height": 75,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6l",
+      "roundness": null,
+      "seed": 439736069,
+      "version": 190,
+      "versionNonce": 845853675,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404000545,
+      "link": null,
+      "locked": false,
+      "text": "Writer\n(binaryVersion=0.14+\ntableVersions=6)",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "Writer\n(binaryVersion=0.14+\ntableVersions=6)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "GQ2RnxSP-eJ4oo-8CQ04w",
+      "type": "text",
+      "x": 1206.3557331562042,
+      "y": 448.91796875,
+      "width": 141.14790868759155,
+      "height": 35,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#228be6",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6m",
+      "roundness": null,
+      "seed": 1088885387,
+      "version": 69,
+      "versionNonce": 2017179813,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734404161337,
+      "link": null,
+      "locked": false,
+      "text": "Hudi Table",
+      "fontSize": 28,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "Hudi Table",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "Dw02Onhqlyx2JnJHsccR8",
+      "type": "arrow",
+      "x": 1089.625,
+      "y": 870.98828125,
+      "width": 302.5625,
+      "height": 55.90242973935242,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#228be6",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6n",
+      "roundness": {
+        "type": 2
+      },
+      "seed": 1501580581,
+      "version": 268,
+      "versionNonce": 1085791979,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734404440709,
+      "link": null,
+      "locked": false,
+      "points": [
+        [
+          0,
+          -2.5560149488148007
+        ],
+        [
+          156.484375,
+          50.29305473935242
+        ],
+        [
+          302.5625,
+          -5.609375
+        ]
+      ],
+      "lastCommittedPoint": null,
+      "startBinding": {
+        "elementId": "kLma69JqsaBuZ8wBPX8bQ",
+        "focus": 0.6854096161394536,
+        "gap": 2.695938176185223,
+        "fixedPoint": null
+      },
+      "endBinding": {
+        "elementId": "sswS0ySzPT4c6I4HOj2UV",
+        "focus": -0.6102855416599023,
+        "gap": 1,
+        "fixedPoint": null
+      },
+      "startArrowhead": null,
+      "endArrowhead": "arrow",
+      "elbowed": false
+    },
+    {
+      "id": "TIUXc_qZfyAKxLpwrFGLR",
+      "type": "arrow",
+      "x": 1004.50390625,
+      "y": 482.9609375,
+      "width": 88.03125,
+      "height": 2.609375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#228be6",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 2,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6o",
+      "roundness": {
+        "type": 2
+      },
+      "seed": 1240256619,
+      "version": 41,
+      "versionNonce": 849660741,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734404128771,
+      "link": null,
+      "locked": false,
+      "points": [
+        [
+          0,
+          0
+        ],
+        [
+          88.03125,
+          -2.609375
+        ]
+      ],
+      "lastCommittedPoint": null,
+      "startBinding": null,
+      "endBinding": {
+        "elementId": "ZJ9RiYgEXHD93mv7y0Q-E",
+        "focus": 0.07200483847145855,
+        "gap": 16.08203125,
+        "fixedPoint": null
+      },
+      "startArrowhead": null,
+      "endArrowhead": "arrow",
+      "elbowed": false
+    },
+    {
+      "id": "jVaJUEudJm8WOA3bWCUTq",
+      "type": "arrow",
+      "x": 1446.6488008666784,
+      "y": 477.06663543097676,
+      "width": 88.03125,
+      "height": 2.609375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#228be6",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 2,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6p",
+      "roundness": {
+        "type": 2
+      },
+      "seed": 463896773,
+      "version": 111,
+      "versionNonce": 991159435,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404135512,
+      "link": null,
+      "locked": false,
+      "points": [
+        [
+          0,
+          0
+        ],
+        [
+          88.03125,
+          -2.609375
+        ]
+      ],
+      "lastCommittedPoint": null,
+      "startBinding": null,
+      "endBinding": null,
+      "startArrowhead": null,
+      "endArrowhead": "arrow",
+      "elbowed": false
+    },
+    {
+      "id": "p_sGQTpaiawwcdUPi6PQH",
+      "type": "arrow",
+      "x": 1255.8128633666784,
+      "y": 699.8947604309767,
+      "width": 2.757449133321643,
+      "height": 68.7265625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#228be6",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 2,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6q",
+      "roundness": {
+        "type": 2
+      },
+      "seed": 260472267,
+      "version": 170,
+      "versionNonce": 1604142725,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404148275,
+      "link": null,
+      "locked": false,
+      "points": [
+        [
+          0,
+          0
+        ],
+        [
+          1.8199491333216429,
+          -8.117416680976703
+        ],
+        [
+          -0.9375,
+          -68.7265625
+        ]
+      ],
+      "lastCommittedPoint": null,
+      "startBinding": null,
+      "endBinding": {
+        "elementId": "ZJ9RiYgEXHD93mv7y0Q-E",
+        "focus": 0.0856915349049134,
+        "gap": 4.113510430976703,
+        "fixedPoint": null
+      },
+      "startArrowhead": null,
+      "endArrowhead": "arrow",
+      "elbowed": false
+    },
+    {
+      "id": "mvz6oExjGjlSrmxFQYL4f",
+      "type": "arrow",
+      "x": 713.8515625,
+      "y": 584.5078125,
+      "width": 64.2421875,
+      "height": 163.234375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6s",
+      "roundness": {
+        "type": 2
+      },
+      "seed": 478214091,
+      "version": 442,
+      "versionNonce": 1784786405,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734404354565,
+      "link": null,
+      "locked": false,
+      "points": [
+        [
+          0,
+          0
+        ],
+        [
+          -64.2421875,
+          -85.22265625
+        ],
+        [
+          -3.078125,
+          -163.234375
+        ]
+      ],
+      "lastCommittedPoint": null,
+      "startBinding": {
+        "elementId": "IVa5OJVcbHsZ5YQgqNMG6",
+        "focus": -0.718327560016425,
+        "gap": 3.138671875,
+        "fixedPoint": null
+      },
+      "endBinding": {
+        "elementId": "oGwO-P6uHR-1oqsFsqVuQ",
+        "focus": 0.7029805218778848,
+        "gap": 5.86328125,
+        "fixedPoint": null
+      },
+      "startArrowhead": null,
+      "endArrowhead": "arrow",
+      "elbowed": false
+    },
+    {
+      "id": "_yRCFZyQdaFhLHucPJJXZ",
+      "type": "text",
+      "x": 1080.9061126708984,
+      "y": 921.0234375,
+      "width": 321.3596496582031,
+      "height": 40,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6t",
+      "roundness": null,
+      "seed": 323251653,
+      "version": 293,
+      "versionNonce": 37515979,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734404453495,
+      "link": null,
+      "locked": false,
+      "text": "1. stop table services; rollout new binary \nto async table 
services; start",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "1. stop table services; rollout new binary \nto async 
table services; start",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "ruSFnpZXG1ev2TEdoweJ_",
+      "type": "text",
+      "x": 541.4920959472656,
+      "y": 443.4453125,
+      "width": 100.38690185546875,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6u",
+      "roundness": null,
+      "seed": 1100739781,
+      "version": 561,
+      "versionNonce": 950163307,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404384510,
+      "link": null,
+      "locked": false,
+      "text": "2. Rollout\nnew binary\nto writer\nwith same\ntable version",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "2. Rollout\nnew binary to writer with same table 
version",
+      "autoResize": false,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "QGaqvKbjz7gZ2e-dk3rh0",
+      "type": "text",
+      "x": 1902.8338928222656,
+      "y": 430.6796875,
+      "width": 100.38690185546875,
+      "height": 140,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6v",
+      "roundness": null,
+      "seed": 1316862123,
+      "version": 695,
+      "versionNonce": 830095717,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404432048,
+      "link": null,
+      "locked": false,
+      "text": "3. Rollout\nnew binary\nto\nqueries/read\ners with\nsame 
table\nversion",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "3. Rollout\nnew binary to queries/readers with same 
table version",
+      "autoResize": false,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "TGyxThzFmglkFHHsPOiL-",
+      "type": "arrow",
+      "x": 790.6015625,
+      "y": 362.6969310948554,
+      "width": 108.34765625,
+      "height": 62.67416265514461,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6w",
+      "roundness": {
+        "type": 2
+      },
+      "seed": 421741509,
+      "version": 264,
+      "versionNonce": 626383845,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734404427485,
+      "link": null,
+      "locked": false,
+      "points": [
+        [
+          0,
+          -19.89230284684558
+        ],
+        [
+          56.375,
+          -78.9375
+        ],
+        [
+          108.34765625,
+          -16.26333734485539
+        ]
+      ],
+      "lastCommittedPoint": null,
+      "startBinding": {
+        "elementId": "oGwO-P6uHR-1oqsFsqVuQ",
+        "focus": -0.6292883177676948,
+        "gap": 3.5234967519901375,
+        "fixedPoint": null
+      },
+      "endBinding": {
+        "elementId": "oGwO-P6uHR-1oqsFsqVuQ",
+        "focus": 0.6664714137576235,
+        "gap": 1,
+        "fixedPoint": null
+      },
+      "startArrowhead": null,
+      "endArrowhead": "arrow",
+      "elbowed": false
+    },
+    {
+      "id": "ZBufFl_Wzuj1jK6biCeZJ",
+      "type": "text",
+      "x": 791.3768615722656,
+      "y": 155.53515625,
+      "width": 100.38690185546875,
+      "height": 120,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#fff9db",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6y",
+      "roundness": null,
+      "seed": 1954456485,
+      "version": 910,
+      "versionNonce": 23199435,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734404504794,
+      "link": null,
+      "locked": false,
+      "text": "4. Switch\ntable write\nversion to\nlatest, 
force\nrolling\nupgrade",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "4. Switch table write version to latest, force rolling 
upgrade",
+      "autoResize": false,
+      "lineHeight": 1.25
+    }
+  ],
+  "appState": {
+    "gridSize": 20,
+    "gridStep": 5,
+    "gridModeEnabled": false,
+    "viewBackgroundColor": "#ffffff"
+  },
+  "files": {}
+}
\ No newline at end of file
diff --git a/site-image-source/expression-index-date-partitioning.excalidraw 
b/site-image-source/expression-index-date-partitioning.excalidraw
new file mode 100644
index 00000000000..5bbffc9292e
--- /dev/null
+++ b/site-image-source/expression-index-date-partitioning.excalidraw
@@ -0,0 +1,1969 @@
+{
+  "type": "excalidraw",
+  "version": 2,
+  "source": "https://excalidraw.com";,
+  "elements": [
+    {
+      "id": "4Jn9_Og-TAlV_xJlxWk4W",
+      "type": "rectangle",
+      "x": 350.6015625,
+      "y": 174.34765625,
+      "width": 322.67578124999994,
+      "height": 148.3203125,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5Y",
+      "roundness": null,
+      "seed": 249691979,
+      "version": 132,
+      "versionNonce": 1540368107,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734394278102,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "zIFhRSgvMTgR8p47ri5AF",
+      "type": "rectangle",
+      "x": 355.41796875,
+      "y": 384.6796875,
+      "width": 318.12109375,
+      "height": 161.75390625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5Z",
+      "roundness": null,
+      "seed": 1850963493,
+      "version": 123,
+      "versionNonce": 2026437477,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734394220485,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "DGQDJgUa4HhNygupeNx17",
+      "type": "rectangle",
+      "x": 353.4375,
+      "y": 636.90234375,
+      "width": 316.33203125,
+      "height": 165.2890625,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5a",
+      "roundness": null,
+      "seed": 1816012651,
+      "version": 179,
+      "versionNonce": 1819876389,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734394257655,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "ZKm5ILJ7Q2Gk0ernG9Uqm",
+      "type": "rectangle",
+      "x": 381.1953125,
+      "y": 199.59765625,
+      "width": 59.86328125,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#a5d8ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5b",
+      "roundness": null,
+      "seed": 381587525,
+      "version": 49,
+      "versionNonce": 1491708011,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "KyCjTIUyVygA8cPgmnn-F"
+        }
+      ],
+      "updated": 1734394905627,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "KyCjTIUyVygA8cPgmnn-F",
+      "type": "text",
+      "x": 388.8949635028839,
+      "y": 204.59765625,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5bV",
+      "roundness": null,
+      "seed": 619012293,
+      "version": 47,
+      "versionNonce": 66656715,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734394905626,
+      "link": null,
+      "locked": false,
+      "text": "file 1\n(trips\nfor \ndate\n1)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "ZKm5ILJ7Q2Gk0ernG9Uqm",
+      "originalText": "file 1 (trips\nfor \ndate 1)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "R1HykPj80bdTAyalvrTLO",
+      "type": "text",
+      "x": 348.7421875,
+      "y": 131.91796875,
+      "width": 215.1398559808731,
+      "height": 25,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5k",
+      "roundness": null,
+      "seed": 1968395973,
+      "version": 25,
+      "versionNonce": 1370501899,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734393964199,
+      "link": null,
+      "locked": false,
+      "text": "partition_path=/cityA",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "partition_path=/cityA",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "iiMlGiNM3fWXGNJaYSMyN",
+      "type": "text",
+      "x": 352.01600950956345,
+      "y": 354.41015625,
+      "width": 217.07985842227936,
+      "height": 25,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5l",
+      "roundness": null,
+      "seed": 1753967339,
+      "version": 100,
+      "versionNonce": 1471132939,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734393991423,
+      "link": null,
+      "locked": false,
+      "text": "partition_path=/cityB",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "partition_path=/cityB",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "pP5NtlMNo1ct-TbfFFqm6",
+      "type": "text",
+      "x": 351.51600950956345,
+      "y": 602.8203125,
+      "width": 213.97984313964844,
+      "height": 25,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5m",
+      "roundness": null,
+      "seed": 1298202533,
+      "version": 127,
+      "versionNonce": 1470626469,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734393995884,
+      "link": null,
+      "locked": false,
+      "text": "partition_path=/cityC",
+      "fontSize": 20,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "partition_path=/cityC",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "GUll2jVmljzMqLkRwrRc0",
+      "type": "rectangle",
+      "x": 478.259765625,
+      "y": 199.400390625,
+      "width": 63.98046875,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#d0bfff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5n",
+      "roundness": null,
+      "seed": 1094311941,
+      "version": 180,
+      "versionNonce": 903452171,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "F6zGKz0clPQk_6GjhwyKg"
+        }
+      ],
+      "updated": 1734394676797,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "F6zGKz0clPQk_6GjhwyKg",
+      "type": "text",
+      "x": 488.0180103778839,
+      "y": 204.400390625,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5o",
+      "roundness": null,
+      "seed": 1969854309,
+      "version": 189,
+      "versionNonce": 71694731,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395123418,
+      "link": null,
+      "locked": false,
+      "text": "file 4\n(trips\nfor \ndate\n2)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "GUll2jVmljzMqLkRwrRc0",
+      "originalText": "file 4 (trips\nfor \ndate 2)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "gQMoRJXWLBtrUOPrUti8K",
+      "type": "rectangle",
+      "x": 576.521484375,
+      "y": 199.740234375,
+      "width": 62.12890625000001,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#ffc9c9",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5p",
+      "roundness": null,
+      "seed": 2146472267,
+      "version": 110,
+      "versionNonce": 336597029,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "kP4GcC8kesnwdJkW_p-n4"
+        }
+      ],
+      "updated": 1734394692445,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "kP4GcC8kesnwdJkW_p-n4",
+      "type": "text",
+      "x": 585.3539478778839,
+      "y": 204.740234375,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5q",
+      "roundness": null,
+      "seed": 1711681515,
+      "version": 115,
+      "versionNonce": 101318955,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394918357,
+      "link": null,
+      "locked": false,
+      "text": "file 7\n(trips\nfor \ndate\n3)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "gQMoRJXWLBtrUOPrUti8K",
+      "originalText": "file 7 (trips\nfor \ndate 3)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "vXVrw_itWnTlZRFNPkg8o",
+      "type": "rectangle",
+      "x": 379.5732421875,
+      "y": 414.9619140625,
+      "width": 59.86328125,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#a5d8ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5r",
+      "roundness": null,
+      "seed": 1640479563,
+      "version": 183,
+      "versionNonce": 446304139,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "ANR2kpPcEuE_0kxSfU6fn"
+        }
+      ],
+      "updated": 1734394924611,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "ANR2kpPcEuE_0kxSfU6fn",
+      "type": "text",
+      "x": 387.2728931903839,
+      "y": 419.9619140625,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5s",
+      "roundness": null,
+      "seed": 392698347,
+      "version": 182,
+      "versionNonce": 1667622443,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394924611,
+      "link": null,
+      "locked": false,
+      "text": "file 2\n(trips\nfor \ndate\n1)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "vXVrw_itWnTlZRFNPkg8o",
+      "originalText": "file 2 (trips\nfor \ndate 1)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "7NvgyThJcDxo02LKezVfe",
+      "type": "rectangle",
+      "x": 479.4970703125,
+      "y": 413.5458984375,
+      "width": 63.0390625,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#d0bfff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5t",
+      "roundness": null,
+      "seed": 46376075,
+      "version": 282,
+      "versionNonce": 1597806443,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "iEyBL0cv07jOj3N1kFX1j"
+        }
+      ],
+      "updated": 1734394926444,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "iEyBL0cv07jOj3N1kFX1j",
+      "type": "text",
+      "x": 488.7846119403839,
+      "y": 418.5458984375,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5u",
+      "roundness": null,
+      "seed": 462740267,
+      "version": 286,
+      "versionNonce": 1584550853,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394932022,
+      "link": null,
+      "locked": false,
+      "text": "file 5\n(trips\nfor \ndate\n2)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "7NvgyThJcDxo02LKezVfe",
+      "originalText": "file 5 (trips\nfor \ndate 2)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "Ob9-2FNU3pViImqTVlISW",
+      "type": "rectangle",
+      "x": 577.6494140625,
+      "y": 414.5458984375,
+      "width": 69.21093750000004,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#ffc9c9",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5v",
+      "roundness": null,
+      "seed": 2118532555,
+      "version": 247,
+      "versionNonce": 260105893,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "4X6CjgnEeVSgo0UU2cuBP"
+        }
+      ],
+      "updated": 1734394815158,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "4X6CjgnEeVSgo0UU2cuBP",
+      "type": "text",
+      "x": 590.0228931903839,
+      "y": 419.5458984375,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5w",
+      "roundness": null,
+      "seed": 1441942635,
+      "version": 253,
+      "versionNonce": 549355205,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394938484,
+      "link": null,
+      "locked": false,
+      "text": "file 8\n(trips\nfor \ndate \n3)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "Ob9-2FNU3pViImqTVlISW",
+      "originalText": "file 8 (trips\nfor \ndate \n3)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "WQzAGegXzNuylURw9SCbu",
+      "type": "rectangle",
+      "x": 373.8193359375,
+      "y": 669.6689453125,
+      "width": 59.86328125,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#a5d8ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5x",
+      "roundness": null,
+      "seed": 1632051877,
+      "version": 254,
+      "versionNonce": 1664255595,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "OFlBMjVe35isnQWw-IH6R"
+        }
+      ],
+      "updated": 1734394947616,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "OFlBMjVe35isnQWw-IH6R",
+      "type": "text",
+      "x": 381.5189869403839,
+      "y": 674.6689453125,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5y",
+      "roundness": null,
+      "seed": 871728645,
+      "version": 253,
+      "versionNonce": 864846091,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394947616,
+      "link": null,
+      "locked": false,
+      "text": "file 3\n(trips\nfor \ndate\n1)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "WQzAGegXzNuylURw9SCbu",
+      "originalText": "file 3 (trips\nfor \ndate 1)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "941s2J_qsq6JJl626LzRi",
+      "type": "rectangle",
+      "x": 471.4462890625,
+      "y": 670.3974609375,
+      "width": 66.23046875000001,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#d0bfff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b5z",
+      "roundness": null,
+      "seed": 499154277,
+      "version": 363,
+      "versionNonce": 117370891,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "2ibPas-o5P5HO9EGZLRXJ"
+        }
+      ],
+      "updated": 1734394740360,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "2ibPas-o5P5HO9EGZLRXJ",
+      "type": "text",
+      "x": 482.3295338153839,
+      "y": 675.3974609375,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b60",
+      "roundness": null,
+      "seed": 905283781,
+      "version": 366,
+      "versionNonce": 319149253,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394955665,
+      "link": null,
+      "locked": false,
+      "text": "file 6\n(trips\nfor \ndate\n2)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "941s2J_qsq6JJl626LzRi",
+      "originalText": "file 6\n(trips\nfor \ndate 2)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "6DBKEab_xLtPtOvkL1dZ3",
+      "type": "rectangle",
+      "x": 574.8603515625,
+      "y": 670.1201171875,
+      "width": 64.18750000000001,
+      "height": 110,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#ffc9c9",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b61",
+      "roundness": null,
+      "seed": 1311909925,
+      "version": 312,
+      "versionNonce": 1590765445,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "ELiRUugpavcRzslNh2wPF"
+        }
+      ],
+      "updated": 1734394957643,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "ELiRUugpavcRzslNh2wPF",
+      "type": "text",
+      "x": 584.7221119403839,
+      "y": 675.1201171875,
+      "width": 44.46397924423218,
+      "height": 100,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b62",
+      "roundness": null,
+      "seed": 677632901,
+      "version": 317,
+      "versionNonce": 1073644619,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394961008,
+      "link": null,
+      "locked": false,
+      "text": "file 9\n(trips\nfor \ndate\n3)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "6DBKEab_xLtPtOvkL1dZ3",
+      "originalText": "file 9 (trips\nfor \ndate 3)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "Qp9h8bJzn3DOxS3Z8GYJF",
+      "type": "rectangle",
+      "x": 772.0703125,
+      "y": 279.34375,
+      "width": 104.31640625000003,
+      "height": 364.49609375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b63",
+      "roundness": null,
+      "seed": 1393040267,
+      "version": 135,
+      "versionNonce": 983368005,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734394528737,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "RP0OXBOJMqFVNn_D6UFSE",
+      "type": "rectangle",
+      "x": 882.142578125,
+      "y": 279.728515625,
+      "width": 250.43359375000003,
+      "height": 364.49609375,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b64",
+      "roundness": null,
+      "seed": 47429317,
+      "version": 260,
+      "versionNonce": 415819717,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734394592103,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "3WTKiZCMYjn7DM8oPiegL",
+      "type": "text",
+      "x": 887.52734375,
+      "y": 242.98828125,
+      "width": 246.3037872314453,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b67",
+      "roundness": null,
+      "seed": 1745701893,
+      "version": 77,
+      "versionNonce": 1883031365,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734394883773,
+      "link": null,
+      "locked": false,
+      "text": "from_unixtime('yyyy-MM-dd', ts)",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "from_unixtime('yyyy-MM-dd', ts)",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "XjTFKRewr7dZZ3FmPK00s",
+      "type": "text",
+      "x": 844.8984375,
+      "y": 670.2120361328125,
+      "width": 217.5038269162178,
+      "height": 40,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b68",
+      "roundness": null,
+      "seed": 916204939,
+      "version": 108,
+      "versionNonce": 940341163,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734394999020,
+      "link": null,
+      "locked": false,
+      "text": "Expression index to achieve\nlogical date partitioning",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "Expression index to achieve\nlogical date partitioning",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "ZV38agEc3p8wduWJExTB4",
+      "type": "text",
+      "x": 783.1684188842773,
+      "y": 243.6807861328125,
+      "width": 32.7359619140625,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b69",
+      "roundness": null,
+      "seed": 1853518731,
+      "version": 94,
+      "versionNonce": 113039051,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395011288,
+      "link": null,
+      "locked": false,
+      "text": "files",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "files",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "OTfdxZMCV0WjopudQBEm0",
+      "type": "text",
+      "x": 795.89453125,
+      "y": 305.4425048828125,
+      "width": 37.27995300292969,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6A",
+      "roundness": null,
+      "seed": 315088907,
+      "version": 47,
+      "versionNonce": 310901797,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395024836,
+      "link": null,
+      "locked": false,
+      "text": "file 1",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 1",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "tQceVIzJvhJwlW9skLVM0",
+      "type": "text",
+      "x": 797.2350234985352,
+      "y": 339.3253173828125,
+      "width": 41.64796447753906,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6B",
+      "roundness": null,
+      "seed": 1923273285,
+      "version": 85,
+      "versionNonce": 780198123,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395074358,
+      "link": null,
+      "locked": false,
+      "text": "file 2",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 2",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "aDOzznDRqeNGn1ZrANAG1",
+      "type": "text",
+      "x": 797.0162734985352,
+      "y": 373.8057861328125,
+      "width": 40.17596435546875,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6C",
+      "roundness": null,
+      "seed": 704171467,
+      "version": 77,
+      "versionNonce": 1122997099,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395077684,
+      "link": null,
+      "locked": false,
+      "text": "file 3",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 3",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "pb58d7WotAye88hPNYnt6",
+      "type": "text",
+      "x": 797.4147109985352,
+      "y": 409.8878173828125,
+      "width": 39.807952880859375,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6D",
+      "roundness": null,
+      "seed": 1044205285,
+      "version": 96,
+      "versionNonce": 1127286251,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395080591,
+      "link": null,
+      "locked": false,
+      "text": "file 4",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 4",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "CNLms2zDLj1TGJ5Dm09hx",
+      "type": "text",
+      "x": 797.1608047485352,
+      "y": 444.2276611328125,
+      "width": 40.33595275878906,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6E",
+      "roundness": null,
+      "seed": 573739237,
+      "version": 94,
+      "versionNonce": 1340422251,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395083691,
+      "link": null,
+      "locked": false,
+      "text": "file 5",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 5",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "skILazAYDATPGp0FK5mrR",
+      "type": "text",
+      "x": 796.7740859985352,
+      "y": 482.4893798828125,
+      "width": 40.687957763671875,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6F",
+      "roundness": null,
+      "seed": 731210251,
+      "version": 103,
+      "versionNonce": 1485291525,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395086636,
+      "link": null,
+      "locked": false,
+      "text": "file 6",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 6",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "FLm9g45kVxkbby-H558Q5",
+      "type": "text",
+      "x": 795.5670547485352,
+      "y": 519.5284423828125,
+      "width": 39.37596130371094,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6G",
+      "roundness": null,
+      "seed": 504029093,
+      "version": 101,
+      "versionNonce": 1560876421,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395089595,
+      "link": null,
+      "locked": false,
+      "text": "file 7",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 7",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "fhfuuYPj43VNtR1grw3bp",
+      "type": "text",
+      "x": 796.1725234985352,
+      "y": 554.6339111328125,
+      "width": 40.62396240234375,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6H",
+      "roundness": null,
+      "seed": 22940075,
+      "version": 95,
+      "versionNonce": 427010821,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395092548,
+      "link": null,
+      "locked": false,
+      "text": "file 8",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 8",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "vSF0npx7qYveJ-5Uu8-_a",
+      "type": "text",
+      "x": 794.7623672485352,
+      "y": 594.6143798828125,
+      "width": 40.511962890625,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6I",
+      "roundness": null,
+      "seed": 1423600069,
+      "version": 124,
+      "versionNonce": 1998569003,
+      "isDeleted": false,
+      "boundElements": [],
+      "updated": 1734395293478,
+      "link": null,
+      "locked": false,
+      "text": "file 9",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "left",
+      "verticalAlign": "top",
+      "containerId": null,
+      "originalText": "file 9",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "-aBjjbUzO74D_RIWq4yLI",
+      "type": "rectangle",
+      "x": 910.802734375,
+      "y": 296.0635986328125,
+      "width": 174.16796875000003,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#a5d8ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6J",
+      "roundness": null,
+      "seed": 324367915,
+      "version": 197,
+      "versionNonce": 1265509099,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "yUZZgIW0HPclcaPYUaXS6"
+        }
+      ],
+      "updated": 1734395253504,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "yUZZgIW0HPclcaPYUaXS6",
+      "type": "text",
+      "x": 969.9027481079102,
+      "y": 301.0635986328125,
+      "width": 55.96794128417969,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6JV",
+      "roundness": null,
+      "seed": 917281253,
+      "version": 13,
+      "versionNonce": 274462149,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395258130,
+      "link": null,
+      "locked": false,
+      "text": "date 1 ",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "-aBjjbUzO74D_RIWq4yLI",
+      "originalText": "date 1 ",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "OPxbXGB5Ho9Ve6TXPFDR1",
+      "type": "rectangle",
+      "x": 910.5390625,
+      "y": 331.6300048828125,
+      "width": 174.03515625000006,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#a5d8ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6L",
+      "roundness": null,
+      "seed": 973870987,
+      "version": 280,
+      "versionNonce": 557083461,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "jKwc0LR7egG5ZD0Wd8fsM"
+        }
+      ],
+      "updated": 1734395259928,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "jKwc0LR7egG5ZD0Wd8fsM",
+      "type": "text",
+      "x": 972.7726669311523,
+      "y": 336.6300048828125,
+      "width": 49.56794738769531,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6LV",
+      "roundness": null,
+      "seed": 852847851,
+      "version": 8,
+      "versionNonce": 20550123,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395262725,
+      "link": null,
+      "locked": false,
+      "text": "date 1",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "OPxbXGB5Ho9Ve6TXPFDR1",
+      "originalText": "date 1",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "lYoumg5CisRjCVfjbn7B0",
+      "type": "rectangle",
+      "x": 910.6015625,
+      "y": 368.8018798828125,
+      "width": 172.42187500000003,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#a5d8ff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6M",
+      "roundness": null,
+      "seed": 173970789,
+      "version": 258,
+      "versionNonce": 446794533,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "xToZYcFj8yKYcqmuGIcJI"
+        }
+      ],
+      "updated": 1734395264609,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "xToZYcFj8yKYcqmuGIcJI",
+      "type": "text",
+      "x": 972.0285263061523,
+      "y": 373.8018798828125,
+      "width": 49.56794738769531,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6MV",
+      "roundness": null,
+      "seed": 1179254539,
+      "version": 8,
+      "versionNonce": 1734476811,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395266121,
+      "link": null,
+      "locked": false,
+      "text": "date 1",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "lYoumg5CisRjCVfjbn7B0",
+      "originalText": "date 1",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "6VM9_8Zo1ldN3Wcbai4nJ",
+      "type": "rectangle",
+      "x": 911.775390625,
+      "y": 405.7042236328125,
+      "width": 169.59375,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#d0bfff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6N",
+      "roundness": null,
+      "seed": 1507559083,
+      "version": 390,
+      "versionNonce": 1863722635,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "y9FpY5jcPXOFF6F_UUDZE"
+        }
+      ],
+      "updated": 1734395268012,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "y9FpY5jcPXOFF6F_UUDZE",
+      "type": "text",
+      "x": 969.5882845520973,
+      "y": 410.7042236328125,
+      "width": 53.96796214580536,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6NV",
+      "roundness": null,
+      "seed": 1689873477,
+      "version": 8,
+      "versionNonce": 335877957,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395269441,
+      "link": null,
+      "locked": false,
+      "text": "date 2",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "6VM9_8Zo1ldN3Wcbai4nJ",
+      "originalText": "date 2",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "EKOnUZ7I97lJap5JcukvW",
+      "type": "rectangle",
+      "x": 912.080078125,
+      "y": 442.6514892578125,
+      "width": 168.54687499999991,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#d0bfff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6P",
+      "roundness": null,
+      "seed": 310203915,
+      "version": 432,
+      "versionNonce": 343985349,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "56ODhyejLs8B7c1bqcLw_"
+        }
+      ],
+      "updated": 1734395271455,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "56ODhyejLs8B7c1bqcLw_",
+      "type": "text",
+      "x": 969.3695345520973,
+      "y": 447.6514892578125,
+      "width": 53.96796214580536,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6PV",
+      "roundness": null,
+      "seed": 184988523,
+      "version": 8,
+      "versionNonce": 920410219,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395272908,
+      "link": null,
+      "locked": false,
+      "text": "date 2",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "EKOnUZ7I97lJap5JcukvW",
+      "originalText": "date 2",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "hhsRNiVDPdEO0fknWQ41M",
+      "type": "rectangle",
+      "x": 912.400390625,
+      "y": 478.7491455078125,
+      "width": 169.3515625,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#d0bfff",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6Q",
+      "roundness": null,
+      "seed": 1241862469,
+      "version": 484,
+      "versionNonce": 1544768235,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "8iKeO5ReH8UZXpY2dva1O"
+        }
+      ],
+      "updated": 1734395274905,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "8iKeO5ReH8UZXpY2dva1O",
+      "type": "text",
+      "x": 970.0921908020973,
+      "y": 483.7491455078125,
+      "width": 53.96796214580536,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6QV",
+      "roundness": null,
+      "seed": 2073620965,
+      "version": 8,
+      "versionNonce": 1959591141,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395276799,
+      "link": null,
+      "locked": false,
+      "text": "date 2",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "hhsRNiVDPdEO0fknWQ41M",
+      "originalText": "date 2",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "QGEzh7fQpXDQIbhtY_7ao",
+      "type": "rectangle",
+      "x": 911.537109375,
+      "y": 513.7471923828125,
+      "width": 171.15625000000006,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#ffc9c9",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6R",
+      "roundness": null,
+      "seed": 700498917,
+      "version": 317,
+      "versionNonce": 265871973,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "2SgW-0Yu7Ao9zKC4p2EWd"
+        }
+      ],
+      "updated": 1734395278372,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "2SgW-0Yu7Ao9zKC4p2EWd",
+      "type": "text",
+      "x": 970.8832550048828,
+      "y": 518.7471923828125,
+      "width": 52.463958740234375,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6RV",
+      "roundness": null,
+      "seed": 1045386187,
+      "version": 8,
+      "versionNonce": 2033621195,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395280274,
+      "link": null,
+      "locked": false,
+      "text": "date 3",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "QGEzh7fQpXDQIbhtY_7ao",
+      "originalText": "date 3",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "CNT8-0k9NsA0iXiJhyktH",
+      "type": "rectangle",
+      "x": 911.69140625,
+      "y": 550.7432861328125,
+      "width": 171.15625000000006,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#ffc9c9",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6T",
+      "roundness": null,
+      "seed": 1145052261,
+      "version": 341,
+      "versionNonce": 1184521035,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "ETwGd1w4H3pMygz_bQn9J"
+        }
+      ],
+      "updated": 1734395282188,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "ETwGd1w4H3pMygz_bQn9J",
+      "type": "text",
+      "x": 971.0375518798828,
+      "y": 555.7432861328125,
+      "width": 52.463958740234375,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6TV",
+      "roundness": null,
+      "seed": 597543813,
+      "version": 8,
+      "versionNonce": 757479045,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395284057,
+      "link": null,
+      "locked": false,
+      "text": "date 3",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "CNT8-0k9NsA0iXiJhyktH",
+      "originalText": "date 3",
+      "autoResize": true,
+      "lineHeight": 1.25
+    },
+    {
+      "id": "xXEEL6KrWrAkKQrEP8a45",
+      "type": "rectangle",
+      "x": 913.10546875,
+      "y": 592.3917236328125,
+      "width": 171.15625000000006,
+      "height": 30,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "#ffc9c9",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6U",
+      "roundness": null,
+      "seed": 803010411,
+      "version": 371,
+      "versionNonce": 445523307,
+      "isDeleted": false,
+      "boundElements": [
+        {
+          "type": "text",
+          "id": "a2146kpQ29geYG-WvhlL0"
+        }
+      ],
+      "updated": 1734395290779,
+      "link": null,
+      "locked": false
+    },
+    {
+      "id": "a2146kpQ29geYG-WvhlL0",
+      "type": "text",
+      "x": 972.4516143798828,
+      "y": 597.3917236328125,
+      "width": 52.463958740234375,
+      "height": 20,
+      "angle": 0,
+      "strokeColor": "#1e1e1e",
+      "backgroundColor": "transparent",
+      "fillStyle": "solid",
+      "strokeWidth": 2,
+      "strokeStyle": "solid",
+      "roughness": 1,
+      "opacity": 100,
+      "groupIds": [],
+      "frameId": null,
+      "index": "b6V",
+      "roundness": null,
+      "seed": 1861911397,
+      "version": 20,
+      "versionNonce": 1545355275,
+      "isDeleted": false,
+      "boundElements": null,
+      "updated": 1734395290779,
+      "link": null,
+      "locked": false,
+      "text": "date 3",
+      "fontSize": 16,
+      "fontFamily": 5,
+      "textAlign": "center",
+      "verticalAlign": "middle",
+      "containerId": "xXEEL6KrWrAkKQrEP8a45",
+      "originalText": "date 3",
+      "autoResize": true,
+      "lineHeight": 1.25
+    }
+  ],
+  "appState": {
+    "gridSize": 20,
+    "gridStep": 5,
+    "gridModeEnabled": false,
+    "viewBackgroundColor": "#ffffff"
+  },
+  "files": {}
+}
\ No newline at end of file
diff --git a/website/blog/2024-12-16-announcing-hudi-1-0-0.md 
b/website/blog/2024-12-16-announcing-hudi-1-0-0.md
new file mode 100644
index 00000000000..8d46173bc55
--- /dev/null
+++ b/website/blog/2024-12-16-announcing-hudi-1-0-0.md
@@ -0,0 +1,195 @@
+---
+title: "Announcing Apache Hudi 1.0 and the Next Generation of Data Lakehouses"
+excerpt: "game-changing major release, that reimagines Hudi and Data 
Lakehouses."
+author: Vinoth Chandar
+category: blog
+image: 
/assets/images/blog/non-blocking-concurrency-control/lsm_archive_timeline.png
+tags:
+- timeline
+- design
+- release
+- streaming ingestion
+- multi-writer
+- concurrency-control
+- blog
+---
+
+## Overview
+
+We are thrilled to announce the release of Apache Hudi 1.0, a landmark 
achievement for our vibrant community that defines what the next generation of 
data lakehouses should achieve. Hudi pioneered ***transactional data lakes*** 
in 2017, and today, we live in a world where this technology category is 
mainstream as the “***Data Lakehouse”***. The Hudi community has made several 
key, original, and first-of-its-kind contributions to this category, as shown 
below, compared to when other OSS a [...]
+
+![][image1]
+
+This release is more than just a version increment—it advances the breadth of 
Hudi’s feature set and its architecture's robustness while bringing fresh 
innovation to shape the future. This post reflects on how technology and the 
surrounding ecosystem have evolved, making a case for a holistic “***Data 
Lakehouse Management System***” (***DLMS***) as the new Northstar. For most of 
this post, we will deep dive into the latest capabilities of Hudi 1.0 that make 
this evolution possible.
+
+## Evolution of the Data Lakehouse
+
+Technologies must constantly evolve—[Web 
3.0](https://en.wikipedia.org/wiki/Web3), [cellular 
tech](https://en.wikipedia.org/wiki/List_of_wireless_network_technologies), 
[programming language 
generations](https://en.wikipedia.org/wiki/Programming_language_generations)—based
 on emerging needs. Data lakehouses are no exception. This section explores the 
hierarchy of such needs for data lakehouse users. The most basic need is the 
“**table format**” functionality, the foundation for data lake [...]
+
+However, the benefits of a format end there, and now a table format is just 
the tip of the iceberg. Users require an [end-to-end open data 
lakehouse](https://www.onehouse.ai/blog/open-table-formats-and-the-open-data-lakehouse-in-perspective),
 and modern data lakehouse features need a sophisticated layer of 
***open-source software*** operating on data stored in open table formats. For 
example, Optimized writers can balance cost and performance by carefully 
managing file sizes using the st [...]
+
+![][image2]
+
+Moving forward with 1.0, the community has 
[debated](https://github.com/apache/hudi/pull/8679) these key points and 
concluded that we need more open-source “**software capabilities**” that are 
directly comparable with DBMSes for two main reasons.
+
+**Significantly expand the technical capabilities of a data lakehouse**: Many 
design decisions in Hudi have been inspired by databases (see 
[here](https://github.com/apache/hudi/blob/master/rfc/rfc-69/rfc-69.md#hudi-1x) 
for a layer-by-layer mapping) and have delivered significant benefits to the 
community. For example, Hudi’s indexing mechanisms deliver the fast update 
performance the project has come to be known for.  We want to generalize such 
features across writers and queries and in [...]
+
+**We also need a database-like experience**: We originally designed Hudi as a 
software library that can be embedded into different query/processing engines 
for reading/writing/managing tables. This model has been a great success within 
the existing data ecosystem, which is familiar with scheduling jobs and 
employing multiple engines for ETL and interactive queries. However, for a new 
user wanting to explore data lakehouses, there is no piece of software to 
easily install and explore all  [...]
+
+If combined, we would gain a powerful database built on top of the data 
lake(house) architecture—a ***data*** ***lakehouse*** ***management*** 
***system*** ***(DLMS)***—that we believe the industry needs.
+
+## Key Features in Hudi 1.0
+
+In Hudi 1.0, we’ve delivered a significant expansion of data lakehouse 
technical capabilities discussed above inside Hudi’s [storage 
engine](https://en.wikipedia.org/wiki/Database_engine) layer.  Storage engines 
(a.k.a database engines) are standard database components that sit on top of 
the storage/file/table format and are wrapped by the DBMS layer above, handling 
the core read/write/management functionality. In the figure below, we map the 
Hudi components with the seminal [Architectur [...]
+
+![Hudi Stack](/assets/images/hudi-stack-1-x.png)
+<p align = "center">Figure: Apache Hudi Database Architecture</p> 
+
+Regarding full-fledged DLMS functionality, the closest experience Hudi 1.0 
offers is through Apache Spark. Users can deploy a Spark server (or Spark 
Connect) with Hudi 1.0 installed, submit SQL/jobs, orchestrate table services 
via SQL commands, and enjoy new secondary index functionality to speed up 
queries like a DBMS. Subsequent releases in the 1.x release line and beyond 
will continuously add new features and improve this experience.
+
+In the following sections, let’s dive into what makes Hudi 1.0 a standout 
release.
+
+### New Time and Timeline
+
+For the familiar user, time is a key concept in Hudi. Hudi’s original notion 
of time was instantaneous, i.e., actions that modify the table appear to take 
effect at a given instant. This was limiting when designing features like 
non-blocking concurrency control across writers, which needs to reason about 
actions more as an “interval” to detect other conflicting actions. Every action 
on the Hudi timeline now gets a *requested* and a *completion* time; Thus, the 
timeline layout version has [...]
+
+![Timeline actions](/assets/images/hudi-timeline-actions.png)
+<p align = "center">Figure: Showing actions in Hudi 1.0 modeled as an interval 
of two instants: requested and completed</p>
+
+Hudi tables are frequently updated, and users also want to retain a more 
extended action history associated with the table. Before Hudi 1.0, the older 
action history in a table was archived for audit access. But, due to the lack 
of support for cloud storage appends, access might become cumbersome due to 
tons of small files. In Hudi 1.0, we have redesigned the timeline as an [LSM 
tree](https://en.wikipedia.org/wiki/Log-structured_merge-tree), which is widely 
adopted for cases where good w [...]
+
+
+In the Hudi 1.0 release, the LSM timeline is heavily used in the query 
planning to map requested and completion times across Apache Spark, Apache 
Flink and Apache Hive. Future releases plan to leverage this to unify the 
timeline's active and history components, providing infinite retention of table 
history. Microbenchmarks show that the LSM timeline can be pretty efficient, 
even committing every ***30 seconds for 10 years with about 10M instants***, 
further cementing Hudi’s table format  [...]
+
+| Number of actions | Instant Batch Size | Read cost (just times) | Read cost 
(along with action metadata) | Total file size |
+| :---- | :---- | :---- | :---- | :---- |
+| 10000 | 10 | 32ms | 150ms | 8.39MB |
+| 20000 | 10 | 51ms | 188ms | 16.8MB |
+| 10000000 | 1000 | 3400ms | 162s | 8.4GB |
+
+<p align = "center">Figure: Microbenchmark of LSM Timeline</p>
+
+### Secondary Indexing for Faster Lookups
+
+Indexes are core to Hudi’s design, so much so that even the first 
pre-open-source version of Hudi shipped with 
[indexes](https://hudi.apache.org/docs/indexes#additional-writer-side-indexes) 
to speed up writes. However, these indexes were limited to the writer's side, 
except for record indexes in 0.14+ above, which were also integrated with Spark 
SQL queries. Hudi 1.0 generalizes indexes closer to the indexing functionality 
found in relational databases, supporting indexes on any secondar [...]
+
+![Indexes](/assets/images/hudi-stack-indexes.png)
+<p align = "center">Figure: the indexing subsystem in Hudi 1.0, showing 
different types of indexes</p>
+
+With secondary indexes, queries and DMLs scan a much-reduced amount of files 
from cloud storage, dramatically reducing costs (e.g., on engines like AWS 
Athena, which price by data scanned) and improving query performance for 
queries with low to even moderate amount of selectivity. On a benchmark of a 
query on *web\_sales* table (from ***10 TB tpc-ds dataset***), with file groups 
\- 286,603, total records \- 7,198,162,544 and cardinality of secondary index 
column in the \~ 1:150 ranges, w [...]
+
+| Run 1 | Total Query Latency w/o indexing skipping (secs) | Total Query 
Latency with secondary index skipping (secs) | % decrease |
+| :---- | :---- | :---- | :---- |
+| 1 | 252 | 31 | \~88% |
+| 2 | 214 | 10 | \~95% |
+| 3 | 204 | 9 | \~95% |
+
+In Hudi 1.0, secondary indexes are only supported for Apache Spark, with 
planned support for other engines in Hudi 1.1, starting with Flink, Presto and 
Trino.
+
+### Bloom Filter indexes
+
+Bloom filter indexes have existed on the Hudi writers for a long time. It is 
one of the most performant and versatile indexes users prefer for 
“needle-in-a-haystack” deletes/updates or de-duplication. The index works by 
storing special footers in base files around min/max key ranges and a dynamic 
bloom filter that adapts to the file size and can automatically handle 
partitioning/skew on the writer's path. Hudi 1.0 introduces a newer kind of 
bloom filter index for Spark SQL while retainin [...]
+
+```sql
+-- Create a bloom filter index on the driver column of the table `hudi_table`
+CREATE INDEX idx_bloom_driver ON hudi_indexed_table USING 
bloom_filters(driver)
+-- Create a bloom filter index on the column derived from expression 
`lower(rider)` of the table `hudi_table`
+CREATE INDEX idx_bloom_rider ON hudi_indexed_table USING bloom_filters(rider) 
OPTIONS(expr='lower');
+```
+
+In future releases of Hudi, we aim to fully integrate the benefits of the 
older writer-side index into the new bloom index. Nonetheless, this 
demonstrates the adaptability of Hudi’s indexing system to handle different 
types of indexes on the table.
+
+### Partitioning replaced by Expression Indexes
+
+An astute reader may have noticed above that the indexing is supported on a 
function/expression on a column. Hudi 1.0 introduces expression indexes similar 
to 
[Postgres](https://www.postgresql.org/docs/current/indexes-expressional.html) 
to generalize a two-decade-old relic in the data lake ecosystem \- 
partitioning\! At a high level, partitioning on the data lake divides the table 
into folders based on a column or a mapping function (partitioning function). 
When queries or operations are [...]
+
+![Indexes](/assets/images/expression-index-date-partitioning.png)
+<p align = "center">Figure: Shows index on a date expression when a different 
column physically partitions data</p>
+
+Hudi 1.0 treats partitions as a coarse-grained index on a column value or an 
expression of a column, as they should have been. To support the efficiency of 
skipping entire storage paths/folders, Hudi 1.0 introduces partition stats 
indexes that aggregate these statistics on the storage partition path level, in 
addition to doing so at the file level. Now, users can create different types 
of indexes on columns to achieve the effects of partitioning in a streamlined 
fashion using fewer conce [...]
+
+### Efficient Partial Updates
+
+Managing large-scale datasets often involves making fine-grained changes to 
records. Hudi has long supported [partial 
updates](https://hudi.apache.org/docs/0.15.0/record_payload#partialupdateavropayload)
 to records via the record payload interface. However, this usually comes at 
the cost of sacrificing engine-native performance by moving away from specific 
objects used by engines to represent rows. As users have embraced Hudi for 
incremental SQL pipelines on top of dbt/Spark or Flink Dyn [...]
+
+Partial updates improve query and write performance simultaneously by reducing 
write amplification for writes and the amount of data read by Merge-on-Read 
snapshot queries. It also achieves much better storage utilization due to fewer 
bytes stored and improved compute efficiency over existing partial update 
support by retaining vectorized engine-native processing. Using the 1TB 
Brooklyn benchmark for write performance, we observe about **2.6x** improvement 
in Merge-on-Read query performa [...]
+
+|  | Full Record Update | Partial Update | Gains |
+| :---- | :---- | :---- | :---- |
+| **Update latency (s)** | 2072 | 1429 | 1.4x |
+| **Bytes written (GB)** | 891.7 | 12.7 | 70.2x |
+| **Query latency (s)** | 164 | 29 | 5.7x |
+
+<p align = "center">Figure: Second benchmark for partial updates, 1TB MOR 
table, 1000 partitions, 80% random updates. 3/100 columns randomly updated</p>
+
+This also lays the foundation for managing unstructured and multimodal data 
inside a Hudi table and supporting [wide 
tables](https://github.com/apache/hudi/pull/11733) efficiently for machine 
learning use cases.
+
+### Merge Modes and Custom Mergers
+
+One of the most unique capabilities Hudi provides is how it helps process 
streaming data. Specifically, Hudi has, since the very beginning, supported 
merging records pre-write (to reduce write amplification), during write 
(against an existing record in storage with the same record key) and reads (for 
MoR snapshot queries), using a *precombine* or *ordering* field. This helps 
implement [event time 
processing](https://www.oreilly.com/radar/the-world-beyond-batch-streaming-101/)
 semantics,  [...]
+
+![event time ordering](/assets/images/event-time-ordering-merge-mode.png)
+<p align = "center">Figure: Shows EVENT\_TIME\_ORDERING where merging 
reconciles state based on the highest event\_time</p>
+
+Prior Hudi versions supported this functionality through the record payload 
interface with built-in support for a pre-combine field on the default 
payloads. Hudi 1.0 makes these two styles of processing and merging changes 
first class by introducing merge modes within Hudi.
+
+| Merge Mode | What does it do? |
+| :---- | :---- |
+| COMMIT\_TIME\_ORDERING | Picks record with highest completion time/instant 
as final merge result  i.e., standard relational semantics or arrival time 
processing |
+| EVENT\_TIME\_ORDERING | Default (for now, to ease migration).Picks record 
with the highest value for a user-specified ordering/precombine field as the 
final merge result. |
+| CUSTOM | Uses a user-provided RecordMerger implementation to produce final 
merge result (similar to stream processing processor APIs) |
+
+Like partial update support, the new *RecordMerger* API provides a more 
efficient engine-native alternative to the older RecordPayload interface 
through native objects and vectorized processing on EVENT\_TIME\_ORDERING merge 
modes. In future versions, we intend to change the default to 
COMMIT\_TIME\_ORDERING to provide simple, out-of-the-box relational table 
semantics.
+
+### Non-Blocking Concurrency Control for Streaming Writes
+
+We have expressed dissatisfaction with the optimistic concurrency control 
approaches employed on the data lakehouse since they appear to paint the 
problem with a broad brush without paying attention to the nuances of the 
lakehouse workloads. Specifically, contention is much more common in data 
lakehouses, even for Hudi, the only data lakehouse storage project capable of 
asynchronously compacting delta updates without failing or causing retries on 
the writer. Ultimately, data lakehouses a [...]
+
+Hudi 1.0 introduces a new **non-blocking concurrency control (NBCC)** designed 
explicitly for data lakehouse workloads, using years of experience gained 
supporting some of the largest data lakes on the planet in the Hudi community. 
NBCC enables simultaneous writing from multiple writers and compaction of the 
same record without blocking any involved processes. This is achieved by simply 
lightweight distributed locks and TrueTime semantics discussed above. (see 
[RFC-66](https://github.com [...]
+
+![NBCC](/assets/images/nbcc_partial_updates.gif)
+<p align = "center">
+Figure: Two streaming jobs in action writing to the same records concurrently 
on different columns.
+</p>
+
+NBCC operates with streaming semantics, tying together concepts from previous 
sections. Data necessary to compute table updates are emitted from an upstream 
source, and changes and partial updates can be merged in any of the merge modes 
above. For example, in the figure above, two independent Flink jobs enrich 
different table columns in parallel, a pervasive pattern seen in stream 
processing use cases. Check out this 
[blog](https://hudi.apache.org/blog/2024/12/06/non-blocking-concurrency [...]
+
+### Backwards Compatible Writing
+
+If you are wondering: “All of this sounds cool, but how do I upgrade?” we have 
put a lot of thought into making that seamless. Hudi has always supported 
backward-compatible reads to older table versions. Table versions are stored in 
table properties unrelated to the software binary version. The supported way of 
upgrading has been to first migrate readers/query engines to new software 
binary versions and then upgrade the writers, which will auto-upgrade the table 
if there is a table versi [...]
+
+![Indexes](/assets/images/backwards-compat-writing.png)
+<p align = "center">Figure: 4-step process for painless rolling upgrades to 
Hudi 1.0</p>
+
+Hudi 1.0 introduces backward-compatible writing to achieve this in 4 steps, as 
described above. Hudi 1.0 also automatically handles any checkpoint translation 
necessary as we switch to completion time-based processing semantics for 
incremental and CDC queries. The Hudi metadata table has to be temporarily 
disabled during this upgrade process but can be turned on once the upgrade is 
completed successfully. Please read the [release 
notes](https://hudi.apache.org/releases/release-1.0.0) car [...]
+
+## What’s Next?
+
+Hudi 1.0 is a testament to the power of open-source collaboration. This 
release embodies the contributions of 60+ developers, maintainers, and users 
who have actively shaped its roadmap. We sincerely thank the Apache Hudi 
community for their passion, feedback, and unwavering support.
+
+The release of Hudi 1.0 is just the beginning. Our current 
[roadmap](https://hudi.apache.org/roadmap/) includes exciting developments 
across the following planned releases:
+
+* **1.0.1**: First bug fix, patch release on top of 1.0, which hardens the 
functionality above and makes it easier. We intend to publish additional patch 
releases to aid migration to 1.0 as the bridge release for the community from 
0.x.
+* **1.1**:  Faster writer code path rewrite, new indexes like bitmap/vector 
search, granular record-level change encoding, Hudi storage engine APIs, 
abstractions for cross-format interop.
+* **1.2**: Multi-table transactions, platform services for reverse streaming 
from Hudi etc., Multi-modal data \+ indexing, NBCC clustering
+* **2.0**: Server components for DLMS, caching and metaserver functionality.
+
+Hudi releases are drafted collaboratively by the community. If you don’t see 
something you like here, please help shape the roadmap together.
+
+## Get Started with Apache Hudi 1.0
+
+Are you ready to experience the future of data lakehouses? Here’s how you can 
dive into Hudi 1.0:
+
+* Documentation: Explore Hudi’s 
[Documentation](https://hudi.apache.org/docs/overview) and learn the 
[concepts](https://hudi.apache.org/docs/hudi_stack).
+* Quickstart Guide: Follow the [Quickstart 
Guide](https://hudi.apache.org/docs/quick-start-guide) to set up your first 
Hudi project.
+* Upgrading from a previous version?  Follow the [migration 
guide](https://hudi.apache.org/releases/release-1.0.0#migration-guide) and 
contact the Hudi OSS community for help.
+* Join the Community: Participate in discussions on the [Hudi Mailing 
List](https://hudi.apache.org/community/get-involved/), 
[Slack](https://join.slack.com/t/apache-hudi/shared_invite/zt-2ggm1fub8-_yt4Reu9djwqqVRFC7X49g)
 and [GitHub](https://github.com/apache/hudi/issues).
+* Follow us on social media: 
[Linkedin](https://www.linkedin.com/company/apache-hudi/?viewAsMember=true), 
[X/Twitter](https://twitter.com/ApacheHudi).
+
+We can’t wait to see what you build with Apache Hudi 1.0. Let’s work together 
to shape the future of data lakehouses\!
+
+Crafted with passion for the Apache Hudi community.
+
+[image1]: 
<data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAACAAAAAHHCAYAAAAr0rjvAACAAElEQVR4XuydB7wkRbX/Zxd87/197+nGe++cvhtYVkBMIEhWVgkqmAEBMyqiYnoiGEABswiKqKgIohgAEREEROISJSkSDCACggGQIJLj/M+vq6r7zOmeuXN3b76/7+dzPjNdp6o6d6VTpxoNQgghhBBCCCGEEEIIIYQQMm6IyH4+jBBCCCGEEEIIIYQQQgghhBBCCCGTDBFpZVm2tw8nhBBCCCGEEEIIIYQQQgghhBBCyCQhy7LXwgBA5TavI4QQQgghhBBCCCGEEEIIIYQQQsgkQUQeP/CD82EAAC8Aa3g9IYQQQgghhBBCCCGEEEIIIYQQQiY4WZa9BQP/j/xqVuuwj+dGAL/2cQghhBBCCCGEEEIIIYQQQgghhBAywRGRv+/zjr7cAOD2M2bDAOCJRYsWPd3
 [...]
+
+[image2]: 
<data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA44AAAIFCAYAAACd96M7AACAAElEQVR4XuydCXhV1bn+Qe3tvb29vb39t1bP2efkDDmZk3PO3mQOJMzzFOZ5nlFAmWcQBBUEEZFAgKp1QkVqrbVKRa1V61TrUBGLY0EUCIPzgPmvb529DitfTkiAAEl4f8/zPtn7W2uvvfYQ2G/W1KgRAABcQFhbPk9P3FT+PzwOAAAAAAAAAAA0il9T/uOM0rLOZr9Z14ndxjwdAAAAAAAAAMAFTnDT4eZkHElNmjQp4ekAAAAAAAAAAC5gkksOXK5MY8ash0ZYec32hEKhn/N8AAAAAAAAAAAuUJRpDK7ZU2zmFb1D21Zm9kHLsn7J8wIAAAAAAAAAuMCwSvb9UhlHM7vg4+D8R4fJ/YVPDBbG8U88PwAAAAAAAACAC4kF5Rcp0xgeMGeZ2XHQ3dEuq2QkW3T
 [...]
diff --git a/website/static/assets/images/backwards-compat-writing.png 
b/website/static/assets/images/backwards-compat-writing.png
new file mode 100644
index 00000000000..76ecfaaf480
Binary files /dev/null and 
b/website/static/assets/images/backwards-compat-writing.png differ
diff --git 
a/website/static/assets/images/expression-index-date-partitioning.png 
b/website/static/assets/images/expression-index-date-partitioning.png
new file mode 100644
index 00000000000..6dbc7db6d4f
Binary files /dev/null and 
b/website/static/assets/images/expression-index-date-partitioning.png differ
diff --git a/website/static/assets/images/nbcc_partial_updates.gif 
b/website/static/assets/images/nbcc_partial_updates.gif
new file mode 100644
index 00000000000..8bae5624100
Binary files /dev/null and 
b/website/static/assets/images/nbcc_partial_updates.gif differ

Reply via email to