[英]Python: RE vs. Query
我正在使用Django構建一個網站,這個網站使用為某個頁面啟用的塊。
現在我使用包含路徑的文本字段,啟用了一個塊。 當請求頁面時,Django從數據庫中檢索所有塊並在TextField上進行re.search。
但是,我想知道對於塊/路徑使用單獨的DB表是不是更好的主意,每個行包含單個路徑和對塊的引用(就開銷而言)。
單獨的數據庫表絕對是“正確”的方式,因為每次查詢時,mysql都必須從TEXT字段發送所有數據。 當您添加更多行並且TEXT字段變大時,您將開始注意到性能問題並最終導致服務器崩潰。 此外,您將能夠使用VARCHAR並為路徑添加唯一索引,從而使查找速度更快。
我並不完全熟悉Django,但如果我正確理解了這種情況,你應該使用一個表。
實際上,這正是DB軟件設計和優化的用途。
別擔心。 它實際上會更快。
通過自己進行搜索,您將嘗試自己實現部分DB邏輯。 有趣,當然,但不是那么快。 :)
以下是設計數據庫的一些很好的鏈接:
http://dev.mysql.com/tech-resources/articles/intro-to-normalization.html
http://en.wikipedia.org/wiki/Third_normal_form
希望這可以幫助。 祝好運。 :-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.