The Rising Need for Database Scalability
The Rising Need for Database Scalability
Database management systems are at the heart of most applications and, as such, the ability to scale database systems elastically is vital.
Join the DZone community and get the full member experience.Join For Free
RavenDB vs MongoDB: Which is Better? This White Paper compares the two leading NoSQL Document Databases on 9 features to find out which is the best solution for your next project.
Modern IT organizations rely on the ability to quickly react to changing business trends and technology forces. The days of long development cycles requiring many months or even years are in the rear-view window of history. And as systems change, usage also changes, and that requires effective ways to adjust for fluctuations in demand.
Database management systems are at the heart of most applications and, as such, the ability to scale database systems elastically is important. This series of blog posts will examine the various methods used to accomplish database availability and elasticity, as well as introduce a new architectural option for database scaling.
Industry Trends Impacting Scalability Needs
Today's business systems are undergoing a revolutionary transformation to accommodate digital transformation. There are four over-arching trends that are driving digital transformation today summarized by the acronym SMAC: social, mobile, analytics, and cloud.
Mobile computing has transformed the way most people interact with applications, while social media has transformed the way people interact with companies and each other. Just about everybody has a smartphone, a tablet, or both. And the devices are being used to keep people engaged throughout the day, no matter where they are located. This change means that customers are engaging and interacting with organizations more frequently, from more diverse locations than ever before, and at any time around-the-clock. End users are constantly checking their balances, searching for deals, monitoring their health, and more from mobile devices. And their expectation is that they can access their information at their convenience.
Cloud computing, which is the practice of using a network of remote servers hosted on the internet to store, manage, and process data and applications, rather than a local host, enables more types and sizes of organizations than ever before to be able to deploy and make use of computing resources without having to own those resources. Applications and databases hosted in the cloud need to be resilient in order to adapt to changing workloads. In addition, the cloud's intense distribution of compute and storage resources means that responding to scale is no longer about just throwing sheer power at the problem but also about marrying the right resources in the right location to an individual problem.
Finally, the big data phenomenon has boosted the amount of data being created and stored. The amount and types of data that can be accessed and analyzed continues to grow by leaps and bounds. And when analytics is performed on data from mobile, social, and cloud computing, it becomes more accessible and useful to anyone, anywhere, at any time.
In addition, as cloud and container-based environments become ubiquitous, organizations are increasingly looking to move away from high-performance static hardware to dynamically changing, virtual commodity infrastructure that can be purchased or rented in a "pay-as-you-go" manner or that can be easily reallocated when not in use.
The impact of these forces on our computing infrastructure is that systems need to expand and contract easily to meet an ever-changing demand. Organizations need to be adaptable and to be able to scale their systems as workload changes.
Coming up, Craig will define some common terms used when discussing database scaling.
Published at DZone with permission of Craig S. Mullins , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.