• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    A Scalable Method of Maintaining Order Statistics for Big Data Stream

    2019-07-18 01:59:18ZhaohuiZhangJianChenLigongChenQiuwenLiuLijunYangPengweiWangandYongjunZheng
    Computers Materials&Continua 2019年7期

    Zhaohui Zhang* , Jian Chen, Ligong Chen, Qiuwen Liu, Lijun Yang, Pengwei Wang,2,3 and Yongjun Zheng

    Abstract: Recently, there are some online quantile algorithms that work on how to analyze the order statistics about the high-volume and high-velocity data stream, but the drawback of these algorithms is not scalable because they take the GK algorithm as the subroutine, which is not known to be mergeable.Another drawback is that they can't maintain the correctness, which means the error will increase during the process of the window sliding.In this paper, we use a novel data structure to store the sketch that maintains the order statistics over sliding windows.Therefore three algorithms have been proposed based on the data structure.And the fixed-size window algorithm can keep the sketch of the last W elements.It is also scalable because of the mergeable property.The time-based window algorithm can always keep the sketch of the data in the last T time units.Finally, we provide the window aggregation algorithm which can help extend our algorithm into the distributed system.This provides a speed performance boost and makes it more suitable for modern applications such as system/network monitoring and anomaly detection.The experimental results show that our algorithm can not only achieve acceptable performance but also can actually maintain the correctness and be mergeable.

    Keywords: Big data stream, online analytical processing, sliding windows, mergeable data sketches.

    1 Introduction

    The traditional application is built on the concept of persistent data sets that are stored reliably in stable storage and queried or updated several times throughout their lifetime [Zhang, Zhang, Wang et al.(2018)].Nowadays, large volumes of stream data arise rapidly,such as transactions in bank account [Zhang, Zhou, Zhang et al.(2018)] or e-commerce business[Yu,Ding,Liu et al.(2018)],credit card operations,data collection in Internet of Things (IoT) [Miao, Liu, Xu et al.(2018)], information in disaster management systems[Wu, Yan, Liu et al.(2015); Xu, Zhang, Liu et al.(2012); Wang, Zhang and Pengwei(2018)], behavior data analysis and anomaly detection in large-scale network service system [Zhang, Ge, Wang et al.(2017); Zhang and Cui (2017)] and data mining in live streaming[Li,Zhang,Xu et al.(2018)]etc.Analysis of order statistics plays an important role in analyzing data stream,which can help us to know the distribution of the data,make decisions, detect the anomaly data or help further data mining.Within applications, the high-volume and high-velocity features and limited memory make data stream pass only once,which means we can not store all the data in the memory and access the data that is already passed away.But if an approximate answer is acceptable, there are some online quantile algorithms that can maintain order statistics over data stream in the sketch and then we can get the approximate answer by querying the sketch.Combined with the sliding window, the online quantile algorithm can help us understand the order statistics or distribution of the recent data in the data stream.

    In this paper, we propose a method that can maintain the data stream order statistics over the sliding window including fixed-size window and time-based window.A sketch will be created to store the stream data over the sliding window by our algorithm.Within a certain range of errors, we can get the result of quantile query or rank query from the sketch in a very short time.Compared to other algorithms that have been used to solve this kind of problem [Lin, Lu, Xu et al.(2004); Tangwongsan, Hirzel and Schneider (2018)],the advantages of our algorithm are the correctness-the error will not increase during the window updating and mergeable property-the sketches of two windows can be merged into one sketch.

    And the remainder of this paper is constructed as follows.Section II introduces the related work that have been done till now.Section III gives some definitions that will be used in this paper and the basic data structure that we will use.Section IV represents our method to solve quantiles problem on the sliding window, including the basic structure,fixed-size window algorithm, time-based algorithm, and window aggregation.In section V, we designed some experiments to test the performance of our algorithm.And the last section V I gives conclusions of our work and describes the future work.

    2 Related work

    For the quantile problem, there are two surveys [Wang, Luo, Yi et al.(2013); Greenwald and Khanna (2016)] explain the status of research in terms of theory and algorithm in a very easy-to-understand way.In long-term research of quantile problem,there exist several algorithms to solve this problem.Greenwald et al.[Greenwald and Khanna(2001)]created an intricate deterministic algorithm(GK)that requiresspace.This method improved upon a deterministic(MRL)summary of Manku et al.[Manku,Rajagopalan and Lindsay (1998)] and a summary implied by Munro et al.[Munro and Paterson (1978)]which usespace.But Agarwal, et al.[Agarwal, Cormode, Huang et al.(2013)]prove that GK algorithm is not fully mergeable.Karnin et al.[Karnin, Lang and Liberty (2016)] created the optimal quantile algorithm as KLL, the best version of this algorithm requiresThe KLL algorithm is considered to be the optimal quantile algorithm until now both in terms of space usage.Considering the sliding window,Lin et al.[Lin,Lu,Xu et al.(2004)]was the first one to propose the quantile approximation solution in the sliding window model.And he achieved space usageArasu et al.[Arasu and Manku (2004)] improved this toThese algorithms are all based on the idea that split the window into small chunks and then use quantile algorithm to summarize each chunk.Yu et al.[Yu, Crouch, Chen et al.(2016)]proposed a sliding window algorithm called exponential histograms and used the GK algorithm as a subroutine, which is considered the best algorithm over sliding window until now, to the author's knowledge.But the approximation error will increase during the updating of the sliding window.For the window aggregation problem, a survey [Tangwongsan,Hirzel and Schneider(2018)]explain the theory and the current methods.Odysseas et al.[Papapetrou,Garofalakis and Deligiannakis(2012)]create a method can sketch distributed sliding-window data streams.

    Considering the SW-GK is the optimal algorithm till now and it achieves great performance on the insert time and query time.But the drawback of this algorithm is that the window update way of SW-GK is to merge two structures and the approximation error will increase after each merge operation.The algorithms have been mentioned above take GK algorithm as a subroutine which is known don't have the mergeable property, so these algorithms can't aggregate different windows,which means they are not scalable.

    3 Definition and model

    3.1 Quantile and rank

    Quantile and rank are both order statistics of data:the quantile φ(x)of a set N is an element x such that φ | N |elements of N are less than or equal to x.Given a set of elements x1,...,xn,the rank of x in a stream N as R(x) = φ | N |,which represents the number of elements such that xi≤x.And the quantile of a value x is the fraction of elements in the stream such that xi≤x.

    In the ?-approximate problem,the data stream has N numeric elements.An additive error ?n for R(x)is an ? approximation of its rank.In addition,when we query for a φ-quantile,where 0 ≤φ ≤1,we will get the result that is guaranteed to be in the[φ-?,φ+?]quantile range.

    3.2 Sliding window

    A data stream is a sequence of data elements available for a period of time.At any point in time,a sliding window over a stream is a bag of last W elements of the stream seen so far.To help us understand the recent data, we consider two types of sliding windows,the fixed-size sliding window whose window size is fixed and the time-based window whose window size varies over time.Formally,both types of windows are modeled using two basic operations-insert operation (insert a new element into the window) and delete operation(delete the oldest element from the window).

    3.3 Basic structure

    We firstly begin with the work of Karnin et al.[Karnin,Lang and Liberty(2016);Agarwal,Cormode,Huang et al.(2013)],which uses a special data structure to store the data over the whole stream.Here is the basic data structure of the algorithm-a compactor.A compactor can store k elements and each element has a weight of w.Different layer compactor has different capacity and weight.The compactor has a compaction operation, which can compact its k elements into k/2 elements of weight 2w.When the compactor finishes the compaction operation, we feed the results into the next layer compactor and so on.To maintain the order statistics and answer the quantile query, the requirement is that the elements in the compactor need to be in the order before compaction operation.During the compaction operation, either the even or the odd elements(based on the index)in the sequence are chosen.The unchosen elements are discarded,while the weight of the chosen elements is doubled.The error of the rank estimation before and after the compaction defers by at most w regardless of k.Fig.1 shows a simple example of a compactor, if its rank of a query in the compactor is even, the rank is unchanged.If it is odd, the rank is increased or decreased by w with equal probability.Fig.2 shows the structure of the compactors.The new element first comes to the first layer.When the first layer is full,compact the data in this layer and put the results into the second layer.When the second layer is full,do the similar operation and so on.

    Figure 2: Compactors structure

    We define the H as the numbers of layers of compactors and each compactor has its own capacity, denoted by khwith the indexes by their height h ∈1,...,H.The weight of elements at height h is wh= 2h-1.Considering the requirement of the compaction operation,the capacity of smallest compactor need be at least 2.For brevity,we set k =kH.It gives that kh≥kcH-hfor c ∈(0.5,1).

    Lemma 3.1.There exists an algorithm that can compute an ? approximate for the rank or quantile problem whose space complexity isThis algorithm also produces mergeable summaries[Karnin,Lang and Liberty(2016)].

    4 Method

    4.1 Fixed-size window algorithm

    For the fixed-size window, the insert operation is always combined with the delete operation.But we use the compactors to store the data,the element in different compactor has different weight with respect to the height, which means that one element doesn't represent itself, it has the weight, it records the number of compaction operation.So in the fixed-size window situation,we could not just delete the oldest element when the new element comes.Then we try to use a special array of size H to help to determine if it is the time to discard the oldest element in the sliding window.The index of this array is based on the height of the compactors.When the array of one layer count reaches to 2, turn on the trigger of this layer.When the trigger of the highest layer is on,it means it can discard the oldest element in the sliding window.

    Here is the algorithm that we combine the insert operation and delete operation together.First, we have two conditions, one is that the current window is not full, which means we can continue to put the data into the window.Another is that the current window is full, which means the window sketch has represented W elements, with the new element comes,the oldest element should be discarded from the sketch.Note that the oldest element must be in the highest compactor, for example, kHrepresents the capacity of the highest compactor and wHrepresents the weight of the per element in the highest compactor.Our goal is to discard the oldest element in the window, according to the structure, when the new 2wHelements come in,theoretically,the oldest element in the sketch can be discarded.According to the compaction operation, for every layer, the data are in the order, we can compact the oldest element in this layer with its surrounding element(left or right with the same probability),so we use a H size array to trigger compaction operation.For the highest compactor,we pretend to do one compaction operation for the two elements-just deleting the oldest two elements.For other compactors,if the trigger is on,find the oldest element and its neighbor, discard one with the same probability and insert the other into the next compactor.In the end,update the trigger array.Note that the insert operation is finding the correct position to keep elements in the order in the compactors including insert operation on into the first layer.Fig.3 and Algorithm 1 describes the process of updating fixed-size window.For each layer, when the trigger is on, find the oldest element and its neighbor,discard one of them with equal probability and put the other into the next layer.For the last layer, after 2wHelements come, the trigger of this layer is on, discard the oldest two elements.The red circle represents the discarded one and yellow circle represents the one should be put into the next layer.

    Algorithm 1 fixed-size window algorithm 1: procedure ADD(item)?2:count ←count+1 3:if count <W then Sketch.update(item)4:else if count=W then 5:for h=0 →H do SortByValue(compactors[h])6:else 7:trigger[0]++8:for h=0 →H do 9:if h=H then 10:if trigger[h]=2 then 11:DeleteTwoOledst(h)12:else 13:if trigger[h]=2 then 14:One ←FindOldest(h)15:Two ←NearBy(One)16:if Random <0.5 then 17:Choose ←One 18:else 19:Choose ←Two 20:Delete(One,Two)21:Insert(h+1,Choose)22:trigger[h+1]++23:trigger[h]←0

    Theorem 4.1.Our algorithm with W size window,has space complexitylog(?W)).And the update time complexity isand query complexity isThe correctness of our algorithm is unchanged, which can keep the rank query procedure still returns a value v with rank between(q-?)W and(q+?)W.

    Proof.When the window is full,it means that this data structure is stable and this sketch represent W elements.Then we look at the data structure.

    Firstly, we know that the second compactor from the top compacted its elements at least once.Therefore W/kH-1wH-1≥1 which gives

    khrepresents the capacity of the compactor at height h and wh= 2h-1represents the weight of the per element in this compactor.Then we define mhto represent the number of compaction operations at height h.

    Figure 3: The process of updating fixed-size window

    Then we use R(k,h) to represent the rank of x at height h.Note that each compaction operation in layer h either leaves the rank of x unchanged or adds wh or subtract wh with equal probability.Therefore,err(x,h) = R(x,h)-R(x,h-1) =where E[Xi,h] = 0 and |Xi,h|≤1.The final discrepancy between real rank of x and its our approximate rank=R(x,H)is

    Lemma 4.1(Hoeffding).Let x1,...,Xmbe independent random variables, each with an expected value of zero,taking values in the range[-wi,wi].Then for any t >0,we got

    According to the Hoeffding's inequality,and we let ?W be the total error.We can get the inequality below:

    A computation shows that

    Substituting Eqs.(1)and(6)into Eq.(5)and setting C =(2c-1)c/4 we get the inequality

    Note that the algorithm has H layers and kh≥kcH-h,c ∈(0.5,1),we let kh=「kcH-h?+1.In our algorithm,the total space usage includes two parts:the compactors and the trigger array,which is

    According to Eq.(7)and requiring failure probability at most δ we conclude that it suffices to setThen we set δ =Ω(?)suffices to union bound over the failure probabilities of O(1/?)different quantiles.This provides a fixed-window algorithm for the quantiles problem of space

    When the window is full, according to the algorithm, we can find that after two elements come, we need do one find oldest operation based on the time data arrives and one insert operation which inserts the chosen data into the next layer,which needs to find the correct position to make the elements in this layer are still in the order.In the first layer,we need to traverse the elements of this layer to find the oldest element and use binary search in the second layer to find the position to insert.After four elements come,there will be one find operation and one insert operation in the second layer and two find operations and two insert operations in the first layer, etc.What's more, we need also mention that inserting every element into the first layer also need to keep all the elements in the order in the first layer.So we can get the time cost per m elements,Based on the knowledgeand c ∈(0.5,1),the amortized time is According to the previous knowledge about k, we can get that the final update time complexity is

    The query operation is to find all the elements stored in the compactors which are less than the given value and sum their weights together.Considering the compactors always contains the sorted elements,we could use the binary search to find the elements less than the given one,which gives the query time

    Considering that H can be represent by thethe final query time complexity will be

    During the execution of our algorithm, the height of compactors is not changed.Every compactor can have two more element at most and each compactor still leaves the rank of the x unchanged or add whor subtract whwith equal probability.For the layer h, the err(x,h)is unchanged.So the total error is stillThis means that our algorithm can maintain the correctness that the rank query procedure returns a value v with a rank between(q-?)W and(q+?)W .

    4.2 Time-based window algorithm

    For the time-based window,when a new item comes,put it into the first compactor.Then if the compactor is full, do the compaction operation.Based on the time the new item contains, compute the window threshold.Then do the delete operation, for every item stored in the compactors,if its time before the threshold,delete the item.

    Algorithm 2 time based window algorithm 1: procedure ADD2(item,timelength)2:Sketch.update(item)3:timeNow ←getTimeNow()4:T ←timeNow-timelength 5:for h=0 →H do 6:for j =0 →len(compactors[h])do 7:if compactor[h][j].time <T then 8:Delete(compactor[h][j])

    Theorem 4.2.Setting W′to the elements in the current time-based window,our algorithm with time-based window has update timeand query time

    Proof.Note that every update operation needs traverse all the elements to delete the expired elements.The space usage isSo the update time isSimilarly, the query operation also need to traverse all the data,which givesquery time.

    4.3 Window aggregation

    Aggregating two windows means that merge the sketches of the two windows together.Firstly, let the small(the number of layer is small) one grow until it has at least as many compactors as the other.Then, Append the elements in same height compactors.Each level that contains more than khelements need do one compaction operation.

    w aggregate algorithm 1: procedure AGGREGATE(s1,s2)2:if s1.height <s2.height then 3:s1.grow()4:else 5:s2.grow()6:for h=0 →H do 7:s1.compactor[h].add(s2.compactor[h])8:for h=0 →H do 9:if len(s1.compactor[h])>kh then 10:s1.compactor[h].compact

    According to this mergeable property, we can extend our algorithm to the distributed environment, which can handle more huge data.Here is our distributed system structure,when the data comes,it will first come to the process point and then will be allocated to the different machines.Every machine uses our algorithm to sketch the stream data separately.Then merge all the sketches together.For example,if we want to analyze the data in the last 5 minutes.The data stream will be allocated to three nodes with Round-Robin Scheduling and every node only need to update 1/3 data.Then after every 30 seconds, we merge all the sketches into the final sketch.In this way, we can consider the final sketch maintains the order statistics of the last 5 minutes data.If we want to do some queries,we can get the approximate result from the final sketch.Fig.2.describes this system structure.For every window, the time resolution is 5 minutes.After every 30 seconds, we aggregate all the windows and get the final sketch.Then we query the final sketch for analyzing the order statistics of the recent 5 minutes.

    Figure 4: System structure.

    5 Experiments

    We mainly implemented our fixed-size algorithm by using Python and did some experiments to prove the performance of our algorithm.Experiments were run on a Core i5 2.1 GHz CPU computer with 8 Gb memory running Windows 10.The first experiment is a simple example to illustrate that our algorithm can really work.The second and third experiments are to test the insert operation and query operation time,separately.The fourth experiment is to calculate the storage that our algorithm need use.The fifth experiment is to prove the correctness of our algorithm,which means that the error between the real rank and the sketch rank will not increase during the process of the window sliding.The last experiment is to prove the mergeability of our algorithm.

    5.1 A simple example

    The parameters of our algorithm are k and W, where k is the maximum capacity of all compactors as we explained before and W is the window size.In this simple experiment,we set the k to 32 and W to 500.We use the Cumulative Distribution Function to describe the order statistics of the data.Fig.5 shows that the distribution of the last 500 elements,which are the end of the data stream.And Fig.6 describes the distribution generated by the sketch stored in our algorithm of the last 500 elements.Comparing Fig.5 and Fig.6,we can see that these two distributions are pretty similar,which means that our algorithm can actually maintain the order statistics over the sliding window.

    Figure 5: The CDF of the real data

    Figure 6: The CDF of the sketch data

    Figure 7: The insert time

    Figure 8: The query time

    5.2 Insert time experiment

    The previous section gives the insert time complexity by math derivation.In this section,we did an experiment to prove that the insert time is acceptable.We used a random dataset including 1000000 entries, set different parameters k and W and use this dataset to run our fixed-size sliding window algorithm.We calculate the running time as the insert time.In this experiment, we set different k, W and get different insert time.Fig.7 shows the relationship between the insert time and k and W.

    From Fig.7,we can see that the insert time will rise with the increase of k and the window size doesn't have great influence on the insert time when the k is not big.But when k is set to 256 or much bigger, the influence of W will become longer.When the k is small,the insert time is pretty acceptable.Considering the window aggregation, we can extend our algorithm into the distributed environment,it will reduce the insert time dramatically.It means we can always control the insert time in a range that we want.

    5.3 Query time experiment

    Similarly, with the insert time experiment, we use the same dataset and the same parameters.After 10 elements,we query the rank or quantile of the value of the incoming element,then calculate the total query time.Fig.8 shows the result of the query time.

    From Fig.8,when the k is set small the query operation is very pretty quick and not easily influenced by the window size.When the k is set large,the bigger window size has longer query time.

    5.4 Sketch size experiment

    From another point of view, the value of k determines the accuracy of the sketch, the greater the k value, the higher the accuracy, when the k become higher, the accuracy of the insertion time,query time,storage size will increase.Fig.9 describes the relationship between the sketch size and parameters k,W.The effect of k on storage size is greater than the value of W.For example,if we set k to 32,we may use approximately 100 elements to represent 1000 elements in the sliding window, even the window size increase to 100000 the storage size will increase to 125-a very small influence.

    Figure 9: The sketch storage

    Figure 10: The correctness test

    5.5 Correctness experiment

    The interesting part of our algorithm is that our algorithm can maintain the same correctness- the error will not increase during the process of the window sliding.This property has been proved in the previous section.Here is a simple example to illustrate this property,we set k to 128,W to 100000 and query the rank 1000 times during the process of the window sliding.We compare the real rank and our rank from the sketch and calculate the error between them.Fig.10 shows that the errors between real rank and our result during the 1000 queries.We can see the error is controlled in a certain range during the 1000 queries,which means the error did not increase during the process of the window sliding.

    5.6 Window aggregation experiment

    In the previous part, we have proposed the window aggregation algorithm, which means that the sketches of two windows can be merged into one window sketch.So in this section,we also implemented the window aggregation algorithm on our dataset.We split the stream data into two parts and each part runs one 500-size window algorithm.In the end, we merged these two sketches into one.We also use one program to run the 1000-size window algorithm.We also use CDF to describe the distribution of the data.Fig.11 describes the result of the 1000-size window algorithm and Fig.12 describes the result of the merged sketch of two 500-size window sketches.From Fig.11 and Fig.12,these two results are pretty similar and these two sketches can represent the distribution of the origin data.In this way,we also prove that our algorithm can actually be merged.

    Figure 11: The CDF of 1000-size sketch

    Figure 12: The CDF of merged sketch

    6 Conclusions

    In this paper,we propose a novel method that can maintain the stream data order statistics over the sliding fixed-size window, which can answer the quantile or rank query in a short time.The experiments show that our algorithm works properly and the insert time and query time are also both acceptable.Unlike other algorithms, our algorithm has the mergeable property and pay more attention to the correctness-the error will not increase during the process of the window sliding.

    We also propose a time-based window algorithm, which is more flexible in different scenarios.In addition, the window aggregation algorithm enables parallel processing,which gives the opportunity to extend the quantile online algorithm into the distributed system.This provides a speed performance boost and makes it more suitable for modern applications such as system monitoring and anomaly detection.

    For the future work,we are considering that if we accept the random method,the sampler is considered to be an effective method in the stream processing area.In the future,we are going to combine the sampler and our algorithm together to make further improvement in our algorithm.

    Acknowledgement:This work was supported by National Natural Science Foundation of China(Nos.61472004,61602109),Shanghai Science and Technology Innovation Action Plan Project(No.16511100903)

    午夜a级毛片| 成人高潮视频无遮挡免费网站| 亚洲成人久久爱视频| av女优亚洲男人天堂| 欧美乱妇无乱码| 最近在线观看免费完整版| 美女高潮的动态| a级一级毛片免费在线观看| 精品国内亚洲2022精品成人| 国产v大片淫在线免费观看| 一个人免费在线观看电影| www.999成人在线观看| 一a级毛片在线观看| 搡老岳熟女国产| 99久久久亚洲精品蜜臀av| 亚洲精品亚洲一区二区| 国产一区二区在线观看日韩 | 色av中文字幕| 成人性生交大片免费视频hd| 男女视频在线观看网站免费| 69av精品久久久久久| 免费观看人在逋| 性色avwww在线观看| 中文字幕精品亚洲无线码一区| 性欧美人与动物交配| 成人性生交大片免费视频hd| 香蕉丝袜av| 99热只有精品国产| 国产精品,欧美在线| www.色视频.com| 亚洲精品色激情综合| 超碰av人人做人人爽久久 | 在线观看午夜福利视频| 亚洲精品美女久久久久99蜜臀| 黄色女人牲交| 亚洲美女黄片视频| 久久国产乱子伦精品免费另类| 久久国产乱子伦精品免费另类| 国产蜜桃级精品一区二区三区| 欧美一区二区国产精品久久精品| 制服丝袜大香蕉在线| 欧美一区二区亚洲| 亚洲国产欧洲综合997久久,| 97碰自拍视频| 国产av在哪里看| 亚洲成人久久性| 成年版毛片免费区| av在线蜜桃| 亚洲精品一卡2卡三卡4卡5卡| 亚洲精品在线美女| 少妇熟女aⅴ在线视频| 国产午夜精品论理片| 国产激情欧美一区二区| 亚洲在线观看片| 黑人欧美特级aaaaaa片| 天堂av国产一区二区熟女人妻| 757午夜福利合集在线观看| 99视频精品全部免费 在线| 国产精品国产高清国产av| 丁香六月欧美| 亚洲在线自拍视频| 可以在线观看毛片的网站| 精品国内亚洲2022精品成人| 国产成+人综合+亚洲专区| 99久久久亚洲精品蜜臀av| 色在线成人网| 一a级毛片在线观看| 99久久久亚洲精品蜜臀av| 在线天堂最新版资源| 免费av不卡在线播放| 亚洲最大成人手机在线| 国产成人aa在线观看| 亚洲一区高清亚洲精品| 天堂影院成人在线观看| 国内精品久久久久精免费| 色av中文字幕| 欧美日韩亚洲国产一区二区在线观看| 欧美日韩亚洲国产一区二区在线观看| 真实男女啪啪啪动态图| 99久久精品一区二区三区| 亚洲国产精品合色在线| 久久这里只有精品中国| 性色avwww在线观看| 真实男女啪啪啪动态图| 国产高潮美女av| 深夜精品福利| 最近最新中文字幕大全免费视频| 亚洲av免费高清在线观看| 国产美女午夜福利| a在线观看视频网站| 搡老妇女老女人老熟妇| 亚洲av第一区精品v没综合| 老鸭窝网址在线观看| bbb黄色大片| 午夜日韩欧美国产| 国产三级中文精品| 午夜免费观看网址| 亚洲狠狠婷婷综合久久图片| 久久久精品欧美日韩精品| 一夜夜www| 久久久精品欧美日韩精品| 搡老妇女老女人老熟妇| 一夜夜www| 毛片女人毛片| 国产69精品久久久久777片| 国产精品永久免费网站| 丁香六月欧美| 男女那种视频在线观看| 国产精品亚洲av一区麻豆| 99久久综合精品五月天人人| 尤物成人国产欧美一区二区三区| 亚洲久久久久久中文字幕| 中文字幕人妻熟人妻熟丝袜美 | 久久久久久国产a免费观看| 一个人观看的视频www高清免费观看| 欧美成狂野欧美在线观看| 国产淫片久久久久久久久 | 97人妻精品一区二区三区麻豆| 久久精品影院6| а√天堂www在线а√下载| 精品熟女少妇八av免费久了| 内地一区二区视频在线| 美女被艹到高潮喷水动态| 岛国在线观看网站| 每晚都被弄得嗷嗷叫到高潮| 黄色女人牲交| 欧美日韩乱码在线| 成人午夜高清在线视频| 色精品久久人妻99蜜桃| 日韩亚洲欧美综合| 麻豆国产av国片精品| 国产美女午夜福利| 久久伊人香网站| 成人永久免费在线观看视频| 久久久久久久久大av| 精品久久久久久久末码| 成年女人毛片免费观看观看9| 久久人妻av系列| 国产激情欧美一区二区| 国产精品一区二区免费欧美| 怎么达到女性高潮| 国产亚洲精品av在线| 亚洲av五月六月丁香网| 久久欧美精品欧美久久欧美| 一个人免费在线观看的高清视频| 黄色片一级片一级黄色片| 精品久久久久久久久久久久久| 亚洲一区二区三区不卡视频| 两性午夜刺激爽爽歪歪视频在线观看| 黄色成人免费大全| 我的老师免费观看完整版| 中文字幕人成人乱码亚洲影| 国产精品一及| 我要搜黄色片| aaaaa片日本免费| a级一级毛片免费在线观看| 国产极品精品免费视频能看的| 国产99白浆流出| 99国产精品一区二区三区| av天堂中文字幕网| 麻豆久久精品国产亚洲av| 丁香欧美五月| 变态另类丝袜制服| 青草久久国产| 757午夜福利合集在线观看| 美女黄网站色视频| 日韩有码中文字幕| 可以在线观看毛片的网站| 欧美三级亚洲精品| 日本与韩国留学比较| 村上凉子中文字幕在线| 他把我摸到了高潮在线观看| 国产av不卡久久| 欧美成人一区二区免费高清观看| 欧美中文日本在线观看视频| 久久人妻av系列| 国产精品99久久99久久久不卡| 男女床上黄色一级片免费看| 很黄的视频免费| 麻豆一二三区av精品| 999久久久精品免费观看国产| 日韩成人在线观看一区二区三区| 国产亚洲欧美98| 天堂影院成人在线观看| 美女被艹到高潮喷水动态| 国语自产精品视频在线第100页| 亚洲精品亚洲一区二区| 一进一出好大好爽视频| a级毛片a级免费在线| 日韩有码中文字幕| av福利片在线观看| 国产精品女同一区二区软件 | 国产欧美日韩一区二区三| 日本免费a在线| 国产精品 国内视频| 亚洲最大成人手机在线| 亚洲一区高清亚洲精品| 国产成人a区在线观看| 天天一区二区日本电影三级| 亚洲av成人不卡在线观看播放网| 99在线人妻在线中文字幕| xxxwww97欧美| 女同久久另类99精品国产91| 午夜免费观看网址| 黄片大片在线免费观看| 老司机午夜福利在线观看视频| 国产在视频线在精品| 9191精品国产免费久久| 三级男女做爰猛烈吃奶摸视频| 成人国产一区最新在线观看| 色综合亚洲欧美另类图片| 天天躁日日操中文字幕| 精品人妻一区二区三区麻豆 | 亚洲人成网站在线播| 成人一区二区视频在线观看| 在线观看66精品国产| 久久久久久人人人人人| 村上凉子中文字幕在线| 免费高清视频大片| 久久精品91无色码中文字幕| 色av中文字幕| 国产毛片a区久久久久| 少妇丰满av| 嫩草影院精品99| 亚洲五月婷婷丁香| 成年免费大片在线观看| 亚洲人成网站高清观看| 国产精品1区2区在线观看.| 97人妻精品一区二区三区麻豆| 国产三级黄色录像| 日韩有码中文字幕| 757午夜福利合集在线观看| 亚洲熟妇熟女久久| 两个人看的免费小视频| 亚洲片人在线观看| 成人鲁丝片一二三区免费| 免费无遮挡裸体视频| 国产高清激情床上av| 亚洲七黄色美女视频| 99精品久久久久人妻精品| 国产日本99.免费观看| 国产高清videossex| 波野结衣二区三区在线 | 在线观看一区二区三区| 亚洲五月天丁香| 在线播放无遮挡| 国产野战对白在线观看| 国产高清有码在线观看视频| 精品欧美国产一区二区三| 色av中文字幕| 国产欧美日韩精品一区二区| 亚洲一区二区三区不卡视频| 在线天堂最新版资源| 亚洲美女视频黄频| 搡老妇女老女人老熟妇| 精品无人区乱码1区二区| 无限看片的www在线观看| 12—13女人毛片做爰片一| 色综合婷婷激情| 在线观看免费视频日本深夜| 午夜a级毛片| 免费人成视频x8x8入口观看| 亚洲精品乱码久久久v下载方式 | 在线免费观看的www视频| 99riav亚洲国产免费| 精品一区二区三区av网在线观看| 欧美最新免费一区二区三区 | 色av中文字幕| 日韩亚洲欧美综合| 制服人妻中文乱码| 色老头精品视频在线观看| 91字幕亚洲| 久久精品影院6| 别揉我奶头~嗯~啊~动态视频| 亚洲在线自拍视频| 九九在线视频观看精品| 欧美av亚洲av综合av国产av| 性色av乱码一区二区三区2| 最近在线观看免费完整版| 脱女人内裤的视频| 久久欧美精品欧美久久欧美| 中亚洲国语对白在线视频| 欧美乱色亚洲激情| 国产一区二区在线av高清观看| 日本撒尿小便嘘嘘汇集6| 好看av亚洲va欧美ⅴa在| 久久久久亚洲av毛片大全| 99在线人妻在线中文字幕| 久久久久九九精品影院| 欧洲精品卡2卡3卡4卡5卡区| 亚洲av五月六月丁香网| 搡老岳熟女国产| 日韩欧美免费精品| 成人亚洲精品av一区二区| 小说图片视频综合网站| 亚洲精品色激情综合| 色视频www国产| 黄色成人免费大全| 香蕉av资源在线| 最后的刺客免费高清国语| 亚洲久久久久久中文字幕| 国产色婷婷99| 国内少妇人妻偷人精品xxx网站| 久久久久久大精品| 老司机午夜福利在线观看视频| 成人高潮视频无遮挡免费网站| 国产免费av片在线观看野外av| av视频在线观看入口| 在线看三级毛片| 少妇的逼水好多| 日本成人三级电影网站| 在线观看一区二区三区| 精品久久久久久久末码| 久久久精品大字幕| 亚洲一区二区三区色噜噜| 亚洲精品美女久久久久99蜜臀| 操出白浆在线播放| 欧美乱码精品一区二区三区| 中文字幕av成人在线电影| 久久久久久久久久黄片| 俺也久久电影网| 天堂影院成人在线观看| 熟女电影av网| 成年女人永久免费观看视频| av女优亚洲男人天堂| 欧美乱色亚洲激情| 一区福利在线观看| 少妇人妻精品综合一区二区 | av福利片在线观看| 一级a爱片免费观看的视频| 18禁美女被吸乳视频| 日本在线视频免费播放| 国产亚洲精品久久久久久毛片| 久久久久久久午夜电影| 成熟少妇高潮喷水视频| 亚洲av成人不卡在线观看播放网| 欧美黑人巨大hd| 午夜精品一区二区三区免费看| 亚洲专区中文字幕在线| 欧美性感艳星| 色综合欧美亚洲国产小说| 色老头精品视频在线观看| 国产真人三级小视频在线观看| 久久6这里有精品| 蜜桃久久精品国产亚洲av| 亚洲人成网站在线播放欧美日韩| 波多野结衣高清作品| 久99久视频精品免费| 亚洲成av人片在线播放无| 国产精品av视频在线免费观看| 亚洲一区高清亚洲精品| 97人妻精品一区二区三区麻豆| 最新在线观看一区二区三区| 亚洲成人精品中文字幕电影| 很黄的视频免费| 国产视频一区二区在线看| 女生性感内裤真人,穿戴方法视频| 别揉我奶头~嗯~啊~动态视频| 国产精品电影一区二区三区| 亚洲成人久久性| 欧美性猛交黑人性爽| 免费在线观看成人毛片| 欧美+日韩+精品| 国产一区二区在线观看日韩 | 亚洲男人的天堂狠狠| ponron亚洲| 夜夜爽天天搞| 一本精品99久久精品77| 1000部很黄的大片| 深夜精品福利| 国产淫片久久久久久久久 | 十八禁人妻一区二区| 美女被艹到高潮喷水动态| 亚洲精品成人久久久久久| 真人一进一出gif抽搐免费| 天天一区二区日本电影三级| 九九久久精品国产亚洲av麻豆| 精品欧美国产一区二区三| 国产又黄又爽又无遮挡在线| 女同久久另类99精品国产91| 日本精品一区二区三区蜜桃| 18禁黄网站禁片午夜丰满| 一本综合久久免费| 丰满的人妻完整版| 在线免费观看不下载黄p国产 | 欧美成人免费av一区二区三区| 国产精品亚洲一级av第二区| 九色成人免费人妻av| 亚洲人成伊人成综合网2020| 国产精品乱码一区二三区的特点| www日本黄色视频网| 亚洲精华国产精华精| 国内精品久久久久精免费| 亚洲成人精品中文字幕电影| 久久午夜亚洲精品久久| 国产精品综合久久久久久久免费| 国产美女午夜福利| 国产野战对白在线观看| 成人亚洲精品av一区二区| 久久精品夜夜夜夜夜久久蜜豆| 少妇的丰满在线观看| 国产精品综合久久久久久久免费| 久久久久久久精品吃奶| 国产又黄又爽又无遮挡在线| 老汉色∧v一级毛片| 一二三四社区在线视频社区8| 久久久久性生活片| 亚洲欧美日韩东京热| 免费高清视频大片| 欧美日韩亚洲国产一区二区在线观看| 日韩中文字幕欧美一区二区| 一夜夜www| 级片在线观看| 日本精品一区二区三区蜜桃| 国产伦精品一区二区三区四那| 午夜福利免费观看在线| 国产精品99久久久久久久久| 亚洲黑人精品在线| 精品国产亚洲在线| av女优亚洲男人天堂| 成人国产一区最新在线观看| 国产单亲对白刺激| 好男人电影高清在线观看| 国产亚洲精品久久久com| 国产精品国产高清国产av| 99精品欧美一区二区三区四区| 午夜激情福利司机影院| 国产探花极品一区二区| 18禁黄网站禁片免费观看直播| 午夜精品在线福利| 熟妇人妻久久中文字幕3abv| 免费电影在线观看免费观看| 国产精品久久久久久久久免 | 国产精品98久久久久久宅男小说| 毛片女人毛片| 此物有八面人人有两片| 欧美成人免费av一区二区三区| 国产伦精品一区二区三区视频9 | 他把我摸到了高潮在线观看| 欧美最黄视频在线播放免费| 亚洲性夜色夜夜综合| 熟妇人妻久久中文字幕3abv| 欧美成人一区二区免费高清观看| 我的老师免费观看完整版| 免费在线观看日本一区| 国产精品自产拍在线观看55亚洲| 国产精品乱码一区二三区的特点| 亚洲精品久久国产高清桃花| 午夜福利高清视频| 亚洲成人久久爱视频| 欧美日韩精品网址| 欧美+亚洲+日韩+国产| a在线观看视频网站| 日韩精品中文字幕看吧| 午夜老司机福利剧场| 久久精品91蜜桃| 久久久色成人| 国产午夜福利久久久久久| 成人无遮挡网站| 国产精品一区二区三区四区免费观看 | 99精品久久久久人妻精品| 757午夜福利合集在线观看| 淫秽高清视频在线观看| 观看免费一级毛片| 久久国产乱子伦精品免费另类| 黄色片一级片一级黄色片| 身体一侧抽搐| 午夜激情欧美在线| 3wmmmm亚洲av在线观看| 亚洲人成网站高清观看| 听说在线观看完整版免费高清| 国产毛片a区久久久久| 午夜福利视频1000在线观看| 波多野结衣高清无吗| 成熟少妇高潮喷水视频| 99久久精品热视频| 国内久久婷婷六月综合欲色啪| 国产男靠女视频免费网站| 99精品久久久久人妻精品| 国产午夜精品论理片| 男女下面进入的视频免费午夜| 男人和女人高潮做爰伦理| 在线观看舔阴道视频| 99在线人妻在线中文字幕| 内地一区二区视频在线| 村上凉子中文字幕在线| 在线免费观看不下载黄p国产 | 老鸭窝网址在线观看| 久久精品国产亚洲av涩爱 | 他把我摸到了高潮在线观看| 熟女少妇亚洲综合色aaa.| 色在线成人网| 欧美日韩一级在线毛片| 老熟妇乱子伦视频在线观看| 天天添夜夜摸| 高潮久久久久久久久久久不卡| 亚洲美女视频黄频| 日本黄色片子视频| 精品人妻偷拍中文字幕| 国产精品嫩草影院av在线观看 | 我要搜黄色片| 少妇的逼水好多| 久久精品影院6| 午夜久久久久精精品| 日本与韩国留学比较| 久9热在线精品视频| 国产乱人伦免费视频| 一个人免费在线观看电影| 人人妻人人看人人澡| 国产三级黄色录像| 窝窝影院91人妻| 88av欧美| 高潮久久久久久久久久久不卡| 亚洲18禁久久av| 亚洲在线自拍视频| 九九久久精品国产亚洲av麻豆| 99热这里只有精品一区| 啦啦啦免费观看视频1| 最新在线观看一区二区三区| 亚洲 国产 在线| 欧美色欧美亚洲另类二区| 男女午夜视频在线观看| 最新在线观看一区二区三区| 久久人人精品亚洲av| 女警被强在线播放| 好男人电影高清在线观看| 十八禁人妻一区二区| 一个人看的www免费观看视频| 天美传媒精品一区二区| 欧美高清成人免费视频www| 亚洲精品国产精品久久久不卡| 两个人看的免费小视频| 国产高清激情床上av| 久久草成人影院| 2021天堂中文幕一二区在线观| 夜夜夜夜夜久久久久| 婷婷精品国产亚洲av在线| 老司机福利观看| 少妇的逼好多水| 日韩精品中文字幕看吧| 久99久视频精品免费| 久久精品夜夜夜夜夜久久蜜豆| 日日摸夜夜添夜夜添小说| 69av精品久久久久久| 国内少妇人妻偷人精品xxx网站| 欧美另类亚洲清纯唯美| 国产亚洲欧美在线一区二区| 国产乱人伦免费视频| 国产成人av教育| 国产精品久久久人人做人人爽| 亚洲国产欧美网| 国产高清有码在线观看视频| 国产精品一区二区三区四区免费观看 | 在线国产一区二区在线| 久久亚洲精品不卡| 老司机福利观看| 老汉色∧v一级毛片| 亚洲欧美日韩卡通动漫| 激情在线观看视频在线高清| 国产黄色小视频在线观看| 国产亚洲精品一区二区www| 国产精品女同一区二区软件 | 美女被艹到高潮喷水动态| 丝袜美腿在线中文| 久久精品人妻少妇| 国产在视频线在精品| 欧美一区二区亚洲| 亚洲一区二区三区色噜噜| 人妻久久中文字幕网| 久久精品综合一区二区三区| 国语自产精品视频在线第100页| 99热6这里只有精品| 国产精品,欧美在线| 欧美乱色亚洲激情| 99在线视频只有这里精品首页| 最新中文字幕久久久久| 色综合婷婷激情| 亚洲五月婷婷丁香| av国产免费在线观看| 天堂av国产一区二区熟女人妻| 中国美女看黄片| 亚洲自拍偷在线| 99热精品在线国产| 色精品久久人妻99蜜桃| 村上凉子中文字幕在线| 脱女人内裤的视频| 亚洲精华国产精华精| 国产野战对白在线观看| 国产色婷婷99| 欧美黑人巨大hd| 男女午夜视频在线观看| 人妻丰满熟妇av一区二区三区| 一个人观看的视频www高清免费观看| 每晚都被弄得嗷嗷叫到高潮| 国产97色在线日韩免费| 久久亚洲精品不卡| 天堂影院成人在线观看| 国产三级黄色录像| 国产精品亚洲美女久久久| 51午夜福利影视在线观看| 婷婷亚洲欧美| 亚洲精品影视一区二区三区av| 全区人妻精品视频| 禁无遮挡网站| 精品人妻偷拍中文字幕| 亚洲成a人片在线一区二区| 在线视频色国产色| 精品99又大又爽又粗少妇毛片 | 亚洲人成网站高清观看| 国内毛片毛片毛片毛片毛片| 亚洲 欧美 日韩 在线 免费| 99久久综合精品五月天人人| 综合色av麻豆| 国产一区二区三区视频了| 欧美国产日韩亚洲一区|