国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

本體工程實(shí)戰(zhàn):從Protégé建模到Neo4j知識(shí)圖譜落地

本體工程實(shí)戰(zhàn):從Protégé建模到Neo4j知識(shí)圖譜落地 1. 為什么我勸你先搞懂本體工程再動(dòng)手建圖知識(shí)圖譜這個(gè)詞這幾年被說得太多了多到很多人一上來就問“用Neo4j怎么建圖”卻很少有人先問自己一句我到底要建一個(gè)什么樣的圖我見過太多團(tuán)隊(duì)數(shù)據(jù)灌進(jìn)去了節(jié)點(diǎn)和關(guān)系也連上了結(jié)果查詢的時(shí)候發(fā)現(xiàn)關(guān)系類型混亂、實(shí)體粒度不統(tǒng)一、同一個(gè)人在三張表里有三種寫法最后整個(gè)圖譜變成一團(tuán)理不清的毛線球。問題的根子不在圖數(shù)據(jù)庫而在建模之前的那一步——本體工程。打個(gè)比方建知識(shí)圖譜就像蓋一棟樓。圖數(shù)據(jù)庫是施工隊(duì)和建材RDF/屬性圖是磚塊的形狀而本體是建筑圖紙。你可以沒有圖紙就讓施工隊(duì)直接砌墻砌出來的東西也能住人但一旦想加個(gè)房間、改個(gè)承重結(jié)構(gòu)整棟樓就得推倒重來。本體工程干的就是畫圖紙這件事定義這個(gè)領(lǐng)域里有哪些概念類、這些概念有什么屬性數(shù)據(jù)屬性、概念之間能建立什么關(guān)系對(duì)象屬性、以及有哪些不能違反的規(guī)則公理和約束。這篇內(nèi)容適合三類人看。第一類是完全沒接觸過知識(shí)圖譜、想從零搭一個(gè)的開發(fā)者我會(huì)把每一步的操作和背后的理由都講清楚。第二類是已經(jīng)用過Neo4j或者圖數(shù)據(jù)庫、但建??偸欠倒さ墓こ處熌隳茉谶@里找到返工的根因。第三類是做數(shù)據(jù)治理、想往語義方向轉(zhuǎn)型的朋友本體工程是你繞不開的基本功。核心工具我會(huì)圍繞Protégé展開格式以RDF/OWL為主最后落到Neo4j的落地映射。整套流程我自己走過不止一遍踩過的坑會(huì)在對(duì)應(yīng)位置標(biāo)出來。2. 本體工程到底在解決什么問題2.1 從“數(shù)據(jù)表”思維切換到“概念”思維大部分人第一次做知識(shí)圖譜腦子里裝的還是關(guān)系型數(shù)據(jù)庫那套東西。表、字段、外鍵一對(duì)一、一對(duì)多。這套思維在結(jié)構(gòu)化數(shù)據(jù)里沒問題但一放到知識(shí)圖譜里就會(huì)出問題。原因很簡(jiǎn)單關(guān)系型數(shù)據(jù)庫的schema是給存儲(chǔ)和查詢優(yōu)化的而本體的schema是給語義和推理優(yōu)化的兩者的目標(biāo)根本不一樣。舉個(gè)具體的例子。假設(shè)你要建一個(gè)“企業(yè)知識(shí)圖譜”里面有公司、人、產(chǎn)品三個(gè)核心概念。在關(guān)系型數(shù)據(jù)庫里你可能會(huì)建三張表然后用外鍵關(guān)聯(lián)。但在本體里你要先問公司和組織是什么關(guān)系公司是不是組織的一個(gè)子類人是不是可以同時(shí)是員工和股東產(chǎn)品有沒有可能屬于多個(gè)公司這些問題的答案決定了你的類層次結(jié)構(gòu)怎么設(shè)計(jì)。我自己的經(jīng)驗(yàn)是做本體設(shè)計(jì)時(shí)先別打開Protégé拿一張白紙把領(lǐng)域里所有的名詞先列出來。名詞就是候選的類動(dòng)詞就是候選的對(duì)象屬性形容詞和數(shù)量就是候選的數(shù)據(jù)屬性。這個(gè)“名詞動(dòng)詞法”聽起來土但極其有效。列完之后你會(huì)發(fā)現(xiàn)有些名詞其實(shí)是同一個(gè)概念的不同叫法有些動(dòng)詞其實(shí)指向的是同一個(gè)關(guān)系這時(shí)候再去做歸并和抽象比直接上手建模要靠譜得多。2.2 本體、RDF、OWL三者的關(guān)系別搞混這三個(gè)詞經(jīng)常被混著用但它們的層次是不一樣的。RDF是一個(gè)數(shù)據(jù)模型它規(guī)定了“三元組”這種表達(dá)形式主語-謂語-賓語就這么簡(jiǎn)單。你可以把RDF理解成“句子的語法”它只告訴你句子怎么造不告訴你句子對(duì)不對(duì)。OWL是建立在RDF之上的本體描述語言它提供了更豐富的詞匯來表達(dá)類、屬性、個(gè)體以及它們之間的邏輯關(guān)系。OWL讓你能說“A是B的子類”“X和Y是不相交的”“這個(gè)屬性的定義域是C”這些聲明就是本體的核心內(nèi)容。OWL有不同表達(dá)力的子語言從OWL Lite到OWL DL再到OWL Full表達(dá)力越強(qiáng)推理的復(fù)雜度越高。實(shí)際項(xiàng)目里我一般用OWL DL它在表達(dá)力和可計(jì)算性之間取得了比較好的平衡。本體則是你用OWL或者RDFS寫出來的那套概念體系的統(tǒng)稱。本體是內(nèi)容OWL是寫內(nèi)容的語言RDF是底層的存儲(chǔ)格式。三者是“內(nèi)容-語言-格式”的關(guān)系不是并列關(guān)系。搞清楚這一點(diǎn)你在看Protégé里的各種設(shè)置時(shí)就不會(huì)暈。2.3 本體工程能幫你避開的三個(gè)大坑第一個(gè)坑是實(shí)體粒度不統(tǒng)一。沒有本體約束的情況下有人把“北京市”當(dāng)成一個(gè)實(shí)體有人把“北京市朝陽區(qū)”也當(dāng)成一個(gè)實(shí)體還有人把“北京”和“北京市”當(dāng)成兩個(gè)不同的實(shí)體。本體通過定義類的實(shí)例化規(guī)則和等價(jià)關(guān)系能在建模階段就把粒度問題解決掉。第二個(gè)坑是關(guān)系類型泛濫。我見過一個(gè)圖譜里有“屬于”“隸屬于”“歸屬”“從屬”四個(gè)關(guān)系實(shí)際上表達(dá)的是同一個(gè)意思。本體工程要求你在設(shè)計(jì)階段就明確對(duì)象屬性的集合并且通過屬性層次結(jié)構(gòu)來管理同義關(guān)系避免后期數(shù)據(jù)灌入時(shí)出現(xiàn)關(guān)系爆炸。第三個(gè)坑是推理能力缺失。沒有本體的圖譜就是一個(gè)靜態(tài)的圖你存了什么它就只能查什么。有了本體你可以定義傳遞屬性、對(duì)稱屬性、函數(shù)屬性讓圖譜具備推理能力。比如你定義了“位于”是傳遞屬性那么“A位于BB位于C”就能自動(dòng)推出“A位于C”不需要你手動(dòng)加邊。這個(gè)能力在實(shí)體鏈接和關(guān)系補(bǔ)全場(chǎng)景里非常關(guān)鍵。3. 用Protégé從零搭建本體的完整實(shí)操3.1 環(huán)境準(zhǔn)備與Protégé基礎(chǔ)配置Protégé是斯坦福大學(xué)開發(fā)的本體編輯器開源免費(fèi)目前主流版本是5.6.x。下載地址在官網(wǎng)就能找到Windows、Mac、Linux都有對(duì)應(yīng)的安裝包。安裝過程沒什么好說的一路下一步就行。但有幾個(gè)配置項(xiàng)我建議你在開始建模前就調(diào)好能省掉后面很多麻煩。第一個(gè)是渲染器設(shè)置。Protégé默認(rèn)的渲染器在某些系統(tǒng)上會(huì)顯示異常尤其是中文環(huán)境下。你可以在Preferences里找到Renderer把實(shí)體渲染器改成“Render entities as qname”或者“Render entities as label”。我一般用label渲染因?yàn)榻r(shí)看中文標(biāo)簽比看英文ID直觀得多。第二個(gè)是推理機(jī)配置。Protégé本身不帶推理機(jī)你需要裝一個(gè)插件。最常用的是HermiT和PelletHermiT對(duì)OWL DL的支持比較完整推理速度也還行。在Preferences的Reasoner選項(xiàng)卡里可以設(shè)置默認(rèn)推理機(jī)。裝好之后記得在Reasoner菜單里點(diǎn)一下“Start reasoner”這樣你在建模過程中就能實(shí)時(shí)看到推理結(jié)果比如某個(gè)類被推斷為不可滿足unsatisfiable時(shí)會(huì)標(biāo)紅。第三個(gè)是文件格式。Protégé默認(rèn)保存為OWL/XML格式這個(gè)格式機(jī)器友好但人不好讀。如果你需要版本管理或者人工review建議同時(shí)導(dǎo)出一份Turtle格式.ttl可讀性好很多。我自己的習(xí)慣是主文件用OWL/XML每次提交前導(dǎo)出一份Turtle做diff。注意Protégé的自動(dòng)保存功能默認(rèn)是關(guān)閉的建模過程中一定要養(yǎng)成CtrlS的習(xí)慣。我丟過一次做了三個(gè)小時(shí)的本體從那以后就設(shè)了每5分鐘自動(dòng)保存。3.2 定義類層次結(jié)構(gòu)從頂層本體到領(lǐng)域本體類層次結(jié)構(gòu)是本體的骨架。我的做法是先搭一個(gè)輕量的頂層框架再往里填領(lǐng)域內(nèi)容。頂層框架不需要太復(fù)雜通常包含“實(shí)體”“事件”“屬性”“關(guān)系”這幾個(gè)大類就夠了。有些項(xiàng)目會(huì)直接復(fù)用BFO或者DOLCE這些成熟的頂層本體但對(duì)于大多數(shù)業(yè)務(wù)場(chǎng)景來說自己搭一個(gè)簡(jiǎn)單的頂層反而更靈活。具體操作上在Protégé的Classes標(biāo)簽頁里你可以通過“Add subclass”來創(chuàng)建子類。我建議一開始就把命名規(guī)范定好比如類名用大駝峰Company、Person、Product屬性名用小駝峰hasName、belongsTo實(shí)例名用全小寫加下劃線。這個(gè)規(guī)范看起來是小事但等到圖譜有幾千個(gè)節(jié)點(diǎn)的時(shí)候命名混亂會(huì)讓你痛不欲生。類層次結(jié)構(gòu)的深度也要控制。我見過有人把類層次做到七八層結(jié)果自己都記不住哪個(gè)類在哪個(gè)位置。一般來說三到五層就夠了。第一層是頂層概念第二層是領(lǐng)域大類第三層是具體子類再往下就是實(shí)例了。如果發(fā)現(xiàn)需要更深的層次往往說明你的抽象方式有問題可能需要引入新的維度而不是繼續(xù)往下分。還有一個(gè)實(shí)操技巧在Protégé里可以用“Create class hierarchy from indentation”功能批量導(dǎo)入類結(jié)構(gòu)。你可以先在文本編輯器里用縮進(jìn)寫好類層次然后粘貼進(jìn)去Protégé會(huì)自動(dòng)解析成樹形結(jié)構(gòu)。這個(gè)功能在類數(shù)量多的時(shí)候特別好用比一個(gè)個(gè)點(diǎn)快得多。3.3 對(duì)象屬性與數(shù)據(jù)屬性的設(shè)計(jì)要點(diǎn)屬性設(shè)計(jì)是本體工程里最容易出問題的地方。對(duì)象屬性描述的是類與類之間的關(guān)系數(shù)據(jù)屬性描述的是類與字面量字符串、數(shù)字、日期之間的關(guān)系。兩者的設(shè)計(jì)思路完全不同。對(duì)象屬性設(shè)計(jì)時(shí)首先要確定定義域domain和值域range。定義域是“這個(gè)屬性從哪個(gè)類出發(fā)”值域是“這個(gè)屬性指向哪個(gè)類”。比如“belongsTo”這個(gè)屬性定義域是Product值域是Company意思就是“產(chǎn)品屬于公司”。定義域和值域設(shè)好之后推理機(jī)就能幫你檢查數(shù)據(jù)的一致性如果某個(gè)產(chǎn)品指向了一個(gè)不是公司的實(shí)體推理機(jī)就會(huì)報(bào)錯(cuò)。對(duì)象屬性還有幾個(gè)重要的特性需要根據(jù)業(yè)務(wù)語義來設(shè)置。函數(shù)屬性Functional表示“每個(gè)主體最多只有一個(gè)值”比如“hasCEO”就是函數(shù)屬性一個(gè)公司只能有一個(gè)CEO。逆函數(shù)屬性InverseFunctional表示“每個(gè)值最多被一個(gè)主體指向”比如“hasID”就是逆函數(shù)屬性一個(gè)身份證號(hào)只能對(duì)應(yīng)一個(gè)人。傳遞屬性Transitive表示“關(guān)系可以傳遞”比如“l(fā)ocatedIn”。對(duì)稱屬性Symmetric表示“關(guān)系雙向成立”比如“marriedTo”。這些特性設(shè)對(duì)了推理機(jī)就能幫你自動(dòng)補(bǔ)全很多隱含關(guān)系。數(shù)據(jù)屬性的設(shè)計(jì)相對(duì)簡(jiǎn)單但有一個(gè)坑要注意數(shù)據(jù)類型的選擇。Protégé支持string、integer、float、boolean、dateTime等多種數(shù)據(jù)類型。我建議在建模階段就把數(shù)據(jù)類型定死不要都用string。原因很簡(jiǎn)單如果你把年齡存成string后面想做數(shù)值比較查詢就麻煩了。另外對(duì)于有固定取值范圍的屬性可以用枚舉enumeration來約束比如“status”只能是“active”“inactive”“pending”三個(gè)值之一。提示屬性命名時(shí)加前綴能大幅提升可讀性。對(duì)象屬性用“has”“is”“belongsTo”這類動(dòng)詞開頭數(shù)據(jù)屬性用“has”“is”開頭一眼就能區(qū)分。3.4 個(gè)體、公理與約束的添加方法個(gè)體Individual是類的實(shí)例是本體里最底層的元素。在Protégé的Individuals標(biāo)簽頁里可以創(chuàng)建個(gè)體并指定它屬于哪個(gè)類。個(gè)體創(chuàng)建時(shí)要注意兩點(diǎn)一是命名要唯一且有意義不要用“個(gè)體1”“個(gè)體2”這種二是要盡量填寫數(shù)據(jù)屬性值這些值在后續(xù)映射到圖數(shù)據(jù)庫時(shí)會(huì)直接變成節(jié)點(diǎn)屬性。公理Axiom是本體的靈魂它定義了概念之間必須滿足的邏輯約束。最常見的公理包括子類關(guān)系SubClassOf、等價(jià)關(guān)系EquivalentTo、不相交關(guān)系DisjointWith、屬性約束someValuesFrom、allValuesFrom、minCardinality、maxCardinality。這些公理寫好了推理機(jī)就能幫你做一致性檢查、分類推斷和實(shí)例推斷。我舉一個(gè)實(shí)際場(chǎng)景來說明公理的價(jià)值。假設(shè)你定義了“Employee”和“Company”兩個(gè)類并且定義了“worksFor”這個(gè)對(duì)象屬性。如果你給“worksFor”加上“someValuesFrom Company”的約束那么任何聲明了worksFor關(guān)系的個(gè)體推理機(jī)都會(huì)自動(dòng)把它推斷為Employee類的實(shí)例。這就是推理帶來的自動(dòng)化能力你不需要手動(dòng)給每個(gè)員工打標(biāo)簽。約束的添加要循序漸進(jìn)。一開始不要寫太多復(fù)雜的公理先把基本的類層次和屬性關(guān)系建好跑一遍推理機(jī)看看有沒有報(bào)錯(cuò)。確認(rèn)基礎(chǔ)沒問題之后再逐步添加更精細(xì)的約束。我見過有人一上來就寫了幾十條公理結(jié)果推理機(jī)跑不動(dòng)或者報(bào)了一堆自己看不懂的錯(cuò)最后只能全部刪掉重來。4. 從本體到Neo4j知識(shí)圖譜的落地映射4.1 本體模型到屬性圖模型的轉(zhuǎn)換規(guī)則本體建好了接下來要把它落到圖數(shù)據(jù)庫里。這里有一個(gè)關(guān)鍵認(rèn)知OWL本體和屬性圖Property Graph不是一一對(duì)應(yīng)的中間需要一個(gè)轉(zhuǎn)換層。OWL的類對(duì)應(yīng)屬性圖的節(jié)點(diǎn)標(biāo)簽LabelOWL的個(gè)體對(duì)應(yīng)屬性圖的節(jié)點(diǎn)NodeOWL的數(shù)據(jù)屬性對(duì)應(yīng)節(jié)點(diǎn)的屬性PropertyOWL的對(duì)象屬性對(duì)應(yīng)屬性圖的邊Relationship。但這個(gè)對(duì)應(yīng)關(guān)系有幾個(gè)細(xì)節(jié)需要處理。第一OWL支持多繼承一個(gè)個(gè)體可以同時(shí)屬于多個(gè)類而屬性圖的節(jié)點(diǎn)可以有多個(gè)標(biāo)簽這一點(diǎn)是對(duì)得上的。第二OWL的對(duì)象屬性可以有屬性比如“worksFor”這個(gè)關(guān)系本身有“startDate”屬性但屬性圖的邊雖然理論上可以帶屬性實(shí)際使用中很多圖數(shù)據(jù)庫對(duì)邊屬性的支持有限這時(shí)候就需要把邊升級(jí)為節(jié)點(diǎn)即“關(guān)系實(shí)體化”。第三OWL的推理能力在屬性圖里是沒有的你需要在數(shù)據(jù)導(dǎo)入階段就把推理結(jié)果算好或者在圖數(shù)據(jù)庫層面用查詢來實(shí)現(xiàn)部分推理。我一般的做法是先用Protégé把本體建好然后用SPARQL查詢把推理后的三元組導(dǎo)出來再寫一個(gè)轉(zhuǎn)換腳本把三元組轉(zhuǎn)成Neo4j的Cypher導(dǎo)入語句。這個(gè)流程雖然多了一步但能保證本體里的推理結(jié)果被完整地帶到圖數(shù)據(jù)庫里。4.2 用Python腳本實(shí)現(xiàn)本體到Cypher的自動(dòng)轉(zhuǎn)換手動(dòng)把本體里的每個(gè)類、每個(gè)屬性、每個(gè)個(gè)體都寫成Cypher語句是不現(xiàn)實(shí)的必須自動(dòng)化。我用的是Python的rdflib庫來解析OWL文件然后生成Cypher語句。核心邏輯分三步解析類生成節(jié)點(diǎn)標(biāo)簽約束解析對(duì)象屬性生成關(guān)系類型解析個(gè)體生成節(jié)點(diǎn)和邊。from rdflib import Graph, Namespace, RDF, RDFS, OWL g Graph() g.parse(my_ontology.owl, formatxml) # 提取所有類 classes [] for s in g.subjects(RDF.type, OWL.Class): label g.value(s, RDFS.label) classes.append((s, label)) # 提取所有對(duì)象屬性 obj_props [] for s in g.subjects(RDF.type, OWL.ObjectProperty): domain g.value(s, RDFS.domain) range_ g.value(s, RDFS.range) obj_props.append((s, domain, range_)) # 生成Cypher cypher_lines [] for cls, label in classes: cypher_lines.append(fCREATE CONSTRAINT IF NOT EXISTS FOR (n:{label}) REQUIRE n.uri IS UNIQUE;) for prop, domain, range_ in obj_props: cypher_lines.append(f// Relationship: {prop} from {domain} to {range_})這段代碼只是骨架實(shí)際使用時(shí)要處理命名空間、多語言標(biāo)簽、屬性特性函數(shù)屬性、傳遞屬性等細(xì)節(jié)。但核心思路就是這樣把本體的結(jié)構(gòu)信息提取出來映射成圖數(shù)據(jù)庫的schema。注意Neo4j的標(biāo)簽和關(guān)系類型不支持中文和特殊字符所以在本體建模時(shí)最好給每個(gè)類和一個(gè)英文ID中文放在label屬性里。這樣轉(zhuǎn)換時(shí)用英文ID做標(biāo)簽中文做顯示名兩邊都不耽誤。4.3 數(shù)據(jù)導(dǎo)入后的圖譜質(zhì)量校驗(yàn)數(shù)據(jù)灌進(jìn)去不代表就完事了必須做質(zhì)量校驗(yàn)。我一般從四個(gè)維度來查完整性、一致性、唯一性、連通性。完整性查的是有沒有該有的邊沒連上。比如每個(gè)Product節(jié)點(diǎn)都應(yīng)該有一條belongsTo邊指向Company如果存在沒有這條邊的Product就說明數(shù)據(jù)有問題。這個(gè)可以用Cypher查詢來檢查MATCH (p:Product) WHERE NOT (p)-[:BELONGS_TO]-(:Company) RETURN p.name AS product_name一致性查的是有沒有違反本體約束的數(shù)據(jù)。比如本體里定義了“Person”和“Company”是不相交的那就不應(yīng)該存在一個(gè)節(jié)點(diǎn)同時(shí)是Person和Company。這個(gè)檢查在本體層面用推理機(jī)做在圖數(shù)據(jù)庫層面可以用Cypher做。唯一性查的是有沒有重復(fù)節(jié)點(diǎn)。同一個(gè)實(shí)體被導(dǎo)入了兩次或者同一個(gè)實(shí)體有不同的URI都會(huì)導(dǎo)致圖譜里出現(xiàn)重復(fù)。這個(gè)可以用節(jié)點(diǎn)的關(guān)鍵屬性比如名稱、ID做分組查詢來發(fā)現(xiàn)。連通性查的是圖譜有沒有孤島。如果有一部分節(jié)點(diǎn)和主圖完全不連通要么是數(shù)據(jù)缺失要么是建模時(shí)漏了關(guān)系。這個(gè)用弱連通分量算法就能查出來。5. 實(shí)操中踩過的坑與排查技巧5.1 本體建模階段的典型錯(cuò)誤第一個(gè)典型錯(cuò)誤是類層次過深。我一開始做本體的時(shí)候總覺得分類越細(xì)越好結(jié)果建了一個(gè)七層的類層次到第四層的時(shí)候自己都記不清哪個(gè)類該放哪里了。后來我總結(jié)了一個(gè)原則如果一個(gè)類下面只有一兩個(gè)子類而且這些子類沒有本質(zhì)區(qū)別那就不要往下分了用屬性來區(qū)分就行。第二個(gè)典型錯(cuò)誤是屬性定義域設(shè)得太寬。比如把“hasName”的定義域設(shè)成“Thing”意思是所有東西都可以有名字。這看起來沒問題但實(shí)際上會(huì)讓推理機(jī)無法做有效的類型檢查。正確的做法是把定義域設(shè)成具體的類比如“Person”和“Company”各自定義自己的名稱屬性或者定義一個(gè)“NamedEntity”類作為它們的父類。第三個(gè)典型錯(cuò)誤是忽略命名空間。Protégé默認(rèn)會(huì)給你一個(gè)base URI但很多人建模時(shí)不在意這個(gè)結(jié)果導(dǎo)出的OWL文件里全是自動(dòng)生成的URI可讀性極差。我建議在新建本體時(shí)就設(shè)置一個(gè)有意義的base URI比如“http://yourdomain.com/ontology/yourdomain#”這樣導(dǎo)出的文件里所有實(shí)體都有清晰的URI。5.2 推理機(jī)報(bào)錯(cuò)的常見原因與解決推理機(jī)報(bào)錯(cuò)是新手最頭疼的問題。最常見的報(bào)錯(cuò)是“Unsatisifiable class”意思是某個(gè)類是不可滿足的即不存在任何個(gè)體能同時(shí)滿足這個(gè)類的所有約束。這通常是因?yàn)榧s束之間互相矛盾比如一個(gè)類同時(shí)被約束為“必須有一個(gè)值來自A”和“必須有一個(gè)值來自B”而A和B是不相交的。排查這類問題的方法是在Protégé里點(diǎn)“Explain”按鈕它會(huì)告訴你哪些公理導(dǎo)致了矛盾。然后你逐條檢查這些公理看哪條寫錯(cuò)了或者哪兩條不應(yīng)該同時(shí)存在。另一個(gè)常見報(bào)錯(cuò)是“Inconsistent ontology”意思是整個(gè)本體不一致存在某個(gè)個(gè)體同時(shí)屬于兩個(gè)不相交的類。這個(gè)排查起來更麻煩因?yàn)閱栴}可能出在任何一個(gè)個(gè)體的聲明上。我的做法是先把推理機(jī)關(guān)掉手動(dòng)檢查所有DisjointWith聲明確認(rèn)沒有個(gè)體同時(shí)屬于兩個(gè)不相交的類。然后再開推理機(jī)看是否還有報(bào)錯(cuò)。提示推理機(jī)跑得慢的時(shí)候可以先關(guān)掉“EquivalentTo”和“DisjointWith”這些復(fù)雜公理只保留基本的類層次和屬性關(guān)系跑一遍看看基礎(chǔ)有沒有問題?;A(chǔ)沒問題再逐步加回復(fù)雜公理這樣能快速定位問題。5.3 圖譜查詢性能優(yōu)化的幾個(gè)手段圖譜建好之后查詢性能是繞不開的問題。我總結(jié)下來優(yōu)化手段主要有三個(gè)層次schema層、查詢層、存儲(chǔ)層。Schema層的優(yōu)化主要是加索引和約束。Neo4j里對(duì)經(jīng)常用來做查詢?nèi)肟诘膶傩约铀饕艽蠓嵘樵兯俣取1热缒憬?jīng)常按名稱查節(jié)點(diǎn)那就給name屬性加索引。另外給每個(gè)節(jié)點(diǎn)加一個(gè)唯一性約束比如uri屬性不僅能保證數(shù)據(jù)質(zhì)量還能加速基于該屬性的查詢。查詢層的優(yōu)化主要是避免全圖掃描。Cypher查詢里如果用了沒有索引的屬性做過濾Neo4j會(huì)做全圖掃描數(shù)據(jù)量大的時(shí)候會(huì)非常慢。寫查詢時(shí)盡量從有索引的屬性入手然后用關(guān)系擴(kuò)展來縮小范圍。另外合理使用“PROFILE”命令來分析查詢計(jì)劃看看有沒有可以優(yōu)化的地方。存儲(chǔ)層的優(yōu)化主要是調(diào)整Neo4j的內(nèi)存配置。Neo4j的性能很大程度上取決于頁面緩存page cache的大小。如果圖譜數(shù)據(jù)量大于可用內(nèi)存查詢就會(huì)頻繁讀磁盤速度會(huì)急劇下降。我一般會(huì)把頁面緩存設(shè)成可用內(nèi)存的50%到70%剩下的留給操作系統(tǒng)和查詢執(zhí)行。5.4 常見問題速查表問題現(xiàn)象可能原因排查方法解決方案推理機(jī)報(bào)Unsatisifiable class約束矛盾用Explain功能查看矛盾公理刪除或修改沖突的約束圖譜查詢返回空結(jié)果關(guān)系方向?qū)懛礄z查Cypher里的箭頭方向調(diào)整查詢中的關(guān)系方向?qū)霐?shù)據(jù)后節(jié)點(diǎn)重復(fù)URI不唯一按關(guān)鍵屬性分組統(tǒng)計(jì)合并重復(fù)節(jié)點(diǎn)或修正URI推理機(jī)跑不動(dòng)公理太復(fù)雜逐步減少公理測(cè)試簡(jiǎn)化公理或換用更輕量的推理機(jī)圖譜查詢慢缺少索引用PROFILE分析查詢計(jì)劃給過濾屬性加索引本體文件打不開格式不兼容檢查文件擴(kuò)展名和內(nèi)容轉(zhuǎn)換格式或修復(fù)文件6. 本體版本管理與團(tuán)隊(duì)協(xié)作的實(shí)操建議6.1 用Git管理OWL文件的正確姿勢(shì)OWL文件本質(zhì)上是文本文件完全可以用Git做版本管理。但直接管理OWL/XML格式的diff可讀性很差因?yàn)閄ML的標(biāo)簽嵌套很深稍微改一個(gè)地方就會(huì)產(chǎn)生大量diff。我的做法是主文件用OWL/XML但每次提交前用Protégé導(dǎo)出一份Turtle格式的文件Turtle的diff可讀性好很多review的時(shí)候看Turtle文件就行。Git的commit message也要有規(guī)范。我一般用“feat: 添加Product類”“fix: 修正belongsTo的定義域”“refactor: 重構(gòu)類層次結(jié)構(gòu)”這樣的格式和代碼提交的規(guī)范保持一致。這樣回溯歷史的時(shí)候能快速定位到某次修改。還有一個(gè)細(xì)節(jié)Protégé保存文件時(shí)會(huì)改變文件的內(nèi)部排序?qū)е录词箖?nèi)容沒變diff也會(huì)顯示大量變化。解決方法是每次保存后先跑一遍格式化工具比如rdflib的序列化把文件內(nèi)容規(guī)范化然后再提交。這樣diff就只顯示真正的語義變化了。6.2 多人協(xié)作時(shí)的命名沖突解決多人同時(shí)編輯一個(gè)本體時(shí)命名沖突是最大的問題。兩個(gè)人可能給同一個(gè)概念起了不同的名字或者給不同的概念起了相同的名字。解決這個(gè)問題的關(guān)鍵是建立命名規(guī)范并嚴(yán)格執(zhí)行。我的做法是在項(xiàng)目開始時(shí)就建一個(gè)“命名約定”文檔規(guī)定類名、屬性名、實(shí)例名的命名規(guī)則和命名空間前綴。每個(gè)人在創(chuàng)建新實(shí)體之前先搜索一下是否已經(jīng)存在類似的實(shí)體。Protégé的搜索功能可以按名稱和URI搜索用起來很方便。如果沖突已經(jīng)發(fā)生了解決方法是先找出所有沖突的實(shí)體然后確定哪個(gè)是“正確”的把另一個(gè)的引用全部改成正確的最后刪除錯(cuò)誤的實(shí)體。在Protégé里可以用“Refactor”菜單下的“Rename entity”功能來批量修改引用比手動(dòng)改要安全得多。6.3 本體文檔化與知識(shí)傳承本體建完之后如果不寫文檔過三個(gè)月自己都看不懂。文檔不需要很復(fù)雜但必須包含幾個(gè)核心內(nèi)容類的定義和用途、屬性的語義和約束、典型的使用示例、版本變更記錄。我一般會(huì)在本體文件里用rdfs:comment給每個(gè)類和屬性加注釋這些注釋在Protégé里可以直接看到也能導(dǎo)出成文檔。另外我會(huì)單獨(dú)維護(hù)一個(gè)Markdown格式的“本體設(shè)計(jì)說明”記錄設(shè)計(jì)決策的背景和理由。比如“為什么把Company和Organization分開”“為什么belongsTo是函數(shù)屬性”這些決策背后的思考比本體本身更有價(jià)值。知識(shí)傳承方面我建議每個(gè)季度做一次本體review檢查是否有過時(shí)的類或?qū)傩孕枰獜U棄是否有新的業(yè)務(wù)需求需要擴(kuò)展。Review的時(shí)候拉上業(yè)務(wù)方一起確保本體和實(shí)際業(yè)務(wù)保持一致。本體不是建完就完了它是一個(gè)活的資產(chǎn)需要持續(xù)維護(hù)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
男女性感激情网站| 玖玖97综合| 免费亚洲国产精品久久一区| 久久久久久亚洲精品中文字幕人妻| 操b在线观看| 欧美亚州色的图| 久久精彩免费视频| 91色图片| 国产综合操逼高清| 福利大香蕉| 亚洲丝袜色图| 亚洲国产一区二区三区在线| 免费视频无码| 五月天激情综合网| 爱媛媛久久国产福利| 日韩欧美中文日韩欧美色| 开心激情站| 少妇熟女一区二区三区| 中文高清一区二区的| 天天夜夜rb| 日韩人妻精品| 亚洲色图 图片| 久久久久久久一级黄色打同平台| 欧美成人精品A片免费一区99| 亚洲激情网一二三四区| 91碰超| 极品销魂美女一区二区 | 欧美成人性爱视频免费观看| 超碰2017| 日本性感人妻91| 男人天堂2017| 亚洲欧美国产va在线播放频| 欧美色偷偷| 国产白丝网站| 天天综合网91| 无码高清操逼网址| yellow网站免费观看日韩高清无码| 97网址www| 色综合一区二区三区| 国产福利电影| 97在线免费观看视频| 99在线精品视频| 国产午夜在线观看| 自偷自拍的亚洲视频| 97在线日韩中文字幕| 天天插天天插| 91三级理论片播放器| 精品免费囯产一区二区三区| 最新无码国产| 精品国产Av无码久久久伦古装| 亚洲激情片| 亚洲天堂久久久久久粉红视频| 久久久性| 九九无码久久精品视频| AV污污污污| 国产精品久久久久久 百度| 动漫爆乳3D奶水一区在线观看 | 熟女视频久久| www.狠狠干.coom| 色老汉色| 国模91| 大香蕉日韩欧美| 欲香欲色| av久日| 精品午夜福利| 亚洲欧洲激情| 国产五码丝袜屁眼| 久久精品欧美一区蜜桃| 一本一首道人妻少妇免费久久| 亚洲情色电影网| 性色AV蜜色av色欲av| 欧美天天| 人妻嗯啊啊在线播放| 91在线色综合| 日本孕妇孕交| 欧美超碰97| jk白丝没脱就开始啪啪| 丁香五月天啪啪| 殴美牲| 91熟女熟妇视频网站| 九九英色视频| 97伊人网| 亚洲精品久久久久毛片A片拉屎 | 欧美特大黄一级片片免费| 亚洲在线网站| 少妇高潮流水av免费| 欧美性生活免费网| 国产亚洲精品av一区| 美女毛片999| 久久精品日韩专区免费观看| 亚洲天堂在线怕怕视频| 久久亚洲av成人无码国产| 蜜桃视频精品一区二区三区| 欧美 亚洲| 国产三级日产三级韩国三级| 日本午夜福利视频| 先锋女优在线观看视频| 欧美性巨大╳╳╳╳╳高跟鞋| 人妻啊啊人妻啊| 后入式五六区| 在线观看亚洲专区| 日韩av情韩国爱禁区av一区二区| 日韩成人精品| 极品销魂美女一区二区| 国产强奸AV在线| 很很干很很操| 八戒无码国产午夜福利| 欧美日韩*字幕一区| 任你草| 少妇99| 在线毛片片免费观看| www.色五月| 欧美天天影院| 在线免费观看高清无码视频| 久久二| 欧美双插| 日本成人免费一区二区三区| 亚洲精品国产熟女久久久久久| 中国AAAAAA黄色片| 日本999精品视频| 熟人人妻少妇精品久久| 青青草色AV| 91精品老女人| 黄色二级片网站| 亚洲97综| 天天看人人操屄犊摸阴| 免费观看国产不卡av| 成人久久精品| 日本道久久综合色色| 色五月激情AV在线| 国产乱伦性爱AV| 精品一区二区2| 亚洲天堂 视频你懂的| 天天干夜夜肏| 色999亚洲人成色| 78精品| 欧洲免费一区二| 欧美Aⅴ| 天天天肏屄欧美| 五月丁香啪啪啪| 夜夜嗨免费视频| 欧美一级黄片免费播放| 亚洲1区2区三区高清中文字幕| 日韩精品黄片免费观看| 熟妇人妻丰满久久久久久久无码| 日韩AV电影网站 | 东京日日夜夜| 欧美 亚洲| 国产60页| 一区二区三区激情在线观看| 麻豆国产原创AV色哟哟| 国产AV天美传媒一区二区三区 | 999久久久久久久久| 欧美综合区| 国产精品视频在线观看| 黄片com.| 热热色综合网| 熟女网站最新| 人妻嗯啊啊在线播放| 丰满翘臀美女影院视频| 校园春色宗合网| 久久99草| 国模无码一区二区三区在线| 一区二区影院| 99这里都是精品| 小说区 图片区色 综合区| 操我啊啊啊啊啊| 立川理惠加勒比无码| 亚洲色图片区| 四虎影视永久在线观看精品免费网站| 国产九九九九九九| 国产日韩在线播放av| 久久精品视频28| 91撸色网 玖玖网 欧美| 麻豆天美AV传媒第一页| 97精品97| 少妇久久久久久| 国产三级多多影院2022国产AA一级毛片无码| 性爱1区| 久久內射| 亚洲网站一区二区在线| 丁香六月婷婷综合| 亚洲脚交| 丝袜美腿制服人妻二区中文字幕| 精品国产99| 超碰97中文| 亚洲精品丝袜-不卡成人免费……| 欧美熟女丝袜| 久久亚洲欧美中文字幕国语| 成人热久久精品| 99re国产精品视频| 熟女欧美日韩综合婷婷| 国产成人欧美精品在线| 精品国产乱码久久久久久久久1| 久久国产精品视频| 五月婷婷丁香中文字幕| 欧美亚洲韩国视频十五区| 国产成人无码a| 嗯嗯嗯啊啊啊操的我好爽| 亚洲图片欧美色| 色欧美天天| 97超碰9| 理论久久婷婷网 8| 亚洲春色一区二区三区| 1区2区3区中文字幕日韩| 色在线视频导航| 人妻精品4K4K4K4K4| 国产1024在线播放| 欧美日韩人人早| 少妇久久久久| 精品人妻一区二区三区四区| 无码精品久久| 狠狠夜色午夜久久综合在线| 欧美制服网站美腿丝袜| 亚洲精品乱码久久久久久蜜桃麻豆| 欧美999999| 人妻丰满熟妇一区二区三| 91色伦综合| 亚洲成人一区二区精品| 亚洲深夜福利| 91久久久久久久久久久| 啪啪资源网| 亚洲欧美日韩中文久久自慰| 色九九综合| 中文字幕精品码亚洲| 黑丝内射一区二区三区| AV一区观看| 超碰综合97在线| 丁香五月激情婷婷| 国产精品分类在线观看| 欧美影音在线| 欧美午夜熟妇黑人精品91| 亚洲精品一二牛牛| 无码人妻毛片丰满熟妇精品区| 欧美色五月| 少妇被c 黄 免费观看| 亚洲男人的天堂一区二区| A 在线网址| 青青草导航在线视频| 最新欧美色网| 久久中出| 97免费免费视频网| 久久综合激情| 久久精品午夜国产亚洲AV无码| 国产久久日| 久久大香蕉| 国产无吗在线播放| 天天舔日美女视频| se,,,亚洲欧美| 欧美日韩99| 亚欧毛片基地国产毛片基地| 亚洲美女高潮喷水视频| av天堂天堂av日韩| 精彩久久中文| 九九玖玖精品| 国产精品乱人伊人网| 蜜桃久久久久久久| 亚洲 综合 欧美| 在线无码网站| 人妻精品免费一二三区| 久久老熟女| 97超碰中文字幕| 德国一二三不卡| 久久性爱免费送| 黄色片A级一区二区三区| 中文字幕午夜精品久久久| av大香蕉网站| 五月婷婷hd| 狠狠久久亚洲欧美专区| 爱我干综合| 亚洲暴力强奸AV| 欧美日韩午夜精品一区二区三区| 大香蕉视频啪啪啪啪| 欧美大香蕉专区网| 国产精品一区二区三区在线| 91无码人妻| 啊啊啊好湿久久| 少妇超碰在线| 亚洲日韩一区电影| 99热这里只有精品8| 亚洲精品亚洲人成在线麻豆| 国产乱伦亚洲| 操逼天美3区| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 久久99深爱久久99精品| 99国产精品免费| 91网站18在线观看| 日韩草久视频| 成人影 天天操 亚洲| 尹人大香蕉视频在线| 久久香蕉网| 亚洲色色色| 99视频精品| 欧亚在线视频| 日韩久久超碰色| 久久九九国产精品| 十八禁电影伊人网| 超碰97综合网| 亚洲天天更新| 婷婷色色五月天福利| 日本精品五区| 最新国内自拍av免费| 91在线免费精品视频| 亚洲男人天堂AV| 91制服丝袜中文字幕| 青娱乐妇女性生活| 天天上日日上日韩精品| 国产丝袜欧美在线视频| 欧美人妻久久精品二区三区| 国产精品久久成人免费| 中文字幕性感少妇av| 日本护士高潮| 丰满少妇一区二区三区四区观看| 久久精品视频在线观看| 国内毛片四区| 国产偷人伦激情在线观看| 在线a亚洲视频播放在线| 色月天AV导航| 色蜜AV| 激激五月| 1204金沙人妻懂旧版免费| 天天操人人操骚逼网站| 久久亚洲一区二区色婷婷| 夜夜操中文字幕| 激情色播| 日韩在线人妻网站| 大香蕉日亚洲日本亚大 | 婷婷五月天在线观看| 欧美一区91大爱| 日韩内射视频| 日本精品九九九| 熟妇色99| 中文字幕一区二区韩| 亚洲欧美中文日韩视频中国语| 蜜桃久久综合视频| 999 久久久| 东北女人高潮视频| 黄色小视频日本txt| 色婷婷av在线观看| 操人妻逼91| 综合欧美激情网| 三级日本一区二区三区| 亚洲成a人片在线观看中文!!!| 91精品黄在线观看| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 久久性生大片免费观看性| 日本 色 导航| 美女尤物福利视频| 死我十八禁| 国产无码成人无码| 思思热在线视频精品| 北条麻妃性愛视频| 97超碰色| 香蕉在线一区二区三区| 91热色| 日韩av无码网站| 抽插无码高清一区| 清清草影| 国产无吗在线播放| 亚洲另类久操网| 久久久少妇诱惑精品视频| 久操B网| 久草精品热视| 91亚洲综合在线| 玖玖玖玖精品国产剧情| 久久超碰、| 啊好大好舒服| 欧日韩在线观看| 亚洲人成在线放东京热| 秋霞视频一区二区| 免费亚洲国产精品久久一区| 国产视频一区二区三区在线免费观看| 婷婷香蕉欧美在线一区二区三区| 成人情色综合网| 在线观看色视频| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 天天91~综合入口| 超碰 欧美| 粉嫩不卡一区二区性爱| 亚av顶级裸体一区二区三区四区五区 | 日本在线播放不卡一区| 色99视频| 午夜亚洲| 极品色社| 97综合国产| 亚洲色图大香| 亚洲国产97| 97干在线| 资源新线在线天堂| 无码免费一区二区三区啪啪| 色五月AV| 久久久久久久久久久人妻| 欧美AB在线| 67914亚洲精品| www亚洲欧美| 青青草日韩无码| 搡老女人老91二区| 国产欧美美女免费观看视频| 97精品免费| 日韩精品人妻系列无码天堂| 国产婷婷综合在线观看| 2026国产精品视频| 婷婷五月综合在线| 一本色道综合久久欧美日韩精品| 色性欧美| 国产v片在线免费观看| 超清福利精品视频在线| 99re视频在线观看这里只有精品| 肉丝中文无码高清| 亚洲国产日韩精品久久久| 婷婷大香蕉| 91久久青青草原精品| 校园春色亚洲欧洲| 18禁的网站在线| 精品美女少妇一区二区| 婷婷四五区| 国产9 9在线 | 亚洲| 91欧美性| 国模一区二区三区| 国产日韩在线播放av| 九九九九免费视频| 国产精品老熟女一区二区| 97超碰磁| 欧美色图片欧美色图| 深爱五月婷婷| 操逼日批| 熟女少妇视频| 亚洲视频一二区| 中国亚洲呦女专区| 午夜国产综合视频在线观看| 日韩av电影网站| 色玖玖| 人人操我人人干| 欧美极度丰满熟妇hd| 久草在| 人妻AV在线| 国产兽交视频在线播放| 夜夜夜爽www精品视频| 亚洲射综合网| 国产这里只有精品| 综合操逼| a片久久久久久久久久久久 | 91女优在线观看| av天天在线观看| 亚洲暴力强奸AV| 亚洲超碰97| 欧美国产操逼| 91嫩草欧美| 性爱综合网| 操逼国产免费| 国产亚洲欧美每日在线| 少妇的嫩逼图片| 男人的天堂久久狠| 啊啊啊97视频| 久久久999网站| 色婷婷丁香五月| 一类av片在线看| 无码人妻精品酒店| 天堂性色| 伊人久久大香大香线蕉中文 | 色色99| 午夜精品久久久99热蜜桃的功能特点| 91最新综合| 国产这里只有精品| 乱色视频中文字幕| 亚洲欧美国产其他二区| 成全在线观看免费观看| 国产日韩欧美操逼视频| 2024黄色视频| 国产激情视频一区区三区| 一本大道青青| 中文字幕午夜精品久久久| 激情欧美日韩女同久久| 亚洲 欧美 小说| 精品久久久久9999| 泰国AV在线观看| 婷婷尹人大香蕉免费| 操逼逼无码| 国产精品自拍欧美在线| 免费看A片毛毛片在线播| 国产精品蜜臀久久久久无码AV| 91色色网站| 亚洲国产综合视频| 久久久久亚洲熟妇熟女| 亚洲男人综合| 亚洲图片激情综合另类| 欧亚久久偷拍视频| 国产又色又爽又舒服的三级视频| 欧美性爱三区二区| 91精品人妻电影| 91动漫操逼视频| 欧美人与动性人交a| 久久精品亚洲婷婷| 亚洲。日韩。欧美| 久草新免费| 婷婷另类小说| 91熟女少妇| 91男人综合| 综合五月天| 999999精品| 激情色图| 亚洲国产91精品一区二区久久| 精品久久久久久AV无码| 操逼操逼视频操逼| 精品久热| 麻豆区99999| 91久久堂| 情色大香蕉| 91操熟女| 约操熟妇| 亚洲男人bt天堂| 综合久欧洲| 久久精品成人一区二区三区蜜臀 | 亚洲18禁| 久久 亚洲 日韩 人妻| 人人摸人人舔一区二区| 亚洲天堂男| 淫淫总合网| 久久久国产三级黄色片| 性欧美另类高清| 欧美视频激情久久久久久| 99国产精品自在自在| 超碰人妻久久| 视频在线观看免费一区二区三区| 五月丁香啪啪啪| 日韩激情视频| 高精欧美色| 人妻献身系列第54部| 无码抄逼网| 99re6久热只有精品6在线直播| 成人天天看站长推荐| 亚洲,欧美,综合网| PMv在线观看| 国产福利精品最新在线 | 人妻乱仑一区二区三区| 99999精品视频| 天天热精品| 欧美性爽xyxOOOO| 国产激情在线观看| 91美女在线视频| 啪啪自拍九九综合| 国产操逼逼网| 九九久久国产精品| 农村妇女精品一二区| 日本欧美一区二区三区免费| 久操黄色视频| 午夜经典| 午夜精品探花| 美美91成人国产精品欧美精品久久久久久久| 丰满人妻大屁一区二区| 久久久久国产精品片区无码直播| 成人熟女视频一区二区三区| 人妻91少妇| 国产欧美岛国精品一区| 日少妇亚洲版| 天天综合网~91| 走光一区92下载| 色呦呦国产精品免费看| 婷婷丁香在线| 老熟妇一区二区三区| 日本十八禁免费看污网站| 黄色污污污污污污网站| 天美麻豆一区二区三区| 在线观看综合精品亚洲| 美女丝袜激情小说| 久久久久久亚洲中文| 丝袜性亚洲| 在线午夜成人无码视频| 久久国产三区| 一起草在线视频| 婷婷在线视频| 色色九区| 2020中文字幕| 97香蕉网| 国产精品对白内射| 人妻一区二区三区四区视频| 欧美亚涩| 蜜臀久久99精品久久久久久-DVD原版全| 免费视频a级毛片免费视频| 天天干夜夜肏| aaa一级黄片| 97久久久久久久久久| 大伊香蕉在线视频免费| 日韩无码服务区| 日本男人天堂| 亚洲欧洲中文日韩女优乱码| 秋霞男人网| 日韩人妻有码免费视频| 1204金沙人妻懂旧版免费| 日韩三A大片在线观看| 97久久久精品| 亚洲五码一区二区三区| 激情另类激情| renqi久久久久久久久久久久| 男人精品区| 久久久亚洲精品电影免费看| 午夜亚洲WWW湿好大| 伊人久久大香蕉线AV五月天| 欧美一级久久久久久久大片动画| 99re在线精品78| 丰满的三级少妇欧美久久久| 伊人麻豆传媒| 国产精品91ai| 欧美三级中文字幕hd| 四虎av在线| 中文字幕av色| 97在线精品观看视频| 嗯嗯啊啊日韩精品| 成功精品影院| 人人人摸人人| 熟妇一区,二区,三区。| 天天综合在线4| Sekablack无码一区| 久九9精品| 人妻少妇视频在线播放| 国产亚洲精品久久久久小| 蜜桃丰满熟妇av无码区不卡| 日本欧美成人片AAAA| 欧美日动态视频| 国产精品乱码久久| 日影院久久婷婷夜夜网| 亚洲黄色网址视频| 国内91熟女人妻丝袜天天精品视频在线| 亚洲 欧美 日韩 国产一区二区| 久久精9| 免费一级视频特黄色大片| 日韩三级伊人| 九九免费影片| 极品内射| 亚洲日本成人动漫| 日本操逼视频导航| 99热97| 五月丁香在线| 91老熟女视频| 日日干日日| 国产精品久久伊人| 国产又黄又爽又刺激久久久久久 | 人妻 欧美亚洲| 伊人丁香五月婷婷| 超碰国产情侣自拍网| 精品国产乱子伦一区二区三区,精品一| 日韩色| 丝袜天堂| 免费黄色片。| 91久久18禁| 中国AV美女| 亚洲97p| 久色99999| 日本色色视频网站| 欧美成人色| 欧美日韩性爱电影在线| 精品久久久久久久久久久久| 婷婷五月综合在线| 色人久久| 色综91| 欧美制服另类丝袜| 午夜性生活av免费在线看| 无码99| 国产无马在线| 亚洲情色一区二区三区| 激情小说成人日本无码一| 最新9久久久9免费视频| 丁香婷婷九月| 超碰欧美97| 欧美狠狠弄| 高清国产性猛交xxxx乱大交| 青青草玖玖爱| 婷婷伊人网| 91精品国产综合久久久蜜臀酒店| 天天操av懂色| 成人精品一区二区91毛片不卡| 九九九精品一区二区无码| 亚洲美女自拍偷拍视频| 人妻第一页| 久久久精久久久| 在线观看免费视频国产| 日韩无码服务区| 色蜜AV| 日韩在线一区高清在线| 中文字幕第95页| 蜜臀久久一区二区| 亚洲色图欧美色图日韩色图| 免费视频观看60秒| 免费在线看黄片av| 五月天啪啪| 综合伊人网12色| 欧美激情亚洲情色| 超AV色女| 亚洲无码久久久久久久| 青草成人免费视频一com| 欧美亚洲AN| 玖玖在线视频| 欧美午夜视频免费观看| 日本 情色 1区| 熟女天天干| 色播五月丁香| 超碰在线香蕉| 91综合网| 嗯嗯嗯啊啊在线观看| 久久国产视频专区一二三| 久久久久亚洲Aⅴ无码| 大香蕉78| 精品少妇一区二区| 伊人久久大香蕉线AV五月天| 天天综合精品| 人妻乱仑一区二区三区| a片在线播放| 亚洲欧美在线丝袜| 91碰碰| 91天美传媒精品| 色噜噜综合在线| 日韩精品在线观看网站| 欧 美 自 拍 偷 拍| 三上悠亚在线毛片91| 麻豆色99999| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 啊啊啊久久久视频| 五月天综合网| ,国产乱人伦精品一区二区三区| 韩国一级做A片免费的| 神马久久久久久伦理片| 中国一级αV| 啊啊啊啊啊好多水| 中文字幕1区2区| 精品成人无码| 欧美爱国产综合、| 97亚洲国产| 亚洲人妻熟妇三十三区| 嗯嗯啊操我| 亚洲婷婷五月天| 婷婷五月激情综合| 国内毛片免费h片在线| 99在线无码精品秘 入口黑人| 秋霞网无码| 日本不卡二区| 91情色| 放黄片放3级黄片没穿衣服| 天天92av| 凹凸精品熟女在线观看| 久久久蜜桃臀无码视频| 酒色综合网| 97国产人人| 大香蕉一级黄色片久久| 韩国免费播放一级毛片| 日韩成人无码| 美女熟妇色| 久久五月天婷婷丁香中文字幕| 影音先锋乱伦资源| 中文字幕久热视频在线| 手机在线人成免费视频| 黑人精品成人一区二区三区| 国产av美女被艹的乱叫| 精品亚洲国产成人AV制服丝袜| 日韩AV熟女乱伦| 欧美激情综合| 玖玖人人爱| 青青草久久一区网| 亚州综合图片| 中文字幕第二页| 97亚洲在线| 91大神精品长腿在线观看网站| 婷婷在线视频在线观看| 欧美性爱1080p| 久久性爱城| 超碰亚洲欧美日韩无| 四季AV综合网址| 欧美一区二区三区成人性生活| 女人天堂网| 97超碰香蕉| 91搞逼视频| 5252色欧美在线| 亚洲激情色片| 亚洲天堂久久| 日韩免费簧片| 日本五十路熟女一区二区| 久久综合五月天| 爱爱动态试试看6 0秒| 日韩精品影视| 五月丁香综合| 国产乱伦性爱区| 强奸xx国产| 欧美se亚洲| 97超碰精品图片| 欧美一区二区三区四区综合| 免费一级毛片在线视频观看| 天天看片天天爽| 亚洲在钱| 日本熟女不卡视频| 再深点灬舒服灬太大了好硬好爽| 热天堂一区二区| 色99久草| 天堂а√在线最新版在线| 久久久久免费少妇| 午夜精品人妻二区三区| 天天澡天天爽日日AV| 伊欧美综合视频| 韩国三级三级BD在线| 久久9精品| 亚洲黄色a级片| 九一综合精品视品av| 96超碰网| 自慰白浆在线观看| 亚洲激情色片| 伊人在线大香蕉视频久久| 一区操逼日比视频| 91久久国产精品| 日韩国产品视频中文字| 国产一区自拍欧美日韩| 麻豆a'v电影| 精品视频久久久久九九九九9999| 在线αⅴ| 91无码人妻| 丁香五月天堂网| 蜜臀无码视频在线观看| 亚洲综合贴图91| 五月激情影院| 亚洲成人精品在线一区| 国产极品久久久| 九九九九九九九九九九九九九九九女| 探花精品 一区二区| 玖玖色综合| 日韩久久三区| 亚洲双插| 久久人人爽人人爽人人片Ⅴ| 亚洲图片 激情小说| 成人性爱av| 韩国三级三级BD在线| 久久久久久网址| 久久这里精品国产99丫e6| 日韩有码专区| 欧美色棕合| 久夜视频| 黄页18禁| 国产内射爽爽大片| 亚洲AV资源| 夜夜爽夜夜摸夜夜操免费视频| 岛国免费黄色网址| 天天噜| 丝袜天堂网| 人妻另类| 精品久久99| 综合色一区三区二区| 国产女人高潮视频| 老司机福利青青草| 嫩草伊人久久精品| 白天啪啪晚上啪啪视频| 超碰午夜| 免费视频a级毛片免费视频| 全国男人天堂网| 98一区二区精品| 欧美日本成人一区二区| 亚洲成人精品久久久| 国产特级毛片AAAAAA高潮流水| 一直超碰| 亚洲免费人妻在| 99久草| 欧美天天谢综合网| 中国zzijzzijzzwww精品| 九99久久| 久超碰在| 一级毛片久久久久久久女人18| www被窝色com| 久久久九九网站| 人人操人人色网| 啊啊啊97视频| 日韩激情啪啪| 国产在线视视频有精品| 老司机午夜福利视频一区二区| 99热只有这里有精品| 男人的天堂免费| 青青草五月天| 激情色色| 天天干天天舔| 日本2020一区二区| 精品人妻夜夜草| 久久久国产成人一区二区三区在线| 欧美情色贴图| 九九热AV| 97在线精品观看视频| 一本大道青青| 麻豆影音天美视频| 91丨九色丨国产打屁股| 91精品亚洲内射孕妇| 天天影视91看看| 精品国产一区二区三区久久久蜜臀| 黄色免费网页无码| 精品无码久久久久久久久果冻糖心 | 青女偷拍网| 欧美老妇女内射网址| 亚洲国产欧美中日韩成人综合视频| 天天操夜夜操| 91精品国产91久久久久久久久久久久| 国产怡红院| 91狠狠综合久久久| 九九干| 国产精品人妻无码久久久老鸭窝 | 成人国产精品三级A片| 成人五月天丁香激情综合| 午夜精品久久久久久久| 亚洲综合码| 91丨九色丨东北熟女| 午夜120视频在线观看| 热99这里有精品综合久久 | 97网址97| 精品久久久久久久久久久久| 中文字幕 码 自拍 视频 区| 亚洲精品啪视频| 亚洲精品免费中文字幕| 国产精品在线免费| 亚洲素人综合| 97干综合网| 98精品国产乱码久久久久久| 大香蕉在线视频15| 99色色| 91久久99久久91熟女精品| 国产麻豆福利av在线播放| 欧美自拍偷拍综合图片| 成人蜜乳小视频网站| 国产精品久久久久久久久久久久久久| 97精品在线| 99热这里只有是精品10| 国产乱弄免费在线视频。| www鬼畜国产男人的天堂| 91一区二区| 九九精品热| 中文字幕一区二区三区视频播放| 欧美性爱一级操| 国产精品一级毛片不卡视| 都市久久精品激情亚洲| 老司机深夜18禁污污网站| 久久久久久网址| 蜜臀一区二区三区在线 | 牛黄色久午久| 国内自拍 日韩激情 99| 亚洲一区二区性爱电影| 丰满少妇乱子伦精品无| 伊人五月天激情| 思思性爱| 九久9精品| 99无码视频| 人妻加勒比东京热| 中文字暮97| 久久伊人在线五区| 不卡码视频| 欧美色图成人网一区二区| 九九九九九用不成了| 亚洲综合贴图91| 国产丝袜高跟美女av免费观看| 亚洲欧美综合网站| 蜜臀Av一区二区三区| 亚洲性天堂| 人人操人人93| 欧美探花网| 福利色色| 亚洲成人碰碰| 欧美熟妇精品黑人巨大一二三区| 亚洲视频小说| 色噜噜狠狠色综无码久久| 日韩99999| 成人精品在线免费视频| 亚洲成人性爱网站在线播放| 国产AV无码AV| 涩涩五月天| 日韩三级在线观看mp4| 亚洲熟久久| 亚州精品人妻一二三区| 亚洲在线a| 亚洲国产欧美一区二区潘金莲 | 性交一区二区在线播放| 91亚洲最新在线| 欧美日韩在线视频网站| 多毛小伙内射老太婆| 色色综合网站| 欧美高清性猛交| 好爽要喷了| 免费观看欧美日韩操逼视频 | 热热色国产一二区AV| 强奸乱伦日韩AV| 在线综合网| 国产福利小视频高清在线观看| 97久久超碰| 欧美综合第一| 久久久精品九| 综合久久久久久久久91| 天天躁日日躁XXXXYY| 国产性刺激| 九九九久久久W精品| 男女激烈网站最新| 狠狠干狠狠干| 91熟女.com| 亚洲人妻中文在线视频| 亚洲最大无码中文字幕网站| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 激情婷婷丁香| 欧美不卡在线一区二区| 9久久精品| 无码久| 日韩啊V| 色婷婷久久| 免费亚洲国产精品久久一区| 亚洲欧美日韩偷拍色图| 亚洲中文字母在线播放| 激情综合av| 日韩一级二级三级在线不卡观看完整| 国产精品探花视频| 妇女视频网站| 国产免费一区2区3区| 免费一级欧美片片线观看| 日本一天色道久久久精品视频| 97干在线视频| 色情五月丁香| 91操人| 黄色电影在线播放综合网站| 国产精品天美传媒| 欧美综合1性辶| 国内精品久久久久影院亚洲| 97精品国产手机| 黑人精品XXX一区一二区| 丝袜AV一二三区| 伊人九九九| www.久久久久| 九九九偷拍| 国产情侣自拍在线播放| 中文字幕第23区| 国产极品99热在线播放69| 欧美72网页| 国产免费一区2区3区| 熟妇熟女视频一区二区三区| 色噜噜日韩精品| 探花精品视频| 欧美综合色图片| 97色色婷婷| 97在线视频免费看| 日日夜夜干| 丝袜足交视频| 熟女日韩| 久久久久久网址| 开心六月色| 日韩av免费一级电影| 久久综合精品一区二区三区| 国产av高清版| 尤物视频偷拍免费| 日本肏逼视频在线观看| 国产suv精品一区| 思思热在线视频精品| 亚洲欧美洲综合| 电影69乱码96| 午夜精品久久久久久久男人的天堂| 亚洲少妇视频| 亚洲精品男人的天堂| 久久久四区| 日韩av熟女一区二区三区成人| 人人做,人人操,人人摸| 色超碰综合| 性爱乱伦一区| 四方色播| 天堂资源欧美| 久久中文字幕一区不卡| 亚洲色图国产另类| 久久久久成人亚洲国产| 91女日逼| 久久久久性熟视频| 免费αⅴ在线观看| 超碰导航97| 人妻天天爽夜夜爽爽| 26uuu欧美日韩| 少妇特黄一区二区三区| 天天做天天爱天天爽| 日本视频在线中文字幕| 久久超碰大香蕉| 日亚韩精品视频二区三| 亚洲精品99999| 精品无码一二三四区| 成人性爱电影网| 校园春色综合网| 青青草玖玖爱| 国产按摩一区二区三区| 久久五月天婷婷丁香中文字幕| 亚洲综合另类色图| 亚州成人A√| 欧美性爱系列| 91福利网在线观看| 超碰在线在公开超碰在线在公开| 久久一二三四五六七八九区区区| 99re免费视频精品全部| 五月天九九日国产精品一区二区三区| 成人综合色网| 女人喷水视频在线观看| 欧美亚洲综合高清在线| 加勒比少妇AV婷婷六月天超碰超碰| 色色色综合网| 岛国黄色短视频| V A在线| 啊啊啊操死我了| 亚洲永久AV无码精品秋霞| 欧美日综合| 国产高清免费不卡av| 1240青青草一区二区三区视频天爱| 国产女人9999| 91视频观看网站| 五月丁香六月婷综合成人综合| 强奸乱伦免费网站| 91爱啪| 国产suv精品一区二六| 天天综合网在线| 五月天婷婷影院| 黑人无码一区二区| 岛国黄片网站| 亚洲丝袜综合| 少妇高潮一区二区三区在线| 天美欧美国产| 婷婷国产精品九区| www.激情| 色婷久久| 久久久久久AV无码免费网站| 国产极品精品美女视频| 一区二区高清视频| 国产视频不卡在线观看| 97超碰超| 肥臀熟女一区二区三区视频| 久久久男人的天堂| 久久亚洲不卡一区二区三区| 欧美另类色图片| 99精品在线观看| 一块操欧美性爱| 国模少妇一区二区三区| 国产亚洲精品av一区| 啪啪啪东京| 黄色大片免费在线| 国产精品日本无码A片| 中文字幕蜜乳av| 97色97干| 在线观看中文字幕| 日日爱99| 永久免费观看的毛片的网站| 91久久久久久久久18| 熟妇一区二区| 大香蕉99999| 免费国产视频| 国产又黄又爽| JIZZJIZZ亚洲女人被躁| 国产午夜在线观看| 日韩免费在线观看不卡| 国产精品一区二区a| 国产午夜福利专区综合| av天堂5| 大乔未久88一区| 日韩啪啪啪视频| 久草热制服丝袜在线观看| 伊人一区二区三区| 97精品视频网站| 加勒比伊人综合| 加勒比av网| 国内精品99999| 天天网综合| CCYY草草影院地址入口| 操逼天美3区| 天天做日日做天天欢。| 亚洲黄色影视| av优播|