色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

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
返回資訊列表
天天影视之亚洲综合网| 无码又爽又硬又激情免费视频| 国产精品视频| 久热99| 九九精品无码专区免费| 啊啊啊久久| 99热导航| 欧美久久婷| 91天堂色男人的天堂| 中日韩免费看男女操逼大全| 另类图片天天影视| 丰满人妻一区二区三区免费 | 人妻中文字幕精品无码| 亚洲高清综合网| 麻豆精品三区视频| 夜夜嗨一区二区三区三州加勒比| 粉嫩av一区二区三区四季| 粉嫩国产精品久久久| 99色视频| 又大又白奶子| 插入综合网| 欧美黑人精品一区二区| 搞中出久久| 人妻天天爽天天爽三区| 女生久久网| 精品人妻视频一区二区在线播放 | 美女毛片999| 看看小穴| 超碰国产情侣自拍网| 亚洲成人免费在线| 五月天婷婷小说| 婷婷五月天丁香花| 天天舔九色婷婷| 青青青操| 91在线色| 日本熟妇色熟妇在线视频播放| 天天影视激情欧美| 日本少妇va7777| 嗯嗯啊在线视频| 天天综合91在线| 99热啪啪| 在线观看十八禁| 色综合色色| 日韩黄色成人性爱| 9 9精品一区二区三区| 久久久一区二区三区四曲免费听| 欧美亚男人的天堂| 超碰 av 女人天堂| 精品国产乱码久久久久久久久久毛片| 日本高清视频在线观看黄已三辽| 亚洲男人天堂AV| 国产深夜福利| 免费精品人妻一区二区三| 国产视频一区二区三区在线免费观看| 国产 日韩 欧美高清| 欧美性爱免费短视频| 中文字幕日韩电影人妻| 99热这里只有精品地址| 色噜噜狠狠色综合日日| 伊人网av| 日韩三级av片| 一二三区操逼国产91| 日韩无码一级黄色av片| 欧美不卡二区| 日本 欧美 亚中文字幕| 欧美青青视频| 91五十路| 色吧综合网| 99爱久久视频频| 精品人妻一区二区三区视频| juliaann欧美丝袜办公室| 国产精品视频内谢女人| 天天激情干| 黄色欧美性爱视频| 91女网站| 青娱乐妇女性生活| 日va操| 欧美日韩丝袜| 夜夜 中文视频rt| 一二区在线观看视频| 亚洲欧美第一页| 大香蕉视频一二三区| 一区二区三区机械有限公司| 九九久久久九九| 加勒比av官网在线| 夫妻天天操岛国视频| 做爱A级亚欧| 婷婷色色网| 怡红院成人av| 手机在线免费看的av| 亚洲欧洲网站免费观看| 久久精品一区| 97狠狠| 成年人性爱日韩| 欧美一二三区四五区| 欧美综合综合| 丁香九月激情| 殴美色网| 在线可观看的黄色网址| 97色欧州| 亚洲天堂欧美| 久久9精品视频| 曰本道人妻久久久在线不卡色视频| 九九九精品成人免费视频小说| www.99视频| 亚洲熟妇综合久久久久久| 91成人无码| 99精品热| 九九九网站| 日本午夜福利影院| 在线看污网站| 欧美国产日韩高清在线| 91一区二匹| 国产精品一区二区黄片| 日韩97视频| 91亚洲色人| 91偷拍欧美亚洲| 青青草久草| 97色色色| 91成人无码| 亚洲av乱伦色图网站| av东京热男人的天堂| 精品人妻一区二区视频| 丝袜av一区二区三区| 午夜福利一区二区影院| 黄总AV色图| 日韩性爱免费观看视频| 啊啊啊好舒服好爽啊啊啊视频| 久久久久久精| 啊啊啊啊啊操我视频| 男人天堂2030| 97精品国产97久久久久久户外免费| 少妇三p| 九九在线精品| 日韩精品资源专区二区| 97精品一区| 五月婷婷五月天| 性91| 欧美日韩亚洲五月天婷婷| 免费精品福利在线观看| 国产又粗又长又大的视频| 91九色首页| 99热一区二区三区四区| 97操97色| 黑人白女精品一区| 欧美女同在线| 成年男人的天堂| 尤物黄色在线观看网站| 欧美肥臀在线| 96AV久久久| 国产黄色 A 片免费看| 可乐操亚洲蜜911| 熟女在线视频| 亚洲五码一区二区三区| 一二三区精品视频| 一区二区精品更新提醒| 丁香五月激情综合| 青娱乐福利99| 九草九九九| 欧美不卡在线美女| 18禁免费视频| 91老女人| 成人情色综合网| 厕所偷拍在线| 国产精品电影| 一区二区三区视频国产免费| 欧美性色网| 夜夜嗨绯色| 五月激情视频| 黄色一级视| 日本不卡一区二区| 熟妇无码视频三区| 大香蕉 222| 成人乱码一区二区三少妇| 精品熟女呻吟久久91| 日韩欧美偷拍美女视频| 日本少妇va7777| 精品国产精品一区二区| 日本国产欧美高清在线| 秋霞一集毛片观看| 一级二级在线观看| 国产999精品久久久| 麻豆性爱视频在线播放| 97超碰色五月| 日韩另类| 日本日皮视频逼| 国产精品女生av| 五月丁香黄色网| 欧美久久人体| 九九九网站| 日韩无码第3页| 久久日本熟女精品一区| 国产精品久久久蜜臀| 97操操| 精品久久人妻成人网| 欧美色视频在线| 岛国爱情动作片在国产AV无码专区亚洲AV漫画| 成片免费播放| 色噜噜精品一区二区三| 免费簧片在线观看| 国产aⅴ无码片毛片一级网站| 91精品国产91久久青草| 亚州欧美色图| 三级日本一区二区三区| 国产v亚洲v日韩v欧美v片另类| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 色吧五月| 91碰碰碰| 国产欧美日韩在线观看麻豆传媒公司| 亚洲天堂另类美腿| 女人一区| 精品999日本| 久久精品亚洲东京热色播| 亚洲 欧美 中文 日韩超碰 | 美女极品一区二区三区| 国产精品久久久久中文字幕| 福利在线观看一区二区| 亚洲欧美日韩精品久久久一区二区 | 日本在线不卡v二区| 五月天玖玖资源站| www99热| 亚洲欧洲另类| xxx亚洲午夜天堂| 嗯……啊…嗯嗯…啊…好舒服| 青青草自拍视频在线播放| 亭亭丁香激情| 婷婷九月国产| 国产在线综合福利网站| 无码人妻一区二区三区色欲aⅴ | 亚洲欧美日韩综合在线尤物| 久久精品国产亚洲5555| 超碰97欧美在线| 性感女人网页在线观看视频| 久久中日麻豆| 日韩精品系列| 特色a在线上| 久久久久9999| 国产偷拍自拍在线视频| 人人色人人操在线| 黄污污污污| 歐美一級亂黃99在綫精品| 97干色天堂| 99国内熟女露脸视频| 亚洲亚洲亚洲天堂天堂 | 我要去看2个日本美女.com曹逼| 日本国产欧美一区三区二区 | 999久久久久久久精| 97欧美色资源| 亚洲丝袜诱惑| 午夜精品久久久久久久男人的天堂| 蜜桃久久综合视频| 中文字幕伊人| 在线色导航| 日本在线激情一区二区三区| 国产25页| 高清国产精品福利网站| 丁香五月婷婷啪啪| 2026国产精品视频| 91P0RNY大屁股人妻| 国产极品美女高潮无套在线观看| 国产大片精久久久久久| 天堂性色| 柠檬AV导航| 97人人爱人人做人人乐| 91亚洲影视| 在线国产福利网址导航| 宗合情欲网| 色区97| 91影库| 97中文超碰| 男女性扦B| 国产中出内射一区二区| 五月天开心网| 日韩精彩视频| 日本免费一级AAA大片器| 东京热激情视频一二三区| 中文字幕乱偷人妻久久艾草网| A级在线视频| 亚洲成av人片色午夜乱码| 神马久久啊啊| 国产一区二区成人av在线播放| 九九久久精品| 亚洲影视第一页| 久久久久久久九九九九九九| 亚洲射综合网| 99亚洲国产精品色一区二区三区| 丝袜美腿诱惑亚洲欧美视频在线观看 | 色色99| 91精品操美女| 五月激情影院| 大香蕉中文| 91久久99久久91熟女精品| 日韩人妻精品| 十八禁的黄污污免费网站| 成人五月天色网| 免费αV在线视频| 日本人体九九九九九九| 中国AAAAAA黄色片| 久久久久久夜夜夜夜夜| 少妇久久久| 五月天色图| 91狠狠综| 亚熟hd视频在线| 岛国片在线播放| 夜夜騷av、一區二區| 12一15性XXXX粉嫩国产| 亚洲精品欧美专业| ,成人免费啪啪视频| 欧美性爱一区二区三区四区| 自拍大香蕉乱插| 亚洲激情欧美色图| 九九热精品视频在线观看| 乱伦3P视频| wuyechaopeng| 狠狠狠狠狠| 欧美亚洲激情| 东北老女人的激情视频| 日va操| 日夜尻逼网| 99欧美| 日韩兔费看黄片| 综合 青草 伊久久 影院 综合| 黄色电影在线播放综合网站 | 人摸人人操人| 欧美色图另类图片| 天天看少妇| 国产精品麻豆成人av| 77国产精品| 日本久久精品| www.99色| 综合少妇网| 人人澡综合涩| 激情五月天综合网| se吧提供91精品国产91久久久久久| 综合91网| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 精品午夜福利| 婷婷探花久久精品一区| 一区中文字幕二区日韩| 婷婷丁香五月综合| 熟女人妻一区二区三区| 精品视频在线观看| 大乔未久88一区| 久久曰曰| 亚洲一区二区三区中文字幕| 999综合网| 精品一区二区2| 中文字幕视频在线观看一区二区| 國產尤物AV尤物在線觀看| 亚洲精品久久久久久久蜜桃臀| 91夜夜蜜桃臀1区2区3区| 99热在线观看| 成年人黄色小视频网站| A片大香蕉在线| 国产精品另类| 内射黑丝袜| 高清不卡视频| 屌逼传媒| 九九激情网| 97欧美性爱| 色哟哟综合| 日韩一级欧美一级国产一级台湾| 中文有码9| 九九九九精品一区| 欧美成人一区二区| 免费人人搞97| 第二页中文字幕| 日韩欧美视频青青| 99亚洲天堂| 一级A片女人高潮叫床| 欧美性爱免费短视频| 国产毛片片精品天天看视频| 丰满人妻一区二区三区蜜桃视频| 久久久久女教师免费一区| 人妻素股| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 蜜臀av中文字幕| 91无遮挡| 91天美| 啊啊啊爽爽| 综合亚洲欧美| 特色a在线上| 97亚洲中文| 蜜臀网 一区| 易易A毛视频| 亚洲se91| 欧美亚洲自拍另类人妻| 欧美日韩大香蕉| 偷拍 欧美 日韩| 欧美一区二区一级岛国大片| 看免费的黄片| 牛黄色久午久| 99热综合| 美日韩一卡二卡三卡免费人妻精品| 国产超碰国产97| 麻豆天美国美国产| 性性欧美| 婷婷探花久久精品一区| 日韩电影在线观看网址| 97人人夜夜精品视频| 精品国产一区二区三区四区在线看| 人人摸.人人色| 强奸乱伦资源| 激情五月天网站| 中文字幕在线观看AV| 97久久精品国产| 一区二区三区色综合| 亚洲综合 欧美| 东北老熟女| 日日骚一区二区三区| 男人的天堂com| 视频一区二区免费在线| 人妻啪| 欧美丝袜制服久久| A V少妇特黄三级| 亚洲无套久久嗯嗯| 超碰久久草| 欧美日韩妖精91com| 九t超碰| 91亚洲综合在线| 日韩视频中文字幕| 无遮挡猛进视频免费无限观看| 久久曰曰| 亚洲免费日韩在线一区二区| 人妻少妇精品无码专区二区密桃 | 久久99综合| 亚洲 图片 综合91| 亚熟hd视频在线| 人妻少妇精品无码专区二区密桃| 91在线秘 男同| 国产强上视频在线观看| 性吧在线视频| 九九九影院| 欧美男人天堂| 91性高潮久久久久久久久| 国产欧美伊人| 欧美日韩不卡传媒| 91精品人妻一区二区三区蜜桃| 国产色产精品在线观看| 伊人五月天| 夜夜久久| 天天干人人乐| 一,爱啪啪,在线免费视频| 色女女女导航| 91四海无码日韩欧美| 小说区 图片区色 综合区| 高清国产性猛交xxxx乱大交| 成人三一级一片aaa| 美女尤物福利视频| 好涩综合| 午夜120视频在线观看| 艹我哪美一区无码| a啊啊啊啊啊啊啊啊一区二区| 免费的黄片有限公司| www.婷婷| 91日产欧美| 日本高清视频xxxx| 人妻碰碰碰碰碰碰| 欧美天堂在线| 色色色欧美| 综合97久久| 国产成人 综合亚洲 天堂| 嗯嗯嗯嗯啊啊啊好紧好大| 啊啊啊啊,啊啊好多水| 伊人操你| 欧美第38页| 国产午夜在线观看| 五月天丁香| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 2019天天干| 99热最新| 欧美色亚洲色| 精品区国产区一区二区三区| 国产天天骚| 最新日本中文字幕| 天天色香欲综合网| 97操| 欧美夜色| 懂色AV蜜臀无码精品APP| 久久、1234| AV一区观看| 精品一久久久| xxxx网站亚洲精品| 亚洲清纯综合| 丁香五月婷婷色| 快播久久人人aV| 九九亚洲| 久久国产在线一区二区| 日日AV加勒比| 亚洲一级性爱视频免费看| 亚洲限制级| 欧美成人AⅤ大片在线观看| 91网站视频在线观看| 国产高清26uuu| 亚洲综合色在线| 亚洲精品a人片在线观看视| 91欧| 嗯嗯嗯,草死我| 翔田千里爆乳巨臀无码| 亚洲国产福利视频| 麻豆天美久久91| 亚洲色图欧美一区二区不卡| 欧美激色| 亚洲男人bt天堂| 久热在线精品免费观看| 后入式视频国产自| 国产免费一区在线观看| 亚洲 无码 偷拍| 动漫av中文| 午夜高清成人在线视频| 精品国产一区探花在线观看| 亚洲国内精品成人不卡| 精品一区二区成人动漫| 国产资源中文字幕在线| 麻豆人妻偷人精品无码视频| 99爱爱| 中文字幕人成乱码熟女香港| 蜜桃臀AV在线| 亚州操操穴网| www.超碰| 91丨豆花丨熟女| 91狠狠狠| 在线观看视频91| 五月激情在线| 精品无码久久久久久国产浪潮| 国产精品另类| 婷婷另类小说| 超91综合网| 成人八戒网站| 婷婷超| 91插B网站| 伊人玖玖网| 深夜啪啪啪视频免费| 国产精品毛片?v一区二区三区 | 婷婷五月成人| 天天看,天天做| 精品国产乱码久久久久久网站入口| 97精品国产手机| 亚洲另类综合欧美| a亚洲欧美色欲| 亚洲欧美骚| 久久久久9999精品九九九| 天天日日本| 乱色视频中文字幕| 欧日a| 园内精品自拍视频在线播放| 久久精品国产精品一区| 久这精品中文在线观看视频| 99精品九九九九九九| 五毛骚逼极品美女怕怕| 丁香五月天久久精品视频一区二区三区| 午夜丁香婷婷| aaa一级黄片| 综合久久六月久久婷婷| 日本高清_区二区三区| 永久电影三级在线观看| 亚洲一区二区三区婷婷| 91欧美经典| 97视频免费在线| 欧美A√综合网| 神马午夜久久久| 日韩久久超碰色| 啊好大好舒服| 久久亚洲天天做| 黄色二级片网站| 亚洲 欧美都市激情| 麻豆天美电影一区二区| 亚洲18禁| 婷婷情色综合网| 嗯嗯啊啊啊好舒服| 美女97超碰| 嗯阿好爽好紧| 精品9区| 校园春色中文字幕AV| 日韩影片中文字幕一区二区三区| 物尤视频一区二区| 小草av不卡亚洲二区 | 黄片com.| www.人人cao| 97人妻色| 91国产大片| 国产精品suv一区| 操老熟女AV| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 91伊人久| 在线看片国产精品每日更新| 人人天天干干| 九九九综合精品| 麻豆精品A片免费观看| 亚洲天堂另类美腿| 少妇色综合| 亚洲蜜臀精品视频久久| 69精品| 岛国片在线播放| 久久久久久久久成人av解说| 91九久| 天天α片| chaopen97久久| 天天日天天操天天射河南省| 久久毛卡| 蜜臀久久99精品久久久久久久久| 欧美97视频| 精品少妇一区二区| 一区二区三区在线美女| 探花精品视频| 久久a久久| 九久9精品| 亚洲视频1区| 青娱乐日韩无码| 二对二中文字幕。| 夜夜黄| 视频黄色国产一级| 日韩熟妇二区| 欧美91精彩| 精品人妻一区二区三区在| 3028国产精品| 少妇无码太爽| 青草地一本线一区二区三区| 久草国产在线视频| 欧美高清性猛交| 亚欧美无遮挡| 6080YYY午夜理论片在线观看| 又黄又爽在线观看视频| 亚洲drav色图| 亚洲av成人精品一区| 午夜精品视频777| 美欧老女人97| 亚洲 欧美 精品专区 极品| 性做久久久久久免费观看软件| 日韩中字av一区| 一区二区三区麻豆| 屁屁影院一区二区三区国产| 久久久不能久久久久| 99在线精品视频| 特级丰满少妇一级AAAA爱毛片| 一区二区三区精品黑丝白丝酒店对鸡| 国产91丝袜 在线播放| 欧美一级特黄淫片在线观看| 五十路熟女工口 | av在线免费一区二区| 91最新综合| 欧美中文字幕精品人妻| 日本九九九九| 中日韩久久久免费看| 在线精品福利免费播放| 欲香欲色天天天综合和网| 看全色黄大色大片免费视频| 亚洲美乱| 久久久精品网站| 中文字暮97| 青青青在线高清视频在线一二三四区| 3p国产欧美99热| 视频在线观看青青99国产| 欧美日日操| 北京美女一区二区| 91高清无码下载| 国产白丝在线| 久久精品中文字幕无码l| a人片中文字幕一区二区| 欧美性爱91| 高清肉丝中文无码| 国产精品亚洲高清在线| 97精彩视频网站| 97干色| 精品网站9999| 青娱乐二区免费| 天天澡天天爽日日av| 日韩无码a片| 国产传媒美日韩av| 国产成人手机视频激情| 果冻传媒一区二区三区| 五月丁香影院| 精品九九九九| 91撸色网 玖玖网 欧美| α√在线| 天天日天天看| 97超碰逼| 操逼网免费无码视频| 欧美激情总合网| 91九九九馒头| 澳门人妻久久| 欧美日韩黄片精品在线| 国产精品久久久久久夜夜夜| 老熟女综合| 日韩99神马视频片| 夜嗨影院| 九九九九热| 啪啪一区| 日韩性爱一级片| 日日干男人的天堂| 国产精品成人无码av| 亚洲欧美校园| 青青草久久一区网| 久操网线| 欧美宗合网| 97日视频| 久久久久9999| 日韩欧美成人综合在线| 欧美色吧综合| 日本久久久久久久久| 乱伦图av| 超碰97久久| 欧美在线|亚洲| 日韩人妻少妇中文字幕| 欧美午夜视频免费观看| 九九九九精| 欧美人妻色| 久久男人的天堂国产| 五码视频在线观看| 欧美亚洲日韩16色| 射 色综合| 强奸国产在线| 亚洲精品国产精品成人| 亚洲91射| 亚洲情色一区二区三区| julia高潮后不停追击中出| 国产亚洲精品精AV.| 国产女人视频三四五区| 亚洲啪啪啪啪视香蕉| 欧美黄色图片| 婷婷综合久久| 超碰免费人妻人人| 婷婷爽人人婷婷爽视频| 白丝在线一区| 97超碰资源网| 一区黄二区黄| 成年女人一区| 欧美在线观看综合国产| www.久久制服糖| av黄图片在线观看| 78精品在线| 蜜汁欧美| 天天躁夜夜躁狠狠躁AV| 96AV精品| 久久精品亚洲婷婷| 成人在线日韩| 黄色一级视| 精品人妻av在线播放| 一区二区三区免费视频入口| 综合网亚洲| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 岛国激情视频软件| 欧美色www亚洲国产阿娇要播| 亚洲人妻久久| 亚洲骚逼少妇| 99re超碰| 精品999999| 东京热综合久久一区二区| 天天干夜夜鈤| www男人天堂| 精品欧美乱码久| 青青草综合在线| 欧美九九九| 欧美另类丝袜熟女| 色原狠狠天天天| 97超碰欧美手机| 熟妇色99| 亚洲日韩精品久久久久一区壹牛| 欧美一区二区男人天堂| 久久久久久久久久va| 都市久久精品激情亚洲| 无码人妻精品酒店| 免费?级毛片无码?∨蜜芽试看| A片A5445444| 欧美性爱www免费版| 国产不卡免费在线视频| 大香蕉综合| 婷婷激情五月| 99re6国产精品99re在线| 欧美72网页| 青青草国产盗摄一二三区| 天美麻豆黄色录像| 农村少妇久久久久久久| 天天看片青娱乐| 国产AAAAAABBBBB| 性在久久久久久| 婷婷色综合| 大香蕉手机视频| 日本精品88888888| 成人精品一区二区三区| 久久久久96| 亚洲精品国产熟女久久久| 日韩欧美经典在线观看| 国产精品不卡一区二区三区av| 欧美亚洲色图另类国产| 国产一级作爱毛片| 天天日老熟妇| 神马久久久久久久久久| 97ai亚洲| 日本高清视频xxxx| 色情五月婷婷| 欧美 日韩 国产传媒| 后入式999| a片久久久久久久久久久久| 国产网红精品| 精品少妇后入一区二区三区四区人妻巨乳| 日本精品88888888| 综合亚州欧美| 摸奶性爱视频网站在线免费播放| 日本 欧美 国产一区| 蜜臀在线免费观看在线免费观看| 强奸熟女一区二区三区| 国产精品一区二区三| 中文字幕在线观看永久| 91久久国产综合久久| 欧美大色交| 麻豆国产精品午夜视频| 国产视频一区二区免费| 密臀AV在线| 久久激情婷婷| 亚洲成av人片色午夜乱码| 99 国产丝袜在线| 男人午夜天堂| 国产超碰| 国产男女无套97| 色约约一区=区三区| 人人操我人人干| 熟妇人妻一区二区三区| 插B在线观看| 日韩国产成人自拍视频| 超碰97男人| av网站免费看| 97人妻碰碰中文无码久热丝袜| 久久综合av| 在线人成亚洲视频免费观看| 78综合网| 夜夜精品视频| 熟妇在线视频一区二区| 五月天AV资源| 黄片在线免费在线观看| 美性中文综合网| 国产久久天堂资源| 国产精品老师| 人妻激情在线视频| 欧美日本国产日韩激情视频| 久久国模av| 亚洲精品尤物yw在线影院| 久久免费中文字幕在线观看| 午夜精品久久99蜜桃的功能章节| 天天色播亚洲综合网站| 免费草草草草草视频| 午夜视频久久久久一区| 天堂麻豆天美| 偷拍 欧美 日韩| 青青草亚洲一区| 明星性猛交ⅹxxx乱大交| 无码一区二区三区四区五区六区七区八区九区十区视频 | 亚洲综合在线视频| 老熟女阿 国产91| 五月色网| 超碰免费97| 精品免费一区二区三区在线亚洲人成| 秋霞Av理论一级在线| 中文字幕日韩国产传媒欧美精品| 久久精品一区二区三区四区五区| 亚洲午夜免费狠狠干| 97在线观看免费视频| 久久国产精品一级二级三级| 欧美传媒| 殴洲老熟女| 中国国国产一级特黄毛片| 欧美中字不卡| 亚洲宅男天堂| 超碰色综合| 在线黄色污污网站| 亚洲天堂中文字| 免费男人的天堂| 日韩成人网址| 中文?日韩?免费?精品| 亚洲精品天天影视综合网| 亚洲 日韩 丝袜 熟女 变态| 另类图片五月天| 91蜜臀在线久久久久| 国产精品福利资源在线尤物| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 日本黄色精品| 亚洲AV免费在线观看| 久久久99免费| 国产中文字幕在线观看| 99热精品在线观看| 以及麻豆国产入口在线观看免费| 色九九九综合| 婷婷操逼| 中国操逼无码| 一二三区视频在线观看| 啊啊啊好湿国产一二| 日韩A优精品在线观看| 亚春色色| 精品性爱久久视频| 99久久九九| 日韩无码a片| 国产麻豆91欧美一区二区久久婷婷国产精品| 欧美视频在线第3页| 国产精品探花色| 日韩猛交| 色阁阁AV综合网| 欧洲综合视频| 天天干夜夜一操| av网站国产主播在线| 欧美一品道| 91天天综合网,天天综合网| 六十路日本| 久久九九视频九九视频| 色汉综合| 97色操| 日韩精品三级片长长久久| 中文字幕一区 二 区 三 四 五 区日 日 骚| 无码外流操逼视频| 女人天堂av在线播放| 久久高清无码夜夜操| 亚洲色图欧美色图制服丝袜| 国产无马av| 成人免费在线网站| 国产精品点击进入在线影院高清 | 宅男影院久久久,99| 97视频在线| 动漫av中文| 午夜黄色免费在线观看| 亚洲资源站| 久久999久| 91蜜臀熟女| 免费啪啪啪网站18岁| 日韩三A大片在线观看| 欧美性暴力| juliaann丝袜| 玖日综合网| 人妻少妇久久中文| 91真人天天在线| 97亚洲资源| 殴美,日韩国产伦精品| 午夜天堂精品久久久久91| 亚洲一区二区中文字幕| 无码逼| 欧 美 自 拍 偷 拍| 午夜福利一区二区影院| 色婷婷国产精品一区在线观看| 久久久一区二区三区四区五区| 99黄页网站| 97资源免费视频| 天天爽夜夜欢视| 国产乱婷婷精品二区三区| 国产精品久久久亚洲一区| 熟女高潮合集-永久久久-成人AV | 97网址97| 亚洲男人天堂网久久| 好吊色一区| 97色涩| 好爽免费视频,| 热热色国产一二区AV| 天天操天天日天天干| 久久精品99久久久久久| 亚洲 另类 丝袜 自拍 动漫| 欧洲亚洲综合| 任我爽在线视频免费观看| 天欧美在线| 亚洲综合色在线| 欧美亚洲天天| 天天综合色图| 国产又黄又粗又猛大片| 亚洲AV成人无码一二三久久| 岛国在线免费视频| 91强热人妻| 国产树林里野战在线看| 亚洲色啪| 国产suv精品一区二区四区999| 欧亚免费视频| 这里只有精品视频| 亚洲欧美一区二区三区在钱蜜桃| 色九九综合| 午夜福利视频在线一区| 国产粉嫩出水在线播放| 久久99热这里只频精品6学生| 秋霞一级视频在线观看免费| 久久久久久国产精品免费网站| 一区二区视频在线播放| 99热啪啪| 久偷拍| 99只有精品| 狠狠入| 搞中出久久| 亚洲欧美经典一区二区| 第二页中文字幕| 熟女高潮合集-永久久久-成人AV | 强奸乱伦AV网址| 九九无码视频| 国产av高清版| 亚州Av天美传媒| 99人妻| 人妻 丝袜美腿 中文字幕| 久久99久久99精品免视看婷婷| 久久久草成人网站久久久草成人久久久草久久久 | a片 xxxx受爽视频| av无线看| 啊啊啊好爽快点啊啊啊嗯嗯| 日本一片一区| 欧美日韩中文字幕不卡| 日本乱人伦片中文三区| 乱色视频中文字幕| 欧美综合制服在线| 欧美色老汉| 国产一级高跟丝袜| 91性高潮久久久久久久久| 日韩懂色网| 天天躁日日躁狠狠狠躁| 手机在线A片| 操99| 欧洲一区二区三区四区在线观看| 无码一区免费在线不卡| 人人干人人操人人..com| 九九热超碰97亚洲最新香蕉 | 亚州综合在线| 日本午夜久久电影| 五十路熟女工口| 丰满人妻一区二区三区免费| 国产一区二区欧美日本| 久久精品视频在线观看| 精品久久久久综合无码| 三级片网站在线播放| 久久久久久久久久久久黄色| 加勒比综合网| 超97在线精品视频| 91欧美美女日韩国产婷婷| 四虎精品永久在线播放| 男男H黄动漫啪啪无遮挡网站| 麻豆一区二区三区精品| 无码国产精品96久久久久孕妇| 免费观看的av| 成人精品欧洲亚洲| 国产美女在线精品免费看| 丝袜夫妻自拍| 99热在线只有精品| 亚洲第一无码播放立川理惠| 日韩在线97| gogogo免费高清看中国国语| 97色97好| 日本中文熟女视频| 91久久精品国产| 亚洲人妻色图| 五月婷婷五月天| 自拍六区| 狠狠干综合| 欧美精品黑人猛交高潮| 久草免费在线一区二区| 亚洲综人| 亚洲五月婷婷| 视频二区美腿制服人妻欧美| 色婷婷五月综合| 久久久久久九九九九九九| 国产亚洲禁久一区二区| 人妻 制服 日韩 中文 在线| 国产传媒午夜理伦精品| 伊人青青草久久| 久久久99免费| 丝袜美女诱惑 91 视频| 干干干天天| 在线情色电影 91大 | 亚洲影院小综合| 香蕉视频欧美一卡二卡| 淫色网综合| 亚欧免费| 欧美熟女妇同| 无码国产精品久久久久| 乱码熟妇人妻久久久| 一类无码操逼视频| 热久久无毒不卡| 乱老女人一区二区视频| 女人久久久| 殴美牲| 操逼逼一区视频| Aa东京男人的天堂| 3p国产欧美99热| 97干97色| 超碰天天操| AA特级绝黄| 91爱啪| 精品免费1| 3d成人精品一区二区| 91中文字幕制服丝袜免费视频| 丁香六月婷婷久久综合| 中文字幕美女91| 欧美大色交| 大香樵伊人网| 日韩精品在线观看观看| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 亚洲乱熟女一区二区三区大香蕉| 精品少妇99| 日韩精品9999| 特级特黄一级毛片免费| 欧美久久人体| 亚洲丝袜B诱惑| 久久久久久国产精品免费网站| 婷婷综合伊人一区| 色妇91| 91欧美高清| 国产亚卅97| 日韩性爱电影一区| 超碰97人妻免费在线| 成人草草视频| 人人澡人人爽人人精品| 综合久久欧美| 蜜臀AV秘一区翔田千里| 亚洲男人天堂视频| 精品人妻一区二区免费蜜桃| 色呦呦呦在线观看视频| 私人尤物在线精品不卡| 新91视频.cmp| 97这里都是精品| 天天日夜夜爽| 国产极品一区二区三区三州| 97超碰碰| 97超碰欧美精品| 加勒比伊人综合| 九月丁香婷婷| 色婷婷基地| 亚洲精品国产无码高清| 超碰97人妻在线| 欧美精品系列| 狠狠夜色午夜久久综合在线| 成人在线视频二区| 99爱爱| 色哟哟511老熟女| 国产一区二区三区白丝| 伊人热综合| 精品一区二区三区蜜桃| 精久久久| 天天肏美女| 久久黄黄| 99久久婷婷国产综合精品草原| 丰满人妻无码一区二区三区| 亚洲另类欧美精品| 天堂无码| 粉嫩AV一区二区夜夜| 限制级中的三级片中的黑粗大屌屌日人妻熟女| 欧美综合在线91| 极品丝袜无码| 亚 欧 美 综合| 3571色综合一区二区二区| 殴美大黄片| 久久AV无码网址| 欧美成人四级在线播放| 青娱乐福利99| AV乱伦专区| 91欧洲入口| 5252色欧美在线男人的天堂| 久久一二三四五六七八九区| 亚洲色图综合网| 九一国产精品| 玖玖大干人妻| 九九九九九九九九九九九蜜桃| 久久久久9| 欧美精品第四五页中文字幕在线观看| 97香蕉碰碰人妻国产欧美| 日韩精品一区二区三区色欲| 伊人五月天激情| 太久视频| 国产 三级自拍| 最新国产亚洲精品精品国产亚洲综合| 国产精品久久久久中文字幕| 青娱乐久久艹| 伊人久操|