クエリのパフォーマンスの最適化

1861 ワード

クエリのパフォーマンスの最適化
1.基本原則:データアクセスの最適化
1)           
              
                
2)mysql          
        :    、     、       
             :      
             ,      ;  
               
        mysql  3      where  ,         :        
                   where          ,        。  
                  (extra “using index”)      ,                  。       ,            。  
                    ,          ( extra   “using where”)。                     。              
                     ,            ,            :
                  ,      ,                 
                ;  
                   , mysql               。  

2.クエリの再構築方法
1)           
             ,         ,        3   
2)      
        :
         delete from messages where created < data_sub(now(),interval 3 month);  
             
        rows_affected = 0  
        do {
            rows_affected = do_query(
                "delete from messages where created < date_sub(now(),interval 3 month) limit 10000"
            )
        }   
               ,    10000           。               。 delete                ,       ,           。  

3.分割結合
           ,        。  
  :  
    1)       。  
    2) myisam   ,                 ,              ,            。  
                        ,               。  
    3)        。  
              。         ,          。                        。  
    4)      ,                 ,   mysql                  。        。  
  (            ):
    1)             。  
    2)     myisam 。  
    3)              
    4)      in()    。  
    5)              。

4.クエリ実行の基礎知識
mysql          :
    1)            。  
    2)         。     ,         ,       。  
    3)     ,        ,      。  
    4)          api    。  
    5)            。