Antelope是innodb-base的文件格式,Barracude是innodb-plugin后引入的文件格式,同時Barracude也支持Antelope文件格式。兩者區(qū)別在于:
| 文件格式 | 支持行格式 | 特性 |
| Antelope (Innodb-base) | ROW_FORMAT=COMPACT ROW_FORMAT=REDUNDANT | Compact和redumdant的區(qū)別在就是在于首部的存存內容區(qū)別。 compact的存儲格式為首部為一個非NULL的變長字段長度列表 redundant的存儲格式為首部是一個字段長度偏移列表(每個字段占用的字節(jié)長度及其相應的位移)。 在Antelope中對于變長字段,低于768字節(jié)的,不會進行overflow page存儲,某些情況下會減少結果集IO. |
| Barracuda (innodb-plugin) | ROW_FORMAT=DYNAMIC ROW_FORMAT=COMPRESSED
| 這兩者主要是功能上的區(qū)別功能上的。 另外在行里的變長字段和Antelope的區(qū)別是只存20個字節(jié),其它的overflow page存儲。 另外這兩都需要開啟innodb_file_per_table=1 (這個特性對一些優(yōu)化還是很有用的) |
備注:
這里有一點需要注意,如果要使用壓縮,一定需要先使用innodb_file_format =Barracuda格式,不然沒作用。
下面我們看一下區(qū)別: