最近入职的公司需要做报表系统,LZ 主要负责( orz~),LZ 之前是 java web 方向的,大数据或者 BI 的知识入门都算不上,所以对于技术选型有点苦恼,不知道什么是合适的,向各位 V 友请教一下。
大致业务背景:系统每天零时从对接的甲方公司系统那里抽取昨天的全量数据经过 ETL 存储在公司大数据平台,然后我需要根据 hive/spark 里的数据每天做批量运算汇总至报表系统进行展现。
我的大致方案:HIVE->定时任务+批量数据程序->报表系统存储(根据不同租户分库并根据数据量选择不同的 DB 系统,mysql/mongo/hbase/es ?)-> 数据查询服务(用统一中间层屏蔽不同数据库操作的差异)
我的疑惑: 1.我的方案可行性高吗?有没有特别需要注意的点
2.报表的每天运算结果存在哪种存储会比较好?(最好用一种 DB 方案,这样会有统一的 DAO 操作,但是除了 Mysql 以外的 DB 有额外的学习成本),目前来看,明细表的数据量每日有十几万的增加量,未来有可能会增涨。
3.定时任务+批量数据处理这部分有常用的开源解决方案吗?我所知道的 elasticJob+spring batch,有更好的选择吗?
4.这方面有优秀的学习资料推荐么?
LZ 之前从公司跳槽就是为了得到这种偏架构的实践机会,希望大家多多指教