2010-11-02 148 views
0

好了,我一直在思考這個有一段時間了,這是不是很明顯 - 這是我在SQL嘗試(PostgreSQL的):將SQL域存儲在SQL數據庫中的最佳實踐?

CREATE TABLE domains (
    id SERIAL NOT NULL, 
    display_name varchar(255) NOT NULL, 
    domain_name varchar(255) NOT NULL UNIQUE, 
    tld varchar(10) NOT NULL, 
    domain_type INT NOT NULL, 
    -- 
    PRIMARY KEY (id) 
) ; 

,但有些問題是: *存儲HTTP: // - 與域名? - 例如http://www.domain.com? *是否值得將tld打入自己的專欄?例如.com * case?這件事情 *別的嗎?

其他人都做了什麼? - 謝謝,

+1

「http」不是域的一部分,所以我會說存儲這將是多餘的。就分解「.com」而言,如果將來需要,我認爲這是可以隨時完成的事情。換句話說,如果您選擇不將它作爲單獨的列存儲,則可以使用簡單的正則表達式將其解析出來。 – dotariel 2010-11-02 15:48:48

回答

0

請記住,一切取決於您的預期用途。

您可能希望保留http://,但保存在單獨的列或位字段中。您可能會決定要區分ftp,http,https等。

tld再次取決於預期用途。會不會有很多像bbc.co.uk這樣的國際網站有多個tld列表?你可能會單獨考慮這個問題,因爲將它分開可能是一個問題。再一次,如果你不認爲你會使用tld來完成任何事情,這可能並不重要。不過,以正確的方式啓動它會比中途改變路線容易得多。

2

簡短的回答是,沒有存儲DNS條目的最佳實踐。有關如何將數據存儲在數據庫中的最佳做法。這通常是通過減少存儲數據的重複以及如何訪問數據來實現的。

我發現在沒有先了解它將如何使用的情況下考慮某些事物的結構幾乎是毫無成效的。

我也會考慮以後做一個天真的實施和重組的成本是多少。有時候成本實際上並不那麼糟糕。通過考慮第一種實施方式,您可以設置其他機制或部分數據中斷,以降低成本,從而降低成本。

+0

實際上這是一個好主意 - 我試圖避免重構,但我想它是試圖設計一些東西,我們不能完全預測未來它會如何成長...... – MikeSNnowhill 2010-11-02 18:22:03