fresh-borzoni commented on code in PR #3424:
URL: https://github.com/apache/fluss/pull/3424#discussion_r3571794849


##########
website/docs/streaming-lakehouse/integrate-data-lakes/catalogs/glue.md:
##########
@@ -0,0 +1,411 @@
+---
+title: AWS Glue
+sidebar_position: 2
+---
+
+# AWS Glue
+
+## Introduction
+
+[AWS Glue](https://aws.amazon.com/glue/) is a serverless data integration 
service that includes a central metadata repository known as the AWS Glue Data 
Catalog. The Glue Data Catalog is compatible with Apache Iceberg, making it a 
convenient option for managing Iceberg table metadata on AWS.
+
+This guide explains how to configure Fluss to use AWS Glue as its Iceberg 
catalog. For general Iceberg integration details (table mapping, data types, 
limitations), see [Iceberg](../formats/iceberg.md).
+
+## How It Works
+
+When Fluss is configured with AWS Glue as its Iceberg catalog:
+
+1. **Data ingestion**: Applications write data to Fluss tables using the Fluss 
client (Java/Python), Flink SQL, or any Kafka-compatible producer. Fluss stores 
this data in its real-time log (similar to Kafka topics).
+2. **Tiering to Iceberg**: A separate Flink job (the [tiering 
service](maintenance/tiered-storage/lakehouse-storage.md#start-the-datalake-tiering-service))
 periodically reads accumulated data from Fluss, converts it to Parquet format, 
writes the files to S3, and commits an Iceberg snapshot to the Glue Data 
Catalog.
+3. **Query via Athena/Spark/Trino**: Any Iceberg-compatible engine can 
discover and query the tiered tables through AWS Glue — no additional 
configuration needed.
+
+```
+┌─ Data Sources ─────────┐     ┌─ Fluss Cluster ──────┐     ┌─ AWS 
────────────────────┐
+│                         │     │                      │     │                 
         │
+│  App (Fluss client)   ─┼────▶│  Coordinator         │     │  Glue Data 
Catalog       │
+│  Flink CDC job        ─┼────▶│  TabletServer(s)     │     │  (table 
metadata)        │
+│  Kafka producer       ─┼────▶│  ZooKeeper           │     │                  
        │
+│                         │     │                      │     │  S3 Bucket      
         │
+└─────────────────────────┘     └──────────┬───────────┘     │  (Parquet data 
files)    │
+                                           │                  │                
          │
+                                ┌──────────▼───────────┐     │  Athena / Spark 
/ Trino  │
+                                │  Flink Tiering Job   ├────▶│  (query engine) 
         │
+                                │  (reads Fluss log,   │     │                 
         │
+                                │   writes Iceberg)    │     
└──────────────────────────┘
+                                └──────────────────────┘
+```
+
+> **KEY CONCEPT**: Flink is used here for the **tiering service** (Fluss → 
Iceberg/S3/Glue) and optionally for data ingestion via SQL. But Flink is NOT 
the only way to write data to Fluss. Applications can write directly using the 
Fluss client library (Java, Python) or any Kafka-compatible producer. The 
tiering service is what bridges Fluss's real-time log to the Glue Data Catalog.
+
+## Prerequisites
+
+### Java Version
+
+Fluss 0.9.x requires **Java 17 or later** for the Tablet Server. Java 11 will 
fail with `NoSuchMethodError: MappedByteBuffer.duplicate()`.
+
+### AWS IAM Permissions
+
+The processes running Fluss servers and the Flink tiering service must have 
IAM permissions for both Glue and S3. Below is a minimal IAM policy:

Review Comment:
   @qzyu999 this one as well, it's a valid point



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to