[閒聊] 網路儲存裝置(NAS)

看板Soft_Job作者 (自立而後立人)時間11年前 (2014/01/04 07:02), 編輯推噓19(19039)
留言58則, 22人參與, 最新討論串1/2 (看更多)
昨天看到公司發布新產品,又離我們的理想近了一步,覺得心情非常好。 http://www.techbang.com/posts/16364 --------------------------------- 既然這裡是軟體版,那就趁這心情來講講自己公司在做的事情吧。XD NAS = Network-attached storage , 說穿了,就是有接網路的 storage 。 本來這是沒什麼了不起的,不過就是個網芳,我以前也是這麼想。 後來才知道 storage 中間有許多學問,network 也是, 這學問就像是說文解字,不講不知道,一講嚇一跳。 @ 先從網路開始: --------------------------------- 要有網路,表示要能夠作傳輸,至少要有網路卡,要有 server, 所以變成是一台有 cpu、有主機板、有記憶體、有網路卡的嵌入式系統。 下一步,有些 NAS 是低階 cpu 、少量記憶體,純粹就是當 file server 用。 --------------------------------- 接下來,使用者開始抱怨 NAS 不知道該怎麼用,網芳只能在家裡區網用, 如果出去就不能用感覺很不方便,反正都接網路了,就讓我在外面也能存取吧, 然後廠商開始寫 application ,windows/mac application 。 只要告訴我他的 ip 跟帳號密碼,我就能從任何地方存取我的檔案。 接下來,使用者又發現其實裝 application 很麻煩, 他們想要 web access ,於是廠商就做了 web access 介面。 免安裝,連上就能用。 最近這年頭流行智慧型手機,廠商就費盡心機的去整合智慧型手機, 出 app 同步手機跟 NAS 的資料夾,出 app 讓手機可以隨時存取 NAS。 最後,因為絕大多數的 NAS 都在區網內,對外得開 NAT , 所以去研究整合 router 自動設定 NAT 或 NAT 穿透的技術。 (雖然現在所謂 NAT 穿透還是有點半調子,但那就是現行技術的瓶頸。) 然後既然有些 NAS 系統是 linux , 開放 ssh 給一些 geek 級如我的玩家去自由運用也是很合理的。 當然,ftp/sftp 這種基本傳輸工具也是不可少的。 然後因為很多人會是浮動 ip ,所以廠商內建作個 DDNS 的服務也是很合理的。 除了這個以外,有使用者有連接電視、電腦螢幕並播放檔案的需求, 所以作個 HDMI 輸出到任何支援 HDMI 的裝置,也是很有道理的。 --------------------------------- 這裡的網路並不只是字面上的定義,網路其實包含著平台、包含著裝置。 網路意味著你的使用者"從哪裡"、"如何"存取到這個節點, 而這就是許多裝置目前的主要戰場。 --------------------------------- @ 再來談 storage 我們認知中的 storage 大多停留在存、取,也就是 file in/file out。 我們會習慣把 NAS 當成一顆網芳上的大硬碟看待,基本上這個方向是沒錯, 但 storage 要解決的問題,本身並沒有這麼狹隘。 硬碟層本身要解決的問題,當然就是磁碟陣列, 所以現在各家廠商幾乎都支援各種磁碟陣列組合( 0,1,5,0+1,1+0 ..etc)。 有 storage 一定會跟來的問題就是備份(backup),這是我們要處理的。 備份還有時間軸的問題,不是單純把檔案存一份就好, 你得要知道這是一天前的備份,那是兩天前的備份,有備份當然還要能還原。 上面是最最基本要解決問題。 假設我們把檔案進來的流程拆解,你會得到一個這樣的流程: 檔案置入 => 處理 => 存檔完成 => 連接裝置 => 取出檔案 => 應用檔案 綠色是輸入,藍色是歸檔,黃色是輸出, 這裡面學問就多了,可以玩的東西也變多了。 --------------------------------- 讓我們從一般硬碟的角度來想,這個流程會變成 複製檔案 => 存檔完成 => 透過網芳存取 => 複製檔案 => 用電腦軟體打開 這流程我想正常會買 NAS 的人都知道,我就不多說。 --------------------------------- 接下來我們要把事情切成輸入跟輸出兩邊, 那輸入難道沒有別的角度嗎? 當然有,最常見的就是 bt 下載。 這裡改變的是輸入面: 放入BT種子 => P2P 下載 => 存檔完成 => 透過網芳存取 => 複製檔案 => 用電腦軟體打開 看起來很合理吧。 --------------------------------- 那如果再來點有趣的東西,現在很多人都用 dropbox 管檔案, 如果我想再 NAS 上也放一份? 登入 dropbox 帳號 => dropbox 同步 => 存檔完成 => 透過網芳存取 => 複製檔案 => 用電腦軟體打開 聽起來很有道理對吧。 --------------------------------- 我想要跟一整群朋友分享檔案,他們可以自由提交新的檔案,我也能收檔, 而且我不想要外人看到,我能有什麼樣的輸入工具 ? BTSync 設定 => P2P 同步 => 存檔完成 => 透過網芳存取 => 複製檔案 => 用電腦軟體打開 這扎實落實區域 P2P 概念。 --------------------------------- 從 content provider 直接拉東西過來如何? 給入 url => 系統透過 http 下載遠端資料 => 存檔完成 => 透過網芳存取 => 複製檔案 => 用電腦軟體打開 還能有變形 給入 youtube url => 系統透過 http 下載影片 => 存檔完成 => 透過網芳存取 => 複製檔案 => 用電腦軟體打開 給入 FB 相簿 url => 系統透過 http 下載影片 => 存檔完成 => 透過網芳存取 => 複製檔案 => 用電腦軟體打開 /* 下略幾十個 content provider */ --------------------------------- 光 input 其實就有非常多來源,而對使用者來講整合這些來源是辛苦的, 相信大家都沒興去裝一堆軟體來自己手動搞上面這些東西, 但對廠商來講這就是能操作的空間。 input 大概只佔一半的重要性, output 也是個兵家必爭之地, 可能很多人不太理解輸出這件事情背後的脈絡在哪,我們可以來梳理一下。 輸出最最基本的就是檔案 one by one 的輸出, 就像 ftp 或網芳那樣,連進去各自透過自己的電腦或程式處理。 如果你的需求只到這裡,那的確沒什麼問題, output 很單純, 但有很多進階的有趣需求是我們正在挑戰的。 --------------------------------- NAS 上的檔案反正我們大概就可以簡易的分類,文件檔、影音檔、執行檔等等。 其中通常最多的會是影音檔,影片跟照片,因為這東西最佔空間最需要 NAS。 最最基本的需求大概就是「打包下載」,把多個被指定的檔案打成 zip 下載。 我概略寫一下就好了,發現要認真寫這邊寫不完。 文件檔的挑戰在於預覽,特別是投影片類或文件類, 可以在各種 client (ex.手機) 瀏覽、預覽是一個很大的挑戰。 照片的問題在於要讓使用者好分類,歸檔的那一塊會需要花很多力氣。 影音檔預覽會是問題,其中最大的問題就是轉檔這回事。 另一方面,除了純粹的檔案輸出以外,這年頭由於各種通訊協定的設立, 我們也能透過網路將資料打到支援 DLNA 或 Airplay 的裝置上, (ex.智慧型電視) 每個平台對於影片 codec 相容的程度不一, 所以各家廠商都花非常大力氣在支援影片轉檔。 很多時候我們甚至得作即時轉檔也就是邊播邊轉, 不然不是目標平台根本不支援,就是你播 1080P 的時候會跑不動。 而輸出到行動裝置端,能不能有對應的播放跟處理也是個需要考慮的問題。 上面講得都還算是基本該做的。 而各種執行檔,ex. java application , binary , 如果你想運用系統的資源跑一些程式運算,這也是一種輸出的方式。 通常 linux based 的系統只要有開 ssh,基本能做的程式運算都能作。 像我就常在上面跑 java application 。 像這篇最一開始新聞摘的,如果是 image 還可以直接用機器跑 vm 。A_Ay --------------------------------- * 那如果我們不講檔案的輸入輸出,我們來聊圖文文件? 像我們會在各 blog 平台發表的那些文章, 難道只要把純文字 dump 回來,就算是有紀錄了嗎 :P 他們通常是有 html,有圖,有字的。 所以我們也做了屬於我們的筆記系統 http://www.qnap.com/i/station/zh-tw/notes.php 讓你的輸入是來自你腦袋靈感的 web 編輯,輸出還是 web page 。 * 那如果我們不講檔案的輸入輸出,我們來聊資料庫? 在 NAS 上架個 mysql 或 mongo ,很瘋狂嗎? 我用起來很自然。:) * 那如果我們不講檔案的輸入輸出,我們來聊專案管理? 在 NAS 上架 redmine、架 mantis、架 bugzilla ,不管附檔再大都不怕。:P --------------------------------- 而且最讚也最棒的事情就是: 放在自己家裡的服務,不用擔心這些服務被關掉或換掉, 即使有一天這些系統因故被放到記得,有天你回來看看這些紀錄都還在。 像我在無名 bbs、在系站 bbs 寫了一堆文章,最後這些 bbs 都關光光了, 最後只有我自己架的 bbs 還活著。-_-# 當然你得擔心自己機器沒搞定產生的人禍, 但至少這是你自己可以負責可以處理的。廠商也會盡力幫你搞定這問題。 不是說網路服務不好,只是讓這些資料, 在有個萬一時有地方去,這也是很重要的事情。 很多人會覺得硬體廠做的事情都是靠硬體解決, 但其實這個年代幾乎沒有不連接裝置的硬體, 而跟裝置打交道則主要是軟體的工作。 我們可以看看上面,有多少東西可以靠軟體解決或做得更好, 那些就是我們軟體人能在軟硬整合這個脈絡下,能去思考或切入的點。 把硬體當平台,把軟體當產品、服務,是軟硬整合的脈絡。 最近一直在思考軟硬整合的事情, 發現這東西裡面的樂趣跟有趣的東西真的是還不少。:P -- 網頁上拉近距離的幫手 實現 GMail豐富應用的功臣 數也數不清的友善使用者體驗 這就是javascript 歡迎同好到 AJAX 板一同討論。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 58.115.68.19 ※ 編輯: TonyQ 來自: 58.115.68.19 (01/04 15:03)

01/04 15:10, , 1F
這不知道是由多少人加班加到哭不出來的血淚堆疊而成...
01/04 15:10, 1F

01/04 15:12, , 2F
你這推文就跟"你吃的飯不知道是壓榨多少農民才來的"一樣 XD
01/04 15:12, 2F

01/04 15:13, , 3F
我是裡面的一員啊,我很少加班、而且作得很開心。:P
01/04 15:13, 3F

01/04 15:14, , 4F
或許有些地方是加班到很自虐,是有聽過有些廠商要 oncall 的
01/04 15:14, 4F

01/04 15:14, , 5F
,但那跟原題沒什麼關係吧。
01/04 15:14, 5F

01/04 15:18, , 6F
至少台灣兩家NAS龍頭的薪水工時CP值還是不錯的..
01/04 15:18, 6F

01/04 15:19, , 7F
借問一下NAS 拿來架網頁+SQL 大概能應付多少人數&流量~~
01/04 15:19, 7F

01/04 15:20, , 8F
以目前四萬塊左右等級的NAS來說
01/04 15:20, 8F

01/04 15:20, , 9F
這就要問那些單位人一直換,補還補不滿是為什麼了...XD
01/04 15:20, 9F

01/04 15:21, , 10F
好啦,我只是來亂入一下的~
01/04 15:21, 10F

01/04 15:21, , 11F
因為目前預算不多 想說能不能先用NAS頂著用XD
01/04 15:21, 11F

01/04 15:27, , 12F
01/04 15:27, 12F

01/04 15:32, , 13F
@andy2151 這問題看系統吃多重,要看預計跑什麼。
01/04 15:32, 13F

01/04 15:34, , 14F
@andy2151 你把它當同級的桌機來看就差不多那個意思了
01/04 15:34, 14F

01/04 15:40, , 15F
好的 了解~
01/04 15:40, 15F

01/04 15:41, , 16F
專業推
01/04 15:41, 16F

01/04 15:42, , 17F
推Qnap NAS
01/04 15:42, 17F

01/04 16:13, , 18F
推!
01/04 16:13, 18F

01/04 16:31, , 19F
好酷~
01/04 16:31, 19F

01/04 16:32, , 20F
跳脫低階硬體純file server的框架後能做什麼都不意外了XD
01/04 16:32, 20F

01/04 17:02, , 21F
借轉隔壁板MIS
01/04 17:02, 21F

01/04 17:29, , 22F
可以問一下VM是用哪種? KVM ? Xen ?
01/04 17:29, 22F

01/04 17:36, , 23F
@goodga 那塊我沒研究 如果我聽到後續消息再說~ XD
01/04 17:36, 23F

01/04 18:14, , 24F
感覺很有趣的應用方向XD 湯姆Q大對小米路由的看法如何?
01/04 18:14, 24F

01/04 18:14, , 25F
因為小米路由好像想走的路線很像這篇所說的
01/04 18:14, 25F

01/04 18:15, , 26F
不過不知軟體方面的整合有沒有比你們公司多
01/04 18:15, 26F

01/04 18:15, , 27F
你們公司應該和小米路由是對手喔XD
01/04 18:15, 27F

01/04 18:45, , 28F
前陣子在朋友牆上回過,我摘過來好了。
01/04 18:45, 28F

01/04 18:46, , 29F
01/04 18:46, 29F

01/04 20:24, , 30F
瞭解 看來應該路由是中繼站 而NAS才是核心的載體
01/04 20:24, 30F

01/04 20:24, , 31F
感謝解惑
01/04 20:24, 31F

01/04 22:01, , 32F
外國網路硬碟 + BT下載,曾幾何時,台灣也越來越流行了
01/04 22:01, 32F

01/04 23:10, , 33F
推 很有趣的文章
01/04 23:10, 33F

01/05 00:41, , 34F
關軟體版屁事 當個版?
01/05 00:41, 34F

01/05 01:00, , 35F
@lucas01 裡面的內容都在講軟硬整合啊~
01/05 01:00, 35F

01/05 12:01, , 36F
software應該不是只寫寫gui吧 文中的networking跟
01/05 12:01, 36F

01/05 12:02, , 37F
storage也是sogtware阿
01/05 12:02, 37F

01/05 12:04, , 38F
我覺得你們可以挖網通廠的QA跟RD 哈
01/05 12:04, 38F

01/06 09:07, , 39F
板主覺得 QNAP 與 Synology 相比, 優劣為何?
01/06 09:07, 39F

01/06 09:09, , 40F
S 面試那麼嚴 , 技術真的比較好?
01/06 09:09, 40F

01/06 10:15, , 41F
@youhas 現況來講我覺得是兩家戰略方針有點不同,你要我講
01/06 10:15, 41F

01/06 10:15, , 42F
優劣其實我覺得一來是身份不適合,二來是真的也不好講。
01/06 10:15, 42F

01/06 10:16, , 43F
我只能說這個市場現在競爭激烈,看下一步大家打什麼牌可能
01/06 10:16, 43F

01/06 10:16, , 44F
比現在是什麼狀況更重要。
01/06 10:16, 44F

01/06 10:17, , 45F
至於技術,在產品公司有好的技術人也要有正確的戰略可以發揮
01/06 10:17, 45F

01/06 10:17, , 46F
所以還是回到上一步。我覺得 S 之前的戰略跟技術都還算表現
01/06 10:17, 46F

01/06 10:17, , 47F
得不錯就是了。
01/06 10:17, 47F

01/06 10:33, , 48F
NAS 公司是靠 GPL 賺錢的好典範,而且還是台廠。
01/06 10:33, 48F

01/06 10:35, , 49F
http://www.freenas.org/ 不過很好奇檯面上很少用 FreeNAS
01/06 10:35, 49F

01/06 10:36, , 50F
直接用freenas這套改應該更快...
01/06 10:36, 50F

01/06 12:34, , 51F
可以借轉到fb不公開的資訊組長論壇嗎 謝謝
01/06 12:34, 51F

01/06 17:03, , 52F
臏p通在汐止中興路上班嗎?
01/06 17:03, 52F

01/06 20:03, , 53F
@upsky 我的文章註明作者出處就可以自由轉載
01/06 20:03, 53F

01/08 14:07, , 54F
cool,有vm,那跟EC2一樣了,只是要負擔電費跟維護
01/08 14:07, 54F

01/08 15:41, , 55F
NAS人推,好羨慕那些一個team大公司做產品的, 像我自己硬幹
01/08 15:41, 55F

01/08 15:41, , 56F
下至loader kernel上至除了VM你想的到的東西我全都包了~_~
01/08 15:41, 56F

01/08 15:43, , 57F
DLNA FTP webdav, p2p, BT 還要支援IPcam當NVR...
01/08 15:43, 57F

01/08 15:44, , 58F
而且不用GPL,因為客戶要做隨攜型所以flash只有4M....
01/08 15:44, 58F
文章代碼(AID): #1Inx8URa (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1Inx8URa (Soft_Job)