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

ARTICLE DETAIL

資訊詳情

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

MySQL到BigQuery數(shù)據(jù)同步:CDC如何彌補(bǔ)周期同步的漏失

MySQL到BigQuery數(shù)據(jù)同步:CDC如何彌補(bǔ)周期同步的漏失 MySQL 到 BigQuery 的數(shù)據(jù)同步最容易被低估的問題就是時(shí)間窗口。無論是定時(shí)導(dǎo)出還是按updated_at增量拉取本質(zhì)上都屬于 periodic syncs。它們的共同點(diǎn)是數(shù)據(jù)庫里的變化并不會(huì)等待調(diào)度任務(wù)開始也不會(huì)按周期整齊地落入邊界。一次刪除、一條字段被改回舊值、一張表在夜間被大批量 UPDATE 后又改回來這些事件都可能發(fā)生在兩批同步任務(wù)的間隙最終 BigQuery 里的數(shù)據(jù)既不是源表的真實(shí)狀態(tài)也不是任何歷史時(shí)刻的真實(shí)狀態(tài)。CDCChange Data Capture通過讀取 MySQL binlog把每一條數(shù)據(jù)變更作為事件流送到 BigQuery正好從機(jī)制上補(bǔ)上了這個(gè)缺口。這篇文章圍繞周期同步會(huì)漏什么、binlog 為什么能避免漏、落地時(shí)要注意什么展開適合正在設(shè)計(jì)數(shù)據(jù)管道、給數(shù)倉接增量數(shù)據(jù)或者被批量任務(wù)數(shù)據(jù)不一致問題困擾的開發(fā)者與數(shù)據(jù)工程師。1. 周期同步在 MySQL 到 BigQuery 場景下到底漏了什么1.1 常見的三種周期同步寫法先看最常用的三種同步方式它們并不只是實(shí)現(xiàn)細(xì)節(jié)不同能捕獲的數(shù)據(jù)變化粒度也完全不同。第一種是全量導(dǎo)出覆蓋。直接把 MySQL 表導(dǎo)出成文件或通過 SQL 拉取寫入 BigQuery 臨時(shí)表再覆蓋目標(biāo)表。這種方式能保證目標(biāo)表最終狀態(tài)一致但同步窗口很長且 BigQuery 做覆蓋時(shí)下游可能讀到一半數(shù)據(jù)。數(shù)據(jù)量一旦上億這個(gè)方案基本不可持續(xù)。第二種是按自增 ID 增量拉取。記錄max(id)每次只拉大于該 ID 的行像這樣SELECT * FROM orders WHERE id :last_max_id ORDER BY id;這個(gè)方案只能捕獲新增數(shù)據(jù)。業(yè)務(wù)表一旦發(fā)生 UPDATE主鍵 ID 不變增量 SQL 永遠(yuǎn)拉不到這一行。DELETE 更不會(huì)出現(xiàn)在結(jié)果里。第三種是按更新時(shí)間戳增量拉取SELECT * FROM orders WHERE updated_at :last_sync_ts;這是目前最常見的周期同步方案前提是業(yè)務(wù)表有updated_at字段并且所有寫入路徑都正確更新這個(gè)字段。實(shí)際項(xiàng)目里這個(gè)前提經(jīng)常被破壞某些批量導(dǎo)入腳本沒有更新updated_at某些框架寫入時(shí)沒有映射該字段于是出現(xiàn)數(shù)據(jù)明明變了增量 SQL 卻查不到的問題。1.2 周期同步一定會(huì)錯(cuò)過的幾類變更物理刪除是最典型的一類。DELETE 之后這條記錄不再存在于表中任何基于當(dāng)前表狀態(tài)的 SELECT 都無法發(fā)現(xiàn)它曾經(jīng)存在過。全量對(duì)拍能發(fā)現(xiàn)問題但只能事后補(bǔ)救而且對(duì)拍本身在大表上成本極高。沒有更新時(shí)間字段或者更新時(shí)沒有寫入時(shí)間戳也是一類。訂單表如果通過第三方系統(tǒng)直接改庫或者 DBA 手工執(zhí)行 UPDATE 時(shí)沒有維護(hù)updated_at那么增量邊界從一開始就是錯(cuò)的。同周期內(nèi)狀態(tài)回跳同樣會(huì)被掩蓋。假設(shè)訂單在 00:00:10 從pending改為paid00:00:20 又改回pending。周期任務(wù)在 01:00 運(yùn)行拉到的最終狀態(tài)還是pending。從業(yè)務(wù)角度看中間那次paid狀態(tài)也曾經(jīng)是真實(shí)數(shù)據(jù)但周期同步完全感知不到。高頻更新更不用說。一張促銷表每秒更新幾千行周期任務(wù)每隔 5 分鐘拉一次單行在周期內(nèi)被反復(fù)更新后最終拉到的只是最后一次值中間所有取值全部丟失。1.3 為什么不是多跑幾次就能解決周期同步的失敗模式是邏輯性漏數(shù)據(jù)不是漏跑任務(wù)。把調(diào)度頻率從小時(shí)改成分鐘只是縮小時(shí)間窗口并沒有改變讀取當(dāng)前表狀態(tài)的本質(zhì)。一張表在周期內(nèi)發(fā)生了 100 次更新周期同步只能看到最后一行binlog 能看到 100 個(gè)事件并且每個(gè)事件都保留前鏡像和后鏡像。這就是原理層面的差異。周期同步試圖通過查詢結(jié)果反推變化而 binlog 是 MySQL 自己記錄的寫操作流水賬。流水賬不會(huì)因?yàn)闃I(yè)務(wù)表沒有updated_at就缺頁也不會(huì)因?yàn)?DELETE 后記錄消失就抹去歷史。1.4 三種方案的能力對(duì)比維度全量快照增量字段輪詢binlog CDC刪除事件全量對(duì)拍后才發(fā)現(xiàn)通常無法發(fā)現(xiàn)每條 DELETE 都有對(duì)應(yīng)事件更新歷史只有最后狀態(tài)只有最后一次變更每次 UPDATE 都有前鏡像和后鏡像對(duì)業(yè)務(wù)表要求無必須有updated_at等字段無binlog 與業(yè)務(wù)表結(jié)構(gòu)獨(dú)立實(shí)時(shí)性取決于調(diào)度周期取決于調(diào)度周期秒級(jí)到分鐘級(jí)可配置對(duì)源庫壓力大全表掃描代價(jià)高中等取決于索引較小讀取日志而不是反復(fù)掃描表從這張表能看出周期同步不是慢而是漏。CDC 的價(jià)值不是讓同步更快而是讓變化過程本身可見。2. binlog 為什么能捕捉每一次變化CDC 的原理2.1 binlog 是什么binlog 是 MySQL 的二進(jìn)制日志記錄所有改變數(shù)據(jù)庫內(nèi)容的操作包括 INSERT、UPDATE、DELETE以及部分 DDL。MySQL 主從復(fù)制、崩潰恢復(fù)、數(shù)據(jù)恢復(fù)都依賴它??梢岳斫鉃?MySQL 把每一次寫操作按順序?qū)懙揭槐玖魉~上。binlog 并不是默認(rèn)可用的。MySQL 5.7 中l(wèi)og_bin默認(rèn)關(guān)閉8.0 默認(rèn)開啟但不同發(fā)行版和云廠商的默認(rèn)值可能不同落地前必須先確認(rèn)。如果 binlog 沒有開啟后續(xù)所有 CDC 方案都無從談起。2.2 ROW 格式給 CDC 提供了什么binlog 有三種格式STATEMENT、ROW、MIXED。STATEMENT 格式記錄的是 SQL 語句本身例如UPDATE orders SET statuspaid WHERE id1001;。這種格式日志量小但無法可靠還原每一行在語句執(zhí)行前后的具體值。MIXED 格式是兩者的混合MySQL 會(huì)根據(jù)語句類型自動(dòng)選擇但對(duì)于 CDC 場景依然不夠穩(wěn)定。CDC 要求使用 ROW 格式。ROW 格式下binlog 直接記錄行的變化包括字段級(jí)的前鏡像和后鏡像。具體來說INSERT 事件包含插入后的完整行數(shù)據(jù)。UPDATE 事件包含變更前的整行數(shù)據(jù)和變更后的整行數(shù)據(jù)。DELETE 事件包含刪除前的整行數(shù)據(jù)。這意味著 CDC 消費(fèi)者不僅能知道某張表發(fā)生了變化還能拿到 哪一行的哪個(gè)字段從什么值變成什么值。2.3 CDC 連接器如何消費(fèi) binlogDebezium、Flink CDC 這類工具在原理上會(huì)偽裝成 MySQL 從庫。它們通過 MySQL 的復(fù)制協(xié)議從主庫拉取 binlog并把 binlog 里的二進(jìn)制事件解析成結(jié)構(gòu)化的 JSON 變更事件。連接器需要記錄自己的消費(fèi)位點(diǎn)。傳統(tǒng)方式是記錄 binlog 文件名加偏移量例如mysql-bin.000023的position 45123。更可靠的方式是使用 GTID即全局事務(wù)標(biāo)識(shí)符。GTID 能唯一標(biāo)識(shí)每個(gè)事務(wù)即使 binlog 文件被清理只要 MySQL 實(shí)例保留了完整的事務(wù)歷史連接器也能定位到正確的起點(diǎn)。CDC 連接器通常具備先快照再增量的能力。首次啟動(dòng)時(shí)它會(huì)先讀取一次源表全量數(shù)據(jù)記錄當(dāng)時(shí)的 binlog 位點(diǎn)之后繼續(xù)從該位點(diǎn)消費(fèi)增量從而保證從啟動(dòng)那一刻起不遺漏后續(xù)變更。2.4 從 binlog 到 BigQuery 的完整鏈路一個(gè)常見的生產(chǎn)架構(gòu)是MySQL master - binlog - CDC Connector (Debezium / Flink CDC) - Kafka Topic - 流處理或?qū)懭氤绦?- BigQuery Storage Write API / Load Job - BigQuery Table也可以簡化為MySQL master - Flink CDC - BigQuery 目標(biāo)表無論采用哪種架構(gòu)核心都是從日志讀取變化而不是定時(shí)查詢表。這也決定了后面的環(huán)境準(zhǔn)備、配置、驗(yàn)證和排錯(cuò)方式。3. 前期準(zhǔn)備MySQL、BigQuery 和權(quán)限一項(xiàng)都不能省3.1 版本與前置條件在配置 CDC 之前先確認(rèn)環(huán)境是否滿足基本條件組件要求說明MySQL5.7 或 8.0開啟 binlog5.7 建議顯式開啟8.0 確認(rèn)默認(rèn)配置BigQuery數(shù)據(jù)集、目標(biāo)表、服務(wù)賬號(hào)建議單獨(dú)建服務(wù)賬號(hào)避免共用管理員賬號(hào)CDC 工具Debezium 或 Flink CDC版本需要與 MySQL 和 Kafka 版本匹配網(wǎng)絡(luò)源庫與數(shù)倉側(cè)連通私網(wǎng)優(yōu)先公網(wǎng)場景需要做好傳輸加密如果源 MySQL 是云數(shù)據(jù)庫還需要查看云廠商是否允許開啟 binlog 保留策略、是否開放復(fù)制賬號(hào)權(quán)限。有些托管數(shù)據(jù)庫默認(rèn)不開放REPLICATION SLAVE這是接入 CDC 前最容易發(fā)現(xiàn)的阻塞點(diǎn)。注意開啟 binlog 并切換為 ROW 格式后binlog 日志量通常會(huì)變大磁盤占用和復(fù)制延遲都會(huì)上升。生產(chǎn)環(huán)境切換前需要評(píng)估磁盤余量。3.2 修改 MySQL 配置下面是一份最小可用的 MySQL CDC 配置示例[mysqld] server_id 1001 log_bin /var/log/mysql/mysql-bin.log binlog_format ROW binlog_row_image FULL expire_logs_days 7 # MySQL 8.0 可用以下參數(shù)控制 binlog 保留時(shí)長 # binlog_expire_logs_seconds 604800每個(gè)參數(shù)的作用server_idMySQL 實(shí)例在復(fù)制拓?fù)渲械奈ㄒ粯?biāo)識(shí)。CDC 客戶端也會(huì)占用一個(gè) server-id不能與主從庫中其他節(jié)點(diǎn)重復(fù)。log_bin開啟 binlog并指定日志文件路徑。binlog_formatROW讓 binlog 記錄行級(jí)變更。CDC 必須使用 ROW 格式。binlog_row_imageFULL讓 UPDATE 事件包含整行前鏡像和后鏡像。如果設(shè)置為 MINIMALbinlog 只包含被修改的字段和主鍵CDC 拿不到完整舊行和新行。expire_logs_days控制 binlog 文件保留天數(shù)。保留太短CDC 位點(diǎn)落后時(shí)可能追不上保留太長磁盤占用過大。常見建議是 3 到 7 天具體要結(jié)合源庫寫入量和磁盤容量調(diào)整。修改配置后需要重啟 MySQL。重啟前確認(rèn)max_allowed_packet等參數(shù)不會(huì)限制大事務(wù)的 binlog 傳輸。3.3 創(chuàng)建 MySQL CDC 賬號(hào)建議為 CDC 單獨(dú)創(chuàng)建一個(gè)賬號(hào)避免使用 rootCREATE USER cdc_user% IDENTIFIED BY strong_password; GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO cdc_user%; FLUSH PRIVILEGES;三個(gè)權(quán)限的含義SELECT用于 CDC 工具首次啟動(dòng)時(shí)的全量快照以及讀取表結(jié)構(gòu)信息。REPLICATION SLAVE允許該賬號(hào)通過復(fù)制協(xié)議讀取 binlog這是 CDC 的核心權(quán)限。REPLICATION CLIENT允許執(zhí)行SHOW MASTER STATUS、SHOW BINARY LOG STATUS等命令用于確認(rèn)位點(diǎn)信息。不要把ALL PRIVILEGES都授出去。CDC 賬號(hào)只需要讀取能力不需要寫源庫。3.4 BigQuery 側(cè)準(zhǔn)備BigQuery 側(cè)需要準(zhǔn)備數(shù)據(jù)集、目標(biāo)表和服務(wù)賬號(hào)。在 Google Cloud Console 中先創(chuàng)建數(shù)據(jù)集例如analytics。目標(biāo)表建議在接入 CDC 之前就定義好字段類型盡量與 MySQL 類型對(duì)應(yīng)。如果后續(xù)依賴 BigQuery 自動(dòng)加列容易遇到 schema 不一致導(dǎo)致寫入失敗。服務(wù)賬號(hào)需要授予 BigQuery Data Editor 或更細(xì)粒度的角色。把服務(wù)賬號(hào)的 JSON 密鑰下載到寫入服務(wù)所在機(jī)器并通過環(huán)境變量GOOGLE_APPLICATION_CREDENTIALS指向密鑰文件。BigQuery 是列式存儲(chǔ)目標(biāo)表 schema 在寫入前就要對(duì)齊。CDC 事件字段如果比目標(biāo)表多需要做過濾如果少目標(biāo)表多出的列會(huì)使用默認(rèn)值或 NULL。4. 最小落地鏈路Debezium 捕獲 binlog程序?qū)懭?BigQuery4.1 兩種常用的技術(shù)選型常見方案有兩種方案鏈路適合場景Debezium KafkaMySQL - Debezium - Kafka - 寫入程序 - BigQuery已有 Kafka 基礎(chǔ)設(shè)施需要多消費(fèi)方Flink CDCMySQL - Flink CDC - BigQuery Sink團(tuán)隊(duì)熟悉 Flink希望用 SQL 處理流下面以 Debezium Kafka Python 消費(fèi)者為例把鏈路拆開看。這樣更容易理解每個(gè)環(huán)節(jié)的職責(zé)。Flink CDC 只是把 Debezium 和流處理合并到一個(gè)框架里原理一致。4.2 Debezium connector 的配置Debezium 通過 Kafka Connect 運(yùn)行一個(gè)典型配置如下{ name: mysql-orders-connector, config: { connector.class: io.debezium.connector.mysql.MySqlConnector, database.hostname: 10.0.0.10, database.port: 3306, database.user: cdc_user, database.password: xxxx, database.server.id: 5400, database.include.list: ecommerce, table.include.list: ecommerce.orders, database.history.kafka.bootstrap.servers: kafka:9092, database.history.kafka.topic: schema-changes.ecommerce, topic.prefix: mysql, include.schema.changes: true } }關(guān)鍵參數(shù)database.server.idDebezium 會(huì)占用一個(gè) server-id。它必須與 MySQL 現(xiàn)有主從庫、其他 CDC 實(shí)例的 server-id 不沖突否則連接會(huì)被 MySQL 拒絕。database.include.list/table.include.list限定監(jiān)聽的庫表。只同步需要的表能顯著減少 binlog 解析壓力。database.history.kafka.topicDebezium 用這個(gè) topic 記錄表結(jié)構(gòu)歷史。binlog 里的舊事件在解析時(shí)可能依賴歷史 schema因此這個(gè) topic 不能隨意刪除。topic.prefix生成 Kafka topic 名稱的前綴。最終 topic 名稱一般是{topic.prefix}.{database}.{table}。4.3 變更事件長什么樣Debezium 輸出的變更事件是一段 JSON核心結(jié)構(gòu)如下{ before: { id: 1001, status: pending }, after: { id: 1001, status: paid }, source: { db: ecommerce, table: orders, server_id: 1001, ts_ms: 1719900000123 }, op: u }op字段表示操作類型op 值含義事件內(nèi)容cINSERT只有afteruUPDATE有before和afterdDELETE只有beforer快照讀取類似 INSERTafter為快照行注意DELETE 事件沒有after。寫入 BigQuery 時(shí)如果目標(biāo)表要反映刪除必須自己定義刪除策略比如寫入一條帶刪除標(biāo)記的記錄或者通過主鍵 MERGE 刪除目標(biāo)行。4.4 寫入 BigQuery 的示例程序下面是一個(gè)最小 Python 消費(fèi)者示例從 Kafka 讀取 MySQL 變更事件批量寫入 BigQueryimport json from google.cloud import bigquery from kafka import KafkaConsumer PROJECT my-project DATASET analytics TABLE orders client bigquery.Client(projectPROJECT) table_ref client.get_table(f{PROJECT}.{DATASET}.{TABLE}) def process_event(msg): payload json.loads(msg.value()) op payload.get(op) if op in (c, r): return payload[after] if op u: return payload[after] if op d: before payload[before] before[_is_deleted] True return before return None consumer KafkaConsumer( mysql.ecommerce.orders, bootstrap_serverskafka:9092, group_idbigquery-sync, auto_offset_resetlatest, enable_auto_commitFalse, ) rows [] batch_size 500 for message in consumer: row process_event(message) if row is not None: rows.append(row) if len(rows) batch_size: errors client.insert_rows_json(table_ref, rows) if not errors: consumer.commit() rows [] else: print(errors)這個(gè)示例說明的是思路不是完整生產(chǎn)代碼。insert_rows_json適合小規(guī)模驗(yàn)證生產(chǎn)環(huán)境更推薦使用 BigQuery Storage Write API并配合監(jiān)控、重試和死信隊(duì)列。enable_auto_commitFalse是為了避免消息未成功寫入就提交位點(diǎn)減少丟失風(fēng)險(xiǎn)但代價(jià)是重復(fù)消費(fèi)因此目標(biāo)表必須容忍重復(fù)。4.5 如果團(tuán)隊(duì)已經(jīng)用 Flink可以考慮 Flink CDCFlink CDC 可以把上面的鏈路壓縮成一個(gè) SQL 和一套連接器。用 Flink SQL 創(chuàng)建 MySQL CDC 源表CREATE TABLE mysql_orders ( id INT, user_id INT, amount DECIMAL(10, 2), status STRING, updated_at TIMESTAMP(3), PRIMARY KEY (id) NOT ENFORCED ) WITH ( connector mysql-cdc, hostname 10.0.0.10, port 3306, username cdc_user, password xxxx, database-name ecommerce, table-name orders, server-id 5400-5406, scan.incremental.snapshot.enabled true );scan.incremental.snapshot.enabled在較新版本默認(rèn)開啟。它讓 Flink CDC 以分片方式并行快照大表不需要像舊版本那樣先對(duì)全表加鎖再讀取對(duì)大表更友好。源表創(chuàng)建后可以再創(chuàng)建 BigQuery Sink 表通過INSERT INTO完成同步。具體 Sink 類名和參數(shù)取決于連接器版本落地前要以當(dāng)前使用的 Flink 和連接器文檔為準(zhǔn)。5. 怎么驗(yàn)證 binlog 同步?jīng)]有漏數(shù)據(jù)5.1 先確認(rèn) binlog 真的開了進(jìn)入 MySQL 命令行執(zhí)行SHOW VARIABLES LIKE log_bin; SHOW VARIABLES LIKE binlog_format; SHOW VARIABLES LIKE binlog_row_image;預(yù)期結(jié)果中l(wèi)og_bin為ONbinlog_format為ROWbinlog_row_image為FULL。還可以執(zhí)行SHOW BINARY LOG STATUS;如果輸出包含當(dāng)前 binlog 文件名和 position說明 binlog 文件正在正常寫入。5.2 驗(yàn)證 Kafka 收到了哪些變更先用 Kafka 自帶的控制臺(tái)消費(fèi)命令觀察 MySQL 變更是否進(jìn)入 topickafka-console-consumer.sh \ --bootstrap-server kafka:9092 \ --topic mysql.ecommerce.orders \ --from-beginning然后在 MySQL 中分別執(zhí)行一次 UPDATE 和一次 DELETEUPDATE orders SET status paid WHERE id 1001; DELETE FROM orders WHERE id 1002;正常情況下消費(fèi)端會(huì)看到op為u和d的兩條事件。這一步直接驗(yàn)證了周期同步最難做到的能力刪除和更新都能被捕獲。5.3 驗(yàn)證 BigQuery 目標(biāo)表觀察 BigQuery 目標(biāo)表是否有新數(shù)據(jù)寫入??梢酝ㄟ^控制臺(tái)查詢也可以執(zhí)行SELECT COUNT(*) FROM my-project.analytics.orders; SELECT MAX(updated_at) FROM my-project.analytics.orders;必須注意一個(gè)容易誤判的地方BigQuery 目標(biāo)表不會(huì)因?yàn)槭盏搅?DELETE 事件就自動(dòng)刪除對(duì)應(yīng)行。如果寫入程序只是把a(bǔ)fter或before以追加方式寫入刪除事件只會(huì)變成一行帶標(biāo)記的數(shù)據(jù)。要真實(shí)反映刪除目標(biāo)表需要按主鍵做 MERGE或者通過分區(qū)覆蓋實(shí)現(xiàn)。驗(yàn)證時(shí)先明確自己的目標(biāo)表語義是追加明細(xì)還是鏡像源表。5.4 延遲監(jiān)控指標(biāo)從 binlog 到 BigQuery 的同步不是一次性的必須持續(xù)監(jiān)控。常見指標(biāo)包括指標(biāo)含義告警建議Kafka consumer lag消費(fèi)程序落后的消息數(shù)持續(xù)增長則告警Debezium 位點(diǎn)與當(dāng)前 binlog 的文件間隔連接器是否在追趕超過 binlog 保留期則高風(fēng)險(xiǎn)端到端延遲事件寫入 MySQL 到進(jìn)入 BigQuery 的時(shí)間差根據(jù)業(yè)務(wù)要求設(shè)置閾值BigQuery 寫入錯(cuò)誤率schema 不匹配等寫入失敗立即告警把位點(diǎn)落后和consumer lag 持續(xù)增長作為關(guān)鍵告警能提前發(fā)現(xiàn)大事務(wù)、網(wǎng)絡(luò)抖動(dòng)或消費(fèi)程序故障。6. 數(shù)據(jù)到達(dá) BigQuery 后模式映射、DDL 和冪等才是真正的坑6.1 MySQL 與 BigQuery 類型映射字段類型映射是 CDC 鏈路里最容易踩坑的部分。下面是常見映射關(guān)系MySQL 類型BigQuery 類型注意事項(xiàng)INT / INTEGERINT64無符號(hào) INT 可能超過 INT64 有符號(hào)范圍BIGINTINT64超過 2^63-1 的數(shù)據(jù)要改用 NUMERIC 或 STRINGDECIMAL(p, s)NUMERIC / BIGNUMERIC金額字段不要用 FLOAT精度會(huì)丟失DATETIMEDATETIME無時(shí)區(qū)語義按原值寫入TIMESTAMPTIMESTAMP建議統(tǒng)一按 UTC 存儲(chǔ)VARCHAR / TEXTSTRING長度和編碼要注意JSONJSONBigQuery 需要字段模式為 JSON 或先轉(zhuǎn)成 STRINGTINYINTINT64 / BOOL看業(yè)務(wù)語義確定最容易出問題的是 DECIMAL。MySQL 中的DECIMAL(10, 2)如果映射成 BigQuery 的 FLOAT640.1 這樣的值可能出現(xiàn)精度誤差。正確做法是映射為 NUMERIC。TIMESTAMP 也容易出問題。MySQL 的TIMESTAMP有會(huì)話時(shí)區(qū)概念CDC 事件里的ts_ms可能是 UTC 時(shí)間而業(yè)務(wù)字段本身可能是本地時(shí)間。建議在寫入端統(tǒng)一規(guī)范避免目標(biāo)表同一列混入不同時(shí)區(qū)的數(shù)據(jù)。6.2 DDL 變更會(huì)打斷 CDC當(dāng) MySQL 表結(jié)構(gòu)變化時(shí)CDC 鏈路會(huì)面臨兩個(gè)層面的問題。第一Debezium 需要依賴database.history.kafka.topic中的 schema 歷史來解析 binlog 里的舊事件。如果這個(gè) topic 被刪除或清理連接器可能無法反序列化舊的 binlog 事件。第二BigQuery 目標(biāo)表的 schema 不會(huì)自動(dòng)跟隨 MySQL DDL 變化。MySQL 加了一列CDC 事件里出現(xiàn)了新字段但 BigQuery 目標(biāo)表沒有這一列寫入就會(huì)報(bào)錯(cuò)。處理建議是把 DDL 納入變更流程先審查 MySQL DDL 對(duì)同步鏈路的影響。先在 BigQuery 目標(biāo)表補(bǔ)充或調(diào)整 schema。再在 MySQL 執(zhí)行 ALTER TABLE。同步完成后核對(duì)事件是否正常。對(duì)于大表的 ALTER TABLE還可能導(dǎo)致源庫鎖表和復(fù)制延遲。生產(chǎn)環(huán)境做主從切換時(shí)要評(píng)估 DDL 對(duì) binlog 位點(diǎn)的影響。注意不要依賴 BigQuery 自動(dòng)加列來處理所有 DDL 變更。自動(dòng)加列在不同版本和連接器里行為不一致且不能處理列重命名、刪除、類型變更等復(fù)雜操作。6.3 至少一次語義下重復(fù)是正常的binlog CDC 鏈路通常提供 at-least-once 語義。網(wǎng)絡(luò)閃斷、消費(fèi)程序重啟、位點(diǎn)提交失敗都可能導(dǎo)致同一事件被重復(fù)消費(fèi)。因此目標(biāo)表必須能接受重復(fù)。常見做法按主鍵去重寫入前先判斷目標(biāo)表是否已有該主鍵。使用 BigQuery MERGE按主鍵更新目標(biāo)行。在記錄中增加事件版本字段如event_ts_ms或 GTID寫入時(shí)取較新的事件。下面是 BigQuery MERGE 的簡化思路MERGE my-project.analytics.orders AS t USING changes AS s ON t.id s.id WHEN MATCHED THEN UPDATE SET status s.status, amount s.amount WHEN NOT MATCHED THEN INSERT (id, user_id, amount, status, updated_at) VALUES (s.id, s.user_id, s.amount, s.status, s.updated_at);MERGE 在處理刪除事件時(shí)還可以加一個(gè)WHEN MATCHED AND s._is_deleted TRUE THEN DELETE分支。但 MERGE 的成本比流式追加高適合對(duì)一致性要求高、更新頻率可控的場景。如果表更新量極大需要考慮分區(qū)覆蓋、冷熱分離等方案。6.4 亂序事件怎么處理同一個(gè)主鍵的多條變更在 Kafka 中如果分布到不同分區(qū)消費(fèi)程序收到的順序可能和源庫事務(wù)提交順序不一致。比如先提交了statuspaid后提交了statuscancelled亂序可能導(dǎo)致目標(biāo)表最終停在paid。處理方式Kafka Topic 按主鍵 hash 分區(qū)保證同一主鍵路由到同一分區(qū)。寫入端使用 binlog 里的ts_ms或 GTID 做排序只接受更新的事件。如果業(yè)務(wù)允許短暫延遲可以在寫入端做窗口緩沖按主鍵排序后批量提交。如果源表存在刪主鍵后重新插入同一主鍵的場景還需要區(qū)分刪除后插入和舊 UPDATE 后到否則可能出現(xiàn)舊數(shù)據(jù)覆蓋新數(shù)據(jù)的現(xiàn)象。這種情況下GTID 或事務(wù) ID 是更可靠的順序依據(jù)。7. 常見問題排查從現(xiàn)象倒推 binlog 鏈路故障7.1 現(xiàn)象連接器啟動(dòng)時(shí)報(bào)權(quán)限不足或無法讀取 binlog可能原因MySQL 賬號(hào)缺少REPLICATION SLAVE權(quán)限。連接器配置的 server-id 與現(xiàn)有從庫沖突。binlog 未開啟或者binlog_format不是 ROW。排查命令SHOW VARIABLES LIKE binlog_format; SHOW GRANTS FOR cdc_user%; SHOW PROCESSLIST;處理方式核對(duì) MySQL 配置和賬號(hào)權(quán)限修改后重啟連接器。server-id 沖突通常會(huì)在 MySQL 錯(cuò)誤日志里看到A slave with the same server_uuid/server_id as this slave has connected to the master之類的信息。7.2 現(xiàn)象任務(wù)運(yùn)行一段時(shí)間后Kafka 里有歷史事件但新事件遲遲不來可能原因Kafka Connect 或連接器進(jìn)程掛掉后位點(diǎn)沒有正確恢復(fù)。MySQL 實(shí)例重啟導(dǎo)致 binlog 文件名變化連接器找不到舊位點(diǎn)對(duì)應(yīng)的文件。table.include.list配置了大小寫敏感的表名實(shí)際表名大小寫不一致。排查方式kafka-consumer-groups.sh --bootstrap-server kafka:9092 --describe --group bigquery-sync重點(diǎn)看CURRENT-OFFSET、LOG-END-OFFSET和LAG。如果 consumer lag 為 0 但新數(shù)據(jù)沒進(jìn)來檢查連接器日志里 binlog offset 是否還在推進(jìn)。必要時(shí)做一次 重新快照 增量 的初始化。7.3 現(xiàn)象BigQuery 寫入報(bào)錯(cuò)字段不存在或類型不匹配可能原因MySQL DDL 新增了列BigQuery schema 沒有同步。DECIMAL 字段映射成了 FLOAT64導(dǎo)致精度丟失或?qū)懭胧?。MySQL JSON 字段映射到了 BigQuery STRING但事件里是 JSON 對(duì)象。排查方式SELECT column_name, data_type FROM my-project.analytics.INFORMATION_SCHEMA.COLUMNS WHERE table_name orders;處理方式定位是哪一列不匹配先同步 schema再重放失敗事件。不要直接丟棄報(bào)錯(cuò)事件否則會(huì)在對(duì)賬時(shí)發(fā)現(xiàn)數(shù)據(jù)缺口。7.4 現(xiàn)象同步延遲持續(xù)增長可能原因源庫執(zhí)行了大事務(wù)例如一次 UPDATE 超過十萬行binlog 事件量巨大。消費(fèi)程序單線程寫入 BigQuery寫入速度跟不上源庫變更速度。網(wǎng)絡(luò)帶寬不足或者 BigQuery 寫入配額受限。處理方式在源庫側(cè)避免一次性更新超大范圍拆成小事務(wù)。寫入端改用批量并行寫并啟用 Storage Write API。增加監(jiān)控觀察 binlog 保留時(shí)間是否充足。如果消費(fèi)端位點(diǎn)落后太遠(yuǎn)而 binlog 文件已經(jīng)過期可能需要重新快照。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
啊啊啊骚| 亚洲成人性| 久久一级无码精品毛片6| 超碰97起碰| 色偷偷男人的天堂麻豆| 亚洲国产欧美另类自拍| 中文字幕制服欧美久久一区| 日韩少妇无吗| 久操网线| 中文字幕神马久久| 涩涩涩综合| 97青青操视频| 74成人在线| 欧美男人一区| 亚洲 欧美 日韩另类 麻豆| 爱爱动态60秒| 九一综合精品视品av| 91精品国| 亚洲nv男人的天堂网| 亚洲drav色图| 女人双腿搬开让男人桶| 四虎在线免费视频| 成人七区| 性欧美体内射精| 97欧美综合| 国产激情综合五月久久| 91中文字幕在线观看| 国产精品成人蜜臀AV在线| 久草在| 欧美色视频在线| 97超碰无码网| 欧美麻豆成人同性GⅤ在线| 天天综合网~91入口| 国产女人和拘做爰视频 | 久久精品日韩专区免费观看| 国产黄片精品在线| 中文字幕人乱码中文字的预防方法 | 亚洲男人天堂Av| 婷婷探花久久精品一区| 婷婷色中文字幕| 婷婷10月天青娱乐| 亚洲成人精品久久久| 日韩成人私密一级精品av| 啊好大好舒服| 在线免费观看日韩一区| 四虎影视国产精品| 欧美熟妇乱码在线一区| 四虎影视永久在线免费| 97在线公开视频| 色综合尤物| 情色大香蕉| 99爱视频| 日韩综合成人免费视频| 国产热av| 蜜伊人色综合97| 国产美女裸体秘 永久无遮挡| 97超碰热线| 日韩成人精品视频自拍| 男人天堂新| 91女网站| 激情丁香五月婷婷| 思思热久久成人| 亚洲激情在线| 男人的天堂久久狠| av操操不卡| 亚洲九月丁香| 激情黄色片在线观看| 91五月天| 日本日日色视频| 黄页网站免费高清在线观看| 91丝袜在线观看| 亚洲骚逼少妇| 97久久国产亚洲精品超碰热| 综合网久久| avav青青草久久夜| 啊啊啊 在线观看| 人妻干天天| 白嫩妹子国产骚| 色一射色一射| 五月婷婷六月丁香| 超碰人妻天天干| 2024黄色视频| 啊啊啊啊免费视频| 超碰久超碰久| 超碰久久精品| 亚洲色9| 日韩无码操逼片| 中文久久久| 国产精品在线一区二区| 性色中出| 麻豆国产尤物AV| 天天综合网日韩7799| 久久久一区二区三区四区五区| 亚洲色丰满少妇高潮| 色五月婷婷久久| 欧美激情性久久久久久| 亚洲欧美一区二区三区一猛片| 久久AV无码AV| 国产精品天堂| 色噜噜国产精品视频一区二区| 久久色一区二区| 精品一区96| 狠狠爱综合| 综合欧美激情网| 自拍内地三级在线观看| 97久久国产精品女不卡| 91久热| 欧美亚洲涩涩| 伊人在线大香蕉视频久久| 婷婷综合在线观看| 爱干爱射网啊啊啊| 久久这里精品国产99丫e6| 人人爱操| 亚洲第一页色| 野狼激情网| 五月婷婷综合在线| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 日本Suv精品一区二区| 亚洲日韩熟女人妻高清在线| 色诱avtt| 欧美色图私拍91| 国产精品天美传媒| 97超碰精品成| 97在线观看免费| avav青青草久久夜| 变态综合色| 色狠狠一区二区三区香蕉| 97超碰这里只有精品| 亚洲少妇激情视频| 精品久久大胆人体| 色臀aV| 大香蕉日亚洲日本亚大| 亚洲色人| 国内精品久久人妻性色av| 色网色网色网色网色网色| 青草地一本线一区二区三区| 可乐操在线| 亚洲成人ab| 四虎影视精品| 大香蕉欧美| 午夜美女诱惑电源网| 亚春色色| 蜜乳中文字幕a在线| 日韩三级伦理中文字幕| 国产福利小视频高清在线观看| 国产亚洲色婷婷久久99精品91葵花宝典 | 嗯嗯嗯啊啊啊操的我好爽 | 成年人一级黄色毛片大全在线观看| 91人妻做a观看视频| 日韩黄色成人性爱| 日韩精品区二区三区不卡| 亚洲熟女国产综合另类| 欧日韩在线观看| 久久精品99久久久久久| 91久久久久久久久18| 亚洲精品免费中文字幕| 操屄不卡视频| 91蜜臀熟女| 嗯嗯啊啊好疼| 一区二区三区麻豆| 国产精品嫩草久久久久| 丁香婷婷啪啪| 国产精品欧美激在线| 成人一级二级| 91视频伊人| 中国探花熟女| 91亚州欧美| 日本高清视频在线观看黄已三辽| 亚洲精品久久久久毛片A片拉屎| 最近2018中文字幕在线高清第一页| 国产99精品一区二区三区免费| 日日操丁香五月天| 蜜桃在线观看一区二区三区| 精品久久97| 国产操伦| 午夜呻吟欧美| 无码人妻毛片丰满熟妇精品区 | 日本不卡高清免v欧美日韩在线观看| 歐美性天天| 亚洲中文sv| 樱花蜜乳av| 亚洲男人天堂Av| 五月天加勒比啪| 亚洲久久久久| 婷婷五月天av| 大香蕉92| 插日本熟女视频| 国产夫妻一区二区| 全国男人天堂网| 亚洲三区视频| 午夜呻吟欧美| 欧美色宗合| 麻豆国产免费影片| 97精品中文字幕| 五月婷亚洲精品天堂| 亚洲人妻中文高清| 久久综合18p| 九九热精品| 深夜激情无码| 欧美玖玖爱免费玖玖| 亚洲av国产av综合av卡| 蜜臀99999| 免费成人在线观看91| 蜜桃臀av在线观看| 99久久99九九99九九九| 亚洲一区二区中文字幕| 影音资源男人日韩| 国产成人在线观看综合| 黄色片G G G| 国模无码人体一区二区三| 亚洲欧美精品一区天堂久久 | 午夜天堂精品久久久久91| 我想要啊 啊 啊| 国产精品久久久久久 百度| 蜜臀久久99精品| 香蕉欧美| 夜夜中出国产| 欧美天天射| 99精品在线播放| 久操电影网| 欧美做爰无码A片视频| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 人妻精品视频一区二区| 亚洲狠狠入| av在线资源| 欧美春色| 欧美图片色综合| 九九精品无码专区免费| 蜜桃视频一区二区三区在线观看| 99re热有精品视频国产| 97精品一区| 亚洲精品国产精品乱码不99| 中文字幕一区二区无码成人| 亚洲欧美精品91| 亚洲在线91| 91 丝袜在线| 你想操日本小逼吗| 综合网91| 伊人久久大香线综合无码| 日韩性爱1级片视频| 极品久久久久久久久久久久久久| 郑州宾馆老熟女露脸啪啪| 伊人精品国产| 干婷婷综合网| 国产精品美女| 国产免费久久精品99re韩国| 精品一区二区成人动漫| 日本淫乱女一区二区三区视频| 午夜天堂精品久久| 97最新在线播放视频| 欧美78P| 夜精品久无码| 十八禁网站在线| 情趣丝袜无码操逼视频| 国产精品午夜精品| 日本久操视频| 91粉嫩萝控精品福利网站_精品影音先锋国 | 精品人妻一区二区三区四区不卡在| 中文字幕av久久爽Av| 精品高清一区二区三区三州| 成人性交免费视频| 欧美在线|亚洲| 超碰性爱97| 九九色婷婷| 20cm女自慰在线日韩欧美| 91 国产丝袜在线播放-百度| 日本有码影片下载| 国产强奸超碰AV| AV女优男人的天堂| 欧美手机在线综合| 少妇天堂网络| 大香蕉伊人亚洲| av无码av无码专区| 一级片视频啪啪| 91黄射| 97视频在| 久久久久亚洲精品| 91爽啪| 伊人久久大香大香线蕉中文| 免费的黄片有限公司| 97久久久久| 久久综合久色欧美综合狠狠| 青青草伊人久久| 色99色| 亚洲精品亚洲人成在线麻豆| 岛国激情视频在线观看| 黑人猛交| 91精品91久久久中77777| 日韩成人人妻网站| 色九九九| 国产视频三区四区| 色综合99| A久久| 国产真实野战在线视频| 极品极品色影院| 无码日韩人妻av一| 久久国产乱子伦精品免费女人| 密乳视频在线| 中文字幕后石码三区四区| 97色操| 大香蕉性欧美| 91精品国产91久久久久久久久久久久| 国产欧洲精品亚洲午夜拍精品| 精品国产国产AV| 夜夜操天天肏| 中文字幕乱码人妻一区二区三区,99精品 | 久操视频在线观看| 搡老熟女免费视频| 欧美片第一页| 亚洲男人综合| 伊人专区一区二区三区| 国产精品黑人一区二区三区| 人人操人人干xxx| 中英熟女操女| 97精品网| 国产精品一区二区亚洲人成毛片| 国产精品日本无码A片| 91亚洲网| 秋霞免费无码视频日韩A片| 亚洲国产成人7777| 天天干干天天干干| 色青青久久影视| 性爱1区| 亚洲av无码成人精品国产| 无码高清专| 国产精品视频白浆免费| 香蕉婷婷| 中文字幕制服欧美久久一区| 色偷偷超碰亚洲| 死我十八禁| 看全色黄大色大片免费视频| 日韩一区二区精彩视频| 精品久久久久av影院| 老司机老司机午夜影院| 久久天堂婷婷网| 蜜色网色哟哟| 人人九九精| 奶水 人妻 哺乳 在线| 亚洲欧美色图片| 家庭乱伦国产精品| 唐山老熟妇露脸啪啪叫| 欧亚洲精品有视频| 夜夜操一区二区| 91蜜臀人妻中文字幕在线| 亚洲毛片久久| 翔田千里无码中出中文字幕| 无码视频黄色网战| 欧美 亚洲 大香| 亚洲凸凹超碰成人| 91精品国产91综合久久蜜臀| h无码动漫在线观看| 91干熟女| 九九热超碰97亚洲最新香蕉 | 亚洲激情网| 97青青操视频| 丰满熟女人妻一区二区三五十一路| 久久国产999| 91精品少妇搡搡搡| 白嫩少妇| 久久香蕉国产线看观看猫咪av| 啊啊啊操一区| 狠狠2050在线观看| 乱伦熟女论坛| 啊v视频在线观看| 国产久久久9999| 亚洲,欧美,综合网| 日本1区2区不卡视频| 国产吞精a级片激情电影| 玖玖综合.com| 91天美免费| 日本免费人成视频播放120秒| 激情婷婷五月天| 久久久久亚洲一区女同性恋中文字幕| 极品肉射| 日韩不卡av一二三| 啊啊啊啊啊啊啊啊啊在线观看| 久久岛国| 俺去俺来也在线www| 国产av白丝| 亚洲美女高潮喷水视频| 亚洲自拍天堂| a男人的天堂| 欧美高清91| 成人无码在线视频网站| 欧美视频一区二区在线| 日韩资源网| 欧亚无码视频| 五月天伊人| 一起草视频在线| 无码伊人久久大杳蕉中文无码| 激情欧美日韩女同久久| 午夜视频久久久久一区| 婷婷久草一区二区三区| 欧洲综合色| 日韩乱伦视频| 激情文学小说一区二区| 香伊人在线| 九九久久久九九| 欧美色图综合网| 99精品在线观看| 中文字幕女同在线| 免费一级a毛片久久久久久鸭绿欲| 欧美日韩m| 夜夜高潮夜夜爽夜夜爱爱一区 | 国产乱伦搜索结果91P| 日韩欧美女优电影| 青娱乐妇女性生活| 嗯啊不要在线观看嗯啊| 九九亚洲| 久久综合日韩亚洲欧美| AV乱伦国产| 99国产精品久久久久久久成人热| 日韩精品一区二区日韩| 91精品免费| 亚洲欧美国产其他二区| 老熟女天天操| 亚洲人人操| 久久久久久久97| 激激五月| 在线播放免费av福利片| 欧美一级专区免费大片 | 免费视频观看60秒| 手机在线观看不卡无码av| 啊啊啊好舒服好爽啊啊啊视频| 八戒无码国产午夜福利| 国产风韵犹存熟妇三区| 九九性视频| 96精品久久| 99999久久久久9国产精品| 亚洲精品久久久久毛片A片拉屎 | 中文字幕欧美日韩三级| 九九热免费在线国产视频伊人五月| 亚洲国产精品久久AV| 天美一二三在线观看Av| 久久一区二区高清免费| 亚洲成成熟女人综合一区二区| 成人在线视频二区| 综合久久久久久久综合网| 北野未奈加勒比av| 一区二区偷拍拍视频| 欧美 精品国产制服第一页| 欧美 综合| 天天做日日爱夜夜爽| 国产三级片在线观看| 欧美人妻二区三区| 欧美精品自慰系列寂寞少妇 | 国产精品。| 熟女人妇一区二区三区| 91丝袜| 求求你操操我| 超碰在线国产| 一个国产在线综合网站| 999国产精品999久久久久久| xxx亚洲午夜天堂| 韩国三级理论在线| 午夜福利一区二区影院| 久久香蕉国产线看观看亚洲女人 | 亚洲男人天堂视频| 蜜臀AV一区二区三区激情综合| 国产女人极品高潮毛片| 中国人高清www色视频免费| 干B| 亚洲国产精品久久久久久久久久| 丰满人妻一区二区三区性色| 94色色电影网| daxiangjiao你懂的| 久久大香蕉手机高清| 把腿张开老子CAO烂你| 中文字幕欧美丝袜07资源| 91女优在线观看 | 国产伦乱91| 国产综合在线视频网站| 日韩啪啪视频| 亚洲午夜精品久久久中文影院| 粉嫩小泬久久久一区二区| 日日夜夜干| 人人射人人操人人摸| 欧美不卡五十路| 国产综合久| 密乳AV免费观看| 久久人妻一区二区三区高清| 色爱天堂| 91爆操视频| 麻豆 欧美 日韩| 情色五月天就去干| 亚洲 自拍偷拍 欧美| 亚洲精品819| 欧美日韩中文字幕人妻| 一级片在线观看高清无码| 中文字幕熟女人妻丝袜| 日本女人操逼| 桃色五月天| 久久嫩草| 91日韩网站| 亚洲第一页综合在线| 美女黄码视频午夜| 国产亚洲精品美女| 青青欧美| 国产热av| 疯操AV| 图色综合网| 97精品综合| 一起草精品人妻| 爆操无码| 91精品久久久久久77777| 亚洲aV性爱| 亚洲精品国产精品乱码不99| 色青青久久影视| 国产欧美日韩精品中文| 在线观看av区| 香蕉久久国产AV一区二区| 99精品久久久久久久婷婷蜜桃| aaaa少妇高潮大片| 亚洲欧洲网站免费观看| 激情综合五月天| 99精品网| 亚洲不卡不卡中文字幕不卡| 国产传媒美日韩av| 日韩成人色图| 77777亚洲蜜臀精品久久综合蜜臀| 欧美|91色综合| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 人妻久久久久久久久久久久久久久| 久久激情综合| 欧美色三级片91| 午夜精品久久久99| 色哟哟av| 超碰色美女| 69一区二区三区| 国产毛片毛片4p懂色| 51国产午夜精品视频| 天天干人人干天天日97| 十八禁啪啦拍视频无遮挡| 日韩午夜精品一区二区三区电影| 亚洲日韩精品在线播放| 中文字幕91综合| 国产久久男人天堂| 97欧美在线| 日熟女| 最新三级网址| 91国产精品在线看| 1000午夜黄色| 在线中文字幕视频| 秋霞免费AV| 91色艳| 日韩成人色图| 啊啊啊轻点在线观看| 久久男人的天堂| 欧美色视频在线| 狠狠五月天| 蜜臀AV成人精品蜜臀| 精品久久久一本一道| 国产无码精品成人| 丁香色五月 97干| 国产精品欧美激在线| 亚洲资源网| 日本Xx性爱| 爱爱动态120秒| 中文字幕精品专区搜索结果91| 天天草天天日| 日本三级日本三级99| 99re99视频在线免费观看| 花花AV导航| 97人妻免费中文字幕| 婷婷91| 日本中文字幕一区| AVE乱伦| 婷婷五月色| 天天综合站| 日本性爱欧美性爱| 射丝袜高跟鞋99| 综合亚洲网| 国产麻豆福利av在线播放| av操操不卡| 91观看 国产白丝| 日本一区二区不卡精品| 97精品一二区| 91人人| 天天天天干| 精品超碰色| 日韩 欧美 另类 人妻| 亚洲免费97免费| 欧美色乱| 丁香五月激情综合| 欧美日韩小说| 91色色色| 亚洲男人天堂网站| 精品伊人久久久大香线蕉小说| 双插在线| 性色生活片久久毛片婬片免费放女人一级毛片| 亚洲91av| 午夜福利国产欧美日韩夜夜| 国产视频三区四区| 亚洲高清欧美总合| 天天日少妇逼AV| 久久久亚洲精品中文字幕人妻| 亚欧韩av| 亚洲丰满很很操| 日熟女| 蜜臀久久久国产| 欧美一区二区一级岛国大片| 久久成年精品| 在线观看成人性爱免费小视频| 亚洲九区| 中文视频在线观看| 欧美色婷婷| 丝袜AV一区二区三区| 超碰99在线| 日本加勒比无码专区| 91一区二区| 久久的免费性爱视频| 一区二区三区精品黑丝白丝酒店对鸡 | 激情婷婷综合久久| 日韩三级在线观看mp4| 中字幕人妻一区二区三区| 97视频620| 国产精品无码av| nuu12国产麻豆精品| 太久视频| 色淫网站优优视频| 极品丝袜无码| 人人艹亚洲| 久久精品电影| 亚洲国产精品久久久久久久久久| 天天干人人看综合| 黄色十八禁| 婷婷五月天综合网| 在线欧美69V免费观看视频| 96国产精品| 天天做天天爱天天爽AV| 亚洲午夜福利视频| 国产在线综合网| 久久久精品九| 91殴美大片| 手机看片1025| 大香蕉www.超碰| 日日骚一区二区三区| 好吊色一区| 国产免费永久精品无码| 欧亚无码视频| 久久综合女优| 亚洲国男人的天堂| 国产又色又粗又黄又爽| 欧美97av| 久久综合女优| 狠狠操夜夜操蜜桃视频三区| 樱花蜜乳av| 四虎免费视频| 麻豆天美国美国产| 亚洲乱码尤物193YW| julia ann久久| 97视频观看| 日韩中文字幕二区| 成人自拍三级在线观看| 欧美日韩另类激情图片| 亚洲爱爱视频一区二区| 人妻啊啊人妻啊| a级成人毛片免费视频高清| 久久色网| 插插综合网天天影视网| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 涩涩涩综合| 亚洲欧美另类图片| 亚洲影视高清第一页| 日韩精品人妻中文字幕有码午| 色香色欲天天综合网天天来吧 | 97干综合网| 五月丁香影视| 无码人妻丰满热妇又大又粗| 亚洲国产精品成人综合| 亚洲色宗合| 天天干人妻视频| 日本新免费二区三区| 人妻在线臀日韩| 黄污污污污| 人人看人人摸人人色| 午夜视频久久久久一区| 最新国内自拍av免费| 日本性爱视频一级| 另类图片欧美激情综合| 国产欧美在线观看免费观看| 久久夜夜| 边做饭边操逼逼| 日本中文字幕不卡视频| 色哟哟AⅤ| 日韩黄色片子| 思思热久久成人| 能在线播放的国产三级| 99精品视频在线观看免费| 岛国网址国产| 婷婷视频在线免费观看| 黄色性爱网网| 五月婷婷基地| 人妻激情偷乱视频一区二区三区 | 伊人97色天使| 一区二区 电影 亚洲| 欲色影视综合吧| 蜜臀色乳| 91在线一起| 日本大香蕉综合网红本杳社区| 久久啊啊| 国产偷拍网站| 国产精品免费日韩| 超碰欧美COM| 97伊人| JuliaAnn丝袜熟女系列| 中国少妇啪啪视频| 97网址97| 安微少妇操BBB| 99在线精品视频| 亚洲人妻色图| 一中国女人毛片水真多| 国产自制av蜜乳| 一二三四视频中文字幕在线看| 人人艹亚洲| 日韩中文字幕视频在线观看| 强奸xx国产| 婷婷久草一区二区三区| 天操天操夜操夜月操月年年操| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 久久香蕉国产线看观看亚洲女人 | 青青草玖玖爱| 九九九九亚洲| 日韩精品在线视频,日韩精品……| 久久欲| 国产强奸超碰AV| 日韩美脚一区二区网站| 久久精9| 国产午夜精品一区二区三区牛牛| 麻豆亚洲AV成人无码久久精品| 欧美日韩另类在线| 在线观看黄色电话| 亚射在线| 久9综合在线| 看免费一级在线播放毛片| 强奸乱伦中文字幕AV| 日韩人妻资源网| 素颜老阿姨乱情色| 亚洲天天操| 久草国产在线视频| 国产精品久久伊人| 岛国AV一区二区电影| 九九九草| 91av熟女人妻| 人人操人人狠狠操| 91老司机在线视频免费观看| 强奸熟女一区二区三区| 97视频网站| 日韩av不卡在线观看| 蜜桃视频精品一区二区三区| 2019男人的天堂| 欧美日韩不卡a片| 屌色在线97视频| 国内一区二区三区| 91性高朝久久久久久久久| 五月丁香久久| 日本中文字幕一区| 秋霞一级A片黄色视频| www99热| 久久久九| 中文精品一区二去| 夜夜狼人妻| 久久久啊啊啊| 激情五月天丁香社区| 色九九综合| 夫妻AV网站| 黑人精品一区二区在线播放| 婷婷五月天网| 黄色成年| 小情侣高清国产在线视频| 91熟女综合| 日韩欧美日韩| 久久侵犯人妻爽爽爽| 91碰碰| 在线观看中文av字幕| 久久av色| 国产亚洲日韩欧| 十八禁网站在线| 青娱乐妇女性生活| JULIA一区二区三区在线播放| 伊人久久亚洲色欲综合网站| 国产亚洲日韩欧| 熟女欧美日韩综合婷婷| 精品九九| 精品人妻夜夜草| 91美女视频。| a网站免费观看| 94色色电影网| 操操碰| 天天欲望网| 99国产人成精品| 大逼色网站| 丁香五月偷拍| 欧美国产婷婷久久| 日韩在线视频1234| 七月婷婷综合| 日本淫色网| 日韩无码人妻| 亚洲美女色图| 国产日韩精品无码去免费专区国产| 久久只有精品一区二区三区| 国内亚洲高清无码| 青青草乱入乱欲视频在线观看| 精品传媒在线一区| 天天干2019| 老外又粗又长一晚做五次| 97中文字幕色| 精品亚洲黄色片 国产精品导航一区二区| 极品后入免费视频| 久久‘黄片视频| 日韩BBN| 中文字幕日韩国产传媒欧美精品| 国产传媒av天美传媒在线| 欧美亚综合色图| 欧美成人A√在线一区二区| 久久精品国产精品| 国模少妇一区二区三区| 俞拍久久国应视频| 色婷婷成人综合| 国产精品久久久久无码A√| 精品国产乱码久久久久久日本公司| 激情啪啪拍91| 放黄片放3级黄片没穿衣服| 欧美亚综合色图| 国产亚洲日韩在线三区黑人| julia ann久久| 99久久9| 亚洲乱色熟女一区| 久久精品99久久久久久| 夜夜爽77777| 美女裸体无遮挡永久免费观看网站| 国产精品熟妇一区二区三| 久久香蕉综合一本到3atv| 97久久国产| 夜夜嗷嗷一区二区| 国产激情久久久| 中文字幕一区二区免费在线| 看看日B真人视频| 91久久久久久久久久久| 黄色激情电影在线观看| 蜜臀久久99精品久久久久久成人小说| 亚州精人品大香蕉| 狠狠色噜噜狠狠狠狠狠色综合久久| 91天美免费| 中文字幕-区二区三区四区视频中国| CCYY草草影院地址入口| 亚洲综合色图欧美| 伦在线97| 久久午夜伦| 无码免费精品高清| 亚洲欧美综合| 欧美日韩一二三| 国产一区二区三区不卡手机在线| 91色婷婷综合久久中文字幕二区| 情色大香蕉| 一级黄碟在线看| 青青操97| 操逼日韩无码| 亚洲啪啪视频一区二区| 欧美成人性活片| 久9爱精品| 久久欧洲| 色一射色一射| 伊人久久大香大香线蕉中文 | 亚洲性少妇| 欧美美女在线高潮999| 手机在线观看不卡无码av| 日本不卡一区| 精品久久97观看在线视频| 激情婷婷丁香| 91N综合在线| 9/A片 | 国产精品嫩草久久久久| 国产一国产一级毛片古装| 熟女熟妇伦久久影院毛片一区二区 | 综合免费无码中文| 三男一女不戴套的A片| 99re免费| 97免费视频在线观看| 女人天堂网| 中出在线视频| 极品粉嫩少妇视频| 91扒丝袜综合在线| 日韩精品99999| aaa一级黄片| 性爱av在线免费观看| 亚洲成人免费中文字幕| 福利操逼| 国产精品久久妻无码网站| 中文?日韩?免费?精品| 欧美欧美啪啪视频| 啊啊啊想要| 婷婷综合伊人一区| 大香蕉狠狠爱| 欧美狠狠| 亚洲人人夜夜澡人人爽| 国产熟女高潮一区二区三区| 精品一区二区久久| 91精品国产乱码| 呻吟 欧美 日本 中出| 欧美传媒一区| 懂色av中文字幕| 全国男人天堂网| 久9爱精品| 热热色中文无码| 人人妻人人爽一区二区三区| 精品一区二区三区丰满熟女-亚洲欧美一区| 欧美美女视频| 欧美日韩资源| 男女日B国产| 强奸乱伦大香蕉| 日本女优在线视频福利| a在线视频免费观看| 极品白嫩美女白浆成人福利在线看| 91精品黄在线观看| 97干日韩| 一区二区三区男女操逼黄色小电影| 91热情品| 精品人妻一区春色| 热热色色综合| 精品欧美日韩在线观看| 久久超碰天天| 97精品久久| 日本操逼aaaaa| 亚洲日韩美女中文字幕乱| 一区二区三区 日韩欧美| 图片区小说区| 综合色播| 麻豆天美电影一区二区| 狠狠夜色午夜久久综合在线| 800zy一区二区| 爱爱60秒免费视频| 久久综合精品一区二区三区| 国产视频第2页| 久久东京热成人| 26uuu最新| 操逼啊啊啊91| 美女自卫慰黄网站免费| 亚洲欧美激情另类色图| 亚洲无套久久嗯嗯| 99色婷婷中文字幕乱色| 日韩欧美中文字亚洲慕| 日本影视久久免费| jk白丝没脱就开始啪啪| 91粉芽高清在线一区二区| 欧美日韩国产电影| 91精品91久久久久77777| 国产1024在线播放| 91足交| 99啪啪视频| 97国产|免费| 十八禁成人网站在线观看| 综合色图区| 亚洲伊人久久精品影院| 欧美色狠| 第一高清av中文字幕| 干B视频伊人网| 亚洲天堂另类| 久久人人爽爽人人爽人人片αV| 色婷网| 人妻少妇久久中文| 呦呦一区| 97在线精品| 国产高清在线自在拍69| 人妻三级在线中文字幕| 成片免费播放| 日韩天堂av电影在线观看| 老色鬼成人精品视频下载大在线观看| 丰满熟女一区二区三区在线播放| 亚洲国产成人精品久久久国产成人一区二区三.| 天天色综合图片| 国产传媒日本欧美专区| 精品日韩| 欧洲熟妇xxXx欧美老妇裸体| 嫩草 人人网精品| 超碰97男女| 秋霞视频一区二区| 日韩电影天堂视频一区二区| 免费操逼91| 性爱乱伦网址| 国产日韩欧美| 秋霞网—男女啪啪亚洲免费体验区 | 久久久久久九| 激情专区综合| 亚洲色图伊人网| 国产精品一区av在线| 少妇同性| 国产一级高清免费观看| 天天影视网综合少妇| 风韵犹存大大大大香蕉 | 国内精品久久人妻性色av| 婷婷国产精品九区| 欧美色综合网| 久久久激情| 亚洲高清欧美总合| 不卡免费av在线播放| 亚洲高清男人天堂| 2017人人操,人人摸| 欧美中文狠| 三级特黄60分钟播放| 嗯嗯嗯啊啊啊操的我好爽| 免费A片三p视频| 色老汉色| 老熟女乱伦片| 97亚洲资源| 日本成人A片网站| 成人综合网 欧美| 亚洲无码成人精品| 九九九九久久久| 国产精品熟女一区二区三区| 久久久com| 人人操人人色网| 欧美少妇第一页| 国产毛片在线| 亚洲成人色情五月天丁香花| 日韩免费在线视频观看| 免费超碰97久久| 大香蕉强奸乱伦| 久久99久久99精品天美传媒棢·纸:.| 国产67194| 麻豆尤物视频网| 欧美综合骚| 超碰91在线| av操操不卡| 国产熟女免费观看久久| 神马午夜久久久| 91c色| 亚洲人妻日日日| 国产亚洲人妻综合日韩 久久| 天天综合91| 精品国产乱码久久久兰草影视| 亚洲精品无码久久AV| 亚洲精品乱码久久久久久蜜桃麻豆| 可以免费观看的av| 精品人妻一区二区三区在| 嗯嗯,好大,好爽,好骚| 国产精品免费美女视频| 伊人网在线点播| 北京专精特新企业招聘信息| 少妇啪啪自拍| 亚洲人精品久久久| 大鸡巴久久久| 欧美日韩精品一区二区三区高清| 亚洲 中文 欧美 日韩 在线| 超碰久久中文| 高清无码 国产精品| 久久久久久免费电影| 久久久影院| 国产精品自在线发布| 丝袜AV一区二区三区| 目产99999久久999| 超碰在线99| 久操操AV电影| 精品国产乱码久久久影院| 开心六月色| 国产综合永久精品日韩鬼片| 欧美日韩1234| 九九九九九九免费视频| 中文字幕五区| 亚洲AV无线| A级在线视频| 青青草国产一区二区三区| 混色激情av| 最新日韩黄片| 蜜臀久久99精品久久久电影| 伊人嫩草| 一区二区三区蜜桃成人撸久久东京热 | 亚洲综合色在线| 国产97色在线| 久久这里是精品| 午夜操一操| 亚洲综合一| 国产又黄又猛又粗又爽的网站| 国产激情av女片自拍| 国产精品麻豆免费视频| 97操B| 天天爱综合网| 人妻精品一区二区全免费| 亚洲AV无码乱码在线观看性色| 国产精品露脸在线观看| 天美传媒AV在线播放| 青青草玖玖爱| 欧美97在线观看| 亚洲18禁| 亚洲av强奸乱伦| 91足交| 午夜男人av| 国产精品高潮久久久无码| 久九九九九九九九热| 老司机午夜精品福利视频一区二区| 91嫩草欧美| 日韩情色视频| 啊啊啊啊一区| 开心五月深爱五月| 加勒比久久综合网高清| 波多野结衣被操50分钟免费视频 | 亚洲激情在线| 超碰在线在公开超碰在线在公开| 久久久av爱| 97精品久久久久久久| 日本三级日本三级三级人妇四虎| 另类专区在线观看| 国产高潮AA片免费看| 久久久免费一级黄片| 亚洲欧美一区二区网址| 中国人高清www色视频免费| 蜜臀久久99精品久久久久久-DVD| 欧美亚洲系列| 欧美激情一| 欧美丰满少妇交换91欧美精品| 在线五区| AV丝袜东京热| 9999久久久久| 少妇蹲下买菜露大唇0| 亚洲人久久久网| 久久↗↗| 午夜福利合集| 78精品| 国产精品乱码久久久| 成人性生活高清视频在线播放| 色妇综合网| 久久αⅴ| 校园春色综合网| 强奸乱伦AV一天堂网| 久久性生大片免费观看性| 高潮精品| 人妻干天天| 九月丁香综合网| 色哟哟511老熟女| 精品超碰国产| 男人亚洲91首页在线| 中文字幕精品丝袜| 久久精品亚洲东京热色播| 日韩激情视频| 超碰伊人在线| 国产乱人伦AVA麻豆软件.| 日韩电影天堂视频二区三区| 九九九九九九九九九九精品视频| 熟女网站最新| 91九九九吃| 外国免费性情大片| 日本人妻丰满熟妇久久久久久| yaouchengrenav| 操操逼视频| 亚洲色图殴美色图激情乱伦| 欧美日韩成人| 婷婷亚洲中文字幕在线| 久久久久ab| 久久久999国产精品| 亚洲人妻在线精品| 中文字幕五月婷婷免费| 探花一区在线| 亚洲色人妻综合| 97天天操天天干| 综合大香蕉美。| 少妇综合| 日韩丝袜二区| 六月婷婷综合| 91成人社区| 97久久国产精品女不卡|