postgresql配置文件(二)

Postgresql的查詢優化是基於代價的,代價是一個無量綱的值,不是絕對的性能指標,但可以作爲比較各種操作代價時的相對性能代價。
其值是在postgresql.conf配置的,

# - Planner Cost Constants(計劃器代價常量) -

#seq_page_cost = 1.0			# 順序掃描一個數據塊cost=1,任意比例被測量
random_page_cost = 4.0			# 隨機掃描一個數據塊cost=4,比例尺同上
#cpu_tuple_cost = 0.01			# 處理一個數據行的cpu,cost= 0.01比例尺同上
#cpu_index_tuple_cost = 0.005		# 處理一個索引行的cpu,cost = 0.005,比例尺同上
#cpu_operator_cost = 0.0025		# 每個操作符的cpu,cost = 0.0025,比例尺同上
#parallel_tuple_cost = 0.1		# 並行處理數據,cost = 0.1比例尺同上
#parallel_setup_cost = 1000.0	#啓並行處理, cost = 1000, 比例尺同上
#min_parallel_table_scan_size = 8MB #啓用並行查詢的表的最小值
#min_parallel_index_scan_size = 512kB#啓用並行索引掃描的最小值

可以看出,隨機掃描的進度是順序掃描進度的1/4,
Postgresql默認值是基於HDD(普通硬盤)設置的,
如果是SSD硬盤,random_page_cost 默認爲4.0有點大,計劃器可能會選擇低效的計劃,SSD時,最好將random_page_cost設置爲1.0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章