从零开始实施推荐系统的落地部署——36.推荐系统案例(二十六)解决DLV的请求响应体过长和python连接kafka无数据问题

网友投稿 551 2022-05-30

从零开始实施推荐系统的落地部署——36.推荐系统案例(二十六)解决DLV的请求响应体过长和python连接kafka无数据问题

1.在华为云数据可视化DLV里,使用WT双轴线状图时,刚开始,显示数据化展示没有问题,等过了1—2天,出现异常。但是经查询发现mysql里的数据没有问题,考虑的是不是基础版的存储空间不够的原因,但是在文档找不到如何查询DLV的存储空间。只能提交工单,经华为云研发工程师确认,DLV查询请求返回的数据总大小是有限制的。控制的是每个请求响应体的长度,不是从数据条数限制的。而且跟DLV版本的无关。而采集的数据是股市交易在4小时里每3秒在获取一次数据,2天内获取9千多条数据。做展示的每3秒显示的效果图会导致请求项议题长度过长而无法获取数据。根据推算,1分钟有20条数据,1个小时就有20*60等于1200条数据,4小时的数据为4800条。所以解决的办法有2种:(1)统计每天的平均交易额度,这样能把4800条数据合为一条数据,这样就减少请求响应体长度,可展示20到30年的数据展示。但是有缺点是无法很好展示当天的变化效果图。如左下图所示(2)不需要减少响应体长度,只要控制时间范围设置为一天,缺点是只能显示当天的一天数据可视化效果图。如右上图所示。

2.现在有很多大数据的案例都是根据java或scala开发的,但是我想统一使用python来开发,之前选用python-kafka的第三方库在虚拟机上测试把数据写入到kafka,运行正常,没有报错。但是在kafka的消费端无数据。已经测试过kafka,确保kafka运行没有问题。

from kafka import KafkaProducer

producer = KafkaProducer(bootstrap_servers='192.168.56.112:9092',key_serializer=str.encode)

producer.send('test',da5)

在找不到原因的情况下,只好使用pykafka把数据写入到kafka消费端。代码如下:

class operateKafka:

def __init__(self):

myhosts = "kafka1.wuyi.com:9092"

client = KafkaClient(hosts=myhosts)

self.topic = client.topics['test']

在使用命令查看消费之前产生的数据./kafka-console-consumer.sh --bootstrap-server kafka1.wuyi.com:9092 --topic share --from-beginning

总结一下,虽然使用华为云的数据可视DLV制作大屏展示比较容易,而且不需要像flask等那样搭建网站,使用图表功能只要拖拽到指定的页面,通过简单的设置就可以做出漂亮的数据可视图表。但是我们还是要注意一下,它的请求响应体的长度不能过长,否则不能获取数据做展示。对于使用python连接kafka,但遇到像python-kafka那样找不到原因,那么就需要变通思维,换一种方式去解决。

Kafka Python 数据可视化 DLV

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Node.js学习笔记(十五、Web模块)
下一篇:防止数据被盗用,华为云数DSC核心能力之数据水印
相关文章