存儲和計算的分別雲化設想

我的想法是這樣衍生來的...

雲的概念我這裏就不細說了,大致的意思就是可以自由分配固定的資源。比如說你有好幾百臺服務器,每臺服務器資源相對來說比較大,你的服務不需要這麼大的資源,一臺服務器的資源,對你來說都是“殺雞用了牛刀”,那麼雲計算就可以根據算法劃分出適合你的服務的資源,剩下的資源,這個算法就會根據別的服務所需要的資源的多少來劃分給別的用戶,大致就是這麼一個意思。

我是做數據處理的,有幾年數據庫的經驗,也接觸過hadoop系統,hadoop的核心是HDFS和MapReduce,一個存儲,一個計算。這個存儲比較有意思,分佈式的存儲,還實現了共享,容了錯,很厲害,確實了不起。計算先Map再Reduce,可以很容易找到源碼,我也不多介紹了。

但是無論是傳統的數據庫還是hadoop系統的大數據系統,都有一個共同的特點,那就是存儲和計算所佔用的資源是一體的。這個一體說的也不準確,因爲計算主要是在內存裏,CPU指揮,和存儲在硬盤裏的東西從物理上看也不是一體。但是我之所以說是一體,就好比說一個人來說,有手有腳,有眼睛有鼻子,少了一個,那麼這個人就是有殘疾的,對吧?所以如果內存少了,只有硬盤,那數據就沒辦法處理了,就是個死的東西。少了硬盤,就保存不下來,對吧?所以我說的一體呢,就是這個意思。

然後步入正題。

我在想,斷了電之後我們還剩下什麼?還剩下什麼呢?CPU裏的數據沒了,內存裏的數據沒了,硬盤裏的數據還有,所以我們就剩下硬盤裏的數據裏。那我就在想,我如果平時不需要運行程序,或者運行很簡單的程序,那麼我需要的內存和CPU資源是特別少的,我只需要保證我能用上的數據在硬盤裏就行了,那我CPU和內存資源不是都閒着浪費掉了嗎?但是我們又不能把電完全給斷了,因爲我的數據還是有很多人要訪問,要查詢的,但即使是很多人訪問,查詢,那我所用到的資源也沒有我跑程序處理數據時候所用的資源多,甚至說隨着數據量的增多,我處理數據執行腳本的時候,資源消耗的越來越多,還不夠用,那麼我就得加內存,加CPU,同時也加硬盤,我就在想,有沒有一種線上的雲化的方法,我不執行腳本的時候,我的CPU和內存資源,別人可以用,我只留下我的硬盤和別人訪問我所需要的資源。當我執行腳本處理數據的時候,我的資源不夠用的時候,我可不可以線上從別的地址“借”一些資源過來解決我的燃眉之急?所以我就有了這麼一個想法。

當然,這個只是我一個初步的想法,我很清楚內存溢出對於數據安全的威脅很大,另外線上的資源雲化,安全威脅也是特別大的,就想人分好人壞人,服務器也分好服務器和壞服務器。

如果你突然看到了這篇文章,或者你有什麼想法,可以隨時聯繫我,我很開心接受你的意見!

vx:daijiubu7878

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章