[TYPO3-dev] The extbase dilemma

Xavier Perseguers xavier at typo3.org
Fri May 20 14:02:11 CEST 2011


Hi,

> Since the lazy-load thing got in I don't think the pure number of rows
> is the bottleneck.
>  From my experience problems come up when there are nested relations.
> 1-n is handled pretty well, n-n gets a bit slower.
> This is where the method you mentioned below gets its problems.
> If we stick to the blog example:
> 100 blogs with 100 posts each and 100 comments per post.
> You want to display the latest comment per blog.
> IIRC this would result in at least 100 queries, right?
> Or I fiddle around with custom queries which then in return does not let
> me use persistence or does it?

I have an example of small dataset which results in a non-acceptable 
generation time.

- I have around 50 companies (quite a few properties such as 2 
addresses, employees, ...)

- Each company has 1 or many departments. Most of them have only 1 
department, a few have up to 2-3.

- Each department has a list of services

Now I have to generate a list of:

- all company names, with city/country of the main address, a list of 
all associated departments and for each of those the list of services

- Actually I have to be able to either sort by company name or by 
department (number).

Pretty "dumb" isn't it? But it was WAY too slow with the domain model 
and Fluid. I ended up writing the optimized query using plain old 
t3lib_DB methods, preparing an array of data (no objects) that was 
passed and then consumed by Fluid.

I have responsible persons /service and I thought at first that I used 
to show them too but that's not the case.

These are real-life scenarios and it clearly shows from my POV a problem 
with such "standard" use cases, even for tiny (50 is definitively tiny!) 
datasets...

-- 
Xavier Perseguers
Release Manager TYPO3 4.6

TYPO3 .... inspiring people to share!
Get involved: http://typo3.org





More information about the TYPO3-dev mailing list