1赞

2回答

0收藏

[已解决] 数据查询时,如何实现查询实时数据?

问题求助 问题求助 1263 人阅读 | 2 人回复 | 2021-03-23

数据查询时,如何实现查询实时数据?
鸿归已获得悬赏 2 K豆+10 K豆

最佳答案

BI实时图表实现数据可视化的原理 除去端到端之间极短的时间,数据实时可视化主要有四大步骤。这里我们用一张图来展示。 1、捕获数据流 实时数据流使用 scrapers、collectors、agents、listeners捕获,并且存储在数据库中。数据库通常是NoSQL数据库,例如, Cassandra、MongoDB, 或者有时候是你只是Hadoop Hive。关系数据库不适合这种高展现的分析。NoSQL数据库的崛起也增强了实时数据分析向他靠拢的趋势。 2、数据流处理 数据流可以通过许多方式处理,比如,分裂、合并、计算以及与外部数据源结合。这些工作由一个容错分布式数据 ...

评分

参与人数 1K豆 +10 收起 理由
说的小谎. + 10 赞一个!

查看全部评分

回答|共 2 个

鸿归

发表于 2021-3-24 10:50:40 | 显示全部楼层

BI实时图表实现数据可视化的原理


  除去端到端之间极短的时间,数据实时可视化主要有四大步骤。这里我们用一张图来展示。

real-time-analytics.jpg

  1、捕获数据流

  实时数据流使用 scrapers、collectors、agents、listeners捕获,并且存储在数据库中。数据库通常是NoSQL数据库,例如, Cassandra、MongoDB, 或者有时候是你只是Hadoop Hive。关系数据库不适合这种高展现的分析。NoSQL数据库的崛起也增强了实时数据分析向他靠拢的趋势。

  2、数据流处理

  数据流可以通过许多方式处理,比如,分裂、合并、计算以及与外部数据源结合。这些工作由一个容错分布式数据库系统,比如, Storm、Hadoop,这些都是比较常用的大数据处理框架。但是他们却不是实时数据分析的理想选择。因为他们依赖MapReduce面向批量的处理。不过Hadoop 2.0允许使用其他计算算法代替MapReduce,这样使得Hadoop在实时分析系统中运用又进了一步。处理之后,数据就可以很可视化组件读取了。

  3、数据可视化组件读取处理过的数据

  处理过的数据以结构化的格式(比如JSON或者XML)存储在NoSQL数据库中,被可视化组件读取。在大多数情况下,这会是一个嵌入到一个内部BI系统的图表库,或者成为像派可BI这种更加广泛的可视化平台的一部分。处理过的数据在JSON/XML文件中的刷新频率,称为更新时间间隔。

  4、可视化组件更新实时DASHBOARD

  可视化组件从结构数据文件(JSON/XML),在图表界面绘制一个图表、仪表或者其他可视化行为。处理过的数据在客户端展现的频率叫做刷新间隔时间。在一些应用程序中,比如带有图表渲染功能的股票交易应用程序,会预先设置基于数据流的触发功能。

  会不会觉得很复杂呢?只不过这些过程会在几秒钟内,甚至更短时间内完成。这些操作因为不断进步的数据库及实时功能变成现实,特别是NoSQL数据库。再由诸如Storm这种专用于实时进程处理的工具辅助,可以让其性能效果更上一层能。现在的可视化数据已经支持需求场景,在当今的大数据应用程序中建立了一个实时分析生态圈。




评分

参与人数 1K豆 +9 收起 理由
说的小谎. + 9 赞一个!

查看全部评分

贴吧楼中楼回复我要说一句 收起回复
B Color Smilies
还可输入 200 个字符

Sunrise-星河

发表于 2021-3-24 21:53:44 | 显示全部楼层

针对可视化bi实时数据有两种方案
1.sql直连访问业务库
2.把比较固定的历史数据抽取到数据仓库沉淀,近期数据每天定时定频刷新,把两部分数据合并完成实时数据查看

评分

参与人数 1K豆 +10 收起 理由
admin + 10 赞一个!

查看全部评分

贴吧楼中楼回复我要说一句 收起回复
B Color Smilies
还可输入 200 个字符
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则