阿里云上基于SAP HANA One的数据仓库、BI系统搭建
1 规划
(BI系统经典架构)
BI系统经典架构,由数据源层、数据仓库层、数据展现层构成,数据源层提供基础数据,数据仓库层存放各种聚合数据,数据展现层按业务场景展示数据。此处的数据仓库层,采用数据分层的设计理念,相对来说实时计算复杂度要求不高的数据放到开源数据库中(如MySQL),实时计算复杂度要求高的数据放到高性能数据库中(如SAP HANA One)。
注:数据仓库层采用数据分层,主要是基于成本考虑。阿里云上的SAP HANA One 64G版,软件每月要4000多大洋,再加上ECS费用,每月就8000多啦。且HANA One的64G容量,远远不够。
2 实现
2.1 数据源
数据分析基础数据来源,系统支持多种数据来源,包括外部数据文件(如Excel、TXT、XML等),常用数据库(如Oracle、MySQL、SQL Server、DB2等),其它JDBC、ODBC、JNDI数据源,也支持把Hadoop HDFS中的文件作为数据源,甚至一些常用软件系统(如SAP ERP、SAS、Salesforce)直接作为数据源。
2.2 ETL
采用开源软件Kettle作为ETL工具,从数据源抽取原始数据,做数据转换后导入数据模型。数据抽取周期,根据实际需求从几分钟到月不等。实际应用中,最短数据抽取周期我们曾经到30秒,但这种情况对数据源性能压力较大。幸好HANA有SDI,通过SDI建虚拟表,直接访问数据源。
2.3 数据建模
直接用HANA计算视图建模,建模基础数据来自HANA One、开源聚合数据层(如MySQL)、甚至直接是业务数据表(业务数据表做读写分离,从只读表中取数)。为实现这种跨系统、跨数据库建模,采用了HANA的虚拟表功能(借助SDI,SDI真是个好东西)。
2.4 数据展现
数据展现平台,主要是PC端的浏览器和移动端的微信。Excel方式,对云端应用来说,性能不理想。PC端数据展现基于SAPUI5做专门开发:常规拖拽方式的OLAP灵活分析;保存灵活分析格式,形成固定格式的格式化主题分析;串联多个格式化主题分析,做一定扩展形成管理驾驶舱。
2.5 数据挖掘
采用经典的机器学习算法(如:DBSCAN、K-Means、C4.5决策树、逻辑回归、随机森林、朴素贝叶斯等),对数据进行挖掘分析。可应用的实际业务场景,包括地理位置分析、文本分析、相关性分析等。对需进行训练的监督学习,可根据实际训练需求,定制数据训练平台。
3 成果
3.1 产品示例
- 地图应用
- OLAP灵活分析
- 文本分析
- 格式化分析与驾驶舱
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
基于 Spring Cloud 的分布式配置中心
ConfigKeeper 是由随行付架构部基于Spring Cloud研发的分布式配置中心。 在微服务架构中,配置中心是个必不可少的基础服务。应用部署到生产环境后,由于各种原因,需要调整一些配置。如果每次修改配置都需要经过修改代码、重新打包、重新部署等过程,为了避免重新部署造成请求错误,还需要将应用从负载均衡中下线,部署成功后再重新上线,当部署的实例比较多的情况下,那就会严重影响投产效率,如果是为了解决生产上的问题而调整配置,那么这个过程耗时越多,带来的风险也就越大。所以我们需要在不停机、不重新打包、不重新部署的情况下,可以动态修改配置(比如:功能开关、性能参数等)。为了方便动态更新应用配置,需要把配置放到应用执行包之外的配置中心。配置文件不需要打进应用执行包中后,可以带来以下几个好处:一个可执行包就可以在不同的环境下运行,可以降低包的版本管理成本,也可以降低docker镜像的版本管理成本。 Spring cloud 虽然已经为我们提供了基于git或mongodb等实现的配置中心,但是这些方案实现都过于简单,没有达到实际可用的标准,比如:没有提供统一的管理页面,不便于操作和使用;没有权...
- 下一篇
Java虚拟机学习:方法调用的字节码指令
我们在写java程序的时候会进行各种方法调用,虚拟机在执行这些调用的时候会用到不同的字节码指令,共有如下五种: 1. invokespecial:调用私有实例方法; 2. invokestatic:调用静态方法; 3. invokevirtual:调用实例方法; 4. invokeinterface:调用接口方法; 5. invokedynamic:调用动态方法; 这里我们通过一个实例将这些方法调用的字节码指令逐个列出。 说到这里,也给大家推荐一个架构交流学习群:835544715,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,相信对于已经工作和遇到技术瓶颈的码友,在这个群里会有你需要的内容。 实例共两个java文件,一个是接口另一个是类,先看接口源码,很简单只有一个方法声明: packagecom.bolingcavalry;publicinterfaceAction{ voiddoAction(); } 接下来的类实现了这个接...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Mario游戏-低调大师作品
- CentOS关闭SELinux安全模块
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G