用于存儲(chǔ)平臺(tái)中的鎖定和隔離的系統(tǒng)和方法

            文檔序號(hào):6462531閱讀:154來源:國(guó)知局
            專利名稱:用于存儲(chǔ)平臺(tái)中的鎖定和隔離的系統(tǒng)和方法
            用于存儲(chǔ)平臺(tái)中的鎖定和隔離的系統(tǒng)和方法本申請(qǐng)是申請(qǐng)日為2004年7月29日、國(guó)際申請(qǐng)?zhí)枮镻CT/US2004/024435、中國(guó) 國(guó)家申請(qǐng)?zhí)枮?00480001696.4、發(fā)明名稱為"用于存儲(chǔ)平臺(tái)中的鎖定和隔離的系統(tǒng)和 方法"的專利申請(qǐng)的分案申請(qǐng)。發(fā)明領(lǐng)域本發(fā)明涉及數(shù)據(jù)檢索和操作領(lǐng)域,尤其涉及存儲(chǔ)平臺(tái)中的鎖定和隔離。 發(fā)明背景近來計(jì)算領(lǐng)域中的一種發(fā)展是計(jì)算機(jī)操作系統(tǒng)可以用于構(gòu)建在關(guān)系型引擎上的存 儲(chǔ)平臺(tái)。這種存儲(chǔ)平臺(tái)可以是,例如,來自華盛頓州雷蒙德市的微軟公司的MICRSOFT WINDOWS FILE SYSTEM ( "WinFS" ) 。 WinFS構(gòu)建在在來自上面提到的微軟公 司的SQL SERVER 之上。WinFS平臺(tái)的數(shù)據(jù)模型以項(xiàng)目、項(xiàng)目擴(kuò)展和關(guān)系定義數(shù)據(jù)存儲(chǔ)單元。項(xiàng)目是存儲(chǔ) 信息的基本單元。該數(shù)據(jù)模型提供了一種用于聲明項(xiàng)目和項(xiàng)目擴(kuò)展,以及用于建立項(xiàng) 目之間的關(guān)系的機(jī)制。項(xiàng)目是可以使用諸如復(fù)制、刪除、移動(dòng)、打開等的操作來存儲(chǔ) 和檢索的單元。項(xiàng)目旨在表示數(shù)據(jù)的真實(shí)世界和易于理解的單元,諸如聯(lián)系人、人、 服務(wù)、位置、文檔(各種類型的)等。項(xiàng)目擴(kuò)展是擴(kuò)展現(xiàn)有項(xiàng)目的定義的一種方法, 而關(guān)系定義了項(xiàng)目之間的聯(lián)系。在WinFS中,定義了不同的項(xiàng)目類型用于存儲(chǔ)信息。例如,為聯(lián)系人、人、服務(wù)、 位置、文檔等定義了項(xiàng)目類型。每個(gè)項(xiàng)目類型由定義給定項(xiàng)目的屬性和特性的模式 (schema)描述。例如,"Location (位置)"項(xiàng)目可以被定義為具有諸如EAddresses (電子地址)、MetropolitanRegion(大城市地區(qū))、Neighborhood(街區(qū))和Postal Addresses (郵政地址)等屬性。 一旦為給定的項(xiàng)目類型定義了模式,在數(shù)據(jù)存儲(chǔ)中創(chuàng)建對(duì)應(yīng)的 用戶定義類型(UDT)。存儲(chǔ)在數(shù)據(jù)存儲(chǔ)中的項(xiàng)目類型的每個(gè)實(shí)例具有與它相關(guān)聯(lián)的 唯一標(biāo)識(shí)符(例如,Item ID (項(xiàng)目ID));在一個(gè)實(shí)施例中,每個(gè)項(xiàng)目標(biāo)識(shí)符是全局唯一標(biāo)識(shí)符(GUID)。如同SQL SERVER中的UDT的任何實(shí)例一樣,WinFS項(xiàng) 目的實(shí)例最終被以分離的UDT列存儲(chǔ)在數(shù)據(jù)存儲(chǔ)的表中。WinFS的構(gòu)件塊之一是它結(jié)合了來自SQL Server的文件流技術(shù)。文件流是關(guān)系型 數(shù)據(jù)表的一個(gè)列,其中該列的每個(gè)單元的數(shù)據(jù)被存儲(chǔ)在與存儲(chǔ)著該表的其它列的文件 相分離的文件中。WinFS的一個(gè)重要特性是WinFS項(xiàng)目的每個(gè)字段可以被指定為文件 流字段。文件流技術(shù)對(duì)于包括具有大量數(shù)據(jù)的字段的項(xiàng)目特別有利。例如,Person(人) 項(xiàng)目可以具有"照片"字段,它包括對(duì)應(yīng)的人的數(shù)字照片。該照片字段可以包括不適 合存儲(chǔ)在數(shù)據(jù)表中的大量數(shù)據(jù)。WinFS的另一個(gè)重要特性是它能夠允許對(duì)文件流字段進(jìn)行"帶外"訪問,因此它 們可以通過傳統(tǒng)的文件系統(tǒng)調(diào)用(打開、讀/寫、關(guān)閉等)來訪問,而不必使用數(shù)據(jù)庫(kù) 存儲(chǔ)的底層查詢語言。用于提交傳統(tǒng)文件系統(tǒng)調(diào)用的文件系統(tǒng)應(yīng)用程序接口 (API) 可以是,例如,來自上面提到的微軟公司的Win32 ,而數(shù)據(jù)庫(kù)存儲(chǔ)的底層?xùn)嗽冋Z言 可以是,例如,事務(wù)處理結(jié)構(gòu)化查詢語言(T-SQL)。因?yàn)閃inFS允許對(duì)文件流字段 進(jìn)行帶外訪問,所以包含這種文件流字段的項(xiàng)目可以通過兩種不同的通道操作T-SQL 和Win32。T-SQL和Win32的一個(gè)不同之處是T-SQL具有定義完善的事務(wù)和鎖定模型,而 Win32沒有。如本文中所使用的,術(shù)語"事務(wù)"指T-SQL中的事務(wù)處理模型是以語句 的概念建立的。 一個(gè)T-SQL語句表示對(duì)數(shù)據(jù)存儲(chǔ)的一種操作,諸如"SELECT"或 "UPDATE"語句。T-SQL語句可以被作為單語句事務(wù)或多語句事務(wù)的一部分被包括。 在單語句事務(wù)中,單個(gè)被執(zhí)行的T-SQL語句在數(shù)據(jù)存儲(chǔ)上創(chuàng)建一個(gè)事務(wù),該事務(wù)在語 句成功執(zhí)行時(shí)被提交。事務(wù)的生命期由語句限定。在多語句事務(wù)中, 一個(gè)應(yīng)用程序發(fā) 出"開始事務(wù)"和"提交事務(wù)"的T-SQL語句,以便明確地開始并對(duì)數(shù)據(jù)存儲(chǔ)提交(或 中止)事務(wù)。開始(begin)和提交(commit)括號(hào)內(nèi)的所有語句作為數(shù)據(jù)存儲(chǔ)上的同 一個(gè)多語句事務(wù)的一部分來執(zhí)行。T-SQL具有用于事務(wù)鎖定的定義完善的語義。 一般地,"SELECT"語句將獲得 行上的讀鎖,而"UPDATE"語句將獲得行上的寫鎖。寫鎖被保持直到事務(wù)被提交或 中止為止,而讀鎖可以被較早地釋放。如果事務(wù)具有行上的寫鎖,則其它事務(wù)被阻塞 獲得對(duì)該行的讀和/或?qū)懺L問。如果事務(wù)試圖獲得對(duì)另一個(gè)事務(wù)已經(jīng)獲得了寫鎖的行的 讀和/或?qū)懺L問,則會(huì)發(fā)生沖突??梢允褂脴?biāo)準(zhǔn)的沖突分解方法來分解該沖突。與使用語句的概念相反,Win32使用傳統(tǒng)的文件系統(tǒng)共享模式來定義操作(打開、讀/寫、關(guān)閉)之間的隔離。文件共享讀標(biāo)志使得能夠進(jìn)行讀共享,這意味著對(duì)一個(gè)文 件的打開可以與對(duì)同一文件的另一個(gè)打開共享讀。文件共享寫標(biāo)志使得能夠進(jìn)行寫共 享,這意味著對(duì)一個(gè)文件的打開可以與對(duì)同一文件的另一個(gè)打開共享寫。另外,文件 共享讀標(biāo)志和文件共享寫標(biāo)志兩者可以被設(shè)置為既允許讀共享也允許寫共享。此外,兩種文件共享標(biāo)志都不能被設(shè)置為拒絕共享。重要的是,傳統(tǒng)的Win32 API和其它傳 統(tǒng)文件系統(tǒng)API不能夠使操作能在事務(wù)的環(huán)境中執(zhí)行。因此,本領(lǐng)域需要一種用于存儲(chǔ)平臺(tái)中的鎖定和隔離的系統(tǒng)和方法,所述的系統(tǒng) 和方法統(tǒng)一了查詢語言事務(wù)和鎖定模型以及文件系統(tǒng)共享模型。事務(wù)模型的統(tǒng)一將在 諸如WinFS等存儲(chǔ)平臺(tái)中提供一種用于操作包含文件流字段的項(xiàng)目的總體事務(wù)模型。 還希望該總體框架使得文件系統(tǒng)操作能夠在事務(wù)環(huán)境中執(zhí)行。發(fā)明概述本發(fā)明針對(duì)用于存儲(chǔ)平臺(tái)中的鎖定和隔離的系統(tǒng)和方法。根據(jù)本發(fā)明,用于文件 系統(tǒng)操作的共享模型與用于查詢語言語句的事務(wù)和鎖定模型統(tǒng)一為一體,以便提供一 種用于存儲(chǔ)平臺(tái)中的文件流的鎖定和隔離的總體框架。此外,為文件系統(tǒng)操作提供了 對(duì)事務(wù)的支持,從而它們可以在事務(wù)環(huán)境中執(zhí)行。因此,單個(gè)事務(wù)可以包括單個(gè)文件 系統(tǒng)語句、單個(gè)查詢語言語句、多個(gè)文件系統(tǒng)語句、多個(gè)查詢語言語句以及文件系統(tǒng) 和查詢語言語句的組合。此外,提供了對(duì)非事務(wù)文件系統(tǒng)操作的支持,從而文件系統(tǒng) 操作不必在事務(wù)環(huán)境中執(zhí)行。根據(jù)本發(fā)明的一個(gè)方面,文件系統(tǒng)語句可以包括對(duì)打開項(xiàng)目的調(diào)用,讀或?qū)懖僮?以及對(duì)關(guān)閉項(xiàng)目的調(diào)用。文件系統(tǒng)語句可以獲得包括對(duì)應(yīng)于該項(xiàng)目的用戶定義類型 (UDT)的數(shù)據(jù)表的行上的隔離。事務(wù)處理的寫語句獲得該事務(wù)的生命期中行上的獨(dú) 占鎖。事務(wù)處理讀語句獲得行的讀已提交視圖。文件系統(tǒng)共享模式可以用于定義事務(wù) 之間以及一個(gè)事務(wù)內(nèi)的語句之間的隔離。此外,非事務(wù)處理的語句也可以基于共享模 式獲得隔離。根據(jù)本發(fā)明的另一個(gè)方面,在存儲(chǔ)平臺(tái)處可以接收多個(gè)査詢語言語句和/或文件系 統(tǒng)語句。所述語句可以與事務(wù)相關(guān)聯(lián)??梢源_定該事務(wù)的開始是否將產(chǎn)生沖突。如果 是的,則該沖突可以根據(jù)諸如阻塞等標(biāo)準(zhǔn)沖突分解技術(shù)來分解。如果沒有沖突,則通 過獲得用于事務(wù)內(nèi)的查詢語言語句和/或文件系統(tǒng)語句的適當(dāng)?shù)淖x和/或?qū)戞i,開始該事 務(wù)。通過下面參考附圖對(duì)說明性實(shí)施例的詳細(xì)描述,本發(fā)明的其它特性和優(yōu)點(diǎn)將變得 顯而易見。附圖的簡(jiǎn)要說明在參考附圖閱讀下面的詳細(xì)描述之后,將會(huì)更好地理解說明性實(shí)施例,附圖中

            圖1是根據(jù)本發(fā)明包括用于項(xiàng)目實(shí)例的數(shù)據(jù)的示例性數(shù)據(jù)庫(kù)表; 圖2是根據(jù)本發(fā)明的示例性存儲(chǔ)平臺(tái)環(huán)境的框圖;圖3是根據(jù)本發(fā)明用于在事務(wù)環(huán)境中執(zhí)行文件系統(tǒng)語句的示例性方法的流程圖; 圖4是根據(jù)本發(fā)明用于非事務(wù)處理讀文件系統(tǒng)語句的鎖定和隔離的示例性方法的 流程圖;圖5是根據(jù)本發(fā)明用于非事務(wù)處理寫文件系統(tǒng)語句的鎖定和隔離的示例性方法的 流程圖;圖6是表示具有可在其中實(shí)現(xiàn)本發(fā)明的各種計(jì)算設(shè)備的示例性網(wǎng)絡(luò)環(huán)境的框圖;以及圖7是表示可在其中實(shí)現(xiàn)本發(fā)明的示例性計(jì)算設(shè)備的框圖。 說明性實(shí)施例的詳細(xì)描述為了滿足法定要求以細(xì)節(jié)描述了本發(fā)明的主題。然而,該描述本身并不旨在限制 本專利的范圍。相反,發(fā)明人構(gòu)想,結(jié)合其它當(dāng)前的或未來的技術(shù),所提出的主題也 可以用其它的方式實(shí)施,以便包括不同的步驟或與本文檔中所描述的相類似的元素。如上所述,本發(fā)明針對(duì)用于諸如上面提到的WinFS等存儲(chǔ)平臺(tái)中的鎖定和隔離的 系統(tǒng)和方法。本發(fā)明使得諸如上面提到的Win32等文件系統(tǒng)操作能夠在事務(wù)環(huán)境中執(zhí) 行。此外,本發(fā)明統(tǒng)一了用于文件系統(tǒng)操作的模型和用于諸如上面提到的T-SQL等查 詢語言的事務(wù)和鎖定模型,從而在存儲(chǔ)平臺(tái)中提供了一種用于操作包含文件流字段的 項(xiàng)目的總體模型?,F(xiàn)在參考圖1,存儲(chǔ)平臺(tái)項(xiàng)目的實(shí)例可被存儲(chǔ)在諸如示例表200的關(guān)系型數(shù)據(jù)庫(kù) 表內(nèi)。表200包括兩個(gè)列ID列202a和用戶定義類型(UDT)列202b。列202a中的 每個(gè)ID提供了用于對(duì)應(yīng)的UDT的唯一標(biāo)識(shí)符。列202b中的每個(gè)UDT對(duì)應(yīng)于項(xiàng)目類 型的一個(gè)實(shí)例。例如,列202b中的每個(gè)UDT可以對(duì)應(yīng)于與Person項(xiàng)目類型相關(guān)聯(lián)的 特定的人。UDT1-3的字段204a-c分別被指定為文件流字段,意味著該字段的數(shù)據(jù)被存儲(chǔ)在與表200相分離的文件中。文件流字段204a-c對(duì)于存儲(chǔ)諸如數(shù)字照片等包括大 量數(shù)據(jù)的字段是有利的。例如,Person項(xiàng)目可以具有對(duì)應(yīng)的"照片"字段,它是包括 人的數(shù)字照片的文件流字段。如下詳細(xì)所述,本發(fā)明能夠鎖定和隔離行,諸如表200 的行1-3的每個(gè)行。圖2示出了一種示例性存儲(chǔ)平臺(tái)環(huán)境。如上所述,客戶機(jī)應(yīng)用程序300可以直接 通過存儲(chǔ)平臺(tái)308,或經(jīng)由通過文件系統(tǒng)API302的"帶外"訪問來操作數(shù)據(jù)存儲(chǔ)310 中的項(xiàng)目。如果客戶機(jī)應(yīng)用程序300直接通過存儲(chǔ)平臺(tái)308操作項(xiàng)目,則這種操作可 以使用諸如T-SQL等查詢語言來執(zhí)行。在另一方面,如果客戶機(jī)應(yīng)用程序300經(jīng)由通 過文件系統(tǒng)API302的"帶外"訪問來操作項(xiàng)目,則這種操作可以使用諸如Win32等 文件系統(tǒng)API來執(zhí)行。"帶外"訪問僅對(duì)包括文件流字段的項(xiàng)目可用??蛻魴C(jī)應(yīng)用程序300可以通過使用存儲(chǔ)平臺(tái)方法直接訪問存儲(chǔ)平臺(tái)308來啟動(dòng)數(shù) 據(jù)存儲(chǔ)310上的查詢。繼續(xù)Person項(xiàng)目類型的例子,客戶機(jī)應(yīng)用程序300可以使用存 儲(chǔ)平臺(tái)308的"FindAll"方法來啟動(dòng)對(duì)Person類型中"Birthday"字段的值大于特定 日期(例如,1999年12月31日)的所有實(shí)例的查詢。然后存儲(chǔ)平臺(tái)308將"FindAll" 操作翻譯為T-SQL中的查詢或另一種查詢語言,并且將它提交給底層數(shù)據(jù)存儲(chǔ)310。 然后數(shù)據(jù)存儲(chǔ)310對(duì)Person UDT的對(duì)應(yīng)的實(shí)例執(zhí)行該査詢,并且返回Person UDT的 每個(gè)匹配實(shí)例的被存儲(chǔ)的值。然后存儲(chǔ)平臺(tái)308包裝Person UDT對(duì)象并且將它們作為 Person類型的項(xiàng)目返回給應(yīng)用程序。除了上面提出的能夠?qū)?xiàng)目進(jìn)行直接訪問之外,存儲(chǔ)平臺(tái)308允許通過文件系統(tǒng) API 302對(duì)項(xiàng)目?jī)?nèi)的文件流字段進(jìn)行"帶外"訪問。在圖2的示例性環(huán)境中,客戶機(jī) 應(yīng)用程序300通過例如調(diào)用存儲(chǔ)平臺(tái)308的CreateFile (創(chuàng)建文件)接口并且將路徑名 傳遞給存儲(chǔ)平臺(tái)308來發(fā)起帶外訪問,所述路徑名基于持久存儲(chǔ)的項(xiàng)目(UDT)的實(shí) 例內(nèi)的對(duì)應(yīng)字段的標(biāo)識(shí)來標(biāo)識(shí)所請(qǐng)求的數(shù)據(jù)。當(dāng)文件系統(tǒng)API 302從客戶機(jī)應(yīng)用程序 300接收到包括存儲(chǔ)平臺(tái)路徑名的CreateFile命令時(shí),文件系統(tǒng)API 302就這樣識(shí)別它, 并且將它轉(zhuǎn)發(fā)到FS代理306。然后FS代理306向存儲(chǔ)平臺(tái)308發(fā)出"OPEN (打開)" 調(diào)用,傳遞項(xiàng)目字段的存儲(chǔ)平臺(tái)路徑名。然后存儲(chǔ)平臺(tái)308從存儲(chǔ)平臺(tái)路徑名中標(biāo)識(shí) 項(xiàng)目和字段,并且然后將這種信息傳遞給數(shù)據(jù)庫(kù)引擎310。存儲(chǔ)平臺(tái)308可以傳遞一 數(shù)據(jù)庫(kù)引擎函數(shù),該函數(shù)返回以上面所述的方式與數(shù)據(jù)庫(kù)存儲(chǔ)相分離地存儲(chǔ)的UDT 對(duì)象的文件流字段的文件系統(tǒng)路徑名。數(shù)據(jù)庫(kù)引擎310通過在表200中執(zhí)行表查找來響應(yīng)所述請(qǐng)求,表200中儲(chǔ)存了作為請(qǐng)求主題的UDT對(duì)象。數(shù)據(jù)庫(kù)引擎310定位到表200的正確的行,并且然后定位到 該行內(nèi)的UDT對(duì)象的序列化的片段。對(duì)于所述的文件流字段,數(shù)據(jù)庫(kù)引擎310從它的 對(duì)應(yīng)片段中提取出其中存儲(chǔ)了該字段的數(shù)據(jù)的文件的真實(shí)文件系統(tǒng)路徑。數(shù)據(jù)庫(kù)引擎 310將該真實(shí)路徑發(fā)送回存儲(chǔ)平臺(tái)308。然后存儲(chǔ)平臺(tái)308將文件系統(tǒng)路徑傳遞回FS 代理106, FS代理106進(jìn)而調(diào)用文件系統(tǒng)API 302以便打開文件、傳遞請(qǐng)求中的真實(shí) 文件系統(tǒng)路徑。然后如同向文件系統(tǒng)API302做出CreateFile調(diào)用時(shí)通常所做的,文件 系統(tǒng)API 302獲得該文件的句柄,并且將它傳遞回客戶機(jī)應(yīng)用程序300。此時(shí),客戶機(jī)應(yīng)用程序300可以通過正常的文件系統(tǒng)API調(diào)用(例如Win32 API 文件I/0調(diào)用)來讀和寫文件。當(dāng)客戶機(jī)應(yīng)用程序300結(jié)束對(duì)該文件的操作時(shí),它向 文件系統(tǒng)API發(fā)出CLOSE (關(guān)閉)調(diào)用。這個(gè)調(diào)用再次被FS代理306攔截。FS代理 306向存儲(chǔ)平臺(tái)308發(fā)出"CLOSE"調(diào)用以便請(qǐng)求關(guān)閉該文件。存儲(chǔ)平臺(tái)308將這種 操作建模為對(duì)持久存儲(chǔ)的項(xiàng)目的更新,執(zhí)行任何相關(guān)聯(lián)的改變跟蹤和其它與更新相關(guān) 聯(lián)的功能。然后數(shù)據(jù)庫(kù)引擎310在持久存儲(chǔ)的UDT對(duì)象上執(zhí)行它自己的更新處理。一 旦處理結(jié)束,控制被返回給FS代理306, FS代理306調(diào)用文件系統(tǒng)API 302以便代 表客戶機(jī)應(yīng)用程序300執(zhí)行其正常的文件關(guān)閉操作。因此,在上面所述的環(huán)境中,存儲(chǔ)平臺(tái)308能夠使用諸如T-SQL等查詢語言直接 訪問文件流字段,或是使用諸如Win32等文件系統(tǒng)API進(jìn)行"帶外"訪問。如上所述, 在査詢語言事務(wù)和鎖定模型以及文件系統(tǒng)共享模型之間有多種不同之處。 一個(gè)這種不 同之處是文件系統(tǒng)不具有如同查詢語言中所具有的語句的概念。相反,文件系統(tǒng)生成 諸如打開、讀、寫和關(guān)閉等操作。本發(fā)明使得打開可以在事務(wù)環(huán)境中執(zhí)行。被打開的 文件可以在打開過程中與所提供的事務(wù)環(huán)境相關(guān)聯(lián)。隨后的讀和/或?qū)懓l(fā)生在事務(wù)環(huán)境 中。如同査詢語言中的事務(wù)一樣,在任意給定時(shí)刻對(duì)一個(gè)文件只能有一個(gè)事務(wù)處理的 寫程序。此外,事務(wù)處理讀程序得到該文件的讀已提交視圖,意味著它們觀看到了在 打開時(shí)刻處于其巳提交狀態(tài)的文件。非事務(wù)處理讀程序和寫程序可以基于指定的共享模式獲得隔離。當(dāng)文件被打開時(shí), 打開的目的可以被指定。文件可以為下面3個(gè)目的中的一個(gè)打開為讀目的打開、為 寫目的打開或?yàn)樽x和寫目的打開。此外,可以使用共享模式指定所希望的隔離模型 文件共享讀、文件共享寫、既文件共享讀又文件共享寫或是既不文件共享讀又不文件 共享寫。對(duì)于文件系統(tǒng)操作,如果基于共享沖突拒絕對(duì)文件的訪問,則打開失敗而不 是被阻塞??梢栽谏院蟮臅r(shí)刻重試打開,希望共享沖突不再發(fā)生。共享模式可以提供兩個(gè)級(jí)別的隔離,g卩,事務(wù)之間和事務(wù)內(nèi)的打開之間。所有非 事務(wù)處理的打開可以如同它們?nèi)课挥诳偸腔顒?dòng)的單個(gè)全局事務(wù)內(nèi)那樣運(yùn)行,并且為 每個(gè)非事務(wù)處理寫自動(dòng)提交。非事務(wù)處理讀不能得到對(duì)應(yīng)文件的讀已提交視圖,并且 僅被提供用共享模式請(qǐng)求的隔離。在存儲(chǔ)平臺(tái)308中,隔離的單元可以是項(xiàng)目、與項(xiàng)目相關(guān)聯(lián)的擴(kuò)展或與項(xiàng)目相關(guān) 聯(lián)的關(guān)系。在這3種情況的每種情況下,底層表示都是適當(dāng)?shù)谋韮?nèi)的UDT的實(shí)例,并 且隔離的單元對(duì)應(yīng)于表的行。這映射到查詢語言鎖定模型,其中以每行為基礎(chǔ)獲得適 當(dāng)?shù)逆i。因此,存儲(chǔ)平臺(tái)308內(nèi)的鎖定的粒度直接映射到查詢語言內(nèi)的行粒度。如上所述,除了為文件系統(tǒng)操作提供事務(wù)支持之外,本發(fā)明針對(duì)統(tǒng)一用于文件系 統(tǒng)操作和查詢語言語句的模型。與文件系統(tǒng)語句(它們僅為對(duì)文件流項(xiàng)目的帶外訪問 而處理)不同,査詢語言語句可以在文件流和非文件流項(xiàng)目?jī)烧呱蠄?zhí)行。為了統(tǒng)一查 詢語言的事務(wù)模型和文件系統(tǒng)的共享模型,必須定義文件系統(tǒng)語句的概念。這種文件 系統(tǒng)語句可以包括打開操作、讀或?qū)懖僮饕约瓣P(guān)閉操作。因此,包括打開、讀以及關(guān) 閉操作的文件系統(tǒng)語句在語義上等效于查詢語言中的SELECT文件流語句,而包括打 開、寫以及關(guān)閉操作的文件系統(tǒng)語句在語義上等效于查詢語言中的UPDATE文件流 語句。如同查詢語言語句那樣,文件系統(tǒng)語句可以出現(xiàn)在多語句事務(wù)或單語句事務(wù)環(huán)境 中,其中在語句的處理過程中存在事務(wù)。因此,根據(jù)本發(fā)明的事務(wù)可以包括單個(gè)查詢 語言語句、單個(gè)文件系統(tǒng)語句、多個(gè)查詢語言語句、多個(gè)文件系統(tǒng)語句或是查詢語言 和文件系統(tǒng)語句的組合。在單個(gè)査詢語言語句的情況下,項(xiàng)目中的字段被更新并且更新圖(updategram) 被發(fā)送到服務(wù)器。項(xiàng)目中的所有值可以是內(nèi)嵌的,包括文件流的值。作為更新圖執(zhí)行 的一部分,事務(wù)可以在服務(wù)器上即刻創(chuàng)建和提交。在單個(gè)文件系統(tǒng)語句的情況下,事務(wù)作為打開的一部分而創(chuàng)建。然后讀或?qū)懓l(fā)生 在事務(wù)環(huán)境內(nèi)。然后事務(wù)作為關(guān)閉的一部分被提交。存儲(chǔ)平臺(tái)308可以跨過<打開、寫、 關(guān)閉>邊界創(chuàng)建和管理事務(wù)的生命期。在多個(gè)查詢語言語句的情況下,事務(wù)在服務(wù)器上開始,項(xiàng)目字段被更新,并且一 個(gè)或多個(gè)更新圖被發(fā)送到服務(wù)器。然后事務(wù)在服務(wù)器上提交。在多個(gè)文件系統(tǒng)語句的情況下,事務(wù)在服務(wù)器上開始,并且文件系統(tǒng)語句在事務(wù) 環(huán)境中執(zhí)行。然后事務(wù)在服務(wù)器上提交。在査詢語言和文件系統(tǒng)語句組合的情況下,事務(wù)在服務(wù)器上開始,并且然后可以 發(fā)出修改項(xiàng)目中的非文件流字段的更新圖。可以為文件系統(tǒng)操作指定事務(wù)環(huán)境,以便獲得對(duì)應(yīng)行上的適當(dāng)?shù)逆i。如果為讀而 打開,則事務(wù)將獲得包含文件流的行上的讀鎖。如果為寫而打開,則事務(wù)將獲得包含 文件流的行上的寫鎖。FS代理306可以代表事務(wù)獲得行鎖,并且鎖可以基于事務(wù)的隔離級(jí)別來釋放,并且綁定到事務(wù)的生命期。為了模擬査詢語言隔離模型,可以為寫程序獲得獨(dú)占打開,而可以為讀程序獲得 共享打開。獨(dú)占和共享打開分別對(duì)應(yīng)于査詢語言模型中的獨(dú)占行級(jí)別鎖和共享行級(jí)別鎖。因此,某種共享模式標(biāo)志可能與這個(gè)模型相抵觸,并且可能不會(huì)被兌現(xiàn)。例如,文件共享寫標(biāo)志與這種模型相抵觸,因?yàn)樗试S兩個(gè)打開共享對(duì)同一文件 的寫。因此,文件共享寫標(biāo)志可以被禁止并且不被兌現(xiàn)。例如,文件共享寫可以被安 靜地重新映射或以適當(dāng)?shù)腻e(cuò)誤代碼拒絕。因此,如果事務(wù)包括多個(gè)文件系統(tǒng)寫語句, 則寫操作可以被序列化。事務(wù)內(nèi)的序列化與査詢語言語義相一致,其中在同一事務(wù)環(huán) 境中不允許多個(gè)并發(fā)的更新。此外,如果兩個(gè)非事務(wù)處理的文件系統(tǒng)語句試圖同時(shí)執(zhí) 行,則它們也可以被序列化。非事務(wù)處理語句的序列化與査詢語言語句語義相一致,其中兩個(gè)UPDATE語句不能并發(fā)地執(zhí)行。此外,在事務(wù)環(huán)境中為寫而打開必須指定文 件共享讀。如果沒指定有,則該打開可能以無效操作錯(cuò)誤代碼失敗。這實(shí)施了查詢語 言語義,即UPDATE不阻礙同一事務(wù)環(huán)境中的SELECT。圖3中示出了根據(jù)本發(fā)明在事務(wù)環(huán)境中執(zhí)行文件系統(tǒng)語句的示例性方法的流程 圖。在動(dòng)作410,存儲(chǔ)平臺(tái)308從客戶機(jī)應(yīng)用程序300接收語句以便在存儲(chǔ)在數(shù)據(jù)存 儲(chǔ)310內(nèi)的項(xiàng)目上執(zhí)行。這種語句可以是從客戶機(jī)應(yīng)用程序300接收的査詢語言語句, 或通過文件系統(tǒng)API 802和FS代理804從客戶機(jī)應(yīng)用程序300接收的帶外文件系統(tǒng)語 句。查詢語言語句可以在文件流和非文件流項(xiàng)目上執(zhí)行,而文件系統(tǒng)語句僅可以在文 件流項(xiàng)目上執(zhí)行。如上所述,查詢語言語句可以包括,例如SELECT語句或UPDATE語句。査詢 語言語句可以是單或多語句事務(wù)的一部分。如果査詢語言語句是多語句事務(wù)的一部分, 則它以開始事務(wù)和提交事務(wù)命令加擴(kuò)號(hào)。文件系統(tǒng)語句可以包括打開操作、讀操作或?qū)懖僮饕约瓣P(guān)閉操作。每個(gè)文件系統(tǒng) 語句可以在事務(wù)環(huán)境中被提交。在動(dòng)作412,在動(dòng)作410接收的每個(gè)語句與事務(wù)相關(guān) 聯(lián)。應(yīng)當(dāng)理解,文件系統(tǒng)語句不必在事務(wù)環(huán)境中提交。下面參考圖4和5詳細(xì)討論了用于非事務(wù)處理文件系統(tǒng)語句的鎖定和隔離。在動(dòng)作414,確定事務(wù)的啟動(dòng)是否將導(dǎo)致沖突。例如,如果事務(wù)內(nèi)的任何語句對(duì) 應(yīng)于這樣的行,在該行上另一事務(wù)已經(jīng)獲得了寫鎖,則將發(fā)生沖突。如果在動(dòng)作414確定將發(fā)生沖突,則在動(dòng)作416分解該沖突??梢愿鶕?jù)標(biāo)準(zhǔn)沖突 分解慣例來分解沖突。 一般地,即使只有一個(gè)沖突被檢測(cè)到,整個(gè)事務(wù)可以被回退。在動(dòng)作418,啟動(dòng)事務(wù)。通過獲得適當(dāng)行上的讀鎖和寫鎖啟動(dòng)事務(wù)。如前面提到 的,獲得對(duì)應(yīng)于讀操作并且對(duì)應(yīng)于SELECT語句的行上的讀鎖。對(duì)應(yīng)于讀操作的讀鎖 獲得該行的讀已提交視圖。讀鎖是共享的行鎖。在對(duì)應(yīng)于寫操作并且對(duì)應(yīng)于UPDATE語句的行上獲得寫鎖。寫鎖是在事務(wù)生命期 中獲得的獨(dú)占鎖。寫鎖將防止當(dāng)事務(wù)被處理時(shí)另一個(gè)事務(wù)訪問(通過讀訪問或?qū)懺L問) 對(duì)應(yīng)的行。寫鎖還防止當(dāng)事務(wù)被處理時(shí),非事務(wù)處理文件系統(tǒng)語句訪問(通過讀訪問 或?qū)懺L問)對(duì)應(yīng)的行。然而寫鎖不防止事務(wù)內(nèi)的其它語句讀對(duì)應(yīng)的行。圖4中示出了根據(jù)本發(fā)明用于非事務(wù)處理文件系統(tǒng)讀語句的鎖定和隔離的示例性 方法的流程圖。在動(dòng)作420,存儲(chǔ)平臺(tái)308從客戶機(jī)應(yīng)用程序300接收將在存儲(chǔ)在數(shù) 據(jù)存儲(chǔ)310內(nèi)的項(xiàng)目上執(zhí)行的非事務(wù)處理文件系統(tǒng)讀語句。如上所述,文件系統(tǒng)讀語 句包括打開操作、讀操作和關(guān)閉操作。在動(dòng)作422,確定讀訪問是否可用于對(duì)應(yīng)于該項(xiàng)目的數(shù)據(jù)表的一個(gè)行。該行可以 包括對(duì)應(yīng)于該項(xiàng)目的用戶定義類型。如果在動(dòng)作422確定讀訪問可用,則在動(dòng)作424獲得該行上的讀鎖。讀鎖可以提 供該行的讀己提交視圖。如果在動(dòng)作422確定讀訪問不可用,則在動(dòng)作426打開失敗。圖5示出了根據(jù)本發(fā)明用于非事務(wù)處理文件系統(tǒng)語句的鎖定和隔離的示例性方法 的流程圖。在動(dòng)作520,存儲(chǔ)平臺(tái)308從客戶機(jī)應(yīng)用程序300接收將在存儲(chǔ)在數(shù)據(jù)存 儲(chǔ)310內(nèi)的項(xiàng)目上執(zhí)行的非事務(wù)處理文件系統(tǒng)寫語句。如上所述,文件系統(tǒng)寫語句包 括打開操作、寫操作和關(guān)閉操作。在動(dòng)作522,確定寫訪問是否可用于對(duì)應(yīng)于該項(xiàng)目的數(shù)據(jù)表的一個(gè)行。該行可以 包括對(duì)應(yīng)于該項(xiàng)目的用戶定義類型。如果,例如一個(gè)事務(wù)或另一個(gè)非事務(wù)處理語句己 經(jīng)具有了該行上的寫鎖,則寫訪問可以被拒絕。如果在動(dòng)作522確定寫訪問可用,則在動(dòng)作524獲得該行上的寫鎖。寫鎖可以防 止一個(gè)事務(wù)或另一個(gè)非事務(wù)處理語句在該語句被處理時(shí)獲得該行上的寫鎖。如果在動(dòng)作522確定讀訪問不可用,則在動(dòng)作526打開失敗。如從上述可以清楚了解的,本發(fā)明的各種系統(tǒng)、方法和方面的全部或部分可以用 硬件、軟件或兩者的結(jié)合來實(shí)施。當(dāng)用軟件實(shí)施時(shí),本發(fā)明的方法和裝置或其某些方 面或部分可以用程序代碼(即,指令)的形式來實(shí)施。這種程序代碼可以被存儲(chǔ)在諸 如磁的、電子的或光學(xué)存儲(chǔ)介質(zhì)的計(jì)算機(jī)可讀介質(zhì)上,包括但不限于軟盤、CD-ROM、 CD-RW、 DVD-RW、 DVD-ROM、 DVD-RAM、磁帶、閃存、硬盤驅(qū)動(dòng)器或任何機(jī)器 可讀存儲(chǔ)介質(zhì),其中當(dāng)程序代碼被裝入并由機(jī)器(諸如計(jì)算器或服務(wù)器)執(zhí)行時(shí),該 機(jī)器成為實(shí)現(xiàn)本發(fā)明的裝置。程序代碼在其上執(zhí)行的計(jì)算機(jī)通常包括處理器、處理器 可讀的存儲(chǔ)介質(zhì)(包括易失/非易失存儲(chǔ)器和/或存儲(chǔ)元件)、至少一個(gè)輸入設(shè)備以及至 少一個(gè)輸出設(shè)備。程序代碼可以用高級(jí)過程語言或面向?qū)ο缶幊陶Z言來實(shí)現(xiàn)??商鎿Q 地,程序代碼可以用匯編語言或機(jī)器語言實(shí)現(xiàn)。在任何情況下,所述的語言可以是編 譯或解釋語言。本發(fā)明還可以用程序代碼的形式來實(shí)施,該程序代碼通過某種傳輸介質(zhì)傳輸,諸 如通過電線或電纜、通過光纖、通過包括局域網(wǎng)、廣域網(wǎng)、因特網(wǎng)或內(nèi)聯(lián)網(wǎng)的網(wǎng)絡(luò)、 或通過任何其它的傳輸形式,其中當(dāng)程序代碼被接收并被裝入且由機(jī)器(諸如計(jì)算機(jī)) 執(zhí)行時(shí),該機(jī)器成為實(shí)現(xiàn)本發(fā)明的裝置。當(dāng)在通用處理器上實(shí)現(xiàn)時(shí),程序代碼可以與處理器相結(jié)合,以便提供與專用邏輯 電路相類似地運(yùn)行的唯一裝置。此外,本發(fā)明可以結(jié)合任何計(jì)算機(jī)或其它客戶機(jī)或服務(wù)器設(shè)備來實(shí)現(xiàn),這些計(jì)算 機(jī)或其它客戶機(jī)或服務(wù)器設(shè)備可以作為計(jì)算機(jī)網(wǎng)絡(luò)的一部分部署,或部署在分布式計(jì) 算環(huán)境中。就此而言,本發(fā)明適合于具有任何數(shù)目的存儲(chǔ)器或存儲(chǔ)單元,以及發(fā)生在 任何數(shù)目的存儲(chǔ)單元或巻上的任何數(shù)目的應(yīng)用程序和進(jìn)程的任何計(jì)算機(jī)系統(tǒng)或環(huán)境, 所述的存儲(chǔ)單元或巻可以被用于與根據(jù)本發(fā)明在數(shù)據(jù)庫(kù)存儲(chǔ)中持久存儲(chǔ)對(duì)象有關(guān)的處 理。本發(fā)明可以適用于具有被部署在網(wǎng)絡(luò)環(huán)境或分布式計(jì)算環(huán)境中的服務(wù)器計(jì)算機(jī)或 客戶機(jī)計(jì)算機(jī)的環(huán)境,所述的環(huán)境具有遠(yuǎn)程或本地存儲(chǔ)。本發(fā)明還適用于獨(dú)立的計(jì)算 設(shè)備,所述的獨(dú)立的計(jì)算設(shè)備具有用于生成、接收和發(fā)送關(guān)于遠(yuǎn)程或本地服務(wù)的信息 的編程語言功能、解釋和執(zhí)行功能。分布式計(jì)算設(shè)備通過在計(jì)算設(shè)備和系統(tǒng)之間進(jìn)行交換便于計(jì)算機(jī)資源和服務(wù)的 共享。這些資源和服務(wù)包括,但不限于,信息交換、高速緩存存儲(chǔ)和用于文件的盤存 儲(chǔ)。分布式計(jì)算利用了網(wǎng)絡(luò)互連,允許客戶機(jī)發(fā)揮它們的集體能力,以便使整個(gè)企業(yè)受益。就此而言,各種設(shè)備可以具有可以牽涉到結(jié)合本發(fā)明的對(duì)象持久存儲(chǔ)方法所執(zhí) 行的處理的應(yīng)用程序、對(duì)象或資源。圖6提供了示例性的聯(lián)網(wǎng)或分布式計(jì)算環(huán)境的示意圖。該分布式計(jì)算環(huán)境包括計(jì) 算對(duì)象10a、 10b等,以及計(jì)算對(duì)象或設(shè)備110a、 110b、 110c等。這些對(duì)象可以包括 程序、方法、數(shù)據(jù)存儲(chǔ)、可編程邏輯等。這些對(duì)象可以包括一部分相同的或不同的設(shè) 備,諸如PDA、電視機(jī)、MP3播放器、個(gè)人計(jì)算機(jī)等。每個(gè)對(duì)象可以通過通信網(wǎng)絡(luò) 14與另一個(gè)對(duì)象通信。網(wǎng)絡(luò)本身包括為圖6的系統(tǒng)提供服務(wù)的其它計(jì)算對(duì)象和計(jì)算設(shè) 備,并且本身可以代表多個(gè)互連的網(wǎng)絡(luò)。根據(jù)本發(fā)明的一個(gè)方面,每個(gè)對(duì)象10a、 10b 等或110a、 110b、 110c等可以包含可利用API或其它對(duì)象、軟件、固件和/或硬件來 請(qǐng)求使用用于實(shí)現(xiàn)本發(fā)明的對(duì)象持久存儲(chǔ)方法的過程的應(yīng)用程序。還應(yīng)當(dāng)理解,諸如110c等對(duì)象可以被主宿在另一個(gè)計(jì)算設(shè)備10a、 10b等或110a、 110b、 110c等之上。因此,雖然給出的物理環(huán)境可以將連接的設(shè)備示為計(jì)算機(jī),但是 這種說明僅是示例性的,并且可替換地,該物理環(huán)境可以被描繪或描述為包含諸如 PDA、電視機(jī)、MP3播放器等的各種數(shù)字設(shè)備,以及諸如接口、 COM對(duì)象等的軟件 對(duì)象。存在各種支持分布式計(jì)算環(huán)境的系統(tǒng)、組件和網(wǎng)絡(luò)配置。例如,計(jì)算系統(tǒng)可以被 通過有線或無線系統(tǒng)、通過局域網(wǎng)或廣泛地分布的網(wǎng)絡(luò)連接在一起。當(dāng)前,許多網(wǎng)絡(luò) 被耦合到因特網(wǎng),因特網(wǎng)提供了廣泛分布的計(jì)算的基礎(chǔ)結(jié)構(gòu)并且包含許多不同的網(wǎng)絡(luò)。 任何基礎(chǔ)設(shè)施可以用于附屬于本發(fā)明的示例性通信。因特網(wǎng)一般指使用計(jì)算機(jī)聯(lián)網(wǎng)領(lǐng)域內(nèi)公知的TCP/IP協(xié)議套件的網(wǎng)絡(luò)和網(wǎng)關(guān)的集 合。TCP/IP是"傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議"的首字母縮寫。因特網(wǎng)可以被描述為由執(zhí) 行聯(lián)網(wǎng)協(xié)議的計(jì)算機(jī)互連的在地理上分布的遠(yuǎn)程計(jì)算機(jī)網(wǎng)絡(luò),該聯(lián)網(wǎng)協(xié)議允許用戶通 過網(wǎng)絡(luò)進(jìn)行交互或共享信息。因?yàn)檫@種廣泛的信息共享,因此諸如因特網(wǎng)等遠(yuǎn)程網(wǎng)絡(luò) 迄今已發(fā)展為一種開放系統(tǒng),開發(fā)者可以為它設(shè)計(jì)軟件應(yīng)用程序以便執(zhí)行專門的操作 或服務(wù),基本上沒有限制。因此,網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)啟用了大量的網(wǎng)絡(luò)拓?fù)?,如客戶機(jī)/服務(wù)器、對(duì)等或混合體系 結(jié)構(gòu)。"客戶機(jī)"是它所不相關(guān)的另一類或組的服務(wù)的類或組的成員。因此在計(jì)算中,客戶機(jī)是一個(gè)進(jìn)程,即粗略地說是一組指令或任務(wù),它請(qǐng)求由另一程序提供的服務(wù)。 客戶機(jī)進(jìn)程使用所請(qǐng)求的服務(wù)而不用"了解"關(guān)于其它程序或該服務(wù)本身的任何工作 細(xì)節(jié)。在客戶機(jī)/服務(wù)器體系結(jié)構(gòu)中,特別是聯(lián)網(wǎng)的系統(tǒng)中,客戶機(jī)通常是訪問由另一計(jì)算機(jī)(例如,服務(wù)器)提供的共享網(wǎng)絡(luò)資源的計(jì)算機(jī)。在圖6的例子中,計(jì)算機(jī)110a、 110b等可以被認(rèn)為是客戶機(jī),而計(jì)算機(jī)10a、 10b等可以被認(rèn)為是服務(wù)器,盡管取決 于環(huán)境,任何計(jì)算機(jī)可以被認(rèn)為是客戶機(jī)、服務(wù)器或是這兩者。任何這些計(jì)算設(shè)備可 以用牽涉本發(fā)明的對(duì)象持久存儲(chǔ)技術(shù)的方式來處理數(shù)據(jù)。服務(wù)器通常是可以通過遠(yuǎn)程或本地網(wǎng)絡(luò)(諸如因特網(wǎng))訪問的遠(yuǎn)程計(jì)算機(jī)系統(tǒng)。 客戶機(jī)進(jìn)程可以在第一計(jì)算機(jī)系統(tǒng)中是活動(dòng)的,并且服務(wù)器進(jìn)程可以在第二計(jì)算機(jī)系 統(tǒng)中是活動(dòng)的,它們通過通信介質(zhì)彼此通信,因此提供了分布式的功能并且允許多個(gè) 客戶機(jī)利用服務(wù)器的信息聚集能力。按照本發(fā)明的持久存儲(chǔ)機(jī)制使用的任何軟件對(duì)象 可以分布在多個(gè)計(jì)算設(shè)備上。(多個(gè))客戶機(jī)和(多個(gè))服務(wù)器可以使用由協(xié)議層提供的功能彼此通信。例如, 超文本傳輸協(xié)議(HTTP)是與萬維網(wǎng)(WWW)或"Web"結(jié)合使用的常見的協(xié)議。 典型地,諸如互聯(lián)網(wǎng)協(xié)議(IP)地址等計(jì)算機(jī)網(wǎng)絡(luò)地址或諸如統(tǒng)一資源定位器(URL) 等其它引用可以用于彼此標(biāo)識(shí)服務(wù)器或客戶機(jī)。網(wǎng)絡(luò)地址可以被稱為URL地址??梢?通過任何可用的通信介質(zhì)提供通信。因此,圖6示出了一種其中可使用本發(fā)明的示例性聯(lián)網(wǎng)或分布式環(huán)境,其中服務(wù) 器通過網(wǎng)絡(luò)/總線與客戶機(jī)計(jì)算機(jī)通信。根據(jù)本發(fā)明,網(wǎng)絡(luò)/總線14可以是LAN、WAN、 內(nèi)聯(lián)網(wǎng)、因特網(wǎng)或某些其它的網(wǎng)絡(luò)介質(zhì),它具有依照本發(fā)明的多個(gè)客戶機(jī)或遠(yuǎn)程計(jì)算 機(jī)設(shè)備110a、 110b、 U0c、 U0d、 110e等,諸如便攜計(jì)算機(jī)、手持計(jì)算機(jī)、瘦客戶機(jī)、 聯(lián)網(wǎng)設(shè)備或其它設(shè)備,諸如VCR、 TV、烤箱、電燈、加熱器等。因此可以構(gòu)想本發(fā) 明可以適用于任何這樣的計(jì)算設(shè)備,對(duì)所述的計(jì)算設(shè)備而言希望保持持久存儲(chǔ)的對(duì)象。例如,在通信網(wǎng)絡(luò)/總線14是因特網(wǎng)的網(wǎng)絡(luò)環(huán)境中,服務(wù)器10a、 10b等可以是客 戶機(jī)110a、 110b、 110c、 110d、 110e等通過多種已知協(xié)議中的任意一種(諸如HTTP) 與其通信的服務(wù)器。如可以是分布式計(jì)算環(huán)境的特征,服務(wù)器10a、 10b等還可以用作 客戶機(jī)110a、 110b、 110c、 110d、 110e等。通信可以是(在適合的地方)有線的或無線的??蛻魴C(jī)設(shè)備110a、 110b、 110c、 110d、 110e等可以通過或可以不通過通信網(wǎng)絡(luò)/總線14通信,并且可以具有與它相關(guān) 聯(lián)的獨(dú)立的通信。例如,在TV或VCR的情況下,可以有或沒有關(guān)于其控制的聯(lián)網(wǎng)的 方面。每個(gè)客戶計(jì)算機(jī)110a、 110b、 110c、 110d、 110e等和服務(wù)器10a、 10b等可以 配備有各種應(yīng)用程序模塊或?qū)ο?35,并且具有到各種類型的存儲(chǔ)元件或?qū)ο蟮倪B接 或訪問,文件或數(shù)據(jù)流可以跨所述的存儲(chǔ)元件或?qū)ο蟊淮鎯?chǔ),或是部分的文件或數(shù)據(jù)流可以被下載到、傳輸?shù)交蛞仆龅拇鎯?chǔ)元件或?qū)ο?。任何?jì)算機(jī)10a、 10b、 110a、 110b等可以負(fù)責(zé)用于存儲(chǔ)根據(jù)本發(fā)明處理的數(shù)據(jù)的數(shù)據(jù)庫(kù)、存儲(chǔ)器或其它存儲(chǔ)元件20 的維護(hù)和更新。因此,本發(fā)明可以用于這樣的計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境中,它具有可以訪問計(jì) 算機(jī)網(wǎng)絡(luò)/總線14并與其交互的客戶計(jì)算機(jī)110a、 110b等,以及可以與客戶計(jì)算機(jī) 110a、 110b等交互的服務(wù)器10a、 10b等,以及其它類似的設(shè)備和數(shù)據(jù)庫(kù)20。圖6和下面的討論旨在提供對(duì)可結(jié)合其實(shí)現(xiàn)本發(fā)明的適合的計(jì)算設(shè)備的簡(jiǎn)要的概 括描述。例如,圖6中示出的任何客戶機(jī)和服務(wù)器計(jì)算機(jī)或設(shè)備都可以采用這種形式。 然而應(yīng)當(dāng)理解,手持的、便攜的和其它的計(jì)算設(shè)備和各種類型的計(jì)算對(duì)象也被構(gòu)想用 于本發(fā)明,即,計(jì)算環(huán)境中可以生成、處理、接收和/或發(fā)送數(shù)據(jù)的任何地方。雖然下 面描述了通用計(jì)算機(jī),但這只是例子,并且本發(fā)明可以用具有網(wǎng)絡(luò)/總線協(xié)同工作能力 和交互作用的瘦客戶機(jī)來實(shí)現(xiàn)。因此,本發(fā)明可以在聯(lián)網(wǎng)主宿的服務(wù)的環(huán)境中實(shí)現(xiàn), 其中只涉及非常少的或最少的客戶機(jī)資源,例如, 一種聯(lián)網(wǎng)的環(huán)境,其中客戶設(shè)備僅 起到網(wǎng)絡(luò)/總線的接口的作用,諸如被放置在設(shè)備中的一個(gè)對(duì)象。本質(zhì)上,可以存儲(chǔ)數(shù) 據(jù)的任何地方或可以從中檢索數(shù)據(jù)或?qū)⑵浒l(fā)送到另一計(jì)算機(jī)的任何地方都是用于運(yùn)行 本發(fā)明的對(duì)象持久存儲(chǔ)方法的理想的或適合的環(huán)境。雖然沒有要求,本發(fā)明可以通過操作系統(tǒng)實(shí)現(xiàn),以便由設(shè)備或?qū)ο蟮姆?wù)開發(fā)者 使用,和/或被包括在根據(jù)本發(fā)明運(yùn)行的應(yīng)用程序或服務(wù)器軟件中。軟件可以在計(jì)算機(jī) 可執(zhí)行指令的一般上下文中描述,所述的計(jì)算機(jī)可執(zhí)行指令諸如由一個(gè)或多個(gè)計(jì)算機(jī) (諸如客戶工作站、服務(wù)器或其它設(shè)備)執(zhí)行的程序模塊。 一般地,程序模塊包括例 程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等,它們執(zhí)行特定的任務(wù)或?qū)崿F(xiàn)特定的抽象數(shù)據(jù)類 型。典型地,程序模塊的功能可以按照所希望的被結(jié)合進(jìn)或分布到各種實(shí)施例中。此 外,本發(fā)明可以用其它計(jì)算機(jī)系統(tǒng)配置和協(xié)議來實(shí)現(xiàn)。適用于本發(fā)明的其它的公知的 計(jì)算系統(tǒng)、環(huán)境和/或配置包括,但是不限于,個(gè)人計(jì)算機(jī)(PC)、自動(dòng)柜員機(jī)、服務(wù) 器計(jì)算機(jī)、手持或膝上設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、可編程消費(fèi)者電 子設(shè)備、網(wǎng)絡(luò)PC、電器、電燈、環(huán)境控制元件、小型計(jì)算機(jī)、大型機(jī)等。因此,圖7給出了其中可實(shí)現(xiàn)本發(fā)明的適合的計(jì)算系統(tǒng)環(huán)境100的一個(gè)例子,雖 然如上所述可以清楚了解的,計(jì)算系統(tǒng)IOO僅是適合的計(jì)算環(huán)境的一個(gè)例子,并且不 旨在暗示著對(duì)本發(fā)明的使用范圍或功能的任何限制。計(jì)算環(huán)境IOO也不應(yīng)被解釋為具 有與示例的操作環(huán)境100中示出的組件中的任意一個(gè)或其組合相關(guān)的任何依賴性或要 求。參考圖7,用于實(shí)現(xiàn)本發(fā)明的示例性系統(tǒng)包括計(jì)算機(jī)110形式的通用計(jì)算設(shè)備。 計(jì)算機(jī)110的組件可以包括但不限于處理單元120、系統(tǒng)存儲(chǔ)器130和系統(tǒng)總線121, 系統(tǒng)總線121將包括系統(tǒng)存儲(chǔ)器在內(nèi)的各種系統(tǒng)組件耦合到處理單元120。系統(tǒng)總線 121可以是多種總線結(jié)構(gòu)中的任意一種,包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線 和使用多種總線體系結(jié)構(gòu)中的任何一種的局部總線。作為例子而不是限制,這種體系 結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、增強(qiáng)ISA (EISA)總線、視頻電子技術(shù)標(biāo)準(zhǔn)協(xié)會(huì)(VESA)局部總線和外圍組件互連(PCI)總 線(也被稱為Mezzanine總線)。計(jì)算機(jī)IIO典型地包括各種計(jì)算機(jī)可讀介質(zhì)。計(jì)算機(jī)可讀介質(zhì)可以是可由計(jì)算機(jī) 110訪問的任何可用介質(zhì),并且包括易失和非易失介質(zhì),可移動(dòng)和非可移動(dòng)介質(zhì)。作 為例子而不是限制,計(jì)算機(jī)可讀介質(zhì)可以包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存 儲(chǔ)介質(zhì)包括以用于存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的信息 的任何方法或技術(shù)實(shí)現(xiàn)的易失和非易失介質(zhì),可移動(dòng)和非可移動(dòng)介質(zhì)。計(jì)算機(jī)存儲(chǔ)介 質(zhì)包括,但是不限于,RAM、 ROM、 EEPROM、閃存或其它存儲(chǔ)器技術(shù)、CDROM、 數(shù)字多功能盤(DVD)或其它光盤存儲(chǔ)、盒式磁帶、磁帶、磁盤存儲(chǔ)或其它磁存儲(chǔ)設(shè) 備,或可以被用于存儲(chǔ)所希望的信息并且可以由計(jì)算機(jī)110訪問的任何其它介質(zhì)。通 信介質(zhì)典型地包括已調(diào)制數(shù)據(jù)信號(hào)(諸如載波或其它傳輸機(jī)制)形式的計(jì)算機(jī)可讀指 令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),并且包括任意的信息傳遞介質(zhì)。術(shù)語"已調(diào)制 數(shù)據(jù)信號(hào)"的含義是它的一個(gè)或多個(gè)特征以在信號(hào)中對(duì)信息進(jìn)行編碼的方式被設(shè)置或 改變的信號(hào)。作為例子,并且不是限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接連線連接 的有線介質(zhì),和諸如聲學(xué)、RF、紅外線或其它無線介質(zhì)的無線介質(zhì)。上面所述的任何 的組合也應(yīng)被包括在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。系統(tǒng)存儲(chǔ)器130包括諸如只讀存儲(chǔ)器(ROM) 131和隨機(jī)訪問存儲(chǔ)器(RAM) 132 的易失和非易失存儲(chǔ)器形式的計(jì)算機(jī)存儲(chǔ)介質(zhì)。包含(諸如在啟動(dòng)過程中)幫助在計(jì) 算機(jī)110內(nèi)的元件之間傳遞信息的基本例程的基本輸入/輸出系統(tǒng)133 (BIOS)典型地 被存儲(chǔ)在ROM 131中。RAM 132典型地包含可以立即由處理單元120訪問的和/或當(dāng) 前正由處理單元120處理的數(shù)據(jù)和/或程序模塊。作為例子但不是限制,圖7示出了操 作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。計(jì)算機(jī)110還可以包括其它的可移動(dòng)/不可移動(dòng),易失/非易失的計(jì)算機(jī)存儲(chǔ)介質(zhì)。 僅作為例子,圖8示出了從不可移動(dòng)、非易失磁介質(zhì)讀或向其寫的硬盤驅(qū)動(dòng)器141,從可移動(dòng)、非易失磁盤152讀或向其寫的磁盤驅(qū)動(dòng)器151,以及從可移動(dòng)、非易失光 盤156諸如CD-RW、 DVD-RW或其它光學(xué)介質(zhì)讀或向其寫的光盤驅(qū)動(dòng)器155??梢?被用于該示例性操作環(huán)境中的其它可移動(dòng)/不可移動(dòng)、易失/非易失計(jì)算機(jī)存儲(chǔ)介質(zhì)包 括,但是不限于,磁帶、盒式磁帶、閃存卡、數(shù)字多功能盤、數(shù)字視頻帶、固態(tài)RAM、 固態(tài)ROM等。硬盤驅(qū)動(dòng)器141通常通過不可移動(dòng)存儲(chǔ)器接口,諸如接口140連接到 系統(tǒng)總線121,而磁盤驅(qū)動(dòng)器151和光盤驅(qū)動(dòng)器155通常通過可移動(dòng)存儲(chǔ)器接口,諸 如接口 150連接到系統(tǒng)總線121。上面討論并且在圖7中示出的驅(qū)動(dòng)器和它們相關(guān)聯(lián)的計(jì)算機(jī)存儲(chǔ)介質(zhì)為計(jì)算機(jī) 110提供了計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲(chǔ)。在圖7中,例 如,硬盤驅(qū)動(dòng)器141被示出為存儲(chǔ)操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146 和程序數(shù)據(jù)147。注意這些組件可以與操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136 和程序數(shù)據(jù)137相同或不同。此處給予操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊 146和程序數(shù)據(jù)147不同的標(biāo)號(hào)以便示出,至少它們是不同的副本。用戶可以通過輸 入設(shè)備,諸如鍵盤162和定位設(shè)備161 (諸如鼠標(biāo)、軌跡球或觸摸墊)向計(jì)算機(jī)110 輸入命令和信息。其它輸入設(shè)備(沒有示出)可以包括麥克風(fēng)、游戲桿、游戲墊、圓 盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設(shè)備通常被通過耦合到系統(tǒng)總線121的用 戶輸入接口 160連接到處理單元120,但是也可以通過其它接口和總線結(jié)構(gòu)連接,諸 如并行端口、游戲端口或通用串行總線(USB)。 一個(gè)或多個(gè)圖形處理單元(GPU) 184可以與圖形接口 182通信。監(jiān)視器191或其它類型的顯示設(shè)備也可以通過諸如視 頻接口 190的接口連接到系統(tǒng)總線121,所述接口進(jìn)而與視頻存儲(chǔ)器186通信。除了 監(jiān)視器191之外,計(jì)算機(jī)還可以包括其它的外圍^^出設(shè)備,諸如揚(yáng)聲器197、打印機(jī) 196,它們可以通過輸出外部接口 195連接。使用到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī),諸如遠(yuǎn)程計(jì)算機(jī)180的邏輯連接,計(jì)算機(jī)110可 以在聯(lián)網(wǎng)的或分布式環(huán)境中運(yùn)行。遠(yuǎn)程計(jì)算機(jī)180可以是個(gè)人計(jì)算機(jī)、服務(wù)器、路由 器、網(wǎng)絡(luò)PC、對(duì)等設(shè)備或其它的普通網(wǎng)絡(luò)節(jié)點(diǎn),并且通常包括上面關(guān)于計(jì)算機(jī)110 所描述的許多或全部元件,雖然在圖7中僅示出了存儲(chǔ)器存儲(chǔ)設(shè)備181。圖7中給出 的邏輯連接包括局域網(wǎng)(LAN) 171和廣域網(wǎng)(WAN) 173,但是還可以包括其它網(wǎng) 絡(luò)/總線。這種聯(lián)網(wǎng)環(huán)境在家庭、辦公室、企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是 常見的。當(dāng)用于LAN聯(lián)網(wǎng)環(huán)境中時(shí),計(jì)算機(jī)110通過網(wǎng)絡(luò)接口或適配器170連接到LAN171。當(dāng)用于WAN聯(lián)網(wǎng)環(huán)境中時(shí),計(jì)算機(jī)110通常包括調(diào)制解調(diào)器172或用于通過 WAN173 (諸如因特網(wǎng))建立連接的其它裝置。調(diào)制解調(diào)器172 (可以是內(nèi)置的或外 置的)可以通過用戶輸入接口 160或其它適合的機(jī)制連接到系統(tǒng)總線121。在聯(lián)網(wǎng)的 環(huán)境中,就計(jì)算機(jī)110給出的程序模塊或其部分可以存儲(chǔ)在遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備內(nèi)。 作為例子,但是不是限制,圖7示出了駐留在存儲(chǔ)器設(shè)備181上的遠(yuǎn)程應(yīng)用程序185。 應(yīng)當(dāng)理解,示出的網(wǎng)絡(luò)通信是示例性的,并且可以使用在計(jì)算機(jī)之間建立通信鏈路的 其它裝置。結(jié)論因此,己經(jīng)公開了用于存儲(chǔ)平臺(tái)中的鎖定和隔離的系統(tǒng)和方法。用于文件系統(tǒng)操 作的共享模型與用于查詢語言語句的事務(wù)和鎖定模型統(tǒng)一在一起,以便提供用于存儲(chǔ)平臺(tái)中的鎖定和隔離的總體框架。此外,為文件系統(tǒng)操作提供了事務(wù)支持,從而它們 可以在事務(wù)環(huán)境中執(zhí)行。因此,單個(gè)事務(wù)處理可以包括單個(gè)文件系統(tǒng)語句、單個(gè)査詢 語言語句、多個(gè)系統(tǒng)語句、多個(gè)查詢語言語句以及文件系統(tǒng)和查詢語言語句的組合。 此外,提供了對(duì)非事務(wù)處理文件系統(tǒng)語句的支持,從而文件系統(tǒng)語句不必在事務(wù)環(huán)境 中執(zhí)行。雖然已經(jīng)以各附圖的優(yōu)選實(shí)施例描述了本發(fā)明,應(yīng)當(dāng)理解,可以使用其它類似的 實(shí)施例,或?qū)λ龅膶?shí)施例進(jìn)行修改和添加,以便執(zhí)行本發(fā)明相同的功能,而不脫離 本發(fā)明。因此,本發(fā)明不應(yīng)被限于任意的單個(gè)實(shí)施例,而是應(yīng)當(dāng)被解釋為在所附權(quán)利 要求的寬度和范圍內(nèi)。
            權(quán)利要求
            1.一種用于文件系統(tǒng)語句的鎖定和隔離的方法,所述方法包括接收文件系統(tǒng)語句,所述文件系統(tǒng)語句包括對(duì)打開項(xiàng)目的調(diào)用、對(duì)從項(xiàng)目讀的調(diào)用、以及對(duì)關(guān)閉項(xiàng)目的調(diào)用,所述文件系統(tǒng)語句與采用數(shù)據(jù)庫(kù)的查詢語言的任何數(shù)據(jù)庫(kù)命令無關(guān);響應(yīng)于接收所述與任何數(shù)據(jù)庫(kù)應(yīng)用程序接口請(qǐng)求無關(guān)的文件系統(tǒng)語句,確定讀鎖對(duì)于對(duì)應(yīng)于所述項(xiàng)目的數(shù)據(jù)表的行是否可用;如果讀鎖對(duì)于對(duì)應(yīng)于所述項(xiàng)目的數(shù)據(jù)表的行不可用,則使所述打開失?。灰约叭绻x鎖對(duì)于對(duì)應(yīng)于所述項(xiàng)目的數(shù)據(jù)表的行可用,則獲得所述行上的讀鎖。
            2. 如權(quán)利要求1所述的方法,其特征在于,包括確定所述讀鎖對(duì)于包括相應(yīng)于所 述項(xiàng)目的用戶定義類型的數(shù)據(jù)表的行是否可用。
            3. 如權(quán)利要求1所述的方法,其特征在于,獲得所述行上的讀鎖包括獲得所述行 的讀已提交視圖。
            4. 如權(quán)利要求1所述的方法,其特征在于,包括獲得所述行的文件流字段上的讀鎖。
            5. —種用于文件系統(tǒng)語句的鎖定和隔離的方法,所述方法包括-接收文件系統(tǒng)語句,所述文件系統(tǒng)語句包括對(duì)打開項(xiàng)目的調(diào)用、對(duì)寫到項(xiàng)目的調(diào)用、以及對(duì)關(guān)閉項(xiàng)目的調(diào)用,所述文件系統(tǒng)語句與采用數(shù)據(jù)庫(kù)的查詢語言的任何數(shù)據(jù) 庫(kù)命令無關(guān);響應(yīng)于接收所述與任何數(shù)據(jù)庫(kù)應(yīng)用程序接口請(qǐng)求無關(guān)的文件系統(tǒng)語句,確定寫鎖 對(duì)于對(duì)應(yīng)于所述項(xiàng)目的數(shù)據(jù)表的行是否可用;如果寫鎖對(duì)于對(duì)應(yīng)于所述項(xiàng)目的數(shù)據(jù)表的行不可用,則使所述打開失?。灰约?如果寫鎖對(duì)于對(duì)應(yīng)于所述項(xiàng)目的數(shù)據(jù)表的行可用,則獲得所述行上的寫鎖。
            6. 如權(quán)利要求5所述的方法,其特征在于,包括確定所述寫鎖對(duì)于包括對(duì)應(yīng)于所 述項(xiàng)目的用戶定義類型的數(shù)據(jù)表的行是否可用。
            7. 如權(quán)利要求5所述的方法,其特征在于,獲得所述行上的寫鎖包括獲得在所述 語句被處理時(shí)防止另一語句訪問所述行的寫鎖。
            8. 如權(quán)利要求5所述的方法,其特征在于,包括通過獲得所述行的文件流字段上 的寫鎖啟動(dòng)所述事務(wù)。
            全文摘要
            用于文件系統(tǒng)操作的共享模型與查詢語言語句的事務(wù)和鎖定模型統(tǒng)一在一起,以便提供用于存儲(chǔ)平臺(tái)中的鎖定和隔離的總體框架。此外,為文件系統(tǒng)操作提供了事務(wù)支持,從而它們可以在事務(wù)環(huán)境中執(zhí)行。因此,單個(gè)事務(wù)處理可以包括單個(gè)文件系統(tǒng)語句、單個(gè)查詢語言語句、多個(gè)系統(tǒng)語句、多個(gè)查詢語言語句以及文件系統(tǒng)和查詢語言語句的組合。此外,提供了對(duì)非事務(wù)處理文件系統(tǒng)語句的支持,從而文件系統(tǒng)語句不必在事務(wù)環(huán)境中執(zhí)行。
            文檔編號(hào)G06F17/30GK101266617SQ20081009587
            公開日2008年9月17日 申請(qǐng)日期2004年7月29日 優(yōu)先權(quán)日2004年3月10日
            發(fā)明者B·S·拉曼, R·B·拉杰弗 申請(qǐng)人:微軟公司
            網(wǎng)友詢問留言 已有0條留言
            • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品