Hi, I've a website with many CPTs where users will add tousends of posts by Toolset forms. I also have various many-to-many relationships btw CPTs. So I'm going to have a very big post_meta table in my DB.
Is this an efficent setup or I'm going to get a speed problem?
On a single page I will display various views, but each one of them is going to display just few posts (5-10). Is it going to be slow?
For example, I've two of the CPTs that will have 2.000 posts each. They are connected many-to-many and each post is going to have 10-20 posts conected. Is it efficent a view that will load those 10-20 intermediary posts?
thanks
In general, dealing with thousands of posts should be okay.
. I also have various many-to-many relationships btw CPTs. So I'm going to have a very big post_meta table in my DB.
Remember in the new post relationships system, the postmeta table isn't used so these two things aren't necessarily correlated. Toolset post relationships use proprietary tables, not postmeta.
On a single page I will display various views, but each one of them is going to display just few posts (5-10). Is it going to be slow?
The speed really depends on the types of filters and how many filters you plan to include in the View. The more filters you include, the slower the query. Post relationship queries are slightly slower than taxonomy queries. If the speed becomes a problem, you can always implement a caching plugin that will create an HTML version of the page to speed up delivery.
Is it efficent a view that will load those 10-20 intermediary posts?
Again, it depends on how many query filters you need to make this View work. If it's just the one post relationship filter, that should be fine. A good caching plugin can make this query time insignificant.
If you want more concrete information, you can try setting up a test environment using a post generation tool like FakerPress to generate 1000s of posts at a time, using fake data. That would help you estimate the performance using Views with real filters.