使用AWS Redshift从AWS MSK中读取数据

Amazon Redshift 流式摄取的目的是简化将流式数据直接从流式服务摄取到 Amazon Redshift 或 Amazon Redshift Serverless 的过程。

官方文档[1]中有详细步骤。用unauthenticated, IAM 的方式均可以进行连接,只不过使用的是不同端口:9092或者9098

1\] [https://docs.amazonaws.cn/redshift/latest/dg/materialized-view-streaming-ingestion-getting-started-MSK.html](https://docs.amazonaws.cn/redshift/latest/dg/materialized-view-streaming-ingestion-getting-started-MSK.html "https://docs.amazonaws.cn/redshift/latest/dg/materialized-view-streaming-ingestion-getting-started-MSK.html") 使用IAM方式: dev=# CREATE EXTERNAL SCHEMA external_schema_name_msk FROM MSK IAM_ROLE default AUTHENTICATION iam URI 'b-3.testtest.6ruea7.c2.kafka.cn-northwest-1.amazonaws.com.cn:9098'; CREATE SCHEMA Time: 309.537 ms dev=# SELECT schemaname, tablename FROM SVV_EXTERNAL_TABLES WHERE schemaname = 'external_schema_name_msk'; schemaname | tablename --------------------------+--------------------- external_schema_name_msk | __amazon_msk_canary external_schema_name_msk | __consumer_offsets external_schema_name_msk | kafka-default-topic (3 rows) dev=# CREATE MATERIALIZED VIEW common_msk_cdp_wecom_tag AUTO REFRESH YES AS SELECT * FROM external_schema_name_msk."kafka-default-topic"; CREATE MATERIALIZED VIEW Time: 667.501 ms dev=# select kafka_timestamp from common_msk_cdp_wecom_tag; kafka_timestamp ----------------- (0 rows) Time: 18.564 ms dev=# refresh MATERIALIZED VIEW common_msk_cdp_wecom_tag; INFO: Materialized view common_msk_cdp_wecom_tag was incrementally updated successfully. Stream returned no new data. REFRESH Time: 1493.006 ms dev=# select kafka_timestamp from common_msk_cdp_wecom_tag; kafka_timestamp ------------------------- 2024-10-12 04:49:19.693 2024-10-12 04:49:20.136 2024-10-12 04:49:20.193 2024-10-12 04:49:20.206 2024-10-12 04:49:20.214 2024-10-12 04:49:20.241 2024-10-12 04:49:20.248 2024-10-12 04:49:20.256 (8 rows) Time: 6141.639 ms 使用Unauthenticated 方式: dev=# CREATE EXTERNAL SCHEMA msktest dev-# FROM MSK dev-# IAM_ROLE 'arn:aws-cn:iam::123456789:role/shiranredshift' dev-# AUTHENTICATION none dev-# CLUSTER_ARN 'arn:aws-cn:kafka:cn-north-1:123456789:cluster/shiranmsk/03260cbd-b23c-442f-a858-8af96e6b90de-2'; CREATE SCHEMA dev=# dev=# dev=# CREATE MATERIALIZED VIEW mskview AUTO REFRESH YES AS dev-# SELECT * dev-# FROM msktest."mirror1"; CREATE MATERIALIZED VIEW dev=# dev=# dev=# select * from mskview; kafka_partition | kafka_offset | kafka_timestamp_type | kafka_timestamp | kafka_key | kafka_value | kafka_head ers | refresh_time -----------------+--------------+----------------------+-----------------+-----------+-------------+----------- ----+-------------- (0 rows) dev=#

相关推荐
m0_736927041 小时前
想抓PostgreSQL里的慢SQL?pg_stat_statements基础黑匣子和pg_stat_monitor时间窗,谁能帮你更准揪出性能小偷?
java·数据库·sql·postgresql
lang201509281 小时前
MySQL 8.0.29 及以上版本中 SSL/TLS 会话复用(Session Reuse)
数据库·mysql
望获linux1 小时前
【实时Linux实战系列】使用 u-trace 或 a-trace 进行用户态应用剖析
java·linux·前端·网络·数据库·elasticsearch·操作系统
清和与九2 小时前
binLog、redoLog和undoLog的区别
数据库·oracle
望获linux2 小时前
【实时Linux实战系列】FPGA 与实时 Linux 的协同设计
大数据·linux·服务器·网络·数据库·fpga开发·操作系统
总有刁民想爱朕ha2 小时前
Python自动化从入门到实战(24)如何高效的备份mysql数据库,数据备份datadir目录直接复制可行吗?一篇给小白的完全指南
数据库·python·自动化·mysql数据库备份
wanhengidc2 小时前
云手机的魅力与优势
网络·游戏·智能手机·架构·云计算
朝九晚五ฺ3 小时前
【Redis学习】持久化机制(RDB/AOF)
数据库·redis·学习
虾说羊3 小时前
sql中连接方式
数据库·sql
liweiweili1263 小时前
Django中处理多数据库场景
数据库·python·django