日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ADBPGGreenplum成本优化之磁盘水位管理

發(fā)布時間:2024/8/23 编程问答 82 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ADBPGGreenplum成本优化之磁盘水位管理 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

簡介:本文我們將通過一個實際的磁盤空間優(yōu)化案例來說明,如何幫助客戶做成本優(yōu)化。

作者 | 玉翮
來源 | 阿里技術(shù)公眾號

一 背景描述

目前,企業(yè)的核心數(shù)據(jù)一般都以二維表的方式存儲在數(shù)據(jù)庫中。在核心技術(shù)自主可控的大環(huán)境下,政企行業(yè)客戶都在紛紛嘗試使用國產(chǎn)數(shù)據(jù)庫或開源數(shù)據(jù)庫,尤其在數(shù)據(jù)倉庫OLAP領(lǐng)域的步伐更快,Greenplum的應(yīng)用越來越廣泛,阿里云ADB PG的市場機會也越來越多。另外,隨著近年來數(shù)據(jù)中臺的價值被廣泛認可,企業(yè)建設(shè)數(shù)據(jù)中臺的需求也非常迫切,數(shù)據(jù)中臺的很多場景都會用到Greenplum或ADB PG。因此,今年阿里云使用ADB PG幫助很多客戶升級了核心數(shù)倉。我們發(fā)現(xiàn),客戶往往比較關(guān)注使用云原生數(shù)倉的成本。究竟如何幫助客戶節(jié)約成本,便值得我們?nèi)ヌ剿骱吐涞亍?/p>

ADB PG全稱云原生數(shù)據(jù)倉庫AnalyticDB PostgreSQL版,它是一款大規(guī)模并行處理(MPP)架構(gòu)的數(shù)據(jù)庫,是阿里云基于開源Greenplum優(yōu)化后的云原生數(shù)據(jù)倉庫,因此本文探討的成本優(yōu)化方法也適用于Greenplum開源版。圖1是ADB PG的架構(gòu)示意圖(Greenplum亦如此),Master負責(zé)接受連接請求,SQL解析、優(yōu)化、事務(wù)等處理,并分發(fā)任務(wù)到Segment執(zhí)行;并協(xié)調(diào)每一個Segment返回的結(jié)果以及把最終結(jié)果呈現(xiàn)給客戶端程序。Segment是一個獨立的PostgreSQL數(shù)據(jù)庫,負責(zé)業(yè)務(wù)數(shù)據(jù)的存儲和計算,每個Segment位于不同的獨立物理機上,存儲業(yè)務(wù)數(shù)據(jù)的不同部分,多個Segment組成計算集群;集群支持橫向擴展。從架構(gòu)上很清楚,節(jié)約Greenplum的成本,最重要的是要盡可能節(jié)約Segment的服務(wù)器數(shù),但既要保證整體MPP的算力,也要能滿足數(shù)據(jù)對存儲空間的需求。通常,數(shù)據(jù)倉庫中的數(shù)據(jù)是從企業(yè)各個領(lǐng)域的上游生產(chǎn)系統(tǒng)同步而來,這些數(shù)據(jù)在分析領(lǐng)域有生命周期,很多數(shù)據(jù)需要反應(yīng)歷史變化,因此數(shù)據(jù)倉庫中數(shù)據(jù)的特點是來源多、歷史數(shù)據(jù)多、數(shù)據(jù)量比較大。數(shù)據(jù)量大,必然消耗存儲空間,在MPP架構(gòu)下就是消耗服務(wù)器成本。幫客戶優(yōu)化成本,節(jié)約存儲空間是首當(dāng)其沖的。

圖1:ADB PG的架構(gòu)示意圖

下面,我們將通過一個實際的磁盤空間優(yōu)化案例來說明,如何幫助客戶做成本優(yōu)化。

二 ADB PG & Greenplum的磁盤管理簡介

1 ADB PG磁盤管理的關(guān)鍵技術(shù)點

ADB PG是基于Greenplum(簡稱“GP”)內(nèi)核修改的MPP數(shù)據(jù)庫,對于磁盤空間管理來講,有幾個技術(shù)點與Greenplum是通用的:

(1)業(yè)務(wù)數(shù)據(jù)主要分布在Segment節(jié)點;

(2)Segment有Primary和Mirror節(jié)點,因此,業(yè)務(wù)可用空間是服務(wù)器總空間的1/2;

(3)Greenplum的MVCC機制,導(dǎo)致表數(shù)據(jù)發(fā)生DML后產(chǎn)生垃圾數(shù)據(jù)dead tuples;

(4)復(fù)制表(全分布表)會在每個Segment上存儲相同的數(shù)據(jù)拷貝;分布表會根據(jù)分布鍵打散存儲數(shù)據(jù)到各個Segment。

(5)Greenplum有Append Only類型的表,支持壓縮存儲,可以節(jié)約空間;當(dāng)然用戶訪問時,解壓縮需要時間,所以需要在性能和空間之間取得平衡。

云原生數(shù)據(jù)庫的特點是不再單獨提供數(shù)據(jù)庫存儲和計算的內(nèi)核,也會配套運維管理平臺,簡稱“數(shù)據(jù)庫管控”。搞清楚ADB PG磁盤管理原理后,我們需要了解數(shù)據(jù)庫管控在磁盤水位管理方面的設(shè)計。

2 數(shù)據(jù)庫管控的磁盤預(yù)留機制

我們看下某數(shù)倉實驗環(huán)境的各個Segment節(jié)點的磁盤占用示意圖。

圖2:Segment維度的磁盤占用示意圖

上圖第一個百分比是Segment所在物理機的磁盤使用百分比;第二個百分比是數(shù)據(jù)庫管控的磁盤使用百分比。管控的數(shù)據(jù)為啥要跟服務(wù)器實際占用不一致呢?其實就是水位管理中第一個很重要的預(yù)防性措施:空間預(yù)留。即,ADB的管控在創(chuàng)建Segment實例時,根據(jù)服務(wù)器的空間,進行了一定的預(yù)留,占比大概是12%,即20T的服務(wù)器,管控認為業(yè)務(wù)最大可用17.6T,這個邏輯會通知監(jiān)控系統(tǒng)。所以計算磁盤占比時,監(jiān)控系統(tǒng)的分母不是20T,而是17.6T。這是第一級保護措施。

預(yù)留空間,還有重要的一點原因是數(shù)據(jù)庫本身有WAL事務(wù)日志、錯誤日志等也占用空間。因此,磁盤的空間有一部分需要給日志使用,客戶的業(yè)務(wù)數(shù)據(jù)無法使用100%的服務(wù)器空間,這就是為何圖2中,會顯示兩個空間百分比的原因。

3 數(shù)據(jù)庫管控的“鎖定寫” 保護機制

第二級保護措施是“磁盤滿鎖定寫”。在17.6T的基礎(chǔ)上,管控并不讓業(yè)務(wù)完全寫滿,寫滿容易造成數(shù)據(jù)文件損壞,帶來數(shù)據(jù)庫宕機及無法恢復(fù)的災(zāi)難。因此,這里有第二個閾值,即當(dāng)磁盤寫到90%時,數(shù)據(jù)庫管控的自動巡檢任務(wù)會啟動“鎖定寫”的操作,此時所有請求ADB的DML都會失敗。這是一個重要的保護機制。如下圖3所示,如果達到閾值,會提示“need to lock”。 閾值可以配置,如果磁盤空間緊張,可以根據(jù)實際情況適當(dāng)調(diào)大閾值。

圖3:數(shù)據(jù)庫管控的自動化鎖盤日志示例

以上數(shù)據(jù)庫管控的兩個機制可以有效保障磁盤在安全水位下運行。這些設(shè)計,是我們做成本優(yōu)化的基礎(chǔ),磁盤的成本優(yōu)化意味著服務(wù)器的磁盤盡可能物盡其用。節(jié)約磁盤空間,就必須要在相對較高的磁盤水位運行(這里是指數(shù)據(jù)量確實很大的情況),因此,磁盤有效管理,及時的問題監(jiān)控發(fā)現(xiàn)的機制非常重要。

三 磁盤空間優(yōu)化方案

下面我們以某客戶的案例來說明磁盤空間優(yōu)化方法。該客戶數(shù)據(jù)倉庫中的數(shù)據(jù)(含索引)大于1.5PB,但客戶一期為ADB數(shù)倉采購了40臺機器,約800T總?cè)萘俊?蛻裘鞔_要求阿里云需要配合業(yè)務(wù)方做好數(shù)倉設(shè)計,幫其節(jié)約成本。客戶把成本優(yōu)化的KPI已經(jīng)定好了,需要阿里云通過技術(shù)去落實。我們協(xié)同業(yè)務(wù)方在設(shè)計階段做了一些預(yù)案,技術(shù)上主要從表壓縮和冷熱數(shù)據(jù)分離的角度去做考慮;業(yè)務(wù)上,讓開發(fā)商從設(shè)計上,盡量縮減在ADB中的存量數(shù)據(jù)。最終,開發(fā)商預(yù)估大概有360T左右的熱數(shù)據(jù)從舊的數(shù)倉遷移到ADB。上線前,開發(fā)商需要把必要的基礎(chǔ)業(yè)務(wù)數(shù)據(jù)(比如貼源層,中間層),從DB2遷移到ADB PG。遷移完成,業(yè)務(wù)進行試運行期,我們發(fā)現(xiàn)空間幾乎占滿(如圖2)。空間優(yōu)化迫在眉睫,于是我們發(fā)起了磁盤空間優(yōu)化治理。圖4是磁盤空間治理優(yōu)化的框架。

圖4:磁盤水位優(yōu)化框架

接下來,我們展開做一下說明。

1 表的存儲格式及壓縮

表的壓縮存儲可以有效保障客戶節(jié)約存儲空間。Greenplum支持行存、Append-only行存、Append-only列存等存儲格式。若希望節(jié)約存儲空間,Append-only列存表是較好的選擇,它較好的支持數(shù)據(jù)壓縮,可以在建表時指定壓縮算法和壓縮級別。合適的壓縮算法和級別,可以節(jié)約數(shù)倍存儲空間。建表示例語句如下:

CREATE TABLE bar (id integer, name text)WITH(appendonly=true, orientation=column, COMPRESSTYPE=zstd, COMPRESSLEVEL=5)DISTRIBUTED BY (id);

列存表必須是Append-only類型,創(chuàng)建列存表時,用戶可以通過指定COMPRESSTYPE字段來指定壓縮的類型,如不指定則數(shù)據(jù)不會進行壓縮。目前支持三種壓縮類型:

zstd、zlib和lz4,zstd算法在壓縮速度、解壓縮度和壓縮率三個維度上比較均衡,實踐上推薦優(yōu)先考慮采用zstd算法。zlib算法主要是為了兼容一些已有的數(shù)據(jù),一般新建的表不采用zlib算法。lz4算法的壓縮速度和壓縮率不如zstd,但是解壓速度明顯優(yōu)于zstd算法,因此對于查詢性能要求嚴(yán)格的場景,推薦采用lz4算法。

用戶可以通過指定COMPRESSLEVEL字段來決定壓縮等級,數(shù)值越大壓縮率越高,取值范圍為1-19,具體壓縮等級并不是數(shù)字越大越好,如上文所述,解壓縮也消耗時間,壓縮率高,則解壓縮會相對更慢。因此,需要根據(jù)業(yè)務(wù)實際測試來選定,一般5-9都是有實際生產(chǎn)實踐的壓縮級別。

2 冷熱數(shù)據(jù)分層存儲

在大型企業(yè)的數(shù)據(jù)倉庫設(shè)計中,MPP數(shù)據(jù)庫(ADB屬于MPP)只是其中一種數(shù)據(jù)存儲,而且是偏批處理、聯(lián)機查詢、adHoc查詢的場景使用較多;還有很多冷數(shù)據(jù)、歸檔數(shù)據(jù),其實一般都會規(guī)劃類似Hadoop、MaxCompute甚至OSS進行存儲;另外,近年來興起的流數(shù)據(jù)的計算和存儲,需求也非常強烈,可以通過Kafka、Blink、Storm來解決。因此,當(dāng)MPP數(shù)據(jù)庫空間告急時,我們也可以做冷熱數(shù)據(jù)分級存儲的方案。ADB PG的分級存儲方案,大致有兩種:1是業(yè)務(wù)方自己管理冷數(shù)據(jù)和熱數(shù)據(jù);2是利用ADB PG冷熱數(shù)據(jù)分層存儲和轉(zhuǎn)換功能。

業(yè)務(wù)方通過PXF外表訪問HDFS冷數(shù)據(jù)

業(yè)務(wù)方把部分冷數(shù)據(jù)以文件的方式存到HDFS或Hive,可以在ADB創(chuàng)建PXF外部表進行訪問;外部表不占用ADB PG的磁盤空間。PXF作為Greenplum與Hadoop集群數(shù)據(jù)交互的并行通道框架,在Greenplum中通過PXF可以并行加載和卸載Hadoop平臺數(shù)據(jù)。具體使用方法如下:

(1)控制臺開通PXF服務(wù)

· 登錄ADB管控臺,訪問ADB PG實例外部表頁面,點擊開通新服務(wù)

圖5:PXF外表服務(wù)

填寫詳細的Hadoop的服務(wù)信息后(涉及kerberos認證,非此文重點),PXF服務(wù)會啟動,啟動成功后如上圖。

(2)創(chuàng)建PXF擴展

-- 管理員執(zhí)行create extension pxf_fdw;

(3)創(chuàng)建PXF外表

CREATE EXTERNAL TABLE pxf_hdfs_textsimple(location text, month text, num_orders int, total_sales float8)LOCATION ('pxf://data/pxf_examples/pxf_hdfs_simple.txt?PROFILE=hdfs:text&SERVER=23')FORMAT 'TEXT' (delimiter=E',');

說明:Location是hdfs源文件信息,/data/pxf_examples/pxf_hdfs_simple.txt,即業(yè)務(wù)訪問的外部冷數(shù)據(jù)文件;SERVER=23指明了Hadoop外表的地址信息,其中23是集群地址信息的存放目錄,在圖8中可以根據(jù)PXF服務(wù)查到。

(4)訪問外部表

訪問外部表就和訪問普通表沒有區(qū)別

圖6:外部表訪問示例

ADB PG冷熱數(shù)據(jù)分層存儲方案

上面的pxf外表訪問,有一個弊端,是如果冷數(shù)據(jù)(外表)要和熱數(shù)據(jù)join,效率較差,原因是數(shù)據(jù)要從HDFS加載到ADB,再和ADB的表進行Join,徒增大量IO。因此,ADB PG在Greenplum的PXF外表的基礎(chǔ)上,提供了冷熱數(shù)據(jù)轉(zhuǎn)換的功能,業(yè)務(wù)方可以在需要Join外表和普通表分析時,把外部表先轉(zhuǎn)換為ADB的普通表數(shù)據(jù),再做業(yè)務(wù)查詢,整體方案稱為冷熱數(shù)據(jù)分層存儲。由于都是利用PXF外表服務(wù),3.4.1中的第1和第2步驟可以復(fù)用。額外的配置方法如下:

(1) 配置分層存儲默認使用剛才的Foreign Server

用超級管理員執(zhí)行

ALTER DATABASE postgres SET RDS_DEF_OPT_COLD_STORAGE TO 'server "23",resource "/cold_data", format "text",delimiter ","';

注意,這里需要將postgres替換為實際的數(shù)據(jù)庫名,并將/cold_data替換為實際在HDFS上需要用來存儲冷數(shù)據(jù)的路徑。

(2) 重啟數(shù)據(jù)庫實例后執(zhí)行檢查

SHOW RDS_DEF_OPT_COLD_STORAGE;

驗證是否配置成功。

(3) 創(chuàng)建測試表,并插入少量測試數(shù)據(jù)

create table t1(a serial) distributed by (a);insert into t1 select nextval('t1_a_seq') from generate_series(1,100);postgres=# select sum(a) from t1;sum------5050(1 row)

此時,t1表的數(shù)據(jù)是存在ADB的本地存儲中的,屬于熱數(shù)據(jù)。

(4) 將表數(shù)據(jù)遷移到冷存HDFS

alter table t1 set (storagepolicy=cold);

圖7:轉(zhuǎn)換數(shù)據(jù)為冷數(shù)據(jù)

注意這個NOTICE在當(dāng)前版本中是正常的,因為在冷存上是不存在所謂分布信息的,或者說分布信息是外部存儲(HDFS)決定。

(5) 驗證冷數(shù)據(jù)表的使用

首先,通過查看表的定義,驗證表已經(jīng)遷移到冷存

圖8:冷存表的定義

然后正常查詢表數(shù)據(jù);

postgres=# select sum(a) from t1;sum------5050(1 row)

(6) 將數(shù)據(jù)遷回?zé)岽?/p> alter table t1 set (storagepolicy=hot);

圖9:數(shù)據(jù)遷回?zé)岽?/p>

注意:遷移回?zé)岽婧?#xff0c;distributed信息丟失了,這是當(dāng)前版本的限制。如果表有索引,則索引在遷移后會丟失,需要補建索引。以上兩個方案,都能一定程度上把冷數(shù)據(jù)從ADB PG中遷移到外部存儲,節(jié)約ADB PG的空間。

方案1,Join效率低,不支持冷熱數(shù)據(jù)轉(zhuǎn)換,但不再占用ADB的空間;

方案2,Join效率高,支持冷熱數(shù)據(jù)轉(zhuǎn)換,部分時間需要占用ADB的空間。

兩個方案各有利弊,實際上項目中,根據(jù)業(yè)務(wù)應(yīng)用來定。在該客戶案例中,冷熱數(shù)據(jù)分層存儲方案,為整體ADB節(jié)約了數(shù)百T空間,這數(shù)百T空間中,大部分是設(shè)計階段解決的,少部分是試運行期間進一步優(yōu)化的。

3 垃圾數(shù)據(jù)vacuum

由于GP內(nèi)核的MVCC管理機制,一個表的DML(t2時刻)提交后的數(shù)據(jù)元組,實際上并沒有立即刪除,而是一直與該表的正常元組存儲在一起,被標(biāo)記為dead tuples;這會導(dǎo)致表膨脹而占用額外空間。垃圾數(shù)據(jù)回收有兩個方法:內(nèi)核自動清理、SQL手動清理。自動清理的機制是:表的dead tuples累積到一定百分比,且所有查詢該表的事務(wù)(t1時刻<t2時刻)都已經(jīng)結(jié)束,內(nèi)核會自動auto vacuum垃圾數(shù)據(jù)。這個機制,本身沒有問題,但是在大庫和大表場景下有一定問題,一個大表上T,數(shù)據(jù)變化10G才1%,多個大表一起變化,就會累計給整體空間帶來問題,因此必須輔以手動回收。

手動回收方法

(1)統(tǒng)計出系統(tǒng)的top大表;

select *,pg_size_pretty(size) from (select oid,relname,pg_relation_size(oid) as size from pg_class where relkind = 'r' order by 3 desc limit 100)t;-- limit 100表示top100

(2)查詢大表的dead tuple占比和空間;

-- 根據(jù)統(tǒng)計信息查詢膨脹率大于20%的表

SELECT ((btdrelpages/btdexppages)-1)*100||'%', b.relname FROM gp_toolkit.gp_bloat_expected_pages a join pg_class b on a.btdrelid=b.oid where btdrelpages/btdexppages>1.2;

(3)使用pg_cron定時任務(wù)幫助業(yè)務(wù)回收垃圾數(shù)據(jù)

vacuum tablename;

vacuum analyze tablename;-- 先執(zhí)行一個VACUUM 然后是給每個選定的表執(zhí)行一個ANALYZE

vacuum full tablename;

這里需要與業(yè)務(wù)溝通清楚執(zhí)行時間,具體vacuum時,雖然不影響讀寫,但還是有額外的IO消耗。vacuum full tablename要慎重使用,兩者的區(qū)別要重點說明一下:簡單的VACUUM(沒有FULL)只是回收表的空間并且令原表可以再次使用。這種形式的命令和表的普通讀寫可以并發(fā)操作,因為沒有請求排他鎖。然而,額外的空間并不返回給操作系統(tǒng);僅保持在相同的表中可用。VACUUM FULL將表的全部內(nèi)容重寫到一個沒有任何垃圾數(shù)據(jù)的新文件中(占用新的磁盤空間,然后刪除舊表的文件釋放空間),相當(dāng)于把未使用的空間返回到操作系統(tǒng)中。這種形式要慢許多并且在處理的時候需要在表上施加一個排它鎖。因此影響業(yè)務(wù)使用該表。

(4)vacuum加入業(yè)務(wù)代碼的恰當(dāng)環(huán)節(jié)進行回收

如果某些表,更新頻繁,每日都會膨脹,則可以加入到業(yè)務(wù)的代碼中進行vacuum,在每次做完頻繁DML變更后,立即回收垃圾數(shù)據(jù)。

系統(tǒng)表也需要回收

這是一個極其容易忽視的點。特別是在某些數(shù)據(jù)倉庫需要頻繁建表、改表(臨時表也算)的場景下,很多存儲元數(shù)據(jù)的系統(tǒng)表也存在膨脹的情況,而且膨脹率跟DDL頻繁度正相關(guān)。某客戶出現(xiàn)過pg_attribute膨脹到幾百GB,pg_class膨脹到20倍的情況。以下表,是根據(jù)實際總結(jié)出來比較容易膨脹的pg系統(tǒng)表。

pg_attribute -- 存儲表字段詳情pg_attribute_encoding -- 表字段的擴展信息pg_class -- 存儲pg的所有對象pg_statistic -- 存儲pg的數(shù)據(jù)庫內(nèi)容的統(tǒng)計數(shù)

圖10:pg_class膨脹率示例

手動Vacuum的限制

手動做vacuum有一定的限制,也要注意。

(1)不要在IO使用率高的期間執(zhí)行vacuum;

(2)vacuum full需要額外的磁盤空間才能完成。

如果磁盤水位高,剩余空間少,可能不夠vacuum full大表;可以采取先刪除一些歷史表,騰出磁盤空間,再vacuum full目標(biāo)table。

(3)必須先結(jié)束目標(biāo)table上的大事務(wù)

有一次例行大表維護時,一個表做了一次vacuum,膨脹的空間并沒有回收,仔細一查pg_stat_activity,發(fā)現(xiàn)這個表上有一個大事務(wù)(啟動時間比手動vacuum啟動更早)還沒結(jié)束,這個時候,內(nèi)核認為舊的數(shù)據(jù)還可能被使用,因此還不能回收,手動也不能。

4 冗余索引清理

索引本身也占用空間,尤其大表的索引。索引是數(shù)據(jù)庫提高查詢效率比較常用又基礎(chǔ)的方式,用好索引不等于盡可能多的創(chuàng)建索引,尤其在大庫的大表上。空間緊張,可以試著查一下是否有冗余索引可以清理。

排查思路

(1)是否有包含“異常多”字段的復(fù)合索引;

(2)是否有存在前綴字段相同的多個復(fù)合索引;

(3)是否存在優(yōu)化器從來不走的索引。

排查方法與例子

首先,我們從第1個思路開始,查詢索引包含字段大于等于4個列的表。SQL如下:

with t as (select indrelid, indkey,count(distinct unnest_idx) as unnest_idx_count from pg_catalog.pg_index, unnest(indkey) as unnest_idx group by 1,2 having count(distinct unnest_idx)>=4 order by 3 desc)select relname tablename,t.unnest_idx_count idx_cnt from pg_class c ,t where c.oid=t.indrelid;

某個客戶,就建了很多10個字段以上的復(fù)合索引,如下圖所示:

圖11:按索引列數(shù)排序的復(fù)合索引

一般超過6個字段的復(fù)合索引,在生產(chǎn)上都很少見,因此我們初步判斷是建表時,業(yè)務(wù)方創(chuàng)建了冗余的索引;接下來,可以按照索引的大小排序后輸出冗余索引列表。SQL如下:

with t as (select indrelid,indexrelid, indkey,count(distinct unnest_idx) as unnest_idx_count from pg_catalog.pg_index, unnest(indkey) as unnest_idx group by 1,2,3 having count(distinct unnest_idx)>=3 order by 3 desc)select relname tablename,(pg_relation_size(indexrelid))/1024/1024/1024 indexsize,t.unnest_idx_count idx_cnt from pg_class c ,t where c.oid=t.indrelid order by 2 desc;

圖12:按大小排序的復(fù)合索引

這里,我們很清楚發(fā)現(xiàn),部分索引的大小都在500G以上,有10多個索引的size超過1TB,看到這些信息時,我們震驚又開心,開心的是應(yīng)該可以回收很多空間。接下來,需要跟業(yè)務(wù)方去溝通,經(jīng)過業(yè)務(wù)方確認不需要再刪除。

在這個客戶案例中,我們刪除了200多個冗余索引,大小達24T,直接釋放了7%的業(yè)務(wù)空間!非常可觀的空間優(yōu)化效果。這次優(yōu)化也非常及時,我記得優(yōu)化在11月底完成;接著正好12月初高峰來臨,業(yè)務(wù)方又寫入了20TB新數(shù)據(jù),如果沒有這次索引優(yōu)化,毫不夸張:12月初該客戶的ADB集群撐不住了!

第(2)個思路(是否有存在前綴字段相同的多個復(fù)合索引),排查SQL如下。最好把索引及包含的字段元數(shù)據(jù)導(dǎo)出到其他GP庫去分析,因為涉及到索引數(shù)據(jù)的分析對比(涉及向量轉(zhuǎn)字符數(shù)組,以及子集與超集的計算),比較消耗性能;

select idx1.indrelid::regclass,idx1.indexrelid::regclass, string_to_array(idx1.indkey::text, ' ') as multi_index1,string_to_array(idx2.indkey::text, ' ') as multi_index2,idx2.indexrelid::regclass from pg_index idx1 , pg_index idx2 where idx1.indrelid= idx2.indrelid and idx1.indexrelid!=idx2.indexrelid and idx1.indnatts > 1and string_to_array(idx1.indkey::text, ' ') <@ string_to_array(idx2.indkey::text, ' ');

以下是排查例子user_t上復(fù)合第2個問題的索引,如下:

以下是查詢結(jié)果

以上例子結(jié)果解釋:multi_index1是multi_index2的子集,前者的索引列已經(jīng)在后者中做了索引,因此,multi_index1屬于冗余索引。

第(3)個思路:是否存在優(yōu)化器從來不走的索引,排查的SQL如下:

SELECTPSUI.indexrelid::regclass AS IndexName,PSUI.relid::regclass AS TableNameFROM pg_stat_user_indexes AS PSUI JOIN pg_index AS PI ON PSUI.IndexRelid = PI.IndexRelidWHERE PSUI.idx_scan = 0 AND PI.indisunique IS FALSE;

下面以一個測試表,講述排查例子

執(zhí)行SQL可以查到idx_scan=0的索引idx_b

另外,有一個很重要的知識點,Append-Only列存表上的索引掃描只支持bitmap scan方式,如果Greenplum關(guān)閉了bitmap scan的索引掃描方式,那么所有AO列存表的訪問都會全表掃描,即理論上AO列存表上的所有非唯一索引都無法使用,可以全部drop掉。當(dāng)然,這個操作風(fēng)險很高,要求整個database里使用AO列存表的業(yè)務(wù)幾乎都只做批處理,不存在點查或范圍查找的業(yè)務(wù)。綜上,刪除冗余索引,可以幫助客戶節(jié)約磁盤空間。

5 復(fù)制表修改為分布表

眾所周知,ADB PG的表分布策略有DISTRIBUTED BY(哈希分布),DISTRIBUTED RANDOMLY(隨機分布),或DISTRIBUTED REPLICATED(全分布或復(fù)制表)。前兩種的表會根據(jù)指定的分布鍵,把數(shù)據(jù)按照hash算法,打散分布到各個Segment上;復(fù)制表,則會在每個Segment上存放完整的數(shù)據(jù)拷貝。復(fù)制表分布策略(DISTRIBUTED REPLICATED)應(yīng)該在小表上使用。將大表數(shù)據(jù)復(fù)制到每個節(jié)點上無論在存儲還是維護上都是有很高代價的。查詢?nèi)植急淼腟QL如下:

select n.nspname AS "schemaname",c.relname AS "tablename",case when p.policytype='p' then 'parted' when p.policytype='r' then 'replicated' else 'normal' end as "distrb_type", pg_size_pretty(pg_relation_size(c.oid))from pg_class cleft join gp_distribution_policy p on c.oid=p.localoidleft join pg_namespace n on c.relnamespace=n.oidwhere n.nspname='public'and c.relkind='r'and p.policytype='r'order by 4 desc;

查詢結(jié)果如下圖,找到了大概10TB的全分布表,前3個表較大可以修改為哈希分布表,大概可以節(jié)約7T空間。

圖13:業(yè)務(wù)庫中的復(fù)制表

6 臨時表空間獨立存放

我們知道,Greenplum的默認表空間有兩個

如果建表不指定表空間,默認會放到pg_default表空間,包含堆表、AO表、列存表、臨時表等。具體到Segment的文件目錄,則是每個Segment服務(wù)器上的~/data/Segment/${Segment_id}/base/${database_oid}目錄下。同時,Greenplum在多種場景都會產(chǎn)生臨時表,如:

(1)sql中order by、group by等操作;

(2)GP引擎由于數(shù)據(jù)讀取或shuffle的需要,創(chuàng)建的臨時表;

(3)業(yè)務(wù)方在ETL任務(wù)中創(chuàng)建的臨時表。

這樣存在一個問題,就是業(yè)務(wù)運行產(chǎn)生的臨時表也會占用空間,但這部分不是業(yè)務(wù)表的數(shù)據(jù)占用,不方便精確管理大庫的磁盤空間;因此我們把臨時表的表空間獨立出來,在服務(wù)器文件層面也獨立出來,方便與業(yè)務(wù)數(shù)據(jù)進行分別精細化管理。好處還有:我們可以分別監(jiān)控臨時表空間、數(shù)據(jù)表空間、wal日志、錯誤日志,知道各個部分占用情況,如果磁盤空間告警,可以針對性采取措施。Greenplum創(chuàng)建臨時表空間的方法,比較標(biāo)準(zhǔn),如下:

#查看臨時表的表空間現(xiàn)狀,發(fā)現(xiàn)都在base目錄下,即與數(shù)據(jù)目錄共用postgres=# select * from pg_relation_filepath('tmp_jc');pg_relation_filepath----------------------base/13333/t_845345#查詢實例的Segment的所有hosts,用于創(chuàng)建臨時表空間目錄psql -d postgres -c 'select distinct address from gp_Segment_configuration order by 1' -t > sheng_seg_hosts#創(chuàng)建臨時表空間的文件目錄gpssh -f sheng_seg_hosts -e "ls -l /home/adbpgadmin/tmptblspace"gpssh -f sheng_seg_hosts -e "mkdir -p /home/adbpgadmin/tmptblspace"~$ gpssh -f dg_seg_hosts -e "ls -l /home/adbpgadmin/tmptblspace"# 創(chuàng)建臨時表空間postgres=# create tablespace tmp_tblspace location '/home/adbpgadmin/tmptblspace';postgres=# select * from pg_tablespace;spcname | spcowner | spcacl | spcoptions--------------+----------+--------+------------pg_default | 10 | |pg_global | 10 | |tmp_tblspace | 10 | |(3 rows)#修改角色的臨時表空間postgres=# alter role all set temp_tablespaces='tmp_tblspace';#退出psql,然后重新登錄#創(chuàng)建臨時表進行驗證create temp table tmp_jc2(id int);insert into tmp_jc2 select generate_series(1,10000);#查看表的filepath,發(fā)現(xiàn)臨時表空間的文件路徑不是base目錄了select * from pg_relation_filepath('tmp_jc2');---------------------------------------------------pg_tblspc/2014382/GPDB_6_301908232/13333/t_845369

表空間獨立后,監(jiān)控可以區(qū)分臨時表空間、數(shù)據(jù)表空間、WAL日志、錯誤日志進行獨立監(jiān)控和告警,以下是監(jiān)控采集輸出的樣例:

~$ sh check_disk_data_size.shusage: sh check_disk_data_size.sh param1 param2, param1 is file recording Segment hosts; param2 data, xlog, log or temp

監(jiān)控輸出的效果如下

圖14:監(jiān)控采集輸出示意圖

這樣可以很清楚的了解業(yè)務(wù)數(shù)據(jù)或臨時表數(shù)據(jù)在每個節(jié)點上的實際size,以及是否存在數(shù)據(jù)傾斜情況(超過平均值的10%)單獨提醒,非常實用。

7 其他優(yōu)化方案

除了上面詳述的優(yōu)化方案,一般來講,Greenplum還有一些通用的處理方法:擴容Segment計算節(jié)點、業(yè)務(wù)數(shù)據(jù)裁剪、備份文件清理。計算節(jié)點擴容是最有效的。一般來講,不管是阿里自己的業(yè)務(wù),還是外部客戶的業(yè)務(wù),數(shù)據(jù)庫的磁盤占用達到60%,考慮業(yè)務(wù)增量便會規(guī)劃擴容,這些“基本實踐”我們需要告訴客戶。

業(yè)務(wù)數(shù)據(jù)裁剪,除了冷數(shù)據(jù)外,有一些中間表和歷史表,我們也可以推動業(yè)務(wù)方做好數(shù)據(jù)生命周期管理,及時刪除或轉(zhuǎn)存歸檔。另外,對于臨時運維操作,留下的備份文件,在操作完后需要及時進行清理,這個簡單的習(xí)慣是非常容易忽略的,需要注意。在大庫的磁盤管理中,任何小問題都會放大。

四 優(yōu)化收益

1 為客戶節(jié)約服務(wù)器成本

本案例,客戶原DB2的數(shù)據(jù)量大于1PB,而我們通過上述方法綜合優(yōu)化,在ADB中只保存了300多T的數(shù)據(jù),就讓整體業(yè)務(wù)完整的運行起來。為客戶節(jié)約了大概100臺服務(wù)器及相關(guān)軟件license費用,約合金額千萬級別。

2 避免磁盤水位過高造成次生災(zāi)害

磁盤水位高會帶來很多問題,通過磁盤空間優(yōu)化方案,可以避免這些問題的發(fā)生。包括:

1.業(yè)務(wù)稍微增長,可能導(dǎo)致磁盤占滿,發(fā)生“寫鎖定”,數(shù)據(jù)庫臨時罷工;

2.磁盤空間不足時,運維人員定位問題無法創(chuàng)建臨時表;

3.ADB的大表維護,例如vacuum full,無空余磁盤空間使用。

以上磁盤空間優(yōu)化方法不一定非常全面,希望對讀者有所幫助。如果文中有疏漏或讀者有補充,歡迎多多交流,一起探討上云成本優(yōu)化。

名詞解釋

業(yè)務(wù)方:指使用Greenplum做業(yè)務(wù)開發(fā)或數(shù)據(jù)分析的用戶,通常是客戶或客戶的開發(fā)商。

OLAP:指聯(lián)機分析處理型系統(tǒng),是數(shù)據(jù)倉庫系統(tǒng)最主要的應(yīng)用,專門設(shè)計用于支持復(fù)雜的大數(shù)據(jù)量的分析查詢處理,并快速返回直觀易懂的結(jié)果。

DML:指增加、刪除、修改、合并表數(shù)據(jù)的SQL,在數(shù)據(jù)庫領(lǐng)域叫DML型SQL。

PB:1PB=1024TB=1024 * 1024 GB

原文鏈接

本文為阿里云原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。?

總結(jié)

以上是生活随笔為你收集整理的ADBPGGreenplum成本优化之磁盘水位管理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

99久久婷婷国产综合亚洲 | 亚洲精品小视频在线观看 | 亚洲经典在线 | 特级a毛片 | 国产黄色免费 | av在线专区 | 黄色国产成人 | 草免费视频 | 91网站观看 | 69av国产 | 成人黄色国产 | 九九精品在线观看 | 国产一区二区三区免费在线 | 久久精品香蕉 | 亚洲精品网页 | 亚洲精品久久久蜜桃直播 | 日本亚洲国产 | 国产理论一区二区三区 | 久久精品综合视频 | 国产精品久久久久久久久免费看 | 日韩激情第一页 | 黄av资源| 欧美日韩国产综合一区二区 | 久久久久久久久久久免费视频 | japanese黑人亚洲人4k | 日韩精品久久一区二区 | 丁香五香天综合情 | 密桃av在线 | 玖玖精品视频 | 综合色婷婷| 婷婷丁香花 | 国产视频一区二区在线播放 | 97免费中文视频在线观看 | 久久97超碰| 免费在线黄色av | 久久午夜免费视频 | 国产99亚洲 | 91丨九色丨蝌蚪丨老版 | 日韩欧美一区二区三区在线观看 | 少妇搡bbbb搡bbb搡69 | 国产一区福利 | 日韩精品一区二区三区第95 | 免费久久久久久久 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 久久er99热精品一区二区 | 亚洲精品乱码久久久久久蜜桃不爽 | 99热这里只有精品免费 | 亚洲成年人免费网站 | 91中文字幕网 | 国产精品高清免费在线观看 | 噜噜色官网| 亚洲成人av一区二区 | 正在播放 久久 | av三级在线看 | 精品国内自产拍在线观看视频 | 亚洲综合视频在线观看 | 国产精品久久久久av | 欧美大片大全 | 91视频啊啊啊 | 免费观看国产视频 | 欧美精品中文字幕亚洲专区 | 久久看视频| 免费av在线 | 亚洲国产成人精品在线 | 色噜噜在线观看视频 | 天天弄天天干 | 中文在线资源 | 91亚洲精品国偷拍自产在线观看 | 国产精品久久久久久五月尺 | 亚洲欧美日韩国产 | 久草网视频在线观看 | 精品国产一区二区三区四区在线观看 | 久久视频二区 | 亚洲国产成人在线 | 欧美日韩国产亚洲乱码字幕 | 91丨九色丨蝌蚪丨老版 | 国产美女精品视频免费观看 | 中文字幕日韩有码 | 热re99久久精品国产66热 | 国产黄色在线观看 | 久久av免费| 免费福利片2019潦草影视午夜 | 久久ww | 狠狠躁日日躁狂躁夜夜躁av | www久久| 久久这里只有精品首页 | 在线免费观看黄色大片 | 亚洲成人资源 | 国产精品久久久 | 久久五月天婷婷 | 九九激情视频 | 99精品国产兔费观看久久99 | 国产婷婷久久 | 久久艹精品 | 日韩com | 欧美 日韩 久久 | 国产成人精品免费在线观看 | 国产精品福利一区 | 久久久久久伊人 | 视频在线观看一区 | 国产精品成人av电影 | 亚洲午夜不卡 | 91成人在线看 | 天天干天天操 | 日韩综合一区二区三区 | 综合网在线视频 | 成人国产精品久久久春色 | 99热这里是精品 | 成人免费网站视频 | 午夜精品久久久久久久久久久久久久 | 久久99久久99精品免观看粉嫩 | 国产高清福利在线 | 99久久精 | 中文视频在线看 | 成人中文字幕+乱码+中文字幕 | 五月天色站| 中文字幕高清在线 | 精品久久久久久亚洲综合网站 | 免费视频91| 999久久 | 国产精品第一页在线观看 | www一起操 | 国产98色在线 | 日韩 | av无限看 | 中文字幕在线观看网站 | 日韩免 | 国产精品淫片 | 亚洲成a人片在线观看网站口工 | 综合在线色 | 国产亚洲精品久久网站 | 在线播放视频一区 | 国产三级香港三韩国三级 | 韩国av永久免费 | 怡红院av| 国产在线中文字幕 | 久久国产经典 | 丁香免费视频 | 999国内精品永久免费视频 | 欧美精彩视频在线观看 | 777久久久| 国精产品永久999 | 九九九在线观看视频 | 久久久高清免费视频 | 99精品一区二区三区 | 久久九九免费视频 | 天天爽天天摸 | 精品久久久久久久久久久久久久久久 | 中文字幕在线观看第一页 | 成人三级av | 日韩av在线高清 | 91精品国产自产在线观看 | 中文字幕视频网站 | 日韩在线视频观看免费 | 免费国产在线观看 | 在线免费观看视频一区二区三区 | 国产99久久九九精品 | 国产精品亚 | 人人看人人 | 亚洲涩涩色| 在线小视频 | www.久久久.com | 九九在线国产视频 | 国产成人一区二区三区在线观看 | 黄色电影网站在线观看 | 久久综合九色综合久99 | 精品一区精品二区 | 波多野结衣日韩 | 97超碰站 | 国产在线视频一区二区 | 99中文字幕 | 日韩中文字 | 日韩精品网址 | 国产精品一区二区三区在线 | 亚洲精品在线观看av | 久日精品 | 在线精品播放 | 黄色三级网站在线观看 | 婷婷在线资源 | 国产精品免费在线播放 | 久久av伊人| 国产精品欧美日韩 | 天天操夜夜操国产精品 | 久久躁日日躁aaaaxxxx | 97色狠狠 | 国产一区免费在线 | 久久理论电影网 | 国产一区二区精品在线 | 日韩免费在线播放 | 天天操天天拍 | 国内免费的中文字幕 | 亚洲一区二区精品视频 | 99tvdz@gmail.com| 日韩在线视频精品 | 亚洲韩国一区二区三区 | 国产白浆视频 | av免费播放 | 在线观看视频中文字幕 | 久久精品7| 亚洲电影一区二区 | 日韩区欧美久久久无人区 | 国产精品成人久久久久久久 | 日本中文字幕在线观看 | 国产视频在线看 | 国产国产人免费人成免费视频 | 国产精品九九久久99视频 | 美女黄久久 | 五月婷婷综合在线 | 五月婷丁香 | 国产成人三级三级三级97 | 国产午夜在线 | 超碰免费97| 午夜少妇一区二区三区 | 91av九色 | 久久电影中文字幕视频 | 成人黄色片在线播放 | 久久久国产网站 | 国产在线自 | 丁香激情综合国产 | 啪一啪在线| 91精品国产99久久久久久红楼 | 国产精品一级视频 | 国产美女视频一区 | 国产精品久久久久久久电影 | 欧美色就是色 | 久久精品亚洲精品国产欧美 | 91激情| 天天综合网天天 | 少妇搡bbbb搡bbb搡忠贞 | 成人av片在线观看 | 91福利免费 | 韩国av一区二区三区在线观看 | 探花视频在线观看免费 | 国产黄色网 | 91精品无人成人www | 国产亚洲一区二区在线观看 | 精品视频免费 | 亚洲成a人片在线观看网站口工 | 深夜免费小视频 | 欧美一区二区三区不卡 | 国产精品美女www爽爽爽视频 | 亚洲九九九 | 国产成人亚洲精品自产在线 | 久草影视在线观看 | 国产91精品看黄网站在线观看动漫 | 久久视频国产精品免费视频在线 | 四虎永久免费在线观看 | 亚洲高清久久久 | 麻豆精品传媒视频 | 久久精品一区二区三区中文字幕 | 一区免费视频 | 91麻豆免费看 | 狠狠的干狠狠的操 | 99热国产在线 | 麻豆果冻剧传媒在线播放 | 天天操狠狠操 | 欧美a级在线免费观看 | 激情五月在线 | 99精品影视| 91麻豆看国产在线紧急地址 | 天天色综合久久 | 成人丝袜| 成年人看片| 免费观看黄色12片一级视频 | 国产第一福利 | 久久免费国产 | 国产一区在线视频观看 | 97碰碰碰| 丁香婷婷色月天 | 欧美色图亚洲图片 | 中文字幕亚洲欧美日韩 | 超碰97免费在线 | 亚洲涩涩色| 黄网站色 | 婷婷精品国产欧美精品亚洲人人爽 | 国产精品一区二区三区四 | 99看视频在线观看 | 伊人五月天 | 去干成人网 | 狠狠色伊人亚洲综合网站野外 | 西西44人体做爰大胆视频 | 亚洲国产精品成人女人久久 | 国产精品久久嫩一区二区免费 | 99久热在线精品视频 | 久久成人一区 | 久久综合狠狠综合久久综合88 | 成人h在线 | 碰超在线观看 | 成年人在线观看视频免费 | 草久中文字幕 | 国产不卡网站 | 9在线观看免费高清完整版在线观看明 | 亚洲在线网址 | 欧美日韩精品免费观看 | 麻豆传媒视频观看 | 日韩电影中文 | 国产亚洲视频在线观看 | 国产精品视频线看 | 日韩一区二区三区免费视频 | 91精品视频在线免费观看 | 美女视频又黄又免费 | 成年人免费在线观看网站 | 在线视频中文字幕一区 | se婷婷| www.久热| 久久久久这里只有精品 | 西西4444www大胆视频 | 日韩免费三区 | 蜜臀久久99精品久久久无需会员 | 精油按摩av | 99精品久久只有精品 | 天天天天色射综合 | 亚洲高清网站 | 中文字幕一区二区三区久久 | 国产一区二区电影在线观看 | 亚洲精品综合一区二区 | 久久精品久久久久久久 | 热re99久久精品国产66热 | 日韩免费观看视频 | 五月天天在线 | 欧美另类视频 | 91麻豆国产福利在线观看 | 最近免费中文字幕大全高清10 | 五月天六月丁香 | 欧美一级电影 | 欧美色综合天天久久综合精品 | 四虎成人精品永久免费av | 免费在线观看不卡av | 天天摸天天弄 | 99中文在线 | 久久精品视频99 | 欧美精品久久久久久久 | 中文字幕在线播出 | 国产精品爽爽久久久久久蜜臀 | 91久久国产综合精品女同国语 | 91视频传媒| 亚洲精品动漫久久久久 | 天天插日日插 | 免费在线观看日韩欧美 | 日韩欧美精品一区二区三区经典 | 草樱av| 天天干一干 | 成人黄性视频 | av国产在线观看 | 狠狠干在线| 国产精品理论在线观看 | 亚洲日日夜夜 | 91精品久久香蕉国产线看观看 | 五月天免费网站 | 中文字幕一区2区3区 | 激情综合国产 | 欧美日韩三级在线观看 | 欧美精品一区二区在线观看 | 国产一区播放 | 狠狠色婷婷丁香六月 | 国产一区免费观看 | 欧美激情一区不卡 | 国产精品高潮呻吟久久久久 | 国产在线观看地址 | 国产剧情一区 | 97超碰精品| 久艹在线播放 | 99产精品成人啪免费网站 | 999久久久免费视频 午夜国产在线观看 | 日韩视频www | 国产高清日韩欧美 | 久操视频在线观看 | 国产精品成人免费精品自在线观看 | 狠狠色2019综合网 | 亚洲综合欧美激情 | 日韩欧美综合在线视频 | 亚洲日韩中文字幕在线播放 | 亚洲另类视频在线观看 | 精品福利在线视频 | 国产精品一区二区三区视频免费 | 成人国产精品免费 | www.99av| a级国产毛片| 国内精品视频一区二区三区八戒 | 亚洲精品视频一二三 | 婷婷色婷婷 | 日韩综合一区二区 | 国产美女被啪进深处喷白浆视频 | 国内精品久久久 | 欧美一级免费在线 | 亚洲精品国产精品久久99热 | 国产高清视频色在线www | 在线观看日韩国产 | 8x成人免费视频 | 亚洲激情一区二区三区 | 操操操天天操 | 天天干天天操 | 婷婷免费视频 | 中文字幕在线观看第三页 | 久久精品国产免费看久久精品 | 免费网站看av片 | 色资源网免费观看视频 | 日日夜夜噜噜噜 | 99高清视频有精品视频 | 国产二区精品 | 少妇高潮流白浆在线观看 | 国产在线理论片 | 亚洲日本三级 | 蜜臀aⅴ国产精品久久久国产 | 69精品人人人人 | 在线免费观看涩涩 | 成人 亚洲 欧美 | 国内一级片在线观看 | 中文字幕电影在线 | 亚洲欧美日韩在线看 | 黄网在线免费观看 | 亚洲婷婷免费 | 免费看的黄色 | 免费高清看电视网站 | 成人黄色片在线播放 | 91色影院| 波多野结衣资源 | 国产又粗又长又硬免费视频 | 六月丁香综合 | 天天操狠狠操夜夜操 | 天天操操操操操操 | 国产精品一区二区在线免费观看 | 久久激情电影 | 国产又粗又猛又爽又黄的视频先 | 最新国产中文字幕 | 天天射色综合 | 日日草夜夜操 | 在线看黄网站 | 亚洲第一区在线播放 | 99中文字幕在线观看 | 777久久久 | 夜夜躁日日躁狠狠久久av | 久久黄色精品视频 | 日韩精品极品视频 | 欧美一区二区在线看 | 五月婷影院 | 亚洲经典精品 | 99久久精品电影 | 国产私拍在线 | 日日摸日日爽 | 欧美精品黑人性xxxx | 大型av综合网站 | 一级电影免费在线观看 | 伊在线视频 | 中文字幕在线视频一区二区三区 | 免费看高清毛片 | 国产 欧美 日本 | 日韩精品久久久久久 | 国内精品久久久久久中文字幕 | 日本午夜免费福利视频 | 久久高清国产 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 亚州人成在线播放 | 日韩精品三区四区 | 日本69hd | 日韩精品免费一线在线观看 | 96久久久| 国产精品久久久久四虎 | 日韩在线首页 | 欧美日韩国产网站 | 成年人精品 | 91成人在线视频 | 国产亚洲在线视频 | www.五月天激情 | 久草在线免费在线观看 | 亚洲欧美视频网站 | 黄色特一级 | 久久久国产精品一区二区中文 | 亚洲一区 影院 | 国产精品久久片 | 国产精品自产拍在线观看中文 | 久草爱视频 | 精品美女久久 | 国产精品久久久久久一二三四五 | 91最新视频 | 色综合天天做天天爱 | 欧美日韩免费观看一区二区三区 | 99精品亚洲 | 免费在线视频一区二区 | 国产一级在线播放 | 麻豆国产在线播放 | 激情导航| 久久久成人精品 | 国产资源| av黄色在线观看 | 二区三区在线 | 国产一区二区三区在线免费观看 | 国产伦精品一区二区三区免费 | 久热电影| 欧美日韩国产精品爽爽 | 中文字幕观看视频 | 欧美日韩二三区 | 久久天天躁夜夜躁狠狠躁2022 | www178ccom视频在线 | 亚洲天堂激情 | 黄色国产在线观看 | 不卡的av| 精品美女在线观看 | 国产91勾搭技师精品 | 成人一区二区三区在线观看 | .精品久久久麻豆国产精品 亚洲va欧美 | 99免费在线播放99久久免费 | 国产精品专区h在线观看 | 国产激情电影综合在线看 | 天天玩夜夜操 | 免费视频一二三区 | 精品久久一二三区 | 天堂av免费观看 | 久久免费看毛片 | av免费成人 | 伊人狠狠| 日韩欧美视频免费看 | 九九视频精品免费 | 国产中文字幕视频 | 五月激情五月激情 | 国产精品人人做人人爽人人添 | 久久亚洲综合色 | 免费视频一级片 | 1024手机基地在线观看 | 在线a人v观看视频 | 亚洲精品小视频在线观看 | 黄色视屏av | 综合伊人av| 激情av在线资源 | 99国产精品一区 | 在线日韩av | 96在线| 午夜久久视频 | 成人四虎影院 | 狠狠躁日日躁狂躁夜夜躁 | 美女网站免费福利视频 | 国产一区免费在线 | 中文字幕亚洲欧美 | 久久久久免费观看 | 日本夜夜草视频网站 | 成年人在线免费看片 | www.人人干 | 亚洲国产精品久久 | 久草视频中文 | 国产美女精彩久久 | 一区二区观看 | 久久y | 欧美日韩三区二区 | 国产欧美高清 | av电影在线观看完整版一区二区 | 久久久精品欧美一区二区免费 | 久久精品网站免费观看 | 在线免费观看黄色 | 亚洲综合在线五月 | 中文字幕在线视频一区 | 黄色综合 | 免费久久片 | 欧美日韩免费在线视频 | 成年一级片 | 亚洲片在线资源 | freejavvideo日本免费 | 午夜国产在线观看 | 免费麻豆视频 | 99色在线观看 | 久久免费看av | 亚洲国产精品视频在线观看 | 久久精品久久精品久久精品 | 欧美国产大片 | 99免费看片| 国产精久久久久久久 | 国产视频 久久久 | 狠狠躁夜夜躁人人爽超碰91 | 亚洲精品乱码久久久久久久久久 | 在线91视频 | 91精品国产自产在线观看永久 | 天天av在线播放 | 久久精品99久久久久久2456 | 国产91全国探花系列在线播放 | 久久一线 | 欧美日韩在线视频一区 | 91av成人 | 四虎影视久久久 | 91黄视频在线观看 | 日韩欧美一区视频 | 婷婷综合久久 | 91av免费看| ww视频在线观看 | 欧美性色黄大片在线观看 | 午夜精品久久久久99热app | 精品久久一区二区三区 | 日韩久久片| 欧美日韩一区二区在线观看 | 午夜影视剧场 | 免费看av片网站 | 国产精品久久久久久久久久尿 | 亚洲影视九九影院在线观看 | a级片韩国| 国产精品永久在线观看 | 久久久精品高清 | 91成人黄色 | 在线成人短视频 | 最新国产精品亚洲 | 国产成人一二片 | 国产破处在线视频 | 色婷婷久久久 | 在线观看中文字幕网站 | 国产精品成人一区二区 | 午夜精品久久久久99热app | 中文字幕高清视频 | 麻花豆传媒一二三产区 | 国产综合精品一区二区三区 | 欧美极品少妇xxxx | 人人草人 | 欧产日产国产69 | 免费精品| 国产免费黄视频在线观看 | 欧美一区三区四区 | 涩涩成人在线 | 欧美精品首页 | 日韩久久在线 | 98超碰人人| 91精品黄色| 亚洲成人国产精品 | 久久久久免费精品国产小说色大师 | 日一日干一干 | 国产不卡一 | 97av影院 | 欧美十八 | 久久精品国产免费看久久精品 | 99久久久久久国产精品 | www久久国产 | 日韩一区二区三区高清在线观看 | 亚洲精品久久久久久久不卡四虎 | 亚洲爱爱视频 | 久久精品视频日本 | 97在线视频免费观看 | 97视频免费在线看 | 免费看一级一片 | 永久免费看av | 久久亚洲私人国产精品va | 777xxx欧美| 国产精品va最新国产精品视频 | 中文字幕免费高清在线观看 | 国产精品亚洲视频 | 99精品在线免费视频 | 91视频免费视频 | 亚州国产视频 | av看片在线 | 人人爱天天操 | 青青草在久久免费久久免费 | 日韩精品中文字幕一区二区 | 午夜精品久久久久久久久久久 | 91视频-88av | 久久久精品一区二区三区 | 午夜av在线免费 | 69精品视频 | 日本中文字幕在线视频 | 国产精国产精品 | 日韩精品一区二区三区三炮视频 | 久综合网 | 中文 一区二区 | 又黄又爽免费视频 | 免费人成在线观看网站 | 亚洲日本欧美在线 | www日日| 韩国在线一区二区 | 91视视频在线直接观看在线看网页在线看 | 91日韩在线专区 | 国产精品日韩在线 | 亚洲精品国产综合久久 | 91精品一区二区三区蜜桃 | 中文字幕字幕中文 | 国产高清成人av | 久久久久久久久久久影视 | 久久久穴 | 天天爱天天操天天爽 | 午夜视频在线网站 | 岛国av在线不卡 | 免费看的视频 | 国产成人一区在线 | 免费大片黄在线 | 天天爱综合 | 在线精品亚洲 | 久久久精品99 | 91精品专区| 精品久久久一区二区 | 在线视频 成人 | 精品自拍av| 天天舔夜夜操 | 久久精品播放 | 中文字幕精品一区 | 人人射av | 国产午夜精品在线 | 国产精品免费视频一区二区 | 伊人狠狠| 成年人视频免费在线播放 | 天天色播 | 亚洲欧美日韩精品久久久 | 99视频这里只有 | 97在线精品| 丝袜制服天堂 | 国产成人黄色在线 | 射射射av| 国产精品不卡在线播放 | 狠狠综合久久av | 国产精品99久久久久的智能播放 | 国产视频久 | 日韩欧美一区二区三区视频 | 国产美女在线观看 | 亚洲欧美日韩一二三区 | 欧美男男tv网站 | 日韩欧美国产激情在线播放 | av丝袜天堂 | 香蕉网在线播放 | 国产不卡一区二区视频 | avove黑丝 | 欧美激情视频免费看 | 久久综合九色九九 | 不卡av在线免费观看 | www.久久免费视频 | 天天插日日操 | 在线电影av| av中文字幕在线播放 | 99国产一区 | 国产又粗又猛又爽又黄的视频先 | 亚洲精品看片 | 99色精品视频 | 91午夜精品| 日本精品视频免费观看 | 国产亚洲综合性久久久影院 | 日本精品视频网站 | 久色 网 | 国产又粗又猛又黄又爽 | 国产精品久久久久永久免费看 | 美女视频免费一区二区 | 久久久久久久国产精品影院 | 久久er99热精品一区二区 | 中午字幕在线观看 | 成人羞羞视频在线观看免费 | 久久69精品久久久久久久电影好 | av福利在线免费观看 | 在线视频一二三 | www.久久久久 | 美女网站视频色 | 国产精品视频999 | 99精品国产一区二区三区麻豆 | 免费久久99精品国产婷婷六月 | av在线观 | 免费亚洲片 | 日韩av不卡播放 | 国产九九在线 | 91av资源在线 | 97超碰精品| 中文字幕在线观看视频一区二区三区 | 亚洲免费在线观看视频 | 日韩字幕在线观看 | 人人爽人人爽人人爽 | 亚洲日本精品视频 | 国产精品区一区 | 麻豆影视在线播放 | 干干夜夜 | 97精品国产91久久久久久久 | 久久精品99久久久久久2456 | 精品a在线| 射久久久 | 国产乱对白刺激视频在线观看女王 | 免费在线观看黄网站 | 久久精品久久国产 | 999国内精品永久免费视频 | 在线成人欧美 | 久久久久美女 | 干干日日 | 四虎在线免费观看 | 在线观看午夜 | 热久久电影 | 欧美最猛性xxxxx(亚洲精品) | 国内精品视频一区二区三区八戒 | 中文字幕有码在线播放 | 在线观看免费av网 | 国产中文欧美日韩在线 | 成年人免费在线 | 成人av.com| 91看片淫黄大片一级在线观看 | 免费视频97| 日日干av | 黄色在线观看污 | 黄色电影在线免费观看 | 欧美xxxx性xxxxx高清 | 欧美精品在线免费 | 99视频网站 | 婷婷丁香狠狠爱 | 婷婷六月天在线 | 精品久久精品 | 99久久精品费精品 | 中文字幕日韩电影 | 免费观看特级毛片 | 精品99在线 | 亚洲va在线va天堂va偷拍 | 亚洲成人免费在线观看 | 在线观看的av | 精品在线观看免费 | 亚洲精品视频在线观看免费视频 | 国产精品久久久久影视 | 久久婷婷久久 | 精品99在线 | 久热这里有精品 | av在线播放快速免费阴 | 天天操偷偷干 | 国产成人a亚洲精品v | 天天操天天操天天操天天 | 伊人午夜视频 | 欧美另类重口 | 日韩视频免费在线观看 | 婷婷综合亚洲 | 午夜视频99 | 91视频在线免费看 | 精品在线视频一区 | a级成人毛片 | 五月香视频在线观看 | 成人黄色视 | 香蕉久草 | 日韩在线免费不卡 | 4p变态网欧美系列 | h视频日本| 在线观看www91 | 在线免费av观看 | 国产一级黄色片免费看 | 久久免费播放 | 黄色资源在线观看 | av超碰在线| 在线视频第一页 | 激情av网| 麻豆视频国产在线观看 | 视频直播国产精品 | 婷婷久久综合网 | 国产精品videossex国产高清 | 黄色av电影在线观看 | 亚洲欧洲在线视频 | 伊人亚洲综合 | 久久伊99综合婷婷久久伊 | 亚洲免费在线观看视频 | av在线一二三区 | 中文字幕在线播放日韩 | 人人舔人人舔 | 国产精品久久久久久久av大片 | 久久久久亚洲国产精品 | 天天操天天摸天天干 | 日韩簧片在线观看 | 曰韩精品| 丁香花在线视频观看免费 | 狠狠五月婷婷 | 六月久久婷婷 | 日日摸日日 | 一级性生活片 | 日韩两性视频 | 国内精品久久久久国产 | 久草视频在线免费 | 国产成视频在线观看 | 欧美男男tv网站 | 91超级碰碰| 国产福利av | 狠狠躁日日躁夜夜躁av | 在线观看免费观看在线91 | 亚洲一区尤物 | 爱干视频 | www久久国产 | 日韩欧美在线免费观看 | 亚洲一级片在线观看 | 欧美aa级| 天天色官网 | 又黄又刺激 | 国产精品手机在线播放 | 色噜噜在线观看视频 | 人人爽人人av | 日韩中文字幕免费在线观看 | 久久精品99国产精品酒店日本 | 色a资源在线 | 日本婷婷色 | 国产激情小视频在线观看 | 狠狠的日日 | 9幺看片| 国产无区一区二区三麻豆 | 天堂va欧美va亚洲va老司机 | 偷拍精偷拍精品欧洲亚洲网站 | 日韩成人免费在线 | 国产精品一区二区免费 | 免费视频久久 | 久久午夜视频 | 亚洲国产偷 | 久久黄色影院 | 91丨九色丨蝌蚪丨老版 | 五月婷网 | 欧美日韩中文字幕在线视频 | 亚洲国产网站 | 中文字幕av电影下载 | 久久久久久亚洲精品 | 国产精品永久久久久久久久久 | 午夜精品久久久久久久99 | 久久免费在线视频 | 欧美激情精品久久久久久免费 | 亚洲蜜桃在线 | 精品久久久久久亚洲综合网 | 中国美女一级看片 | 看v片| 国产精品久久久久久久久搜平片 | 欧美精品在线免费 | 午夜久久影视 | 黄色a视频 | 色综合亚洲精品激情狠狠 | 精品日韩在线 | 一区二区三区中文字幕在线观看 | 奇米影音四色 | 日日激情 | 亚洲一一在线 | 国产中文a | 免费色黄 | 成人羞羞视频在线观看免费 | 久久99久久久久 | 久久8| 日韩啪视频 | 国产精品久久久久影院 | 高清国产午夜精品久久久久久 | 国产高清免费av | 亚洲自拍偷拍色图 | 国产一区精品在线观看 | 亚洲性xxxx| 三级av免费 | 狠狠色狠狠色合久久伊人 | 国产资源在线视频 | 亚洲视频免费在线观看 | 欧美 亚洲 另类 激情 另类 | 激情五月六月婷婷 | 伊人国产在线观看 | 欧美韩国在线 | 在线影院 国内精品 | 在线激情电影 | 精品久久久久国产免费第一页 | 国产日韩精品一区二区三区 | 欧美日韩国产精品久久 | 中文字幕av在线电影 | 国产香蕉97碰碰久久人人 | 日韩高清不卡一区二区三区 | 91精品视频免费在线观看 | 国产精品久久久久久久7电影 | 色九色 | 日韩欧美在线观看 | www.com黄| 亚洲永久精品国产 | 色九九影院| 免费看国产曰批40分钟 | 夜夜天天干 | 国产精品久99 | 国产高清中文字幕 | 欧美日韩裸体免费视频 | 天天操狠狠操 | www.狠狠 | 黄影院| 久久视频一区二区 | av成人资源 | 精品美女久久 | av超碰在线观看 | 在线网址你懂得 | 久久精品欧美视频 | 久草久草在线 | 国产天天综合 | 99久久毛片| 亚洲综合最新在线 | 一级黄色片在线 | 欧美日韩视频观看 | 夜夜夜草| 久久久精品午夜 | 日韩av成人在线观看 | 色狠狠综合天天综合综合 | 一区二区视频免费在线观看 | 欧美一区,二区 | 久久国产精品二国产精品中国洋人 | 婷婷丁香久久五月婷婷 | 久久无码精品一区二区三区 | 日本精品视频在线观看 | 国产精品久久久久久av | 亚洲国产小视频在线观看 | 欧美日韩另类在线 | 91麻豆精品| 日韩精品第一区 | 五月激情姐姐 | 久久高清毛片 | 亚洲精品视频二区 | 免费看国产a | 日韩一级成人av | 新版资源中文在线观看 | 2022中文字幕在线观看 | 一区二区国产精品 | 久久久精品免费观看 | 97视频久久久| 国产精品久久三 | 美女视频免费一区二区 | 色婷婷播放 | 996久久国产精品线观看 | 中文av影院 | 午夜精品久久久久久99热明星 | 五月开心婷婷网 | 2024国产精品视频 | 国产中文字幕一区二区 | 欧美成人精品欧美一级乱黄 |