文件系統(tǒng)復(fù)制方法及裝置制造方法
【專利摘要】本發(fā)明實(shí)施例提供一種文件系統(tǒng)復(fù)制方法及裝置,該方法包括:獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖;根據(jù)文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件、目錄進(jìn)行的操作類型;根據(jù)文件、目錄進(jìn)行的操作類型,結(jié)合主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作;在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。本發(fā)明實(shí)施例實(shí)現(xiàn)了,從端復(fù)制過程中,只考慮進(jìn)行復(fù)制時(shí)刻所獲知的文件、目錄變化,避免了一段時(shí)間內(nèi)對(duì)同一文件的重復(fù)復(fù)制,減少無效復(fù)制的產(chǎn)生。
【專利說明】文件系統(tǒng)復(fù)制方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù),尤其涉及一種文件系統(tǒng)復(fù)制方法及裝置。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)接入服務(wù)器(network access server,簡(jiǎn)稱NAS)是一種采用直接與網(wǎng)絡(luò)介質(zhì)相連的特殊設(shè)備實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)機(jī)制。NAS能夠在網(wǎng)絡(luò)上進(jìn)行文件共享,具體地,可以通過網(wǎng)絡(luò)文件系統(tǒng)(Network File System,簡(jiǎn)稱NFS)、通用網(wǎng)絡(luò)文件系統(tǒng)(Common Internet FileSystem,簡(jiǎn)稱CIFS)等協(xié)議共享給不同的主機(jī),并且易于部署與維護(hù),有非常好的擴(kuò)展性。隨著NAS在企業(yè)中應(yīng)用越來越廣泛,對(duì)NAS上數(shù)據(jù)的容災(zāi)的需求也越來越高,即需要將主端的數(shù)據(jù)復(fù)制到從端中,以便緊急情況下使用。其中,這些數(shù)據(jù)存儲(chǔ)在設(shè)備的文件系統(tǒng)中,由文件系統(tǒng)進(jìn)行管理。
[0003]現(xiàn)有技術(shù)中,主要采用基于日志順序的方式實(shí)現(xiàn)文件系統(tǒng)復(fù)制,即主端的文件系統(tǒng)按照時(shí)間順序記錄日志,每條日志中標(biāo)記了進(jìn)行的操作,這些操作可以包括:創(chuàng)建、刪除、修改等,向從端復(fù)制時(shí),完全按照主端記錄日志的順序進(jìn)行復(fù)制,即將一段時(shí)間內(nèi)主端進(jìn)行的操作在從端再執(zhí)行一次。
[0004]但是,采用現(xiàn)有技術(shù),預(yù)設(shè)時(shí)間段內(nèi),主端在實(shí)際操作過程中可能對(duì)同一文件執(zhí)行了多次同一操作,例如進(jìn)行了多次修改,那么復(fù)制時(shí),也要將多次修改都執(zhí)行一次,導(dǎo)致同一文件的多次復(fù)制,從而產(chǎn)生無效復(fù)制。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供一種文件系統(tǒng)復(fù)制方法及裝置,用于解決現(xiàn)有文件復(fù)制過程中同一文件的多次復(fù)制,從而產(chǎn)生無效復(fù)制的問題。
[0006]本發(fā)明第一方面提供一種文件系統(tǒng)復(fù)制方法,包括:
[0007]獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖;
[0008]根據(jù)所述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)所述主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型;
[0009]根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作;
[0010]在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
[0011]結(jié)合第一方面,在第一方面的第一種可能的實(shí)施方式中,若所述操作類型包括下述一項(xiàng)或任意組合:創(chuàng)建、刪除、修改文件名、修改目錄名,則所述根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,包括:
[0012]比較所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照和所述預(yù)設(shè)時(shí)間段起點(diǎn)的快照,獲取所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異;
[0013]根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,以及所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異,反演出所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段的操作。
[0014]結(jié)合第一方面的第一種可能的實(shí)施方式,在第一方面的第二種可能的實(shí)施方式中,所述獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括:
[0015]在將所述主端的文件系統(tǒng)中的操作和從端的文件系統(tǒng)的操作均劃分為元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0016]結(jié)合第一方面的第二種可能的實(shí)施方式,在第一方面的第三種可能的實(shí)施方式中,所述在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,包括:
[0017]在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0018]結(jié)合第一方面的第三種可能的實(shí)施方式,在第一方面的第四種可能的實(shí)施方式中,所述在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作,包括:
[0019]在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第一類元數(shù)據(jù)操作,所述第一類元數(shù)據(jù)操作包括:創(chuàng)建目錄、修改目錄名;
[0020]在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第二類元數(shù)據(jù)操作,所述第二類元數(shù)據(jù)操作包括:創(chuàng)建文件、創(chuàng)建軟鏈接、創(chuàng)建硬鏈接以及刪除文件;
[0021]在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的數(shù)據(jù)操作;
[0022]在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第三類元數(shù)據(jù)操作,所述第三類元數(shù)據(jù)操作包括:刪除目錄。
[0023]結(jié)合第一方面至第一方面的第四種可能的實(shí)施方式中任一項(xiàng),在第一方面的第五種可能的實(shí)施方式中,所述方法還包括:在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作的過程中,配置所述從端文件的文件名與至少兩個(gè)文件標(biāo)識(shí)相對(duì)應(yīng)。
[0024]結(jié)合第一方面至第一方面的第五種可能的實(shí)施方式中任一項(xiàng),在第一方面的第六種可能的實(shí)施方式中,獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括:
[0025]在所述主端文件系統(tǒng)中第一文件的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0026]結(jié)合第一方面至第一方面的第五種可能的實(shí)施方式中任一項(xiàng),在第一方面的第七種可能的實(shí)施方式中,獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括:
[0027]在所述主端文件系統(tǒng)中第一文件的數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的數(shù)據(jù)位圖。
[0028]結(jié)合第一方面至第一方面的第五種可能的實(shí)施方式中任一項(xiàng),在第一方面的第八種可能的實(shí)施方式中,獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括:
[0029]在所述主端文件系統(tǒng)中第一目錄的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一目錄建立所述第一目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0030]本發(fā)明第二方面提供一種文件系統(tǒng)復(fù)制裝置,包括:
[0031]獲取模塊,用于獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖;根據(jù)所述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)所述主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型;
[0032]確定模塊,用于根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作;
[0033]復(fù)制模塊,用于在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
[0034]結(jié)合第二方面,在第二方面的第一種可能的實(shí)施方式中,所述確定模塊,具體用于在所述操作類型包括下述一項(xiàng)或任意組合:創(chuàng)建、刪除、修改文件名、修改目錄名時(shí),比較所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照和所述預(yù)設(shè)時(shí)間段起點(diǎn)的快照,獲取所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異;根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,以及所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異,反演出所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段的操作。
[0035]結(jié)合第二方面的第一種可能的實(shí)施方式,在第二方面的第二種可能的實(shí)施方式中,所述裝置還包括:
[0036]劃分模塊,用于獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,在將所述主端的文件系統(tǒng)中的操作和從端的文件系統(tǒng)的操作均劃分為元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0037]結(jié)合第二方面的第二種可能的實(shí)施方式,在第二方面的第三種可能的實(shí)施方式中,所述復(fù)制模塊,具體用于在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0038]結(jié)合第二方面的第三種可能的實(shí)施方式,在第二方面的第四種可能的實(shí)施方式中,所述復(fù)制模塊,具體用于在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第一類元數(shù)據(jù)操作,所述第一類元數(shù)據(jù)操作包括:創(chuàng)建目錄、修改目錄名;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第二類元數(shù)據(jù)操作,所述第二類元數(shù)據(jù)操作包括:創(chuàng)建文件、創(chuàng)建軟鏈接、創(chuàng)建硬鏈接以及刪除文件;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的數(shù)據(jù)操作;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第三類元數(shù)據(jù)操作,所述第三類元數(shù)據(jù)操作包括:刪除目錄。
[0039]結(jié)合第二方面至第二方面的第四種可能的實(shí)施方式中任一項(xiàng),在第二方面的第五種可能的實(shí)施方式中,所述裝置還包括:
[0040]配置模塊,用于在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作的過程中,配置所述從端文件的文件名與至少兩個(gè)文件標(biāo)識(shí)相對(duì)應(yīng)。
[0041]結(jié)合第二方面至第二方面的第五種可能的實(shí)施方式中任一項(xiàng),在第二方面的第六種可能的實(shí)施方式中,所述裝置還包括:
[0042]第一建立模塊,用于在所述主端文件系統(tǒng)中第一文件的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0043]結(jié)合第二方面至第二方面的第五種可能的實(shí)施方式中任一項(xiàng),在第二方面的第七種可能的實(shí)施方式中,所述裝置還包括:
[0044]第二建立模塊,用于在所述主端文件系統(tǒng)中第一文件的數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的數(shù)據(jù)位圖。
[0045]結(jié)合第二方面至第二方面的第五種可能的實(shí)施方式中任一項(xiàng),在第二方面的第八種可能的實(shí)施方式中,所述裝置還包括:
[0046]第三建立模塊,用于在所述主端文件系統(tǒng)中第一目錄的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一目錄建立所述第一目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0047]本發(fā)明實(shí)施例提供的文件系統(tǒng)復(fù)制方法及裝置中,通過獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖、目錄對(duì)應(yīng)的元數(shù)據(jù)位圖,根據(jù)這些位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,進(jìn)而結(jié)合主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定該主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,在從端復(fù)制執(zhí)行即可完成從端的復(fù)制,以保證從端和主端數(shù)據(jù)一致。實(shí)現(xiàn)了,從端復(fù)制過程中無需嚴(yán)格按照主端各操作的執(zhí)行順序,只考慮進(jìn)行復(fù)制時(shí)刻所獲知的文件和/或目錄變化,避免了一段時(shí)間內(nèi)對(duì)同一文件的重復(fù)復(fù)制,減少無效復(fù)制的產(chǎn)生。
【專利附圖】
【附圖說明】
[0048]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0049]圖1為本發(fā)明提供的文件系統(tǒng)復(fù)制方法實(shí)施例一的流程示意圖;
[0050]圖2為本發(fā)明提供的文件系統(tǒng)復(fù)制方法實(shí)施例二的流程示意圖;
[0051]圖3為本發(fā)明提供的文件系統(tǒng)復(fù)制方法實(shí)施例二的流程示意圖;
[0052]圖4為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例一的結(jié)構(gòu)示意圖;
[0053]圖5為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例二的結(jié)構(gòu)示意圖;
[0054]圖6為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例三的結(jié)構(gòu)示意圖;
[0055]圖7為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例四的結(jié)構(gòu)示意圖;
[0056]圖8為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例五的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0057]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0058]由于NAS上數(shù)據(jù)的容災(zāi)的需求越來越高,即需要將主端的數(shù)據(jù)復(fù)制到從端中,以便緊急情況下使用,本發(fā)明實(shí)施例提供一種將主端數(shù)據(jù)復(fù)制到從端,以使主端文件系統(tǒng)和從端文件系統(tǒng)保持一致的方法。
[0059]圖1為本發(fā)明提供的文件系統(tǒng)復(fù)制方法實(shí)施例一的流程示意圖,如圖1所示,該方法包括:
[0060]S101、獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0061]其中,主端文件系統(tǒng)中如果某些文件、目錄發(fā)生了變化,則會(huì)為發(fā)生變化的文件、目錄建立相應(yīng)的位圖,上述獲取到的位圖中相應(yīng)記載了對(duì)應(yīng)地文件、目錄發(fā)生的變化,即進(jìn)行過地操作。
[0062]具體地,在執(zhí)行SlOl之前,在主端文件系統(tǒng)中第一文件的元數(shù)據(jù)發(fā)生變化時(shí),為該第一文件建立該第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0063]在主端文件系統(tǒng)中第一文件的數(shù)據(jù)發(fā)生變化時(shí),為該第一文件建立該第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0064]上述第一文件可以指主端文件系統(tǒng)中的任一文件,即只要主端文件系統(tǒng)中第一文件的某文件發(fā)生了元數(shù)據(jù)變化,則為該文件建立元數(shù)據(jù)位圖。
[0065]文件的元數(shù)據(jù)位圖中包括對(duì)應(yīng)文件的文件標(biāo)識(shí)(例如inode號(hào))、文件類型(用于標(biāo)識(shí)文件或目錄)、基于語義記錄的操作以及操作時(shí)間等信息;數(shù)據(jù)位圖包括對(duì)應(yīng)文件的文件標(biāo)識(shí)、基于語義記錄的操作、操作時(shí)間點(diǎn)、塊號(hào)等。
[0066]類似地,在執(zhí)行SlOl之前,在主端文件系統(tǒng)中第一目錄的元數(shù)據(jù)發(fā)生變化時(shí),為該第一目錄建立該第一目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。其中,目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中可以包括對(duì)應(yīng)目錄的目錄標(biāo)識(shí)、文件類型、基于語義記錄的操作以及操作時(shí)間等信息。
[0067]S102、根據(jù)上述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄發(fā)生的操作類型。
[0068]具體地,上述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖、目錄對(duì)應(yīng)的元數(shù)據(jù)位圖在記錄文件、目錄的變化是基于語義的,例如記錄為:創(chuàng)建文件(create)、刪除文件(unlink),這樣根據(jù)位圖中的記錄,就可以知道文件系統(tǒng)中文件、目錄進(jìn)行操作的操作類型。操作類型可以包括:修改數(shù)據(jù)內(nèi)容、修改文件名等。
[0069]S103、根據(jù)上述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合上述主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定上述主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
[0070]其中,快照包括這個(gè)時(shí)間點(diǎn)主端文件系統(tǒng)的所有數(shù)據(jù)。
[0071]S104、在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行上述主端文件系統(tǒng)在預(yù)設(shè)時(shí)間內(nèi)進(jìn)行的操作。
[0072]例如,根據(jù)上述某文件的數(shù)據(jù)位圖確定出該文件“0-4千字節(jié)(kb) ”位置的操作類型為數(shù)據(jù)內(nèi)容修改,則根據(jù)主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照就可以知道該文件“0-4 (kb) ”位置修改后的數(shù)據(jù),進(jìn)而在從端復(fù)制執(zhí)行時(shí)直接按照主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照中該文件“0_4(kb)”位置修改后的數(shù)據(jù)修改從端對(duì)應(yīng)位置的數(shù)據(jù)即可。
[0073]本實(shí)施例中,通過獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖、目錄對(duì)應(yīng)的元數(shù)據(jù)位圖,根據(jù)這些位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,進(jìn)而結(jié)合主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定該主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,在從端復(fù)制執(zhí)行即可完成從端的復(fù)制,以保證從端和主端數(shù)據(jù)一致。實(shí)現(xiàn)了,從端復(fù)制過程中無需嚴(yán)格按照主端各操作的執(zhí)行順序,只考慮進(jìn)行復(fù)制時(shí)刻所獲知的文件和/或目錄變化,避免了一段時(shí)間內(nèi)對(duì)同一文件的重復(fù)復(fù)制,減少無效復(fù)制的產(chǎn)生。
[0074]另一實(shí)施例中,上述獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,在將所述主端的文件系統(tǒng)中的操作和從端的文件系統(tǒng)的操作均劃分為元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0075]以便后續(xù)復(fù)制過程分別針對(duì)元數(shù)據(jù)、數(shù)據(jù)進(jìn)行。
[0076]其中,元數(shù)據(jù)操作包括:目錄元數(shù)據(jù)操作和文件元數(shù)據(jù)操作,數(shù)據(jù)操作一般指文件數(shù)據(jù)操作。
[0077]相應(yīng)地,在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行上述主端文件系統(tǒng)在預(yù)設(shè)時(shí)間內(nèi)進(jìn)行的操作,具體為:在從端分別復(fù)制執(zhí)行主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0078]舉例說明,一般目錄元數(shù)據(jù)操作包括:創(chuàng)建目錄(create)、刪除目錄(unlink)等;文件元數(shù)據(jù)操作主要包括:創(chuàng)建文件(create)、創(chuàng)建硬鏈接(link)、刪除文件(unlink)、倉ij建軟鏈接(symlink)、添加擴(kuò)展屬性(xattr)等;并不以此為限,還可以包括一些其它目錄、文件元數(shù)據(jù),例如:訪問時(shí)間(atime)、元數(shù)據(jù)修改時(shí)間(ctime)、數(shù)據(jù)修改時(shí)間(mtime)等。
[0079]文件數(shù)據(jù)操作主要包括:修改寫數(shù)據(jù)(write)、截?cái)鄬憯?shù)據(jù)(truncate)、追加寫數(shù)據(jù)(append)等。
[0080]圖2為本發(fā)明提供的文件系統(tǒng)復(fù)制方法實(shí)施例二的流程示意圖,如圖2所示,若上述操作類型包括下述一項(xiàng)或任意組合:創(chuàng)建、刪除、修改文件名、修改目錄名,則上述根據(jù)預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合上述主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定上述主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,具體可以為:
[0081]S201、比較上述預(yù)設(shè)時(shí)間段終點(diǎn)的快照和上述預(yù)設(shè)時(shí)間段起點(diǎn)的快照,獲取上述主端文件系統(tǒng)在上述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異。
[0082]即為了更好地確定主端文件系統(tǒng)中文件、目錄發(fā)生的變化,針對(duì)一些操作類型需要將兩個(gè)時(shí)間點(diǎn)的快照進(jìn)行比較,可以明顯看出預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異。
[0083]具體操作時(shí),結(jié)合位圖中記錄的變化,通過比較獲取發(fā)生變化的同一文件或同一目錄在預(yù)設(shè)時(shí)間段終點(diǎn)的快照中和預(yù)設(shè)時(shí)間段起點(diǎn)的快照中的差異。
[0084]S202、根據(jù)預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,以及上述主端文件系統(tǒng)在上述預(yù)設(shè)時(shí)間段終端和起點(diǎn)的差異,反演出上述主端文件系統(tǒng)在上述預(yù)設(shè)時(shí)間段的操作。
[0085]一般地,一個(gè)目錄下每一個(gè)文件都有唯一標(biāo)識(shí)(可以是inode號(hào)),例如,根據(jù)inode號(hào)為“11”的文件對(duì)應(yīng)的元數(shù)據(jù)位圖獲知,該文件在預(yù)設(shè)時(shí)間段“修改了文件名”,通過inode號(hào)“11”識(shí)別到該文件在預(yù)設(shè)時(shí)間段起點(diǎn)的快照中文件名為“filel”,而在預(yù)設(shè)時(shí)間段終點(diǎn)的快照中文件名為“file2”,則可以反演出預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)對(duì)該文件執(zhí)行的操作是將文件名“filel”修改為“file2”。
[0086]又例如,根據(jù)inode號(hào)為“11”的文件對(duì)應(yīng)的元數(shù)據(jù)位圖獲知,該文件在預(yù)設(shè)時(shí)間段內(nèi)執(zhí)行的操作類型為“刪除文件”,在預(yù)設(shè)時(shí)間段起點(diǎn)的快照中包含該文件,而在預(yù)設(shè)時(shí)間段終點(diǎn)的快照中沒有該標(biāo)識(shí)對(duì)應(yīng)的文件,則反演出預(yù)設(shè)時(shí)間段內(nèi)對(duì)該文件執(zhí)行的操作是“刪除了 inode號(hào)為11的文件”。
[0087]另外,上述操作類型中的創(chuàng)建可以包括:創(chuàng)建文件、創(chuàng)建目錄、創(chuàng)建硬鏈接、創(chuàng)建軟鏈接等。刪除可以包括:刪除文件、刪除目錄等。
[0088]對(duì)于除了創(chuàng)建、刪除、修改文件名、修改目錄名之外的其它操作類型,可以不用對(duì)比預(yù)設(shè)時(shí)間段起點(diǎn)和終點(diǎn)的快照,只需結(jié)合操作類型和預(yù)設(shè)時(shí)間段終點(diǎn)的快照內(nèi)容就可以推斷出主端文件系統(tǒng)的操作。例如前述例子中的數(shù)據(jù)修改,或者元數(shù)據(jù)屬性擴(kuò)展等。
[0089]需要說明的是,反演出的操作,只是根據(jù)兩個(gè)時(shí)間點(diǎn)文件系統(tǒng)的差異推斷出的,并不代表預(yù)設(shè)時(shí)間段內(nèi)實(shí)際發(fā)生的所有操作。
[0090]這樣,在本實(shí)施例中,只考慮一段時(shí)間的兩個(gè)端點(diǎn),而無需考慮整段時(shí)間中的所有操作,避免了一段時(shí)間內(nèi)對(duì)同一文件的重復(fù)復(fù)制,減少無效復(fù)制的產(chǎn)生。
[0091 ] 需要說明的是,在文件系統(tǒng)的構(gòu)造中,一個(gè)目錄下的文件操作依賴該目錄存在,創(chuàng)建時(shí),先創(chuàng)建目錄,再創(chuàng)建目錄下的文件;而刪除時(shí),先刪除目錄下的文件,再刪除目錄。每個(gè)目錄都有唯一的目錄標(biāo)識(shí),同一目錄下的每個(gè)文件也都有唯一的文件標(biāo)識(shí)以及所屬目錄的標(biāo)識(shí)。
[0092]一般地,先執(zhí)行目錄元數(shù)據(jù)操作再執(zhí)行文件元數(shù)據(jù)操作,但并不以此為限。
[0093]對(duì)于刪除操作,如果反演出的目錄元數(shù)據(jù)操作是刪除某目錄,但是從端在執(zhí)行時(shí),如果該目錄下還存在文件,則不能直接刪除該目錄,要先刪除目錄下的文件再刪除該目錄。
[0094]圖3為本發(fā)明提供的文件系統(tǒng)復(fù)制方法實(shí)施例二的流程示意圖,如圖3所示,由于文件系統(tǒng)中文件、目錄之前存在的依賴關(guān)系,為了避免沖突,從端在執(zhí)行復(fù)制時(shí),按照一定的順序執(zhí)行元數(shù)據(jù)、數(shù)據(jù)操作。
[0095]在從端分別復(fù)制執(zhí)行主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作,具體可以包括:
[0096]S301、在從端復(fù)制執(zhí)行上述主端文件系統(tǒng)在上述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第一類元數(shù)據(jù)操作,該第一類元數(shù)據(jù)操作包括:創(chuàng)建目錄、修改目錄名。
[0097]S302、在從端復(fù)制執(zhí)行上述主端文件系統(tǒng)在上述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第二類元數(shù)據(jù)操作,該第二類元數(shù)據(jù)操作包括:創(chuàng)建文件、創(chuàng)建軟鏈接、創(chuàng)建硬鏈接以及刪除文件。
[0098]S303、在從端復(fù)制執(zhí)行上述主端文件系統(tǒng)在上述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的數(shù)據(jù)操作。這里的數(shù)據(jù)操作可以包括所有類型的數(shù)據(jù)操作。
[0099]S304、在從端復(fù)制執(zhí)行上述主端文件系統(tǒng)在上述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第三類元數(shù)據(jù)操作,該第三類元數(shù)據(jù)操作包括:刪除目錄。
[0100]進(jìn)一步地,為了便于區(qū)分,同一目錄下的每個(gè)文件名都不同,但是上述方法在執(zhí)行過程中,只考慮位圖記錄的變化以及某時(shí)間點(diǎn)的快照,因而在從端復(fù)制執(zhí)行上述主端預(yù)設(shè)時(shí)間段進(jìn)行的操作時(shí),可能出現(xiàn)文件名沖突的問題。例如,對(duì)于一目錄dirl下,某文件名為filel的文件,對(duì)應(yīng)的標(biāo)識(shí)為“10”,在預(yù)設(shè)時(shí)間段內(nèi),該文件被刪除,隨后又創(chuàng)建了文件名為filel的文件,對(duì)應(yīng)的標(biāo)識(shí)為“11”,根據(jù)預(yù)設(shè)時(shí)間段終點(diǎn)、起點(diǎn)快照的差異以及操作類型會(huì)反演出的文件元數(shù)據(jù)操作為:刪除了標(biāo)識(shí)為“10”的文件filel、創(chuàng)建了標(biāo)識(shí)為“11”的filel。從端在執(zhí)行時(shí)并不知道刪除和創(chuàng)建的時(shí)間順序,可以隨機(jī)執(zhí)行,因此可能先執(zhí)行創(chuàng)建后執(zhí)行刪除,這樣目錄dirl下就會(huì)有兩個(gè)文件filel,而出現(xiàn)文件名沖突。
[0101]本實(shí)施例中,在從端復(fù)制執(zhí)行上述主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作的過程中,配置從端文件的文件名可以與至少兩個(gè)文件標(biāo)識(shí)相對(duì)應(yīng)。以保證復(fù)制的正確執(zhí)行,避免沖突。以前述示例說明,例如先執(zhí)行創(chuàng)建標(biāo)識(shí)為“11”的filel,此時(shí)目錄中還存在標(biāo)識(shí)為“10”的文件filel,那么filel就同時(shí)對(duì)應(yīng)標(biāo)識(shí)“ 10”和標(biāo)識(shí)“ 11”,之后再執(zhí)行刪除標(biāo)識(shí)為“10”的文件filel,最終從端中剩余的filel對(duì)應(yīng)的標(biāo)識(shí)為“11”。因此,不僅可以避免文件名沖突而導(dǎo)致不能復(fù)制的問題,而且在所有操作完成后,也不會(huì)使得主端和從端的文件系統(tǒng)不一致。
[0102]圖4為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例一的結(jié)構(gòu)示意圖,如圖4所示,該裝置包括:獲取模塊401、確定模塊402和復(fù)制模塊403,其中:
[0103]獲取模塊401,用于獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖;根據(jù)所述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)所述主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型。
[0104]確定模塊402,用于根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
[0105]復(fù)制模塊403,用于在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
[0106]本實(shí)施例中,通過獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖、目錄對(duì)應(yīng)的元數(shù)據(jù)位圖,根據(jù)這些位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,進(jìn)而結(jié)合主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定該主端文件系統(tǒng)在預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,在從端復(fù)制執(zhí)行即可完成從端的復(fù)制,以保證從端和主端數(shù)據(jù)一致。實(shí)現(xiàn)了,從端復(fù)制過程中無需嚴(yán)格按照主端各操作的執(zhí)行順序,只考慮進(jìn)行復(fù)制時(shí)刻所獲知的文件和/或目錄變化,避免了一段時(shí)間內(nèi)對(duì)同一文件的重復(fù)復(fù)制,減少無效復(fù)制的產(chǎn)生。
[0107]另一實(shí)施例中,確定模塊402,具體用于在所述操作類型包括下述一項(xiàng)或任意組合:創(chuàng)建、刪除、修改文件名、修改目錄名時(shí),比較所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照和所述預(yù)設(shè)時(shí)間段起點(diǎn)的快照,獲取所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異;根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,以及所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異,反演出所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段的操作。
[0108]圖5為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例二的結(jié)構(gòu)示意圖,如圖5所示,在圖4的基礎(chǔ)上,該裝置還可以包括:劃分模塊501,用于在獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,在將所述主端的文件系統(tǒng)中的操作和從端的文件系統(tǒng)的操作均劃分為元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0109]進(jìn)一步地,另一實(shí)施例中,復(fù)制模塊403,具體用于在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0110]更進(jìn)一步地,復(fù)制模塊403,具體用于在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第一類元數(shù)據(jù)操作,所述第一類元數(shù)據(jù)操作包括:創(chuàng)建目錄、修改目錄名;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第二類元數(shù)據(jù)操作,所述第二類元數(shù)據(jù)操作包括:創(chuàng)建文件、創(chuàng)建軟鏈接、創(chuàng)建硬鏈接以及刪除文件;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的數(shù)據(jù)操作;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第三類元數(shù)據(jù)操作,所述第三類元數(shù)據(jù)操作包括:刪除目錄。
[0111]圖6為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例三的結(jié)構(gòu)示意圖,如圖6所示,該裝置還可以包括:配置模塊601,用于在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作的過程中,配置所述從端文件的文件名與至少兩個(gè)文件標(biāo)識(shí)相對(duì)應(yīng)。
[0112]圖7為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例四的結(jié)構(gòu)示意圖,如圖7所示,該裝置還可以包括:第一建立模塊701,用于在所述主端文件系統(tǒng)中第一文件的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0113]參照?qǐng)D7該裝置還可以包括:第二建立模塊702,用于在所述主端文件系統(tǒng)中第一文件的數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的數(shù)據(jù)位圖。
[0114]參照?qǐng)D7該裝置還可以包括:第三建立模塊703,用于在所述主端文件系統(tǒng)中第一目錄的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一目錄建立所述第一目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0115]上述裝置用于執(zhí)行前述方法實(shí)施例,其技術(shù)效果和實(shí)現(xiàn)原理類似,在此不再贅述。
[0116]圖8為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例五的結(jié)構(gòu)示意圖,該裝置包括:存儲(chǔ)器801和處理器802,存儲(chǔ)器801用于存儲(chǔ)指令,處理器802用于調(diào)用存儲(chǔ)器801中存儲(chǔ)的指令,并執(zhí)行前述方法實(shí)施例。具體地,
[0117]處理器801,用于圖7為本發(fā)明提供的文件系統(tǒng)復(fù)制裝置實(shí)施例一的結(jié)構(gòu)式示意圖,獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖;根據(jù)所述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)所述主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型;根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作;在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
[0118]進(jìn)一步地,處理器801,具體用于在所述操作類型包括下述一項(xiàng)或任意組合:創(chuàng)建、刪除、修改文件名、修改目錄名時(shí),比較所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照和所述預(yù)設(shè)時(shí)間段起點(diǎn)的快照,獲取所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異;根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,以及所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異,反演出所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段的操作。
[0119]處理器801,還用于在獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,在將所述主端的文件系統(tǒng)中的操作和從端的文件系統(tǒng)的操作均劃分為元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0120]另一實(shí)施例中,處理器801,在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作。
[0121]更具體地,處理器801,在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第一類元數(shù)據(jù)操作,所述第一類元數(shù)據(jù)操作包括:創(chuàng)建目錄、修改目錄名;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第二類元數(shù)據(jù)操作,所述第二類元數(shù)據(jù)操作包括:創(chuàng)建文件、創(chuàng)建軟鏈接、創(chuàng)建硬鏈接以及刪除文件;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的數(shù)據(jù)操作;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第三類元數(shù)據(jù)操作,所述第三類元數(shù)據(jù)操作包括:刪除目錄。
[0122]處理器801,還用于在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作的過程中,配置所述從端文件的文件名與至少兩個(gè)文件標(biāo)識(shí)相對(duì)應(yīng)。
[0123]處理器801,還用于在所述主端文件系統(tǒng)中第一文件的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0124]處理器801,還用于在所述主端文件系統(tǒng)中第一文件的數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的數(shù)據(jù)位圖。
[0125]處理器801,還用于在所述主端文件系統(tǒng)中第一目錄的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一目錄建立所述第一目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。
[0126]上述裝置用于執(zhí)行前述方法實(shí)施例,其技術(shù)效果和實(shí)現(xiàn)原理類似,在此不再贅述。
[0127]在本發(fā)明所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
[0128]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
[0129]另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能單元的形式實(shí)現(xiàn)。
[0130]上述以軟件功能單元的形式實(shí)現(xiàn)的集成的單元,可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。上述軟件功能單元存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(英文processor)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的部分步驟。而前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(英文:Read_0nly Memory,簡(jiǎn)稱:R0M)、隨機(jī)存取存儲(chǔ)器(英文:Random Access Memory,簡(jiǎn)稱:RAM)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
[0131]最后應(yīng)說明的是:以上各實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。
【權(quán)利要求】
1.一種文件系統(tǒng)復(fù)制方法,其特征在于,包括: 獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖; 根據(jù)所述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)所述主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型; 根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作; 在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,若所述操作類型包括下述一項(xiàng)或任意組合:創(chuàng)建、刪除、修改文件名、修改目錄名,則所述根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,包括: 比較所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照和所述預(yù)設(shè)時(shí)間段起點(diǎn)的快照,獲取所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異; 根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,以及所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異,反演出所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段的操作。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括: 將所述主端的文件系統(tǒng)中的操作和從端的文件系統(tǒng)的操作均劃分為元數(shù)據(jù)操作和數(shù)據(jù)操作。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作,包括: 在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作,包括: 在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第一類元數(shù)據(jù)操作,所述第一類元數(shù)據(jù)操作包括:創(chuàng)建目錄、修改目錄名; 在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第二類元數(shù)據(jù)操作,所述第二類元數(shù)據(jù)操作包括:創(chuàng)建文件、創(chuàng)建軟鏈接、創(chuàng)建硬鏈接以及刪除文件; 在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的數(shù)據(jù)操作; 在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第三類元數(shù)據(jù)操作,所述第三類元數(shù)據(jù)操作包括:刪除目錄。
6.根據(jù)權(quán)利要求1-5任一項(xiàng)所述的方法,其特征在于,還包括: 在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作的過程中,配置所述從端文件的文件名與至少兩個(gè)文件標(biāo)識(shí)相對(duì)應(yīng)。
7.根據(jù)權(quán)利要求1-6任一項(xiàng)所述的方法,其特征在于,獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括: 在所述主端文件系統(tǒng)中第一文件的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
8.根據(jù)權(quán)利要求1-6任一項(xiàng)所述的方法,其特征在于,獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括: 在所述主端文件系統(tǒng)中第一文件的數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的數(shù)據(jù)位圖。
9.根據(jù)權(quán)利要求1-6任一項(xiàng)所述的方法,其特征在于,獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,還包括: 在所述主端文件系統(tǒng)中第一目錄的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一目錄建立所述第一目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。
10.一種文件系統(tǒng)復(fù)制裝置,其特征在于,包括: 獲取模塊,用于獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖;根據(jù)所述文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖中基于語義記錄的操作,獲取預(yù)設(shè)時(shí)間段內(nèi)所述主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型; 確定模塊,用于根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,結(jié)合所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照,確定所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作; 復(fù)制模塊,用于在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述確定模塊,具體用于在所述操作類型包括下述一項(xiàng)或任意組合:創(chuàng)建、刪除、修改文件名、修改目錄名時(shí),比較所述預(yù)設(shè)時(shí)間段終點(diǎn)的快照和所述預(yù)設(shè)時(shí)間段起點(diǎn)的快照,獲取所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異;根據(jù)所述預(yù)設(shè)時(shí)間段內(nèi)主端文件系統(tǒng)中文件和/或目錄進(jìn)行的操作類型,以及所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段終點(diǎn)和起點(diǎn)的差異,反演出所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段的操作。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,還包括: 劃分模塊,用于在獲取主端文件系統(tǒng)中文件對(duì)應(yīng)的元數(shù)據(jù)位圖、文件對(duì)應(yīng)的數(shù)據(jù)位圖以及目錄對(duì)應(yīng)的元數(shù)據(jù)位圖之前,將所述主端的文件系統(tǒng)中的操作和從端的文件系統(tǒng)的操作均劃分為元數(shù)據(jù)操作和數(shù)據(jù)操作。
13.根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述復(fù)制模塊,具體用于在從端分別復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的元數(shù)據(jù)操作和數(shù)據(jù)操作。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述復(fù)制模塊,具體用于在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第一類元數(shù)據(jù)操作,所述第一類元數(shù)據(jù)操作包括:創(chuàng)建目錄、修改目錄名;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第二類元數(shù)據(jù)操作,所述第二類元數(shù)據(jù)操作包括:創(chuàng)建文件、創(chuàng)建軟鏈接、創(chuàng)建硬鏈接以及刪除文件;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的數(shù)據(jù)操作;在從端復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的第三類元數(shù)據(jù)操作,所述第三類元數(shù)據(jù)操作包括:刪除目錄。
15.根據(jù)權(quán)利要求10-14任一項(xiàng)所述的裝置,其特征在于,還包括: 配置模塊,用于在從端按照預(yù)設(shè)規(guī)則復(fù)制執(zhí)行所述主端文件系統(tǒng)在所述預(yù)設(shè)時(shí)間段內(nèi)進(jìn)行的操作的過程中,配置所述從端文件的文件名與至少兩個(gè)文件標(biāo)識(shí)相對(duì)應(yīng)。
16.根據(jù)權(quán)利要求10-15任一項(xiàng)所述的裝置,其特征在于,還包括: 第一建立模塊,用于在所述主端文件系統(tǒng)中第一文件的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的元數(shù)據(jù)位圖。
17.根據(jù)權(quán)利要求10-15任一項(xiàng)所述的裝置,其特征在于,還包括: 第二建立模塊,用于在所述主端文件系統(tǒng)中第一文件的數(shù)據(jù)發(fā)生變化時(shí),為所述第一文件建立所述第一文件對(duì)應(yīng)的數(shù)據(jù)位圖。
18.根據(jù)權(quán)利要求10-15任一項(xiàng)所述的裝置,其特征在于,還包括: 第三建立模塊,用于在所述主端文件系統(tǒng)中第一目錄的元數(shù)據(jù)發(fā)生變化時(shí),為所述第一目錄建立所述第一目錄對(duì)應(yīng)的元數(shù)據(jù)位圖。
【文檔編號(hào)】G06F17/30GK104462290SQ201410706206
【公開日】2015年3月25日 申請(qǐng)日期:2014年11月27日 優(yōu)先權(quán)日:2014年11月27日
【發(fā)明者】廖基祥 申請(qǐng)人:華為技術(shù)有限公司