× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



The default page size had always been based on the length of the key. That is, the 8K [perhaps 4K many releases ago] was and is not a default generally, only for /short/ keys, whereby the default page size grows given /longer/ keys. I do not recall the algorithm to decide based on key length, nor what page sizes [of those noted in the v6r1 doc link] are used on releases where the PAGESIZE keyword is not available; a disassembled listing of QDBCRTME may show the support values in plain-text [searching the spool file on PAGESIZE]. The 64K was and remains the default pagesize for an SQL INDEX, and aside from any other exclusion rules, the SQL can use a DDS created LF with a pagesize of 64K [explicitly or implicitly] with no differences in performance; i.e. both the SQL and DDS objects of the same attributes are effectively the same.

http://publib.boulder.ibm.com/infocenter/iseries/v6r1m0/topic/rzajq/rzajqpagesize.htm

Also consider that /perform better/ is a YMMV statement. A memory starved system can easily see worse performance for use of a larger pagesize index for SELECT, and depending on the UPDATE and DELETE activity a larger pagesize can easily be at a minimum slightly worse performing even when not memory constrained, due to randomness of the I/O. A larger pagesize is *not* a panacea; a larger memory footprint results, and that does not equate with better performance except when the data in memory can remain resident. Just as I often warn about changing ACCPTHSIZ() without fully understanding how the index will be used, I would similarly warn that blindly choosing a larger page size is a poor idea which can similarly have unforeseen consequences. The Dan C text, unless it has been improved, had suggested almost blind adherence to /bigger is better/; almost no mention of caveats. The conclusions are made based on testing in very specific environments which may not reflect those of actual customers, so it is very unfortunate IMO how the material had been presented as definitive in ability to achieve /better performance/ when the best answer is always "it depends."

Regards, Chuck

Michael_Schutte wrote:
Instead of creating the SQL index first, can I just
specify 64k into the PAGESIZE keyword?
FYI our default in *KEYLEN not 8k.

Birgitta Hauser wrote:

... yet another comment about indexes and keyed logical files: An SQL index has per default a page size of 64K, while a DDS
described logical file only has per default a page size of 8K. Because of the larger page size an SQL index cannot share
access path with a DDS described logical file.

In this way, if you first create an index and after a logical
file with the <<SNIP>>

SQL statements that can use SQL indexes will perform better
than if they have to use DDS described logical files with the
same key fields instead.


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.