Sharding? Shared-nothing?

Software industry is very like showbiz. Every day, you will get some awesome technoloy or idol from internet.  When we sigh we don't even master the technicals at our hand, the new ones are going to ocrrupy the market. The overwhelming articles and books make a choice.  Even some experienced master can not be an exception.

 

Recently when I chatted with my friends about the Tech Trends. Sharding is one of the hottest buzz word. What is 'Sharding' ?

 

Let's quote some good references:

 

"  Database Sharding can be simply defined as a "shared-nothing" partitioning scheme for large databases across a number of servers, enabling new levels of database performance and scalability achievable. If you think of broken glass, you can get the concept of sharding - breaking your database down into smaller chunks called “shards” and spreading those across a number of distributed servers.

 

The term "sharding" was coined by Google engineers, and popularized through their publication of the Big Table architecture. However, the concept of "shared-nothing" database partitioning has been around for a decade or more and there have been many implementations over this period, especially high profile in-house built solutions by Internet leaders such as eBay, Amazon, Digg, Flickr, Skype, YouTube, Facebook, Friendster, and Wikipedia. "

 

So it extends another keyword shared-nothing. It seems that shared-nothing architecture gets more and more influence in the current software industry.  

 

If you learn Erlang/Scala, you will amaze how come it's so easy to develop multithread(or fiber) in our project. That's owe to they use shared-nothing.  

 

I know it cannot cheat some smart developers.  Ironically speaking, it's just a marketing tricks. 

你可能感兴趣的:(sharding,Shared-nothing)