I agree with @rafael.tgt that the option you choose depends on these factors, related to the amount of records retrieved by a Do a search for expression.
- How many records you currently have in DB?
- How many records you expect to have in the future?
- How heavy are those records?
- How complex are RG’s cells? In terms of HTML elements per cell and nested searches, if any.
All those factors affect to page load time (and therefore SEO ranking, UX…). It’s a matter of trial and error to set a limit on how many records can be loaded at once before any metric you’ve defined goes bonkers.
Now, even option 2 can lead to problems if no filters are selected and just all records are retrieved. The most secure way to protect UX against tons of records being retrieved is using RG pagination.