2009-02-24 39 views
1

我聽說過以前使用關係數據庫和電子表格的一些真正的觀點。關係數據庫提供快速報告和(相對來說)可靠的數據倉庫,其中電子表格輕量級,快速複製,並且易於在組織中分散到不同的受衆。儘管我注意到了兩者的優點,但我很少能夠區分哪種情況更好,並始終最終使用數據庫。relational_database vs config_file vs電子表格使用

在開發中,當可以將配置設置放置在數據庫中時,很容易忘記考慮其他選項。我遇到了很多應用程序,用戶菜單,工作流程和它們的順序以及常量都是在數據庫級別定義的。如果這些實體可能會受到應用程序級別的最終用戶更改,那麼這很好,但事實並非如此。

所以,智慧的人,你對數據庫,配置文件和電子表格的角色有什麼看法?

+0

什麼,沒有智慧的女人?或者,「男人」是指「人」嗎? – 2009-02-24 18:23:06

+0

不是憤世嫉俗,但我在我的comsci本科系沒有見過一個女人,在我的IT職業生涯中還沒有見過一個女人。 – Haoest 2009-02-24 18:33:56

回答

2

古老的格言就是這樣。

當您使用電子表格解決問題時,您現在有兩個問題。

數據庫用於記錄業務。持久的。常駐。

其他配置文件用於其他配置信息 - 不是持久的業務記錄。當前的設置和不是不持久的業務記錄,它們是處理業務記錄的特定軟件配置的一部分。

電子表格是 - 好 - 它們就是它們。太複雜是一個簡單的配置文件。成爲真正的數據庫太簡單了。

因爲它們(幾乎)不可能控制,所以在數據庫中需要一個標準的,正確的,冪等的結果。您應該能夠從該受控源重建電子表格。

同樣,如果您接受上載的電子表格,則必須提取數據,並且不要再次返回(幾乎不可控制的)源文檔。

1

對我來說,我希望所有的核心數據都存儲在數據庫中。有兩個原因:

  • 允許數據
  • 即席報表訪問允許應用程序共享數據。

數據庫應該包含所有域數據,偶爾還包含一些即時數據(例如用戶偏好)。關係數據庫是最受歡迎的,但對於某些應用程序還有其他選擇。

另一方面,配置文件應該包含您想要在系統中更改的所有'參數';那些不會迅速改變(即時)的。配置項目是靈活的,但不容易,通常不是從界面。如果它只是一個參數,你只希望編碼器可能改變,那在代碼中應該是正確的(所以沒有其他人可以訪問)。

如果您不想擺弄數據挖掘,請提供一些通用機制,以便將包含SQL查詢結果的CSV文件直接下載到Excel中。這樣人們可以擺脫數據透視表,而不必改變應用程序的模式。

1

電子表格是文檔,數據庫是信息的存儲庫,配置文件存儲應用程序的特定實例應如何表現的規則。如果你這樣想,通常不難打電話。