好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Postgre數據庫Insert 、Query性能優化詳解

Postgre數據庫Insert 、Query性能優化詳解

熱門標簽:crm外呼系統聯系方式 小裙科技電銷機器人怎樣 河南電話外呼系統招商 外呼線路資源屬于電信業務嗎 青白江400企業電話申請 內蒙古營銷智能外呼系統哪個好 智能外呼系統官網 呼和浩特外呼系統原理是什么 長沙電銷外呼防封卡是什么

一、前言
以前的系統由于表設計比較復雜(多張表,表與表直接有主從關系),這個是業務邏輯決定的。 插入效率簡直實在無法忍受,必須優化。在了解了Postgre的Copy,unlogged table 特性
之后,決定一探究竟。

二、測試用例

1.數據表結構:表示一個員工工作績效的表(work_test):共15個字段
id,no,name,sex,tel,address,provice,city,post,mobile,department,work,start_time,end_time,score
索引(b-tree的集群索引或者叫聚集索引):id,no,name,sex,tel,address,provice,city,post,mobile,department,work

2.測試環境:win7,四核,2GB內存;postgre版本9.3;Npgsql連接Postgre數據庫。

三、insert/ transaction/ copy/unlogged table

1.insert 一個10W數據大概需要120s,雖然已經提升“不少”,但是還是不盡如人意。以前用SQLite時發現Transaction可以大幅提升性能,于是在Postgre中試試,發現并沒有明顯變
化。不知何故。

2. copy可以將文件(csv)中的數據復制進數據庫中,當然數據表的結構和要數據類型要與文件一一對應。據說可以大幅提升插入性能。

復制代碼 代碼如下:

COPY 'work_test' from 'c:\temp.csv' WITH DELIMITER AS ','

  
使用Copy后發現插入的性能立馬提升至30s,相當于1s插入3300條記錄。這中間還包含生成csv文件的時間。

3.unlogged table
unlogged table,網上的文章說可以10倍于insert。使用方法也很簡單:Create unlogged table ...
但是unlogged table 在遇到Postgre服務器異常重啟后會丟失全部數據,所以如果你的數據不允許丟失,請不要使用。
使用后發現,大概20s,1s插入5000條記錄。

下面是三種插入方式的走勢圖:

說明:x軸表示數據庫中已有的記錄數,單位百萬,每個點是10W.Y軸表示每次插入所耗時間,單位秒。
藍色線:insert;之所以后面比較穩定是因為電腦沒有運行其他程序。所以說,電腦工作狀態對Postgre效率有一定的影響。
粉紅色:copy;
黃色線:copy+unlogged
 雖然建了索引,并且表中的數據一直累加進來,對于后續插入數據性能并沒有任何影響,這個結果就是我想看到的。

四、查詢測試
按name字段搜索:

復制代碼 代碼如下:

select * from work_test where name='1'




說明:x軸表示數據庫中已有的記錄數,單位百萬,每個點是10W.Y軸表示每次查詢所耗時間,單位毫秒。

藍色線:insert;
粉紅色:copy;
黃色線:copy+unlogged

由于三種插入方式結果都是一樣的,所以對比并沒有意義,這里主要看查詢耗時。平均下來:500ms,并且隨著Row count的增加,查詢效率并沒有降低。這主要得益于良好的索引。
另外發現:條件越多,查詢效率越高,因為掃描的行數在減少,后面的圖就不貼出來了。

您可能感興趣的文章:
  • 海量數據庫的查詢優化及分頁算法方案
  • SQL Server 數據庫優化
  • mysql 數據庫中my.ini的優化 2G內存針對站多 抗壓型的設置
  • 開啟SQLSERVER數據庫緩存依賴優化網站性能
  • MySQL 聯合索引與Where子句的優化 提高數據庫運行效率
  • asp.net程序優化 盡量減少數據庫連接操作
  • 服務器維護小常識(硬盤內容增加、數據庫優化等)
  • 數據庫性能優化二:數據庫表優化提升性能
  • 數據庫性能優化一:數據庫自身優化提升性能
  • Oracle SQL tuning 數據庫優化步驟分享(圖文教程)
  • oracle數據庫sql的優化總結
  • 優化Mysql數據庫的8個方法
  • mysql中優化和修復數據庫工具mysqlcheck詳細介紹
  • Codeigniter操作數據庫表的優化寫法總結
  • MySQL數據庫優化詳解
  • 用實例詳解Python中的Django框架中prefetch_related()函數對數據庫查詢的優化
  • 數據庫學習建議之提高數據庫速度的十條建議

標簽:呼倫貝爾 楚雄 白山 黃石 舟山 池州 安順 菏澤

巨人網絡通訊聲明:本文標題《Postgre數據庫Insert 、Query性能優化詳解》,本文關鍵詞  Postgre,數據庫,Insert,Query,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Postgre數據庫Insert 、Query性能優化詳解》相關的同類信息!
  • 本頁收集關于Postgre數據庫Insert 、Query性能優化詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 无码欧美精品一区二区视频| 特黄一级毛片武则天免费播放| 久久一级婬A片AAA毛片古代| 关晓彤的奶头被教练摸得又红又肿| 我和子的乱视频一区二区| 宝宝水怎么这么多啊我好喜欢| 狠狠色丁香婷婷久久综合蜜芽| 亚洲精品永久www忘忧草| 一本加勒比HEZYO东京热高清| 国产精品久久久久久人妻黑料 | 女女H百合无遮涩涩漫画软件| 国产精品人妻无码一区牛牛影视 | 欧美videos巨大18free| 乘风破浪的姐姐4在哪里看| 国产处女视频| 美女脱精光隐私扒开免费视频| 国产一级婬片A片AAA毛片红楼| 放荡的女教师h| 女を縄で缚っ紧缚| 色天天久久| 准心精灵| (男出轨)一百个小草莓| 我和漂亮的妽妽3| 午夜狠狠高潮AV视频| 苗族一级特黄a大片| 飞机上的性服务2| 国产欧美日韩高清专区手机版| 中国男男同志gayxxxx| 香港古装三级伦理电影| 美女赤身裸体扒开双腿一区二区| 人妻被又粗又大捣出了白浆| 欧洲色妇| 欧美精品区| 九色少妇丨大屁股丨自拍| 日本Av免费无码专区一区渡部| 美女hdxxxx中国| 日本中文字幕精品理论在线| 看着娇妻被一群人蹂躏| 中国xxxx真实自拍hd| 粗大挺进亲女小蕾的嫩苞mp3| 在线精品国精品国产尤物|