经常有用户会问这个问题,你家的产品能处理多大数据量?似乎是这个值越大产品就越牛。
这个问题,其实没多大意义。
能处理多大的数据量,还有个很关键的因素是期望的响应时间,在脱离这个因素单纯谈大数据产品的数据处理量,就不知道怎么回答了。
考虑只有单台机器的简单情况。如果是希望秒级响应的OLAP式汇总,那么GB级都是挺大的数据了,几乎不可能有什么产品能处理TB级数据(除非有巨大内存)。而如果是数小时内完成的ETL运算,那么单台机器处理TB级也不是多大的问题。于是就会发生这样的现象:同一个产品能够处理某些场合下的TB级数据,却处理不了另一些场合下的GB级数据。
不过,讨论一个大数据技术能支持的集群规模是意义的。
大集群和小集群的实现技术很不一样,大集群需要有强容错能力和统一的管理机制,而小集群则不需要;而把大集群技术用于小集群,又会造成很多资源的浪费。某种技术面向多大规模的集群,一般是在设计之初就确定了的,并不容易随意改变。
确定了期望的响应时间,以及可能支持的集群规模,这时候再来问某项大数据技术能够处理的数据量,才是个有意义的问题。