各位大数据开发的兄弟,问个埋点系统的问题

2023-05-19 23:15:32 +08:00
 johnzhangbkb

想了解各位设计埋点上报的时候,我们现在有两种方案。

  1. 代码->kafka->统计分析
  2. 代码->file->logstash->kafka->统计分析

你们会用哪种方案呢?

1590 次点击
所在节点    程序员
12 条回复
tensorzhang
2023-05-19 23:58:09 +08:00
2, 多一层保障。
levelworm
2023-05-20 00:11:57 +08:00
kafka 之后不进个 datalake 之类的吗?好奇。我没玩过大数据开发,在邻近领域。
haimianbihdata
2023-05-20 01:29:52 +08:00
要求实时?
ETiV
2023-05-20 01:38:12 +08:00
2

因为代码直传 kafka 会走网络,而当时如果网络不通、闪断之类的,代码上就要处理缓存、重试等逻辑 —— 不是不行,而是投入精力去写这个没必要…

而且我们也会在实际场景中碰到「过了 1 、2 天才发现数仓里的数据比之前少了很多」的情况,这时候可以用 2 里面的文件去找补回来。
Senorsen
2023-05-20 01:42:34 +08:00
2 多一层比较可靠的 buffer ,不过数据盘要设计好,log 的和应用数据 /系统盘要分开。
johnzhangbkb
2023-05-20 08:41:25 +08:00
@ETiV 这个场景同时写一份到 file 也能满足吧。主要我们对 Logstash 压测,对系统资源占用还挺大的。
johnzhangbkb
2023-05-20 08:42:58 +08:00
@Senorsen @tensorzhang 这个场景同时写一份到 file 也能满足吧。主要我们对 Logstash 压测,对系统资源占用还挺大的。
coolcoffee
2023-05-20 15:53:26 +08:00
不应该是先进 kafka ,再转到 logstash 吗?有多少消息都先让 Kafka 承接下来,logstash 按照固定的速率慢慢消化就行。
proxychains
2023-05-20 15:54:49 +08:00
扔到 kafka 吧. 慢慢消费
vincent7245
2023-05-20 21:05:04 +08:00
第二种,数据分析和业务系统一定要解耦,数据分析时业务的辅助,绝对不能影响业务系统的正常运行。第一种方案的弊端就是,如果 kafka 出问题了,业务系统也会遭殃
tensorzhang
2023-05-21 00:47:05 +08:00
@johnzhangbkb #7 申请加机器
tinyproxy
2023-05-21 00:48:55 +08:00
1. 时间急,或者没有额外的人力,走 2 ;
2. 时间不急,做一套 SDK ,把上报过程中可能会出现的各种问题(比如 kafka 出问题,网络出问题等等),都给处理了,然后所有人用这套 SDK 上报数据到 kafka ;

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/941412

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX