当前位置: 首页 > 知识库问答 >
问题:

从合流架构注册表检索架构

闻人吕恭
2023-03-14

我正在尝试从模式注册表中检索给定kafka主题的模式主题版本。我可以使用client.register(schema-name,schema)成功发布新版本,但我不确定如何检索版本。我在下面尝试使用curl请求,但结果立即命中-1(空)。

CachedSchemaRegistryClient client = new CachedSchemaRegistryClient(schemaRegistryUrl, 20);

// curl -X GET http://schema.registry.url:8888/subjects/{topic}/versions/

String command = "curl -X GET --header 'Accept: application/vnd.schemaregistry.v1+json' 'https://schema.registry.url:8888/api/schema-proxy/subjects/mytopic-value/versions'";
Process process = Runtime.getRuntime().exec(command);

Reader reader = new InputStreamReader(process.getInputStream());
int result;
while ((result = reader.read()) != -1){ // Nothing printed
    System.out.println(result);
}

我如何修复这个GET请求,或者更好的是,我应该如何使用模式注册中心客户端来检索一个模式?

共有1个答案

南门魁
2023-03-14

用以下方法得出结论:

SchemaMetadata sm = client.getLatestSchemaMetadata(schemaName);
System.out.println(sm.getSchema());
 类似资料:
  • 对于跨网络汇流平台,我们有一个kafka集群在Premise上,另一个在AWS上,其中数据使用mirror Maker从on-prem复制到AWS。这两个集群都独立于它们自己的模式注册表、rest代理和Connect,这两个集群都有不同的生产者和消费者集,并且选择的主题在集群之间被镜像。 部署schema-registry的最佳实践应该是什么?我们是否应该在on-prem和AWS上有一个主服务器(

  • 嘿,我想将ConFluent模式注册表与Avro Serializers一起使用:留档现在基本上是说:不要为多个不同的主题使用相同的模式 谁能解释一下原因吗?我重新搜索了源代码,它基本上将模式存储在Kafka主题中,如下所示(topicname,magicbytes,version- 因此,除了冗余之外,我看不到多次使用模式的问题?

  • 我正在使用Avro模式向Kafka主题写入数据。起初,一切正常。在avro文件中添加多一个新字段(scan_app_id)后。我正面临这个错误。 Avro文件:{ “type”:“record”,“name”:“initiate_scan”,“namespace”:“avro”,“doc”:“initiate_scan的avro架构注册表”,“fields”:[{“name”:“app_id”,“

  • 我们正在尝试将NiFi连接到合流Kafka实例,该实例已设置为在以Avro格式发布/使用消息时使用合流模式注册表。 但是,当我们启动NiFi kafka处理器时,我们会遇到以下异常:

  • 我已经在Ubuntu 16.04机器上安装了合流平台,并初步配置了zookeeper、Kafka和ksql,启动了合流平台。我可以看到下面的消息。 现在一切都启动了,当我检查融合平台的状态时,我观察到Schema注册表,连接 我已经检查了schema注册表的日志,找到了下面的日志。

  • 我有一个docker容器运行AWS弹性容器服务(Fargate)中的confluentinc/cp模式注册表:5.5.0。只有一个容器正在运行。通过该模式注册表获取当前注册模式的API调用正在工作(例如,