2010-10-08 179 views
1

我有一種情況可以選擇解析Oracle PL/SQL中的XML文檔並在Java中解析它們。系統在消息隊列中接收XML文檔,因此XML文檔不在文件系統上,除非在從隊列中讀取之後將它們寫入文件系統。而且,解析的目的是在一堆數據庫表中插入/更新記錄。Oracle XML解析與Java XML解析

從性能的角度來看哪一個更好?

+0

像Oracle隊列一樣出隊? – 2010-10-08 04:40:55

+0

沒有。我的意思是從隊列中讀取並寫入文件! – Shyam 2010-10-08 05:02:54

+1

哪個版本的Oracle?此外,這個消息隊列是數據庫內部的,即AQ還是外部的? – APC 2010-10-08 05:46:12

回答

3

這實際上是PL/SQL和之間的競爭,很多可能的Java解析器。一些Java解析器極有可能在性能上擊敗PL/SQL。

一些其他的原因,去與Java解析器:

  • 許可費用將大大減少。
  • 你沒有被鏈接到特定的數據庫。
  • 您的解決方案有更多的部署選項。

不過,如果你需要從XML 提取信息,並將其插入到Oracle數據庫,優勢可能會去PL/SQL。在這種情況下,對這兩種方法進行原型設計可能是值得的。還要考慮每種方法所需的開發時間:如果進入系統的XML的字節數相對較少,只需選擇最快實施的解決方案即可。

+1

「你沒有被鏈接到特定的數據庫。」 Java或PL/SQL,它現在仍然是Oracle;) – APC 2010-10-08 05:53:52

+0

嘿,甚至Oracle或MySQL! ;-) – 2010-10-08 06:10:44

3

我會說Java好像你想水平縮放(即增加更多的服務器),那麼Oracle的許可成本可能會阻止這種情況發生。

添加另一個應用程序服務器只是爲了解析XML與Java比較便宜。

另外(flamebait)數據庫管理員脾氣暴躁。