Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

[FLINK-XXX] Add set_deserializer method to Python KafkaSourceBuilder #148

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

fqaiser94
Copy link

Haven't been able to file a JIRA ticket yet as I'm waiting on account creation.

Currently PyFlink users have access to only the set_value_only_deserializer API for configuring how to deserialize Kafka messages. This API is extremely limited as it does not allow PyFlink users to:

  1. Deserialize keys
  2. Access ConsumerRecord metadata such as topic, partition, offset, etc.

We can resolve this by exposing a set_deserializer method which will allow users to pass in a KafkaRecordDeserializationSchema object that describes how to deserialize a ConsumerRecord. This is similar to the pattern followed by the Java implementation of KafkaSourceBuilder.

Copy link

boring-cyborg bot commented Jan 13, 2025

Thanks for opening this pull request! Please check out our contributing guidelines. (https://flink.apache.org/contributing/how-to-contribute.html)

@fqaiser94 fqaiser94 force-pushed the support_kafka_record_deserialization_schema_in_python branch from 568158b to 1bd40dc Compare January 13, 2025 19:23
@fqaiser94 fqaiser94 changed the title [FLINK-XXX]: Add Python KafkaSource.set_deserializer API [FLINK-XXX] Add Python KafkaSource.set_deserializer API Jan 13, 2025
@fqaiser94 fqaiser94 changed the title [FLINK-XXX] Add Python KafkaSource.set_deserializer API [FLINK-XXX] Add set_deserializer method to Python KafkaSourceBuilder Jan 13, 2025
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant