[Info-vax] The best VMS features, was: Re: openvms renaming file

Dave Froble davef at tsoft-inc.com
Mon May 28 22:20:53 EDT 2018


On 5/28/2018 4:08 PM, Johnny Billquist wrote:
> On 2018-05-28 20:56, Simon Clubley wrote:
>> On 2018-05-28, Dave Froble <davef at tsoft-inc.com> wrote:
>>>
>>> I don't think so.  RMS indexed files allow concurrent use, using the
>>> DLM.
>>>
>>> The problem with RMS isn't the design, it's the implementation.  Modern
>>> RDBMS systems do much of their work in memory.  RMS does the work on
>>> disk.  Quite a large difference in speed, as one might expect.
>>>
>>> Re-implement RMS in the same manner and you'd see totally different
>>> performance.  Ya got to remember how old the design and implementation
>>> of RMS is.  40 years ago it worked well.
>>>
>>
>> RMS ISAM files would still be very limited compared to a database,
>> even MySQL.
>>
>> For example, compare what is involved in adding a new field to
>> a database compared to what is involved in adding that same field
>> to a RMS ISAM file.
>
> Technically, this is not really a problem in RMS, but one of most
> applications using RMS. Most applications are pretty hardcoded how they
> expect the file to appear, and so any change will cause big issues.

Which in my biased opinion is a poor design feature of RMS.

> The designers of RMS, however, obviously, intended that clever
> application writers would not be limited in such a way.
>
> Adding a field, as such, is just a question of copying the file,

There is the problem.  Taking the file offline, and copying it.  As with 
the database, what values go into the new field?

> and
> adding that field in all records. There are tools that easily can do
> this. RSX comes with such tools in the standard RMS toolbox. I would
> assume VMS have similar, or more capable tools.

I'm not sure what a database does when one adds a column to a row, or 
re-sizes a field. I'm actually a bit curious, just a bit. In the 
database products, it's all very transparent.  No taking the database 
offline, no copying, and such.  I'm betting there is lots of code behind 
such capabilities.  LOTS!


> Applications could be clever enough to actually refer to fields based on
> names, instead of just using fixed, known, chunks of the record. RMS do
> have names for the fields, which you can set and read. And then you
> could base your access on this information, in which case a change of
> the file presents no problem at all.
>
> However, admittedly, I doubt any application (more or less) actually do
> this. But do not blame RMS for this.
>
> If you ever take time to learn how Google's bigtable works, you'll see
> that it is almost identical to how RMS works. Quite funny, actually.

My DAS database product includes data definitions in each file, and 
other overhead information.  It's the data file itself that defines the 
data fields in a record.  Rather similar to table definitions in a 
modern database product.




More information about the Info-vax mailing list