技術(shù)宅
如上所述,出于隱私安全和競爭等因素的限制,大部分網(wǎng)絡(luò)工具的數(shù)據(jù)是無法實現(xiàn)彼此互聯(lián)互通的。因為對于各自開發(fā)的網(wǎng)絡(luò)軟件,每個公司都使用不同的技術(shù)和開發(fā)、加密協(xié)議,這些協(xié)議互不兼容,因此大多無法實現(xiàn)彼此的互聯(lián)互通。
舉個簡單的例子,比如谷歌和微軟都提供了日歷功能,但是默認情況下我們是無法在谷歌Gmail中導入微軟日歷功能的。為了便于其他網(wǎng)絡(luò)工具訪問自己的數(shù)據(jù),服務(wù)商一般是通過開放的API來實現(xiàn)數(shù)據(jù)的共享。API(Application Programming Interface),即應用程序編程接口,它是一段寫好的代碼,或者編譯好的程序,提供給第三方使用,這樣第三方程序利用API就可以實現(xiàn)對特定數(shù)據(jù)的訪問(圖1)。
API可以讓第三方實現(xiàn)對自己開發(fā)軟件數(shù)據(jù)的調(diào)用,但是傳統(tǒng) API只能實現(xiàn)單向的調(diào)用,比如B公司通過A公司的API可以訪問用戶C的數(shù)據(jù),但是A公司卻無法訪問B公司的數(shù)據(jù)。如果要實現(xiàn)A對B的訪問,B就必須再開發(fā)相應的API。這樣每個公司都需要開發(fā)API,顯然要實現(xiàn)彼此的數(shù)據(jù)共享就極不方便。為此谷歌、微軟等提出Data Transfer Project計劃,該計劃可以實現(xiàn)各大公司之間數(shù)據(jù)的雙向、多向共享(圖2)。
如上所述,為了方便各大網(wǎng)絡(luò)軟件之間數(shù)據(jù)的共享,谷歌、微軟等提出Data Transfer Project計劃。那么Data Transfer Project又是怎樣實現(xiàn)彼此數(shù)據(jù)共享的呢?
這項計劃首先是建立一個數(shù)據(jù)模型,這個模型的作用是為不同服務(wù)商的數(shù)據(jù)傳輸和讀取制定一個通用的標準格式。這里主要使用一種名為“適配器”的工具,它可以將用戶的私有數(shù)據(jù)(如郵件、日歷)和身份驗證格式(如賬號、密碼)轉(zhuǎn)換為各個服務(wù)商都可以用的統(tǒng)一表單。用戶數(shù)據(jù)模型被聚集在一起,大多是按照行業(yè)分組,形成垂直的數(shù)據(jù)。用戶可以在一個或多個垂直方向上擁有數(shù)據(jù),比如垂直搜索可以是照片、電子郵件、聯(lián)系人或音樂。這樣通過數(shù)據(jù)模型就可以將用戶在不同服務(wù)商的數(shù)據(jù)變?yōu)榛榭勺x的通用數(shù)據(jù)(圖3)。
接著Data Transfer Project借助“數(shù)據(jù)適配器”和“身份適配器”來實現(xiàn)數(shù)據(jù)讀取和認證。其中數(shù)據(jù)適配器可以將每個公司原來開發(fā)的API轉(zhuǎn)換為Data Transfer Project可以使用的數(shù)據(jù)模型的代碼片段,這樣在其他服務(wù)商開發(fā)的網(wǎng)絡(luò)工具上就可以讀取用戶保存在其中的數(shù)據(jù)。身份驗證適配器允許使用者在將數(shù)據(jù)從一個服務(wù)商傳輸出去或傳輸?shù)搅硪粋€服務(wù)商之前對其賬戶進行身份驗證(圖4)。
最后剩下的就是傳輸管道,Data Transfer Project開發(fā)了一組任務(wù)管理庫來對數(shù)據(jù)的傳輸進行管理,同時在傳輸過程中使用同一加密協(xié)議來保證數(shù)據(jù)傳輸?shù)陌踩?/p>
這樣Data Transfer Project借助一個通用框架(數(shù)據(jù)模型)和生態(tài)系統(tǒng)(數(shù)據(jù)適配器和身份驗證適配器),完成用戶的身份驗證后,用戶私有數(shù)據(jù)就可以從一個服務(wù)商到另一個服務(wù)商之間無縫遷移(圖5)。
現(xiàn)在幾乎每個網(wǎng)蟲都有很多的網(wǎng)絡(luò)賬號,我們會在每個賬號里保存很多的私人文件,如收發(fā)的郵件,拍攝的照片、下載的程序等資源。由于每個網(wǎng)絡(luò)服務(wù)商提供的服務(wù)和品質(zhì)都不同,很多時候我們會根據(jù)自己的需要更換服務(wù)商,但是在之前我們?nèi)绻MV鼓骋痪W(wǎng)絡(luò)服務(wù),比如不想使用Gmail服務(wù),而想改用微軟服務(wù),那么原來在谷歌賬戶上保存的郵件、日歷、照片等,我們就需要下載到本地,然后再上傳到微軟賬戶才能完成賬戶的遷移工作。
現(xiàn)在借助Data Transfer Project服務(wù),我們只要在谷歌賬戶上發(fā)起申請,利用Data Transfer Project提供的遷移服務(wù),在微軟賬戶上就可以將這些數(shù)據(jù)全部遷移到微軟服務(wù)器。這樣的數(shù)據(jù)遷移是不是方便多了?當然作為一項多方共享的數(shù)據(jù)服務(wù),Data Transfer Project將來還會提供更多的服務(wù),比如筆記本的面部識別文件、指紋支付配置文件這些數(shù)據(jù)文件都可以實現(xiàn)遷移,意味著我們只要初始設(shè)置一份文件,以后更換硬件或者網(wǎng)絡(luò)賬號時都可以繼續(xù)使用,方便我們的網(wǎng)絡(luò)生活。