Tuesday, June 8, 2010

Configuring FME to Write Multiple Datasets More Efficiently

This post by the FME Evangelist describes how to configure your Workspace so that a minimum number of features are cached in memory. The less amount of caching, the more efficient your workspace. This applies to any workspace that has more than one writer (aka destination) dataset in it. Always put the dataset that has the potential to contain the most features to the top of the writer list.

The post gives a more detailed description.

4 comments:

Nagarjuna said...

Is there a way to use FME for synchronizing the attribute/geometry updates between Smallworld and target format/database. As i know, FME can do migration and create a new record.

Unknown said...

In principle, yes.
There is no problem with inserting new objects into Smallworld db, but for updating existing objects it could be expected some (or lot) of modifications in FME engine modules which should be done in Smallworld Magik

Alfred Sawatzky said...

Hi Nagarjuna,

If you look in method fme_tics_client.int!received_feature(), you will see that at the bottom there is a call to record_transaction.new_insert(). You could put some logic into this method that reviews the contents of feature.alpha_fields, and then decides whether to use record_transaction.new_update() or record_transaction.new_insert().

Alfred

Alfred Sawatzky said...

Hi Nagarjuna,

If you look in method fme_tics_client.int!received_feature(), you will see that at the bottom there is a call to record_transaction.new_insert(). You could put some logic into this method that reviews the contents of feature.alpha_fields, and then decides whether to use record_transaction.new_update() or record_transaction.new_insert().

Alfred