So for the first time I'm gonna do a project that involves maps and layers on top of maps which have many points and many polygons on them.

I have the tendency to create separate tables for points and polygons and then create many-to-many relationships between them and the layers table. If I do that I end up with 5 tables: points , polygons , layers , layers_points and layers_polygons .

However, I see PostGIS also offers types called MULTIPOINT and MULTIPOLYGON . If I use those types then I could put it all in the layers table. I guess that would make queries faster, because I need less joins. However, I'm not sure if later I might regret it, if it means that working with the individual points and polygons becomes impossible. I'm not even sure yet if it will be necessary to work perform calculations on the individual points and polygons, but it would be nice to know whether that's possible or not in both approaches.

So basically I'm asking, what the pros and cons are of these different approaches?