99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

DataHub Snowflake DMF Assertions 實戰(zhàn)指南:用 YAML 聲明式斷言編譯為 Snowflake Data Metric Functions

DataHub Snowflake DMF Assertions 實戰(zhàn)指南:用 YAML 聲明式斷言編譯為 Snowflake Data Metric Functions DataHub Snowflake DMF Assertions 實戰(zhàn)指南用 YAML 聲明式斷言編譯為 Snowflake Data Metric Functions【免費下載鏈接】datahubThe Context Platform for your Data and AI Stack項目地址: https://gitcode.com/GitHub_Trending/da/datahub本指南圍繞 DataHub 的 Open Assertion Compiler 展開講解如何用簡單的 YAML 文件聲明數(shù)據(jù)質(zhì)量斷言并將其編譯為可在 Snowflake 上原生執(zhí)行的 Data Metric FunctionsDMF再通過 Snowflake 攝取把執(zhí)行結(jié)果回傳到 DataHub在數(shù)據(jù)集上下文中以歷史時間線的形式呈現(xiàn)。讀完本文你將掌握從 YAML 定義、CLI 注冊、DMF 編譯、Snowflake 側(cè)注冊執(zhí)行到攝取斷言結(jié)果的完整閉環(huán)流程并理解外部用戶自建DMF 的接入方式與約束邊界。該功能當(dāng)前處于BETA狀態(tài)。一、整體思路從 YAML 到 Snowflake DMFDataHub 的 Open Assertion Compiler 允許你以簡單的 YAML 格式聲明數(shù)據(jù)質(zhì)量斷言將斷言編譯成 Snowflake Data Metric FunctionsDMF在 Snowflake 環(huán)境中注冊編譯產(chǎn)物在常規(guī) DataHub 攝取流程中把 DMF 執(zhí)行結(jié)果拉回 DataHub作為普通 Assertion Results 展示在關(guān)聯(lián)表的歷史時間線上。編譯與執(zhí)行是分離的compile命令只負(fù)責(zé)把 YAML 斷言翻譯成 SQL 工件不連接 Snowflake、不執(zhí)行任何查詢注冊與調(diào)度由 Snowflake 側(cè)完成結(jié)果回傳則發(fā)生在 DataHub 的 Snowflake ingestion 過程中。從源碼看Snowflake 編譯器的實現(xiàn)位于 compiler.py其內(nèi)部由三部分組成SnowflakeMetricSQLGenerator生成指標(biāo) SQL、SnowflakeMetricEvalOperatorSQLGenerator生成評估條件 SQL、SnowflakeDMFHandler拼裝CREATE DATA METRIC FUNCTION與ALTER TABLE ... ADD DATA METRIC FUNCTION語句。二、前置條件開始之前請確認(rèn)以下條件全部滿足擁有Snowflake Enterprise 賬戶且已啟用 DMF 功能具備在 Snowflake 環(huán)境中預(yù)置provisionDMF的權(quán)限見下文權(quán)限章節(jié)具備在 Snowflake 環(huán)境中查詢 DMF 結(jié)果的權(quán)限見下文權(quán)限章節(jié)已有一個完成 Snowflake 元數(shù)據(jù)攝取、可用的 DataHub 實例。如果尚未配置 Snowflake 攝取參考 Snowflake Quickstart Guide 上手已安裝 DataHub CLI 并運行過datahub init。三、權(quán)限準(zhǔn)備在 Snowflake 側(cè)正確配置權(quán)限是整套流程成功的前提。以下是三組不同角色所需的最小權(quán)限集合。3.1 注冊 DMF 所需的權(quán)限執(zhí)行 DMF 注冊與取攝取的服務(wù)賬戶service account必須具備PrivilegeObjectNotesUSAGEDatabase, schemaDMF 將被創(chuàng)建在該數(shù)據(jù)庫與 Schema 中由 compile 命令中的DMF_SCHEMA配置指定。CREATE FUNCTIONSchema允許在 compile 命令配置的 Schema 中創(chuàng)建新的 DMF。EXECUTE DATA METRIC FUNCTIONAccount控制哪些角色可以使用與服務(wù)器無關(guān)server-agnostic的計算資源來調(diào)用系統(tǒng) DMF。USAGEDatabase, schema查詢中引用的目標(biāo)表所在的數(shù)據(jù)庫與 Schema。OWNERSHIPTable允許將 DMF 與目標(biāo)表關(guān)聯(lián)。USAGEDMF允許調(diào)用 compile 命令配置的 Schema 中的 DMF。同時必須授予的角色RoleNotesSNOWFLAKE.DATA_METRIC_USER使用 System DMFs 所需3.2 運行 DMF調(diào)度執(zhí)行所需的權(quán)限由于定時調(diào)度的 DMF 以表屬主table owner的角色運行表屬主必須具備PrivilegeObjectNotesUSAGEDatabase, schemaDMF 將被創(chuàng)建在該數(shù)據(jù)庫與 Schema 中由 compile 命令中的DMF_SCHEMA配置指定。USAGEDMF允許調(diào)用 compile 命令配置的 Schema 中的 DMF。EXECUTE DATA METRIC FUNCTIONAccount控制哪些角色可以使用與服務(wù)器無關(guān)的計算資源來調(diào)用系統(tǒng) DMF。同時必須授予的角色RoleNotesSNOWFLAKE.DATA_METRIC_USER使用 System DMFs 所需3.3 查詢 DMF 結(jié)果所需的權(quán)限此外執(zhí)行 DataHub Ingestion 并查詢 DMF 結(jié)果的服務(wù)賬戶還必須被授予以下系統(tǒng)應(yīng)用角色RoleNotesDATA_QUALITY_MONITORING_VIEWER查詢 DMF 結(jié)果表所需有關(guān) Snowflake DMF 及其預(yù)置、查詢所需權(quán)限的更多細(xì)節(jié)參見 Snowflake 官方數(shù)據(jù)質(zhì)量文檔。3.4 授權(quán)示例 SQL以下 SQL 給出了一個可直接套用的授權(quán)腳本覆蓋上述三類角色assertion-service-role、table-owner-role、datahub_role-- 為 assertion-service-role 配置創(chuàng)建 DMF 并與表關(guān)聯(lián)的權(quán)限 grant usage on database dmf-database to role assertion-service-role grant usage on schema dmf-database.dmf-schema to role assertion-service-role grant create function on schema dmf-database.dmf-schema to role assertion-service-role -- 授予 assertion-service-role 所有權(quán)及其余權(quán)限 grant role table-owner-role to role assertion-service-role -- 為 table-owner-role 配置按計劃運行 DMF 的權(quán)限 grant usage on database dmf-database to role table-owner-role grant usage on schema dmf-database.dmf-schema to role table-owner-role grant usage on all functions in dmf-database.dmf-schema to role table-owner-role grant usage on future functions in dmf-database.dmf-schema to role table-owner-role grant database role SNOWFLAKE.DATA_METRIC_USER to role table-owner-role grant execute data metric function on account to role table-owner-role -- 為 datahub-role 配置查詢 DMF 結(jié)果的權(quán)限 grant application role SNOWFLAKE.DATA_QUALITY_MONITORING_VIEWER to role datahub_role注意其中使用了USAGE ON FUTURE FUNCTIONS確保后續(xù)新建的 DMF 也自動對表屬主可見。四、支持的斷言類型DataHub Snowflake DMF Assertion Compiler 當(dāng)前支持以下斷言類型Freshness校驗表是否在指定時間窗口內(nèi)被更新Volume校驗表行數(shù)等體量指標(biāo)是否滿足閾值Column校驗列上的指標(biāo)如空值數(shù)或列值約束Custom SQL自定義 SQL 返回的指標(biāo)是否滿足條件。注意Schema Assertions 目前不受支持。從源碼看編譯器對斷言類型的支持體現(xiàn)在 metric_sql_generator.py 的singledispatchmethod分發(fā)中RowCountChangeVolumeAssertion與SqlMetricChangeAssertion增量/變更型斷言會被顯式判定為Unsupported assertion type并拋錯這與文檔中變更類斷言不被支持的限制一致。五、完整的五步實戰(zhàn)流程整個流程分為五步定義 YAML 斷言 → 注冊到 DataHub → 編譯為 Snowflake DMF → 在 Snowflake 注冊執(zhí)行 → 攝取結(jié)果回傳。Step 1用 Assertion YAML 文件定義數(shù)據(jù)質(zhì)量斷言斷言以 YAML 聲明倉庫提供了一個完整的可運行示例 assertions_configuration.yml包含五種典型斷言version: 1 namespace: test-config-id-1 assertions: # Freshness Assertion - entity: urn:li:dataset:(urn:li:dataPlatform:snowflake,test_db.public.test_assertions_all_times,PROD) type: freshness lookback_interval: 1 hour last_modified_field: col_timestamp schedule: type: cron cron: 0 * * * * meta: entity_qualified_name: TEST_DB.PUBLIC.TEST_ASSERTIONS_ALL_TIMES entity_schema: - col: col_date native_type: DATE # Volume Assertion - type: volume entity: urn:li:dataset:(urn:li:dataPlatform:snowflake,test_db.public.test_assertions_all_times,PROD) metric: row_count condition: type: less_than_or_equal_to value: 1000 schedule: type: cron cron: 0 * * * * meta: entity_qualified_name: TEST_DB.PUBLIC.TEST_ASSERTIONS_ALL_TIMES entity_schema: - col: col_date native_type: DATE # Field Metric Assertion - type: field entity: urn:li:dataset:(urn:li:dataPlatform:snowflake,test_db.public.test_assertions_all_times,PROD) field: col_date metric: null_count condition: type: equal_to value: 0 schedule: type: cron cron: 0 * * * * meta: entity_qualified_name: TEST_DB.PUBLIC.TEST_ASSERTIONS_ALL_TIMES entity_schema: - col: col_date native_type: DATE # Field Value Assertion - type: field entity: urn:li:dataset:(urn:li:dataPlatform:snowflake,test_db.public.purchase_event,PROD) field: quantity condition: type: between min: 0 max: 10 schedule: type: on_table_change meta: entity_qualified_name: TEST_DB.PUBLIC.PURCHASE_EVENT entity_schema: - col: quantity native_type: FLOAT # Custom SQL Metric Assertion - type: sql entity: urn:li:dataset:(urn:li:dataPlatform:snowflake,test_db.public.purchase_event,PROD) statement: select mode(quantity) from test_db.public.purchase_event condition: type: equal_to value: 5 schedule: type: on_table_change meta: entity_qualified_name: TEST_DB.PUBLIC.PURCHASE_EVENT entity_schema: - col: quantity native_type: FLOAT關(guān)鍵字段說明version配置文件格式版本固定為1namespace內(nèi)部別名id標(biāo)識該斷言配置文件的唯一命名空間。此結(jié)構(gòu)由 assertion_config_spec.py 中的AssertionsConfigSpec模型校驗entity斷言作用目標(biāo)數(shù)據(jù)集的 URN必須與 DataHub 中已攝取的 Snowflake 數(shù)據(jù)集一致type斷言類型取值為freshness/volume/field/sqlschedule調(diào)度方式支持croncron 表達(dá)式 時區(qū)與on_table_change表變更觸發(fā)meta.entity_qualified_nameSnowflake 側(cè)的完整表名DB.SCHEMA.TABLE用于生成 DMF 關(guān)聯(lián)語句meta.entity_schemaDMF 參數(shù)所需的一個列名與原生類型。Snowflake 不允許創(chuàng)建不帶列參數(shù)的自定義數(shù)據(jù)指標(biāo)函數(shù)因此編譯器需要從表 schema 中取任意一列作為ARGT TABLE(...)的參數(shù)見 compiler.py 中g(shù)et_dmf_args的實現(xiàn)。Step 2用 DataHub CLI 注冊斷言將斷言注冊到 DataHub使其在 DataHub UI 中可見datahub assertions upsert -f examples/library/assertions_configuration.ymlupsert命令讀取 YAML 文件為每條斷言生成一個urn:li:assertion:id并發(fā)射對應(yīng)的AssertionInfoMCP 到 DataHub。其 CLI 實現(xiàn)在 assertions_cli.py。注倉庫中該 assertions CLI 已標(biāo)記為 deprecated未來版本可能移除并建議關(guān)注替代方案編譯與注冊流程在當(dāng)前版本仍然可用。Step 3用assertions compile編譯為 Snowflake DMF接下來使用compile命令生成可在 Snowflake 注冊的 SQL 代碼datahub assertions compile -f examples/library/assertions_configuration.yml -p snowflake -x DMF_SCHEMAdb.schema-where-DMF-should-live命令參數(shù)參數(shù)說明-f, --file斷言 YAML 文件路徑必填-p, --platform編譯目標(biāo)平臺Snowflake 為snowflake必填-o, --output-to編譯產(chǎn)物輸出目錄可選默認(rèn)當(dāng)前工作目錄下的target/-x, --extras平臺相關(guān)的額外鍵值對格式keyvalue可多次傳入。Snowflake 平臺必須提供DMF_SCHEMAdb.schemaDMF_SCHEMA是必需的擴展參數(shù)編譯器會嚴(yán)格校驗其存在否則報錯Must specify value for DMF schema using -x DMF_SCHEMAdb.schema見 compiler.py 的create方法。命令運行后會生成兩個文件默認(rèn)位于target/目錄可用-o指定其他目錄dmf_definitions.sql將注冊到 Snowflake 的 DMF 創(chuàng)建 SQLdmf_associations.sql將 DMF 與目標(biāo)表關(guān)聯(lián)、并配置調(diào)度計劃的 SQL。此外還會生成compile_report.json編譯報告記錄每條斷言的編譯成功/失敗狀態(tài)見 assertions_cli.py。dmf_definitions.sql內(nèi)容示例該文件保存從 YAML 斷言定義編譯生成的 DMF 創(chuàng)建語句-- Example dmf_definitions.sql -- Start of Assertion 5c32eef47bd763fece7d21c7cbf6c659 CREATE or REPLACE DATA METRIC FUNCTION test_db.datahub_dmfs.datahub__5c32eef47bd763fece7d21c7cbf6c659 (ARGT TABLE(col_date DATE)) RETURNS NUMBER COMMENT Created via DataHub for assertion urn:li:assertion:5c32eef47bd763fece7d21c7cbf6c659 of type volume AS $$ select case when metric 1000 then 1 else 0 end from (select count(*) as metric from TEST_DB.PUBLIC.TEST_ASSERTIONS_ALL_TIMES ) $$; -- End of Assertion 5c32eef47bd763fece7d21c7cbf6c659 ....要點解讀DMF 名稱統(tǒng)一使用datahub__assertion_id前綴源碼見 compiler.py 的get_dmf_name這個前綴在攝取階段用于區(qū)分 DataHub 管理的 DMF 與外部 DMFCOMMENT中記錄了斷言 URN 與斷言類型便于溯源函數(shù)體是一個返回 0/1 的 CASE 表達(dá)式metric 1000返回 1通過否則返回 0失敗。所有類型斷言的最終評估都會被統(tǒng)一折疊為 0/1 語義組裝上述語句的模板見 dmf_generator.py 的create_dmf。dmf_associations.sql內(nèi)容示例該文件保存將 DMF 與目標(biāo)表關(guān)聯(lián)、并配置調(diào)度計劃的語句-- Example dmf_associations.sql -- Start of Assertion 5c32eef47bd763fece7d21c7cbf6c659 ALTER TABLE TEST_DB.PUBLIC.TEST_ASSERTIONS_ALL_TIMES SET DATA_METRIC_SCHEDULE TRIGGER_ON_CHANGES; ALTER TABLE TEST_DB.PUBLIC.TEST_ASSERTIONS_ALL_TIMES ADD DATA METRIC FUNCTION test_db.datahub_dmfs.datahub__5c32eef47bd763fece7d21c7cbf6c659 ON (col_date); -- End of Assertion 5c32eef47bd763fece7d21c7cbf6c659 ....調(diào)度方式由斷言 YAML 中的schedule決定編譯器會將其翻譯為 Snowflake 的調(diào)度語法見 compiler.py 的get_dmf_scheduleYAML schedule生成的 DATA_METRIC_SCHEDULEtype: on_table_changeTRIGGER_ON_CHANGEStype: cron如cron: 0 * * * *時區(qū)UTCUSING CRON 0 * * * * UTCtype: interval如 60 分鐘60 MIN同時編譯器會校驗同一張表上的所有斷言必須使用完全相同的調(diào)度否則拋錯見 compiler.py這與下文注意事項中 Snowflake 的限制保持一致。Step 4在 Snowflake 環(huán)境中注冊編譯產(chǎn)物將 Step 3 生成的兩個 SQL 文件在 Snowflake 中執(zhí)行??梢灾苯釉?Snowflake UI 中運行也可以使用 SnowSQL CLIsnowsql -f dmf_definitions.sql snowsql -f dmf_associations.sql:::note 在表上調(diào)度 Data Metric Function 會產(chǎn)生 SnowflakeServerless Credit 用量計費細(xì)節(jié)參考 Snowflake 官方計費說明。若某條斷言不再使用請務(wù)必通過dmf_associations.sql中對應(yīng)的方式 DROP 掉相關(guān) Data Metric Function避免持續(xù)產(chǎn)生費用。 :::Step 5運行攝取把 DMF 結(jié)果回傳到 DataHubDMF 注冊完成后Snowflake 會在目標(biāo)表更新時TRIGGER_ON_CHANGES或按固定計劃自動執(zhí)行它們。要把生成的數(shù)據(jù)質(zhì)量斷言結(jié)果回傳到 DataHub需要以特殊配置標(biāo)志運行 DataHub 攝取include_assertion_results: true# Your DataHub Snowflake Recipe source: type: snowflake config: # ... include_assertion_results: True # ...然后照常執(zhí)行攝取datahub ingest -c snowflake.yml攝取過程中DataHub 會查詢 Snowflake 中存儲的最新 DMF 結(jié)果將其轉(zhuǎn)換為 DataHub Assertion Results并在攝取期間通過 CLI 或 UI以普通斷言的形式報告回來。從源碼看攝取器在 snowflake_assertion.py 中查詢 snowflake_query.py 定義的dmf_assertion_resultsSQL從SNOWFLAKE.LOCAL.DATA_QUALITY_MONITORING_RESULTS視圖讀取結(jié)果并按MEASUREMENT_TIME時間窗口對應(yīng) recipe 中的start_time/end_time過濾默認(rèn)情況下include_externally_managed_dmfsFalse查詢會通過METRIC_NAME ilike datahub\_\_% escape \過濾只取 DataHub 創(chuàng)建的 DMF結(jié)果行中VALUE被映射為斷言運行狀態(tài)VALUE1→ SUCCESS通過VALUE0→ FAILURE失敗其他值 → ERROR見 snowflake_assertion.py每條結(jié)果生成一個AssertionRunEvent工作單元并攜帶MEASUREMENT_TIME作為時間戳DataHub UI 據(jù)此繪制歷史時間線。單元測試 test_snowflake_assertion.py 驗證了上述查詢行為默認(rèn)查詢包含datahub前綴過濾開啟外部 DMF 后則不附加任何ilike過濾。六、攝取外部用戶自建DMF除了 DataHub 創(chuàng)建的 DMF你還可以攝取自己用 Snowflake 原生方式創(chuàng)建的 Data Metric Function 的結(jié)果。外部指那些未經(jīng)過 DataHub assertion compiler、直接創(chuàng)建在 Snowflake 中的 DMF——它們獨立于 DataHub 的管理范圍之外。6.1 為什么要攝取外部 DMF存量 DMF在采用 DataHub 之前就已經(jīng)存在于 Snowflake 的 DMF希望在 DataHub 中看到其結(jié)果而無需重建自定義邏輯需要 DataHub assertion compiler 不支持的 DMF 邏輯例如復(fù)雜的多表檢查團隊工作流不同團隊直接在 Snowflake 中管理 DMF但你希望在 DataHub 中獲得集中可見性漸進式采用在完全遷移到 DataHub 管理的斷言之前先在 DataHub 中監(jiān)控現(xiàn)有的數(shù)據(jù)質(zhì)量檢查。6.2 啟用外部 DMF 攝取在 Snowflake recipe 中添加include_externally_managed_dmfs標(biāo)志source: type: snowflake config: # ... connection config ... # 啟用斷言結(jié)果攝取必需 include_assertion_results: true # 啟用外部 DMF 攝取新增 include_externally_managed_dmfs: true # 斷言結(jié)果的時間窗口 start_time: -7 days兩個標(biāo)志必須同時開啟外部 DMF 攝取才能生效。這一約束在配置模型層被強制校驗include_externally_managed_dmfs: True而include_assertion_results未開啟時配置校驗會直接拋出ValueError見 snowflake_config.py。6.3 外部 DMF 的要求外部 DMF 必須以1表示 SUCCESS、以0表示 FAILURE。DataHub 將 SnowflakeDATA_QUALITY_MONITORING_RESULTS表中的VALUE列解釋為VALUE 1→ 斷言PASSEDVALUE 0→ 斷言FAILED這是因為 DataHub 無法解釋任意的返回值例如 100 個空值行——這到底是好還是壞。你必須把通過/失敗邏輯構(gòu)建到 DMF 本身中。:::warning 如果我的 DMF 返回其他值怎么辦 如果 DMF 返回 0 或 1 以外的值DataHub 會把斷言結(jié)果標(biāo)記為ERRORVALUE 1→PASSEDVALUE 0→FAILEDVALUE ! 0 且 VALUE ! 1如 5、100、-1→ERRORERROR 狀態(tài)表示該 DMF 未按 DataHub 攝取的要求正確配置??赏ㄟ^以下方式識別這些情況檢查攝取日志中的警告例如DMF my_dmf returned invalid value 100. Expected 1 (pass) or 0 (fail). Marking as ERROR.在 DataHub UI 中查找處于 ERROR 狀態(tài)的斷言 :::這一映射邏輯在 snowflake_assertion.py 中有直接實現(xiàn)日志中的警告文案與文檔描述一致。示例正確編寫外部 DMF錯誤示例—— 返回原始計數(shù)DataHub 無法解釋CREATE DATA METRIC FUNCTION my_null_check(ARGT TABLE(col VARCHAR)) RETURNS NUMBER AS $$ SELECT COUNT(*) FROM ARGT WHERE col IS NULL $$; -- 返回0, 5, 100 等 —— DataHub 無法判定通過/失敗正確示例—— 返回 1通過或 0失敗CREATE DATA METRIC FUNCTION my_null_check(ARGT TABLE(col VARCHAR)) RETURNS NUMBER AS $$ SELECT CASE WHEN COUNT(*) 0 THEN 1 ELSE 0 END FROM ARGT WHERE col IS NULL $$; -- 返回?zé)o空值時返回 1通過存在空值時返回 0失敗正確示例—— 帶閾值CREATE DATA METRIC FUNCTION my_null_check_threshold(ARGT TABLE(col VARCHAR)) RETURNS NUMBER AS $$ SELECT CASE WHEN COUNT(*) 10 THEN 1 ELSE 0 END FROM ARGT WHERE col IS NULL $$; -- 返回空值 ≤10 時返回 1通過空值 10 時返回 0失敗6.4 外部 DMF 與 DataHub 創(chuàng)建 DMF 的差異AspectDataHub-Created DMFsExternal DMFsNaming以datahub__為前綴任意名稱Definition通過datahub assertions compile創(chuàng)建在 Snowflake 中手動創(chuàng)建Assertion Type基于 YAML 定義Freshness、Volume 等CUSTOMSourceNATIVE在 DataHub 中定義EXTERNALURN Generation從 DMF 名稱提取datahub__guid由 Snowflake 的REFERENCE_ID生成從源碼看外部 DMF 的 URN 通過SnowflakeExternalDmfKey基于REFERENCE_IDDMF-表-列關(guān)聯(lián)的唯一標(biāo)識與可選platform_instance生成確定性 GUID見 snowflake_assertion.py 與 測試用例從而保證同一REFERENCE_ID多次攝取生成相同的斷言 URN、不同REFERENCE_ID互不沖突。而對于datahub__前綴的 DMF則直接從名稱中提取 GUID。6.5 外部 DMF 在 DataHub UI 中的呈現(xiàn)外部 DMF 在 DataHub 中以如下形式出現(xiàn)Assertion TypeCUSTOMSourceEXTERNALPlatform InstanceSnowflake platform instance若已配置DescriptionExternal Snowflake DMF: {dmf_name}Custom Propertiessnowflake_dmf_nameDMF 函數(shù)名snowflake_reference_idSnowflake 對 DMF-表綁定的唯一標(biāo)識snowflake_dmf_columnsDMF 作用的列列表逗號分隔這些字段在 snowflake_assertion.py 的_create_assertion_info_workunit中被寫入AssertionInfo的customAssertion與customProperties單列 DMF 還會生成對應(yīng)的 schema field URN從而把斷言掛到具體列上。你可以在 DataHub UI 中關(guān)聯(lián)數(shù)據(jù)集的Quality標(biāo)簽頁查看外部 DMF 斷言它們會與 DataHub 創(chuàng)建的斷言一同展示通過/失敗歷史。七、注意事項Caveats以下限制源自 Snowflake 平臺本身使用前需知曉目前 Snowflake 最多支持1000 個 DMF-表關(guān)聯(lián)因此你無法為 Snowflake 定義超過 1000 條斷言目前 Snowflake不允許在 DMF 定義中使用 JOIN 查詢或非確定性函數(shù)因此 SQL 斷言或過濾器部分不能使用這些特性目前一張表上調(diào)度的所有 DMF必須遵循完全相同的調(diào)度計劃因此不能為同一張表上的不同斷言設(shè)置不同的調(diào)度目前 DMF僅支持常規(guī)表不支持動態(tài)表dynamic tables或外部表external tables。其中同一表必須同調(diào)度的限制在編譯器側(cè)已被強制執(zhí)行見 compiler.py僅支持常規(guī)表也與 Snowflake 攝取配置中table_types的取值BASE TABLE/EXTERNAL TABLE相互印證見 snowflake_config.py。八、FAQ原文檔中該章節(jié)標(biāo)注為 Coming soon!暫未提供具體問答內(nèi)容。如果你在使用中遇到問題可以結(jié)合上文提到的源碼路徑編譯器、攝取器、查詢與測試定位行為細(xì)節(jié)或在 DataHub 官方渠道尋求支持。九、總結(jié)與后續(xù)探索本文完整走通了YAML 聲明斷言 →assertions upsert注冊 →assertions compile編譯 → Snowflake 注冊與調(diào)度 →include_assertion_results攝取結(jié)果的 Snowflake DMF 斷言全鏈路并說明了外部 DMF 的接入要求與 0/1 返回值約定。想深入了解的讀者可以繼續(xù)在倉庫中探索編譯產(chǎn)物生成與調(diào)度翻譯compiler.py、dmf_generator.py、metric_sql_generator.py斷言結(jié)果攝取與外部 DMF 處理snowflake_assertion.py、snowflake_query.py攝取配置項定義與校驗snowflake_config.py單元測試test_snowflake_assertion.pyYAML 斷言定義示例assertions_configuration.yml四種斷言類型的詳細(xì)概念Freshness、Volume、Column、Custom SQLSnowflake 攝取入門overview、setup、configuration?!久赓M下載鏈接】datahubThe Context Platform for your Data and AI Stack項目地址: https://gitcode.com/GitHub_Trending/da/datahub創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷在线网| 激情综合99| 五月婷综合| 九热精品| 久久亚洲激情五码| 日韩砖区| 婷婷色网站| 九九性视频| 丁香婷在线| 五月婷婷婷| 激情五月综合亚洲另类| 五月天开心婷婷激情网站 | 99色精品视频| 丁香婷婷五月人体| 99丁香五月| 久热这里只有精品6| 日本一道久久| 婷婷五月丁香综合桃花色网| 五月丁香六月综合图| 日韩操人| 欧美乱码国产一级A片| 99re这里只有精品国产99| 9999热精品| 婷婷激情综合| 色综合激情| 日韩六十路91性交电影| 天天日日夜夜爽| 色狠狠色噜噜AV天堂五区| 超碰人人干| 五月综合激情网| 丁香五月欧美婷婷| 91视屏在线观看com.wwwvv| 天堂综合久| A久网| 五月天婷婷基地| 色婷婷人人| 日本超碰在线| 性婷婷| 激情综合色婷婷啪啪六月天| 婷婷五月六月| 五月丁香婷婷色色| 婷婷五月天成人综合网| 久久久精品色| 天天干天天干天天干天天干天天| 这里只有精品视频| 超碰超碰在线| 五月天激情久久| 深爱激情小说五月婷婷| 五月天六月天| 五月伊人视频在线看| 91精品婷婷国产综合| 国内精品免费一区二区2009| 韩国97天堂| 国产美女无遮挡裸体毛片A片| 性色天| 青青草日本亚洲| 天天操夜夜爽天天操| 国产综合色婷婷精品久久| 久久99免费视频网站| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 色播五月丁香| 少妇水多A片太爽了| 欧美性爱五月天| 九九99热久久精品66中文字幕| 激情网综合| 爱草视频在线| 激情五月色在线播放| 色9色| 色婷视频| 五月婷婷就去色| 狠狠五月天婷婷| 色婷婷在线视频久| 曰日爽日日操| 五月婷婷丁香| 国自产拍偷拍精品啪啪一区二区| www.久操| 在线成人网址| 婷婷久久五月| xfplayav在线| 色色色婷婷| 久久久性爱视频| 亚洲综合视频在线| 精品一二三区久久AAA片| 色色五月天婷婷| 五月天综合| 亚洲欧洲中文日韩久久AV乱码| 99ri在线观看视频| 天天艹天天色| 中文字幕视频在线播放| 国产成人精品一区二区三区视频| 五月婷婷|欧美| 色99色| 婷婷欧美综合| 激情五月com| 五月婷婷免费| www.99久久久| httpwww色com日本| 97色干| 五月丁香婷婷婷婷综合网| 亚洲综合在线丁香五月| 超碰操网| 神马久久五月天| 丁香婷婷超碰 | 综合玖玖偷拍| 成人色情五月天婷婷丁香| 激情五月,深深爱五月| 丁香婷婷视频一区二区| 免费黄色视频网址| 九九五月天| 五月激情综合五月| 日本色99| 日韩伊人大香蕉| 丁香五月激情综合| 淫荡综合网| 操逼视频一区| 9视频1在线| 无码se| 丁香五月天啪啪激情综和网 | 日韩爱操视频| 天天爽天天干| 日本一级黄色电影| www.色婷婷.com| 人人操AV| 久碰视频| 伊人久久大香网| 五月丁香五月综合欧美| 91婷婷搞| 夜夜撸夜夜骑| 熟妇国产| 99热只有这里才是精品| 风流少妇A片一区二区蜜桃| 婷婷五月18永久免费网站| www.99热视频在线观看| 99在线小视频| 99热偷拍| 丁香婷婷五月色成人网站| 网站免费一站二站| 九热视频| 无码任你操| 九一牛视频探花| 亚洲综合视频天天精品| 五月天婷婷综合| 九热电影av| 色五月五月丁香| 亚洲欧洲另类| 色婷婷五月天中文字幕| 天天做天天爽| 色婷婷丁香网| www.色婷婷.com| 久热综合| 五月婷婷激情网| www.99热在线观看| 99精品热视频| 快乐婷婷五月天| 在线观看免费狠狠色丁香香综合| 日韩国产在线免费观看| 极品另类| 精品久久99| 玖玖在线| 激情五月天婷婷| 91色综合网| 成人AV综合在线| 色性日本| 996热re视频在线观看视频| 亚洲五月综合色播| 九九成人电影婷婷| 丁香婷婷色情社区成人小说| 五月丁香最新| 中文字幕在线免费| 久久色五月天| 深爱五月天 开心网| 色色A| 婷婷五月综合免费在线| 日本视频99| 丁香狠狠操| 思思热精品在线观看| 超碰成人黄色网| 开心五月婷婷六月丁香| 丁香五月天社区婷婷| 天天视频亚洲| 午夜成人综合| 五月丁香在线观看| 综合深爱五月| 亚洲AV免费国产电影| 婷婷色六月| 97久久精品| 激情五月天在线视频| 激情五月激情综合俺也去婷婷小说| 欧美精品999| 久久99久久99久久99人受| 婷婷久久久| 99,色| 五月丁香六月天| 婷婷丁香色五月天久久88| 99国产精品久久久久久久久久久| 99热这里只有精品86| 精品99在线观看| 婷色五月| www夜夜操comwww| 99燥99日| 五月天开心婷婷激情网站| 99热99精品在线观看| 激情5月婷婷| 超碰人人干| 97高清国语自产拍| 天堂五月婷婷| 人妻尝试久久久久久久久久久久| 热五月婷婷| 性爱久久| 丁香五月天社区| 97婷婷色| 欧美性交一区二区三区| 国产午夜成人AV在线播放| 中文字幕色色| www.国产亚洲69ty.久久久久久久久久久久 | 婷婷亚洲综合| 亚洲婷婷激情综合激情999精品| 120分钟婬片免费看| 东京热五月婷婷| 丁香婷婷五月综合| 久久人妻在线| 久久99热这里只有精品23| 九九色婷婷Av| 日韩久久成人| 天天干天天做| 天天干天天操天天拍| 国产精品操| 久久99热这里只有精品| 五月丁香六月婷婷激情视频在线观看免费| 午夜丁香六月婷| 停停综合色色| 国产在线网址1| 深爱激情五月婷婷| 91大神操美女| 色五月色五天色情网| 亚洲传媒在线观看| 日韩亚洲视频| 天天色天天爱天天爽| 久久曰曰| 色综合久久88色综合天天看| 91操屁股| 99ri视频在线观看| 精品自拍97| 五月天婷婷色| 无码AV免费精品一区二区三区| 五月天天天天天天天天天天天婷婷婷| 五月播播| rr天天操| 天天爽夜夜爽天天爽夜夜爽| 任你艹| 五月丁香六月婷婷综合| 久久精品99| 丁香五月天亚洲视频| 婷婷五月天亚洲综合网| 五月婷婷开心深| 久久九九@| 日韩久久日| 成人精品一区日本无码网| 五月激情婷婷综合| 超碰在线国产| 五月丁香亭亭操逼| 国产精品久久..4399| 97色色视频| 少妇人妻综合色6699| 婷婷丁香六月影视| 狠狠干总合| 丁香婷婷综合精品六月初| 97人人操在线| 婷婷五月丁香av网站| 超碰人人操人人干| 五月丁香手机在线| 少妇人妻偷人精品无码视频新浪| 久久丁香五月婷婷| 日日夜夜噜噜爽爽| 天天摸夜夜夜| 99男人的天堂| www.天天日| 思思久久99| 伊人婷婷五月天| 99热婷婷| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 精品自拍97| 国产干逼片| 久久久久视剧HD| 五月天基地| 色五月天丁香婷婷色| 六月婷婷最新网址| 五月丁香六月婷婷综合在线| 亚洲婷婷六月天| 凹凸7777操操操| 丁香五月婷婷成人色区| 激情五月影院| 亚洲热热视频| 91丁香色| 大香蕉五月婷婷| 97色在线视频| 开心五月综合激情综合五月| 色色色色色网| 99人人干| 日本久碰| 丁香五月天欧洲在线| 亚洲成色综合网站免费观看| 婷婷丁香色情| 精品免费99| 66色在线日韩| 丁香五月花| 色婷婷第四色| 狠狠舔| 色五月激情综合| 九九视频这里只有精品| 粉嫩av懂色av蜜臀av熟妇| 亚洲无码色| 任你爽在线视频| 99九九热视频| 婷婷成人丁香色情基地30| 狠狠狠狠狠狠狠狠| 任你爽视频| 美女被操一区二区| 天天玩夜夜操天天爽| 亚洲网站在线鸭子av| 婷婷五月天亚洲图片| 日日夜夜干| 久久婷婷激情四射五月天| 亚韩在线视频| 亚洲激情婷婷| 亚洲精品V天堂中文字幕| 99视频在线看| 天天色五月| 91九色欧美| 国产黄大片在线观看画质优化| 色婷婷操逼网| 五月丁香天天| 婷婷五月天色色| 日本久久激情| 激情五月婷婷欧美极品| 婷婷在线综合| 人人操91色| 做爱夜夜干天天操| 亚洲综合色色| 五月天操逼网| 六月丁香婷婷综合在线| 久久这里只有精品视频15| 激情性爱网站| 日日干日日s| 五月丁香福利| 色噜久| 第四色婷婷最爱| 97人人操在线| 99精品超在线播放| 久久怕怕视频| 嫩草视频。| 激情五月天婷婷久久久久久久久久久| 97干免费视频| 噜噜狠狠色综合久| 久久久.COM| 欧美日韩国产成人在线| 操射国产日本| 五月丁香婷婷激情图片| 99视频热| 久久一伦| 狠狠色综合精品视频在线| 亭亭色色五月天| 婷婷色在线视频| 97天堂| 狠狠婷婷综合| 狠狠综合| 国产成人+综合亚洲+天堂| 久久久久久丁香五月| 婷婷99| 天天碰夜夜操| 永久天堂日本| 人人色性网| 婷婷亚洲天堂| 99九九这里有免费视频| 99热只有这里才是精品| 天天色天天日| 天天爱天天吃狠天天透| 五月婷婷六月色| 亚洲 无码 中文字幕 中出| 影音 五月 婷婷 久久| 色色亚洲| 婷婷综合色| 综合久久婷婷五月丁香| 五月天影院| 亚洲国产成人综合| 五月天天爽| 99热思思| 激情五月婷婷欧美极品| 野战J办公桌椅H| 丁香五月天欧美成人| 九九热免费视频| 在线亚洲综合网| 狠狠操天天日| 中文av在线观看| 天天插,天天射| 熟女色色一区二区| 激情深爱综合网| 激情五月天福利| 久久这里有精品| 97在线日本| AA丁香综合激情| 欧美日本99| 99久久99久久| 无码日本精品XXXXXXXXX| 久久女婷| 农村熟妇高潮精品A片| www。88热在线视频免费观看| 国精产品一区一区三区免费视频| 天天夜夜六月丁香五月婷婷老师| 日本A片一区| 婷婷深爱五月| 婷婷的久久网站| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 深夜男女福利刺激影院一区完整| 六月丁香啪啪啪| 婷婷天堂综合| 久久婷婷色五月| 99啪啪骑| 婷婷五月天影院| 春色激情第四色| 六月婷色| 五月花婷婷| 丁香美女主播视频在线观看 | 成人网站在线观看视频| sewuyuejiqingwang| 久久99激情五月天| 亚洲另类电影| 思思久久精品视频| 中文字幕婷婷| 五月婷婷丁香91| 狠狠干五月天| 天干干夜夜操| 亚洲色色色色色| 久久九九激情五月天 | 久久久久网站| 天天操天天谢| 久碰婷婷视频| 日韩精品99久久| 99re思思热久久| 天天干天天爽天天操| 啪啪激情综合| 日韩AV成人电影| 第九色区av天堂| 99精品综合视频| 激情四射五月天偷偷看婷婷| 久久精品女人天堂AAA| 日本久久婷| 色婷婷亚洲在线| 狠狠爱婷婷爱| 狠狠色婷婷色| 国产一级视频a| 色播五月天激情| 亚洲精品午夜国产va久久成人| 美日韩成人| 九九XX视频| 99在线精品免费视频| 色五月色图| 色婷婷先锋| 综合久久99| 手机在线日韩视频中文字幕| www.婷婷com| 亚洲日日日| 五月婷婷中文| 欧美婷婷六月丁香综合色| 婷婷婷久久久| www.韩日视频| 琪琪色网在线| 狠狠干.com| 在线视频区| 亚洲六月婷婷| AV性爱在线| 天天草天天日| 很很干在线视频| 人人草成人视频| 人人超碰99| 久久五月热| 97色干在线观看| 91色久| 五月婷色激情五月| 欧美中文五月天| 欧美性色五月天| 欧美成性色| 久久丁香| 日日射天天射| 色综合色色色色色| 婷婷激情五月天视频在线| 天堂草在线观| 丁香六月激情四射| 99久久婷婷五月综合| 五月天亭亭俺也| 思思精品热在线| 饮料下药迷倒漂亮女同事强干| 久久这里只| 深爱五月日韩| 六月丁香五月婷婷| www.zbzhongsen.com| 天天干天天拍| 风流少妇A片一区二区蜜桃| 五月天激情视频| 五月天丁香婷婷网| 久久99日本精品视频免费观看| 免费一区二区三区| 色丁香五月婷婷综合久久| 色吧网综合| AV网在线观看| 六月婷婷七月丁香| 色婷婷五月影视| 精品九九视频在线观看| 激情五月天伊人影院| 深爱激情六月天| 九九精品热播| 国自产拍偷拍精品啪啪一区二区| 91操黄| 日韩无码系列| 超碰在线免费| 激情综合网激情五月丁香| 五月天天天色| www超碰| 99热这里只有精彩| 日本色超碰| 五月婷婷色白丝| CAOBIBI| 9热在线观看| 无码毛片992367| 日日干日日s| 99 热| 五月婷综合性中心| 99视频这里有精品| 先锋资源婷婷| 激情综合网婷婷五夜| 97人人操人人操人人操人人| 天天做天天爱天天爽夜夜揉| 性小说五月天| 91操熟女| avh片在线观看| 9久久婷婷国产综合精品性色| 五五月五月| 这里有精品2| 丁香六月婷婷久久综合| 五月丁香六月激情| 欧美久久久久久久久中文字幕| 五月婷婷色男女| 丁香五月婷中字幕| 99在线精品观看99| 久操干| 丁香五月激情婷婷| 99这里有精品| 激情五月天的婷婷| 五月婷婷激情综合网 | 91丁香五月| 久热伊人| 婷婷精品免费久久| 久久99精品久久久久久青青AR| 久久综合干| 亚洲无码色| 欧美成人一区二区三区在线视频| 婷婷色九月| 色综合久久88色综合天天| 亚洲电影在线观看| 97色色-99久久| 激情五月天小说网| 五月天丁香婷婷久久九| 国产美女精品| 最近中文字幕在线中文视频| 色综合久久久久| 亚洲无线视频| 国内久久久精品99| 丁香月六月| 国产无遮挡又黄又爽免费网站| 国产1区2区3区在线观| 五月丁香六月婷婷激情视频在线观看免费 | 五夜婷婷| 青青草成人网| 五月天开心色情网| 色婷婷亚洲婷婷在线观看| 激情久久久| 9久国产精品| 色色色色网| 成人国产网站在线免费看| 婷婷瑟五月天久久综合| 99爱视频在线观看| 欧美婷婷丁香五月社区| 51XX午夜影福利| 色婷婷久久久| 久99久视频| 婷婷五月天久久综合88| 狠狠爱婷婷爱| 另类精品视频在线观看| 91久久| 激情综合九月| 丁香五月av| 激情婷婷五月亚洲| 99精品偷自拍| 超碰人人艹| 日韩一级片| 久久久久久久综合狠狠综合| 五月丁香综合网| 精品无码人妻一区| 激情婷婷丁香| 狠狠插日日干撸| 欧美大肥婆大肥BBBBB| 伊人久久婷婷五月天激情四射| 色婷婷综合网| 久久久婷丁香五月| 六月婷婷色色色| 9久久久久久久久久久| 色激情五月| 色色射| 情五月亚洲婷婷| 中文字幕乱码亚洲精品一区| 日本久久爱| 超碰二区| 99热18| 天天日日天天| www.色色com| 9久国产| 大香蕉五月丁香| 丁香五月av| 97好吊操| 色婷婷久久综| 少妇人妻人伦A片| 深爱1激情网| 国产操肏网站| 五月天激情四射| 99热精品一区| 狠狠CAO日日穞夜夜穞AV| 激情激情激情网| 97操| 国产视频色色色色色色色| 久久这里有精品视频| 色婷婷国产精品综合在线观看| BBWCUCKOLD精品熟妇| 丁香五月电影| 久久99热这里只有| 熟女强人妻一区二区三区四区无| 色婷婷成人| 91狠狠综合久久久| 五月婷婷久久网| 综合久久99| 亚洲A色| 婷婷五月电影院| 91高潮喷水久久久久久久久| 欧美久热| 色在线视频网2025| 天天开心AV色综合婷婷五月天| www.AV在线| 激情五月天视频| 欧美群妇大交乱婬网| 国产精品丝| 中国女人做爰A片| 六月婷婷五月丁香| 五月丁香基地| 成人操呦av| www.99热在线| 密视AV综合在线| 婷婷久久色| 天天日日夜夜| 亚洲婷婷五月天激情| 天堂AV三级| 色五月激情综合| 五月色网| 91chinese在线| 99这里只有精品| 开心五月激情五月丁香五月婷婷| 天天综合干| 99九九99九九九视频精彩| 亚洲天堂婷婷| 激情五月婷婷啪啪| 怎么样可以看免费的一级av| 97啪啪| 操骚货在线| 91九色精品| 五月开行婷婷色五月| 亚洲激情丁香五月天色| 91操色| 淫视馆aV二区一区| 色碰碰| 久久精品99国产精品日本| 色色热| 九九AV| 狠狠色五月天| 色播五月综合网| 亚洲色情在线| 天天天摸夜夜夜玩| 激情五月天伊人影院| 亚州日本欧州韩美高青高潮一| 伊人99热| 综合逼五月激情婷婷| 婷婷五月四狠狠| 超碰人人91| 婷婷丁香在线| 九九久久精品| 久久香蕉网| 日本在线免费中文com.| xx综合网| 狠狠操狠狠狠| 四月婷婷五月丁香| 婷婷在线激情| 久9精品视频| 九九综合| 伊人婷婷五月天| 九九黄色网| www.99热| 五月丁香婷婷五月色| 操操操97| 97热九九| www.激情| 色欲Av五月天| 久久人妻视步| 人人爱摸视频| 亚洲天堂啪啪| 婷婷五月天成人网| 少妇伦子伦精品无吗| 超碰只有精品在线| 综合日本婷婷| 色婷婷五月开心六月综合| 婷婷欧美色| 婷婷五月天av网| 国内精品玖玖| 亚洲婷婷激情综合激情999精品| 97在线/亚洲| AA片在线观看视频在线播放| 色9999综合久久| 五月停性愛| 色噜噜五月天| 狠狠狠婷婷五月综合| 永久的网站AAAA| 婷婷天天插天天爱| 婷婷五月情天| 日本久久性| 超碰成人免费| 久久久亚洲成人无码A片| 欧美激情综合| 亚洲99手机免费看视频 | 夜夜躁爽日| 天堂久久婷婷| 婷婷五月丁香亚洲| 91婷婷搞| 99热这里只有精品50| 成人网站在线观看视频| 成人αV视频免费观看| 婷婷之玖玖| 婷婷久久免费看| 久色资源| 婷婷综合五月天| 91九九热| 99re免费精品视频| 六月丁香五月亭亭| 久久五月丁香| av五月丁香| 91美女啪啪| 亚洲AV网站在线观看| 亚洲综合丁香婷婷六月天| 五月丁香婷婷中文| 色青青电影色五月| 在线看片av| 九九色视频| 91综合在线| 夜色.cnm| WWW.夜夜| 激情五月天丁香| 综合久久十三| 亚洲精99| 五月丁香影视| 亚洲欧美综合7777色亭亭| 色婷婷五月天激情| 91久久九久久九久久九久久九久久| av高清无码| 综合久久综合久久| 婷婷五月天狠狠色| 9久久久| 五月综合激情图片| AV在线大香蕉| 日韩在线观看亚洲| 深夜A片| 综合色99| 98毛片| 综合久久婷婷| 亚洲色综合| 伊人久久激情图区五月| 97人人看| 激情综合五月天| 婷婷五月天色播| 色五月丁香A欧美com| 天天透天天摸天天舔| 五月婷丁香| WWW.99热| 大香蕉人妻| 久久综合九九| 99精品久久| 大香蕉五月天婷婷| 97精品欧美91久久久久久久| 超碰九色| 爆乳熟妇一区二区三区爆乳照片| 另类国产区| 激情五月丁香婷婷| 六月丁香啪| 欧美激情综合色综合啪啪五月| 91日本在线免费| 丁香五月婷婷亚洲另类| 中文字幕在线视频播放| www.色五月天.com| 久久婷婷午夜| 中文av网| 亚洲天堂制| 伊人成人宗合网| 99热 日韩| 五月婷在线色视频| 国产性爱色| 亚洲天天| 吾爱AV导航| 香蕉久久国产AV一区二区| 欧美在线看| 三男玩一女三A片| 五月丁香婷色| 99久久综合狠狠综合久久| 九九热视| 久久9热| 色人久久| 99热精品一| 欧美五月婷婷综合| WWW99热| 婷婷精品| 欧美人与性动交CCOO| 国产另类综合| 91丨九色丨老农村| 婷婷综合五月| 99惹精品视频| 综合超碰熟| 狠狠草综合网| 婷婷金品综合视频| 香蕉婷婷| 久久婷五月天| 人人色婷婷五月天| 欧美大肥婆大肥BBBBB| 美腿丝袜AV天堂网| pacopacomama 070722_670 素人奥様初撮りドキュメント 103 大久保純子 | 激情婷婷五月天丁香| 久久婷婷老| 久/久精品99看9| 婷婷免费无视频| 久久久香港| 五月丁香六月婷婷久久| 日韩大片艹艹| 熟女网站久久| 丁香五月天激情网址| 色婷婷电影| 天天干夜夜想| 都市激情久久| 激情综合五月激情XXXX| 超极99精品| 91久操| 五月天伊人网| 日本欧美国产| 六月丁香花婷婷| 日韩欧美性爱| 天天干电影| 天天操天天操天天操天天操天天操| 色色色色色日韩午夜激情 | 99re在线视频| 日本精品久久久久中文字幕| 丁香五月天亚洲视频| 色婷丁香五月| 九色PORNY自拍成人精彩视频| 日日做A爰片久久毛片A片英语 | 九九99男女视频在线观看| 色欧洲| 欧美成人性爱网| 婷婷五月色花丁香社区| 国产ava| 99热人人艹| 亚洲天堂色色| 久久婷婷啪啪视频| 99热777| 五月丁香六月色婷婷综合五月天| 在线99精品| 婷婷五月天影院| 六月色婷婷| 99在线观看视频蜜臀| 婷婷性爱视频在线| 亚洲网站观看视频| 五月丁香六月激情欧美综合| 日本久久人| 丁香综合网| 精品99久久久久成人网站免费| 丁香激情网| 久久婷婷六月综合综合| 51精品国自产在线| 国产成人精品亚洲线观看| 天天做天天爱天天高潮| 狠狠色精品综合| 玖玖伦理电影| 激情久久四色| 婷婷导航| 99热在线观看精品| 超碰a女人的天堂| 五月婷婷精品视频| 第四色在线观看| 被强行糟蹋的女人A片| 亚洲成人免费电影| 9l视频自拍九色9l视频在线观看| 看全色黄大色大片| 久久 天天| 婷婷综合五月天亚洲综合| 人妻久久久久久久久久| 婷婷射图五月天| 五月丁香啪啪拍| caopeng97日韩| 一夜福利不卡| 色婷婷基地在线| 99热新网址| 天天干-天天日| 熟女五月天久久综合| 偷偷操99| 超碰人人在线| 婷婷偷拍网| 人操91在线| 色五月大| 亚洲成人av在线播放| 九九久久高清| 久久xxxx| WWW,色五月| 97艹| www.色99| www。狠狠干。com| 偷偷狠狠久久婷婷五月天| 日韩人妻无码专区| 五月天激情综合在线| 色播播婷婷| 色射影院| 丁香五月天天哦| 天天天天天天天操| 五月成人天| 激情性爱五月| 97人人操人人干| 成熟妇人A片免费看网站| 影音先锋美国A| 9久久精品视频| 成人Av在线大片| 色九月婷婷| 久久人人人人妻| www.五月天社区| 天天澡天天狠天天天做| 思思热视频在线观看| www久久久| www九九免费视频| 九九综合色综合| 狠狠干综合| 99久久综合网| 五月激情综合网| 中文激情网| 五月久久丁香| 九月婷婷色色| 天天日夜夜高潮| 婷婷在线操| 六月婷婷久久大全| 日韩性视频| 激情六月天| 综合激情在线视频| www.婷婷五月天啪啪| 米奇影视资源婷婷狠狠色激情欧美五月丁香 | 久久xx| 色色热日| 无码髙清| 99热福利| 思思久久青草热| 免费精品99| 97超级碰人人| 色婷婷天堂| 这里只有精品久| 亚洲操精品| 99网| 色色色婷婷五月天| 99色热综合| www。五月天。com| a在线观看| 五月伊人91| 五月婷婷九九热| 欧洲激情网站| 狠狠草在线观看| 午夜天天精品视频| 中文字幕人妻在线| 日日懆天天懆| 激情五月天网| 五月婷婷综合影院| 亚洲天堂AV免费片| 成人AV在线电影| 国产一级黄色影片,| 五月天婷婷色情| 婷婷五月天视频小说| 欧美三级欧美一级| 亚州婷婷五月激情综合| 婷婷久久欧美| 五月婷婷激情性爱| 99精品网址| 热久久成人| 丁香六月成人网| 国产69久久久欧美黑人A片 | 欧美久久婷婷| 婷婷 丁香 久久| 色插综合网| 狠狠丁香| 婷婷午夜综合| 色欲久久久久| 一点色成人网| 777久久综合视频 | 狠狠色综合网| 五月丁香六月综合基地| 色播五月婷婷综合| 五月婷婷啪啪| 久久大香免费| 婷婷五月激情基地| 中文字幕在线资源| 99精品国产在热久久婷婷| 日韩美女羞羞网站在线观看| 婷婷五月丁香伊人网| 无码99| 成人日韩欧美| www.91九色| av网址在线| 日韩高清成人| 综合伊人久久| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 骚货艹网站视频| 成人做爰高潮A片免费视频| 天天综合激情| 五月丁香婷婷色| 色呦呦美女| 91碰超| 色五月色图| 深爱激情五月天婷婷网| 色插人人| www.开心激情| 日韩一级网站| 五月天亚洲综合网| 久久码久久无清| 国产免费一区二区三区三州老师F1F1.CC| 婷婷色网址| 999热这里只有精品| 日本在线wwww| 激情色色色| AV在线大香蕉| 婷婷五月激情五月激情| 狠狠操天天操| 国产激情综合五月久久| 日本人妻丁香婷婷久久寝取熟女五月| 无码少妇高潮喷水A片免费 | 色色色综合网| 天天操天天日天天爽| 91干婷婷| 五月婷婷激情久久| 97婷婷丁香五月综合| 色五月六月| 99热大香蕉| 99热这里只有精品5| 大香蕉五月| 丁香五月色| 久久五月丁香伊人青草| 热99玖玖99玖玖99九九| 99亚洲色| 国产精品国产| 婷婷六月天| 思思re视频在线| 丁香五月最新网址| 影音先锋一区| 五月色导航| 99视频日韩| 久久婷婷视频| bbwcuckold精品熟妇| 亚洲亚洲人成综合网络| 激情综合五月婷婷| 激情五月天色网站| 五月丁香天堂网| 久久这里99| 综合网网欲色| 人妻久久久久久| 天天日天天做天天操| 五月久久婷婷丁香| 婷婷色网| 亚洲五月色| 99在线精品视频免费| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 五月婷无码| 亚洲天堂九九九| 99re思思热久久| 操久久网| 五月天婷婷青青| 天堂资源欧日浪女在线播放| 国产精品久久久久久久久久久久| 色五月五月天色婷婷色五月| 26uuu色噜噜精品一区| 九九99热精品| 久久婷五月天| 夜夜夜夜夜操| 婷婷六月天精品| 超碰在线超碰| 五月丁香另类网| 狠狠色婷婷7777久| 欧美日韩成人| 欧洲精品爱爱| 亚洲精品字幕在线观看| 91婷色| 五月婷综合性中心| 久久这里只有国产| 性爱激情久久| 婷婷97碰碰| 色婷五月| 五月天亚洲图片婷婷| 亚洲一区二区无遮挡A片| 激情五月天色播| 9 1超碰九色| 久久人妻伦理| 婷婷五月色亚洲| 激情小说五月丁香在线视频观看视频| 好看的国产精品| Www.se.久久| 超碰资源在线| 久久激情五月| 亚洲日韩26uuu| 激情婷婷五月天伊人在线观看 | 高清无码入口| 精品成人a v无码内射| 日韩成人网址| 色六月婷婷| 久久久久久久五月| 人人操91色| 国产偷人爽久久久久久老妇APP | 欧美va在线| 深爱五月网| 五月婷丁香在线视频在线| 婷婷五月天激情网址| 亚洲欧洲国产精品| 亚洲精品444久久久久久| 五月色激情综合网| 欧美日本日韩| 久久综合99综合| 婷婷五月六月丁香| 久久怕怕视频| 欧美啪啪9| 99久久久久| 婷婷六月色开| 婷婷五月天无码| 99re思思热这里| 婷婷五月综合在线视频| 久月丁香爱婷婷综合| 色婷狠狠| 丁香五月777| A片试看120分钟做受视频红杏 | 91丨九色丨老熟女激情| 综合久久综合五月天婷婷| 五月丁香狠狠爱| 影音先锋男人女人| 中国女人内射6XXXXX| 五月色网| 久综合网| 97人人干人人操| 亚洲熟妇AV乱码在线观看| 五月婷婷丁香| 少妇出轨做爰高潮A片| 亚洲亚洲人成综合网络| 97caop| 五月婷婷丁香| 雪千夏麻豆| 欧在线一区| 色私五月婷婷| 99热免费精品| 色婷婷综合久色AV五色最新| 狠色综合网| 亭亭五月天黑人2014| 九色色| 99九无网码| 色噜噜婷婷| 天天日天天肏天天奸| 激情五月丁香五月综合| 午夜成人在线免费视频| 久久伦乱| 国产精品噜噜在线视频| 天天日人人| 人人草人人爱| 久久性视频| 影音先锋91在线资源站| 激情综合视频| 色色色色欧洲| 天天狠狠六月婷丁香影院| 99ri在线| 亚洲精品成人| 国产精产国品一二三在观看| 熟妇内谢69XXXXXA片| 无码人妻一区二区一牛影视| 五月婷婷黄| 午夜色色色极品视频| 婷婷色五月开心五月| BT综合在线视频观看| 九九视频精品在线免费| 婷婷播5月| 人人摸人人干| 日韩不卡123| 婷婷丁香五月天综合AV| 小视频在线亚洲| 久久久人妻门| 色女人久久| 男人先锋久久| 婷婷无五月无码视频| 一级性感黄色内射视频| 九九成人高清视频| 久久 天天| 六月婷婷开心| 黄桃AV无码免费一区二区三区| 丁香五月婷婷综合91| 一起肏在线视频| 思思热天天看| 99热在线观看这里只有精品| AV在线观看网站| 99热久久这里只有精品| 成人婷婷五月天| 激情五月,色播五月| 成人短视频在线观看| 亚洲av日韩无码| 久久99国产综合精品免费| 激情国产五月| 无码区婷婷五月花开| 丁香六月婷婷综合啪啪| 婷婷色五月天在线观看| BlACKEDRAW视频一区二区| 激情婷婷在线中文字幕| 婷婷五月另类网站| 色色热| 久久婷婷综合国产| yellow视频在线观看91| 99这里只有精品|v| 五月天综合激情网| 五月成人丁香av91| sisi热国产| 丁香婷婷五月色成人网站| 亚洲午夜在线视频| 婷婷五月天Av| 欧美黄色韩日网| 成AV人片一区二区三区久久| 五月丁香激情四射| 五月婷婷狠狠干| 玩熟女五十AV一二三区| 色狠狠999综合| 五月天久久91| 极品人妻VIDEOSSS人妻 | 99操逼| 丁香五月亚洲激情婷婷射| 天天做天天爱天天做| 欧美性丁香色色五月天干干| 色播五月丁香综合| 九九热只有精品| 99情色五月天| 99热国内| 色婷婷五月天在线观看| 97久久五月丁香婷婷| 欧美五月婷婷| 九九精品9| 天天操,天天插| 九九热精品| 大香蕉AV在线| 婷婷性福五月天| 91丨九色丨国产| 欧洲亚洲激情五月天在线| 高清无码入口| 国产日韩av片| 久久九九99字幕| 国产真实乱了老女人视频|