[Info-vax] VSI roadmap
Arne Vajhøj
arne at vajhoej.dk
Fri Aug 18 18:45:01 EDT 2023
On 8/18/2023 4:39 PM, Dave Froble wrote:
> On 8/18/2023 1:58 PM, Jan-Erik Söderholm wrote:
>> We create the (Rdb) database tables as we need them.
>> Then extract include files (done with the built-in DBA tool RMU).
>> The record definitions are loaded into a text library (TLB).
>> Finally COPY'ed from the TLB into the Cobol source files.
>>
>> The RMU tool support extracting records in these languages:
>> SQL, ANSI_SQL, RDO, C, Cobol and Pascal.
>>
>> This replaced the use of CDD that was a hazle to maintain
>> just for the record definitions.
> Ok, understand what you are doing.
>
> Caviet, I've never used Rdb.
>
> Another, I've only used SQL2000 from Microsoft.
>
> Regardless, consider the following:
>
> SELECT * From CustomerTable Where Country is "USA"
SELECT * From CustomerTable Where Country = 'USA'
> And where country is not a key.
>
> In RMS this cannot be done, without scanning all records, and use some
> type of mapping of the record definition, CDD, include file, in program
> definition. However, if the database contains the record definitions,
> then the database would return a recordset of the records with Country
> equal to USA.
>
> Yes, all records would be scanned internally, but database products do
> this rather quickly and efficiently, and transparent to the request.
> Would work on any system that supports the database.
Internally is a rather similar.
ORG=IDX:
key field => efficient lookup via index
not key field => full scan
RDBMS:
indexed field => efficient lookup via index
not indexed field => full scan
But seen from the application side the RDBMS is a lot easier:
* index can be added later if a performance problem is identified
* most databases allow for many indexes (MySQL allows up to 64 per table)
* the full scan is done within the database transparently to the
application
- less application code
- no application code changes when switching from not indexed to indexed
Arne
More information about the Info-vax
mailing list