亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線(xiàn)實(shí)戰(zhàn)洞察。

大數(shù)據(jù)畢設(shè)實(shí)戰(zhàn):游戲數(shù)據(jù)分析可視化系統(tǒng)從零到一

大數(shù)據(jù)畢設(shè)實(shí)戰(zhàn):游戲數(shù)據(jù)分析可視化系統(tǒng)從零到一 每年畢業(yè)設(shè)計(jì)定題季總能在各種群里看到類(lèi)似提問(wèn)“有沒(méi)有不卷、能落地、答辯還不拉胯的題目”最后我定了“基于大數(shù)據(jù)的游戲數(shù)據(jù)分析可視化系統(tǒng)”。做完回頭看這個(gè)題目的適配度確實(shí)很高——有業(yè)務(wù)場(chǎng)景、有數(shù)據(jù)體量、有完整鏈路最關(guān)鍵的是做出來(lái)能直接呈現(xiàn)在大屏上答辯時(shí)不愁沒(méi)東西講。這篇文章就不繞圈子了直接把這個(gè)項(xiàng)目的完整思路和關(guān)鍵實(shí)現(xiàn)整理出來(lái)選題怎么定、技術(shù)棧怎么取舍、數(shù)據(jù)管道怎么搭、可視化大屏做了哪些核心圖表、代碼里最值得看的部分在哪里。如果你現(xiàn)在正在糾結(jié)畢設(shè)題目或者想快速上手一套可復(fù)現(xiàn)的大數(shù)據(jù)可視化項(xiàng)目這篇就當(dāng)一份簡(jiǎn)化版項(xiàng)目文檔來(lái)讀。1. 項(xiàng)目緣起為什么“游戲數(shù)據(jù)”是我最終定下的畢設(shè)方向1.1 選題時(shí)給自己定的三條標(biāo)準(zhǔn)開(kāi)始選題之前我先給自己列了一個(gè)清單避免在幾十個(gè)候選方向里來(lái)回?fù)u擺。第一要有業(yè)務(wù)感。評(píng)委坐在下面不用聽(tīng)你講三分鐘背景就能明白“這套系統(tǒng)到底是拿來(lái)干什么的”。第二技術(shù)棧要有展示面。不能只是一個(gè)增刪改查最好能把數(shù)據(jù)采集、清洗、計(jì)算、存儲(chǔ)、可視化這條鏈路串起來(lái)答辯時(shí)才有足夠多的技術(shù)點(diǎn)可以講。第三成果要可感知。最終交付的應(yīng)是一個(gè)能打開(kāi)頁(yè)面就能看的效果而不是一堆命令行輸出。拿這三條標(biāo)準(zhǔn)去篩選項(xiàng)電商用戶(hù)行為分析太多人做了答辯撞車(chē)嚴(yán)重環(huán)境監(jiān)測(cè)類(lèi)數(shù)據(jù)不好拿容易顯得項(xiàng)目是“編”的社交網(wǎng)絡(luò)分析又偏算法工作量不好控制。而游戲數(shù)據(jù)分析是少有的、能把這三條全部滿(mǎn)足的方向。1.2 游戲日志為什么自帶“大數(shù)據(jù)”氣質(zhì)真正動(dòng)手之后我才有一種實(shí)感游戲日志太適合用來(lái)體現(xiàn)大數(shù)據(jù)場(chǎng)景了。一個(gè)玩家在線(xiàn)一小時(shí)可能產(chǎn)生幾十條甚至上百條事件記錄。登錄、退出、進(jìn)入關(guān)卡、通關(guān)、失敗、購(gòu)買(mǎi)道具、點(diǎn)開(kāi)活動(dòng)頁(yè)面、與NPC交互每一種行為都是一條日志而且每條日志自帶時(shí)間戳、設(shè)備類(lèi)型、渠道來(lái)源、關(guān)卡編號(hào)等信息。游戲日志天然是高密度的用戶(hù)行為流數(shù)據(jù)量膨脹速度遠(yuǎn)超普通業(yè)務(wù)表。這個(gè)特點(diǎn)帶來(lái)的直接好處是你不需要編造幾千萬(wàn)條假數(shù)據(jù)來(lái)?yè)螆?chǎng)面按真實(shí)玩家行為規(guī)律生成幾百萬(wàn)條模擬日志就已經(jīng)能讓Spark出現(xiàn)可感知的計(jì)算過(guò)程。同時(shí)日志里的字段豐富后續(xù)想從哪個(gè)維度分析都有原料可查。提示做同類(lèi)項(xiàng)目時(shí)不必追求所謂“海量”數(shù)據(jù)。只要數(shù)據(jù)量能讓Spark跑出幾秒到十幾秒的計(jì)算過(guò)程再配合一套貼近真實(shí)世界規(guī)律的模擬數(shù)據(jù)答辯效果就已經(jīng)足夠。模擬數(shù)據(jù)生成腳本我也放在源碼包里面了。1.3 先做減法這個(gè)系統(tǒng)不做什么畢設(shè)最大的坑是前期想得太大。我當(dāng)時(shí)列過(guò)很多“宏偉計(jì)劃”實(shí)時(shí)流計(jì)算、用戶(hù)畫(huà)像、排行榜、個(gè)性化推薦。但冷靜下來(lái)之后我給自己做了一個(gè)邊界收縮只保留三件事離線(xiàn)數(shù)據(jù)采集與清洗核心指標(biāo)聚合計(jì)算可視化大屏展示三條鏈路串起來(lái)每一件事都有明確交付物。實(shí)時(shí)計(jì)算和推薦算法不是不能做而是它們會(huì)大幅拉長(zhǎng)調(diào)試周期。尤其是實(shí)時(shí)計(jì)算環(huán)境配置和前端聯(lián)調(diào)的成本不比離線(xiàn)鏈路低。畢設(shè)的核心邏輯是“主鏈路穩(wěn)定交付加分為輔”這一點(diǎn)大家一定要想清楚。2. 系統(tǒng)架構(gòu)與技術(shù)選型每個(gè)組件背后的一次取舍2.1 整條數(shù)據(jù)流鏈路是什么樣系統(tǒng)的整體流程是這樣的游戲服務(wù)器產(chǎn)出半結(jié)構(gòu)化日志文件由模擬腳本或采集程序?qū)懭隒SV文本Spark離線(xiàn)任務(wù)讀取日志完成清洗、去重、聚合計(jì)算結(jié)果寫(xiě)回MySQL后端層提供JSON查詢(xún)接口前端頁(yè)面調(diào)用接口并交給ECharts渲染成大屏。這條鏈路沒(méi)有引入Kafka沒(méi)有搞HDFSHive核心大數(shù)據(jù)處理就是Spark。原因很簡(jiǎn)單畢設(shè)展示求穩(wěn)集群復(fù)雜度越高現(xiàn)場(chǎng)出問(wèn)題的概率就越大。把Spark這條主線(xiàn)做扎實(shí)足夠體現(xiàn)大數(shù)據(jù)處理能力。2.2 技術(shù)選型對(duì)照表環(huán)節(jié)最終選用方案?jìng)溥x方案選型理由日志采集Python腳本模擬生成Flume / Filebeat畢設(shè)重心在后續(xù)分析采集環(huán)節(jié)能自圓其說(shuō)即可離線(xiàn)計(jì)算PySpark本地模式pandas / Hadoop MRSpark能體現(xiàn)大數(shù)據(jù)主題且PySpark語(yǔ)法貼近pandas數(shù)據(jù)倉(cāng)庫(kù)MySQL 8.0HBase / ClickHouse運(yùn)維成本低、答辯現(xiàn)場(chǎng)穩(wěn)定百萬(wàn)級(jí)數(shù)據(jù)完全扛得住接口層FlaskDjango / FastAPIFlask輕量單文件即可把接口寫(xiě)清楚前端可視化ECharts大屏Vue全家桶 / 阿里DataV上手成本低圖表類(lèi)型全配色自定義能力強(qiáng)這一整套選型背后的核心邏輯可以濃縮成一句話(huà)在技術(shù)展示效果與工作量可控之間取一個(gè)平衡點(diǎn)。每個(gè)組件都回答一個(gè)問(wèn)題——它是不是當(dāng)前鏈路里最合適的那一個(gè)。2.3 Spark在項(xiàng)目里到底承擔(dān)了哪些計(jì)算很多人一聽(tīng)“大數(shù)據(jù)”就想到Hadoop或Flink但對(duì)本科階段來(lái)說(shuō)PySpark已經(jīng)是一個(gè)很合適的切入點(diǎn)。Spark支持直接在Python環(huán)境里寫(xiě)DataFrame操作熟悉pandas的人遷移成本很低且本地模式部署幾乎零額外開(kāi)銷(xiāo)。我在項(xiàng)目里讓Spark完成三類(lèi)計(jì)算明細(xì)日志的清洗與去重輸出規(guī)范化的中間數(shù)據(jù)按天、按渠道、按設(shè)備的多維聚合產(chǎn)出DAU、新增、充值金額等指標(biāo)留存率、通關(guān)率等需要跨天計(jì)算的指標(biāo)配置上直接使用spark-submit在本地模式運(yùn)行不需要部署YARN集群。數(shù)據(jù)量級(jí)在百萬(wàn)級(jí)時(shí)計(jì)算耗時(shí)大概幾秒到十幾秒演示的時(shí)候節(jié)奏剛好。2.4 為什么最終沒(méi)有把組件堆滿(mǎn)偶爾也會(huì)看到同學(xué)把項(xiàng)目的技術(shù)點(diǎn)寫(xiě)得像一份“中間件博覽會(huì)”Redis緩存、Kafka實(shí)時(shí)層、ElasticSearch檢索、ClickHouse查詢(xún)引擎……但導(dǎo)師給過(guò)我一句很實(shí)在的建議畢設(shè)展示的是“你有沒(méi)有把一個(gè)課題完整做完”而不是“你聽(tīng)說(shuō)過(guò)多少框架”。每多一個(gè)組件就多一圈可能出錯(cuò)的地方也多一輪需要準(zhǔn)備的解釋成本。我在做技術(shù)評(píng)審的時(shí)候最常被問(wèn)到的反而是“為什么不用XX”。只要你能把這套選型邏輯講通評(píng)委反而會(huì)覺(jué)得你有判斷力而不是盲目堆技術(shù)。最終我只在接口層加了一層進(jìn)程內(nèi)緩存用很小的成本避免了重復(fù)SQL查詢(xún)其余沒(méi)有額外引入組件。3. 數(shù)據(jù)管道的構(gòu)建從游戲日志到結(jié)構(gòu)化業(yè)務(wù)表3.1 日志事件與字段模型設(shè)計(jì)日志是數(shù)據(jù)分析的原料字段設(shè)計(jì)直接決定后面能算哪些指標(biāo)所以這一步值得多花時(shí)間。我采用的是豎線(xiàn)分隔的純文本CSV格式一行一條事件記錄字段結(jié)構(gòu)如下user_id玩家唯一標(biāo)識(shí)event_type行為類(lèi)型login、logout、level_start、level_win、level_fail、recharge 等event_ts事件時(shí)間戳精確到秒device設(shè)備類(lèi)型iOS / Android / PCchannel渠道來(lái)源應(yīng)用商店、官網(wǎng)、效果廣告等level_id關(guān)卡編號(hào)非關(guān)卡事件為空duration_sec行為耗時(shí)主要用于登錄會(huì)話(huà)recharge_amount充值金額僅在充值事件中賦值extra_json預(yù)留擴(kuò)展字段這種寬表式日志設(shè)計(jì)的好處是模擬生成和后續(xù)分析都很方便不需要多次join多張明細(xì)表。3.2 模擬數(shù)據(jù)生成的關(guān)鍵思路我最初想直接用現(xiàn)成公開(kāi)數(shù)據(jù)集但發(fā)現(xiàn)要么跟游戲業(yè)務(wù)無(wú)關(guān)要么字段不夠用無(wú)法支撐自己想分析的指標(biāo)。最后自己寫(xiě)了一個(gè)生成腳本按照現(xiàn)實(shí)中游戲的運(yùn)營(yíng)規(guī)律去造數(shù)日活躍用戶(hù)呈“工作日低、周末高”的周期性波動(dòng)每日活躍量在基準(zhǔn)值上下加隨機(jī)噪聲充值金額呈長(zhǎng)尾分布少數(shù)高付費(fèi)玩家貢獻(xiàn)大部分流水晚上8點(diǎn)到11點(diǎn)是一天中的活躍高峰這樣生成的數(shù)據(jù)有兩個(gè)好處一方面帶隨機(jī)性能驗(yàn)證清洗邏輯是不是真的生效另一方面大屏上的趨勢(shì)線(xiàn)有自然的起伏不會(huì)像均勻隨機(jī)數(shù)據(jù)那樣平淡無(wú)奇。3.3 Spark離線(xiàn)清洗的完整規(guī)則拿到原始日志后我先做數(shù)據(jù)清洗整理出四條硬性規(guī)則按“user_id event_type event_ts”三重維度去重防止上游重復(fù)發(fā)送剔除用戶(hù)ID、事件類(lèi)型、時(shí)間戳為空的記錄用白名單機(jī)制校驗(yàn)事件類(lèi)型非法事件直接丟棄對(duì)時(shí)長(zhǎng)、金額、關(guān)卡號(hào)等數(shù)值字段做邊界檢查超出合理區(qū)間的視為臟數(shù)據(jù)清洗完的數(shù)據(jù)再進(jìn)入聚合階段。聚合維度包括日期、渠道、設(shè)備產(chǎn)出DAU、平均在線(xiàn)時(shí)長(zhǎng)、各關(guān)卡通過(guò)率等關(guān)鍵指標(biāo)。我按日分區(qū)輸出成parquet格式的中間數(shù)據(jù)后面再寫(xiě)一個(gè)獨(dú)立任務(wù)把結(jié)果刷進(jìn)MySQL。這種“中間層”設(shè)計(jì)更接近真實(shí)生產(chǎn)環(huán)境但又不會(huì)把復(fù)雜度拉到失控。核心清洗代碼大致長(zhǎng)這樣from pyspark.sql import SparkSession from pyspark.sql.functions import col, to_date, countDistinct, sum spark SparkSession.builder \ .appName(GameLogETL) \ .config(spark.sql.shuffle.partitions, 4) \ .getOrCreate() # 讀取原始日志 raw spark.read \ .option(header, True) \ .option(inferSchema, True) \ .csv(data/game_logs/*.csv) # 第一步去重 dedup raw.dropDuplicates([user_id, event_type, event_ts]) # 第二步基礎(chǔ)過(guò)濾 clean dedup.filter( col(user_id).isNotNull() (col(user_id) ! ) col(event_ts).isNotNull() col(event_type).isin([login, logout, level_start, level_win, level_fail, recharge]) ) # 第三步歸一化數(shù)值字段 clean clean.filter( (col(duration_sec).isNull() | (col(duration_sec).cast(int) 0)) (col(recharge_amount).isNull() | (col(recharge_amount).cast(double) 0)) ) # 第四步生成日期分區(qū)鍵并輸出中間結(jié)果 clean clean.withColumn(dt, to_date(col(event_ts))) clean.write.mode(overwrite) \ .partitionBy(dt) \ .parquet(data/clean_logs)這段代碼基本就是整套ETL的骨架。后續(xù)從parquet讀回?cái)?shù)據(jù)后再做聚合整體邏輯更清晰排查問(wèn)題也容易定位。3.4 MySQL表結(jié)構(gòu)設(shè)計(jì)作為最終存儲(chǔ)MySQL采用“明細(xì)表 聚合表”雙層設(shè)計(jì)。明細(xì)表主要用于回查和異常校驗(yàn)大屏主要查詢(xún)聚合表響應(yīng)速度快。核心的日聚合表建表語(yǔ)句如下CREATE TABLE daily_agg ( dt VARCHAR(10) NOT NULL COMMENT 日期, dau INT NOT NULL COMMENT 日活躍用戶(hù)數(shù), new_users INT NOT NULL DEFAULT 0 COMMENT 新增用戶(hù), avg_online_sec INT NOT NULL DEFAULT 0 COMMENT 平均在線(xiàn)時(shí)長(zhǎng)(秒), recharge_amount DECIMAL(12,2) NOT NULL DEFAULT 0 COMMENT 充值總金額, recharge_orders INT NOT NULL DEFAULT 0 COMMENT 充值訂單數(shù), PRIMARY KEY (dt) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT按日聚合指標(biāo)表;業(yè)務(wù)維度表則針對(duì)渠道、設(shè)備、關(guān)卡這些分析維度單獨(dú)建表并建好索引。在我的測(cè)試數(shù)據(jù)量級(jí)下大屏接口查詢(xún)基本都在幾十毫秒內(nèi)返回完全不需要上更重的組件。4. 可視化大屏現(xiàn)場(chǎng)“展示力”最強(qiáng)的部分4.1 核心指標(biāo)體系怎么定可視化絕對(duì)不能只堆圖表背后一定要有指標(biāo)邏輯。大屏最終圍繞“用戶(hù)生命周期”這條主線(xiàn)來(lái)組織覆蓋拉新、活躍、留存、付費(fèi)、闖關(guān)五個(gè)環(huán)節(jié)拉新新增用戶(hù)數(shù)、各渠道新增占比活躍DAU、MAU、平均在線(xiàn)時(shí)長(zhǎng)留存次日留存率、7日留存率付費(fèi)充值總金額、充值訂單數(shù)、ARPPU闖關(guān)關(guān)卡通過(guò)率排行、平均闖關(guān)次數(shù)每一個(gè)指標(biāo)都不是隨便加的都是在回答“游戲運(yùn)營(yíng)關(guān)心的核心問(wèn)題”。4.2 大屏布局與圖表選型大屏頁(yè)面采用1350×768比例從上到下分三個(gè)區(qū)域。頂部是標(biāo)題欄和四個(gè)KPI卡片把DAU、累計(jì)充值金額、平均在線(xiàn)時(shí)長(zhǎng)、新增用戶(hù)這四個(gè)最核心的數(shù)字放在頁(yè)面第一屏。中間區(qū)域放日活躍趨勢(shì)折線(xiàn)圖和充值金額柱狀圖共用同一橫軸方便對(duì)比活躍人數(shù)和充值收入的時(shí)間對(duì)應(yīng)關(guān)系。底部左側(cè)是渠道占比玫瑰圖底部中間是省份熱力地圖底部右側(cè)放關(guān)卡通過(guò)率排行榜。為什么選這些圖表類(lèi)型因?yàn)槊恳环N圖都有不可替代的場(chǎng)景屬性趨勢(shì)圖看變化餅圖看占比地圖看地域分布排行榜看結(jié)構(gòu)化對(duì)比。答辯時(shí)不建議用花哨的3D圖或雷達(dá)圖強(qiáng)行加戲信息能否被一眼看懂是第一位。4.3 圖表聯(lián)動(dòng)是怎么實(shí)現(xiàn)的為了讓大屏不是靜態(tài)演示我加了兩個(gè)輕量級(jí)聯(lián)動(dòng)效果。第一個(gè)聯(lián)動(dòng)來(lái)自KPI卡片。點(diǎn)擊“充值金額”卡片中間趨勢(shì)圖立即切換為充值趨勢(shì)點(diǎn)擊“DAU”卡片圖表切換為活躍趨勢(shì)。實(shí)現(xiàn)原理很簡(jiǎn)單給每個(gè)卡片綁上click事件修改一個(gè)全局變量再調(diào)用ECharts實(shí)例的setOption覆蓋series數(shù)據(jù)。第二個(gè)聯(lián)動(dòng)在渠道餅圖和地圖之間。點(diǎn)擊餅圖中的某個(gè)渠道地圖立即過(guò)濾出該渠道用戶(hù)所在省份的熱力分布。實(shí)現(xiàn)方式是監(jiān)聽(tīng)餅圖的click事件拿到渠道名后向后端請(qǐng)求一次帶條件的過(guò)濾接口拿到新數(shù)據(jù)后更新地圖series即可。這兩個(gè)聯(lián)動(dòng)并不復(fù)雜但現(xiàn)場(chǎng)展示時(shí)非常加“交互分”。4.4 答辯演示的講故事節(jié)奏答辯的時(shí)候建議不要從頭到尾念指標(biāo)而是按這個(gè)節(jié)奏來(lái)先花40秒介紹KPI卡片講“這個(gè)系統(tǒng)能看到每一天的新增、活躍、付費(fèi)基本面”然后打開(kāi)趨勢(shì)圖指出某一段時(shí)間的明顯波動(dòng)接著點(diǎn)開(kāi)渠道餅圖聯(lián)動(dòng)地圖講一講地域投放差異最后落到關(guān)卡通過(guò)率排行榜引出運(yùn)營(yíng)結(jié)論比如“選擇某個(gè)特定關(guān)卡通關(guān)率突然下降說(shuō)明難度曲線(xiàn)需要調(diào)整”。這套講法會(huì)讓評(píng)委覺(jué)得你做的不是靜態(tài)報(bào)告而是一個(gè)輔助決策工具。5. 關(guān)鍵代碼解析清洗、接口、圖表三端貫通以下代碼是從最終源碼里原樣截取的核心片段對(duì)應(yīng)離線(xiàn)清洗、服務(wù)端接口、前端渲染三端。5.1 Spark清理已完成數(shù)據(jù)并寫(xiě)回MySQL上一章的清洗代碼已經(jīng)解決了“從原始日志到中間parquet”這一小段負(fù)責(zé)把聚合結(jié)果寫(xiě)入MySQL。from pyspark.sql import SparkSession from pyspark.sql.functions import col, countDistinct, sum spark SparkSession.builder \ .appName(GameLogAgg) \ .config(spark.sql.shuffle.partitions, 4) \ .getOrCreate() df spark.read.parquet(data/clean_logs) daily df.groupBy(dt).agg( countDistinct(user_id).alias(dau), sum(col(recharge_amount).cast(double)).alias(recharge_amount) ) daily.write \ .format(jdbc) \ .option(url, jdbc:mysql://localhost:3306/game_analysis) .option(dbtable, daily_agg) .option(user, root) .option(password, 123456) .option(driver, com.mysql.cj.jdbc.Driver) \ .mode(overwrite) \ .save()寫(xiě)回時(shí)我用的overwrite模式因?yàn)槿站酆媳硎谴笃翑?shù)據(jù)源直接整體覆蓋避免處理增量問(wèn)題簡(jiǎn)單可靠。5.2 Flask接口返回JSON后端接口我用Flask寫(xiě)關(guān)鍵點(diǎn)在于數(shù)據(jù)庫(kù)連接統(tǒng)一封裝、返回結(jié)構(gòu)統(tǒng)一、查詢(xún)結(jié)果轉(zhuǎn)字典。from flask import Flask, jsonify import pymysql app Flask(__name__) DB_CONFIG { host: localhost, user: root, password: 123456, database: game_analysis, charset: utf8mb4 } def query_db(sql): conn pymysql.connect(**DB_CONFIG) cur conn.cursor() cur.execute(sql) cols [desc[0] for desc in cur.description] rows [dict(zip(cols, row)) for row in cur.fetchall()] cur.close() conn.close() return rows app.route(/api/trend) def api_trend(): sql SELECT dt, dau, recharge_amount FROM daily_agg ORDER BY dt return jsonify(code0, dataquery_db(sql)) app.route(/api/channel) def api_channel(): sql SELECT channel, SUM(recharge_amount) AS amount FROM daily_agg_detail GROUP BY channel return jsonify(code0, dataquery_db(sql)) if __name__ __main__: app.run(host0.0.0.0, port5000, debugFalse)數(shù)據(jù)量小不用擔(dān)心性能瓶頸。接口層我只做了最必要的封裝盡量讓每段代碼都容易讀懂。5.3 ECharts大屏關(guān)鍵配置前端大屏使用原生HTML ECharts沒(méi)有引入Vue或React避免增加額外構(gòu)建環(huán)節(jié)。下面是趨勢(shì)圖的核心配置fetch(/api/trend) .then(res res.json()) .then(res { const dates res.data.map(d d.dt); const dauList res.data.map(d d.dau); const amountList res.data.map(d d.recharge_amount); const chart echarts.init(document.getElementById(trendChart)); chart.setOption({ tooltip: { trigger: axis }, legend: { data: [日活躍用戶(hù), 充值金額] }, grid: { left: 60, right: 60, top: 50, bottom: 40 }, xAxis: { type: category, data: dates }, yAxis: [ { type: value, name: DAU }, { type: value, name: 充值金額 } ], series: [ { name: 日活躍用戶(hù), type: line, smooth: true, data: dauList }, { name: 充值金額, type: line, smooth: true, yAxisIndex: 1, data: amountList } ] }); });雙Y軸配置是這個(gè)圖的核心。DAU的數(shù)值和充值金額的數(shù)值量級(jí)差異可能很大不分開(kāi)Y軸就會(huì)導(dǎo)致其中一個(gè)曲線(xiàn)幾乎變成一根直線(xiàn)。6. 項(xiàng)目結(jié)構(gòu)與部署運(yùn)行6.1 源碼目錄說(shuō)明完整項(xiàng)目目錄結(jié)構(gòu)如下game-data-visualization/ ├── generator/ │ ├── generate_logs.py # 模擬游戲日志生成腳本 │ └── config.py # 生成規(guī)則配置 ├── etl/ │ ├── clean_job.py # Spark離線(xiàn)清洗 │ ├── agg_job.py # Spark指標(biāo)聚合 │ └── write_mysql.py # 聚合結(jié)果寫(xiě)庫(kù) ├── web/ │ ├── api.py # Flask后端接口 │ ├── static/ │ │ ├── index.html # 大屏主頁(yè)面 │ │ ├── css/ │ │ └── js/ │ │ ├── charts/ │ │ └── app.js ├── sql/ │ ├── schema.sql # 建庫(kù)建表語(yǔ)句 │ └── init_data.sql # 初始化數(shù)據(jù) ├── docs/ │ ├── 部署文檔.md │ └── 答辯PPT大綱.md └── README.md6.2 運(yùn)行環(huán)境與啟動(dòng)步驟推薦環(huán)境Python 3.8、PySpark 3.x、Flask 2.x、MySQL 8.0前端使用ECharts 5.x的CDN文件。整個(gè)過(guò)程按四步走# 第一步創(chuàng)建并初始化數(shù)據(jù)庫(kù) mysql -u root -p sql/schema.sql # 第二步生成模擬游戲日志 python generator/generate_logs.py # 第三步執(zhí)行Spark清洗與聚合 spark-submit etl/clean_job.py spark-submit etl/agg_job.py spark-submit etl/write_mysql.py # 第四步啟動(dòng)后端服務(wù) cd web python api.py # 瀏覽器訪問(wèn) http://localhost:50006.3 部署時(shí)最容易遇到的三個(gè)報(bào)錯(cuò)第一個(gè)是Spark本地運(yùn)行內(nèi)存不足。任務(wù)支持不了大批量數(shù)據(jù)。可以在spark-submit時(shí)加上執(zhí)行參數(shù)spark-submit --driver-memory 2g --executor-memory 2g etl/clean_job.py第二個(gè)是MySQL中文亂碼。建庫(kù)時(shí)一定要指定utf8mb4字符集同時(shí)jdbc連接串的characterEncoding不要漏掉jdbc:mysql://localhost:3306/game_analysis?useUnicodetruecharacterEncodingutf8mb4第三個(gè)是ECharts的省份地圖組件加載不出來(lái)。ECharts從5.0開(kāi)始默認(rèn)不打包地圖數(shù)據(jù)需要在頁(yè)面里單獨(dú)引入中國(guó)地圖的GeoJSON或者在本地放一份china.js文件。這個(gè)很多同學(xué)會(huì)踩到我特意寫(xiě)在部署文檔里了。6.4 源碼獲取方式項(xiàng)目包括模擬數(shù)據(jù)生成腳本、Spark離線(xiàn)清洗與聚合代碼、Flask接口、前端大屏頁(yè)面、建表SQL和詳細(xì)部署文檔還有我整理的答辯PPT大綱。需要源碼的同學(xué)直接評(píng)論區(qū)留言或者私信發(fā)我“游戲數(shù)據(jù)”我看到了就把網(wǎng)盤(pán)鏈接發(fā)給你。換成你自己的數(shù)據(jù)源和頁(yè)面標(biāo)題就是一份可以直接上會(huì)的畢業(yè)設(shè)計(jì)作品。7. 復(fù)盤(pán)做完這個(gè)項(xiàng)目我最大的一個(gè)感受做完這個(gè)項(xiàng)目最反直覺(jué)的一點(diǎn)是一個(gè)“大數(shù)據(jù)可視化系統(tǒng)”最難的部分根本不在算法也不在框架而在數(shù)據(jù)治理和指標(biāo)定義。我復(fù)盤(pán)時(shí)發(fā)現(xiàn)整個(gè)開(kāi)發(fā)周期里最耗時(shí)間的三個(gè)環(huán)節(jié)其實(shí)是設(shè)計(jì)日志字段、定義指標(biāo)口徑、調(diào)ECharts布局。Spark清洗的代碼寫(xiě)起來(lái)很快但確認(rèn)“每一列拿到的是什么含義”“這個(gè)指標(biāo)在業(yè)務(wù)上到底怎么算”才是最燒腦的部分。這也解釋了為什么很多實(shí)際項(xiàng)目中數(shù)據(jù)分析師和數(shù)倉(cāng)工程師的時(shí)間大量花在對(duì)齊口徑上。這個(gè)項(xiàng)目后續(xù)可擴(kuò)展的方向非常明確。想往實(shí)時(shí)走可以在采集端接入Kafka把清洗任務(wù)換成Flink或Spark Streaming大屏的日粒度數(shù)據(jù)就能變成分鐘級(jí)。想往用戶(hù)畫(huà)像深挖可以基于明細(xì)數(shù)據(jù)計(jì)算用戶(hù)生命周期價(jià)值、付費(fèi)偏好、流失預(yù)警增加一個(gè)“用戶(hù)分群”頁(yè)面。想往算法方向走還能拿關(guān)卡通過(guò)率數(shù)據(jù)做難易度預(yù)測(cè)反哺策劃調(diào)參。但這些都是后話(huà)。對(duì)現(xiàn)階段來(lái)說(shuō)把“采集-清洗-計(jì)算-展示”這條主線(xiàn)穩(wěn)穩(wěn)拿下來(lái)把每個(gè)環(huán)節(jié)為什么這么做講清楚答辯就已經(jīng)很能打了。之后要擴(kuò)什么都是順?biāo)浦鄣氖隆?
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91模特在线观看| 欧美性爱第一页久久| 亚洲成人日韩小说| 精品四五区| 尤物视频新赏网鲜网色诱网| 在线a v| 欧美大码在线视频| 97操| 国产做?爰片久久毛片?片美国| 久久夜夜夜夜| 亚洲中文字幕av| 大香网站| 99re在线视频国产| 凸凹视频在线观看| 亚洲素人网| 高清无码在线播放网站| 日本 免费 一区二区三区 久久香蕉| 久久久久大香青草精品综合| 人人搞人人插人人操| 九九激情网| 综合久欧洲| 大香蕉免费3| 7月婷婷综合| 色欲久久99国产精品久久久久久| 五月天婷婷久久| 97看操| 国产主播福利| 亚州熟妇精品| 秋霞影音一区二区三区| 少好三P| 思思在线免费视频| …中文字幕亚洲乱,97人妻无码费视…| 人妻系列无码专区中文有码| 亚洲精品一卡二卡三卡福利视频网站| 人人操人人搞人人草| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 天天综合官网| av网站免费看| 丝袜狠狠草尤物人妻av91| 97精品网| 久久三区四区| 日韩电影天堂视频一区二区| 五月婷婷六月天| 夜夜久久久| 欧美精品久久久久久久久88| 在线天堂资源亚洲| 亚洲av淫乱| 亚洲极品| 欧美专利1区2区3区4区5区免费| 91看黄片| 亚洲麻豆av一区二区| 国产怡红院| 探花一区二区三| 久久超碰网| 亚洲精品丝袜-不卡成人免费……| 精品成人女人久久| 精品成人av一区二区三区在线| 日韩 女同 综合| 久久HD| 小视频国产| 日韩在线电影| 久欲AV| 亚洲熟女一区| 91AV天堂| 亚州色阁| 天天热精品| 九九九九日本| 九九精品美女高溯喷水| 日韩97超碰| 色第一页| 国产一区二区三区导航| 91国模| 性生活性生大爱77AV国产| 免费观看性欧美一级| 99在线精品观看视频中文| 黄色片G G G| 蜜臀AV一区二区三区激情综合| 9丨亚洲一区二区在线| 欧美国产操逼| 97精品97久久| 中文字幕日韩精品一区二区三区| 色婷婷五月综合| 精品久久99| 影音先锋国产精品| 激情五月婷| 看一级特黄a大一片| 我要去看2个日本美女.com曹逼| av2014 日韩在线中文字幕| 试看福利| 色五月网址| 成人三级片无码| 一区二区三区国产精产| 日韩精品一区二区高清| 97久操| 黄久久| 欧美另类丝袜熟女| 麻豆视频国产一区二区| 超碰导航97| 亚洲官网在线| 国产亚卅97| 97美日韩视频| 国内偷自视频区视频综合| 日本操逼二区| 67914亚洲精品| Av色五月| 9美女超碰在线免费观看| 91精品久久久久| 超碰天天去日穴| 国产成人五月天丁香花| 亚洲欧洲日韩国产自在线| 青青草自拍视频在线播放| 免费人成?大片在线播放| 日日夜夜狠狠| 日韩欧美偷拍美女视频| 亚洲AV无码国产精品久久久久 | 三级三级三级日本99| 亚洲日韩肥臀视频在线观看| 人妻精品一区一区三区蜜桃91| 国产乱伦性爱区| 男人天堂.AB| 日韩本不卡视频在线观看| 新久久AV| 久久一留热品黄| 人人操人人爽人人操人人| 蜜桃av综合网发布| 天天天天天天天天天天干美女| 亚洲综合第一页| 午夜精品久久久99| 亚洲色图20p| 一级AAA片一区二区三区| 97啪啪| 性爱视频久久| 26uuu欧美日韩| 开心激情婷婷| 素人一区二区三区日韩| 五月久久HDAV| 黑丝自慰喷水网站| 色爽——AV| 国产AV激情无码久久无码 | 首页中文字幕中文字幕免费| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 一区二区三区四区在线不卡| 亚洲熟女av日韩熟女| 欧美色997| 在线无码网站| 99999亚洲另类| 午夜福利在线合集| 天干天干天干天天做| 亚洲高潮少妇| 熟女五十路一区二区三| 亚洲 欧美 日韩另类 麻豆| 日韩黄色电影网站| 中日韩久久久| 中文字幕在线免费观看2| 啊啊啊啊啊在线视频| 嫩草一区二区在线观看| 国产女人视频三四五区| 日日噜噜夜夜久久亚洲一区二区 | 欧美日韩亚洲天堂网| 免费精品福利在线观看| 操操逼视频| 婷婷五月天色网| 亚洲日本天堂| 亚洲av热热色| 超碰碰激情97+久| 亚洲青青青视频在线| 日韩,欧美,中文在线| a片偷拍视频| 人妻熟女一区二区在线视频| 曰本91情色| 国产91精品福利在线| 青青操综合网| 综合色啪| 最新欧美色网| 色色色色综合网| 台湾成人无码AV| 明星性猛交ⅹxxx乱大交| 天天干人妻| 999日韩中文精品观看视频。| h在线看免费版在线看| 立川理惠无码一区二区| a级理论午夜日本| 人妻中文字幕精品无码| 久久青青草原免费视频| 女人被男人桶爽视频网站| 青青草好吊色| 精品久| 青草一区二区| 人妻一区视频| 成人熟女视频一区二区三区| 99青草| 欧美天堂日韩三级国产传媒| 亚洲少妇色图自慰直播| 久久久111| 91久久久老司机| 97美日韩视频| 男人天堂网址 | 涩涩久久精品| 国产精品久久久久久久久久二区三区| 四虎精品一区| 玖玖资源视频一区二区三区| 少妇人妻好深太紧了vr91| 国产精品蜜乳AV| 亚洲综合另类小说色区亚洲成av人片在www | 免费a v| 亚洲的天堂网| 97 色综合| 性爱乱伦网址| 爱欲AV| 中国的操老妇女| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 国产精品伦理| 操逼1区| 插老姨肥穴| 噜噜噜噜天天狠狠| 免费a级毛片av无码久久精品中文字幕| 四虎午夜影院| 艾草av| 亚洲资源站| 久久免费99精品久久久久久| 欧美亚州色的图| 农村妇女精品一区二区| 99视频这有这里有精品| 日逼视频日本| 国产一区二区三区中文字幕| 亚洲1区| 成人三一级一片aaa| 天美精品原创av片国产| 日韩啊V| 亚洲欧美小说| 日本在线观看网址| 国产v亚洲v日韩v欧美v片另类| 九九碰九九爱97超| 内射老妇BBWX0C0CK| 日韩成人性日韩成人性爱视频在线免费观看 | 综合久久久久久久综合网| 男女性感激情网站| 91爆操视频| 国产成人久久精品蜜臀| 亚洲精品白浆高清久久久久久| 精品国产Av无码久久久亚洲| 1人人看人人摸人人操| 9国产超碰| 午夜一级免费毛片| 婷婷丁香五月综合| 亚洲91网。| 91日日| 精品9999| 香蕉视频欧美一卡二卡| 久操操AV电影| 丁香五月天婷婷姐| 9精品久久| 无码一区免费在线不卡| 欧美性爱精品一区二区| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 97在线观看免费| 超碰天天去日穴| 久久岛国| 亚洲精品亚洲人成人网| 99re99视频在线免费观看| 蜜桃臀AV在线| 95自拍视频在线观看| 日韩久久激情精品| 九九夜精品九九在线| 国产精品日日摸天天碰| 天天谢天天干| 91人妻PORNY九色大屁股| 伊人五月天青青草婷婷| 亚洲欧美日韩国产丝袜自拍中文| AV乱伦专区| 亚洲天堂人妻熟妇视频| 翘臀vidoes| 欧美性少妇| 粉嫩av在线| 性爱1区| 日本蜜桃| 久久久久久网址| 美国aaaaa一级黄片| 欧美乱色| 国产成人啪一区二区| 99亚洲国产精品色一区二区三区| 色优久久| 福利大香蕉| 超碰在线观看av不卡| 大香蕉伊人久久| 无码人妻精品一区二区三区九九 | 五月天婷婷综合| 久久性生大片免费观看性| 伊人网综合在线视频| 亚洲国产精品乱码在线观看| 久久午夜神马| 能直接看AV的网站| 久久久久亚洲精品| 男女激情黄色网址| 精品无码久久久久| A片大香蕉在线| 后X久久| 日本不卡一二区| 午夜精品久久久久久久男人的天堂 | 伊人久久婷婷| 偷拍亚洲情色| 日本三级A片网站com| 色呦呦、国产精品| 色色九区| n1038 一二三区| 久久精品一区二区一8| 精品国产精品一区二区| 日本欧美不卡| 婷婷五月色| 日本布卡一区二三区| 99精品在线播放| 清纯唯美亚洲另类| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 日韩av免费一级电影| 亚洲AO在线| 免费福利视频中文字幕| 亚洲欧洲中文日韩女优乱码| 三级片大波波| 约操熟妇| 蜜臀久久99精品久久久久电影| 国产精品自拍欧美在线| 美女久久久| 国产日韩精品一区二区三区| 在线播放成人高清免费视频| 欧美78| 日韩性爱毛片操骚逼| 91激情国产| 九九色热| 国产亚洲精品久久久久小| 亚洲性感丝袜诱惑在线观看| 国模吧 一区二区三区| 一本久久久精品| 东京热99999| 欧美亚洲另类在线蜜桃| 清纯唯美第一页| 殴美牲| 欧美激情视频在线一区| 99久久免费看精品国产一区| 男人的天堂亚洲| 三级日韩一区二区三区| 超碰精品97| 按摩中文字幕| 最新岛国大片| 九九九九热| 嫩草影院永久在线制服丝袜| 亚洲人妻一区二区三区| 2017人人操,人人摸| 我中文字幕6区| 粉嫩国产精品久久粉嫩| 素人一区二区三区日韩| 91精品久久久久久77777| 熟女激情综合网| 国产成人啪一区二区| 1024亚洲中文字幕久在线看片你懂的| 国产成人亚洲精品无码古代早漏男| 欧美96交| 国产精品网站免费| 国内精品不卡无毒99999| 8050无码八戒| 国产高清吃奶免费视频网站| 亚州欧美在线| 黄站在线免费观看| 91黑丝美女| 91碰碰| 自拍偷拍 日韩无码| 上特色A在线| 99热大香蕉伊在线| 久久久久久9999| 99激情视频| 人人看欧美性爱| 中文字幕精品免费一区二区| 亚洲欧美洲综合| 91处女在线视频| 情色五月天网| 老师充足的奶水小说| 婷婷五月花| 亚洲va综合va国产va中文| 日韩欧美国产一区二区三区四区 | 夂久色| 人人透人人操| 爆操无码| 婷婷久草一区二区三区| 九九99精品| 青娱乐国产精品| 日韩精品在线观看观看| 欧美精品成人在线播放| 岛国视频免费在线观看| 狼狼色丁香久久婷婷综合五月| 国产捆绑一区| 日韩99精品视频综合区| 家庭乱伦国产精品| 国产精品毛片?v一区二区三区| 丰满人妻区一区二区三| 网友自拍第1页| 粉嫩国产精品久久粉嫩| 日韩熟女精品无码专区一区二区| 长长久久免费视频| 国产免费大片| 久久免费中文字幕在线观看| 亚洲黄日韩无码专区| 久久久久久性爱片| 小草精彩毛片| 91超碰在线播放| 人妻人妻天天碰| 亚洲欧美啪啪| 丝袜综合网| 人人妻人人爽一区二区三区| 成人一道本免费视频| 一级性爱视频免费观看| 测评在线观看AV| 大香蕉www.超碰| 天天色,天天干,天天干| 大香蕉乱伦视频网| 嫩草 人人网精品| 欧美少妇性乱| 国产丝袜啪啪| 操逼操2| 八人操人人摸人人看| 久久精品国产亚洲AV高级北京| 性爱乱伦网址| www.色婷婷| 亚洲 图片 欧美 色图| 亚洲诱惑| 国产久久久久久| 久久 精品| a一区二区三区乱码在线| 日本十八禁免费看污网站| 九色精品视频导航1| 超碰人人色| 殴美综合色88| 变态综合色| 综合久欧洲| 另类视频在线| 少妇高潮流水av免费| 日韩精品人妻一| 一品道视频一区二区三区| 精品小视频在线| 少好三P| 另类亚洲一区二区三区| 国产亚洲精品自在线亚洲情侣| 天天综合91在线| 免费超碰97久久| 久久精品国产亚洲粉嫩| 人妻中文字幕日韩电影| 青青草自拍视频在线播放| 欧美人妻色| 男女性无套 免费九一| 国产高清成人mv在线观看| 亚洲无码99| 天天摸天天舔天天操| 久热伊人| 丁香五月激情啪啪| 啊啊啊啊,啊啊好多水| 国产色图乱伦| 国产呦精品一区二区三区下载| 国产美女高潮叫床视频| 真实高潮91| 911av网站免费观看| 亚洲av噜噜噜噜噜噜| 久久精品视| 欧美亚洲手机在线| 成视频在线观看免费看| 久久中文字幕女同性恋一区| 天天激情综合站| 97资源制服丝袜| 久久丝袜| 日韩久久三区| 日韩小电影| 国内毛片无码一级毛片| 美女黄码视频午夜| 色官网色综合| 国产成人主播| 一区二区三区在线美女| 麻豆婷婷成人一二三| 欧美色青| 青青色在线观看| 777奇米影视777四色| 人妻少妇久久中文| 日韩欧美中文| 制服中出中文人人精品| 人人看欧美性爱| 久久久禁| 中文字幕一区日韩精| 330dv亚洲成年视频网| 91视频伊人| 久久久久元码视频| 日韩免费大片一级播放| 97国产精品久久久久| 亚洲中文一区二区三区| 久久综合久色欧美综合狠狠| 国产成人在线观看综合| 蜜臀99久久精品久久久久久| 五月天激情小说| 久久九九97| 亚洲一区二区麻豆影院| 内射夫妻三片| 欧美 牲| 国产精品久久久久久片| 亚洲中文sv| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 日韩女模中文造逼| 麻豆黄站| 丁香五月天视频| 久久精品黄色| 亚洲色图国产另类| 国产操逼逼网| 亚洲女人91| 好好的日:com久久九九| 国产伦乱91| 亚洲天堂精品日韩电影| 青草香蕉网| 亚洲AV无码黄色强奸| 亚洲AV无码黄色强奸| 人人摸人人舔一区二区| 久久伊人在线五区| 大香网站| 日韩小电影| 97超碰免费人人性爱| www黄片免费看com| 女性喷水高潮在线观看| 无码男人天堂| 亚洲天堂久久| 日欧亚洲二三区大片不卡| 亚洲精品蜜桃久久久| 九九热九九热| 中国亚洲呦女专区| 成人无码在线视频网站| 91中文字幕在线观看| 大吊色| 亚洲欧洲日韩国产自在线| 伊人国产成人av网站| 大香蕉在线SuP| 亚洲一区深夜| 九九热AV| www黄片免费看com| 人人 操人人 操人人| 色爱天堂| 噜噜噜亚洲精品| 亚洲男人的天堂一区二区| 欧美日韩 强奸乱伦| 操逼无码操逼| av在线不卡一区二区三区| 99热99在线播放激情| 国产一级不卡在线观看| 日本午夜精品理论片A级APP发布| 国产91丝袜在线播放蜜月| 岛国福利在线精品播放| 欧亚性爱啪啪| 天美av在线观看| 麻豆a'v电影| 国产67194| 91干熟女| 91肉丝| 欧美 亚洲| 色香综合天天影视综合| 淫色网综合| 欧美日韩狠狠爱| 日人妻视频91| 国产一级特黄大片处女| 精品一区二区三区丰满熟女-亚洲欧美一区| 午夜无码熟妇丰满人妻| 91亚洲在线| 九九热只有精品| 欧美成人亚洲精品| 精品国产一区二区三区av在线资源| 国产福利精品最新在线| 久久久久亚洲三级电影| 91oumei| 殴美,日韩国产伦精品| 蜜色网色哟哟| 日韩福利综合一区| nuu12国产麻豆精品| 日韩午夜啪啪视频| 久久日韩肥臀| 欧洲色综合| 无码二级三级| 香蕉精品二区二区| 久久久久久九九九九九| 中国熟妇| 国产精品香蕉| 男人女人18禁片免费看网站| 国产亚洲精品一区二区三区| 国产精选视频| 亚洲啪啪综合?v一区综合精品区| 国产亚洲色婷婷久久99精品91 - 百度| 久久久96| 91人妻最真实刺激绿帽| 蜜乳av一区二区| 黄色av片三级三级三级免费看| 嫩草伊人久久精品| 四虎永久在线精品免费网址 | 美女露胸露屁股| 中文字幕一区二区三区人妻少妇在线| www.高清无码诱惑一区.com | 91狠狠狠| 日日爱99| 精品久久久久av影院| 强奸乱伦日韩AV| 激情五月天色播| 中文字幕第页| 丝袜熟女2P| 日韩懂色网| 九九九精品色乱九九九| 久久久精品| 高潮毛片无遮挡高清免费| 丁香六月啪| 大香蕉免| 欧美色图97| 亚洲高清自拍| 手机在线A片| 天天影视色香色欲| 欧美色日| 日本性爱视频一级| 日韩性爱高清免费视频| 美欧老女人97| 中国少妇啪啪视频| 大香焦A片| 天天透伊人| av东京热男人的天堂| 操逼操逼操| 欧美亚洲涩涩| 国产精品suv一区| www.zbzhongsen.com| 亚洲无码超碰免费| 亚洲精品尤物yw在线影院| 日韩性爱啪啪视频| av三级电影在线播放| 国产在线观看一区二区三区| 无码精品久久久久久亚洲| 99少妇| 思思热国产高清| 黑人娇小av在线播放| 中文字幕三四区| 日本三级A片网站com| 色激情综合网站| av一区二区三区四区| 综合伊人激情| 极品尤物女神在线观看| 大香蕉丝袜一级片| 日韩人成网站在线播放| 日本三级久| 肉丝网站91| 人妻美腿丝袜日韩| 国产二区三区免费视频| 色嗨嗨在线| 亚洲AV永久无码一区仙野| 日本三级韩三级99久久| 欧美色一二三| 久久久内射良家| 国产农村妇女精品| 日本久久精品| 亚洲天堂自拍| 亚洲色电影在线| 亚洲国产精品有声| 午夜天天碰综合视频| 中文字幕熟女人妻丝袜| 色综合av男人天堂| 欧美性区| 亚洲性爱电影| 精品国产国产AV| 亚洲性网| 这里只有精品视频在线| 国产乱伦亚洲色图高清无码| 神马精品视频| 男人的天堂Va| 欧美中文字幕精品人妻| 操人无码| 2017天天操天天日| 亚洲免费人妻在| av久日| 操日韩第| 蜜桃视频一区二区三区| 国产综合在线视频网站| 成人网欧美风情| 日韩在线一区高清在线| 毛片视频白嫩| 黄片www视频免费| 日本91白丝| 伊人操| 欧美熟妇操操视频| 中文字幕一区二区无码成人| 亚洲色色色| 天天澡天天爽日日AV| 91肏屄网| 成人精品一区二区91毛片不卡| 超碰在线91| 亚洲素人综合| 国产福利第一视频| 另类天堂| 神马久久69| 四虎AV无码| 东北夫妻性偷拍| 无码人妻精品酒店| 国产午夜视频| 婷婷在线精品| 情色大香蕉| 色蜜AV| 精品人妻中文字幕4399| 久热在线精品免费观看| 欧美淫乱视频| 日韩精品人妻系列无码天堂| 一级黄色性爱A级片| 人妻蜜桃臀| 久久国产精品91| 亚洲色图欧美视频| 中亚精品极乱| 中国探花熟女| 一级久久性爱视频| 999精品国产高清一区二区| 91老熟女视频| 国产精品点击进入在线影院高清| 午夜久久久| 中文欧丝袜诱惑| 天天综合香 ld视频| 熟女丰满人妻一区| 天天狠操| 国产女同在线观看视频| 丝袜美腿亚洲| 丰满人妻一区二区三区蜜桃视频| 怡红院成人视频| 精品无码一区二区三区| 欧美啪啪啪91| 国产乱色国产精品免费视| 色逼综合| 国产精品农村妇女| 亚洲AV永久无码精品成人调教| 青草视频人妻在线观看| 熟妇人妻一区二区三在线| 绑缚麻绳人妻寝取完整版| 久久精9| 中字一区| 久久精品国产亚洲粉嫩| 黑丝制服中文字幕| 99夜夜操| 情趣丝袜无码操逼视频| 国产精品老熟女一区二区| 亚洲综合在线视频| 骚货| 日韩精品第3页| 亚洲熟久久| 一本久久精品中文字| 一本色道久久综合熟妇| 在线观看啊啊啊啊啊| 日本免费二区三区| 亚洲熟女综合网| 美国黄片aaa| 奇米狠999| 啪啪一区| 天天淫人人妻日日色| 亚洲图片 激情小说| 国内一级精品| 国产多人在线观看视频| 久草视频分类在线| AV99热18这里只有精品| 777超碰| 国产男人又猛又粗又爽| 看看日B真人视频| 天天摸天天操视频| 欧美不卡二区| 日韩无码嘿咻黑热久| 九九九九九九九九九九九九九九九女| 欧美亚洲天天| 激情五月综合开心五月| 99久久精品国产高潮| 麻豆黄色五月天| 人人喜人人妻| 大逼色网站| 国产女人91精品嗷嗷嗷嗷| 欧美日日夜夜| 东京热综合久久一区二区| www.91久久| av东京热男人的天堂| 日韩综合成人免费视频| 亚洲欧美中日韩| 天天干干天天干干| 9999亚洲电影| 五月天久久综合网| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 91骚熟女| 亚洲日韩成人性爱视频| 国产少妇高潮| 美国aaaaa一级黄片| 免费亚洲国产精品久久一区| 欧美日韩在线视频网站| 艾草av| 日韩一区二区精彩视频| 激情欧美97| 久久久网站| 日本国产二线女色| 丁香五月天啪啪| 国产九九久久久精品| 欧美色院| 欧美78p| 伊人九九九| 伊人亚洲国产一成人久久精品,久久| 99re在线观看| 国产 亚洲 丝袜 制服| 九九这里只有精品| 久久超碰久| 日本色色色网站免费看不卡| 91欧美网| 天天草AV| 亚欧精品久久久久久久久久久| 亚洲高清91| 用力操死我| 九月丁香综合网| 色综合91好| 天天干1区2区在线| 日本 成 人 小说 电影 一区二区| 凹凸视频在线观看伊人| 天天色,天天干,天天干| 夜夜爽妓女| 蜜桃臀一区二区aV| 日本一区三级韩国| 毛片电影一区二区三区| 秋霞一集毛片观看| 欧美97爱| 中文字幕精品三级久久久| 麻豆天美国美国产| 激情五月天丁香| 久久精品一区二区一8| 91观看 国产白丝| 精品在线78| 91女优在线观看 | 91久久精品中文字幕| 色欧美亚洲| 中文字幕乱码在线观看| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 欧美大色交| 九月AV| 激情深爱五月天| 色色五月丁香| 开心五月婷婷激情| 999狠狠综合| 日韩一区二区高清在线观看的| A一区片| 乱伦1色页| 国产精品爽爽v| 亚洲一区操| 乱伦图一区| 久久性爱精品一区| 欧美v亚洲v日韩v最新在线二区| 在线观看成人性爱免费小视频| 亚洲性爱免费电影| 亚洲天堂2020| 四虎国产精品永久在线囯在线 | 欧美色图中文字幕| 男人的天堂日本东京热| 极品色综合| 人人摸.人人色| 秋霞蝌科网日本一区| 久久五月视频| 99热在线不卡| 久久久555| 91九色蝌蚪在线观看| 干日本人少妇午夜寂寞影院| 亚洲AV麻豆Aⅴ无码电影一| 超碰国产精品无码| 色婷婷亚洲婷婷| 秋霞鲁丝午夜无码一区二区三| 综合欧美色图| 无码 黑人一区二区三区| 黄色免费网| 97超碰磁| 青青草亚洲一区| 欧美性少妇| 日骚逼视频| 99视频自拍| 毛片麻豆91糖心精品毛情片| 亚洲一区二区在线观看91| 欧美狠狠| 国产Aα| 久久亚洲人妻| 国产欧美在线观看免费观看| 性久久久| 六六久久日韩不卡| 丝袜综合| 欧美日韩在线国产在线| 久久亚洲天天做| 被窝影院午夜看片无码| 国产丝袜美女诱惑| 日韩黄片影院| 啊啊啊啊啊好大好舒服想要| 免费福利视频中文字幕| 亚洲欧美另类少妇精品| 亚洲男人综合| 影音先锋一区二区在线资源| 粉嫩粉嫩一区性色AV片| 91伊人久久在线| 日韩中文字幕在线视频观看| 91天天综合日韩欧美| 开心六月色| 欧美日韩日产免费网站看| baiduhicn.com。| 吖在线不卡一区二区国产剧情| 美女干逼2| 激情综合五月| 日本一级特级毛片视频| www.高清无码诱惑一区.com | 发朗少妇买婬全视频中文| 国产农村妇女精品| 91网站在线播放| 国产丝袜美女诱惑| 久久黄色性爱视频| 欧美春色| 任你干在线视频| 久久女人视频| 欧美黑人精品一区二区| 边做饭边操逼逼| 国产精品一区二区三| 欧美日韩少妇色情| 日韩 欧美 国产 麻豆| 志村玲子视频一区二区| 国产精品人人爽人人做可爱福利| 殴洲老熟女| 欧美色图偷拍另类| 视频在线观看一二三区| 玖玖玖玖精品国产剧情| 岛国1区2区3区在线观看| 欧美精品97| 久久蜜桃一区二区| 乱老熟女一区二区三区| 麻豆 欧美 日韩| 欧美日韩免费专区在线| 1级黄色夫妻对换性交免费看| 色婷婷蜜臀av| 国产亚洲精品无码三区| 国产男女无套97| 国产真乱mangent| 少妇贴图| 91人妻视频在线| 美女自卫慰黄网站免费| 91爱网| 91大神电影天堂| 91狠狠综合久久久久久| 人妻中文字幕日韩电影| 啊啊啊啊操死我了| 久久少妇人妻| 亚洲色入欧美| 婷婷久草| 女同在线视频一区| 国产久久久9999| 久久人妻四季| 91大神电影天堂| 干B| 97免费视频在线观看视频| 国产精品999aaa| 天天日天天搞天天干| 日本一区二区不卡精品| 国产高清免费不卡av| 欧美国产日韩高清在线| 91欧美偷拍| 热热色综合网| 九九九九精品视频| av在线播放国产一区| 强奸乱亚洲| 九九毛片这里只有精品| 一本色道久久综合熟妇| 日韩免费中文字幕视频| 另类 日韩 熟女| 男人的天堂va| 美女裸体无遮挡永久免费观看网站| 伊人麻豆传媒| 99久久婷婷丁香| 日本大香蕉综合网红本杳社区| 啊啊啊轻点在线观看| 久久91视频| 看看小穴| 超碰97综合网| 国产强奸超碰AV| 江都AV在线| 亚洲人妻色图| 亚洲精品无码少妇久久| 偷拍 精品 另类 四区| 天堂网亚洲区手机版| 天天日天天爽| 亚拍在线| 国模不卡| 欧美精品欧美精品系列 | 六月丁香五月婷婷| 黑人精品久久97| 欧美日产国产在线成人第一区| 欧美大码在线视频| 欧美天天搞| 国产av尤物| 大香蕉99999| 偷拍欧美激情| 亚洲国产精品久久AV| 日韩欧美女优电影| 大香蕉欧美| 欧美婷婷久久| 国产日韩手机视频在线| 亚洲性猛| 亚洲欧美日韩综合在线尤物| 97中文综合| 欧洲无码一区二区| 狼人狠干| 操操操操网黑人| 亚洲精品无码成人久久久99| 国产黄色剧情影片麻豆免费播放| 91碰碰| 天天欧美色| 黄视频免费| 丝袜 中出 制服 人妻 美腿 中文字幕| 亚洲精品日日夜夜52| 好属操| 蜜桃臀一区二区三区久久| 黄片无码在线制服| 日本黄色精品专区网站| 九九九九九九九九九九精品视频| 99国产精品视频尤物| 激情综合 婷婷五月 红杏| 欧美第38页| 在线无码操| 国语人妻精彩刺激| 操操操五月天婷婷丁香影院| 午夜AV污污污| 老女人老91妇女老热女| 久久‘黄片视频| 人人摸.人人色| 这里都是精品在线观看| 激情婷婷综合久久| 91女色| 亚洲天堂日本| 日本女厕偷拍| 国产乱人伦AVA麻豆软件.| 欧美亚洲第一页| 亚洲欧美色图| 综合网少妇| 丰满人妻一区二区三区四区| 福利视频合集| 国产精品视频内谢女人| 久久久久久久久久精| 77国产精品| 五月开心久久AV官网| 久久九七| 欧美综合在线91| 欧美天堂日韩三级国产传媒| 中文字幕在线观看丝袜| 鲁鲁色综合网| 色色色热| 日欧美色| 美女淫穴| 欧美高潮| 久久精品成人一区二区三区蜜臀| 国产热av| 国语精品av| 97国产|免费| 超碰97人妻免费在线| 久久加勒比| 乱论91| 亚洲五月婷| 国产呦精品系列在线观看| 久久久久久久9| 亚洲色图日韩丝袜制服一区二区五月在线| 91美女视频直播| 久久9精品| 99久国产精品午夜性色福利| 成人麻豆av电影网站| 人妻人人做人人澡人人爽欧美一区| 人人操人人狠狠操| 久久婷婷五月天| Aa东京男人的天堂| 亚洲AV色图一区| 20cm女自慰在线日韩欧美| 手机午夜电影神马久久| 97任你吞精| 天美传媒av 在线| 国产性爱欧美性爱在线| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 欧美在线观看综合国产| 五月天黄色av| 青青草原av| 91人妻精华帖| 中文字幕天天天天天| 日本 情色 1区2区3区| 人人操我人人干| 日本黄 R色 成 人网站| 六月婷婷一区二区三区| 91亚洲欧美激情| 欧美激情五月天| 天天操夜夜操| 骚乳在线| 婷婷激情四射| 欧美黑人XXXⅩ高潮交| 操淫穴亚洲五月丁香 | 嗯啊不要在线观看嗯啊| 亚洲色婷婷综合久久久久中文| J?P?NESEHD熟女熟妇伦| 亚洲 中文 女同| 欧美在线干| 婷婷久久综合久| 91老妇女| 亚洲另类久操网| 男人的天堂VA| 人妻精品综合中文字幕在线 | 久热这里| 色欲Av人妻精品一区二| 吻戏激情性巴克| 中文字幕丰满人妻日本| 久久色人体 | 91综合在线| 天美麻豆精品视频99| 天天视频网站黄| 激情小说亚洲| 伊人午夜福利视频| 大伊香蕉在线视频免费| 射综合网| 校园春色综合色| 日日碰狠狠添天天爽超| 日韩精品三级| 亚洲一二三精品久久网| 福利社区午夜一区二区| 一区超碰一区| 国产九九久久久精品| 亚洲精品成人动漫在线| 91蜜桃传媒精品久久久一区二区| 综合色色网| 无码高清少妇久久| 久久久草草精品| 91中文精品日韩欧美在线| 狠狠操夜夜| 无码外流操逼视频| 久久精品人妻一区二区三区| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 东京热99999| 国产成自自拍在线观看| 深夜国产一区二区三区在线看| 亚洲日韩人妻中文字幕一区| 久久久久久久久久久久黄色| 97精品国产97久久久久久免费| 欧美激情性久久久久久| 国产白丝av| 97精品一区二区视频在线观看| 一区二区三区四区久久视1| 一本一道人妻久久一区二区三区 | 国内毛片婷婷六月色| 91人精品妻入口| 97中文字幕九区| 九久久九九久视频| 日日日色色色色色| 五月天久久婷婷亚洲 | 欧美真人抽搐一进一出gif| 亚洲国产丝袜熟女av| 少妇高潮一区二区三区在线| 色路综合| 蜜臀网址在线| 四虎AV在线播放| 78精品在线| 天天影视综合色| 夜夜肏2021| 久肏视频字幕| 久久久久久97| 舔足天天操天天射| 精品人妻一区二区三区日产| 99re黄| 色欧洲| 日韩三级在线观看网站| 国产精品 久久久精品一牛|