HPL with Informix 7.31 on Windows
Posted in 2017
A user wanted to move a 185GB, ~1000-table database between servers faster than dbexport/dbimport, but found no ipload or onpladm in Informix 7.31 on Windows. Replies explained onpladm only arrived in 9.21, so 7.31 requires the ipload GUI (docs linked). Alternatives suggested: stick with dbexport/dbimport but speed the load using an unlogged database, PDQ for index/procedure creation, and unloading through a pipe to gzip; or run Art Kagel's myexport/myimport (bash/ksh, IIUG) from a Linux box or VM with the CSDK connecting over TCP to the Windows server. No single resolution was confirmed by the poster.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Migration, Import/Export & Data Conversion, Java & JDBC Development
Dear Friends:
I am looking for how to export a database and then import it into another
server without using dbexport and dbimport.
I have been investigating the HPL, but Informix 7.31 for Windows does not
contain ipload, so putting the work together would become a completely manual
job, if this is possible.
I made a program in Java, which takes the file dbexport.out, and returns me
the table-dump file pair. Can I do anything with this?
Can someone give me an example of creating a file to use with the onpload ?.
My base has about 1000 tables.
Thank you for your attention.
Gustavo
1 - Create the project
onpladm create project migrate
2 - Create the unload job
onpladm create job <table> -p migrate -d "<destination>" -D
<database> -t <table> -fu
3 - Run the job
onpload -p migrate -j <table> -fu
Not sure of the -d, but you can look up the doc.
One of the big issues we had with Windows was dumping to a pipe instead
of a disk file. It can be done
There is also a -z option for the job creation, in which you indicate
the file format you want, default is pipe delimited.
I wrote this up as a script years ago and tried to open source it. It's
still stuck in the approval process and is way obsolete now.
cheers
j.
On 5/31/17 12:21 PM, GUSTAVO ECHENIQUE wrote:
> Dear Friends:
>
> I am looking for how to export a database and then import it into another
> server without using dbexport and dbimport.
>
> I have been investigating the HPL, but Informix 7.31 for Windows does not
> contain ipload, so putting the work together would become a completely manual
> job, if this is possible.
>
> I made a program in Java, which takes the file dbexport.out, and returns me
> the table-dump file pair. Can I do anything with this?
>
> Can someone give me an example of creating a file to use with the onpload ?.
> My base has about 1000 tables.
>
> Thank you for your attention.
>
> Gustavo
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
Thanks for your prompt response Jack!
You know, among the executables I can not find the onpladm!!!
Version 7.31 is so old that there was no onpladm, that did not come until
version 9.21.
You will need to use the gui - ipload.
7.31 HPL is documented at http://publib.boulder.ibm.com/epubs/pdf/4344.pdf
Regards,
David.
> On 31 May 2017 at 17:50 GUSTAVO ECHENIQUE <gustavo.echenique@cemdo.com.ar>
wrote:
>
>
> Thanks for your prompt response Jack!
>
> You know, among the executables I can not find the onpladm!!!
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
7.3 is a little early for onpladm - unsure if it was there.
But, the unload is never a huge time sink, it's the reload that takes
time. So you could get away with an "unload" and it wouldn't be much
slower.
If you want to speed it up, you could unload to a pipe and have a gzip
sitting on the other side of the pipe. That will crank up your CPU, but
reduce your disk I/O - making it roughly 2x faster.
How much data are you talking about?
j.
On 5/31/17 12:50 PM, GUSTAVO ECHENIQUE wrote:
> Thanks for your prompt response Jack!
>
> You know, among the executables I can not find the onpladm!!!
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
Hi Jack!
I'm talking about a base of 185 GB in size (quite considerable).
I saw in some articles that IBM recommends mounting an Informix server on a
Unix, and hence using "ipload" to create the jobs. But it's a drawback when
you do not know anything about Unix (like me).
To make matters worse, the help of Informix PDF's is cryptic, at least for me,
and there is no practical example about creating a file manually and then
running it with the "onpload".
Hello david!
I saw in some articles that IBM recommends mounting an Informix server on a
Unix, and hence using "ipload" to create the jobs. But it's a drawback when
you do not know anything about Unix (like me).
To make matters worse, the help of Informix PDF's is cryptic, at least for me,
and there is no practical example about creating a file manually and then
running it with the "onpload".
Gustavo
While parallel HPL loads may be quickest and ideally you'd want to do a
simultaneous unload/load (if this is possible with Windows as I think you need
a named pipe), it's doable to use dbexport/dbimport for a database of this
size and probably a whole lot easier.
Techniques like loading into an unlogged database and building indices at the
end of the load with PDQ can speed up the load. You can hack the SQL file
produced by dbexport to use PDQ, remembering to use it only for index creation
and procedures.
The time can be consumed by applying foreign keys (if you have any!) and in
versions before 11.70.xC8, which has both an improved FK creation mechanism
and the "no validate" option can be slow.
Ben.
You can use my dbexport, dbimport replacement package, myexport. It can use
hploader using the myonpload utility. Both are from the IIUG Software
repository. You will also need my utils2_ak package.
Art
On May 31, 2017 12:21, "GUSTAVO ECHENIQUE" <gustavo.echenique@cemdo.com.ar>
wrote:
> Dear Friends:
>
> I am looking for how to export a database and then import it into another
> server without using dbexport and dbimport.
>
> I have been investigating the HPL, but Informix 7.31 for Windows does not
> contain ipload, so putting the work together would become a completely
> manual
> job, if this is possible.
>
> I made a program in Java, which takes the file dbexport.out, and returns me
> the table-dump file pair. Can I do anything with this?
>
> Can someone give me an example of creating a file to use with the onpload
> ?.
> My base has about 1000 tables.
>
> Thank you for your attention.
>
> Gustavo
>
>
> ************************************************************
> *******************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
Hello Art!
I understand that your utilities are by far, significantly faster than
dbexport and dbimport.
But I should use them on Linux, is that right? If so, how should I do it?
Thank you very much for your answer.
Yes, I realized after I posted that you were asking about Windows.
Myexport/myimport are bash/ksh scripts so not practical on Windows. You
could set up a Linux machine or even a VM, install the Informix CSDK and
point the sqlhosts file there to the server on windows (assuming that
server has a TCP connection type defined).
Obviously you will have to download, compile, and install the various
pieces of my utilities on the Linux system, but, then you will be able to
run the export on Linux. If it's a local VM on the Windows server or you
have a fast network in house, it won't be too inefficient.
Art
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=s
ig-email&utm_content=webmail&utm_term=icon>
Virus-free.
www.avast.com
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=s
ig-email&utm_content=webmail&utm_term=link>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
Art S. Kagel, President and Principal Consultant
ASK Database Management
www.askdbmgt.com
Blog: http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions
and do not reflect on the IIUG, nor any other organization with which I am
associated either explicitly, implicitly, or by inference. Neither do
those opinions reflect those of other individuals affiliated with any
entity with which I am affiliated nor those of the entities themselves.
On Fri, Jun 2, 2017 at 11:50 AM, GUSTAVO ECHENIQUE <
gustavo.echenique@cemdo.com.ar> wrote:
> Hello Art!
>
> I understand that your utilities are by far, significantly faster than
> dbexport and dbimport.
>
> But I should use them on Linux, is that right? If so, how should I do it?
>
> Thank you very much for your answer.
>
>
> ************************************************************
> *******************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>