2011-05-01 77 views
0

我正在學習如何託管這些天(仍然計劃階段的項目)。我可以在php或asp.net中開發我的應用程序。在託管選項我看到:數據庫 - 'mssql - 無限x 200 MB'。這是什麼意思?是否當我的用戶填寫200 MB我必須開始使用另一個數據庫?我不知道這是如何工作的,我所知道的是我需要很大的空間(用於超過1,000,000個用戶)。我從來沒有託管過大型應用程序,所以我不知道在哪裏看。託管大型網絡應用程序 - 數據庫

+0

@ 110,是個人項目還是你在某公司工作 – kobe 2011-05-01 18:32:10

+0

個人項目。 – 1110 2011-05-01 19:19:33

回答

1

200 MB的數據庫大小,一旦你達到,你將需要與主機升級數據庫,或者遷移到不同的主機。

200 MB聽起來很小爲100萬用戶。

200*1024*1024/1000000 = 209.7 bytes per user. 

忽略的開銷,假設每個字符的每用戶209個字符,這可能不會是足夠的存儲配置更別說什麼有用的1個字節。

如果您要瞄準1,000,000個用戶,並知道您的數據庫結構將如何,您可以進行粗略計算,告訴您需要多少空間。

例如,一個基本的用戶表由

username - nvarchar(20) 
email - nvarchar(100) 
password - nvarchar(20) 

爲nvarchar是unicode所以每個字符+ 2字節的開銷

所以最壞的情況下存儲2個字節是

42+202+42 == 286 bytes per user 
* 1,000,000 == 286,000,000 
/(1024*1024) = 272.75 MB 

這忽略在一張大小的桌子上,並且只有一張桌子上的索引是非常有用的數據庫。當然,如果您對每個表中平均條目佔用的空間有更好的瞭解,則可以基於此計算。

查看Estimating the Size of a Database

這就是說更多信息這MSDN文章,百萬用戶是一個很大的地獄,一個較小的主機可能足以你,而你發展你的用戶羣。

+0

因爲我對asp.net更熟悉,所以我認爲最好是用它開發應用程序。如果我明白,我可以使用這個小型數據庫託管,直到我得到太多的用戶,然後將項目轉移到另一個主機。我做了一些搜索,我看到的是所有託管公司都提供200 MB選項。也許我以後應該使用專用主機,但是這種擴展可能需要多少成本(與oss解決方案相比)? – 1110 2011-05-01 19:30:55

1

最好的辦法是與您的共享主機公司或任何主機公司聯繫,並詢問它的售前部門。

如果你想在你的數據庫中存儲二進制數據(文件,圖像,視頻),那麼,也許這200MB將是沒有用的。

如果你想存儲1.000.000用戶信息,如「姓名,出生日期和數越多,那麼,200MB都會好)。

主機的磁盤空間,考慮到這些用戶的帶寬,應該是您最關心的問題。

希望它幫你弄好了。