Hi Ralf

2006/4/27, Ralf Udo Weisser <[EMAIL PROTECTED]>:
> Hi,
>
> I am a beginner in MaxDB issues.

Welcome!

> My Problem is:
> I save data of requests from a server-system in one table. This table has
> nearly 6 million rows. Now I want to aggregate this data. In this task I
> make a INSERT in another table. This statement insertes the aggregated data
> from the request-table. In this table it has to be written nearly 5 million
> rows, too.

That's not really an aggregation.  I mean, your volume stays in the
order of magintude of the original data. Depending on the nature of
the data and what you do with it it might be more efficient to just
define a view with your select and use that along with proper
indexing.

> In this Process the performance of the database is very slow, although
> different index are set on this colums, where a maximum/minimum is
> calculated. This calculation takes more than 6 hours. During this
> aggragation I looked at the peformance of the system and I noticed, that the
> system is not working to full capacity. The kernel-process of the database
> was only at 5%.

Your system is most likely IO bound. Do you use standard disks or do
you have a fast RAID or SAN for your database files?  Also, did you
separate transaction log and data volumes physically (i.e. different
hardware and IO channels)?

> My system has Windows XP Prof and 2 processors with 1 GB ram. I allocated
> the database 500MB ram for the kernel-process.

Sounds good.  Could be higher if you don't need the memory otherwise.

> Now my question is: Are there special parameters for the database, which has
> to be set, so that it increases more performance and more processor load?
>
> I can't invisage, that the problem arise from failure index or the
> statement. As a precaution here is the statement:
>
> INSERT INTO "MAIN"."T_VISITS"
> SELECT
>               COUNT("ID") AS REQUESTCOUNT,
>               "SESSIONID" AS SESSIONID,
>               MIN("PSESSIONID") AS PSESSIONID,
>               MIN("CREATIONDATE") AS CREATIONDATE,
>               MIN("IPADDRESS") AS IPADDRESS
> FROM "MAIN"."REQUEST"
>
> with the Index to PSESSIONID, CREATIONDATE,IPADDRESS

I don't see any GROUP BY.  That will "aggregate" to a single record.
Is this really the statement you are using?  Is this really what you
want?

Kind regards

robert


--
Have a look: http://www.flickr.com/photos/fussel-foto/

--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to