The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My work

  • My badges

  • Twitter Updates

  • My Flickr Stream

    20140508-Delphi-2007--Project-Options--Cannot-Edit-Application-Title-HelpFile-Icon-Theming

    20140430-Fiddler-Filter-Actions-Button-Run-Filterset-now

    20140424-Windows-7-free-disk-space

    More Photos
  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,627 other followers

CodeRage 9 Q&A log: ClientDataSets and FDMemTables Compared (Cary Jensen)

Posted by jpluimers on 2014/10/30

Session:

ClientDataSets and FDMemTables Compared

ClientDataSets are in-memory tables that have been in RAD Studio since Delphi 3, but there’s a new kid in town, the FireDAC FDMemTable. This presentation, by ClientDataSet expert Cary Jensen, compares and contrasts these in-memory table classes, providing you with guidance on which to use and when.

Level: All
Cary Jensen – Jensen Data Systems, Inc.

The Q&A log:

Welcome to CodeRage 9!

  • Q: Thanks for organizing this. Hi from The Netherlands
  • A: Hello and thanks for joining us!

Audience Question

  • Q: yes a great thing, greetings from Germany too!
  • A: You are welcome. Thanks for being here.

Audience Question

  • Q: Ill agreewith Neterhlands and Germany its 3 tuff days for you but very useful for us developers of all levels , hello and thanks from Swesen
  • A: Thanks and you are welcome!

Audience Question

  • Q: Good morning, David
  • A: You get Jim today. David is in the C++ track.

Audience Question

  • Q: Hello, I missed Allen Bauer’s session yesterday. Any links for demos and contact details for him, if possible?
  • A: Replays will be available for CodeRage sessions that you may have missed within 1-2 weeks of the conference conclusion on the CodeRage website.

Audience Question

  • Q: From Spain. Thanks you very much. Hello, smart thinks !
  • A: :-D You are welcome! Thanks for being here.

Audience Question

  • Q: Hi, Jim
  • A: Hi Cary!

Audience Question

  • Q: Ready with bells on. :)
  • A: Nice.

Audience Question

  • Q: Morning Chaps :)
  • A: Good morning!

Audience Question

  • Q: Thx for reviving the XE7 trial key
  • A: Certainly.

Audience Question

  • Q: Good morning. I’m from Indonesia.
  • A: Morning!

More information on the special offers http://www.embarcadero.com/radoffer

The virtual exhibit hall http://www.embarcadero.com/coderage/coderage-9-exhibit-hall

Use the 10% off discount code “THINGS”

Audience Question

  • Q: Can one inmemory object contain updates to several tables in one, or do I need to update one table at a time.
  • A: Use nested datasets to include more than one table. CDS and FDMemTable differ. I discuss this later

Audience Question

  • Q: Are the CDS andf FD XML file formats compatible?
  • A: Not really

Audience Question

  • Q: If I want to use either in different threads, do I need to implement my own locking/protection, or are there any features that make this same and easy?
  • A: You need to implement your own synchronization. If the threads are created after the dataset is created, and the dataset is treated read-only, there may be no problems

Audience Question

  • Q: Better wording -> If I want to use either dataset in different threads, do I need to implement my own locking/protection, or are there any features that make this safe and easy?
  • A: Same answer as above. We can talk about this in Q&A

Audience Question

Audience Question

  • Q: did the CDS developers ever fix the performance problem encountered when adding lots of rows?
  • A: I don’t think so

Audience Question

  • Q: Are there plans to add support for TDatasetProviders to FDMemTable? It means otherwise a complete re-write of the existing DataSnap stack…
  • A: No. FDMemTables will likley support different mechanisms. FireDACJSONReflect is one of those

Audience Question

  • Q: You know what would be cool? A book dedicated to FDMemTables.
  • A: Yes. I wonder who might write that :)

Audience Question

  • Q: Thanks. My main use of CDS at the moment is as self-contained data containers inside a mobile app (ios and Android) which can take data via Datasnap and store locally to a file when offline. Biggest dataset is say 5000 records which includes some memo fields. Do you think there would be noticeable performance improvements using FDMemTables? (Sorry, tough question I know). Some filtering currently takes 2-3 seconds for example.
  • A: FDMemTables are often demonstratable faster than ClientDataSets, so there might be a performance enhancement

Audience Question

  • Q: If updating a tclientdataset based app to FDMemtable based, can I during update have both datasets involved on server or client?
  • A: Yes

Audience Question

  • Q: I cannot understand what Jensen is saying! :(
  • A: :-( It is difficult.

Audience Question

  • Q: Your new book does it contain information on FDMemTable or is it just on ClientDataSets?
  • A: It is exclusively ClientDataSet, and will be the last edition of that book since FDMemTable is gaining more of the features from ClientDataSet. It brings it up to XE7.

Audience Question

  • Q: The previous book was not electronically available. Will the new version be available in ebook format ex. through Amazon Kindle?
  • A: It will be Kindle

Audience Question

  • Q: I have very large applications using DataSnap and ClientDataSets in a Multi-Tier structure. Is It viable to change this structure to use FDMemTable?
  • A: It is, but wait for FDMemTable to expand.

Audience Question

  • Q: FDS binary output file size is 2x times larger than CDS binary output file size
  • A: thx

Audience Question

  • Q: I think you said you currently can’t move data from a CDS into a FDMem, is that right?
  • A: Not via the XML data property, or the XML file. You would need to read and pump the individual records. Maybe use the FD Batch move. They are different internally.

Audience Question

Audience Question

  • Q: How it’s working refrshing data on client side when using FDMemTable ? You show geting all DataSet and Aplying Updates but what with refreshing ? I need to get all DataSet again ?
  • A: You should be able to refresh the current record. Not sure. There are a lot of similarities between the two.

Audience Question

  • Q: Can we get discount on the new book .. if we bought the previous version :)
  • A: That isn’t possible through Amazon. The book will be reasonable priced.

Audience Question

Audience Question

  • Q: Really liked the first edition and refer to it a lot so looking forward to buying print and electronic copies of 2nd
  • A: :-D

Audience Question

  • Q: When making the video from this speech, is it possible to remaster the Q&A part by reanswering the questions so it is possible to understand what is said? (If Cary understand what he said)
  • A: We will

Audience Question

  • Q: DDD is great!
  • A: Thanks!

Audience Question

  • Q: I’ve been looking for a good solution to store complex configuration data specific to the working of the application. I’ve looked at XML files, JSON files, Client Datasets , IB2Go and would also now consider the FDMem tables. Can you suggest anyone over the others?
  • A: Using ClientDataSet or FDMemTable with nested datasets is a nice solution. FDMemTable supports JSON, which is more concise than XML

–jeroen

via: CodeRage 9 – Object Pascal Sessions.

2 Responses to “CodeRage 9 Q&A log: ClientDataSets and FDMemTables Compared (Cary Jensen)”

  1. […] Cary Jensen’s CodeRage 9 Video: TFDMemTable & ClientDataSet Compared [Q&A Log] […]

  2. […] CodeRage 9 Q&A log: ClientDataSets and FDMemTables Compared (Cary Jensen) […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
Follow

Get every new post delivered to your Inbox.

Join 1,627 other followers

%d bloggers like this: