精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

對比Elasticsearch,使用Doris進行高效日志分析

數(shù)據(jù)庫 其他數(shù)據(jù)庫
基于SQL的分析引擎確保數(shù)據(jù)工程師和分析師能夠在短時間內(nèi)輕松掌握Apache Doris,并將其在SQL方面的經(jīng)驗應(yīng)用到這個OLAP引擎中。借助SQL的豐富功能,用戶可以執(zhí)行數(shù)據(jù)檢索、聚合、多表連接、子查詢、UDF、邏輯視圖和物化視圖,以滿足自身需求。

作為公司數(shù)據(jù)資產(chǎn)的重要組成部分,日志在系統(tǒng)的可觀察性、網(wǎng)絡(luò)安全和數(shù)據(jù)分析方面扮演著關(guān)鍵角色。日志記錄是故障排除的首選工具,也是提升系統(tǒng)安全性的重要參考。日志還是一個寶貴的數(shù)據(jù)源,通過對其進行分析,可以獲取指導(dǎo)業(yè)務(wù)增長的有價值信息。

日志是計算機系統(tǒng)中事件的順序記錄。一個理想的日志分析系統(tǒng)應(yīng)該是:

  • 具備無模式支持。 原始日志是非結(jié)構(gòu)化的自由文本,基本無法直接進行聚合和計算,因此,在將日志用于數(shù)據(jù)庫或數(shù)據(jù)倉庫進行分析之前,需要將其轉(zhuǎn)化為結(jié)構(gòu)化的表格形式(這個過程稱為“ETL”)。如果發(fā)生日志模式更改,需要在ETL流程和結(jié)構(gòu)化表中進行一系列復(fù)雜的調(diào)整。為了應(yīng)對此情況,可以使用半結(jié)構(gòu)化日志,主要采用JSON格式進行記錄。在這種格式的日志中,可以相對容易地添加或刪除字段,而日志存儲系統(tǒng)會相應(yīng)地調(diào)整其模式。
  • 低成本。 日志數(shù)據(jù)龐大且持續(xù)不斷生成。一個相當(dāng)大的公司每年會產(chǎn)生10~100 TB的日志數(shù)據(jù)。基于業(yè)務(wù)或合規(guī)要求,應(yīng)該保留半年或更長時間的日志。這意味著需要存儲以PB為單位的日志大小,成本相當(dāng)可觀。
  • 具備實時處理能力。 日志應(yīng)該實時寫入,否則工程師將無法及時捕捉故障排查和安全追蹤中的最新事件。此外,良好的日志系統(tǒng)應(yīng)該提供全文搜索功能,并能快速響應(yīng)交互式查詢。

1 基于Elasticsearch的日志分析解決方案

數(shù)據(jù)行業(yè)內(nèi)常用的日志處理解決方案是ELK技術(shù)棧:Elasticsearch、Logstash和Kibana。該流程可分為五個模塊:

  • 日志收集:Filebeat收集本地日志文件并將其寫入Kafka消息隊列。
  • 日志傳輸:Kafka消息隊列收集和緩存日志。
  • 日志轉(zhuǎn)換:Logstash過濾和轉(zhuǎn)換Kafka中的日志數(shù)據(jù)。
  • 日志存儲:Logstash以JSON格式將日志寫入Elasticsearch進行存儲。
  • 日志查詢:用戶通過Kibana可視化搜索日志或通過Elasticsearch DSL API發(fā)送查詢請求。

圖片圖片

ELK堆棧具有優(yōu)秀的實時處理能力,但也存在一些問題。

1.1 缺乏無模式支持

Elasticsearch中的索引映射定義了表的結(jié)構(gòu),包括字段名稱、數(shù)據(jù)類型以及是否啟用索引創(chuàng)建。

圖片圖片

Elasticsearch還擁有自動根據(jù)輸入的JSON數(shù)據(jù)添加字段到映射的動態(tài)映射機制。這提供了某種程度的無模式支持,但這還不夠,因為:

  • 動態(tài)映射在處理臟數(shù)據(jù)時經(jīng)常會創(chuàng)建過多的字段,從而中斷整個系統(tǒng)的運行。
  • 字段的數(shù)據(jù)類型是不可變的。為了確保兼容性,用戶通常將數(shù)據(jù)類型配置為"文本",但這會導(dǎo)致比二進制數(shù)據(jù)類型(如整數(shù))慢得多的查詢性能。
  • 字段的索引也是不可變的。用戶無法為特定字段添加或刪除索引,因此經(jīng)常為所有字段創(chuàng)建索引,以便在查詢中方便地進行數(shù)據(jù)過濾。但是太多的索引需要額外的存儲空間,并減慢數(shù)據(jù)攝入速度。

1.2 分析能力不足

Elasticsearch擁有獨特的領(lǐng)域特定語言(DSL),與大多數(shù)數(shù)據(jù)工程師和分析師熟悉的技術(shù)棧非常不同,所以存在陡峭的學(xué)習(xí)曲線。此外,Elasticsearch相對封閉的生態(tài)系統(tǒng),在與BI工具集成方面會遇到一些阻力。最重要的是,Elasticsearch僅支持單表分析,滯后于現(xiàn)代OLAP對多表連接、子查詢和視圖的需求。

圖片圖片

1.3 高成本和低穩(wěn)定性

Elasticsearch用戶一直在抱怨計算和存儲成本。根本原因在于Elasticsearch的工作方式。

  • 計算成本:在數(shù)據(jù)寫入過程中,Elasticsearch還執(zhí)行計算密集型操作,包括倒排索引的創(chuàng)建、分詞和倒排索引的排序。在這些情況下,數(shù)據(jù)以每個核心約2MB/s的速度寫入Elasticsearch。當(dāng)CPU資源緊張時,數(shù)據(jù)寫入需求往往會在高峰時段被拒絕,進一步導(dǎo)致更高的延遲。
  • 存儲成本:為了加快檢索速度,Elasticsearch存儲原始數(shù)據(jù)的正排索引、倒排索引和文檔值,消耗了更多的存儲空間。單個數(shù)據(jù)副本的壓縮比僅為1.5:1,而大多數(shù)日志解決方案的壓縮比為5:1。

隨著數(shù)據(jù)量和集群規(guī)模的增長,保持穩(wěn)定性會成為另一個問題:

  • 在數(shù)據(jù)寫入高峰期:集群在數(shù)據(jù)寫入高峰期容易超載。
  • 在查詢期間:由于所有查詢都在內(nèi)存中處理,大型查詢很容易導(dǎo)致JVM OOM(內(nèi)存溢出)。
  • 恢復(fù)緩慢:對于集群故障,Elasticsearch需要重新加載索引,這對資源消耗很大,因此恢復(fù)過程可能需要幾分鐘。這對于服務(wù)可用性的保證是一個挑戰(zhàn)。

2 更具成本效益的方案

在反思基于Elasticsearch的解決方案的優(yōu)點和局限性后,Apache Doris開發(fā)人員對Apache Doris進行了日志處理的優(yōu)化。

  • 增加寫入吞吐量: Elasticsearch的性能受到數(shù)據(jù)解析和倒排索引創(chuàng)建的限制,因此改進了Apache Doris在這些方面的性能:通過SIMD指令和CPU向量指令加快了數(shù)據(jù)解析和索引創(chuàng)建的速度;然后移除了在日志分析場景中不必要的數(shù)據(jù)結(jié)構(gòu),例如正排索引,以簡化索引創(chuàng)建過程。
  • 減少存儲成本: 移除了正排索引,這部分?jǐn)?shù)據(jù)占據(jù)了索引數(shù)據(jù)的30%。采用了列式存儲和ZSTD壓縮算法,從而實現(xiàn)了5:1到10:1的壓縮比。考慮到大部分歷史日志很少被訪問,引入了分層存儲來分離熱數(shù)據(jù)和冷數(shù)據(jù)。超過指定時間段的日志將被移動到存儲成本更低的對象存儲中。這可以將存儲成本降低約70%。

Elasticsearch的官方測試工具ES Rally進行的基準(zhǔn)測試顯示,Apache Doris在數(shù)據(jù)寫入方面比Elasticsearch快約5倍,在查詢方面快約2.3倍,并且僅消耗Elasticsearch使用存儲空間的1/5。在HTTP日志的測試數(shù)據(jù)集上,它實現(xiàn)了550 MB/s的寫入速度和10:1的壓縮比。

圖片圖片

下圖顯示了一個典型的基于Doris的日志處理系統(tǒng)的樣貌。它更加全面,從數(shù)據(jù)攝取、分析到應(yīng)用,都可以更靈活地使用:

  • 數(shù)據(jù)導(dǎo)入:Apache Doris支持多種日志數(shù)據(jù)的攝入方式。可以通過使用Logstash的HTTP輸出將日志推送到Doris,可以在將日志寫入Doris之前使用Flink預(yù)處理日志,或者可以通過常規(guī)加載和S3加載從Flink或?qū)ο蟠鎯χ屑虞d日志到Doris中。
  • 數(shù)據(jù)分析:可以把日志數(shù)據(jù)放入Doris,并在數(shù)據(jù)倉庫中進行跨日志和其他數(shù)據(jù)的聯(lián)接查詢。
  • 應(yīng)用:Apache Doris兼容MySQL協(xié)議,因此可以把各種數(shù)據(jù)分析工具和客戶端集成到Doris中,例如Grafana和Tableau。還可以通過JDBC和ODBC API將應(yīng)用程序連接到Doris。這里計劃構(gòu)建一個類似于Kibana的系統(tǒng)來可視化日志。

圖片圖片

此外,Apache Doris具有更好的無模式支持和更用戶友好的分析引擎。

2.1 原生支持半結(jié)構(gòu)化數(shù)據(jù)

首先,在數(shù)據(jù)類型上進行優(yōu)化。通過矢量化優(yōu)化了字符串搜索和正則表達式匹配的文本性能,性能提升了2~10倍。對于JSON字符串,Apache Doris將其解析并存儲為更緊湊和高效的二進制格式,可以加快查詢速度4倍。還為復(fù)雜數(shù)據(jù)添加了一種新的數(shù)據(jù)類型:Array Map。它可以將連接的字符串進行結(jié)構(gòu)化,以實現(xiàn)更高的壓縮率和更快的查詢速度。

其次,Apache Doris支持模式演化。這意味著可以根據(jù)業(yè)務(wù)變化調(diào)整模式。可以添加或刪除字段和索引,并更改字段的數(shù)據(jù)類型。

Apache Doris提供了輕量級的模式更改功能,因此開發(fā)人員可以在幾毫秒內(nèi)添加或刪除字段:

-- 添加列。結(jié)果會在毫秒級返回。
ALTER TABLE lineitem ADD COLUMN l_new_column INT;

還可以僅為目標(biāo)字段添加索引,以避免不必要的索引創(chuàng)建帶來的開銷。在添加索引后,默認(rèn)情況下,系統(tǒng)將為所有增量數(shù)據(jù)生成索引,并且可以指定需要索引的歷史數(shù)據(jù)分區(qū)。

-- 添加倒排索引。Doris會為以后的所有新數(shù)據(jù)生成倒排索引。
ALTER TABLE table_name ADD INDEX index_name(column_name) USING INVERTED;

-- 為指定的歷史數(shù)據(jù)分區(qū)構(gòu)建索引。
BUILD INDEX index_name ON table_name PARTITIONS(partition_name1, partition_name2);

2.2 基于SQL的分析引擎

基于SQL的分析引擎確保數(shù)據(jù)工程師和分析師能夠在短時間內(nèi)輕松掌握Apache Doris,并將其在SQL方面的經(jīng)驗應(yīng)用到這個OLAP引擎中。借助SQL的豐富功能,用戶可以執(zhí)行數(shù)據(jù)檢索、聚合、多表連接、子查詢、UDF、邏輯視圖和物化視圖,以滿足自身需求。

Apache Doris具備MySQL兼容性,可以與大數(shù)據(jù)生態(tài)系統(tǒng)中的大多數(shù)GUI和BI工具集成,使用戶能夠?qū)崿F(xiàn)更復(fù)雜和多樣化的數(shù)據(jù)分析。

3 使用案例中的性能表現(xiàn)

一家游戲公司已經(jīng)從ELK技術(shù)棧轉(zhuǎn)向了Apache Doris解決方案。他們基于Doris的日志系統(tǒng)所需的存儲空間只有之前的1/6。

一家網(wǎng)絡(luò)安全公司利用Apache Doris中的倒排索引構(gòu)建了他們的日志分析系統(tǒng),支持每秒寫入30萬行數(shù)據(jù),僅使用以前所需的1/5服務(wù)器資源。

4 實踐指南

現(xiàn)在按照以下三個步驟來構(gòu)建一個基于Apache Doris的日志分析系統(tǒng)。

在開始之前,從官方網(wǎng)站下載Apache Doris 2.0或更新版本,并部署集群。

4.1 步驟1:創(chuàng)建表格

這是一個表格創(chuàng)建的示例。

對配置的解釋:

  • 將DATETIMEV2時間字段指定為鍵,以加快對最新N條日志記錄的查詢速度。
  • 為頻繁訪問的字段創(chuàng)建索引,并使用解析器參數(shù)指定需要進行全文搜索的字段。
  • "PARTITION BY RANGE"意味著根據(jù)時間字段將數(shù)據(jù)按范圍進行分區(qū),啟用動態(tài)分區(qū)以進行自動管理。
  • "DISTRIBUTED BY RANDOM BUCKETS AUTO"意味著將數(shù)據(jù)隨機分布到桶中,系統(tǒng)會根據(jù)集群大小和數(shù)據(jù)量自動決定桶的數(shù)量。
  • "log_policy_1day"和"log_s3"意味著將超過1天的日志移動到S3存儲。
CREATE DATABASE log_db;
USE log_db;

CREATE RESOURCE "log_s3"
PROPERTIES
(
   "type" = "s3",
   "s3.endpoint" = "your_endpoint_url",
   "s3.region" = "your_region",
   "s3.bucket" = "your_bucket",
   "s3.root.path" = "your_path",
   "s3.access_key" = "your_ak",
   "s3.secret_key" = "your_sk"
);

CREATE STORAGE POLICY log_policy_1day
PROPERTIES(
   "storage_resource" = "log_s3",
   "cooldown_ttl" = "86400"
);

CREATE TABLE log_table
(
 ``ts` DATETIMEV2,
 ``clientip` VARCHAR(20),
 ``request` TEXT,
 ``status` INT,
 ``size` INT,
 INDEX idx_size (`size`) USING INVERTED,
 INDEX idx_status (`status`) USING INVERTED,
 INDEX idx_clientip (`clientip`) USING INVERTED,
 INDEX idx_request (`request`) USING INVERTED PROPERTIES("parser" = "english")
)
ENGINE = OLAP
DUPLICATE KEY(`ts`)
PARTITION BY RANGE(`ts`) ()
DISTRIBUTED BY RANDOM BUCKETS AUTO
PROPERTIES (
"replication_num" = "1",
"storage_policy" = "log_policy_1day",
"deprecated_dynamic_schema" = "true",
"dynamic_partition.enable" = "true",
"dynamic_partition.time_unit" = "DAY",
"dynamic_partition.start" = "-3",
"dynamic_partition.end" = "7",
"dynamic_partition.prefix" = "p",
"dynamic_partition.buckets" = "AUTO",
"dynamic_partition.replication_num" = "1"
);

4.2 步驟2:導(dǎo)入日志

Apache Doris支持多種數(shù)據(jù)導(dǎo)入方法。對于實時日志,推薦以下三種方法:

  • 從Kafka消息隊列中拉取日志:Routine Load
  • Logstash:通過HTTP API將日志寫入Doris
  • 自定義編寫程序:通過HTTP API將日志寫入Doris

使用Kafka進行數(shù)據(jù)攝取

對于寫入Kafka消息隊列的JSON日志,創(chuàng)建常規(guī)加載(Routine Load),以便Doris從Kafka中拉取數(shù)據(jù)。以下是示例。property.* 配置為可選配置:

-- 準(zhǔn)備Kafka集群和主題("log_topic")

-- 創(chuàng)建常規(guī)加載,從Kafka的 log_topic 加載數(shù)據(jù)到 "log_table"
CREATE ROUTINE LOAD load_log_kafka ON log_db.log_table
COLUMNS(ts, clientip, request, status, size)
PROPERTIES (
   "max_batch_interval" = "10",
   "max_batch_rows" = "1000000",
   "max_batch_size" = "109715200",
   "strict_mode" = "false",
   "format" = "json"
)
FROM KAFKA (
   "kafka_broker_list" = "host:port",
   "kafka_topic" = "log_topic",
   "property.group.id" = "your_group_id",
   "property.security.protocol"="SASL_PLAINTEXT",     
   "property.sasl.mechanism"="GSSAPI",     
   "property.sasl.kerberos.service.name"="kafka",     
   "property.sasl.kerberos.keytab"="/path/to/xxx.keytab",     
   "property.sasl.kerberos.principal"="xxx@yyy.com"
);

可以通過SHOW ROUTINE LOAD命令查看常規(guī)加載的運行情況。

通過Logstash進行數(shù)據(jù)導(dǎo)入

配置Logstash的HTTP輸出,然后通過HTTP Stream Load將數(shù)據(jù)發(fā)送到Doris。

1) 在logstash.yml中指定批量大小和批量延遲,以提高數(shù)據(jù)寫入性能。

pipeline.batch.size: 100000
pipeline.batch.delay: 10000

2) 在日志收集配置文件testlog.conf中添加HTTP輸出,URL為Doris中的Stream Load地址。

  • 由于Logstash不支持HTTP重定向,應(yīng)該使用后端地址而不是FE地址。
  • 頭部中的授權(quán)是http basic auth,使用echo -n 'username:password' | base64進行計算。
  • 頭部中的load_to_single_tablet可以減少數(shù)據(jù)攝取中的小文件數(shù)量。
output {
  http {
      follow_redirects => true
      keepalive => false
      http_method => "put"
      url => "http://172.21.0.5:8640/api/logdb/logtable/_stream_load"
      headers => [
          "format", "json",
          "strip_outer_array", "true",
          "load_to_single_tablet", "true",
          "Authorization", "Basic cm9vdDo=",
          "Expect", "100-continue"
      ]
      format => "json_batch"
  }
}

通過自定義程序進行數(shù)據(jù)攝取

以下是通過HTTP Stream Load將數(shù)據(jù)攝取到Doris的示例。

注意:

  • 使用basic auth進行HTTP授權(quán),使用 echo -n 'username:password' | base64 進行計算。
  • http header "format:json":指定數(shù)據(jù)類型為JSON。
  • http header "read_json_by_line:true":每行都是一個JSON記錄。
  • http header "load_to_single_tablet:true":每次寫入一個分片(tablet)。
  • 對于數(shù)據(jù)寫入客戶端,建議批量大小為100MB~1GB。未來的版本將在服務(wù)器端啟用Group Commit,并減小客戶端的批量大小。
curl \
--location-trusted \
-u username:password \
-H "format:json" \
-H "read_json_by_line:true" \
-H "load_to_single_tablet:true" \
-T logfile.json \
http://fe_host:fe_http_port/api/log_db/log_table/_stream_load

4.3 步驟3:執(zhí)行查詢

Apache Doris支持標(biāo)準(zhǔn)SQL,因此可以通過MySQL客戶端或JDBC連接到Doris,然后執(zhí)行SQL查詢。

mysql -h fe_host -P fe_mysql_port -u root -Dlog_db

一些常見的日志分析查詢:

  • 檢查最新的10條記錄。
SELECT * FROM log_table ORDER BY ts DESC LIMIT 10;
  • 檢查Client IP為"8.8.8.8"的最新的10條記錄。
SELECT * FROM log_table WHERE clientip = '8.8.8.8' ORDER BY ts DESC LIMIT 10;
  • 檢索在"request"字段中包含"error"或"404"的最新的10條記錄。MATCH_ANY是Doris中的通過全文搜索來查找包含指定關(guān)鍵詞中任意一個的記錄。
SELECT * FROM log_table WHERE request MATCH_ANY 'error 404' ORDER BY ts DESC LIMIT 10;
  • 檢索在"request"字段中同時包含"image"和"faq"的最新的10條記錄。MATCH_ALL也是Doris中的全文搜索語法關(guān)鍵詞,表示查找同時包含所有指定關(guān)鍵詞的記錄。
SELECT * FROM log_table WHERE request MATCH_ALL 'image faq' ORDER BY ts DESC LIMIT 10;

5 總結(jié)

如果需要一種高效的日志分析解決方案,Apache Doris是非常友好的選擇,尤其適合那些具備SQL知識的讀者。相比ELK堆棧,使用Apache Doris可以獲得更好的無模式支持,實現(xiàn)更快的數(shù)據(jù)寫入和查詢,并且減少存儲負擔(dān)。


責(zé)任編輯:武曉燕 來源: Java學(xué)研大本營
相關(guān)推薦

2023-10-29 12:54:16

Doris數(shù)據(jù)倉庫

2024-08-06 09:54:20

2023-12-25 11:18:12

OpenTeleme應(yīng)用日志Loki

2023-11-30 18:03:55

IDEA工具

2024-06-05 08:14:26

SpringElasticsea人臉數(shù)據(jù)

2021-04-12 08:17:12

ElasticSear分詞中文

2024-08-06 09:40:21

2023-10-10 07:24:59

SRE日志OnCall

2024-03-12 00:05:00

開發(fā)編程語言IDE

2021-12-24 10:45:19

PandasLambda數(shù)據(jù)分析

2024-05-07 08:16:17

2024-11-15 13:15:36

2023-03-31 17:33:06

Oracle數(shù)據(jù)庫

2015-09-25 11:03:14

數(shù)據(jù)中心日志分析

2024-10-18 11:39:55

MySQL數(shù)據(jù)檢索

2025-02-24 09:30:00

日志系統(tǒng)系統(tǒng)開發(fā)

2021-08-09 15:00:36

SQL數(shù)據(jù)庫

2024-02-04 00:00:00

Loki性能查詢

2023-10-04 00:17:00

SQL數(shù)據(jù)庫

2024-03-25 14:22:07

大型語言模型GaLore
點贊
收藏

51CTO技術(shù)棧公眾號

一区二区不卡在线视频 午夜欧美不卡'| 久久久在线观看| 日韩亚洲在线视频| 日本暖暖在线视频| 国产成人aaa| 国产福利视频一区| 国产97免费视频| 天天躁日日躁成人字幕aⅴ| 欧美三日本三级三级在线播放| 91免费视频黄| 黄色小视频在线免费观看| 国产一区美女在线| 69影院欧美专区视频| 女人18毛片毛片毛片毛片区二 | 亚洲成av人片在线观看| 日韩国产欧美一区| 日韩一级片免费看| 久久99精品国产麻豆婷婷洗澡| 91国产精品91| 欧美日韩中文字幕在线观看| 精品一区免费| 欧美精品一区二区三区在线| 五月天av在线播放| 伊人久久在线| 亚洲午夜视频在线观看| 夜夜爽99久久国产综合精品女不卡 | 亚洲天堂手机| 亚洲一区二区欧美日韩| 一本久道久久综合| 国产在线观看网站| 99免费精品在线| 97久久夜色精品国产九色| 中文无码精品一区二区三区| 免费中文字幕日韩欧美| 久久频这里精品99香蕉| 久草免费新视频| 综合激情网站| 日韩中文字幕免费视频| 一级片视频免费看| 欧美三级午夜理伦三级小说| 精品国产一区二区三区不卡 | 久久精品无码av| 激情久久久久久久| 欧美日韩福利在线观看| 国产传媒免费在线观看| 羞羞色午夜精品一区二区三区| 国产亚洲视频中文字幕视频| 香蕉视频黄色在线观看| 日韩美脚连裤袜丝袜在线| 亚洲变态欧美另类捆绑| 高清中文字幕mv的电影| 亚洲精品在线a| 欧美成人video| 波多野结衣三级视频| 色妞ww精品视频7777| 日韩欧美一区二区免费| avtt中文字幕| 国产三级精品三级在线观看国产| 精品国产免费人成电影在线观看四季 | 日本一级黄色大片| 亚洲黄色天堂| 欧美中文字幕视频| 中文字幕69页| 蜜桃传媒麻豆第一区在线观看| 日韩综合在线| 国产亚洲欧美日韩一区二区| 五月婷婷欧美激情| 色爱综合网欧美| 久久精品最新地址| 欧美成人黄色网| 黑人一区二区| 日本精品久久中文字幕佐佐木| 国产精品第六页| 久久成人麻豆午夜电影| 51国偷自产一区二区三区的来源 | 精品午夜福利在线观看| 99综合精品| 国产成人一区二区三区| 一本到在线视频| 粉嫩13p一区二区三区| 精品无人区一区二区三区| 蜜桃视频在线观看视频| 亚洲欧洲av另类| 97视频在线免费| 黑人巨大亚洲一区二区久| 欧美午夜在线观看| 日本少妇一区二区三区| 亚洲人成网www| 色噜噜狠狠狠综合曰曰曰88av| 少妇影院在线观看| 久久婷婷久久| 成人精品一二区| 全色精品综合影院| 亚洲欧美国产三级| 精品国产一区三区| 欧美亚洲福利| 亚洲激情久久久| 中文字幕资源站| 亚洲精品麻豆| 91精品视频在线看| 亚洲人妻一区二区| 亚洲精品国产精品乱码不99| 可以免费观看av毛片| 国产精品美女久久久久人| 日韩精品视频免费| 真实国产乱子伦对白在线| 丝袜国产日韩另类美女| av免费观看久久| 亚洲免费视频一区二区三区| 性感美女久久精品| 欧美午夜精品理论片| 最新精品国偷自产在线| 欧美另类暴力丝袜| 亚洲性在线观看| 久久综合久久99| 免费在线看黄色片| 色综合久久久| 国产一区二区三区直播精品电影| 久久久久久久久久久久久久免费看 | 国产综合在线播放| 亚洲桃色在线一区| 国产成人无码av在线播放dvd| 日韩最新av| 久久久精品免费视频| 一级片在线免费播放| 91美女福利视频| 屁屁影院ccyy国产第一页| 羞羞视频在线观看一区二区| 亚洲人成网站777色婷婷| 国产午夜激情视频| 国产成人a级片| 男人天堂成人网| 亚洲欧洲二区| 精品国模在线视频| 一区二区美女视频| 国产精品视频免费看| 久草在在线视频| 男男gay无套免费视频欧美| 91国产一区在线| 五月色婷婷综合| 精品高清美女精品国产区| 亚洲欧美综合视频| 欧美女人交a| 爱情岛论坛亚洲入口| 国内高清免费在线视频| 欧美α欧美αv大片| 精品在线视频免费观看| 国产999精品久久久久久绿帽| 国产91av视频在线观看| 亚洲欧美专区| 久久99久久99精品免观看粉嫩| 国产伦理吴梦梦伦理| 亚洲美女少妇撒尿| 国产大学生av| 在线国产日韩| 久久久久se| 亚洲四虎影院| 日韩有码视频在线| 国产丝袜在线视频| 一区二区三区高清不卡| 99精品一区二区三区无码吞精| 一区免费视频| 欧美日韩在线精品一区二区三区| 9i看片成人免费高清| 国产一区二区黑人欧美xxxx| 中文字幕一区二区免费| 最近日韩中文字幕| 中文字幕18页| 久久精品人人| 亚洲精品一区二区三区av| 国产一区二区三区免费在线 | 午夜激情电影在线播放| 亚洲色图色老头| 国产乱淫片视频| 免费一区二区三区视频导航| 欧美va亚洲va日韩∨a综合色| 午夜精品理论片| 久草视频视频在线播放| 欧美日韩小视频| 麻豆天美蜜桃91| 91免费观看国产| 成人免费在线观看视频网站| 亚洲精品成人| 精品日韩欧美| 亚洲综合视频| 国语自产精品视频在线看一大j8 | 日本午夜激情视频| 伊人久久大香线蕉综合网站| 91精品久久久久久久久久另类| 羞羞的视频在线观看| 国产视频在线一区二区| 一本色道久久综合无码人妻| 亚洲国产成人av网| 99久久99久久精品免费看小说.| 国产精品亚洲午夜一区二区三区| 能在线观看的av| 欧美在线二区| 欧美一区二区影视| 在线观看视频一区二区三区| 国产精品福利观看| 成人av影院在线观看| 中文字幕日韩综合av| 熟妇高潮一区二区高潮| 欧美日韩国产一级片| 好吊妞视频一区二区三区| 最新日韩在线视频| 在线观看福利片| 成人污污视频在线观看| 国产日韩欧美久久| 西西裸体人体做爰大胆久久久| 天天爱天天做天天操| 国产成人ay| 韩日午夜在线资源一区二区| 亚洲青青久久| 国产精品三级久久久久久电影| 俺来俺也去www色在线观看| 久久精品国产亚洲精品| 国产二区视频在线观看| 亚洲精品乱码久久久久久金桔影视| 91久久精品无码一区二区| 色香蕉成人二区免费| 日韩成人免费在线观看| 一区二区三区在线不卡| 911国产在线| 欧美国产1区2区| 久久精品国产亚洲av麻豆| 99久久亚洲一区二区三区青草| 少妇高潮一69aⅹ| 精品亚洲成a人| 五月婷婷激情久久| 久久aⅴ国产紧身牛仔裤| 人妻夜夜添夜夜无码av| 国产综合激情| av日韩在线看| 午夜精品久久| 一二三在线视频| 欧美二区不卡| 日本福利视频在线观看| 欧美国产三级| 永久免费在线看片视频| 66视频精品| 香蕉视频在线网址| 婷婷综合亚洲| 日日噜噜夜夜狠狠久久丁香五月| 888久久久| 国产高清不卡无码视频| 欧美黄色aaaa| 国产在线视频综合| 伊人久久大香线蕉av超碰演员| 97超碰国产精品| 亚洲三级色网| 日韩 欧美 高清| 日本大胆欧美人术艺术动态 | 成人午夜在线播放| 天天躁日日躁狠狠躁av| 成人福利电影精品一区二区在线观看 | 久久高清无码视频| 伊人夜夜躁av伊人久久| 久久久久久久久97| 亚洲电影第三页| 五月婷婷视频在线| 欧美在线影院一区二区| 在线观看毛片网站| 欧美一区二区女人| 黄色av小说在线观看| 日韩高清免费观看| 久久米奇亚洲| 日韩视频免费看| 牛牛电影国产一区二区| 91wwwcom在线观看| 日韩在线观看不卡| 91亚洲精品久久久| 国产精品久久久网站| 欧美日韩亚洲一区二区三区在线观看| 欧美日韩水蜜桃| 97久久国产亚洲精品超碰热 | 亚洲综合欧美激情| 国产精选一区二区三区 | 久久久久久久久久久99999| 国产精品免费无码| 亚洲欧美国产毛片在线| 黄网在线观看视频| 欧美亚洲日本国产| 国产黄色av网站| 国产婷婷色综合av蜜臀av| 蜜桃视频在线观看免费视频网站www| 欧美激情精品久久久久久黑人| 欧美大片高清| 99精彩视频在线观看免费| 性欧美lx╳lx╳| 99热这里只有精品7| 国产精品美女| 一级网站在线观看| 99国产精品久久| 欧美风情第一页| 一本色道综合亚洲| 亚洲av无码一区二区乱子伦| 国产一区二区三区在线视频| 毛片在线网址| 国产女精品视频网站免费| 久久狠狠久久| 天天综合中文字幕| 日韩综合一区二区| 久久性爱视频网站| 亚洲欧洲精品成人久久奇米网| 国产又黄又爽又色| 日韩三级电影网址| 成人av一区| 欧美一区二三区| 亚洲综合影院| 综合视频免费看| 日韩一区精品字幕| 亚洲图片综合网| 亚洲女子a中天字幕| 国产主播第一页| 日韩经典中文字幕| 黄色大片在线| 亚洲最大成人在线| 欧美gay男男猛男无套| 国产福利一区视频| 99久久er热在这里只有精品66| 破处女黄色一级片| 欧美日韩国产一区| 91最新在线| 国产精品久久不能| 亚洲免费毛片| 18岁网站在线观看| 波多野结衣精品在线| 久久久久久福利| 欧美一区二区观看视频| 麻豆影院在线| 成人黄色网免费| 日韩啪啪电影网| 91最新在线观看| 国产日韩av一区二区| 无码人妻精品一区二区蜜桃色欲| 日韩av在线网页| а√在线天堂官网| 国产精品乱码| 亚洲激情在线| 欧美xxxxx少妇| 五月综合激情婷婷六月色窝| 天堂av手机版| 热草久综合在线| 国产精品亚洲片在线播放| 国产精品视频一区二区三区四区五区| 99riav久久精品riav| 草久久免费视频| 国产亚洲精品日韩| 欧美日韩国产网站| 一区二区不卡在线观看| 国内精品伊人久久久久av一坑| 91视频综合网| 精品日本一线二线三线不卡| 成人爽a毛片免费啪啪动漫| 国产精品久久久久久久久久久久午夜片| 欧美激情视频一区二区三区在线播放| av在线网站免费观看| 一区二区三区av电影| 欧洲成人一区二区三区| 欧美中文在线免费| 人人狠狠综合久久亚洲婷| 色噜噜狠狠一区二区三区狼国成人| 亚洲免费观看高清完整版在线观看 | 国产亚洲人成网站在线观看| 国产精品第一| 久久久久久久免费视频| 成人少妇影院yyyy| 六月丁香激情综合| 中文字幕精品一区久久久久 | 久久精品99国产精品日本| 日本一级特级毛片视频| 亚洲成人精品av| 亚洲高清黄色| 色一情一乱一乱一区91| 成人黄色国产精品网站大全在线免费观看| 国内免费精品视频| 在线一区二区日韩| 亚洲精品一区二区三区在线| 欧美一区二区三区爽大粗免费| 国产精品入口麻豆九色| 国产suv一区二区| 欧美在线播放视频| 天天做综合网| 国产精品无码一区二区三区免费| 欧美视频一区二区三区四区| 手机av在线播放| 青青草国产精品| 国产**成人网毛片九色| 波多野结衣视频网址| 久久久久久久91| 欧美日韩高清| 无码av免费精品一区二区三区| 欧美性色综合网| av手机在线观看| 亚洲一区二区三区在线观看视频| 国产成人精品午夜视频免费| www.日韩一区| 97视频在线观看播放| 9999国产精品|