|
Re: Mapping large source model [message #1839221 is a reply to message #1839208] |
Wed, 17 March 2021 17:59 |
|
If the model is too large to load in memory, you also need to solve this problem at the level of EMF (or you already have?).
I'll assume you're using regular XMI files as input, and so you're loading entire files into memory when transforming. You'll have to split the model over multiple XMI files in order to load only parts of your model into memory.
Then, you can apply your ATL transformation to only the relevant XMI file(s). As long as your ATL transformation is careful to only navigate the object references that are necessary, EMF won't auto-load unnecessary XMI files into memory.
Cheers,
Dennis
|
|
|
|
|
|
Re: Mapping large source model [message #1839410 is a reply to message #1839303] |
Sat, 20 March 2021 11:37 |
|
jo ber wrote on Fri, 19 March 2021 08:27_ One thing I'm missing in the Epsilon method signature protected Collection<EObject> getAllOfTypeFromModel(String type) is a list of parameters to filter the instances in the sql statement. Or maybe I misunderstood something, and that's an Epsilon question anyway...
To me, this is a matter of diminishing returns: it is fairly easy to reimplement the "getAllOfTypeFromModel" operation, and remove the inefficiency of iterating over the whole database instead of a single table. To go any further than that requires the development of an EOL (or OCL) to SQL transpiler, which is much more effort for (possibly) a similar increase in efficiency.
So it should be much easier to start with a CDO-optimised version of "allInstancesOf" for EMFTVM's ModelImpl. The remaining challenge is how to package things such that not all EMFTVM users are forced to install EMF CDO as well.
Cheers,
Dennis
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03274 seconds