473,395 Members | 1,464 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

Unidata Universe impot into PostgreSQL

My company is researching the idea of moving from a very large, old
and complex UniData DB to something else that is newer and quicker. I
was thinking about PostgreSQL, but am not sure PostgreSQL could import
the data, and / or what kinds of issues could arrise, not to mention
if it's even possible in the first place.

Your thoughs would be greatly appreciated!
thanks!
Ralph
Jul 19 '05 #1
1 2700
Quoth ph***@pacbell.net (Ralph):
My company is researching the idea of moving from a very large, old
and complex UniData DB to something else that is newer and quicker. I
was thinking about PostgreSQL, but am not sure PostgreSQL could import
the data, and / or what kinds of issues could arrise, not to mention
if it's even possible in the first place.

Your thoughs would be greatly appreciated!
thanks!
Ralph


You might take a look at the "conversions" documents...
<http://techdocs.postgresql.org/#convertfrom>

Take a look at your database schemas to see if you are using any data
types not supported by PostgreSQL; it would seem very unlikely that
this would be the case.

You'll need to start some form of project to see about getting the
data out of the existing database and into PostgreSQL; I'm not sure
what UniData has as export tools, but you have quite a lot of
flexibility in pushing data into PostgreSQL.

The "methodology" that I prefer to use for such conversions is to take
the input data, "massage" it, _as text_, and thereby generate a script
of SQL statements that may be directly loaded in. That is preferable
to writing a program that does direct inserts because you can read the
SQL scripts to help debug the process beforehand, and refer back to it
afterwards if there is a need to document anomalies found later.

If speed is _not_ a priority, then setting up a series of INSERT
statements (perhaps with periodic BEGIN/COMMIT, to cut down on
transaction costs) is one method. That is the 'simple' place to
start.

If it makes sense to do some "interpretation" on the way in, you might
create some stored procedures that are more 'intelligent.' For
instance, in the domain management area, I have sometimes set up a
"create_domain" stored procedure that processes an Internet domain,
filling in values on several of the tables that are involved,
populating appropriate fields with create-time defaults, and setting
up linkages to status information stored in secondary tables.

If you create a suitable set of stored procedures, it may be possible
to "clean up" aspects of the legacy data that may not be totally
clean.

If raw speed is vital, as when time is money, and the time between
shutting down the old system and starting up the new one is a costly
period of downtime, then there are ways of speeding things up. You
generate SQL scripts that contain instances of:

COPY this_table from stdin;
[thousands of rows of tab-delimited data...]
\.

That will be short on data validation, which puts a HIGH value on
testing the conversion HEAVILY before using it...

I have pointed to three methodologies:
1. A bunch of INSERTs;
2. Stored procedures directed to your application;
3. Raw speed via COPY.

It is likely to all be text processing, so whether your favorite text
processing language is Perl, Python, Ruby, Tcl, Awk, or more esoteric
options like Icon, Common Lisp, or M4, that's your call. C/C++/Java
aren't so strong in having nice "syntactic sugar" for string
processing, so they probably aren't nearly as suitable.
--
"cbbrowne","@","ntlug.org"
http://cbbrowne.com/info/linuxdistributions.html
"The reality of the software business today is that if you find
something that can make you ridiculously rich, then that's something
that Microsoft is going to take away from you." -- Max Metral
Jul 19 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Otis Green | last post by:
Vote for or against a new newsgroup proposal. To summarize what you need to do, just send an empty e-mail to postgresql-ballot@netagw.com You will receive a ballot by e-mail. Follow the...
0
by: Bill J. | last post by:
I have to update a PostgreSQL linked server through MSSQL2K. I first configured the connection with ODBC as follows and I can do queries with no problem: EXEC sp_droplinkedsrvlogin @rmtsrvname...
0
by: Bill J. | last post by:
I have to update a PostgreSQL linked server through MSSQL2K. I first configured the connection with ODBC as follows and I can do queries with no problem: EXEC sp_droplinkedsrvlogin @rmtsrvname...
0
by: ruhunu Gamarala | last post by:
Hi, I get the following exception periodically. does anybody what is the reason for it to throw this exception? I really appriciate if anyone can help me on this. thanks, Chinthaka at...
6
by: Peter Downes | last post by:
I have an IBM UniVerse database running on Windows 2003 SBS. Every night the UniVerse services appear to hang, and users cannot connect to the database in the morning. If I try and stop and...
5
by: 1000101011 | last post by:
Hello all A client of ours is using IBM Unidata (U2 product line) V6 and now wants to migrate away to something more dynamic. When I say dynamic I mean industry recognized and able to support a...
0
by: Greg Sabino Mullane | last post by:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 This is a PGP-signed copy of the checksums for following PostgreSQL versions: 7.4.5 7.4.4 7.3.7
0
by: mishrabi | last post by:
Hi Experts, Could you Please provide hoew to Migrating IBM Universe Database to Oracle. Whats are the steps to be taken care and how to extract data into a delimier data file. I am Using Below...
0
by: SagittaDeveloper | last post by:
Hi, I'm have a problem connecting to IBM Universe via JDBC. When I run the connection code to UV from a none web application it connects and returns data. When I use the same connection code...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.