百萬級別資料庫優化技巧

2021-07-13 10:40:51 字數 813 閱讀 9774

優化方向:sql語句優化、索引、分表...

sql語句優化

1、不要返回用不到的資料

select * from `shop_user` 

=>select `id`,`username` from `shop_user`

2、where 跟 order by 是搜尋的關鍵,避免全表掃瞄。

考慮在對應的列上建立索引;

where 語句中不要使用 != 或 <>操作符

避免列出現null值的判斷:select `id` from `shop_user` where `login_time` is null,建議可以給 

login_time 字段設定預設值為 0 ,將sql語句修改為 select `id` from `shop_user` where `login_time`= 0

避免使用 or 來做連線查詢:select `id` from`shop_user` where `id`=1 or `id`=2 ,建議修改為

select id from shop_user where id =1

union all

select id from

shop_user where id =2

in 跟 not in慎用(網上很多人說 in 不走索引,不知真假)

between

優化 select id from

shop_user where id

between 1 and 3 修改為select id from

shop_user where id>= 1 id <= 3

like欄位慎用

大資料從百萬級別資料的分析角度,資料庫如何選擇?

現在需要做乙個資料儲存,500w左右的資料,日後每天大約產生5w條左右的資料。想把這些資料儲存起來,供日後的資料分析用?使用上面說的三種資料庫中的哪中比較好?是否有必要建立集群?個人看法是 從長遠角度看,由於單台機器的效能瓶頸,後期肯定要做集群,單純的做複製最終也無法緩解單台master上讀的負擔。...

MYSQL資料庫超大級別資料讀

場景 當資料量達到一定千萬級別的記錄,且查詢的字段又多的時候,此時將查詢資料的快取全部儲存在php的記憶體當中會導致記憶體溢位。資料庫查詢 pdo setattribute pdo mysql attr use buffered query,false startmemory memory get ...

JAVA使用POI如何匯出百萬級別資料

經常使用excel的人應該都能知道excel2007及以上版本可以輕鬆實現儲存百萬級別的資料,但是系統中的大量資料如何能夠快速準確的匯入到excel中這好像是個難題,對於一般的web系統,我們為了解決成本,基本都是使用的入門級web伺服器tomcat,jdk在32為系統中支援的記憶體不能超過2個g,...