JingsongLi opened a new issue #1170:
URL: https://github.com/apache/iceberg/issues/1170


   Like Spark 3, Flink also has `Catalog` interface, we can integrate Iceberg 
catalog to Flink catalog, iceberg as a Flink catalog, users can use Flink DDLs 
to manipulate iceberg metadata. And query iceberg tables directly.
   
   The biggest incompatible thing is the database and namespace.
   - In Flink: like Hive, the identifier of a table is 
`catalogName.databaseName.tableName`. The database name must exist, and it 
should be a single string (Not null or whitespace only).
   - In Iceberg, the identifier of a table is 
`namespace_level1.namespace_level2....tableName` in a catalog. The level number 
of namespace can be zero, one and more.
   
   A simple way is only support single namespace for Flink catalog, but this is 
too limited.
   
   A way can be:
   - For empty namespace: We can provide a config option 
`empty.namespace.name`, its default value can be `__DEFAULT_EMPTY_NAMESPACE__`.
   - For multi levels namespace: Using `Namespace.toString` as database name. 
In Flink SQL, supports quoting identifier. For example, using 
`iceberg_catalog.{quote}namespace_level1.namespace_level2{quote}.table_name`.


----------------------------------------------------------------
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.

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



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to