mysql如何選擇引擎 mysql引擎如何選擇

2021-10-17 17:27:30 字數 1008 閱讀 6564

有一張表用來存溫度資訊用於頁面展示折線圖用

結構如下

create table `temp` (

`id` varchar(40) not null,

`duuid` varchar(40) default null,

`temp` int(11) default null,

`recordtime` datetime default null,

primary key (`id`),

key `duuid` (`duuid`) using btree

) engine=innodb default charset=utf8;

duuid是裝置的uuid,

temp是溫度值

recordtime是記錄時間

該資料是每隔30min通過事件和儲存過程將裝置實時狀態表的溫度資訊掃瞄到該表裡

裝置最大有65025,也就是每到30min就會插入65025條資料

資料儲存時間為30天

也就是資料庫裡的資料量最大有93636000條

查詢語句如下:

select duuid, temp, recordtime from temp where duuid = '***' and recordtime between '2018-11-01 00:00:00' and '2018-12-01 00:00:00' order by recordtime;

直接查詢30天的資料,1440條

使用innodb引擎的情況下

就我的開發機子查詢時間在23s左右

加聯合索引(duuid,recordtime)後查詢時間在15s左右

myisam引擎在3s左右

但是就目前我這個需求,用myisam可不可行?

或者,在不分表的情況下有沒有更加優化的方案?

還有刪除的效率實在是太低了

delete from temp where recordtime < '***'

執行下來要111分鐘,量大概在312w,每天執行一次

mysql怎麼選擇引擎 mysql引擎如何選擇

有一張表用來存溫度資訊用於頁面展示折線圖用 結構如下 create table temp id varchar 40 not null,duuid varchar 40 default null,temp int 11 default null,recordtime datetime default...

如何選擇 MySQL 儲存引擎

不同的儲存引擎都有各自的特點,以適應不同的需求,如表所示。為了做出選擇,首先要考慮每乙個儲存引擎提供了哪些不同的功能。功能mylsam memory innodb archive 儲存限制 256tb ram64tb none 支援事務 nono yesno 支援全文索引 yesno nono 支援...

MySQL基礎 如何選擇儲存引擎

建立索引的目的是加快對錶中記錄的查詢或排序,索引也並非越多越好,因為建立索引是要付出代價的 增加了資料庫的儲存空間,在插入和修改資料時要花費較多的時間維護索引。在設計表或索引時,常出現以下幾個問題 少建索引或不建索引。這個問題最突出,建議建表時 dba 可以一起協助把關。索引濫用。濫用索引將導致寫請...