大數(shù)據(jù)量遷移的一些心得

          最近遷移了一個大約30G的SQL SERVER 2000的數(shù)據(jù)庫到DB2 8.1。以下為遷移的工作心得:
          1、在大表的遷移中,不要因?yàn)閳D快而先遷移數(shù)據(jù)然后建立主鍵索引。因?yàn)楹苡锌赡芟到y(tǒng)沒有足夠的資源完成這樣的操作。我在遷移超過400萬行記錄的表時,等遷移完數(shù)據(jù)后,再建立Primary Key時,提示資源不足而出錯。

          2、插入數(shù)據(jù)可以使用DB2的一個特色功能,一個Insert語句,可以帶多個Values。
          INSERT INTO T (F1, F2) VALUES (?, ?), (?, ?) , (?, ?), (?, ?), (?, ?)
          這樣的方式,要比addBatch的方式要快。

          3、主表和從表的外鍵關(guān)聯(lián)問題
          例如主表為A,從表為B。
          TABLE A (
          A1 VARCHAR(50)
          )
          TABLE B (
          B1 VARCHAR(40),
          CONSTRAINT Fk_B FOREIGN KEY (B1) REFERENCES A (A1)
          )
          外鍵 Fk_B (B1) REFERENCES A (A1)
          其中A表數(shù)據(jù):
          A1
          'aa'
          'bb'

          B表
          'Aa'
          'bB'

          這在SQL Server中,缺省的建庫不區(qū)分大小寫,它是合法的。遷移到DB2中時,由于庫是大小寫區(qū)分,出現(xiàn)錯誤。

          建議:在SQL Server中,我們直接使用區(qū)分大小的選項(xiàng)建立數(shù)據(jù)庫,與所有的支持的數(shù)據(jù)庫一致。這樣我們的程序更容易發(fā)現(xiàn)多數(shù)庫支持的錯誤。

          4、海量數(shù)據(jù)庫的遷移工作耗時很長,建議以后規(guī)劃這類工作時,給予更多的時間,否則很容易出現(xiàn)延遲或者無法完成任務(wù)的情況。


          文章來源:http://www.cnblogs.com/jobs/archive/2004/10/03/48683.html
          posted on 2004-10-03 00:34 溫少的日志 閱讀(517) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
           
          主站蜘蛛池模板: 东莞市| 磐安县| 上饶市| 阳春市| 枝江市| 洪洞县| 红河县| 响水县| 山丹县| 罗山县| 元朗区| 昌黎县| 铁岭市| 鄂尔多斯市| 高州市| 永胜县| 雷山县| 广南县| 平和县| 揭东县| 同江市| 吴旗县| 明溪县| 曲阳县| 平昌县| 鲁山县| 宜兰县| 远安县| 甘德县| 临武县| 河津市| 交城县| 广水市| 蒙自县| 大城县| 二连浩特市| 古交市| 绥棱县| 绩溪县| 金寨县| 嫩江县|