微博号一直实时不了(微博一直没有实时)
目前应该是有很多小伙伴对于微博号一直实时不了方面的信息比较感兴趣,现在小编就收集了一些与微博一直没有实时相关的信息来分享给大家,感兴趣的小伙伴可以接着往下看,希望会帮助到你哦。
接下来我们一起来回顾微博实时数据仓库的建设过程。实时数据仓库要求端到端数据低延迟、提供标准SQL支持、能够快速响应数据变化。要做好一个高可用的实时数据仓库必须要做到:通用的实时数据计算平台+实时交互时数据分析查询平台。只有二者相互配合才能形成易于开发、维护,提供高效的数据分析查询能力。
一 实时数据仓库需求场景概要
1.1 微博APP端用户
热门微博推荐、实时热搜榜,需要实时了解用户的兴趣、爱好,给用户实时推荐相关内容,增加微博用户的黏性。
1.2 实时生产系统
实时微博生成系统必须要具有鲁棒性,保证系统长期稳定运行,能够实时检测系统的健康状况。
1.3 运营层面
能够实时掌握用户的动态,提高商业营销效果,能够按照各个维度分析实时分析营收情况,以及用户投诉行为。
1.4 风控
微博是具有大约2.5亿DAU的社交平台,必须能够实时识别风险、反欺诈、异常交易等现象。
二 实时技术选型和架构设计
2.1 实时计算技术选型
当下成熟的实时计算技术无非就是SparkStreaming和Flink,具体要根据不同公司的不用业务场景来选型。SparkStreaming的定位是微批处理,对数据处理有一定的的延迟。而Flink是真正的实时处理框架,近些年越发成熟。就像Spark替代MapReduce一样,未来Flink可能会替代SparkStreaming,但是,根据微博业务的特殊场景,从SparkStreaming迁移到Flink需要一定的时间过程,目前有些老的业务场景仍然使用SparkStreaming来处理的。因此,我们选择Flink+SparkStreaming作为实时计算技术。
2.2 实时计算架构
2.2.1 Lambda架构
这个架构使用Storm的作者Nathan Marz首先提出来的。这个架构比较复杂:采用两路架构、并且是各自独立的。
Lambda架构
由于实时需求的场景不是很多,目前还是以离线计算任务为主,Lambda架构仍然是经典的架构。Lambda架构相当于在离线数据计算的基础上,附加了一套实时计算框架,双路生产。
Lambda架构的双路计算模式,难免会导致同一套逻辑写两边代码(离线+实时),同时也增加了后期维护的成本。两个过程运行的时间不一致,跑的数据却是完全相同的。重新跑一遍离线分析的数据,数据的更新成本很高,更严重的是二者的数据可能不一致(比如有延迟数据产生,离线数据比实时更准确)。
为了解决Lambda架构的痛点,就产生了Kappa架构,相信大家对这个架构也非常熟悉。
2.2.2 Kappa架构
Kappa架构
Kappa架构设计比较简单,一套逻辑搞定离线和实时数据计算。但是在生产环境中有很大的局限性,比如:Kappa架构是严重依赖于消息队列的,我们知道消息队列本身的准确性严格依赖它上游数据的顺序,但是,消息队列越多,发生乱序的可能性越大。通常情况下,ODS层的数据是绝对准确的,把ODS层数据经过计算之后写入到DWD层时就会产生乱序,DWD到DWS更容易产生乱序,这样的数据不一致性问题非常大。
所以,Kappa架构在实际生产环境中落地的并不多,因此,权衡了各种利弊,还是选择了Lambda架构来处理问题,毕竟实时的场景并不多见。
2.3 数据特点和应用场景介绍
数据特点和业务场景介绍
数据源
- 日志类:数据量比较大,可能是json等半结构化数据。日志流的数据量通常比较大,数据结构一旦确定以后格式一般不会改变,可以通过埋点的方式收集日志。这种日志类型的数据一般用于生产数据监控和用户行为分析,时效性要求都比较高,通常会按照5-10分钟的间隔统计数据,主要用来做实时数据推荐和实时看板大屏等。
- 业务类:主要是交易类和广告消耗类的数据,以Binlog日志的形式向下下发,业务系统都是事务型的,主要都是结构化数据,但是业务相对复杂,需要关联的表比较多。
业务类和日志类的场景一般是同时存在,会结合在一起做数据分析。
三 实时数仓架构设计
3.1 实时架构
如上图所示,统一采集日志和binlog数据到消息队列(Kafka)中,对于日志类的数据可以通过Flink进行计算然后写入DorisDB,而对于Binlog日志可以直接借助DorisDB来做OLAP分析,以及在DorisDB里面做ETL工作。
那么实时的OLAP分析怎么做呢,我们选择了自带存储和计算功能DorisDB引擎,当然目前有很多可以选择MPP架构提供OLAP分析的数据库,比如TiDB、Druid、ClickHouse等,基于微博的业务特点,我们最后选择了DorisDB。
3.2 实时数据仓库架构设计
实时数据仓库设计方案
从数据仓库建设的方法论来看,实时和离线数据仓库的建设步骤比较相似,在做实时数据仓库时我们首先考虑的也是做数据分层:
3.2.1 数据源
在数据源这个层面,离线和实时数据仓库都是一样的,都分成日志类和业务类,日志主要是微博的行为日志、点击日志和服务器日志。
3.2.2 多维分析事实表
这一层主要进行统一建设,避免重复性建设问题,建立统一的基础明细数据层,可以按照主题进行划分,因此需要对底层ODS表进行过滤、规范化、清洗、扩维等操作。以供下游数据直接使用。
3.2.3 汇总层
汇总层数据主要是通过Flink或者SparkStreaming进行统一计算,所有的指标都集中在汇总层实现,形成完全可以复用的结果表数据。
四 实时数据平台建设
实时数据平台建设
- 首先需要对功能进行抽象,尽量把功能做成组件化,以实现标准化生产。对于基础层加工的清洗、过滤、合流、扩维、转换、加密等都可以做成功能性组件来实现。
- 通过基础加工之后,可以将全部规范化后的数据写入Kafka中,同时也可以写入到经过实时数据分析的OLAP引擎(DorisDB)中,再往上就是实时汇总计算,基于SparkStreaming、Flink和DorisDB,生成多维汇总指标,形成统一的汇总层数据。
- 除了这些功能之外,还要建设实时数据仓库的辅助系统,例如:元数据管理,指标管理,数据血缘管理和数据质量管理等。
五 未来规划
实时数据仓库建设还有很多痛点,后续我们将逐步采用数据湖技术进行逐步替换。
痛点
本文结束,以上,就是微博号一直实时不了,微博一直没有实时的全部内容了,如果大家还想了解更多,可以关注我们哦。
相关文章
- 详细阅读
-
电脑怎么弄视频壁纸(电脑怎么弄视频壁纸win10)详细阅读
去各大软件工具平台或者百度搜索“视频壁纸软件”,下载视频壁纸工具请点击输入图片描述 请点击输入图片描述 2 下载完成后进行安装,建议安装在非系统盘非C...
2022-09-12 77738
-
酷酷的滕那种文字视频怎么制作的(类似于酷酷的滕那种视频是怎么做的)详细阅读
酷酷的滕的视频怎么加的字幕? 展开 #xE768 我来答 分享 微信扫一扫 新浪微博 空间 举报 浏览30 次 可选中1个或多个下面的关键词,搜索相关...
2022-09-12 74640
-
cj视频制作(cj视频是什么意思)详细阅读
1、把照片做成视频,推荐用 数码大 师 简单易上手 人人都会用的精美相册制作软件 点击 添加相片 按钮,悉数导入相片,加上旁白注释文字特效音乐视频 点...
2022-09-12 66500
-
异地恋怎么视频做吗(异地恋开视频怎么做那个)详细阅读
总而言之,我认为异地恋是没有必要每天视频通话的,因为我和我的女朋友只是经常聊天,但并不会视频通话,而且如果我们相互思念对方的话,会在放假的时候一起出去...
2022-09-12 1318
-
彩视视频制作(彩视视频制作收费吗?)详细阅读
1打开彩视APP主页后,点击右下角的个人信息头像2进入到个人主页,点击彩视我的作品一项,选择一个视频,点击进去3接着点击播放窗口右下角的更多菜单,弹出...
2022-09-12 1512
-
小视频宣传片怎么制作(小视频宣传片怎么制作的)详细阅读
导读信息爆炸时代,我们每天接收成千上万条信息信息的几何式增长使企业在进行宣传推广时不得不绞尽脑汁推陈出新,吸引消费者的眼球短视频的兴起,为企业宣传推广...
2022-09-12 1342
- 详细阅读
发表评论