2011-02-23 96 views
2

我想從MySQL服務器導入數據到Oracle數據庫,並且我發現了一個使用Oracle數據庫鏈接的建議。 Oracle實例爲10.0.2.1,MySQL服務器實例爲5.1。兩臺服務器和硬盤之間的連接不應該是瓶頸。Oracle數據庫鏈接有多快?

我想問一下Oracle數據庫鏈接的性能?它有多快?它是非常慢,慢還是快?它能夠傳輸1000行/秒嗎?

謝謝

+1

行數有多大?一個LONGTEXT列可以容納大約4GB。如果每行的容量是4 GB,那麼通過網絡每秒推送4 TB的數據就是具有挑戰性的。 – 2011-02-23 08:55:53

回答

1

一般來說通過網絡速度的限制dblink的表現,但也有一些缺陷,導致性能問題:導致傳輸大量的本地和遠程表之間

  • 不必要的連接數據;
  • 查詢中沒有內置的並行(在這種情況下,工會有幫助);
  • 遠程數據庫端的隱式排序;
  • 未能遵守Oracle建議,例如使用並置視圖和提示(主要是DRIVING_SITE和NO_MERGE)。
3

1000行/秒肯定是可以接受的......問題是它是否可以在您的數據庫/網絡基礎設施上使用。

即使我們有基礎設施的詳細知識,它仍然是很難說......這取決於很多因素,如網絡速度,網絡延遲,數據庫行的大小正轉移等

要確定的唯一方法就是測試它。

我認爲這是一件好事 - 構建測試的過程必然會教你很多關於它如何工作的問題......它會拋出許多你將要遇到的問題在某個時候考慮 - 你們在形成時如何處理積壓?什麼是你可以達到的最大吞吐量?等等。您將瞭解什麼樣的數據傳輸最適合您(例如,一次或多個批次的單個行)您可能想使用除SQL以外的機制(例如隊列)嘗試它(如隊列)

您說你不認爲網絡/硬盤訪問會成爲一個問題 - 同樣,你需要測試這個假設。每個數據庫都會對性能產生限制(或者它們會無限快速地運行),而且通常磁盤訪問是限制因素。在這種情況下,我會推測網絡可能是限制因素,但如果不測量它,就沒有辦法知道。