Improving DevOps Efficiencies by Building an Agile Data Tier
August 10, 2016

Michelle McLean
ScaleArc

The ability to react quickly to market changes and launch new features and functionality is critical to maintaining a competitive edge.
 
Yet today, DevOps teams must spend substantial time and resources dealing with database scalability. If they need to consider scalability implications every time they roll out new code, the agile process breaks down. Software rollout cycles can get bogged down in application complexity that requires applications to be changed to function with the various roles of database servers and to regulate traffic to ensure data being read from secondary servers is current; database provisioning requirements which can be time-consuming and inefficient, limiting agility; and a lack of visibility – not understanding what application behaviors cause databases to slow down, which increases the development time required to address those issues.
 
Using database load balancing software, DevOps teams can solve these problems by creating an agile data tier that guarantees scalability of their database stack. An agile data tier can slash development time from months to just weeks by eliminating the need to build database scalability functionality into each separate application, enabling database clusters to be easily built and shared at scale and ensuring visibility into database traffic.

Enable Automated Database Failover and Scalability Without Increasing App Complexity

To scale structured data, DevOps teams follow a very specific set of rules. Functionality such as replication-aware load balancing, read/write split, and caching must be programmed into applications for them to handle and take advantage of multiple database servers. Applications also need to understand how to fail over to the right server within a cluster for high availability (HA).

A lot of code must be created within an app for it to be able to handle high availability (HA) –taking up valuable development time. Likewise, building an app that understands database topology – to do read/write split and assist in automated failover – adds to application complexity.

While typical caching solutions – such as Memcached – can increase database speed and scalability, they add complexity at the application layer. With these solutions, developers must spend time writing code that can create, manage, and expire cache in NoSQL. They must also write the individual business rules that specify which type of data can be cached. Similarly, a lot of code must be created within an app for it to be able to handle high availability (HA) – again, taking up valuable development time.

Remove the Need for Application Modification

Database load balancing software transparently provides replication-aware load balancing and read/write split to any application. By monitoring the replication lag between primary and secondary servers, database load balancing software can intelligently distribute queries, making sure an application gets the freshest data from the secondary servers. DevOps teams can easily set the appropriate replication lag threshold for a particular application.

Database load balancing software also allows teams to analyze database traffic and find read queries that are good candidates for caching. They can then choose which queries they want to cache and for how long. The software will then cache query responses and serve them to the application from a transparent in-memory cache without any changes at the application layer.

DevOps teams can also enable automated failover – without changing a single thing at the application layer. The database load balancing software understands which queries are reads and which are writes/transactions. It load balances the reads across all available servers and routes the writes to the primary. If the primary fails, the database load balancing software can enable seamless cross-server or cross-data center failover, maintaining state and reducing app errors with no changes to your applications.

By removing database scalability from the application and using database load balancing software, you can:

■ Roll out applications faster, since they are simpler to develop

■ Scale  database stack without requiring any new application coding

■ Focus staff attention on adding features and functionality that serve the business, instead of programming for data distribution

Provision Databases Seamlessly – Internal DBaaS

With database load balancing software, they can easily carve up a large database cluster into smaller pieces, giving each user the ability to run a certain amount of concurrent load on that database cluster. This approach provides a regulated, controlled load management stack – similar to a resource governor. They can slice and dice a cluster into smaller pieces, giving users access to their own sets of resources without disturbing anyone else on the cluster, essentially creating an internal DBaaS for their organization.

In this architecture, provisioning a new database endpoint takes only a few seconds compared with minutes or even hours when using an individual VM for each developer – similar to Amazon’s RDS that essentially provides a database ‘instance’ as a service.

With an internal DBaaS, teams can provide their application developers with an already highly redundant environment, ensuring that developers and QA are not interrupted due to database downtime. Teams also get access to very deep SQL analytics that help them test their applications better and identify potential application problems before moving into production.

Build New Applications, Scale and Solve Problems Faster and More Effectively

By decreasing application complexity, database load balancing software lets DevOps teams scale more effectively, benefit from DBaaS, and get the control and visibility needed to achieve results faster. Because database scalability functions are now out of the application, application design is simpler, making it easier to develop and build new applications. DevOps teams effortlessly provision databases to test your application’s functionality and benchmark performance better, with greater visibility into what the application is doing with the database.

With increased application resiliency, better use of database resources and enhanced system performance, organizations can speed the development process, improve overall efficiencies and gain business advantage.

Michelle McLean is VP of Marketing at ScaleArc.

Share this

Industry News

November 07, 2024

Broadcom announced the general availability of VMware Tanzu Platform 10 that establishes a new layer of abstraction across Cloud Foundry infrastructure foundations to make it easier, faster, and less expensive to bring new applications, including GenAI applications, to production.

November 07, 2024

Tricentis announced the expansion of its test management and analytics platform, Tricentis qTest, with the launch of Tricentis qTest Copilot.

November 07, 2024

Redgate is introducing two new machine learning (ML) and artificial intelligence (AI) powered capabilities in its test data management and database monitoring solutions.

November 07, 2024

Upbound announced significant advancements to its platform, targeting enterprises building self-service cloud environments for their developers and machine learning engineers.

November 07, 2024

Edera announced the availability of Am I Isolated, an open source container security benchmark that probes users runtime environments and tests for container isolation.

November 06, 2024

Progress announced 10 years of partnership with emt Distribution — a leading cybersecurity distributor in the Middle East and Africa.

November 06, 2024

Port announced $35 million in Series B funding, bringing its total funding to $58M to date.

November 05, 2024

Parasoft has made another step in strategically integrating AI and ML quality enhancements where development teams need them most, such as using natural language for troubleshooting or checking code in real time.

November 05, 2024

MuleSoft announced the general availability of full lifecycle AsyncAPI support, enabling organizations to power AI agents with real-time data through seamless integration with event-driven architectures (EDAs).

November 05, 2024

Numecent announced they have expanded their Microsoft collaboration with the launch of Cloudpager's new integration to App attach in Azure Virtual Desktop.

November 04, 2024

Progress announced the completion of the acquisition of ShareFile, a business unit of Cloud Software Group, providing a SaaS-native, AI-powered, document-centric collaboration platform, focusing on industry segments including business and professional services, financial services, industrial and healthcare.

November 04, 2024

Incredibuild announced the acquisition of Garden, a provider of DevOps pipeline acceleration solutions.

October 31, 2024

The Open Source Security Foundation (OpenSSF) announced an expansion of its free course “Developing Secure Software” (LFD121).

October 31, 2024

Redgate announced that its core solutions are listed in Amazon Web Services (AWS) Marketplace.

October 30, 2024

LambdaTest introduced a suite of new features to its AI-powered Test Manager, designed to simplify and enhance the test management experience for software development and QA teams.