Database Structure Best Practice

Hey Everyone,

I just need some guidance and have some question on database structure and performance.

Currently my database looks relatively close to this;

My question is, is this the best way to structure my database? The idea is each user is assigned to a company (Their business) and everything passed that is all based on that companies ID, each entry of every “thing” thereafter is referenced back to that company. I’m wondering how this could impact performance after several data entries are made for multiple companies. Theoretically as long as everything is (correctly) referenced by company, it shouldn’t matter that another company could have a bunch data entries in the history file, it’s only looking at history assigned to that company, right?