maxvalue mysql自动分区_创建mysql表分区的方法
創建
mysql
表分區的方法
我來給大家介紹一下
mysql
表分區創建與使用吧,希望對各位同學會有所幫助。表分區的測試使用,主要內容來自
于其他博客文章以及
mysql5.1
的參考手冊。
表分區是最近才知道的哦
,
以前自己做都是分表來實現上億級別的數據了,
下面我來給大家介紹一下
mysql
表分區創建
與使用吧,希望對各位同學會有所幫助。
表分區的測試使用,主要內容來自于其他博客文章以及
mysql5.1
的參考手冊
mysql
測試版本:
mysql5.5.28
mysql
物理存儲文件(有
mysql
配置的
datadir
決定存儲路徑)格式簡介
數據庫
engine
為
MYISAM
frm
表結構文件,
myd
表數據文件,
myi
表索引文件。
INNODB
engine
對應的表物理存儲文件
innodb
的數據庫的物理文件結構為:
.frm
文件
.ibd
文件和
.ibdata
文件:
這兩種文件都是存放
innodb
數據的文件,之所以用兩種文件來存放
innodb
的數據,是因為
innodb
的數據存儲方式能夠
通過配置來決定是使用共享表空間存放存儲數據,還是用獨享表空間存放存儲數據。
獨享表空間存儲方式使用
.ibd
文件,并且每個表一個
ibd
文件
共享表空間存儲方式使用
.ibdata
文件,所有表共同使用一個
ibdata
文件
創建分區
分區的一些優點包括:
·
與單個磁盤或文件系統分區相比,可以存儲更多的數據。
·
對于那些已經失去保存意義的數據,通常可以通過刪除與那些數據有關的分區,很容易地刪除那些數據。相反地,在
某些情況下,添加新數據的過程又可以通過為那些新數據專門增加一個新的分區,來很方便地實現。
通常和分區有關的其他優點包括下面列出的這些。
MySQL
分區中的這些功能目前還沒有實現,
但是在我們的優先級列表
中,具有高的優先級;我們希望在
5.1
的生產版本中,能包括這些功能。
·
一些查詢可以得到極大的優化,這主要是借助于滿足一個給定
WHERE
語句的數據可以只保存在一個或多個分區內,
這樣在查找時就不用查找其他剩余的分區。因為分區可以在創建了分區表后進行修改,所以在第一次配置分區方案時還
不曾這么做時,可以重新組織數據,來提高那些常用查詢的效率。
·
涉及到例如
SUM()
和
COUNT()
這樣聚合函數的查詢,可以很容易地進行并行處理。這種查詢的一個簡單例子如
“SE
LECT
salesperson_id,
COUNT(orders)
as
order_total
FROM
sales
GROUP
BY
salesperson_id
;
”
。通過
“
并行
”
,
這意
味著該查詢可以在每個分區上同時進行,最終結果只需通過總計所有分區得到的結果。
·
通過跨多個磁盤來分散數據查詢,來獲得更大的查詢吞吐量。
簡而言之就是
數據管理優化,查詢更快,數據查詢并行
總結
以上是生活随笔為你收集整理的maxvalue mysql自动分区_创建mysql表分区的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: r语言怎么保存代码_R代码忘记保存,系统
- 下一篇: linux cmake编译源码,linu