BI服务器配置与客户端情况
1. BI描述
FineBI是一款纯B/S端的商业智能分析服务平台;支持通过web应用服务器将其部署在服务器上,提供企业云服务器。用户端只需要使用一个浏览器即可进行服务平台的访问和使用。因此在配置使用上可分为:服务器硬件配置、web服务器配置、客户端浏览器配置这三项内容。其中服务器硬件配置与web服务器配置是相辅相成的。
注:BI是web应用工程,是在web服务器上执行的。因此BI使用内存实际上是web服务器对应的JVM的内存。因此下文会分别说明硬件内存和BI分配的内存来区分二者。
2. 性能说明与服务器硬件
FineBI的性能主要分为FineIndex性能和数据分析的性能
2.1FineIndex性能
FineIndex本身作为数据仓库到自定义分析的中间层,它是将数据仓库中抽取的数据作为缓存数据生成文件放置到硬盘上的,它本身构建的是数据立方体,需要切片、分组索引。因此其性能参数主要在于如下:
(1) 内存
FineIndex在抽取数据、分组写入索引、写入关联生成缓存数据的过程中,均会将数据在内存中去操作。内存越大其速度越快。
FineIndex在数据计算的过程,采用的是Java计算(一般优于sql计算),也是消耗内存的资源,因此内存越大其运算的速度越快。
(2)硬盘
在FineIndex的使用过程中,FineIndex的生成是写入硬盘的文件。因此写入速度越快,则性能越高。
在FineIndex被读取数据时,系统执行的是文件级读取(性能上优于数据库读取),读取文件的速度越快,则性能越优。
2.2数据分析性能
数据分析是前端新建仪表板模块加载FineIndex的数据进入内存中进行计算。因此仍然是FineIndex的数据读取进行加载,然后在内存中运算。涉及的指标仍然是内存大小与硬盘读写速度。
2.3FineIndex大小预估
FineIndex体量大小通常会影响到硬盘容量的选择;FineIndex是将数据仓库中抽取的数据作为缓存数据生成文件放置到硬盘上的,它本身构建的是数据立方体,因此会在原有的数据容量基础上再次扩大。一般情况会是原数据的2~3倍。即当原数据容量是1G,则生成FineIndex是2~3G;而由于FineIndex更新是在不改原有的FineIndex文件,重新生成一份新的FineIndex文件,新的FineIndex文件生成后与旧的FineIndex文件进行替换,替换的时候硬盘空间占用了两倍的FineIndex大小,因此硬盘容量应该在该基础上再乘以2。即硬盘容量大小需求至少是原数据体量的4~6倍。
下文详细说明不同场景下的性能参数的配置。
3. BI服务器配置
3.1按最大单表数据量来判定
FineBI采用列式存储的FineIndex形式来处理数据,单表数据量(数据行数)是很重要的性能评测的参数。它即影响到FineIndex的更新速度又影响前端的计算速度;当然该单表数据还与表的分组有关。当前在预估服务器配置上,从最大单表的数据量即能很好的判断出数据。因此可以按单表数据量来判断BI服务器的配置。
注:其中硬盘大小一般为预估,当然用户应按数据库中的实际数据量的大小来预估,选择一款硬盘即可。硬盘推荐使用固态硬盘,但不强求固态硬盘。
按:性能情况为FineIndex按1000W数据10分钟内跑完,前端计算单表秒级展示。
序号 | 数据量 | 推荐CPU | 推荐内存 | 推荐硬盘空间 |
1 | <1000W | intelE3-1231v3 | 8G DDR4 2133MHz | intel750 SSD 500G |
2 | 1000W-3000W | intelE5-2609v3 | 2*8G DDR4 2133MHz | intel750 SSD 500G-800G |
3 | 3000W-5000W | intelE5-2609v3 | 2*16G DDR4 2133MHz | intel750 SSD 800G/1.2T /企业级 1T SAS 10000RPM |
4 | 5000W-1亿 | 2*intelE5-2609v3 | 2*16G DDR4 2133MHz /4*16G DDR4 2133MHz |
intel750 SSD 1.2T /企业级 2T SAS 10000RPM |
5 | >1亿 | 4*intelE5-2609v3以上 | 4*16G DDR4 2400MHz | 企业级 2T SAS 10000RPM |
注:其中内存大小为预估,实际需根据业务场景模版数量以及ETL计算复杂程度来估算。
(1)1000万条数据及其以下
1000W的数据通常是小数据量,该数据量情况下BI通常需要的内存在4~6G左右;因此服务器的硬件内存通常需要8G即可。由于数据量比较小,因此硬盘空间并不需要过大,因此正常500G的硬盘基本够用。可以采用500G的固态硬盘。
推荐配置:CPU--intelE3-1231v3以上;内存---8G DDR3 1600MHz 硬盘--intel750 SSD 500G
(2)1000万~3000万条数据
1000W至3000万的数据通常也是较小的数据量,该数据量情况下BI通常需要的内存在8G~12G左右;因此服务器的硬件内存通常需要16G即可。由于数据量比较小,因此硬盘空间并不需要过大,因此正常500~800G的硬盘基本够用。可以采用500G/800G的固态硬盘。
推荐配置:CPU--intelE5-2609v3;内存---2*8G DDR4 2133MHz 硬盘--intel750 SSD 500G/intel 750 SSD 800G
(3)3000万~5000万条数据
3000W至5000万的数据是常见的数据量,该数据量情况下BI通常需要的内存在16G~24左右;因此服务器的硬件内存通常需要32G即可。硬盘空间大小一般需求在800G~1T左右。可以采用800G/1T的固态硬盘或采用企业级硬盘1T。
推荐配置:CPU--intelE5-2609v3;内存---2*8G DDR4 2133MHz 硬盘--intel750 SSD 800G/1.2T/企业级 1T SAS 10000RPM
(4)5000万~1亿条数据
5000W至1亿的数据量是较大的数据量,该数据量情况下BI通常需要的内存在24G~32G左右;因此服务器的硬件内存通常需要32G~64G即可。硬盘空间大小一般需求在1T以上。可以采用1.2T的固态硬盘或采用企业级硬盘2T。
推荐配置:CPU--2*intelE5-2609v3;内存---2*16G DDR4 2133MHz/4*16G DDR4 2133MHz 硬盘--intel750 SSD 1.2T/企业级 2T SAS 10000RPM
(5)1亿数据以上
1亿数据量以上是较大的数据量,该数据量情况下BI通常需要的内存在32G以上;因此服务器的硬件内存通常需要64G以上。硬盘空间大小一般需求在2T以上。可以采用企业级硬盘2T。
推荐配置:CPU--4*intelE5-2609v3以上;内存---4*16G DDR4 2400MHz 硬盘--企业级 2T SAS 10000RPM
3.2并发数因素的影响
按并发数来判定,通常是在数据分析端尤其是查看状态下,如果多人同时在线查看分析,则会有较大的并发影响。上述“单表数据量”通常是在忽略并发数的情况下来讨论的,那么当我们加入并发数这个因素后。我们会有两种处理方式:
一种方式,是通过集群的方式,多机集群来解决当前的数据。另一种方式当然是升级服务器配置到下一个档次。
那么正常FineBI在服务器上,按上述的配置单机的并发性能通常是20~25个左右。当超过这并发数时,可以将配置升级下一个档次。通常如果使用的是SSD固态硬盘,则不需要升级硬盘。
3.3服务器案例
(1)某医药集团:最大单表1000万行,并发数80个
CPU---inteli7-4790以上或intelE3-1231v3以上 内存---32G DDR3 1600MHz 硬盘---intel750 SSD 500G
(2)某国税:最大单表2亿行,并发数65个
CPU---4 X Intel i7-4830 v2 10C/20T 2.2GHz 20MB 内存---8 X 16GB DDR3 1600MHz 硬盘---企业级 2T SAS 10000RPM/企业级 512G固态硬盘
4. 服务器系统
FineBI支持windows、Linux、unix、Solaris 、Aix、IRIX等绝大多数的服务器系统。
从这些系统本身来看,服务器系统抛去用户常用的使用习惯之外,我们常推荐用户使用linux服务器。Linux系统作为企业级服务器的系统相比windows的优势众所周知,就不赘述了。
注:此处推荐只是说明linux的系统本身的优越性,与FineBI并无关系。FineBI在任意服务器系统的运行表现均良好,从FineBI本身来看,性能几乎一致。
5. web服务器
FineBI作为web应用,可以适配几乎所有的web服务器。我们推荐:tomcat、weblogic、websphere等常用服务器。
6. 客户端
BI是B/S框架的web应用服务,因此在客户端层面只需要一个浏览器即可。当前BI支持业内大多数的浏览器。
按浏览器引擎可分:
单核心:谷歌、火狐、IE8及其以上(包括Edge)、Safari、opera
双核心:360浏览器、搜狗浏览器、QQ浏览器、UC浏览器、猎豹浏览器、百度浏览器
注:其中双核心的浏览器只支持其极速模式,不支持兼容模式。
从渲染引擎的匹配度上,我们建议使用浏览器:谷歌、火狐。
7. 网速
在企业级应用中,BI作为企业云服务置于服务器上。BI连接的数据库也可能置于其他的服务器上,BI本身可能存在多服务器集群的情况,用户均使用浏览器访问云服务。数据的传递和展示均通过因特网传输,因此网速也是影响数据展示的性能之一。
服务器与服务器间:BI置于服务器上与其他服务器上的数据库连接、与自身集群的连接,往往都是极大量的数据来回传输,如更新FineIndex,FineIndex从数据库中读取千万级甚至亿级的数据,此时往往需要的网速达到千兆。即服务器与服务器间网速通常推荐达到千兆级。
客户端访问:客户端访问往往是网页上的信息传递。该网速要求比较低,10兆、百兆均可。
BI服务器配置与客户端情况的更多相关文章
- C# 不安装Oracle客户端情况下,如何连接到Oracle数据库
简介: 在我们开发应用场景经常碰到需要连接Oracle数据库,这也是相当常见的一种情况.一般.Net环境连接Oracle数据库,可以通过TNS/SQL.NET 配置文件,而 TNS 必须要 Oracl ...
- svn服务器配置与客户端的使用
1, Apache Subversion 官网下载地址: http://subversion.apache.org/packages.html#windows 官网下载提供的一般都是最新版本的,如果想 ...
- 简述SVN服务器配置和客户端操作
有关SVN服务器的搭建见:http://www.cnblogs.com/DwyaneTalk/p/3997688.html 搭建好环境之后,服务器端需要完成如下操作: 1.需要新建Repository ...
- 不安装Oracle客户端情况下使用PL/SQL 远程连接数据库
附送PL/SQL Developer11中文版下载地址 1.先到Oracle网站下载Instant Client : http://www.oracle.com/technetwork/databas ...
- 太多选择——企业如何选择合适的BI工具?
在没认清现状前,企业当然不能一言不合就上BI. BI不同于一般的企业管理软件,不能简单归类为类似用于提高管理的ERP和WMS,或用于提高企业效率的OA.BPM.BI的本质应该是通过展现数据,用于加强企 ...
- 什么是BI及哪些行业需要用到BI?
什么是BI?哪些行业需要用到BI?BI——就是分析利用企业已有的各种商用数据来了解企业的经营状况和外部环境,从而为企业的经营决策提供数据支撑.下面我们来详细分解下: 企业应用BI的目标即是期望通过对来 ...
- 【BI学习笔记】适合集成到项目里的BI:Wyn Enterprise
近日,我收到葡萄城的邮件,讲葡萄城开始进军BI领域,发布了一套BI和报表工具,叫Wyn Enterprise. 之前了解过PowerBI等面向终端用户的BI工具,我发现BI工具与Wyn Enterpr ...
- 关于BI商业智能的“8大问”|一文读懂大数据BI
这里不再阐述商业智能的概念了,关于BI,就从过往的了解,搜索以及知乎的一些问答,大家困惑的点主要集中于大数据与BI的关系,BI的一些技术问题,以及BI行业和个人职业前景的发展.这里归纳成8个问题点,每 ...
- 本地主机不安装oracle客户端--访问远程oracle数据库
在不安装oracle客户端情况下用sqlplus连接数据库: 1.去官网下载 http://www.oracle.com/technetwork/topics/winx64soft-089540.ht ...
随机推荐
- Java-集合框架总结
集合框架: Java中的集合框架大类可分为Collection和Map:两者的区别: 1.Collection是单列集合:Map是双列集合 2.Collection中只有Set系列要求元素唯一:Map ...
- lucene全文搜索之四:创建索引搜索器、6种文档搜索器实现以及搜索结果分析(结合IKAnalyzer分词器的搜索器)基于lucene5.5.3
前言: 前面几章已经很详细的讲解了如何创建索引器对索引进行增删查(没有更新操作).如何管理索引目录以及如何使用分词器,上一章讲解了如何生成索引字段和创建索引文档,并把创建的索引文档保存到索引目录,到这 ...
- STL的空间配置器std_alloc 笔记
STL的空间配置器std_alloc 笔记 C++的内存分配基本操作是 ::operator new(),内存释放是 ::operator delete(),这里个全局函数相当于C的malloc和fr ...
- Scrapyd部署爬虫
Scrapyd部署爬虫 准备工作 安装scrapyd: pip install scrapyd 安装scrapyd-client : pip install scrapyd-client 安装curl ...
- ionic 使用了 crosswalkwebview 所产生的bug 及 解决方案
一.问题产生: 在ionic app 优化方案中,我在前之前的博文中提到使用 --crosswalkwebview: 使用了crosswalkwebview后,app的显示及兼容效果确实很不错,虽然a ...
- 使用Github+Hexo框架搭建部署自己的博客
前言 Hexo 是一个快速.简洁且高效的博客框架.Hexo 使用 Markdown (或其他渲染引擎 )解析文章, 在几秒内,即可利用靓丽的主题生成静态网页. 安装 安装前提 安装 Hexo 相当简单 ...
- Kubernetes 设计概要
英文原文:Kubernetes Design Overview Overview Kubernetes builds on top of Docker to construct a clustered ...
- jquery 表格行计算
表格行计算 总金额: function jisuanTrJinE(obj){ var curTab = $(obj).closest("table"); var curTr = $ ...
- 通过ant-jmeter读取jtl文件拆分数据并insert DB
前言:之前详解过通过jmeter生成的csv文件,解析csv存入DB,这个有弊端 第一:需独立创建一个job 第二:需按照一定规范输出 因此,放弃解析csv方式,直接解析自动化生成的原始jtl文件并集 ...
- jQuery怎样判断按钮是否被选中
方法一: if ($("#checkbox-id")get(0).checked) { // do something } 方法二: if($('#checkbox-id' ...