Search the web
Sign In
New User? Sign Up
memtable · Discuss the use of kbmMemTable and associated BCB/Delphi components.
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
Packed Records and kbmBinaryStreamFormat   Message List  
Reply | Forward Message #6038 of 6065 |
Packed Records and kbmBinaryStreamFormat

Kim/all -

I've subclassed a kbmMemTable to manage the recordpointer column in
a Linked List data system; this abstracts the delphi programmer from
having to deal with linked list management issues when
inserting/updating/deleting data from the dataset. The data system
traditionally has been persisted in a binary format, with data
management being handled by loading the data into a pre-defined packed
record type with field type and size definitions.

If existing data is changed, a row offset number that is persisted
based on recno * recordsize = file/row position is used to find the
correct
position in the binary file, and the existing record is overwritten
with the modified record.

If a new record is added, the filepointer is sent to the end of the
file and a new record is appended to the end of the file, in unindexed
order. I'm sure this is all normal flat-file I/O that predates punch
cards; I'd like to find a more elegant way to manage this data in a
multi-user environment, while maintaining the integrity and format of
the legacy flat files.

I'm modifiying a legacy app, attempting to manage multi-user
concurrent access to these binary files, and am wondering if the
combination of kbmMemTable and kbmBinaryStreamFormat can provide a
more elegant solution?

I'd like to be able to insert data without overwriting or appending,
maintaining indexed order. I'd like to maintain concurrency in a
multiuser environment in a fashion as similar to a SQL database as
possible.

How do I more tightly integrate kbmMemTable into this legacy system?
How do I make the kbmMemTable/kbmBinaryStreamFormat components packed
record structure 'aware', or how would I integrate packed record
definitions into a subclassed kbmmemtable? What I/O elegancy is
available using kbm components that could improve upon the legacy file
management approach and hard-coded concurrency management techniques?

Thanks for any answers.

David Keith









Fri Sep 8, 2006 4:39 pm

dkeith2
Offline Offline
Send Email Send Email

Forward
Message #6038 of 6065 |
Expand Messages Author Sort by Date

Kim/all - I've subclassed a kbmMemTable to manage the recordpointer column in a Linked List data system; this abstracts the delphi programmer from having to...
dkeith2
Offline Send Email
Sep 11, 2006
3:57 pm

Kim/all - I've subclassed a kbmMemTable to manage the recordpointer column in a Linked List data system; this abstracts the delphi programmer from having to...
dkeith2
Offline Send Email
Sep 11, 2006
3:59 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help