大规模数据处理05:不得不知的三大指标
1.可扩展性:
最基本而且最流行的增加系统容量的模型有两种:水平扩展和垂直扩展
所谓水平扩展,就是指在现有的系统中增加新的机器节点
垂直扩展就是在不改变系统中机器数量的情况下,“升级”现有机器的性能,比如增加机器的内存
水平扩展的适用范围更广,操作起来更简单,并且会提升系统的可用性
但是,无节制的增加机器数量也会带来一些问题,比如机器的管理、调度、通信会变得更加复杂,出错的可能性会更高,更难保证数据的一致性等等
与之相反,垂直扩展并没有让整个系统变得更加复杂,控制系统的代码也不需要做任何调整,但是它受到的限制比较多,多数情况下,单个机器的性能提升是有限的,而且受制于摩尔定律,提高机器的性能往往比购买的机器更加昂贵
大数据时代对数据存储系统的扩展性要求越来越高,传统的关系型数据库因为表与表之间的数据关联,经常要进行join操作,所有数据要存放在单机系统中,很难支持水平扩展,而NoSQL型的数据库天生支持水平扩展,所以这类存储系统的应用越来越广,如BigTable、MongoDB和Redis