能否在etl项目中使用内存数据库,以提高性能?

0
已邀请:
2

牟瑞 - 大数据 Hadoop 讲师 Hadoop入门课程地址:http://www.hellobi.com/course/39 有架构师,技术总监,CTO的职位请联系我! 2015-09-16 回答

谢谢邀请,简单的说一下个人对这块的认知。
首先,ETL过程在大部分的项目里面都是构建的是数据仓库,而数据仓库是面向历史数据的,一般数据量都比较大,即使是传统行业,随着时间的积累,数据量也会保存比较大,一般几十G是肯定的,互联网公司什么的,PB的数据也都是有的。所以基于这种情况,内存数据库并不是很适合ETL的过程,内存数据库由于内存的限制保存数据是有限的。
其次,内存数据库一般的应用场景是在OLTP中,面对高并发,低延迟,快速处理的时候,采用内存数据库来减少磁盘I/O的操作,大部分的计算都是在内存中进行,加快处理速度。
因此,如果你的OLTP系统采用的是OLTP的系统,那么ETL的过程会提高性能,但是如果不是,单纯的为了提高性能而在OLTP和OLAP中间使用一个内存数据库来处理数据,从成本,效率等各方面来说提高不大,还不如花点力气在数据仓库建模,OLTP系统优化,ETL过程优化上更能提高ETL的处理性能。

要回复问题请先登录注册