假設我有一個適用於不同種類數據的應用程序。每種數據都是唯一的,而不同的類型只是彼此相切。將一種映射到RDMS可能非常困難,而另一種映射到圖形數據庫可能非常困難。在運行多個數據庫平臺來解決應用程序的各種需求方面是否存在真正的危害?關於一次運行多個數據庫平臺有什麼「不正確」?
1
A
回答
0
我想有一個與它沒有什麼大問題,只要你留意注射和其他安全問題(我不知道你是怎麼通過你的數據,DB)
0
其技術上是可行的,並會工作,但是構建系統的人員或團隊需要擁有開發/測試/部署/維護/備份數據庫所需的各種技能,程序和未來的開發和升級路徑(每種類型的數據/數據庫都重複)。我一定會盡量減少這些機制和程序。
1
有很多特定於應用程序的問題。數據商店是否會直接與對方通話?或者,他們會通過應用程序進行溝通嗎?
隨着時間的推移,主要問題與維護有關。如果不同的數據庫在同一臺服務器上運行,那麼您有維護問題。新的服務器操作系統補丁出現了,但只有一些軟件可以與新補丁一起使用。你是否安裝它?如果你需要它出於某種其他原因?
同樣,如果所有軟件都在單個服務器上運行,那麼您可能需要更大的服務器,因爲您擁有更多的軟件。即使額外的計算能力正在其他地方,您仍將爲按服務器大小定價的產品支付更多的費用。
在某些情況下,您可能需要使用不同的產品。但是,使用一個產品的次優化往往更實際一些,而不是維持一個系統擁有大量的單一用途軟件組件。
相關問題
- 1. 運輸數據庫從一個平臺到另一個平臺的Oracle數據庫
- 2. 對於單個應用程序的多個數據庫平臺
- 3. ,爲什麼不正確運行?
- 4. 如何在多臺服務器上運行關係數據庫
- 5. 構建線程安全的多平臺C庫的正確方法是什麼?
- 6. 平臺無關和跨平臺有什麼區別?
- 7. 是否有一個可用於多個平臺的簡單庫(可用於將數組數據寫入文件)?
- 8. 什麼是正確的數據類型用於一個號碼
- 9. 避免運行函數多於一次
- 10. 有什麼我可以做的關於多次運行着色器的開銷
- 11. GTK +和GTK#有什麼區別,哪一個是「更多平臺」?
- 12. 我如何確定哪個平臺正在運行?
- 13. 數據庫一次運行(一次運輸)
- 14. 什麼關係數據庫用於Groovy
- 15. 在多個平臺上維護多個數據庫
- 16. 關係數據庫設計的正確形式是什麼?
- 17. 多平臺數據庫與parse.com
- 18. 什麼聲明是不正確的關於唯一索引
- 19. 爲什麼不循環運行「確定」次數?
- 20. 運行指定平臺(Android或iOS)的自動化測試。每次發佈只有一個平臺。如何指定Maven必須運行哪個平臺?
- 21. 用於運行多個JVM平臺語言的Java沙箱
- 22. 一次運行多個webservices
- 23. 一次運行多個CADisplayLinks?
- 24. 節點集羣:確保一次只有一個函數實例正在運行
- 25. 多次運行同一程序時,爲什麼執行時間有所不同?
- 26. 使用Amazon AWS Elastic Beanstalk運行帶有多個git存儲庫的平臺的最佳方式是什麼?
- 27. 我如何確定在運行時從一個.NET標準庫調用平臺?
- 28. 關於如何創建一個多平臺的應用程序
- 29. 爲什麼Android平臺不能運行桌面應用程序?
- 30. 什麼是正確的,跨平臺的睡眠方式不到一秒鐘?
由於數據庫如何吞噬所有可用內存,數據庫喜歡成爲服務器上唯一的東西,因此您可能會嘗試使用所有內存的多個數據庫應用程序。可能最好將自己的服務器上的每種類型的數據庫。 – HLGEM 2012-07-16 19:13:06
那麼,如果每個數據庫系統都有自己的服務器呢?這個應用程序很可能在雲或虛擬服務器上運行,因此每個應用程序都可以輕鬆獲得它自己的應用程序。他們不會直接相互對話;這就是有多個數據庫的原因。系統之間的數據差異太大,無法證明單個關係數據庫的合理性,特別是因爲某些數據在那裏不能很好地映射。 – 2012-07-16 20:21:21
如果您在額外的服務器上進行投資,那麼在每種情況下使用適當的軟件都有一些很好的理由。例如,您可以逐個縮放不同的組件。我主張在添加新的軟件組件時保守,但不是不合理。如果有需要,則添加一個組件。只要考慮到維護問題,就可以平衡權衡。 – 2012-07-16 20:26:20