我需要复制存储在sqlserver中的表和数据(大约5年的数据,6200个表),我使用datastage和odbc连接来连接和datstage自动创建带有数据的表,但是每个表需要2-3个小时作为表是非常大的(0.5 gig,300 +列和约400k行).
我怎样才能达到这个速度,因为按照这个速度,我每天只能复制5张桌子,但在30天内我需要移动这6000张桌子.
我正在考虑使用RCP来运行通用数据存储作业,但每次调用时初始SQL都会更改.是否有一个过程,我可以使用用户活动变量从文本文件或其他东西注入SQL,以便我可以使用相同的数据流?
我知道这个例程可以读取一个文件来查找参数:
Routine = ‘ReadFile’
vFileName = Arg1
vArray = ”
vCounter = 0
OPENSEQ vFileName to vFileHandle
Else Call DSLogFatal(“Error opening file list: “:vFileName,Routine)
Loop
While READSEQ vLine FROM vFileHandle
vCounter = vCounter + 1
vArray = Fields(vLine,’,’,1)
vArray = Fields(vLine,’,’,2)
vArray = Fields(vLine,’,’,3)
Repeat
CLOSESEQ vFileHandle
Ans = vArray
Return Ans
Run Code Online (Sandbox Code Playgroud)
但这是否意味着我只将SQL存储在一条单行中,即使它很长?谢谢.
我收到' SQL1024N 数据库连接不存在。SQLSTATE=08003 '错误,在 Datastage 9.1 (AIX Server) 中通过执行命令阶段执行 ' db2 -x ' 命令。任何人都可以帮助我吗?
我正在使用PigLatin.我想从包中删除重复项,并希望保留特定键的最后一个元素.
Input:
User1 7 LA
User1 8 NYC
User1 9 NYC
User2 3 NYC
User2 4 DC
Output:
User1 9 NYC
User2 4 DC
Run Code Online (Sandbox Code Playgroud)
这里第一个提交是关键.我希望在输出中保留该特定键的最后一条记录.
我知道如何保留第一个元素.如下.但是无法保留最后一个元素.
inpt = load '......' ......;
user_grp = GROUP inpt BY $0;
filtered = FOREACH user_grp {
top_rec = LIMIT inpt 1;
GENERATE FLATTEN(top_rec);
};
Run Code Online (Sandbox Code Playgroud)
有人可以帮我这个吗?提前致谢!
我有一个数据存储项目,在oracle表中,我在SQL Server表上写.
服务器在unix机器上.
通过odbc阶段的insert语句不起作用.
在要加载的字段中,有SQL Server日期时间和时间戳.
我不知道如何转换这两种格式的时间戳数据.
拜托,有人可以帮帮我!?
谢谢