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]