你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
没有找到相关结果
BIWORK - 热衷于微软BI技术,技术架构和解决方案! 2015-08-24 回答
赞同来自: 梁勇 、黄金阳 、gogodiy 、xiayang 、天涯浪子 、GeorgeYao更多 »
BAO胖子 - 15年BI经验,涉足电力,快消品,医药,信息服务等行业的BI老兵。 2015-09-08 回答
赞同来自: 梁勇 、monaso 、xiaobingcaicai 、天涯浪子 、Spoon
esansab - dota 2015-09-25 回答
赞同来自:
要回复问题请先登录或注册
SSRS开发、数据仓库设计
推荐一份编程学习资源,包含了各类编程语言学习进阶路线图、视频教程、配套书籍文档、数百份面经,各大厂面试真题。编程语言包括:Java、前端、PHP、Python、Linux运维、软件测试、数据解构与算法、C语言、go语言等
微信扫码关注公众号,发送 "编程"获取资源
3 个回复
BIWORK - 热衷于微软BI技术,技术架构和解决方案! 2015-08-24 回答
赞同来自: 梁勇 、黄金阳 、gogodiy 、xiayang 、天涯浪子 、GeorgeYao更多 »
实事求是的回答吧!构建一个可行的 BI 系统包括实施周期这都是需要做需求分析,数据调研,客户需求确认等几个过程,之后才是报价。
第一阶段,客户可能会大致给出一些需求,但是这些需求往往是很浅显的、不深入。在确定项目报价和实施周期之前,一定要深入客户现场经过初步了解,详细了解几个阶段基本上才能大概弄清楚客户的大致需求和项目边界。
第二阶段,进行项目调研,明确用户的实际需求特别是对数据源、数据质量要做一个大致的了解。通过之前的需求了解和对现有IT架构以及数据调研,基本上可以明确客户的真实需求以及大致功能模块,根据经验可以大致判断这个项目大概需要多长的周期以及投入的人天了。
第三阶段,其实和第二阶段要并行。项目中特别要注意,BI 系统虽然说是开发完成的,但是最终是人与人打交道。与人打交道的成本也必须要考虑在项目实施周期之内,客户对项目的支持力度有多大,客户 IT 部门是否能够全力支持对业务系统的数据提供数据接口,数据字典还是需要实施方自行调研?客户的要求是否苛刻,是否存在内部矛盾导致项目潜在的风险? 等等,这些可见和不可见的因素都是需要通盘考虑的,而这些因素可能会导致项目实施周期变长甚至拖延的情况,需要充分预计但又要不显山露水的把这些人天平摊到项目实施人天中去。
所以作为项目实施方来说,如果客户是成熟的,IT是给力的,基本上实施周期只需要考虑第一阶段 + 第二阶段的调研结果。如果客户是不成熟,IT 支持是不给力的,在资源协调上也是不给力的,就需要通盘考虑这三个阶段。
通常情况下,一个传统 BI 的实施周期比如基于一个大型 ERP 系统或者多个 CRM 系统,单人天开发的话基本上以季度或者半年为单位。需求分析与整理,业务流程分解,源数据调研基本上就能耗掉一个月左右;设计与开发至少是按月为单位 3 - 6 个月不等;最后上线测试维护基本上 1 个月。但是一般来说,BI 系统是一个迭代开发的过程,在第一次开发成果上线之后,可能需要1-2年甚至更长的周期来维护,迭代更新功能。
造价基本上除了考虑软件环境、开发工具的成本外,最大的成本就是人天。目前在国内基本人天从 2K - 8K 不等,高级咨询顾问可达 1W或以上/人天,拿这个人天价格一算基本上就知道整个项目的报价了。
作为甲方来说,是会拼命的压人天以减少成本;作为乙方来说,是希望合理的增加人天以高标准的交付质量来顺利的交付一个项目。总之,我个人觉得便宜没好货,过度的压缩成本只能使实施方在用人选择和交付内容上降低成本,最终交付一定会有风险,既影响了甲方也影响了自己。
所以,一个成熟的项目,应该是甲乙双方都站在一个尽量平等的角度合理的分解项目,有理有据的对项目每一个环节进行评估。既保证乙方的利润,又能保证甲方的交付质量,这样的项目才可能做到真正的成功。甲方一味的降低预算或乙方过度的追求利润,都会使得项目变成一个烂尾的项目,最终弄得双方都收不了场。
数据量不会有太大的要求,几个TB 级别的还可以考虑使用传统的 BI 系统,多个TB 建议考虑使用大数据。仅个人建议,因为目前为止我还没有做过 TB 级别以上的 BI 数据仓库。
BAO胖子 - 15年BI经验,涉足电力,快消品,医药,信息服务等行业的BI老兵。 2015-09-08 回答
赞同来自: 梁勇 、monaso 、xiaobingcaicai 、天涯浪子 、Spoon
1. 硬件平台
2. 软件平台
3. 开发费用
还可以选择云服务的BI模式,也就是找云服务供应商提供相应的服务,或PaaS, SaaS。也就是把“购买”如上费用的钱变成“租用”。如上两种模式价格上有较大的差异。云计算的各家应该都有不同,国内的我没用过,不知道具体价格情况。
就传统的BI模式而言,硬件平台也有多种选择,可以虚拟化模式,也可以购买各类不同的Server。里面细节就很多,要考虑很多情况,比如数据规模,ETL处理的规模以及性能要求,报表的规模以及并发访问情况,如果有数据挖掘,非结构化数据处理的要求,也是多种多样的选择。
软件平台主要非使用工具型还是自定义开发型。使用工具型也分两种,一种是商用,一种是使用开源软件。需要购买/选择的软件至少有数据库,ETL工具,Report工具。
数据库就多种多样了,商用的就Oracle,DB2,MS SQLServer,...,也可以选择专用的DW一体机或者数据库,Teradata, Netezza, Greenplum,SAP HANA, SybaseIQ等等。开源的就是MySQL, PostgreSQL之类。具体要由数据规模以及数据访问情况而定。
ETL也是如此,商用的就Informatica, Datastage,Ab Initio还有微软套系,需要考虑具体的性能需求,购买不同的版本和License。开源就Kettle,自己写code可以用存储过程,Shell,Python等等随你。
Report类似,商用就Cognos,BO,MSTR,OBIEE, 微软套系。开源也有一堆。同样,根据功能需求,并发情况进行选择。也有很多自己选择各种chart的组件,用JAVA什么的开发。
数据挖掘,非结构化数据暂不在讨论范围内,如果要讨论,这个花样就更多了。
DW和ETL也可以选择大数据的产品集合模式,Hadoop, Spark之类,当然要做大量编程工作。
之后就是定制化的工时估算。
无非就是分几块,DW一部分,这个部分实际上虽然重要但占的工时不算太多,大概其就是表的数量,可以根据标准工业化模型以及源系统对应表的数量进行估算,根据data modeler的生产效率*表数量即可。而在data modeling的过程中,有大量的数据profiling的工作要做,这部分会给后面的工作做好铺垫,这部分的工作如果做的不好,会极大的影响ETL以及Report的质量。而此一部分就总工时的角度来看,其实不是很大,但需要一小批高水平(很多时候就1-2个人)的数据建模师耗费大量时间,稍有不慎,会给后面的项目带来极大的麻烦。
然后是整个工作的大头,ETL部分,就是上面说过的DW的估算出来的表的数量,根据难易程度,再根据生产效率进行计算。
Report部分,要看Report的需求情况,然后根据报表的难易程度以及生产效率进行计算。
Portal部分,这个具体情况具体分析,主要用java等编程语言来实现。
如果有元数据管理,数据质量的需求,还要另行计算。
测试部分,测试数据的准备,测试case的准备,run case等等。压力测试等。
系统搭建时间,主要是操作系统以及平台软件的安装和部署,多个环境(DEV,SIT,UAT, PROD等)
估算完工时,还要加上需求分析的时间,这个一般都是主题的个数,大概其要做的interview meeting的数量等等进行估算。项目管理的时间,一般都是总工时 * 一个比例,或10%,或15%, 根据具体情况而定。
此外就是人员配备的情况,根据上面计算出来的不同阶段工时,判断各个阶段(需求调研,概要设计,详细设计,实现,测试)需要配备的人员的技能和水准,前期可能水平高的比例多些,价格也就贵一些, 后期相对来讲人员可能更多,但平均价格有些许下降。如果需要出差,还要考虑差旅费的问题,等等。
项目的周期通常都是多迭代的模式进行,也可以列出key task求取关键路径的模式计算出项目周期,当然要去balance人员进入和退出的情况,需要考虑一定的buffer以及充分考虑数据方面带来的困难。
数据规模会一定程度上决定你选择的硬件和软件平台,并且进一步决定你选择的技术架构。比如,对于超海量的数据,就需要一些特殊的选择,比如Teradata,Hadoop等等。对于小规模的系统,就没有必要花大笔的银子在基础软件上面。
最后还有培训的各项费用,以及上线以后的维护费用估算。这些和项目的具体情况息息相关。
项目的估算是一个复杂的过程,这个要想描述得清楚,可能需要几个小时的课程,并且通过EXCEL预定义计算模板来做这种计算。
esansab - dota 2015-09-25 回答
赞同来自: