我有一個有260列的遺留表:4存儲全局值和256列存儲參數。我需要擴展表來存儲512個值。如何在舊數據庫中存儲500個鍵值對?
最佳解決方案是創建一個只有三列(id,value,parent_id)的子表,並根據需要存儲許多參數。然而,這將需要對代碼進行重大改寫,我不確定其性能。
另一個解決方案是簡單地擴展表(使其更寬)來存儲兩倍的值。這是一個更安全的解決方案,因爲我需要對我的代碼進行微小的更改。此外,新表格將在未來4年內(至少)不會被修改,所以堅持使用它可能是有意義的。
只是爲了提供更多的信息,我的系統沒有單元測試(因此我不願意修改代碼),不使用ORM(因此我需要在代碼編寫和讀取DB),PM擔心第一種解決方案可能比現有解決方案慢。我可以期望在表中存儲10000行,所以建議的子表將會有大約5M行。
任何人都可以給我一個證明,提出的設計實際上比目前的設計更快?設計考慮是不夠的(當前系統工作...)。是否有任何其他好的(或不好的)理由轉向提議的設計?
做孩子的主意。 500個值不會影響性能。如果它們變化不大,請考慮在啓動時將它們緩存在HashMap中。 – Bohemian