閱讀問題之前關閉作爲重複,因爲有很多關於這個問題,但至少我沒有找到我在找什麼。mysql - MyISAM或InnoDB - 加入速度與查找速度
什麼是明確的現在:
MyIsam is faster at searching strings (much faster)
InnoDB is faster at joins (much faster)
所以我的問題是這樣的:我有以下設置:
兩個表,讓說,T1爲列id
,bla1
,bla2
,... ,blan
;並且t2具有列t1Id
,extra1
,extra2
,...,extran
。
表1(t1)是InnoDB(需要交易清楚)。表2(t2)總是與t1一起使用(對於某些特定情況是額外的數據),因此總是會在t2出現的地方連接它們。這將指向InnoDB。事情是,在連接之後,一個搜索也將完成(總是)一個字符串在一列中。這將指向MyISAM。
獲取某物的時間顯然是連接時間和搜索時間之和。問題是,如果我優化一個,我會讓另一個慢一些。
獎金事實:表格確實很大,t2從不需要事務,行鎖或任何通常施加於InnoDB的東西。
什麼是更好的選擇? MyISAM或InnoDB?