DEV Community

Discussion on: Introducing MikroORM, TypeScript data-mapper ORM with Identity Map

Collapse
 
tunaxor profile image
Angel Daniel Munoz Gonzalez

I know you metioned you had mongodb in mind when writing
I've read that sql type of relationships are actually not that useful in mongo and can put some performance penalties on large datasets, are the relationship decorators useful in the case of mongodb?

Collapse
 
b4nan profile image
Martin Adámek

Sure they are! MikroORM uses simple queries to fetch relationships so that each database table is queried once instead of complex joining. I believe that the problem you are talking about is when using complex aggregations to imitate SQL joins, which is not the case here.

Take a look here for example of how populating relationships work: b4nan.github.io/mikro-orm/nested-p...

One note about performance - there are 4 test suites testing entity manager, one for each driver, and the mongo driver one runs about 2-3x faster than mysql/postgres (sqlite one is of course fastest).

Collapse
 
tunaxor profile image
Angel Daniel Munoz Gonzalez

Ahh I overlooked that in the docs! I shall take this one on a spin then :) awesome Project by the way!