一张部署架构图,半部BI用户“血泪史”

​你记得上次换手机是什么时候吗?

也许你忘了具体时间,但换机的理由不会忘:老手机太慢了!(看心情换机的土豪除外)

由于软件的不断膨胀,导致手机、电脑的性能越来越差,用户备受煎熬,遂产生了换机的念头。

手机慢了你可以随时换掉,公司的BI平台慢了,你就得被迫忍受了。

随着数据的爆炸性增长,BI系统要处理数据越来越多,动辄TB级、甚至PB级。

于是,服务器宕机、反应迟钝、查询缓慢等各种性能问题接踵而来。

BI系统的用户,心里苦啊~~~

在这里插入图片描述

各路BI厂商也意识到这些问题,纷纷推出各种性能解决方案。

其中,Smartbi产品服务众多头部客户,性能必须得HOLD住!

于是,便有了以下这张Smartbi部署架构图:

在这里插入图片描述

这张图包括4“味药”:集群部署、负载均衡、分布式缓存库、Session共享,是Smartbi从多年实践中总结出来的“药方”。

其实,又何尝不是半部BI系统用户的“血泪史”?

BI系统用户血泪之:服务器宕机

Smartbi应对:集群部署

单机处理到达瓶颈的时候,把单机复制几份,这样就构成了一个“集群”。集群中每台服务器是这个集群的一个“节点”,所有节点构成了一个集群。每个节点都提供相同的服务,这样系统的处理能力就相当于提升了好几倍。

所以,提升Smartbi性能最直接的办法,就是集群部署:在多台节点上安装Smartbi,把用户的请求分派给不同的节点进行处理,提高整体性能。即使有节点崩溃了,还有其它节点可以使用,避免了服务器宕机这种灾难性的故障。

集群部署的好处是系统扩展非常容易。随着业务的不断发展,当前的系统又支撑不住了,那么给这个集群再增加节点就行了。

而且,通过X86集群代替以前的小型机,价格明显降低。

BI系统用户血泪之:系统反应迟钝

Smartbi应对:负载均衡

采用集群的方式,有个关键的问题是:用户的请求究竟由哪个节点来处理?

最好能够让此时此刻负载较小的节点来处理,这样使得每个节点的压力都比较平均。要实现这个功能,就需要在所有节点之前增加一个“调度者”的角色,用户的所有请求都先交给它,然后它根据当前所有节点的负载情况,决定将这个请求交给哪个节点处理,这个“调度者”叫做:负载均衡服务器。

Smartbi的负载均衡服务器(Smartbi proxy)采用前后端分离的框架,保障请求被分发到合适的节点上。这种方式解决了系统反应迟钝的问题,保证用户业务的持续稳定运行。

各节点定时向Smartbi proxy汇报自身的状态信息,Smartbi proxy根据节点的内存、CPU等差异性判断其可用性和服务能力,把请求分发到合适的节点上。如果节点属于“断开”状态,则将此节点临时从待选取列表中剔除。

在这里插入图片描述

若节点的资源使用率达到了设置的阈值,那么会触发告警,以发送邮件的方式对异常节点进行前端提醒。

BI系统用户血泪之:数据查询缓慢

Smartbi应对:分布式缓存库

分布式系统是由一组通过网络进行通信,为了完成共同的任务而协调工作的计算机节点组成的系统。目的是利用更多的服务器,处理更多的数据。

听起来是不是跟“集群”很像?这里就有必要搞清楚两者的区别。

简单地说,集群是不同的节点处理不同的请求,而分布式是不同的节点处理同一个请求,分布式架构需要基于集群部署。

例如,用户要么登录集群里的节点A,要么登录节点B,但登录后的每一次数据查询,可以由另一个集群的节点C和节点B共同执行。

Smartbi的高速缓存库(Smartbi MPP)采用分布式架构,将任务并行地分散到多个节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果,极大提升了大规模数据处理能力,解决了用户数据查询缓慢的问题。

除了Smartbi MPP,Smartbi高速缓存库也支持Vertica、Presto+Hive、星环等MPP数据库。

在这里插入图片描述

BI系统用户血泪之:强制重新登录

Smartbi应对:Session共享

Smartbi将会话(Session)信息统一存储在缓存数据库Redis中,实现多个应用服务器共享会话信息,保证服务器重启或切换后,仍然可以正常操作,不会跳转至登录页面,也不会出现“HTTP 400”和“HTTP 500”错误。

Redis作为缓存服务器,是基于内存、可持久化的日志型、Key-Value数据库,用于存储登录信息、Session 等信息,集中管理所有的服务器状态,并对所有的访问和操作进行验证。

Smartbi通过Session共享实现产品无状态化:即使服务器在宕机、断电、切换等情况下,都无须用户重新登录,保障业务操作不中断、数据/模板不丢失。

不管BI系统用户还有多少“血泪史”,相信办法总比困难多。

提升产品性能,改善用户体验,需要BI厂商的长期努力!

BI(Business Intelligence,商业智能)私有化部署架构设计可以包括以下几个方面的考虑: 1. 硬件基础设施:私有化部署需要考虑到硬件基础设施的搭建,包括服务器、存储设备等。可以根据实际需求选择合适的硬件配置,确保系统的性能和安全性。 2. 软件选择与配置:选择合适的BI软件平台,并进行相应的配置。这包括选择适合业务需求的BI工具、数据库管理系统等,并进行安装和配置。 3. 数据集成与转换:在私有化部署中,需要将各个数据源的数据进行集成与转换,以便于后续的分析和报表生成。可以通过ETL(Extract,Transform and Load)工具来实现数据的抽取、转换和加载,确保数据的一致性和准确性。 4. 数据存储与管理:私有化部署需要合理规划数据的存储和管理。可以选择合适的数据库管理系统来存储和管理数据,同时还需要考虑数据的备份和恢复等安全性措施。 5. 安全性和权限管理:私有化部署需要注重系统的安全性和权限管理。可以采用多层次的安全措施,比如网络隔离、访问控制、数据加密等,确保数据的安全性和机密性。 6. 维护与升级:私有化部署后,需要进行系统的定期维护和升级。包括故障排查、性能优化、安全补丁更新等工作,以保证系统的稳定运行和功能的完善。 7. 培训与支持:为了让用户能够充分利用BI系统,私有化部署架构设计需要考虑培训和支持。可以提供培训课程,帮助用户熟悉系统的使用方法。同时,提供相应的技术支持,及时解决用户在使用过程中遇到的问题。 综上所述,BI私有化部署架构设计需要考虑硬件设施、软件配置、数据集成、存储与管理、安全性与权限管理、维护与升级、培训与支持等方面。只有综合考虑这些因素,才能搭建一个稳定、安全、高效的私有化BI系统。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值