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

Spark:為大數據處理點亮一盞明燈

譯文
大數據 數據庫 Spark
Apache Spark為Hadoop集群帶來了速度極高的內存內分析能力,從而將大規模數據集的處理周期由幾小時成功縮短為幾分鐘。

[[123530]] 

Apache Spark項目于2009年誕生于伯克利大學的AMPLab實驗室,當初的目的在于將內存內分析機制引入大規模數據集當中。在那個時候,Hadoop MapReduce的關注重點仍然放在那些本質上無法迭代的大規模數據管道身上。想在2009年以MapReduce為基礎構建起分析模型實在是件費心費力而又進展緩慢的工作,因此AMPLab設計出Spark來幫助開發人員對大規模數據集執行交互分析、從而運行各類迭代工作負載——也就是對內存中的同一套或者多套數據集進行反復處理,其中最典型的就是機器學習算法。

Spark的意義并不在于取代Hadoop。正相反,它為那些高度迭代的工作負載提供了一套備用處理引擎。通過顯著降低面向磁盤的寫入強度,Spark任務通常能夠在運行速度方面高出Hadoop MapReduce幾個數量級。作為“寄生”在Hadoop集群當中的得力助手,Spark利用Hadoop數據層(HDFS、HBase等等)作為數據管道終端,從而實現原始數據讀取以及最終結果存儲。

編寫Spark應用程序

作為由Scala語言編寫的項目,Spark能夠為數據處理流程提供一套統一化抽象層,這使其成為開發數據應用程序的絕佳環境。Spark在大多數情況下允許開發人員選擇Scala、Java以及Python語言用于應用程序構建,當然對于那些最為前沿的層面、只有Scala能夠實現大家的一切構想。

Spark當中的突出特性之一在于利用Scala或者Python控制臺進行交互式工作。這意味著大家可以在嘗試代碼運行時,立即查看到其實際執行結果。這一特性非常適合調試工作——大家能夠在無需進行編譯的前提下變更其中的數值并再次處理——以及數據探索——這是一套典型的處理流程,由大量檢查-顯示-更新要素所構成。

Spark的核心數據結構是一套彈性分布式數據(簡稱RDD)集。在Spark當中,驅動程序被編寫為一系列RDD轉換機制,并附帶與之相關的操作環節。顧名思義,所謂轉換是指通過變更現有數據——例如根據某些特定指標對數據進行過濾——根據其創建出新的RDD。操作則隨RDD自身同步執行。具體而言,操作內容可以是計算某種數據類型的實例數量或者將RDD保存在單一文件當中。

Spark的另一大優勢在于允許使用者輕松將一套RDD共享給其它Spark項目。由于RDD的使用貫穿于整套Spark堆棧當中,因此大家能夠隨意將SQL、機器學習、流以及圖形等元素摻雜在同一個程序之內。

熟悉各類其它函數型編程語言——例如LISP、Haskell或者F#——的開發人員會發現,除了API之外、自己能夠非常輕松地掌握Spark編程方式。歸功于Scala語言的出色收集系統,利用Spark Scala API編寫的應用程序能夠以干凈而且簡潔的面貌呈現在開發者面前。在對Spark編程工作進行調整時,我們主要需要考慮這套系統的分布式特性并了解何時需要對對象以及函數進行排序。

擁有其它程序語言,例如Java,知識背景的程序員則往往沒辦法快速適應Spark項目的函數編程范式。有鑒于此,企業可能會發現找到一位能夠切實上手Spark(從這個角度講,Hadoop也包含其中)的Scala與函數編程人員實在不是件容易的事。

 

由于Spark的RDD能夠實現跨系統共享,因此大家能夠隨意將SQL、機器學習、流以及圖形等元素摻雜在同一個程序之內。

#p#

彈性分布式數據集

對于RDD的使用貫穿于整套堆棧當中,而這也成為Spark如此強大的根基之一。無論是從概念層面還是實施層面,RDD都顯得非常簡單; RDD類當中的大部分方法都在20行以內。而從核心角度看,RDD屬于一套分布式記錄集合,由某種形式的持久性存儲作為依托并配備一系列轉換機制。

RDD是不可變更的。我們無法對RDD進行修改,但卻能夠輕松利用不同數值創建新的RDD。這種不可變性算得上是分布式數據集的一大重要特性; 這意味著我們用不著擔心其它線程或者進程在我們不知不覺中對RDD數值作出了變更——而這正是多線程編程領域的一個老大難問題。這同時意味著我們能夠將RDD分發到整個集群當中加以執行,而不必擔心該如何在各節點之間對RDD內容變更進行同步。

RDD不可變性在Spark應用程序的容錯機制當中同樣扮演著重要角色。由于每個RDD都保留有計算至當前數值的全部歷史記錄、而且其它進程無法對其作出變更,因此在某個節點丟失時對RDD進行重新計算就變得非常輕松——只需要返回原本的持久性數據分區,再根據不同節點重新推導計算即可。(Hadoop當中的大多數分區都具備跨節點持久性。)

RDD能夠通過多種數據分區類型加以構成。在大多數情況下,RDD數據來自HDFS,也就是所謂“分區”的書面含義。不過RDD也可以由來自其它持久性存儲機制的數據所構成,其中包括HBase、Cassandra、SQL數據庫(通過JDBC)、Hive ORC(即經過優化的行列)文件乃至其它能夠與Hadoop InputFormat API相對接的存儲系統。無論RDD的實際來源如何,其運作機制都是完全相同的。

Spark轉換機制的最后一項備注是:此類流程非常懶惰,也就是說直到某項操作要求將一條結果返回至驅動程序,否則此前整個過程不涉及任何計算環節。這樣的特性在與Scala shell進行交互時顯得意義重大。這是因為RDD在逐步轉換的過程當中不會帶來任何資源成本——直到需要執行實際操作。到這個時候,所有數值才需要進行計算,并將結果返回給用戶。除此之外,由于RDD能夠利用內存充當緩存機制,因此頻繁使用計算結果也不會造成反復計算或者由此引發的資源消耗。

 

 

Spark轉換機制非常懶惰,也就是說直到某項操作要求將一條結果返回至用戶處,否則此前整個過程不涉及任何計算環節。

執行Spark應用程序

為了將一項Spark任務提交至集群,開發人員需要執行驅動程序并將其與集群管理器(也被稱為cluster master)相對接。集群管理器會為該驅動程序提供一套持久性接口,這樣同一款應用程序即可在任何受支持集群類型之上實現正常運行。

Spark項目目前支持專用Spark(獨立)、Mesos以及YARN集群。運行在集群當中的每個驅動程序以各自獨立的方式負責資源分配與任務調度工作。盡管以隔離方式進行應用程序交付,但這種架構往往令集群很難高效實現內存管理——也就是對于Spark而言最為寶貴的資源類型。多個高內存消耗任務在同時提交時,往往會瞬間將內存吞噬殆盡。盡管獨立集群管理器能夠實現簡單的資源調度,但卻只能做到跨應用程序FIFO(即先入先出)這種簡單的程度,而且無法實現資源識別。

總體而言,Spark開發人員必須更傾向于裸機層面思維,而非利用像Hive或者Pig這樣的高級應用程序將數據分析作為思考出發點。舉例來說,由于驅動程序充當著調度任務的執行者,它需要最大程度與這些工作節點保持緊密距離、從而避免網絡延遲對執行效果造成的負面影響。

驅動程序與集群管理器高可用性這兩者都很重要。如果驅動程序停止工作,任務也將立即中止。而如果集群管理器出現故障,新的任務則無法被提交至其中,不過現有任務仍將繼續保持執行。在Spark 1.1版本當中,主高可用性機制由獨立Spark集群通過ZooKeeper實現,但驅動程序卻缺乏與高可用性相關的保障措施。

將一套Spark集群當中的性能最大程度壓榨出來更像是一種魔法甚至妖術,因為其中需要涉及對驅動程序、執行器、內存以及內核的自由組合及反復實驗,同時根據特定集群管理器對CPU及內存使用率加以優化。目前關于此類運維任務的指導性文檔還非常稀缺,而且大家可能需要與同事進行頻繁溝通并深入閱讀源代碼來實現這一目標。

 

 

Spark應用程序架構。Spark目前可以被部署在Spark獨立、YARN或者Mesos集群當中。請注意,運行在集群當中的每一個驅動程序都會以彼此獨立的方式進行資源分配與任務調度。

#p#

監控與運維

每一款驅動程序都擁有自己的一套Web UI,通常為端口4040,其中顯示所有實用性信息——包括當前運行任務、調度程度、執行器、階段、內存與存儲使用率、RDD等等。這套UI主要充當信息交付工具,而非針對Spark應用程序或者集群的管理方案。當然,這也是調試以及性能調整之前的基礎性工具——我們需要了解的、與應用程序運行密切相關的幾乎所有信息都能在這里找到。

雖然算是個不錯的開始,但這套Web UI在細節方面仍然顯得比較粗糙。舉例來說,要想查看任務歷史記錄、我們需要導航到一臺獨立的歷史服務器,除非大家所使用的是處于獨立模式下的集群管理器。不過最大的缺點在于,這套Web UI缺少對于運維信息的管理與控制能力。啟動與中止節點運行、查看節點運行狀況以及其它一些集群層面的統計信息在這里一概無法實現。總體而言,Spark集群的運行仍然停留在命令行操作時代。

 

Spark的Web UI提供了與當前運行任務相關的豐富信息,但所有指向集群的管理操作則需要完全通過命令行來實現。

Spark對決Tez

事實上,Spark與Tez都采用有向無環圖(簡稱DAG)執行方式,這兩套框架之間的關系就如蘋果與桔子般不分軒輊,而最大的差別在于其受眾以及設計思路。即使如此,我發現很多IT部門仍然沒能分清這兩款框架間的差異所在。

Tez是一款應用程序框架,設計目的在于幫助開發人員編寫出更為高效的多級MapReduce任務。舉例來說,在Hive 0.13版本當中,HQL(即Hive查詢語言)由語言編譯器負責解析并作為Tez DAG進行渲染,即將數據流映射至處理節點處以實現高效執行。Tez DAG由應用程序以邊緣到邊緣、頂點到頂點的方式進行構建。用戶則完全不需要了解Tez DAG的構建方式,甚至感受不到它的存在。

Spark與Tez之間的真正差異在于二者實現方式的不同。在Spark應用程序當中,同樣的工作節點通過跨迭代實現重新使用,這就消除了JVM啟動所帶來的資源成本。Spark工作節點還能夠對變量進行緩存處理,從而消除對數值進行跨迭代重新讀取與重新計算的需要。正是借鑒著以上幾大特征,Spark才能夠在迭代編程當中如魚得水、充分發力。而由此帶來的缺點是,Spark應用程序會消耗大量集群資源、特別是在緩存過期的情況下。我們很難在集群運行著Spark的時候對資源進行優化。

盡管支持多級任務執行機制,Tez仍然不具備任何形式的緩存處理能力。雖然變量能夠在一定程度上得到緩存處理,從而保證規劃器在可能的情況下保證調度任務從同節點中的上一級處獲取必要數值,但Tez當中仍然未能提供任何一種經過妥善規劃的跨迭代或者變量廣播機制。除此之外,Tez任務還需要反復啟動JVM,而這會帶來額外的資源開銷。因此,Tez更適合處理那些規模極為龐大的數據集,在這種情況下啟動時間只占整體任務處理周期的一小部分、幾乎可以忽略不計。

在大多數情況下,Hadoop社區對此都擁有很好的移花接木式解決方案,而且其中最出色的部分機制已經能夠作用于其它項目。舉例來說,YARN-1197將允許Spark執行器以動態方式進行規模調整,這樣它們就能夠在合適的條件下將資源返還給集群。與之相似,Stinger.next將為Hive等傳統Hadoop應用程序帶來由跨查詢緩存提供的巨大優勢。

#p#

一整套集成化分析生態系統

Spark所采用的底層RDD抽象機制構建起整個Spark生態系統的核心數據結構。在機器學習(MLlib)、數據查詢(Spark SQL)、圖形分析(GraphX)以及流運行(Spark Streaming)等模塊的共同支持下,開發人員能夠以無縫化方式使用來自任意單一應用程序的庫。

舉例來說,開發人員可以根據HDFS當中的某個文件創建一個RDD,將該RDD轉換為SchemaRDD、利用Spark SQL對其進行查詢,而后將結果交付給MLlib庫。最后,結果RDD可以被插入到Spark Streaming當中,從而充當消息交付機制的預測性模型。如果要在不使用Spark項目的情況下實現以上目標,大家需要使用多套庫、對數據結構進行封包與轉換,并投入大量時間與精力對其加以部署。總體而言,將三到上個在最初設計當中并未考慮過協作場景的應用程序整合在一起絕對不是正常人的脆弱心靈所能承受的沉重負擔。

堆棧集成機制讓Spark在交互式數據探索與同一數據集內的重復性函數應用領域擁有著不可替代的重要價值。機器學習正是Spark項目大展拳腳的理想場景,而在不同生態系統之間以透明方式實現RDD共享的特性更是大大簡化了現代數據分析應用程序的編寫與部署流程。

然而,這些優勢的實現并非全無代價。在1.x系列版本當中,Spark系統在諸多細節上還顯得相當粗糙。具體而言,缺乏安全性(Spark無法運行在Kerberised集群當中,也不具備任務控制功能)、缺乏企業級運維功能、說明文檔質量糟糕,而且嚴苛的稀缺性技能要求意味著目前Spark仍然只適合早期實驗性部署或者那些有能力滿足大規模機器學習模型必需條件且愿意為其構建支付任何投入的大型企業。

到底應不應該部署Spark算是一個“仁者見仁,智者見智”的開放性議題。對于一部分組織而言,Spark這套速度極快的內存內分析引擎能夠帶來諸多優勢,從而輕松為其帶來理想的投資回報表現。但對于另一些組織來說,那些雖然速度相對較慢但卻更為成熟的工具仍然是其不二之選,畢竟它們擁有適合企業需求的完善功能而且更容易找到有能力對其進行管理與控制的技術人員。

無論如何,我們都要承認Spark的積極意義。Spark項目將一系列創新型思維帶入了大數據處理市場,并且表現出極為強勁的發展勢頭。隨著其逐步成熟,可以肯定Spark將最終成為一支不容忽視的巨大力量。

Apache Spark 1.1.0 / Apache軟件基金會

總結性描述

作為一套配備精妙API以實現數據處理應用程序創建目標的高速內存內分析引擎,Spark在迭代工作負載這類需要重復訪問同一套或者多套數據集的領域——例如機器學習——表現出無可匹敵的競爭優勢。

基于Apache 2.0許可的開源項目

優勢

• 精妙且具備一致性保障的API幫助開發人員順利構建起數據處理應用程序

• 支持Hadoop集群上的交互式查詢與大規模數據集分析任務

• 在運行迭代工作負載時擁有高出Hadoop幾個數量級的速度表現

• 能夠以獨立配置、YARN、Hadoop MapReduce或者Mesos等方式部署在Hadoop集群當中

• RDD(即彈性分布式數據集)能夠在不同Spark項目之間順利共享,從而允許用戶將SQL、機器學習、流運行以及圖形等元素摻雜在同一程序當中

• Web UI提供與Spark集群及當前運行任務相關的各類實用性信息

缺點

• 安全性不理想

• 說明文檔質量糟糕

• 不具備集群資源管理能力

• 學習曲線不夠友好

英文:http://www.infoworld.com/article/2852235/hadoop/review-spark-lights-a-fire-under-big-data-processing.html

責任編輯:林師授 來源: 51CTO
相關推薦

2021-07-20 15:37:37

數據開發大數據Spark

2018-01-22 08:33:28

SparkHadoop計算

2018-07-25 15:31:51

SparkFlink大數據

2020-11-02 15:56:04

大數據數據庫技術

2018-12-07 14:50:35

大數據數據采集數據庫

2017-07-21 14:22:17

大數據大數據平臺數據處理

2012-05-31 14:37:10

Hadoop大數據

2011-12-08 09:56:14

Hadoop

2015-03-30 10:48:17

大數據大數據處理Hadoop

2015-09-10 13:35:45

云海大數據一體機

2022-11-17 11:52:35

pandasPySpark大數據

2020-07-22 08:13:22

大數據

2016-05-19 10:31:35

數據處理CassandraSpark

2015-03-16 14:54:06

大數據流式大數據大數據處理

2023-11-29 13:56:00

數據技巧

2012-11-28 20:56:03

浪潮一體機浪潮大數據

2023-12-13 10:22:04

APISpark數據

2015-11-09 09:58:31

大數據Lambda架構

2015-10-16 09:50:10

2015-12-07 15:05:39

UCloudUHadoop大數據
點贊
收藏

51CTO技術棧公眾號

美女视频免费一区| 欧美日韩中文字幕一区二区三区| 亚洲欧洲一区二区在线播放| 91在线观看免费高清| 午夜少妇久久久久久久久| 91精品尤物| 色婷婷激情久久| 波多野结衣三级在线| 人妻精品一区一区三区蜜桃91| 免费看亚洲片| 不卡av在线网站| 女同性恋一区二区三区| 成人午夜亚洲| 亚洲蜜臀av乱码久久精品| 精品人伦一区二区三区| 一级黄色大毛片| 午夜综合激情| 九九久久精品一区| 日韩女同一区二区三区| 亚洲日本va午夜在线电影| 欧洲av一区二区嗯嗯嗯啊| 久久人人爽人人爽人人av| 高清av在线| 亚洲国产日韩欧美在线99| 麻豆成人小视频| 国产精品亚洲欧美在线播放| 亚洲视频成人| 久久成人这里只有精品| 久久精品视频18| 国产欧美三级电影| 欧美一级二级三级蜜桃| 欧美午夜性生活| av伦理在线| 亚洲男同1069视频| 日韩免费三级| 同心难改在线观看| 岛国一区二区在线观看| 成人自拍性视频| 日本精品入口免费视频| 在线视频免费在线观看一区二区| 久久这里有精品| 999久久久国产| 国产一区二区三区四区| 日韩高清免费在线| 欧美xxxxx精品| 综合成人在线| 日韩欧美国产精品| xxx中文字幕| 日韩电影免费观看高清完整版在线观看| 精品久久中文字幕| 国产婷婷一区二区三区| 暧暧视频在线免费观看| 亚洲综合网站在线观看| www.国产亚洲| √天堂8在线网| 亚洲黄色免费电影| 天堂8在线天堂资源bt| 日韩激情美女| 亚洲国产欧美在线| 无码 制服 丝袜 国产 另类| 国产深夜视频在线观看| 亚洲成人综合视频| 久久久亚洲精品无码| 国产夫妻在线播放| 日韩欧中文字幕| www.xxx亚洲| 美女视频一区| 4438x亚洲最大成人网| 天堂av手机在线| 日韩精品久久久久久久软件91| 日韩亚洲欧美中文三级| 亚洲成人av免费观看| 91精品国产自产在线丝袜啪| 亚洲韩国日本中文字幕| 成年人网站免费在线观看| 美女视频免费精品| 亚洲网址你懂得| 女同久久另类69精品国产| 亚洲成人国产| 国外视频精品毛片| 国产一级av毛片| 久久av一区| 国产精品久久久久久久一区探花| 亚洲熟妇无码久久精品| 国产毛片一区二区| 好看的日韩精品视频在线| 免费人成黄页在线观看忧物| 国产精品另类一区| 日韩精品综合在线| 88xx成人永久免费观看| 7777精品伊人久久久大香线蕉超级流畅| 日本中文字幕在线不卡| 欧美一级三级| 日韩一区二区久久久| 精品无码久久久久久久久| 首页欧美精品中文字幕| 亚洲精品日韩激情在线电影| 天堂av网在线| 综合亚洲深深色噜噜狠狠网站| 又大又硬又爽免费视频| 日韩欧美少妇| 精品久久久久久久久久久久久久久| 精品人妻一区二区三区香蕉 | 欧美亚洲综合另类| 香蕉视频xxxx| 精品国产一级毛片| 欧美激情在线一区| 中文字幕精品一区二| av一区二区三区四区| 中日韩在线视频| 成人欧美大片| 欧美va在线播放| 精品一区二区三孕妇视频| 最新日韩在线| 91久久久久久久久久久久久| 牛牛热在线视频| 夜夜爽夜夜爽精品视频| 日韩高清第一页| 免费久久精品| 久久久欧美精品| 99re只有精品| 国产精品毛片a∨一区二区三区| 中文字幕无码精品亚洲资源网久久| 国产精品久久久久久久久免费高清| 亚洲第一天堂无码专区| 日韩在线中文字幕视频| 男男视频亚洲欧美| 欧美日韩一区二区三| 97人澡人人添人人爽欧美| 日韩一区二区在线播放| 亚洲精品自拍视频在线观看| 久久久国产精品一区二区中文| 成人在线资源网址| 粗大黑人巨茎大战欧美成人| 欧美天堂一区二区三区| 久久久无码人妻精品一区| 红桃视频国产精品| 翡翠波斯猫1977年美国| 羞羞的视频在线观看| 91精品国产入口| 神马久久精品综合| 久久国产精品99久久人人澡| 日韩欧美激情一区二区| 欧美极品影院| 亚洲欧美日韩高清| 成人午夜视频在线播放| 91在线观看一区二区| 欧美黑人经典片免费观看| 久久综合社区| 欧美性在线视频| 亚洲av电影一区| 亚洲综合在线第一页| 无码av免费精品一区二区三区| 欧美精品成人| 国产精品久久国产精品| av成人福利| 亚洲精品美女网站| 成人在线免费看视频| 久久网站热最新地址| 日韩视频免费在线播放| 欧美一级本道电影免费专区| 国产精品视频xxxx| 黄色在线免费网站| 欧美一级二级三级蜜桃| 国产污视频在线看| 91在线小视频| 午夜dv内射一区二区| 日韩在线中文| **亚洲第一综合导航网站| 牛牛精品视频在线| 日韩高清a**址| 国产偷人爽久久久久久老妇app| 中国av一区二区三区| 永久免费黄色片| 亚洲国产清纯| 秋霞在线观看一区二区三区| 成人在线视频观看| 精品中文字幕在线2019| 性插视频在线观看| 欧美性色综合网| 美国黄色小视频| 99久久777色| 国产又粗又长又大的视频| 91久久电影| 久久66热这里只有精品| 成人黄色视屏网站| 久久久久久999| 国产精品二线| 日韩一区二区免费视频| 日本三级2019| 中文子幕无线码一区tr | www.亚洲精品| 美女一区二区三区视频| 狠狠干综合网| 亚洲精品国产精品国自产| 日韩免费精品| 国产国语刺激对白av不卡| 好了av在线| 亚洲女人被黑人巨大进入| 国产精品一区二区av白丝下载| 亚洲一区二区精品3399| 天堂在线中文视频| 成人毛片老司机大片| 中文字幕国产传媒| 亚洲久久视频| 男同互操gay射视频在线看| 天海翼亚洲一区二区三区| 亚洲xxxxx| 一呦二呦三呦精品国产| 国内精品久久久久久| 日本在线视频观看| 亚洲乱码国产乱码精品精天堂| 国产精品亚洲lv粉色| 欧美亚洲动漫精品| 九九热精品视频在线| 亚洲综合一区二区三区| av最新在线观看| 久久久99精品免费观看不卡| 妖精视频一区二区| 国产一区二区三区四区五区美女 | 国产精品影视在线观看| 麻豆传传媒久久久爱| 一区二区高清| 日韩欧美精品免费| 欧美日韩hd| 潘金莲一级淫片aaaaa免费看| 欧美日韩久久精品| 日本一区二区在线视频| 日韩超碰人人爽人人做人人添| 岛国视频一区| 一区二区精彩视频| 亚洲一区二区三区在线免费观看 | 国产精品 日韩| 国产精品成人**免费视频| 国产精品视频区1| 日本少妇一区| 国产精品日韩欧美| 九九精品调教| 欧美精品久久久久久久| 日本动漫同人动漫在线观看| 欧美另类精品xxxx孕妇| 成人看av片| 久久伊人免费视频| 亚洲七七久久综合桃花剧情介绍| 色偷偷9999www| 777电影在线观看| 中文日韩在线观看| av小片在线| 日韩在线视频播放| 国产午夜在线观看| 在线视频国产日韩| 天天综合视频在线观看| 精品国偷自产在线视频99| 日本三级在线视频| 久久中文久久字幕| 天堂av在线电影| 久久久久久久久久久91| www.8ⅹ8ⅹ羞羞漫画在线看| 久久久免费观看| 综合日韩av| 国产精品久久久久福利| 国产成人免费精品| 成人激情综合网| 亚洲网址在线观看| 久久久神马电影| 精品免费视频| 久久av秘一区二区三区| 国产一区日韩欧美| 日本三级免费观看| 久久国产人妖系列| 亚洲国产综合av| av不卡一区二区三区| 在线免费观看日韩av| 国产欧美一区二区三区在线看蜜臀 | 国产aⅴ夜夜欢一区二区三区| 国产天堂在线播放视频| 国产91精品久久久久| 成人午夜在线| 国产经典一区二区三区| 中文字幕精品影院| 中国成人在线视频| 亚洲看片一区| 久久婷五月综合| 粉嫩av亚洲一区二区图片| 久久久久久久久久久国产精品| 国产精品美女久久久久av爽李琼| 全程偷拍露脸中年夫妇| 欧美日韩国产一区中文午夜| 中文字幕永久在线视频| 亚洲成**性毛茸茸| av大全在线免费看| 韩日精品中文字幕| 成人综合网站| 国语精品免费视频| 国产精品91一区二区三区| 久久久久免费看黄a片app| 免费欧美在线视频| 国产婷婷在线观看| 中文字幕一区日韩精品欧美| 日本一区二区不卡在线| 成人激情电影在线| 欧美亚州韩日在线看免费版国语版| 中文字幕免费播放| 日韩午夜电影av| 国产青青草在线| 九九久久国产精品| 91成人在线| 精品91免费| 日本免费在线观看视频| 亚洲欧美日韩中文播放 | 国产精品久久久久久久| 怡红院av亚洲一区二区三区h| 老汉av免费一区二区三区| 日批免费观看视频| 亚洲日本丝袜连裤袜办公室| 亚洲 欧美 中文字幕| 欧美tk—视频vk| 日本中文字幕在线播放| 欧美性受xxxx白人性爽| 91蝌蚪精品视频| 这里只有精品66| 久久婷婷激情| 亚洲黄色免费在线观看| 夜夜亚洲天天久久| 国产精品特级毛片一区二区三区| 亚洲人成亚洲人成在线观看| 激情网站在线| 成人做爽爽免费视频| 日本不卡电影| 午夜视频在线瓜伦| 久久欧美一区二区| 色婷婷av国产精品| 欧美mv和日韩mv国产网站| 精品国产白色丝袜高跟鞋| 国产精品精品久久久| 五月激激激综合网色播| 国产av人人夜夜澡人人爽麻豆| 国产精品资源网| 国产日韩欧美在线观看视频| 欧美日韩精品系列| 日本精品在线| 成人h视频在线| 四季av一区二区三区免费观看| 激情综合网俺也去| 国产日韩欧美亚洲| 中文字幕av网站| 中文字幕在线国产精品| 男人天堂久久| 亚洲砖区区免费| 精品亚洲欧美一区| 久久久久99精品成人片试看| 欧美一区二区三区喷汁尤物| 理论片午午伦夜理片在线播放| 成人综合网网址| 欧美成人中文| 精品国产免费久久久久久婷婷| 亚洲一区二区欧美日韩| 天堂在线视频观看| 奇米成人av国产一区二区三区| 天堂网av成人| 国内外免费激情视频| 国产蜜臀av在线一区二区三区 | 欧美一区二区免费视频| 怡红院av在线| 精品国产_亚洲人成在线| 亚洲专区一区二区三区| 人妻一区二区视频| 99九九视频| 欧美色综合网| 亚洲一区二区在线免费| 日韩欧美aaa| 69视频在线观看| 成人在线视频网址| 久久aⅴ国产紧身牛仔裤| 国产农村妇女精品一区| 欧美一区二区福利在线| av在线最新| 亚洲精品一区国产精品| 国产乱码精品1区2区3区| 久草国产在线视频| 亚洲精选中文字幕| 日本亚洲欧洲无免费码在线| 97超碰国产精品| 国产亚洲女人久久久久毛片| 99在线观看精品视频| 欧美黄色三级网站| 亚洲精品亚洲人成在线| 亚洲欧美在线精品| 亚洲国产日韩av| 婷婷在线视频观看| 精品国产乱码一区二区三区四区| 青青青伊人色综合久久| 久久久久成人片免费观看蜜芽| 精品视频在线观看日韩| 成人污污视频| 老熟妇仑乱视频一区二区| 一区二区三区日韩精品| 国产小视频在线| 成人av中文| 美国av一区二区|