轉mysql橫向擴展和縱向擴展


Scale-up(縱向擴展)和Scale-out(橫向擴展)的解釋

  談到系統的可伸縮性,Scale-up(縱向擴展)和Scale-out(橫向擴展)是兩個常見的術語,對於初學者來說,很容易搞迷糊這兩個概念,這里總結了一些把概念解釋的比較清楚的內容。

  首先來段Wikipedia的,講的很透徹了。

Scale vertically (scale up)
   To scale vertically (or scale up) means to add resources to a single node in a system, typically involving the addition of CPUs or memory to a single computer. Such vertical scaling of existing systems also enables them to leverage Virtualization technology more effectively, as it provides more resources for the hosted set of Operating system and Application modules to share.
   Taking advantage of such resources can also be called “scaling up”, such as expanding the number of Apache daemon processes currently running.
  Scale horizontally (scale out)
   To scale horizontally (or scale out) means to add more nodes to a system, such as adding a new computer to a distributed software application. An example might be scaling out from one web server system to three.
   As computer prices drop and performance continues to increase, low cost “commodity” systems can be used for high performance computing applications such as seismic analysis and biotechnology workloads that could in the past only be handled by supercomputers. Hundreds of small computers may be configured in a cluster to obtain aggregate computing power which often exceeds that of single traditional RISC processor based scientific computers. This model has further been fueled by the availability of high performance interconnects such as Myrinet and InfiniBand technologies. It has also led to demand for features such as remote maintenance and batch processing management previously not available for “commodity” systems.
   The scale-out model has created an increased demand for shared data storage with very high I/O performance, especially where processing of large amounts of data is required, such as in seismic analysis. This has fueled the development of new storage technologies such as object storage devices.

Scale vertically (scale up)  

  To scale vertically (or scale up) means to add resources to a single node in a system, typically involving the addition of CPUs or memory to a single computer. Such vertical scaling of existing systems also enables them to leverage Virtualization technology more effectively, as it provides more resources for the hosted set of Operating system and Application modules to share.

  Taking advantage of such resources can also be called “scaling up”, such as expanding the number of Apache daemon processes currently running. 

  Scale horizontally (scale out)

  To scale horizontally (or scale out) means to add more nodes to a system, such as adding a new computer to a distributed software application. An example might be scaling out from one web server system to three.

  As computer prices drop and performance continues to increase, low cost “commodity” systems can be used for high performance computing applications such as seismic analysis and biotechnology workloads that could in the past only be handled by supercomputers. Hundreds of small computers may be configured in a cluster to obtain aggregate computing power which often exceeds that of single traditional RISC processor based scientific computers. This model has further been fueled by the availability of high performance interconnects such as Myrinet and InfiniBand technologies. It has also led to demand for features such as remote maintenance and batch processing management previously not available for “commodity” systems.

  The scale-out model has created an increased demand for shared data storage with very high I/O performance, especially where processing of large amounts of data is required, such as in seismic analysis. This has fueled the development of new storage technologies such as object storage devices.

------------------------------華麗的分割線---------------------------------------

  英語不好?沒關系,給你准備了一份中文的,來自這里,他用養魚來做了個形象的比喻。

  當你只有六七條魚的時候, 一個小型魚缸就夠了;可是過一段時間新生了三十多條小魚,這個小缸顯然不夠大了。

  如果用Scale-up解決方案,那么你就需要去買一個大缸,把所有沙啊、水草啊、布景啊、加熱棒、溫度計都從小缸里拿出來,重新布置到大缸。這個工程可不簡單哦,不是十分鍾八分鍾能搞得定的,尤其水草,糾在一起很難分開(不過這 跟遷移數據的工程復雜度比起來實在是毛毛雨啦,不值一提)。

  那么現在換個思路,用Scale-out方案,就相當於是你在這個小缸旁邊接了一個同樣的小缸,兩個缸聯通。魚可以自動分散到兩個缸,你也就省掉了上面提到的那一系列挪沙、水草、布景等的折騰了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM