>  기사  >  데이터 베이스  >  数据库的sacle

数据库的sacle

WBOY
WBOY원래의
2016-06-07 15:00:041871검색

scale 英文是扩展的意思。 数据库要进行扩展,指的是存储系统不够,或者性能不够,要提升的时候,就要进行扩展。 分为向上扩展和横向扩展,这就像一个人往上面发展与横向发展两种思路。 scale-up:往上方向去扩展,就是提高单机的性能,比如数据库调优,硬件

scale 英文是扩展的意思。

 

数据库要进行扩展,指的是存储系统不够,或者性能不够,要提升的时候,就要进行扩展。

分为向上扩展和横向扩展,这就像一个人往上面发展与横向发展两种思路。


scale-up:往上方向去扩展,就是提高单机的性能,比如数据库调优,硬件上的调优等等。都是从一个提升上来考虑。

scale-out:横向去扩展。目标不是放在提高单机性能上。而是要做成分布式。多个机器来解决。
scale-up和scale-out的角度是机器的角度,一台机器不够的时候,是把硬件性能提升(往上面扩展),还是通过分布式(横向扩展)

横向扩展是一个战略上的,要做成分布式,怎么把数据分散到多个机器上呢,现在要谈战术上用什么技术手段,技术手段就是sharding技术。


而sharding技术是分片的意思,分片其实是指数据进行分片

分为垂直分片和水平分片。

垂直分片:典型的是将大字段拆分出去。
水平分片:按照某个字段,比如user_id进行hash,一部分到一个表,一部分到另外一张表,这就是水平分片。

 

我觉得,sharding侧重的点不同,侧重的点是对数据,数据库中的数据如何进行分片上(分散到多个点存储,这个点可以是服务器,也可以是小到一个库,小到一个表)。

 

而sacle侧重是整个数据库如何扩展。是整体上的。



解决数据库性能问题归类分为两大类:

一、scale up和scale out
二、sharding技术

网上关于分表的资料很多。

 

以上只是为个人做概念区分。不正确之处,等待完善

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.