With multiple clients for different use cases (notes, git collaboration, video channels and podcasts), I do think it is more efficient for relays to do more of the work that a client might do, such as streaming and syncing all the events that one will need. A global view wouldn't be so much global as it is relative to a relay's configuration, perhaps another term could be used. Each client need not implement the full complexity of coordinating with thousands of different relays, when that can be done once with a private relay and many clients can benefit.