כדי לכתוב מ-Dataflow ל-Apache Iceberg, צריך להשתמש במחבר קלט/פלט מנוהל.
שירות Managed I/O תומך ביכולות הבאות של Apache Iceberg:
| קטלוגים |
|
|---|---|
| יכולות קריאה | קריאה של נתונים באצווה |
| יכולות כתיבה |
|
כדי להשתמש בטבלאות BigQuery ל-Apache Iceberg, צריך להשתמש במחבר BigQueryIO עם BigQuery Storage API. הטבלה צריכה כבר להיות קיימת. אי אפשר ליצור טבלה דינמית.
תלויות
מוסיפים את יחסי התלות הבאים לפרויקט:
Java
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-managed</artifactId>
<version>${beam.version}</version>
</dependency>
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-io-iceberg</artifactId>
<version>${beam.version}</version>
</dependency>
יעדים דינמיים
שירות מנוהל של קלט/פלט ל-Apache Iceberg תומך ביעדים דינמיים. במקום לכתוב לטבלה קבועה אחת, המחבר יכול לבחור באופן דינמי טבלת יעד על סמך ערכי שדות ברשומות הנכנסות.
כדי להשתמש ביעדים דינמיים, צריך לספק תבנית לפרמטר ההגדרה table. מידע נוסף זמין במאמר בנושא יעדים דינמיים.
דוגמאות
בדוגמאות הבאות מוצגות דרכים לשימוש ב-Managed I/O כדי לכתוב ל-Apache Iceberg.
כתיבה לטבלת Apache Iceberg
בדוגמה הבאה, נתוני JSON בזיכרון נכתבים לטבלת Apache Iceberg.
Java
כדי לבצע אימות ב-Dataflow, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
כתיבה עם יעדים דינמיים
בדוגמה הבאה, נתונים נכתבים לטבלאות שונות של Apache Iceberg על סמך שדה בנתוני הקלט.
Java
כדי לבצע אימות ב-Dataflow, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
המאמרים הבאים
- קריאה מ-Apache Iceberg
- כתיבה של נתונים בזמן אמת ל-Apache Iceberg באמצעות קטלוג REST של Lakehouse for Apache Iceberg.
- מידע נוסף על קלט/פלט מנוהל