[Info-vax] CRTL and RMS vs SSIO

Dave Froble davef at tsoft-inc.com
Wed Oct 13 16:53:58 EDT 2021


On 10/13/2021 1:59 PM, Arne Vajhøj wrote:
> On 10/13/2021 11:09 AM, Dave Froble wrote:
>> On 10/13/2021 10:04 AM, Arne Vajhøj wrote:
>>> On 10/12/2021 9:52 PM, Dave Froble wrote:
>>>> On 10/12/2021 5:10 PM, Arne Vajhøj wrote:
>>>>> On 10/12/2021 4:42 PM, Dave Froble wrote:
>>>>>> On 10/12/2021 3:55 PM, Arne Vajhøj wrote:
>>>>>>> But the money math has changed.
>>>>>>>
>>>>>>> I would say that over the last 30 years:
>>>>>>>
>>>>>>> RDBMS license cost changed from expensive to free options available
>>>>>>>
>>>>>>> RDBMS hardware resource cost changed from expensive to insignificant
>>>>>>>
>>>>>>> writing and maintaining code to manage IDX file cost is more or less
>>>>>>> constant
>>>>>>
>>>>>> Are you suggesting writing and maintaining code for RDBMS is any
>>>>>> different?
>>>>>
>>>>> You need much less code because the database software does
>>>>> so much.
>>>>>
>>>>> It is a tradeoff - you write much less code but the generic code
>>>>> in the RDBMS use more CPU and memory.
>>>>
>>>> Excuse me, I'm just a dummy, come down out of the hills.  But:
>>>>
>>>> 1) Open file
>>>> 2) Access data
>>>> 3) Do some work
>>>> 4) Write/Update data
>>>> 5) Done
>>>>
>>>> and
>>>>
>>>> 1) Access database
>>>> 2) Access data
>>>> 3) Do some work
>>>> 4) Write/Update data
>>>> 5) Done
>>>>
>>>> Guess I don't see much difference.
>>>
>>> That is because you describe *what* is being done not *how* it is done.
>>>
>>> In general you can expect:
>>>
>>> data maintenance - replacing a lot of application code with few lines of
>>> SQL
>>
>> You claim that, but I just don't see it.
>>
>>> applications with simple queries - slightly less code
>>>
>>> application code with complex queries - a lot less code
>>>
>>> adhoc just get some numbers - replacing a lot of application code with
>>> few lines of SQL
>>
>> Don't see that.
>>
>> Also, I've noticed that doing some things with SQL can be much more
>> complex.
>
> Here is an example of some (Python) code using SQL to
> join, select, aggregate, sort and limit some data.
>
> import sqlite3
>
> con = sqlite3.connect('test.db')
> c = con.cursor()
> c.execute('''SELECT customers.name,SUM(orderlines.price) AS totalsales
>              FROM customers
>              LEFT JOIN orders ON customers.customer_id = orders.customer_id
>              LEFT JOIN orderlines ON orders.order_id = orderlines.order_id
>              WHERE orders.status = 'Delivered'
>              GROUP BY customers.name
>              HAVING totalsales > 10
>              ORDER BY totalsales DESC
>              LIMIT 3''')
> for row in c.fetchall():
>     print('%s : %d' % (row[0], row[1]))
> con.commit()
> con.close()
>
> I believe that it would take a lot more code to
> retrieve data from index-sequential files and
> do the work on the data.
>
> Arne
>
>

Not a lot, however the sorting by customer name would entail some 
additional code.

However, reading the order file, doing the selection, look-up customer 
record, and release to record sort, then read back sorted records is not 
"a lot more" code.

-- 
David Froble                       Tel: 724-529-0450
Dave Froble Enterprises, Inc.      E-Mail: davef at tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA  15486



More information about the Info-vax mailing list