2011-01-19 101 views
2

我想比較使用Hadoop和HBase的系統設置,並使用Oracle DB作爲後端實現相同。我對甲骨文方面的知識缺乏認識,所以要進行公平比較。Oracle安裝需要重負載

工作負載和非功能性要求是大致這樣的:與一個簡單的關係和多個(非文本)在4小時內的索引的兩個表
A)12M交易。這相當於每秒833筆交易(TPS),持續。這需要每8小時完成一次。

B)確保所有的寫入都是持久的(因此在集羣設置的情況下,正在運行的事務可以保持機器故障),並且具有可觀的可用性級別?有了可觀的可用性水平,我的意思是像磁盤和單個網絡接口/ TCP連接丟失等常規故障不需要人爲干預。罕見的故障,可能需要干預,但應通過發射一個可快速接管的冷備用來解決。

C)另外再添加300個TPS,但是在很多表格中幾乎連續24/7發生這些事情(但是所有成對的兩個具有相同的簡單關係和多個索引)?

某些情況下:此工作負載爲24/7,系統需要保存10年的實時查詢歷史數據。查詢性能可能比亞秒級差一些,但必須足夠活躍才能考慮日常使用情況。 ETL作業的設置方式使得流水少。同樣在關係設置中,這個工作負載會導致很少的鎖爭用。我希望索引更新是主要的痛苦。爲了儘可能公平地進行比較,我預計Oracle會提供最鬆散的一致性級別。

我無意抨擊Oracle。我認爲這是一個很好用的數據庫。我試圖得到一種平衡開源(和NoSQL)之間的感覺,就像我們做的一樣,並且使用商業支持的,經過驗證的設置。

+0

你應該在更多的數據庫特定的網站,如http://dba.stackexchange.com/或http://forums.oracle.com/forums/category.jspa?categoryID=18 – softveda 2011-01-19 11:10:04

+0

問這個問題有道理。我已經做了。 – FvV 2011-01-19 11:31:23

回答

3

沒有人能夠明確地回答這個問題。

當你去購買汽車時,你可以明智地期望它的最高速度,加速度和燃油消耗將在獨立測試值的百分之幾之內。一般情況下也不適用於軟件,尤其不適用於數據庫。

即使您提供了硬件,操作系統和數據結構的確切詳細信息,以及存儲的數據量和交易量的完整詳細信息,性能可能會輕易變化100倍,具體取決於模式(由於開發了記錄緩存熱點,磁盤碎片)。

不過,話說回來,有幾個要點我可以給:

1)總是一個的NoSQL數據庫將超越傳統的DBMS - 對NoSQL數據庫的理由的理由是性能和並行。這並不意味着傳統的DBMS是多餘的 - 它們提供了更大的靈活性來與數據交互

2)對於中小型數據量,與其他關係數據庫相比,Oracle的經驗相對較慢。 Oracle RAC作爲一種可擴展的解決方案也不會讓我印象深刻。

3)我懷疑的工作量將需要獲得一致的結果爲$ 8K +)的區域運行Oracle

4)中檔服務器(東西雖然有一個熱備份是覆蓋所有的快捷方式在很多情況下,風險/成本/收益有利於諸如RAID,多網卡,UPS之類的方法,而不是維護同步羣集的問題。 5)支持 - 你有沒有想過要問一個開源軟件包的開發者,他們是否會提供支付支持? IME,商業軟件的SLA/EULA更多的是保護供應商而不是客戶。

所以,如果你認爲它值得考慮,成本不是一個大問題,那麼最好的答案是自己嘗試一下。

1

這裏沒有冒犯,但是如果你沒有太多的Oracle知識,那麼你真的無法做出公平的比較。我與經驗豐富的Oracle數據庫管理員和系統管理員團隊合作,他們會爲比較測試(硬件/軟件設置變量幾乎是無限的)進行設置爭論。通常這些測試是對基礎設施方向放棄結論的理由(金錢也是一個關鍵問題)。

另外,您是否打算僱用一個Hadoop專家團隊來管理您公司的數據基礎架構?甲骨文並不便宜,但你可以找到非常經驗豐富的Oracle專業人士(從數據庫管理員,開發人員到分析師),對hadoop管理員/ dbas不太確定...

只是思考的食物(不,我不爲Oracle工作;)