Open xiangjinwu opened 1 year ago
Once we can show the sink schema via a sql command, we can then implement a python script that auto registers the schema registry. It doesn't have to be implemented in the kernel, unless we see a similar requirements.
Once we can show the sink schema via a sql command, we can then implement a python script that auto registers the schema registry. It doesn't have to be implemented in the kernel, unless we see a similar requirements.
Hmm... Where and who will run the python script? If it is the DB admin, not the SQL user and the script is not run in SQL, I think it is still a development burden.
Can be anyone who has the privilege to read table columns and register schema to Schema Registry.
As discussed previously with Patrick, we agree that auto-registering schemas is a valid requirement. Almost all commercial Extract&Load systems like Fivetran will create downstream tables automatically. https://github.com/risingwavelabs/risingwave/issues/13718
For the user-facing option name, let's align it to auto.create
. We'll support this option for other sinks as well in the future.
Is your feature request related to a problem? Please describe.
https://docs.confluent.io/platform/current/schema-registry/schema_registry_onprem_tutorial.html#auto-schema-registration
Even for a simple table
create table t (k int, val varchar);
The avro definition could be:Inputting this manually is cumbersome and error-prone.
Task items
[ ] https://github.com/risingwavelabs/risingwave/issues/14254auto.create for Iceberg sink is unplanned because there are sophisticated options in Iceberg schemas.Describe the solution you'd like
https://github.com/risingwavelabs/risingwave/blob/main/e2e_test/sink/kafka/avro.slt
Describe alternatives you've considered
DESCRIBE
(or some other dedicated command) to generate the definition for a relation:Additional context
Limitations of an auto generated definition: