两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

數(shù)據(jù)存儲(chǔ)系統(tǒng)中的業(yè)務(wù)工作量標(biāo)識(shí)的制作方法

文檔序號(hào):6476849閱讀:293來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):數(shù)據(jù)存儲(chǔ)系統(tǒng)中的業(yè)務(wù)工作量標(biāo)識(shí)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)存儲(chǔ)系統(tǒng),更具體地說(shuō)涉及被配置為根據(jù)所擁有 的應(yīng)用程序的寫(xiě)I/O把主機(jī)所提供的數(shù)據(jù)寫(xiě)入到數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù) 存儲(chǔ)系統(tǒng)。
背景技術(shù)
數(shù)據(jù)存儲(chǔ)系統(tǒng)提供了對(duì)來(lái)自主機(jī)的數(shù)據(jù)的存儲(chǔ),其對(duì)于能夠把數(shù) 據(jù)從主機(jī)刪除是足夠可靠的。數(shù)據(jù)存儲(chǔ)的可靠性往往通過(guò)在初級(jí)存儲(chǔ) 器和次級(jí)存儲(chǔ)器處復(fù)制數(shù)據(jù)JMf以增強(qiáng)。例如,IBM DS8000支持 諸如在所并入的美國(guó)專(zhuān)利No. 5734818中討論的異步數(shù)據(jù)復(fù)制功能, 其包括為初級(jí)數(shù)據(jù)存儲(chǔ)器和次級(jí)數(shù)據(jù)存儲(chǔ)器提供數(shù)據(jù)所需的數(shù)據(jù)傳 輸。這種數(shù)據(jù)傳輸可以被記錄為日志,從而以來(lái)自數(shù)據(jù)轉(zhuǎn)發(fā)中的已知 時(shí)刻的1/0—致性有效地重新創(chuàng)建數(shù)據(jù)。這些日志可以被備份,從而 能夠在由備份版本所覆蓋的任意時(shí)刻恢復(fù)部分或全部數(shù)據(jù)。
客戶(hù)可能希望對(duì)數(shù)據(jù)缺損事件進(jìn)行辯證分析,或者希望針對(duì)哪個(gè) 應(yīng)用程序何時(shí)更新了哪些數(shù)據(jù)進(jìn)行安全審核。

發(fā)明內(nèi)容
方法和計(jì)算機(jī)程序產(chǎn)品例如提供了作為曰志記錄的信息,其可以用來(lái)對(duì)數(shù)據(jù)缺損事件進(jìn)行辯證分析或者執(zhí)行安全審核等。這樣的數(shù)據(jù) 存儲(chǔ)系統(tǒng)可包括一個(gè)或多個(gè)數(shù)據(jù)存儲(chǔ)控制系統(tǒng),以及被設(shè)置為初級(jí)和 /或次級(jí)數(shù)據(jù)存儲(chǔ)器的設(shè)備。
在一個(gè)實(shí)施例中,一種數(shù)據(jù)存儲(chǔ)系統(tǒng)被配置為根據(jù)所擁有的應(yīng)用
程序的寫(xiě)1/0把主機(jī)所提供的數(shù)據(jù)寫(xiě)入到數(shù)據(jù)存儲(chǔ)器中,并包括被配 置為根據(jù)所擁有的應(yīng)用程序的寫(xiě)1/0指導(dǎo)對(duì)所提供的數(shù)據(jù)的處理的工 作量管理器,被配置為提供用子描述所述寫(xiě)I/O的業(yè)務(wù)工作量標(biāo)識(shí),
包括被配置為把業(yè)務(wù)工作量標(biāo)識(shí)加到針對(duì)數(shù)據(jù)的記錄集信息中的至 少一個(gè)存儲(chǔ)子系統(tǒng),并包括被配置為把來(lái)自所述記錄集信息的信息、 包括所述業(yè)務(wù)工作量標(biāo)識(shí)存儲(chǔ)到日志中的日志管理系統(tǒng)。
在另一個(gè)實(shí)施例中,所述存儲(chǔ)子系統(tǒng)被配置為把所述業(yè)務(wù)工作量 標(biāo)識(shí)添加到讀記錄集前綴中,并且所述日志管理系統(tǒng)被配置為把來(lái)自 所述讀記錄集前綴的信息提供給所述日志。
在另 一個(gè)實(shí)施例中,所述工作量管理器被配置為針對(duì)定義的擴(kuò)展
ccw提供業(yè)務(wù)工作量標(biāo)識(shí),所述定義的擴(kuò)展ccw提供了針對(duì)所述
讀記錄集前綴的業(yè)務(wù)工作量標(biāo)識(shí)。
在另一個(gè)實(shí)施例中,所述工作量管理器被配置為針對(duì)前綴ccw 提供業(yè)務(wù)工作量標(biāo)識(shí),所述前綴ccw提供了針對(duì)所述讀記錄集前綴 的業(yè)務(wù)工作量標(biāo)識(shí)。
在另一個(gè)實(shí)施例中,所述業(yè)務(wù)工作量標(biāo)識(shí)包括針對(duì)由主機(jī)所定義 的所擁有的應(yīng)用程序的業(yè)務(wù)類(lèi)。
在另一個(gè)實(shí)施例中,所述業(yè)務(wù)類(lèi)包括i/o優(yōu)先級(jí)信息,并且其中
所述工作量管理器被配置為選擇所述業(yè)務(wù)類(lèi)的I/O優(yōu)先級(jí)信息。


下面將僅以示例的方式,參照附圖來(lái)描述本發(fā)明的實(shí)施例,圖中
圖l是示出了能夠?qū)崿F(xiàn)本發(fā)明的數(shù)據(jù)存儲(chǔ)系統(tǒng)和主機(jī)的框圖2是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的帶有業(yè)務(wù)工作量標(biāo)識(shí)
的讀記錄集的前綴頭的數(shù)據(jù)格式圖;圖3是示出了描述根據(jù)本發(fā)明的一個(gè)實(shí)施例的帶有業(yè)務(wù)工作量 標(biāo)識(shí)的讀記錄集的字段的數(shù)據(jù)格式圖4是示出了用于實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)存儲(chǔ)系統(tǒng)和主機(jī)系統(tǒng)的一 個(gè)替代實(shí)施例的框圖;以及
圖5是示出了描述實(shí)現(xiàn)本發(fā)明的功能的流程圖。
具體實(shí)施例方式
在下面的說(shuō)明中參照附圖,以?xún)?yōu)選的實(shí)施例來(lái)描述本發(fā)明,附圖 中類(lèi)似的附圖標(biāo)記代表相同或類(lèi)似的單元。盡管以用于實(shí)現(xiàn)本發(fā)明的 目的的最佳實(shí)施方式來(lái)描述本發(fā)明,但本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,在 此指導(dǎo)下可以做出多種改動(dòng),而不背離本發(fā)明的主旨或保護(hù)范圍。
參照?qǐng)D1,示出了與主機(jī)系統(tǒng)12相連的數(shù)據(jù)存儲(chǔ)系統(tǒng)10。典型 地,可包括一個(gè)或多個(gè)主處理器并可包括網(wǎng)絡(luò)的主機(jī)系統(tǒng)12包含應(yīng) 用程序30 ,所述應(yīng)用程序30生成要由數(shù)據(jù)存儲(chǔ)系統(tǒng)10所保存的數(shù)據(jù)。 所述數(shù)據(jù)存儲(chǔ)系統(tǒng)例如包括具有至少一個(gè)子系統(tǒng)控制器18的存儲(chǔ)控 制系統(tǒng)15和多個(gè)驅(qū)動(dòng)設(shè)備16,所述驅(qū)動(dòng)設(shè)備如磁盤(pán)驅(qū)動(dòng)器,例如為 RAID (獨(dú)立磁盤(pán)冗余陣列)或JBOD (簡(jiǎn)單磁盤(pán)簇)的形式。存儲(chǔ) 控制系統(tǒng)15也可以和例如為自動(dòng)數(shù)據(jù)存儲(chǔ)庫(kù)的形式的諸如磁帶或光 盤(pán)17的長(zhǎng)期存儲(chǔ)i殳備進(jìn)行通信??筛鸨景l(fā)明工作的存儲(chǔ)控制系統(tǒng) 15的一個(gè)例子包括IBM⑧DS8000。
存儲(chǔ)系統(tǒng)IO結(jié)合了工作量管理器(WLM) 20、 20A,所述工作 量管理器被配置為指導(dǎo)對(duì)所提供的數(shù)據(jù)的處理以便于存儲(chǔ)。工作量管 理器20、 20A可以駐留在存儲(chǔ)控制系統(tǒng)15或主才幾系統(tǒng)12中,或者同 時(shí)駐留在這兩者中。存儲(chǔ)系統(tǒng)10包括用于臨時(shí)存儲(chǔ)數(shù)據(jù)和在存儲(chǔ)系 統(tǒng)操作時(shí)所使用的信息的高速緩存21。高速緩存也可以包括磁盤(pán)存儲(chǔ) 器,或者可以包括存儲(chǔ)子系統(tǒng)16的一部分。在一個(gè)實(shí)施例中,工作 量管理器20A包括主機(jī)系統(tǒng)12的操作系統(tǒng)(O/S) 23的一個(gè)組件, 以及一個(gè)I/0子系統(tǒng)(IOS)組件24。在一個(gè)替代實(shí)施例中,工作量 管理器20包括存儲(chǔ)控制系統(tǒng)15的至少一個(gè)處理器的操作系統(tǒng)43的
6一個(gè)組件,以及一個(gè)I/0子系統(tǒng)組件44。
工作量管理器20和存儲(chǔ)控制系統(tǒng)的子系統(tǒng)控制器18可分別或共 同包括程序代碼和任意適當(dāng)?shù)倪壿?、微處理器、以及用于?duì)程序代碼 做出響應(yīng)的相關(guān)聯(lián)的內(nèi)存和/或數(shù)據(jù)存儲(chǔ)器,并且所述相關(guān)聯(lián)的內(nèi)存和 /或數(shù)據(jù)存儲(chǔ)器可包括固定或可重寫(xiě)的內(nèi)存或數(shù)據(jù)存儲(chǔ)設(shè)備。工作量管 理器20可包括存儲(chǔ)系統(tǒng)10的程序代碼內(nèi)的程序代碼,或者可包括由 存儲(chǔ)系統(tǒng)10所使用的應(yīng)用程序。該程序代碼例如可以通過(guò)從例如位 于操作員面板22或存儲(chǔ)系統(tǒng)10的驅(qū)動(dòng)器處的光盤(pán)或軟盤(pán)的輸入,或 者通過(guò)從例如位于驅(qū)動(dòng)設(shè)備17處的盒式磁帶讀取,或者從例如經(jīng)由 主機(jī)系統(tǒng)12的網(wǎng)絡(luò),或者通過(guò)其它適當(dāng)?shù)难b置,從數(shù)據(jù)存儲(chǔ)設(shè)備或 內(nèi)存被直接提供給存儲(chǔ)系統(tǒng)。工作量管理器20可以在物理上位于主 機(jī)系統(tǒng)12、存儲(chǔ)控制系統(tǒng)15或者數(shù)據(jù)存儲(chǔ)系統(tǒng)10中的任意位置處, 或者分布在數(shù)據(jù)存儲(chǔ)系統(tǒng)中。
數(shù)據(jù)存儲(chǔ)系統(tǒng)IO可包括初級(jí)站和次級(jí)站,例如,主才幾系統(tǒng)12、 帶有驅(qū)動(dòng)設(shè)備16的存儲(chǔ)控制系統(tǒng)15包括初級(jí)站,而帶有子系統(tǒng)控制 器28和驅(qū)動(dòng)設(shè)備26的存儲(chǔ)控制系統(tǒng)25包括次級(jí)站。因而數(shù)據(jù)存儲(chǔ) 系統(tǒng)能夠在初級(jí).站處提供數(shù)據(jù)存儲(chǔ),而屏蔽次級(jí)站處的數(shù)據(jù),異步傳 輸數(shù)據(jù),使用存儲(chǔ)數(shù)據(jù)搬移器29以形成一致性組,如在所并入的專(zhuān) 利No. 5734818中所描述的。 "
在所并入的專(zhuān)利No. 5734818中,初級(jí)站處的應(yīng)用程序30生成 記錄更新,而例如遠(yuǎn)離初級(jí)站的次級(jí)站屏蔽記錄更新。數(shù)據(jù)存儲(chǔ)系統(tǒng) 10包括綜合體(sysplex )定時(shí)器,用于根據(jù)初級(jí)站中的處理進(jìn)行時(shí)間 同步。初級(jí)存儲(chǔ)控制系統(tǒng)15對(duì)用于記錄更新的寫(xiě)1/0操作做出響應(yīng), 并針對(duì)每個(gè)記錄更新向初級(jí)存儲(chǔ)子系統(tǒng)16執(zhí)行寫(xiě)I/O操作,所述寫(xiě) I/O操作與綜合體定時(shí)器同步。初級(jí)存儲(chǔ)子系統(tǒng)16相應(yīng)地接受該寫(xiě)I/O 操作并存儲(chǔ)數(shù)據(jù)。
初級(jí)子系統(tǒng)控制器18發(fā)現(xiàn)某個(gè)寫(xiě)I/O操作指向也存儲(chǔ)在次級(jí)站 的一個(gè)巻,并用其高速緩存21中的特定存儲(chǔ)信息構(gòu)造一個(gè)讀記錄集 前綴。因而該子系統(tǒng)控制器收集針對(duì)每個(gè)記錄更新的記錄集信息,并把一個(gè)前綴頭附到預(yù)定的一組記錄集信息上。該前綴頭和這組預(yù)定的記錄集信息形成自描述記錄集,包括數(shù)據(jù)更新。
該記錄集信息中包括記錄更新序列號(hào)和記錄更新時(shí)間等。該前綴頭中包括操作時(shí)間戳、時(shí)間間隔組號(hào)和記錄讀取時(shí)間等。
存儲(chǔ)數(shù)據(jù)搬移器29從子系統(tǒng)控制器18讀取RRS,并形成一致性組,這些一致性組被寫(xiě)入到一個(gè)例如存儲(chǔ)在高速緩存21中的日志中。所述一致性組是一段短時(shí)間周期內(nèi)的所有I/O。重要的是保持跨巻和跨存儲(chǔ)控制系統(tǒng)的數(shù)據(jù)一致性。記錄集經(jīng)由通信鏈路35被傳送到次級(jí)存儲(chǔ)控制系統(tǒng)25,該次級(jí)存儲(chǔ)控制系統(tǒng)25對(duì)來(lái)自每個(gè)一致性組的記錄更新進(jìn)行排序,以便以和把記錄更新寫(xiě)入到初級(jí)存儲(chǔ)控制系統(tǒng)15時(shí)的次序相同的次序?qū)懭氲酱渭?jí)存儲(chǔ)控制系統(tǒng)25。
在所并入的專(zhuān)利No. 5734818的一個(gè)實(shí)施例中,存儲(chǔ)數(shù)據(jù)搬移器29為每個(gè)自描述記錄創(chuàng)建一個(gè)日志記錄,包括前綴頭。該日志記錄可以被傳送到次級(jí)存儲(chǔ)控制系統(tǒng)25,所使用的信息形成了一致性組,并控制記錄更新向次級(jí)存儲(chǔ)子系統(tǒng)26的寫(xiě)入。"
參照?qǐng)D1、 2和3,在本發(fā)明的一個(gè)實(shí)施例中,數(shù)據(jù)存儲(chǔ)系統(tǒng)IO被配置為根據(jù)所擁有的應(yīng)用程序30的寫(xiě)1/0把主機(jī)12所提供的數(shù)據(jù)寫(xiě)入到數(shù)據(jù)存儲(chǔ)器。應(yīng)用程序的例子可包括會(huì)計(jì)、薪金簿、信息管理和數(shù)據(jù)庫(kù)應(yīng)用程序等。數(shù)據(jù)存儲(chǔ)器可包括單一設(shè)備、帶有多個(gè)存儲(chǔ)設(shè)備的單一站點(diǎn)、帶有多個(gè)存儲(chǔ)系統(tǒng)的單一站點(diǎn)、如圖l所示的初級(jí)站和次級(jí)站、或者初級(jí)和多個(gè)次級(jí)站點(diǎn)。
本發(fā)明包括用于提供日志信息的數(shù)據(jù)存儲(chǔ)系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品,所述日志信息例如可用于對(duì)數(shù)據(jù)缺損事件進(jìn)行辯證分析或者執(zhí)行安全審核等,其中I/O的擁有應(yīng)用程序被識(shí)別。
工作量管理器20被配置為根據(jù)擁有應(yīng)用程序30的寫(xiě)I/O針對(duì)數(shù)據(jù)存儲(chǔ)系統(tǒng)執(zhí)行對(duì)所提供的數(shù)據(jù)的處理。工作量管理器20可駐留在存儲(chǔ)控制系統(tǒng)15、主機(jī)12 (如附圖標(biāo)記20A所示)或者這兩者中,這里考慮包括數(shù)據(jù)存儲(chǔ)系統(tǒng)10的一個(gè)元件。其中,工作量管理器既可以用20來(lái)表示,或者也可以用20A來(lái)表示。存儲(chǔ)控制系統(tǒng)15,皮配置為向存儲(chǔ)設(shè)備16存儲(chǔ)數(shù)據(jù),并且存儲(chǔ)控制系統(tǒng)25被配置為向存儲(chǔ) 設(shè)備26存儲(chǔ)數(shù)據(jù)。本發(fā)明可采用完全軟件實(shí)現(xiàn)的方式、完全硬件實(shí) 現(xiàn)的方式、或者既包含硬件單元也包括軟件單元的方式。在優(yōu)選的實(shí) 施例中,本發(fā)明以軟件來(lái)實(shí)現(xiàn),其包括但不限于駐留軟件、固件、微 代碼等。此外,本發(fā)明也可采用能夠從計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì) 訪(fǎng)問(wèn)的計(jì)算機(jī)程序產(chǎn)品的形式,所述計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)提 供由計(jì)算機(jī)或任意指令執(zhí)行系統(tǒng)使用或與之關(guān)聯(lián)使用的程序代碼。為 了說(shuō)明的目的,計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)可以是能夠容納、存儲(chǔ)、 傳輸、傳播或傳遞由指令執(zhí)行系統(tǒng)、設(shè)備或裝置使用或與之關(guān)聯(lián)使用 的程序代碼的任意設(shè)備。
所述介質(zhì)可以是電子、磁、電磁、紅外或半導(dǎo)體系統(tǒng)(或者設(shè)備 或裝置)或可傳播的介質(zhì)。計(jì)算機(jī)可讀介質(zhì)的例子包括半導(dǎo)體或固態(tài) 存儲(chǔ)器、磁帶、可移動(dòng)計(jì)算機(jī)磁盤(pán)、隨機(jī)訪(fǎng)問(wèn)存儲(chǔ)器(RAM)、只讀 存儲(chǔ)器(ROM)、剛性磁盤(pán)和光盤(pán)。光盤(pán)的當(dāng)前例子包括緊湊盤(pán)-只 讀存儲(chǔ)器(CD-ROM)、緊湊盤(pán)-讀/寫(xiě)(CD-R/W)和DVD。
適用于存儲(chǔ)和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)包括通過(guò)系統(tǒng)總 線(xiàn)與存儲(chǔ)單元直接或間接耦合的至少一個(gè)處理器。所述存儲(chǔ)單元可包
括在程序代碼實(shí)際執(zhí)行期間所采用的本地存儲(chǔ)器、海量存儲(chǔ)器以及高
速緩存存儲(chǔ)器,所述高速緩存存儲(chǔ)器提供對(duì)至少 一 些程序代碼的臨時(shí)
存儲(chǔ),以減少執(zhí)行期間從海量存儲(chǔ)器取回代碼所需的次數(shù)。網(wǎng)絡(luò)適配
器可連接到系統(tǒng),使數(shù)據(jù)處理系統(tǒng)能夠通過(guò)中間的私有或公共網(wǎng)絡(luò)耦
合到其它數(shù)據(jù)處理系統(tǒng)或遠(yuǎn)程設(shè)備。調(diào)制解調(diào)器、纜線(xiàn)調(diào)制解調(diào)器或
以太網(wǎng)卡僅僅是一些目前可用的網(wǎng)絡(luò)適配器類(lèi)型。
客戶(hù)經(jīng)由主機(jī)12規(guī)定哪些應(yīng)用程序(工作量)30凈皮分配給哪類(lèi)
業(yè)務(wù)。 一類(lèi)業(yè)務(wù)指定可包含或包括I/0優(yōu)先級(jí)。例如,IBM⑧zOS計(jì)
算機(jī)操作系統(tǒng)允許客戶(hù)最初為每個(gè)應(yīng)用程序定義業(yè)務(wù)類(lèi),它通過(guò)工作
量管理器20被分配給工作量。目前有幾百個(gè)對(duì)于每個(gè)所管理的系統(tǒng)
可用的獨(dú)特類(lèi)。在業(yè)務(wù)類(lèi)中定義的是i/o優(yōu)先級(jí),它針對(duì)該業(yè)務(wù)類(lèi)被
提供給每個(gè)I/O操作。該業(yè)務(wù)類(lèi)可反映出客戶(hù)在工作量基礎(chǔ)上對(duì)工作量所規(guī)定的相對(duì)業(yè)務(wù)優(yōu)先級(jí)。這里,業(yè)務(wù)類(lèi)或i/o優(yōu)先級(jí)、或者任何
類(lèi)似的指定被稱(chēng)為"業(yè)務(wù)工作量標(biāo)識(shí)"。
工作量管理器20包括通過(guò)I/O鏈所代表的業(yè)務(wù)類(lèi)跟蹤和管理工
作量的基礎(chǔ)結(jié)構(gòu),作為結(jié)果,它能夠以與其提供針對(duì)工作量的i/o優(yōu)
先級(jí)類(lèi)似的方式在寫(xiě)入鏈中提供信息。工作信息的結(jié)果單元通過(guò)操作 系統(tǒng)功能/中間件被預(yù)留,使得當(dāng)1/0被執(zhí)行時(shí),客戶(hù)先前針對(duì)該工作 量所定義的I/O優(yōu)先級(jí)通過(guò)I/O被發(fā)送。
工作量管理器20被配置為提供描述由I/O子系統(tǒng)24、 44所使用 的寫(xiě)1/0的業(yè)務(wù)工作量標(biāo)識(shí)。工作量管理器被配置為對(duì)一個(gè)要傳遞給 數(shù)據(jù)存儲(chǔ)系統(tǒng)的工作單元所代表的所有I/O提供業(yè)務(wù)工作量標(biāo)識(shí)。
I/O子系統(tǒng)24、 44從工作量管理器訪(fǎng)問(wèn)業(yè)務(wù)工作量標(biāo)識(shí)(以及 其他信息),并經(jīng)由信道命令字(CCW)或等同物把業(yè)務(wù)工作量標(biāo) 識(shí)提供給存儲(chǔ)子系統(tǒng)控制器18。 CCW的例子是定義擴(kuò)展CCW或前 綴CCW。例如,所創(chuàng)建的定義擴(kuò)展CCW被更改,以提供包括業(yè)務(wù) 工作量標(biāo)識(shí)的某些附加信息,并被添加到寫(xiě)i/o鏈。作為替代,生成 一個(gè)前綴I/0,其包括業(yè)務(wù)工作量標(biāo)識(shí),并被添加到寫(xiě)i/o鏈。這里, CCW被認(rèn)為是通過(guò)工作量管理器"提供",而不考慮CCW的最初來(lái) 源。
參照?qǐng)D2,存儲(chǔ)子系統(tǒng)控制器18識(shí)別出所引用的I/O才募向一個(gè) 巻,該巻將被或者不被存儲(chǔ)到初級(jí)站和次級(jí)站這兩者中(被認(rèn)為是 "XRC"或者擴(kuò)展遠(yuǎn)程拷貝),并如上所述利用其高速緩存21中的特 定存儲(chǔ)信息構(gòu)造一個(gè)讀記錄集前綴500。包括在讀記錄集前綴中的是 由工作量管理器20所提供的業(yè)務(wù)工作量標(biāo)識(shí)100。前綴頭500的其余 部分由所并入的專(zhuān)利No. 5734818加以解釋?zhuān)渑c每個(gè)自描述記錄集 的格式有關(guān)。前綴頭可包括一個(gè)用于描述前綴頭500的總長(zhǎng)的總數(shù)據(jù) 長(zhǎng)度501和針對(duì)該記錄集的完整初級(jí)記錄集信息。操作時(shí)間戳502是 一個(gè)表明了當(dāng)前正在處理的操作集的起始時(shí)間的時(shí)間戳。 一個(gè)間隔組 號(hào)503標(biāo)示出當(dāng)前記錄集所屬的時(shí)間間隔(由操作時(shí)間戳502和記錄 讀取時(shí)間507所界定)。組內(nèi)序列號(hào)504基于給定時(shí)間間隔組503內(nèi)
10針對(duì)每個(gè)記錄集的應(yīng)用程序?qū)慖/O的寫(xiě)序列順序的標(biāo)識(shí)而得出。初級(jí) 子存儲(chǔ)標(biāo)識(shí)(SSID) 505唯一地標(biāo)示出針對(duì)每個(gè)記錄集的初級(jí)存儲(chǔ)控 制系統(tǒng)15的特定存儲(chǔ)控制器。分配一個(gè)次級(jí)目標(biāo)巻506,記錄讀取時(shí) 間507提供了 一個(gè)表明針對(duì)讀取記錄集處理當(dāng)前間隔的結(jié)束時(shí)間的操 作時(shí)間戳。操作時(shí)間戳502和記錄讀取時(shí)間507被用于對(duì)來(lái)自初級(jí)存 儲(chǔ)控制系統(tǒng)15的讀取記錄集的集合進(jìn)行分組。
參照?qǐng)D3,記錄集信息600由存儲(chǔ)數(shù)據(jù)搬移器29通過(guò)從子系統(tǒng) 控制器18讀取所有讀記錄集500來(lái)收集,并且所述數(shù)據(jù)搬移器形成 了一致性組。記錄集信息把來(lái)自讀記錄集前綴頭500的業(yè)務(wù)工作量標(biāo) 識(shí)100集成到一起。
記錄集信息600的其余部分由所并入的專(zhuān)利No. 5734818加以解 釋?zhuān)渑c每個(gè)自描述記錄集的格式有關(guān)。更新特定信息601-610包括 每條記錄的初級(jí)設(shè)備單元地址601,其表明發(fā)生記錄更新的實(shí)際數(shù)據(jù) 存儲(chǔ)設(shè)備或設(shè)備集合(其可以是虛擬的)。柱面號(hào)/頭號(hào)(其可以是虛 擬的)表明數(shù)據(jù)存儲(chǔ)設(shè)備或設(shè)備集合上的位置。初級(jí)存儲(chǔ)控制器會(huì)話(huà) 標(biāo)識(shí)符(SSID) 603與初級(jí)SSID 505相同。狀態(tài)標(biāo)志604提供了狀 態(tài)信息,序列號(hào)605和630為每條記錄分配一個(gè)號(hào),以表明是否已經(jīng) 從主應(yīng)用程序中讀取了整個(gè)記錄集。寫(xiě)1/0類(lèi)型606是針對(duì)每個(gè)記錄 所執(zhí)行的寫(xiě)操作類(lèi)型的標(biāo)識(shí)符。搜索依據(jù)607表明了第一條讀記桑集 數(shù)據(jù)記錄620的初始定位信息。扇區(qū)號(hào)608標(biāo)示出發(fā)生記錄更新的扇 區(qū),計(jì)數(shù)字段609描述了根在后面的多個(gè)特定記錄數(shù)據(jù)字段620。當(dāng) 發(fā)生寫(xiě)更新時(shí)的主應(yīng)用程序時(shí)間,皮記錄在更新時(shí)間610內(nèi)。特定記錄 數(shù)據(jù)620為每個(gè)記錄更新提供了一個(gè)計(jì)數(shù)/索引/數(shù)據(jù)(CKD)。
所收集的信息通過(guò)一個(gè)日志管理系統(tǒng)被記錄為日志,其可以包括 存儲(chǔ)數(shù)據(jù)結(jié)束29的一部分或工作量管理器的一部分,或者其可以實(shí) 現(xiàn)為主^L系統(tǒng)12的一個(gè)獨(dú)立應(yīng)用程序30。該日志管理系統(tǒng)^皮配置為 把記錄集信息存儲(chǔ)到日志中。在一個(gè)實(shí)施例中,該日志最初^皮存儲(chǔ)在 高速緩存21中。該日志構(gòu)成了由存儲(chǔ)系統(tǒng)10形成一致性組并操作存 儲(chǔ)控制系統(tǒng)25以在存儲(chǔ)設(shè)備26處保存該一致性組的數(shù)據(jù)的基礎(chǔ)。為此,該日志可以被傳送到次級(jí)存儲(chǔ)控制系統(tǒng)25的高速緩存41。該曰 志可用來(lái)在數(shù)據(jù)屏蔽操作期間進(jìn)行連續(xù)的數(shù)據(jù)保護(hù)操作。該日志繼續(xù) 增長(zhǎng)例如一定的偏移量或者數(shù)據(jù)的日期值,并且該日志管理系統(tǒng)通過(guò) 把曰志卸載到諸如磁帶17的存儲(chǔ)器來(lái)保持信息,其采用了數(shù)據(jù)存儲(chǔ) 系統(tǒng),并且該日志提供信息以覆蓋所述偏移量或日期的特定時(shí)間段。 該數(shù)據(jù)管理系統(tǒng)可以替代地或附帶地把日志卸載到諸如磁帶47的存 儲(chǔ)器。這樣,已有的日志項(xiàng)和構(gòu)成時(shí)間一致性組中一個(gè)特定點(diǎn)的所有 寫(xiě)I/O的所有信息一起被記錄為日志。也就是說(shuō),該信息是針對(duì)在特
I/O,并且該日志是基于時(shí)間的一致性組的集合。
參照?qǐng)D4,示出了一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)400的替代實(shí)施例,其中初 級(jí)主才幾401提供了經(jīng)由次級(jí)主才幾411與次級(jí)站的通4言。示出了兩個(gè)應(yīng) 用程序402、 403,它們代表了潛在的大量應(yīng)用程序。數(shù)據(jù)存儲(chǔ)以初級(jí) 主機(jī)的綜合體時(shí)鐘407經(jīng)由數(shù)據(jù)搬移器404在初級(jí)站421處運(yùn)行,并 經(jīng)由數(shù)據(jù)搬移器414在次級(jí)站431處運(yùn)行。這是在所并入的專(zhuān)利.No. 5734818中討論的配置,其中所述主機(jī)包括至少一個(gè)初級(jí)處理器和至 少一個(gè)次級(jí)處理器。處理器的一個(gè)例子是具有數(shù)據(jù)搬移器軟件的 IBM⑧DS9000。而且,位于每個(gè)站點(diǎn)處的是存儲(chǔ)控制器405和415, 以及諸如硬盤(pán)驅(qū)動(dòng)器的直接存取存儲(chǔ)設(shè)備。存儲(chǔ)控制器的例子包括 IBM DS3990存儲(chǔ)控制器,數(shù)據(jù)存儲(chǔ)設(shè)備的例子包括IBM DS3390 DASD。
根據(jù)本發(fā)明,工作量管理器300可駐留在數(shù)據(jù)搬移器404處。工 作量管理器300被配置為提供圖2所示的由1/O子系統(tǒng)310所使用的 業(yè)務(wù)工作量標(biāo)識(shí)100,以經(jīng)由信道命令字(CCW)或等同物提供給存 儲(chǔ)子系統(tǒng)存儲(chǔ)控制器405,如上面所討論的定義擴(kuò)展CCW或前綴 CCW。存儲(chǔ)子系統(tǒng)控制器405構(gòu)造用于XRC巻的讀記錄集前綴頭 500。圖3中的記錄集信息600由存儲(chǔ)控制系統(tǒng)在數(shù)據(jù)搬移器404處 收集,.該數(shù)據(jù)搬移器形成了一致性組。記錄集信息集成了來(lái)自讀記錄 集前綴頭500的業(yè)務(wù)工作量標(biāo)識(shí)100。該日志管理系統(tǒng)可以駐留在工作量管理器300中或者與其駐留在一起,所收集的信息由日志管理系 統(tǒng)記錄為日志。在一個(gè)實(shí)施例中,該日志最初被存儲(chǔ)在高速緩存301 中。所述日志包括由存儲(chǔ)系統(tǒng)在站點(diǎn)121處形成一致性組的基礎(chǔ),并 且次級(jí)數(shù)據(jù)搬移器414被操作以在次級(jí)DASD 416處存儲(chǔ)以執(zhí)行組的 數(shù)據(jù)。為此,所述日志可以;故傳送到次級(jí)站431的控制信息DASD 417。 該日志可用于數(shù)據(jù)屏蔽操作期間的連續(xù)數(shù)據(jù)保護(hù)操作。該日志繼續(xù)增 長(zhǎng)例如一定的偏移量或者數(shù)據(jù)的日期值,并且該日志管理系統(tǒng)經(jīng)由數(shù) 據(jù)搬移器404或數(shù)據(jù)存儲(chǔ)系統(tǒng)的其他組件把日志卸載到磁帶317,并 且該日志提供信息以覆蓋上面所述的偏移量或日期的特定時(shí)間段。
參照?qǐng)D5,示出了本發(fā)明的功能實(shí)現(xiàn),并且在步驟700中,客戶(hù) 通過(guò)圖1和圖4中的主才幾12、 401已經(jīng)把一個(gè)業(yè)務(wù)類(lèi)或1/0優(yōu)先級(jí)分 配給每個(gè)應(yīng)用程序30,或者作為替代,分配給針對(duì)應(yīng)用程序的不同I/O 操作。業(yè)務(wù)類(lèi)指定可包含或包括如上所述的1/0優(yōu)先級(jí)。該業(yè)務(wù)類(lèi)能 夠反映出客戶(hù)在工作量基礎(chǔ)上針對(duì)工作量所規(guī)定的相對(duì)業(yè)務(wù)優(yōu)先級(jí)。 如上所述,業(yè)務(wù)類(lèi)或I/O優(yōu)先級(jí)、或者類(lèi)似的指定被稱(chēng)為"業(yè)務(wù)工作 量標(biāo)識(shí)"。
仍參照?qǐng)D5,從步驟710開(kāi)始,圖l和圖4中的數(shù)據(jù)存儲(chǔ)系統(tǒng)10、 400被配置為提供描述寫(xiě)I/O的業(yè)務(wù)工作量標(biāo)識(shí),并通過(guò)該業(yè)務(wù)工作 量標(biāo)識(shí)將記錄集信息記錄為日志。在步驟720中,工作量管理器20、 300訪(fǎng)問(wèn)其控制模塊,以建立針對(duì)當(dāng)前寫(xiě)I/O的業(yè)務(wù)類(lèi)或1/0優(yōu)先級(jí), 并推進(jìn)針對(duì)與該1/0操作相關(guān)聯(lián)的主導(dǎo)類(lèi)別的1/0優(yōu)先級(jí)。業(yè)務(wù)工作 量標(biāo)識(shí)可包括由主機(jī)針對(duì)所擁有的應(yīng)用程序所定義的業(yè)務(wù)類(lèi),其中該
業(yè)務(wù)類(lèi)可以定義i/o優(yōu)先級(jí)信息。工作量管理器被配置為選擇i/o優(yōu)
先級(jí)信息或業(yè)務(wù)類(lèi),從而識(shí)別出該I/O所屬的應(yīng)用程序。
在步驟730中,工作量管理器20、 300提供業(yè)務(wù)工作量標(biāo)識(shí),以
便把業(yè)務(wù)工作量標(biāo)識(shí)添加到定義擴(kuò)展CCW或前綴CCW或等價(jià)物,
數(shù)據(jù)存儲(chǔ)系統(tǒng)生成CCW。 CCW如上面所討論的。CCW針對(duì)每個(gè)
XRC I/O向存儲(chǔ)子系統(tǒng)提供業(yè)務(wù)工作量標(biāo)識(shí)。
在步驟740中,存儲(chǔ)子系統(tǒng)發(fā)現(xiàn)I/0被引向XRC巻,并用其高速緩存中的存儲(chǔ)信息構(gòu)建讀記錄集前綴,并把圖2所示的業(yè)務(wù)工作量 標(biāo)識(shí)100包括到讀記錄集前綴頭500中。
在圖5的步驟750中,數(shù)據(jù)存儲(chǔ)系統(tǒng)收集針對(duì)一致性組的讀記錄 集,并且日志管理系統(tǒng)把記錄集信息600存儲(chǔ)在日志中,例如存儲(chǔ)在 圖l和4所示的高速緩存21、 301中。該日志繼續(xù)增長(zhǎng)例如一定的偏 移量或者數(shù)據(jù)的日期值,并且在步驟760中,該日志管理系統(tǒng)經(jīng)由數(shù) 據(jù)搬移器404或數(shù)據(jù)存儲(chǔ)系統(tǒng)的其他部分,通過(guò)把日志卸載到諸如磁 帶17、 47、 317的存儲(chǔ)器來(lái)保持信息,該日志提供信息以覆蓋所述偏 移量或日期的特定時(shí)間段,如上所述。這里,日志項(xiàng)的創(chuàng)建被認(rèn)為是 由日志管理系統(tǒng)進(jìn)行的,而不考慮執(zhí)行特定的信息收集和布置的特定 應(yīng)用程序,也不考慮作為日志項(xiàng)的信息格式和存儲(chǔ)。
因而,這些日志項(xiàng)通過(guò)一致性組被記錄到一起作為日志,形成針 對(duì)所述偏移量或日期的時(shí)間段的所有寫(xiě)1/0的信息,每個(gè)日志項(xiàng)都帶 有業(yè)務(wù)工作量標(biāo)識(shí),其標(biāo)示出生成該I/O的應(yīng)用程序。該日志信息可 以被用來(lái)對(duì)數(shù)據(jù)缺損事件執(zhí)行辯證分析或執(zhí)行安全審核等,這例如通 過(guò)位于初級(jí)站處的操作員面板22或者次級(jí)站處的操作員面板770處 的操作員來(lái)進(jìn)行,或者通過(guò)圖1所示的主機(jī)系統(tǒng)12或圖4所示的系 統(tǒng)401或411來(lái)進(jìn)4亍。
業(yè)^^工作量標(biāo)識(shí)標(biāo)示出提供I/O的所擁有的應(yīng)用程序,并森許判 斷哪個(gè)應(yīng)用程序何時(shí)更新何種數(shù)據(jù)。日志項(xiàng)還允許在該特定時(shí)刻以及
在所考慮的該特定時(shí)刻之前的時(shí)刻經(jīng)由一致性組向該巻或相關(guān)巻顯 示所有其他寫(xiě)I/O。該信息可用于判斷哪個(gè)應(yīng)用程序執(zhí)行了寫(xiě)I/O,該
寫(xiě)1/0在哪個(gè)特定時(shí)刻使哪些數(shù)據(jù)發(fā)生了缺損。進(jìn)而,使用帶有先前 日志項(xiàng)的該信息可以允許判斷由 一個(gè)應(yīng)用程序或可能已經(jīng)導(dǎo)致數(shù)據(jù) 缺損的其它程序所完成的寫(xiě)序列。另外,后續(xù)的日志項(xiàng)也可表明可能 已經(jīng)作為先前缺損事件的結(jié)果發(fā)生的其它數(shù)據(jù)缺損。如果需要的話(huà), 磁帶也可以被存檔以便將來(lái)的分析。在一個(gè)例子中,連續(xù)數(shù)據(jù)保護(hù)應(yīng) 用程序可提供對(duì)日志的接口 ,該應(yīng)用程序或者位于高速緩存內(nèi)或者來(lái) 自磁帶。本領(lǐng)域技術(shù)人員將會(huì)理解,可以對(duì)上述方法加以改動(dòng),包括改變 步驟的順序。此外,本領(lǐng)域技術(shù)人員還將會(huì)理解,也可以采用與這里 所描述的不同的特定元件設(shè)置。
盡管已經(jīng)詳細(xì)描述了本發(fā)明的優(yōu)選實(shí)施例,很顯然本領(lǐng)域技術(shù)人 員也可以對(duì)這些實(shí)施例加以改動(dòng)和調(diào)整,而不會(huì)背離如后續(xù)權(quán)利要求 所述的本發(fā)明的保護(hù)范圍。
1權(quán)利要求
1.一種用于識(shí)別數(shù)據(jù)的方法,該數(shù)據(jù)由被配置為根據(jù)所擁有的應(yīng)用程序的寫(xiě)I/O把主機(jī)所提供的數(shù)據(jù)寫(xiě)入到數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)存儲(chǔ)系統(tǒng)處理,包括以下步驟根據(jù)所擁有的應(yīng)用程序的所述寫(xiě)I/O指導(dǎo)對(duì)所述所提供的數(shù)據(jù)的處理;提供用于描述所述寫(xiě)I/O的業(yè)務(wù)工作量標(biāo)識(shí);把所述業(yè)務(wù)工作量標(biāo)識(shí)添加到針對(duì)所述數(shù)據(jù)的記錄集信息中;并且把來(lái)自所述記錄集信息中的包含所述業(yè)務(wù)工作量標(biāo)識(shí)的信息存儲(chǔ)到日志中。
2. 權(quán)利要求l的方法,其中添加所述業(yè)務(wù)工作量標(biāo)識(shí)的所述步 驟包括把所述業(yè)務(wù)工作量標(biāo)識(shí)添加到讀記錄集前綴中;并且把所述記 錄集信息存儲(chǔ)到日志中的所述步驟包括把來(lái)自所述讀記錄集前綴中 的所述信息提供給所述日志。
3. 權(quán)利要求2的方法,其中提供所述業(yè)務(wù)工作量標(biāo)識(shí)的所述步 驟包括提供針對(duì)所定義的擴(kuò)展信道命令字(CCW)的所述業(yè)務(wù)工作 量標(biāo)識(shí),該擴(kuò)展信道命令字提供了針對(duì)所述讀記錄集前綴的所述業(yè)務(wù) 工作量標(biāo)識(shí)。
4. 權(quán)利要求2的方法,其中提供所述業(yè)務(wù)工作量標(biāo)識(shí)的所述步 驟包括提供針對(duì)前綴擴(kuò)展信道命令字(CCW)的所述業(yè)務(wù)工作量標(biāo) 識(shí),該擴(kuò)展信道命令字提供了針對(duì)所述讀記錄集前綴的所述業(yè)務(wù)工作 量標(biāo)識(shí)》
5. 權(quán)利要求l的方法,其中所述業(yè)務(wù)工作量標(biāo)識(shí)包括通過(guò)所述 主機(jī)為所述所擁有的應(yīng)用程序所定義的業(yè)務(wù)類(lèi)。
6. 權(quán)利要求5的方法,其中所述業(yè)務(wù)類(lèi)包括I/0優(yōu)先級(jí)信息, 并且其中提供所述業(yè)務(wù)工作量標(biāo)識(shí)的所述步驟包括選擇所述業(yè)務(wù)類(lèi)的所述i/o優(yōu)先級(jí)信息。
7. —種計(jì)算機(jī)產(chǎn)品,其包括具有計(jì)算機(jī)可讀程序的計(jì)算機(jī)可讀 介質(zhì),其中該計(jì)算機(jī)可讀程序當(dāng)在至少 一 臺(tái)計(jì)算機(jī)上執(zhí)行時(shí)使該計(jì)算 機(jī)執(zhí)行如權(quán)利要求1至6中任一項(xiàng)所述的步驟。
8. —種被配置為根據(jù)所擁有的應(yīng)用程序的寫(xiě)1/0把主機(jī)所提供 的數(shù)據(jù)寫(xiě)入到數(shù)據(jù)存儲(chǔ)器中的數(shù)據(jù)存儲(chǔ)系統(tǒng),包括工作量管理器,被配置為根據(jù)所擁有的應(yīng)用程序的所述寫(xiě)1/0指 導(dǎo)對(duì)所述所提供的數(shù)據(jù)的處理,并被配置為提供用于描述所述寫(xiě)I/O 的業(yè)務(wù)工作量標(biāo)識(shí);至少一個(gè)存儲(chǔ)子系統(tǒng),被配置為把所述業(yè)務(wù)工作量標(biāo)識(shí)添加到針 對(duì)所述數(shù)據(jù)的記錄集信息中;以及日志管理系統(tǒng),被配置為把來(lái)自所述記錄集信息中的包含所述業(yè) 務(wù)工作量標(biāo)識(shí)的信息存儲(chǔ)到日志中。
9. 權(quán)利要求8的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中所述至少一個(gè)存儲(chǔ)子系統(tǒng) 被配置為把所述業(yè)務(wù)工作量標(biāo)識(shí)添加到讀記錄集前綴中,并且所述曰 志管理系統(tǒng)被配置為把來(lái)自所述讀記錄集前綴中的所述信息提供給 所述曰志。
10. 權(quán)利要求9的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中所述工作量管理器被配 置為提供針對(duì)所定義的擴(kuò)展信道命令字(CCW)的所述業(yè)務(wù)工作量 標(biāo)識(shí),該擴(kuò)展信道命令字向所述至少一個(gè)存儲(chǔ)器子系統(tǒng)提供針對(duì)所述 讀記錄集前綴的所述業(yè)務(wù)工作量標(biāo)識(shí)。
11. 權(quán)利要求9的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中所述工作量管理器被配 置為提供針對(duì)前綴信道命令字(CCW)的所述業(yè)務(wù)工作量標(biāo)識(shí),該 前綴信道命令字向所述至少 一個(gè)存儲(chǔ)器子系統(tǒng)提供針對(duì)所述讀記錄 集前綴的所述業(yè)務(wù)工作量標(biāo)識(shí)。
12. 權(quán)利要求8至11中任一項(xiàng)的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中所述業(yè) 務(wù)工作量標(biāo)識(shí)包括通過(guò)所述主機(jī)為所迷所擁有的應(yīng)用程序所定義的業(yè)務(wù)類(lèi)。
13. 權(quán)利要求12的數(shù)據(jù)存儲(chǔ)系統(tǒng),其中所述業(yè)務(wù)類(lèi)包括I/O 優(yōu)先級(jí)倌息,并且其中所述工作量管理器被配置為選擇所述業(yè)務(wù)類(lèi)的所述i/o優(yōu)先級(jí)信息。
全文摘要
數(shù)據(jù)存儲(chǔ)系統(tǒng)根據(jù)所擁有的應(yīng)用程序的寫(xiě)I/O把主機(jī)所提供的數(shù)據(jù)寫(xiě)入到數(shù)據(jù)存儲(chǔ)器中。工作量管理器根據(jù)所擁有的應(yīng)用程序的所述寫(xiě)I/O指導(dǎo)對(duì)所述所提供的數(shù)據(jù)的處理,并提供用于描述所述寫(xiě)I/O的業(yè)務(wù)工作量標(biāo)識(shí);存儲(chǔ)子系統(tǒng)控制器把業(yè)務(wù)工作量標(biāo)識(shí)添加到針對(duì)所述數(shù)據(jù)的記錄集信息中;并且日志管理系統(tǒng)把該記錄集信息存儲(chǔ)到日志中。所述日志信息例如可以用來(lái)對(duì)數(shù)據(jù)缺損事件執(zhí)行辯證分析或者執(zhí)行安全審核等。
文檔編號(hào)G06F11/34GK101652756SQ200880011633
公開(kāi)日2010年2月17日 申請(qǐng)日期2008年4月7日 優(yōu)先權(quán)日2007年4月11日
發(fā)明者D·M·沙克爾福德, D·N·E·迪爾蘭伯格, J·W·帕爾姆, K·W·博伊德, M·F·威爾丁, R·F·科恩, W·F·米爾 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
阿合奇县| 同心县| 海淀区| 邹平县| 唐海县| 合肥市| 武冈市| 隆德县| 湘西| 唐山市| 阿城市| 郓城县| 安阳县| 远安县| 封开县| 湄潭县| 错那县| 赤水市| 琼结县| 洱源县| 宝坻区| 阿克陶县| 泉州市| 盐城市| 德安县| 永济市| 乳源| 嫩江县| 和硕县| 嘉鱼县| 怀远县| 汉中市| 冷水江市| 灵璧县| 元朗区| 营山县| 仙游县| 庆阳市| 长乐市| 洛川县| 霍林郭勒市|