軟件技術實施人員如何處理數據問題

               軟件技術實施人員處理數據問題sql

軟件業務系統在升級切換上線的時候一個很重要的環節就是數據移植。數據移植人員每每在行業性軟件業務系統上線升級的時候扮演着重要的角色,其重要性也不言而喻。一些大中公司每每還有專門的數據移植部門和專門的數據移植人員,也具備其一套標準的數據移植步驟和數據規範性檢測辦法。然而,在業務系統上線升級階段以及上線後的維穩階段都會不斷的出現一些因爲數據問題形成影響業務進行下去的狀況。數據庫



                        01編程

根據以往的工做經驗來看,形成這種緣由的狀況有如下幾個方面:oracle

第一,業務系統多年來歷史數據遺留下來的數據問題。不少行業性業務系統自使用軟件系統辦公以來已經具備十多年的歷史數據了,可是十多年來的歷史數據中有些數據自己就是不規範的,多年沉積下來的歷史遺留問題在新系統上線使用的時候獲得了爆發體現。好比,在一些公積金業務系統中我的帳號已經作了銷戶,可是我的帳戶餘額卻不爲零。ide

第二,業務系統上線的時候數據移植人員因爲技術能力不足或者因爲疏忽形成的。不少數據移植人員因爲系統上線計劃緊迫,作數據移植並未對數據遷移與處理的全面和充分。這類數據可能對於一些主要業務不會形成大的問題,可是對於一些個性化業務每每是致命殺手。例如,在一些公積金業務系統中進行數據遷移的時候貸款職工歷史還款記錄中都是銀行現金還款的到了新系統的還款明細表中卻變成了公積金對衝的。函數

第三,新的業務系統因爲程序存在重大的bug形成的數據問題。軟件系統沒有完美一說,總會或多或少的存在着若干問題,因爲這種行業性業務系統bug也是無處不在的。程序的本質就是做用於數據,bug的體現要麼就是阻礙了業務流程的進行,要麼就是沒有阻礙業務可是破壞了數據,讓數據變得不規範。學習

第四,因爲作業務的人員業務能力不足,對於業務不熟悉,作業務時不規範致使的數據問題。這種數據問題通常出現的機率較少,可是也是存在的。測試



                        02大數據

做爲一名合格的軟件技術實施人員(有時候有的公司沒有專門的數據移植人員,所以這裏統稱爲軟件技術實施人員),不可避免的會遇到上面四種不一樣緣由形成的數據問題。這裏針對每種緣由形成的數據問題總結一些專門的應對方法,以及處理數據問題都必需要注意的事項。spa

對於第一種緣由形成的數據,因爲是歷史性遺留問題,必定要妥善處理,處理得當可能會獲得客戶的表揚。萬一處理不當,則會牽一髮而動全身,出現更爲重大的數據問題。若是這樣的話那麼得不償失的。可是若是是一些基礎性數據問題的話,那麼咱們能夠根據行業性基礎數據的規範處理就行。例如,這我的的人名不對,這我的的×××少了一位,若是是公積金數據的話這些大可根據住建部貫標數據規範GB的相關文件處理就行。

對於第二種緣由形成的數據問題,每每是技術人員寫的數據移植sql代碼有漏洞。所以,咱們咱們首先須要去檢查下歷史數據移植腳本,這裏重點強調下,歷史數據移植腳本必定要保留下來做爲資料備案,由於這樣之後有問題了能夠去查看相關腳本。這種問題一旦發現了應該立刻進行書寫數據庫編程腳本進行數據糾正,防止更離譜的數據問題發生。處理這類問題要善於發現數據規律,要對數據很敏感,抓住數據的本質。

對於第三種緣由形成的數據問題,若是因爲bug形成了比較大的數據問題。首先應該防止錯誤數據錯上加錯,這時若是有必要的話能夠和客戶方進行說服溝通先中止掉業務;其次,應該立刻組織數據人員對編寫sql腳本對錯誤數據進行糾正處理,包括函數,視圖,存儲過程,觸發器都有可能用到;第三,應該完全測查形成數據問題的程序問題,從跟本上杜絕。尤爲是一些與資金計算相關的字段,咱們要格外注意。在下就曾經經歷過因爲數據移植形成的兩個字段數據不對,形成職工我的帳戶餘額不許確的重要數據問題。三個技術人員連續做戰三天三夜纔將問題解決。

對於第四種緣由形成的數據問題,應該和客戶業務部門進行合理溝通,明確責任。甲方作錯了業務,咱們乙方能夠幫助他們處理,可是必定要說清楚這個不是咱們軟件系統形成的。這類問題通常比較好處理。總得來講,最難處理的數據問題是前三種。



                        03

另外,處理數據問題針對於任何行業的業務系統都要注意的幾條事項在這裏總結下,以供小夥伴學習下:

A.處理數據前必定要理清業務邏輯,理清業務流程。任何行業的業務系統都有其一套特定的行業業務,行業邏輯。業務就是甲方行業的工做知識。不要把業務離不開甲方行業工做,這樣不免會閉門形成。教育系統,醫療系統,金融系統每一個行業的系統業務邏輯都是不相同的。其實作這些系統每每能讓咱們瞭解另外一個行業,透過這個行業去折射咱們的生活。只有理清了業務邏輯和業務流程後處理數據,纔不會出現處理了A表的數據沒有處理B表的數據,處理了這個字段卻漏了那個字段沒有處理。

B.處理數據前必定要與客戶溝通確認,甚至要有書面申請文本,書面簽字確認。若是沒有這些,乙方技術人員通常不要去隨意修改數據,修改很差反而形成工做失誤。

C.處理數據前必定要先數據備份,先備份,先備份,先備份,重要的事情說三遍。數據備份也要根據狀況進行,若是重大數據問題處理,涉及到多個主要業務表,對於oracle的話必定要利用emdp/impdp進行邏輯備份;若是是中型數據問題,那麼能夠利用create table A_backup as select * from A;通常狀況下也能夠用導出sql或者導出excel的方式進行備份。

D.處理數據後必定要對數據和腳本備份,後備份,後備份,後備份,重要的事情說三遍。

若是數據技術工程師處理完數據後必定要對處理後的數據和處理數據的腳本進行後備份,便於若是有後續問題進行對比查看。

E.處理完數據後到業務系統中進行測試,確保業務系統可以按正常邏輯進行。

F.最後應該專門創建能夠insert,update,delete數據的用戶,專門創建只能select的用戶,這樣能夠必定程度上防止數據管理誤操做中帶來的問題。



總之,在這個數據時代,軟件系統數據問題非同小可,必定要謹慎又謹慎!

相關文章
相關標籤/搜索