apache-kafka - Schema Registry VS 不同的主题处理
问题描述
处理违反合同变更的缺点是什么,这可能会对同一管道上的一些producer, topic, consumer tuple
消费者产生不利影响[即],通过topic
完全不同的方式?或者使用flattened
包含旧/新字段的对象结构?我们正在使用Spring-Boot
.
在要进行更改的情况下,与 using 相比,我们为什么不这样做Schema Registry
?
解决方案
好吧,默认情况下,Schema Registry 强制执行 Backwards Schema Evolution,因此在您将主题配置明确设置为根本不执行兼容性检查之前,不会有真正破坏性的模式更改。
如果您绝对需要破坏模式,您可以删除注册表中的主题(但这不会删除主题中该数据的现有 Avro ID)
如果您展平数据,我看不出这与 CSV 有什么区别...在消息的顶层提供所有字段并不会改变您可能需要删除或添加稍后需要解析的字段的事实.
如果您确实需要, Schema Registry可以在单个主题中使用不同的类型。
推荐阅读
- plsql - 如何找出 DBF 文件或任何文件的格式?
- javascript - Ember.js 模板内模式将变量传递给向下传递的操作(上下文组件)
- c++ - 如何使用 lambda,返回一个布尔值,作为参数
- css - 为响应式网格系统使用列数
- django - Django过滤通用关系(唯一约束异常)
- c# - 如何使用字符串格式省略句点但留下数字
- angular - 选择元素的角度焦点
- git - 当我尝试将项目推送到仓库时,如何解决在 git 上弹出的这个错误?
- database - 休眠:引起:java.sql.SQLException:表/视图“用户”已存在于架构中
- sql - 在 Laravel 中查看刀片时检查有多少查询发送到数据库