2016-10-02 24 views
1

我正在運行一個構建在grails之上的博客站點。隨着時間的推移,MySQL數據庫正在增長。 數據庫有一個表名'post'。該表包含近100萬個條目。查詢此表變得非常耗時。提高性能:如何存檔Grails域類

現在我試圖拆分表並想存檔舊條目。所以複雜的數據庫查詢需要更少的時間。

我試圖做到的是這樣的事情,

class Post{ 
    //... properties 
} 

class PostArchive extends Post{ 

} 

請問這種方法提高性能?是否有任何插件可用於完成這些類型的任務?

+0

很難說這是否會提高性能,而不看到什麼表現不佳。例如。您的問題不包括您嘗試優化的查詢。我認爲,除非你提供這些信息,否則這將不會得到很好的答案。 –

+0

郵件表上的任何SELECT查詢都需要花費更長的時間來執行。 用戶表加入查詢,使情況更糟糕。 – Meftaul

+0

您是否使用索引等優化了數據庫?我會考慮在更改應用程序之前從那裏開始。我之所以問這個問題,是因爲我有Grails應用程序帶有數以百萬計的記錄,並且經常從這些表中選擇(帶有多個連接)並查看次要的響應。 –

回答

0

我們用我們的核心設置創建了一個抽象域,然後再擴展。所以你會有

abstract class BasePost { 

class Post extends BasePost{ 

class PostArchive extends BasePost{