如果我需要存儲大量數據,應該使用哪個數據庫?大量數據的數據庫?
回答
一些世界上最大的數據庫是微軟的SQL服務器上運行:http://www.microsoft.com/sql/prodinfo/compare/wintercorp.mspx
這裏是世界最大的10個數據庫的列表(雖然我不知道它是如何準確):
http://www.scribd.com/doc/83088207/The-Top-Ten-Largest-Databases-in-the-World
頂部是世界數據中心與網絡數據的220個TB的附加數據
正確配置Oracle或微軟的SQL Server應該能夠處理任何你在它扔。
又見which db should i select if performance of postgres is low
雅虎使用PostgeSQL - http://postgresqldbnews.blogspot.com/2008/05/world-largest-database-runs-on-postgres.html
谷歌使用MySQL - http://www.mysql.com/customers/customer.php?id=75
我見過的Oracle數據庫在數百演出,以同樣的TB級
與DB2
我沒有親眼見過SQL Server上的任何東西nto的太字節範圍,但它可能很有能力
谷歌並沒有像現在這樣使用MySQL,有幾個博客可以準確地告訴Google做了什麼。他們選擇了MySQL並在其上編寫了所有在下載的MySQL中沒有找到的新功能。這就是MySQL爲什麼要與Google合作以提供新版本的原因。 – balexandre 2008-10-15 17:06:54
有很多terrabyte SQl服務器數據庫。 – HLGEM 2008-10-15 17:57:30
與balexandre所說的相似,該文章warren指出,雅虎大量定製了後端,以便對其用途進行優化。這些補充不在普通的PostgreSQL中。 – Powerlord 2008-10-15 18:13:26
取決於你的意思是巨大的。索引將按順序排列,所做的查詢將需要爲optimized as best as possible。我曾與Microsoft SQL Server(一家大型全球汽車公司的1100萬條記錄日誌記錄事件)以及PostGRES(幾百萬條記錄以及GIS數據)中的巨大數據庫一起工作。
的6個PB的氣候要獲得一個有意義的答案可能輔助性T o知道你考慮的數據量非常大。這也有助於瞭解它將用於什麼以及如何組織。
如果是千兆字節的數據,大多數數據庫都可以。
如果它的TB數據我很確信Oracle或SQL Server將不會有問題。如果他們正確配置和設計。
如果它更大......類似bigtable。
可能比了解有多大才是最重要的是要知道你想用數據庫做什麼。如果它是一個OLTP,那麼以前回答的任何主要玩家都可以,但如果是報告工具,那麼您可能需要調查Alterian和Sybase IQ。
真的取決於你的想法是什麼,以及你想用它做什麼。對於類似SQL的訪問:
- 千兆字節的數據可以很容易地由任何FOSS或商業產品處理。
- 數百GB +通常意味着類似的Teradata
對於更專業的處理,Hadoop和HBase是適當的。 (有幾個類似的產品,其中包括Sector/Sphere和GridGain)。Hadoop是一種基於Google文件系統的雲計算架構,可容納數百PB。 HBase是一個運行在Hadoop上的「數據庫」,具有類似的功能。我說「數據庫」是因爲它是面向列的,與MySQL,PostreSQL,Oracle等面向行的數據庫非常不同。
Hadoop/HBase更適合數據倉庫,或者您可以預先計算您需要運行的查詢,並通過MapReduce將它們帶外執行。
記住一個大型數據庫比選擇數據庫要困難得多。所有查詢都需要進行優化,索引是至關重要的,您必須擁有能夠處理數據的硬件。您可能需要設計一個分區方案來正確分隔數據以確保更好的訪問。在較小的數據庫中可能遇到的技術和設計不佳會導致大型數據庫出現嚴重問題。如果不投資一個好的性能調優書,不要這樣做!在設計數據庫之前瞭解性能調整。
無論您選擇哪種數據庫,都要確保獲得全功能的企業版本。您可能需要這些版本具有的功能,功能較少且價格較低的版本不具備這些功能。
Oracle,SQL Server,db2等將全部處理大型企業數據庫。他們是否處理得好取決於你的硬件,設計和查詢。對於沒有經驗的人來說,這不是一項設計任務。
This posting I made a few weeks ago討論了Oracle和SQL Server對VLDB應用程序的相對優點,這些應用程序通過無共享系統(其中最知名的示例是Teradata)通過沒有中央I/O瓶頸而給您提供最佳的可伸縮性。
這可能是一個很好的開始。
我們查看了Sybase IQ(http://en.wikipedia.org/wiki/Sybase_IQ),但我們確定我們的數據倉庫不足以保證它。
作爲一名DBA,這裏是真正的答案。
如果您沒有知道如何使用它的人員,世界上最好的數據庫平臺可能無法處理最小的負載。
一個相當低端的數據庫平臺可以擴展到巨大的負載,如果你有員工知道內部和外部並解決其弱點。
這就是爲什麼有人說Oracle不能擴展,爲什麼其他人會說MySQL可以統治世界。一位優秀的音樂家仍然可以用蹩腳的樂器發出美妙的聲音,蹩腳的音樂家無法讓最好的樂器聽起來不錯。
當您決定使用哪個平臺進行下一個項目時,請不要擲骰子並使用您沒有經驗的解決方案。如果您真的需要擴大規模,可以使用內外兼修的解決方案,或聘請一位瞭解新內容的人。
只要您在閱讀而不是寫作方面,Sybase IQ就是一個很好的選擇。智商對於寫作來說並不是特別快,但是對於閱讀而言是快速的。 IQ擁有world's biggest data warehouse(1PB)
與Oracle,DB2和SQL Server相比,許可費用也相當低,硬件要求也較低。缺點是支持,文檔和工具在地面上有點薄(如同經驗豐富的IQ開發人員和DBA)
- 1. 大量數據庫
- 2. MySql數據庫的大量數據
- 3. MongoDB - 大量的數據庫
- 4. 正火大量數據庫
- 5. 大數據量重複數據的MySQL數據庫優化
- 6. MySQL數據庫中大量的列數
- 7. 大數據數據庫
- 8. 插入數據的數量龐大到SQLite數據庫
- 9. 通過PostgreSQL數據庫聚合大量(行數)的數據集
- 10. 大數據量
- 11. 從Android中的Sqlite數據庫加載大量的數據
- 12. 從XML存儲大量的數據到PDF的MYSQL數據庫
- 13. 需要最好的數據庫來處理大量的數據
- 14. 數據庫:大量的外鍵
- 15. 用於大容量數據庫的ORM
- 16. PHP - 管理大量的數據沒有數據庫
- 17. 傳統數據庫選擇Hadoop的數據量有多大?
- 18. 查找數據庫中大量數據的頻率
- 19. 在MySQL數據庫中存儲大量數據的問題
- 20. Java針對大量數據的數據庫查詢/更新
- 21. 更新數據庫中的大量數據
- 22. 插入大量的數據到android sqlite數據庫?
- 23. 用於處理大量數據的庫/數據結構
- 24. VB.Net寫入SQLite數據庫大量的數據
- 25. 尋找大量數據的FAST和THREADSAFE數據庫
- 26. 大量異構數據的數據庫存儲設計
- 27. 插入大量數據的數據庫PHP
- 28. 如何比較數據庫中的大量數據?
- 29. 將大量數據插入數據庫時的效率
- 30. 針對數據量非常大的數據庫設計
Hadoop不是數據庫 – skaffman 2009-07-23 16:24:28
也許他的意思是HBase(http://hbase.apache.org/):) – Richie 2011-11-02 12:33:54