如何應(yīng)對(duì)無(wú)可避免的數(shù)據(jù)損壞?
全球最大的粒子物理學(xué)實(shí)驗(yàn)室CERN最近對(duì)數(shù)據(jù)損壞和字節(jié)破壞問(wèn)題進(jìn)行了研究。CERN的Peter Keleman總結(jié)出了存儲(chǔ)專業(yè)人士務(wù)必了解的一些可能的解決方案。但是這與最終用戶有什么關(guān)系呢?在幾個(gè)月之前,我在旅途中碰巧遇到了這樣一個(gè)問(wèn)題,我懷疑是由數(shù)據(jù)損壞引起的。作為一名顧問(wèn),我經(jīng)常到各地出差,為了提前預(yù)定各種票和房間,我成為了許多酒店、航空公司、租車(chē)公司和其他旅游公司的會(huì)員。
本文引用地址:http://m.butianyuan.cn/article/201706/355457.htm在8月份的一個(gè)早晨,我登錄到一家不知名的旅游公司網(wǎng)站上為未來(lái)一周的旅游進(jìn)行了預(yù)定。幾個(gè)小時(shí)之后我再次登錄該網(wǎng)站,結(jié)果登錄密碼不能用了。我以為網(wǎng)站暫時(shí)關(guān)閉了,然后就在午飯后又嘗試登錄網(wǎng)站,但是遇到了同樣的問(wèn)題。我撥打網(wǎng)站的客服電話,結(jié)果被告知他們也不知道出現(xiàn)了什么問(wèn)題,他們說(shuō)他們可以將我的密碼通過(guò)電子郵件發(fā)送給我。
我受到密碼之后,發(fā)現(xiàn)有些事情出現(xiàn)了可怕的錯(cuò)誤:我的密碼是以()!@結(jié)尾的,結(jié)果變成了(]!@。 我害怕有人已經(jīng)獲得了我的密碼,然后更改了密碼并使用了我的信用卡,或者出現(xiàn)更壞的情況。我再次致電公司并且要求二線網(wǎng)絡(luò)支持服務(wù)。我詢問(wèn)他們我的密碼最后是在什么時(shí)候被更改的。他們告訴我是在一年之前,也就是說(shuō)沒(méi)有發(fā)生身份被竊的問(wèn)題。
字符的問(wèn)題
我決定對(duì)這件事進(jìn)行進(jìn)一步的調(diào)查,這多少與我的專業(yè)也有一定的關(guān)系。我猜想這個(gè)問(wèn)題肯定跟字符集有關(guān)。我假定那個(gè)系統(tǒng)沒(méi)有使用IBM的主機(jī),而且使用的是ASCII碼而不是EBCDIC碼。首先我去查詢了ASCII字符轉(zhuǎn)換表。下面就是ASCII碼中的)和]這兩種字符被轉(zhuǎn)換成其他碼之后的各種形式。
二進(jìn)制 八進(jìn)制 十進(jìn)制 十六進(jìn)制 鍵盤(pán)字符
010 1001 051 41 29 )
101 1101 135 93 5D ]
我一直懷疑,如果發(fā)現(xiàn)大環(huán)境中出現(xiàn)至少3個(gè)無(wú)法解釋的錯(cuò)誤之后,數(shù)據(jù)可能就被損壞了。CERN字符集的變動(dòng)證明我并非杞人憂天。據(jù)我所知,CERN使用的大部分磁盤(pán)驅(qū)動(dòng)器都是SATA驅(qū)動(dòng)器。這是否是我的密碼信息出錯(cuò)的原因呢?顯然,在構(gòu)成密碼的7個(gè)字符中,有4個(gè)已經(jīng)改動(dòng)過(guò)了。
我想我需要再次向公司求助。那時(shí)已經(jīng)到了傍晚時(shí)分,但是我一下子就打到了一線支持處,于是我開(kāi)始談?wù)揂SCII編碼和字節(jié)變換。幾分鐘之內(nèi),我與二線支持客服取得了聯(lián)系。他了解了我的想法但是認(rèn)為我有些過(guò)分了:?jiǎn)栴}已經(jīng)得到解決之后,我為什么要深究他們是否損壞了我的密碼呢?過(guò)了一會(huì)之后,我聯(lián)系上了第三線支持客服。我解釋說(shuō),我是一位存儲(chǔ)顧問(wèn)然后將我對(duì)這個(gè)問(wèn)題的認(rèn)識(shí)重新解釋了一遍。結(jié)果發(fā)生了一件有趣的事:他剛剛也接到另一位用戶的電話,而且那位用戶也是一位計(jì)算機(jī)顧問(wèn)并且也遇到了相同的問(wèn)題,只是他的密碼被改成了另一個(gè)不同的字符。兩個(gè)人在同一天遇到了相同的問(wèn)題。
我對(duì)三線支持客服說(shuō),如果硬盤(pán)是SATA或者FC的話,他們也許應(yīng)該檢查一下與密碼有關(guān)的磁盤(pán)通道和硬盤(pán)驅(qū)動(dòng)器,我要求他們將檢查的結(jié)果通過(guò)電子郵件告訴我。他們自然表示同意,然而除了一次例行客服調(diào)查之外,我當(dāng)然再也沒(méi)有獲得回音。能夠找出問(wèn)題的真正原因當(dāng)然是好的,但是那些公司當(dāng)然不愿意將真正的原因告知外人。
有限的努力
我永遠(yuǎn)也無(wú)法知道我的密碼被損壞的真正原因是什么以及為什么另一個(gè)用戶的密碼也被損壞,或者這個(gè)問(wèn)題到底影響了多少用戶。就象我的家用電腦出現(xiàn)數(shù)據(jù)損壞情況之后我所說(shuō)的那樣,我相信數(shù)據(jù)是可能被損壞的,目前針對(duì)這方面的問(wèn)題的保護(hù)措施仍十分有限。
T10集團(tuán)將采用一項(xiàng)名為Data Integrity Field的新標(biāo)準(zhǔn),那項(xiàng)標(biāo)準(zhǔn)將從SCSI驅(qū)動(dòng)器發(fā)送一個(gè)檢驗(yàn)數(shù)字到磁盤(pán)。這種做法和Sun公司的ZFS文件系統(tǒng)似乎可以對(duì)數(shù)據(jù)損壞情況進(jìn)行一定的保護(hù),但是要想使用這些技術(shù)都還需要其他一些條件。業(yè)內(nèi)對(duì)這些類型的數(shù)據(jù)損壞問(wèn)題的認(rèn)識(shí)仍十分有限,對(duì)于這些問(wèn)題的研究也比較困難。當(dāng)你遇到這類問(wèn)題的時(shí)候,你必須找到問(wèn)題的原因并立即解決它,但是通常情況下,人們會(huì)更換掉部分組件,而且永遠(yuǎn)也弄不明白是什么損壞了,以及為什么會(huì)發(fā)生數(shù)據(jù)損壞和它是如何發(fā)生的。
我比以前更加確定數(shù)據(jù)損壞是肯定會(huì)發(fā)生的,而且在目前的技術(shù)水平下我們對(duì)此是無(wú)能為力的。隨著數(shù)據(jù)和全球數(shù)據(jù)網(wǎng)絡(luò)的急劇增長(zhǎng),我們需要合適的糾錯(cuò)技術(shù)去解決整改數(shù)據(jù)通路中發(fā)生的數(shù)據(jù)損壞問(wèn)題。但是問(wèn)題是,我們是否愿意承擔(dān)那么做的成本?糾錯(cuò)將降低系統(tǒng)的性能并增加成本。為了提高數(shù)據(jù)系統(tǒng)的可靠性,我愿意負(fù)擔(dān)那個(gè)成本。你愿意嗎?
評(píng)論