구디비에서 신디비로 데이터를 이관해야하는데
unload 로 데이터를 내릴 것이고 load로 신디비로 올립니다.
그런데 한건한건의 userid를 다 신규ID로 특정테이블(new_acc)에서 찾아서 변경해 주어야하는데요
1. unload시에 new_acc에서 셀렉을 해서 바꿔 텍스트로 내리고 그냥 sqlload 하는 방법
2. unload시에는 그냥 내리고 load로 다시 신서버로 올릴때 new_acc에서 셀렉해서 바꿔서 올리는 방법
두가지 방법 중 어느 방법이 더 빠른지 알고싶습니다.
unload로 구DB에서 내릴때 바꾸면
"
unload to a_table.unl
select mail, (select new_userid from new_acc where new_acc.old_userid=a_table.userid) from a_table;
"
요런형태 이고
sqlload로 신DB로 올릴때 바꾸면
"
load data
infile a_table.unl
append --insert, replace, truncate
into table a_table
fields terminated by '|'
-- null or non_existent, TRAILING NULLCOLS를 생략하면 Load가 되지 않습니다.
trailing nullcols
(
mail char,
userid char, ( userid "select userid from new_acc where userid = :userid" )
)
"
이런형태 일것으로 보입니다.
|