What's true is that in some cases, Appwrite internal collections/tables ends being a duplication of your collections. For example, users collection (from Auth service): you can't expose it so if you make a blog-like app, you will need to create a separate collection with the database service in order to show the name of the post creator.
Same with teams API, but just the opposite: some cases you don't want to expose the email to all users in a team, so to prevent that, you need to use teams only for permissions and then creating another different table/collection to associate teams