You are on page 1of 3

The below is a post from Rob Fitzpatrick in another thread so some of it's a little

out of context, but I thought it was a fantastic summary of the resources available
to the newbie Progress developer. I have therefore split it out.

Welcome to ProgressTalk! Well you found this place, so that's a very good first
step. I think your next step should be diving into some documentation. As you said,
you're not likely to find anything useful in your local book store, but there are
available resources. Fortunately, the docs from Progress are available online and
are pretty good for the most part. Here are the links to available online
documentation. You can also download them in PDF or HTML form, which I would
recommend as you will consult them a lot. As you are not using ABL by the sounds of
it (ABL is the development language/runtime integrated into OpenEdge), you should
focus on the general database info and SQL-specific info. So look at: Database
Essentials, Database Administration, SQL Reference, SQL Development, and Basic
Database Tools

Also on the subject of access to an OpenEdge database with the SQL engine, look
into the UPDATE STATISTICS command. Bascially, it updates the metadata used by the
SQL query optimizer, which will help your performance. It is also documented in the
SQL Reference and the SQL Development guide, along with other query optimization
info. You'll get a lot of hits if you search for UPDATE STATISTICS on ProgressTalk,
mind you about 90% of them will be people saying things like "you'll get a lot of
hits if you search for UPDATE STATISTICS on ProgressTalk".

If you have some budget for training resources, have a look at the Progress Books
from BravePoint. I can recommend them personally as a great resource with a lot of
practical advice for a newbie. BravePoint also sells a range of software products
and utilities that integrate with OpenEdge (I have no affiliation with BravePoint;
I just bought the books).

If you're going to be the go-to person in your shop for all things Progress, you
will need to know how to monitor a running database. Get to know promon, which you
already have as part of your Progress installation. Once you get your head around
that, download ProTop and/or ProTop for .NET from Tom Bascom of DBAppraise (and
White Star Software). (It's free!) You'll see a lot of posts from Tom on this
forum. Also get to know SQL Explorer (sqlexp, a command-line query tool), which
comes with Progress, or look into something third-party that is more full-featured
like SQuirreL SQL.

Industry conferences are another great source of Progress information. Check out
the videos and slide decks available online on a wide range of topics

And if you can sell your boss on attending a conference, check out PUG Challenge
Americas 2013, June 9-12, in Westford MA, USA. Early-bird registration has already
begun.

As you'll probably hear from others here, you aren't on the latest release of
Progress OpenEdge. As you will see in the product lifecycle information, OpenEdge
10.1C is now about four years old; the latest release is 11.0 which came out in
December. I don't know whether your company bought Progress directly or had it
supplied from a vendor, but you may want to explore the possibility of moving to
the latest release. If you can't, at least make sure you have the latest service
pack for 10.1C which is SP04. To check, look for a text file called "version" in
your OpenEdge installation directory. It contains a version string something like
this:

OpenEdge Release 10.2B02 as of Wed Sep 1 19:14:44 EDT 2010

In this case the "02" after "10.2B" indicates that service pack 2 is installed.
Make sure yours is 10.1C04.

You didn't indicate what platform you're on, so for some general advice:

Get to the latest OpenEdge release (11.0), if you can.

Always use a 64-bit OS on your DB server and the 64-bit Progress database binaries,
if you can.

Get to know your DB server platform(s), in terms of OS and hardware, storage sub-
system in particular. It's the slowest part of your system, so it will have a big
impact on your performance profile. Note your RAID level(s), if any. RAID 1, good.
RAID 10, great. RAID 5 (and other parity-based variants): eeeevil. Avoid it like
the plague.

The database ("OpenEdge RDBMS", in marketing terms) comes in three license


flavours: Personal, Workgroup, and Enterprise. Get Enterprise if you can, otherwise
your performance-tuning options will be somewhat limited. To check your installed
products, run "Start | Programs | OpenEdge | Config" (in Windows) or "showcfg
progress.cfg" from your OpenEdge installation directory (in *nix).

You have likely inherited some databases of questionable or unknown health,


maintenance record, and level of tuning/optimization. Read up on database startup
parameters in the Database Administration manual; some relatively small changes in
a badly-tuned database can make a big performance difference in some cases.

In that same manual, look into structure files (which map out the physical storage
used by the database) and understand the difference between Type I and Type II
storage. Once you grasp that, inventory your databases and make sure they all use
Type II storage areas for all application data. If they don't, start on a plan to
migrate them to Type II (this involves a dump and load of your data, and index
rebuilds). As a bonus, dump/load/rebuild will also help with performance
degradation due to physical scatter, record fragmentation, and low index
utilization. To gauge your databases' general state with respect to these metrics,
look into the "proutil" command with the "dbanalys","tabanalys", and "idxanalys"
qualifiers (in the reference section at the end of the manual).

Do your homework and ask lots of informed questions. People here will be happy to
help you.

For other web resources, check out all of the links here.

You might also like