Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon s3 融合Kafka-to-S3接收器自定义S3命名,便于分区_Amazon S3_Apache Kafka_Amazon Athena_Confluent Platform_S3 Kafka Connector - Fatal编程技术网

Amazon s3 融合Kafka-to-S3接收器自定义S3命名,便于分区

Amazon s3 融合Kafka-to-S3接收器自定义S3命名,便于分区,amazon-s3,apache-kafka,amazon-athena,confluent-platform,s3-kafka-connector,Amazon S3,Apache Kafka,Amazon Athena,Confluent Platform,S3 Kafka Connector,我正在使用confluent的kafka-connect-s3将我的卡夫卡主题备份到s3。我希望能够使用Athena轻松地查询这些数据,并对其进行适当的分区,以便进行廉价/快速的读取 我想按(年/月/日/主题)元组进行分区。我已经使用Daily partitioner解决了年/月/日部分。现在,year=YYYY/month=MM/day=DD进入路径,因此任何基于配置单元的查询都会及时进行优化/分区。查看msck解释,注意使用userid= 然而,基于这些文档,我在路径中得到了{topic}

我正在使用confluent的kafka-connect-s3将我的卡夫卡主题备份到s3。我希望能够使用Athena轻松地查询这些数据,并对其进行适当的分区,以便进行廉价/快速的读取

我想按(年/月/日/主题)元组进行分区。我已经使用Daily partitioner解决了年/月/日部分。现在,year=YYYY/month=MM/day=DD进入路径,因此任何基于配置单元的查询都会及时进行优化/分区。查看msck解释,注意使用
userid=

然而,基于这些文档,我在路径中得到了{topic},但是没有办法将其修改为topic={topic}。我可以将其放入前缀中(而不是env={env},前缀是env={env}/topic={topic}),但它下面的另一个独子目录{topic}似乎是多余的

我还注意到,主题名位于由+(以及分区和起始偏移量)分隔的消息名中

我的问题。如何在路径中获取topic={topic},以便基于配置单元的查询自动创建该分区?或者我已经在路径(没有主题=)或消息名(同样,没有主题=)中免费获得了它吗

如何在路径中获取topic={topic},以便基于配置单元的查询自动创建该分区

没有


建议为每个主题创建一个分区表,而不是将主题本身作为分区。

注意:S3接收器不应被视为“备份”,因为在获取元数据时会丢失元数据written@OneCricketeer谢谢你。您会推荐什么替代方案作为备份?我们不关心大多数元数据(除了消费偏移量之类的元数据,这是我们自己备份的主题)。有,也有一些存储原始二进制数据,但是我说这不是备份,因为没有真正合适的“恢复”工具;它只是写入S3的原始二进制数据,所以如果您真的需要一个小型RTO,那么您需要使用自己的工具为该场景做好准备。对于偏移量主题也可以这样说,因为键对于偏移量非常重要(如果使用模式注册表,还包括
\u schemas
主题)