Skip to content

Tag Archives: Google

Should I hire a SEO consultant? – Search Engine Marketing in Maryland, DC, and Virginia

A common question that I get from many clients is should they invest in a SEO consultant?  In most cases, I encourage folks to save their money and focus on the standard SEO best practices.  But, if a client does not have the time, or a staff, then by all means hire someone to help out.  However, do NOT believe the hype.  There are very few magic bullets or tricks that will get you a legitimate high ranking that will not eventually get crushed by Google if the find you “cheating”.  Focus on White Hat SEO, focus on content, focus on your customers, and if you follow those rules, you will typically be rewarded by the search gods.

Don’t fall for paid link programs, make sure you understand what your SEO firm is doing, and check up on them.  Many practices that SEO firms will advocate will eventually cause problems due to Google eventually catching your cheating.  If you are a SEO SPAMer, it is no big deal, just change your domain, and start again.  However, if you are a reputable company, you are putting your Internet Reputation on the line.  If the SEO pitch is too good to be true, don’t believe it.  If you want to see how even big companies can get crushed, read about how JC Penny seriously harmed their Internet Reputation by not closely watching what their SEO consultant was doing.

Did you know that over 20% of all search queries are now being generated by mobile devices?  And, in many of these cases, the search results are heavily influenced by the customer’s location.  No matter what business you are in, it is even more important that your business is visible, and preferably at the top.  And in areas like the Maryland, DC, Virginia region, optimizing your site to reflect where customers could be searching from is important.   You can’t just provide your business address and hope customers can guess what areas you may service.  Make it clear where your service areas are.

And, while talking about your address, a couple of tips are in order.  First, make your address and phone number easy to read, and to copy and paste.  Do not embed your address in a graphic.  Yes, I have seen this, and if I had known the designer that did it I would have fired them.   Interestingly, the address for this company was Thomas Johnson Drive in Frederick, Maryland.  I tried to copy and paste, but no luck.  Guess how I typed it into Google?  That is right, Thomas JEFFERSON!  Mobile search fail…

If you are still interested in finding some help with your SEO projects, drop us an email.  We would be happy to help you find the proper resource.

What database does Facebook use?

The home screen of the FOSS edition of MySQL W...

What database does Facebook use is one of the most common questions asked when folks start taking about what database is the most scalable for large scale web applications.   In fact, it is usually a person who is an open source proponent, and knows very well that Facebook uses MySQL as their core database engine.  Because of this fact, this is often the single biggest reason that developers use to push to get MySQL used in their company.  I would imagine that is why it is a very popular Google query.

While Facebook uses MySQL, they do not use it as-is out of the box.  In fact, their team has submitted numerous high-performance enhancements to the MySQL core and Innodb plug-in.  Their main focus has been on adding performance counters to Innodb.  Other changes focused on the IO sub-system, including the following new features :

  • innodb_io_capacity – sets the IO capacity of the server to determine rate limits for background IO
  • innodb_read_io_threads, innodb_write_io_threads – set the number of background IO threads
  • innodb_max_merged_io – sets the maximum number of adjacent IO requests that may be merged into a large IO request

Facebook uses MySQL as a key-value store in which data is randomly distributed across a large set of logical instances. These logical instances are spread out across physical nodes and load balancing is done at the physical node level.  Facebook has developed a partitioning scheme in which a global ID is assigned to all user data. They also have a custom archiving scheme that is based on how frequent and recent data is on a per-user basis. Most data is distributed randomly.  Amazingly, it has been rumored that Facebook has 1800 MySQL servers, but only 3 full-time DBAs.

Facebook primarily uses MySQL for structured data storage such as wall posts, user information, etc. This data is replicated between their various data centers. For blob storage (photos, video, etc.), Facebook makes use of a custom solution that involves a CDN externally and NFS internally.

It is also important to note that Facebook makes heavy use of Memcache,  a memory caching system that is used to speed up dynamic database-driven websites by caching data and objects in RAM to reduce reading time. Memcache is Facebook’s primary form of caching and greatly reduces the database load. Having a caching system allows Facebook to be as fast as it is at recalling your data. If it doesn’t have to go to the database it will just fetch your data from the cache based on your user ID.

So, while “What database does Facebook use?” seems like a simple question, you can see that they have added a variety of other systems to make it truly web scalable.  But, still feel free to use the argument, “MySQL is as good or better than Oracle or MS SQL Server, heck, even Facebook uses it, and they have 500 Million users!”.