Vertica的这些事(十四)——Vertica实时消费kafka实现
2024-08-31 07:41:56
一、 安装环境
Vertica官方提供了消费kafka的方法,需要注意版本对应
消费kafka原理,是Vertica提供的Udx
首先需要安装相应的环境
/${vertica}/packages/kafka/ddl/install.sql
判断是否安装成功
/${vertica}/packages/kafka/ddl/isinstalled.sql
二、 单次消费kafka
参考官方文档 Using COPY with Kafka
COPY schema.target_table SOURCE KafkaSource (stream='topic1|1|1,topic2|2|2', brokers='host1:9092,
host2:9092',duration= INTERVAL'timeslice',stop_on_eof=TRUE,
eof_timeout= INTERVAL'timeslice')
PARSER KafkaJSONParser(flatten_arrays=False, flatten_maps=False)
REJECTED DATA AS TABLE schema.rejection_table TRICKLE;
三、 实时消费kafka
参考官方文档Using Kafka with Vertica
- 首先创建一个Scheduler
/opt/vertica/packages/kafka/bin/vkconfig scheduler --add --config-schema myScheduler --operator user1
使用conf封装Vertica数据库登录信息
kafka_config=”—cinfig-schema kafka01 –dbhoust 172.17.12.1 –username dbadmin –password pass1”
- 创建Scheduler脚本
/opt/vertica/packages/kafka/bin/vkconfig scheduler –add ${ kafka_config } –config-schema kafka_config --operator dbadmin
- 创建kafka集群信息
BROKERS=”172.17.12.2:9099, 172.17.12.3:9099, 172.17.12.4:9099”
/opt/vertica/packages/kafka/bin/vkconfig kafka-cluster –add ${ kafka_config } --onfig-schema kafka_config --cluster KafkaCluster –brokers $ BROKERS
- 读取topic
/opt/vertica/packages/kafka/bin/vkconfig topic –add ${ kafka_config } –target public.kafka_tgt –rejection-table public.kafka_rej –cluster KafkaCluster –topic web_pagelogs –number-partitions 1
- 发布Scheduler
/opt/vertica/packages/kafka/bin/vkconfig launch ${ kafka_config } -- onfig-schema kafka_config –instance-name webpagelogs
- 删除scheduler
/opt/vertica/packages/kafka/bin/vkconfig scheduler ${kafka_config} –remove –config-schema kafka_config
- 删除topic接收
/opt/vertica/packages/kafka/bin/vkconfig topic ${kafka_config} –remove –target public.kafka_tgt
PS:
通过最新对Vertica消费kafka的使用,发现这个功能比较鸡肋。多个topic也只能放到一个scheduler里面执行消费,而且每次修改增加都需要停下所有topic的消费进程。另外在使用过程中也发现了丢失数据的现象。
最新文章
- JSP实现在项目在网页上查询
- FFT
- Django提交POST表单“CSRF verification failed. Request aborted”问题的解决
- MVC中使用Ajax提交数据 Jquery Ajax方法传值到action
- /var文件系统
- Jetty与Tomcat的区别 转
- Group Shifted Strings
- C#中DataTable使用技巧
- ASP.NET一些常用的东西
- (原)java中opencv的width的问题
- Oracle存储过程的一点使用总结
- (7)STM32使用HAL库实现RS485通讯(全双工串口)
- SAP HUM 事务代码HUMO为整托做Scrap
- Java虚拟机监控命令
- STM32学习笔记:【002】BIN文件通过ST-LINK烧录STM32芯片
- vim 配置一:
- new 几种用法
- python中的数字取整(ceil,floor,round)概念和用法
- 转:C#线程系列讲座(1) BeginInvoke和EndInvoke方法
- Hadoop学习之路(十五)MapReduce的多Job串联和全局计数器