什麼是存儲計算分離?
存儲計算分離是一種分層架構思想,即將存儲能力和計算能力分開,各自服務化,通過高速網絡連接;以AWS的大護具架構爲例,底層統一採用S3存儲,存儲層上架設各種計算引擎比如HIVE、Spark等,如下圖所示:
存儲計算不分離的問題
以Hadoop爲例說明,在傳統Hadoop的使用中,存儲與計算密不可分,而隨着業務的發展,常常會因爲爲了擴存儲而帶來額外的計算擴容,這其實就是一種浪費;同理,只爲了提升計算能力,也會帶來一段時期的存儲浪費,將計算和存儲分離,可以更好地應對單方面的不足。
基於OSS構建數倉的優勢
- 海量的存儲空間,可彈性擴展;
- 極低的存儲成本;
- 支持多種計算引擎,目前OSS上數據支持如下計算引擎:開源的Spark、Presto、Druid,Pig,Hive等,以及阿里雲的MaxCompute,E-MapReduce、RDS-PG、Batch Compute等;
- 在計算效率上比肩HDFS類存儲;
參考: