Very Slow Access Time for KSAM-XL File

Ohmes, Matt Matt.Ohmes@COGNOS.com
Wed, 10 Oct 2001 14:52:21 -0400


Hi Katie,
As John Pickering, you're not really getting any value from the index using
your scheme (except the records are coming back in sorted order).

How badly do you need to specify the ending value of the range?  Have you
considered just specifying a starting value ending in "@@"? That will start
at your beginning value and begin reading to the end of the file.  If the
user is looking at the records one by one, they can stop any time they want.


Just a thought.
Matt
Standard disclaimer... I'm just speaking for me, not Cognos. <Hmmm... I need
to put those signatures back into Outlook...>

-----Original Message-----
From: Katie Link [mailto:linkkati@isu.edu]
Sent: Wednesday, October 10, 2001 1:08 PM
To: powerh-l@lists.swau.edu
Subject: Very Slow Access Time for KSAM-XL File


I'm using Quick and accessing a KSAM-XL file sequentially viaindex.
There are three indexes in this ksam file and I'm accessing using one of
the indexes.  I also use select with the file statement.  I'd like to
select records from the ksam file based on a range of values that I
request.  There are only 13,000 records in the ksam file but record
selection takes a very long time (I stopped the process after about 8
minutes).  Are there any suggestions for making this screen run faster?
I'm using PowerHouse 8.29D3 on an HP-3000 box.  I have included the
Quick code and ksam file structure below.  Thanks in advance

Quick code:

screen siqs activities find

temp beg-index char*10
temp end-index char*10

file crsksam primary
  access sequential viaindex c-index request beg-index, end-index
  select if c-index >= beg-index and c-index <= end-index

field beg-index
field end-index
skip 1
field c-index
field c-sess-crs-sec1

PROCEDURE PATH
  BEGIN
    REQUEST BEG-INDEX
    IF PROMPTOK
      THEN REQUEST END-INDEX
    IF PROMPTOK
      THEN LET PATH = 1
    IF PATH = 0
      THEN ERROR "Key/Index required."
    END

PROCEDURE FIND
  BEGIN
    GET CRSKSAM VIAINDEX C-INDEX SEQUENTIAL
    END

BUILD

KSAM file structure:

    Record:             CRSKSAM
    of File:            CRSKSAM
    Organization:       INDEXED
    Type:               KSAMXL   (ASCII)
    Open:               CRSKSAM
    Description:
             This file contains the index number related to each
combined
             session, department, course + section key and is used to
             retrieve course information via an index number which is
             easier to remember and faster to use.
    Record Size:        36 Bytes

-- Record Contents --
    Item                                 Type            Size  Occ
Offset
    C-INDEX                              CHARACTER          6
0
    C-SESS-CRS-SEC1                      CHARACTER         15
6
    .C-SESSION1                          CHARACTER          4
6
    .C-DEPT1                             CHARACTER          5
10
    .C-CRS1                              CHARACTER          4
15
    .C-SEC1                              CHARACTER          2
19
    C-SESS-CRS-SEC2                      CHARACTER         15
21
    .C-SESSION2                          CHARACTER          4
21
    .C-DEPT2                             CHARACTER          5
25
    .C-CRS2                              CHARACTER          4
30
    .C-SEC2                              CHARACTER          2
34

-- Index Contents --

 ** C-INDEX is a 6 byte   UNIQUE PRIMARY  index **


    Segment                              Type            Size  Ord
Offset
    C-INDEX                              CHARACTER          6    A
0


 ** C-SESS-CRS-SEC1 is a 15 byte  REPEATING ALTERNATE  index **


    Segment                              Type            Size  Ord
Offset
    C-SESS-CRS-SEC1                      CHARACTER         15    A
0


 ** C-SESS-CRS-SEC2 is a 15 byte  REPEATING ALTERNATE  index **


    Segment                              Type            Size  Ord
Offset
    C-SESS-CRS-SEC2                      CHARACTER         15    A
0



This message may contain privileged and/or confidential information.  If you
have received this e-mail in error or are not the intended recipient, you
may not use, copy, disseminate, or distribute it; do not open any
attachments, delete it immediately from your system and notify the sender by
e-mail promptly that you have done so.  Thank You.