When the internet came along it changed how "we" as consumers, got information on businesses. Remember when you had a problem with your plumbing or car or you needed daycare, or you wanted to look up the doctor's number, you would look in a phone book! Businesses, would have their ad or listing with enough information about their business in hopes that the potential customer would pick up the phone and call or come into their location. Which a business only had to do once a year!! Easy right? Not really!
Well for businesses once their ad was done, there was no changing it. They couldn't change their message half way through the year, for example, "having a sale or adding a new product or services." They had to wait a whole year.
Now today, with the inception of the internet and having a website, online directories and social media, businesses can promote themselves instantly and numerous times. With the search engines they reward businesses with ranking based on ACTIVITY! How active are you online? Are you linked to an online Directory? Do you keep you website up to date, does it have RICH RELEVANT CONTENT? Does it have pictures with content? Does it have Videos with Content? Is it engaging? What about social media? Are you active on Social Media? Do you have Likes, Followers or circles? Do they share and comment?
The big box stores understand this and have marketing/advertising departments keeping their online activity current and up to date. That is why you see them so often online. Getting your BRAND out there to consumers can be done without having to spend MILLIONS. There are many YouTube videos by the engineers at Google on how they do the ranking. There are over 200 metrics used to determine ranking.
Here is a Youtube video link from the Google Webmasters explaining how a ranking is done.