異質資料庫的大量資料import |
尚未結案
|
cyl
中階會員 發表:163 回覆:171 積分:66 註冊:2002-07-11 發送簡訊給我 |
請問我在Oracle有一個200百多萬筆資料要insert到Ms Sql要如何增快速度??
我有幾各觀念疑問??
1.我看了李維本書,書中提到,每次在抓取資料時,最好把recordpack=100,每次只抓取100筆資料,但是要抓第101筆時是要user去瀏覽資料才能往下取下100筆資料,但是我的是bath作業,要如何能自動抓下一個封包資料???
2.當在insert資料時,往往都會寫成
for i:=0 to clientdataset.recordcount-1 但是一但寫了 clientdataset.recordcount不是又代表一次把200百多萬筆資料又一次抓完,就算設定recordpack=100也失效,但是若不這樣寫,又如何得知資料的筆數呢??
|
arvinhsu
一般會員 發表:0 回覆:10 積分:7 註冊:2003-04-03 發送簡訊給我 |
|
pgdennis
資深會員 發表:41 回覆:526 積分:443 註冊:2002-05-23 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
cyl
中階會員 發表:163 回覆:171 積分:66 註冊:2002-07-11 發送簡訊給我 |
1.我知道DTS可以做到還很快1小時就可以把2百多萬筆資料轉完,
2.至於Bathmove是用BDE連接,在李維的書中提到,dbexpress連接資料庫會比較快
所以我就沒使用bathmove,改用dbexpress測試
3.是把Oracle --> Ms sql
4.我是想試試看,用Delphi如何能寫出像DTS轉資料那麼快的速度,我想探討如何能利用Dbexpress寫出像DTS能做到的速度,其中一定有很多原理我們疏忽....
5.pgdennis所說到的用Bathmove到底要如何做,才能讓資料不是一筆一筆insert
6.我目前有一個想法,只要不要上資料進transaction log速度會提昇很多, 不過還不知道如何寫
|
pgdennis
資深會員 發表:41 回覆:526 積分:443 註冊:2002-05-23 發送簡訊給我 |
引言: 1.我知道DTS可以做到還很快1小時就可以把2百多萬筆資料轉完, 2.至於Bathmove是用BDE連接,在李維的書中提到,dbexpress連接資料庫會比較快 所以我就沒使用bathmove,改用dbexpress測試 3.是把Oracle --> Ms sql 4.我是想試試看,用Delphi如何能寫出像DTS轉資料那麼快的速度,我想探討如何能利用Dbexpress寫出像DTS能做到的速度,其中一定有很多原理我們疏忽.... 5.pgdennis所說到的用Bathmove到底要如何做,才能讓資料不是一筆一筆insert 6.我目前有一個想法,只要不要上資料進transaction log速度會提昇很多, 不過還不知道如何寫4.不是疏忽,那些原理是機密,batchmove元件也是呼叫DbiBatchMove api,想要知到原理,只能進入DbiBatchMove觀察,不過到是有機可循啦,個人猜測,像oracle有sql loader可以大量import資料,而oralce 提供的oci interface可以呼叫之,我猜DbiBatchMove 該不會是直接跟OCI打交道,簡單的說,應該是資料庫系統如果有開放資料import的介面,應該就可以用程式呼叫,至於資料庫端是如何做的,這就是各家廠商的機密啦... > 永遠追不上技術更新的速度~~< src="http://140.134.4.20/~g8905202/pucca.gif">
------
星期一,二...無窮迴圈@@ |
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
|
cyl
中階會員 發表:163 回覆:171 積分:66 註冊:2002-07-11 發送簡訊給我 |
|
vip88
一般會員 發表:8 回覆:23 積分:6 註冊:2002-07-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |