3 Ways Database as a Service Can Speed Applications
Database as a Service (DBaaS) is often seen as a way to lift and shift the responsibility of on-premise databases, but it can also be a pathway to address frontend development challenges — such as web and application speed.
There’s a trend towards providing “very low-latency” access to data and it’s ramping up fast, Barry Morris, general manager of in-memory databases at Amazon, told The New Stack. This trend is exacerbated by the emergence of 5G, because people expect even faster responses from applications with faster network speeds, he added.
To provide a sense of the scale at which the cloud provider operates, Morris said that Amazon has more than 650,000 databases that have been migrated to AWS using the database migration service.
According to Morris, there is trend towards “building database systems that respond very, very quickly; and what we’re talking about here is under a millisecond.”
Database Services That Are Key to Speed
When it comes to speeding up websites or applications, there are a number of ways managed DBaaS can help, he said.
One option: In-memory Database as a Services.
“This is an area that’s very important to your audience, because more and more applications are driven by mobile devices,” Morris said. “People require and expect very responsive things. If you’re hailing a ride with an Uber-like company or something like that, you don’t expect to click on a button and then wait a few seconds — you expect to hit it and get an answer.”
MemoryDB is the fastest database that Amazon has among its 15 different Database as a Service offerings, he said. It’s designed to provide extremely rapid responses to application initiatives.
A second option is to leverage a caching system, which can also be offered as a service, he said. He pointed to its product ElastiCache, which is a caching system. “That means it keeps some of the data in memory and close to the application, to be able to serve it up very quickly,” he said.
Amazon’s in-memory database and caching services are based on the open source Redis, which is an in-memory data structure store used as a distributed, in-memory key-value database, cache and message broker.
“Redis is very much about keeping everything in memory if you can, and responding super, super quickly when people ask for that data,” Morris explained.
Amazon uses open source databases for its “as a service” offerings and advocates for options such as Postgres, Redis and MySQL over proprietary solutions, he said.
A final option for achieving speed is to keep the data processing power at the edge, near where it’s used — something that big cloud providers can offer that on-premise solution simply cannot, he said.
“There’s not much between your application and the Redis implementation, so it runs extremely fast, extremely quickly,” he said. “We’re investing heavily, not just internally. We actually sit on the Redis open source committers group and we’re contributing significantly to the Redis open source software, which is extremely popular with developers out there.”
Another reason developers should consider a managed Database as a Service is its ability to scale — not just up, but down as well, Morris pointed out. Stories don’t always mention the “down” part of capacity planning, but not paying for what’s unused is just as much a factor in the shift to managed Database as a Service as paying for what you need.
“When you look at databases that are running on on-premise,” he said, “typically, you will see that they are running at about 5 to 10% utilization.”
That doesn’t mean that capacity can just be eliminated, because the database has to have the capacity to handle peak load — which may be the software equivalent of a 500-year flood capacity. You don’t need it very often, but it has to be ready when you do need it, Morris pointed out. And scaling up can mean lots of things, he added, from the number of users to the throughput of transactions per second, or it can mean the size of your data.
“If you’ve got a very seasonal business, or a business that has fluctuations, you pay for what you use, and so you don’t have to put in place this heavy capital expenditure upfront to do it,” Morris said. “That’s really for a lot of people the single biggest attraction, the ability to scale up and scale down.”
The CIO’s View: Leveraging App Data
While developers are concerned with speed, what concerns CIOs and CEOs is how that data can be put to use for the business, Morris said. Most organizations today are concerned with being “data-driven” and application data can contain valuable insights for businesses. To that end, business and technology leaders are concerned about how data infrastructure can be leveraged for smarter business decisions, he said.
“Data isn’t just something that’s sitting in a database and supporting an app,” Morris said. “The big prize is, can you take that data and do analytics on it? Can you take that data and figure out patterns from the past and so on? Even, can you do machine learning types of analyses on it?”
While the appeal at first may have been just lifting and shifting from on-premise databases to the cloud, there’s additional value that enterprises will find there, he contended.
“How can we start doing analytics on that and start informing our business decisions? And beyond that, how do we incorporate it directly into AI and ML?” he asked. “All of those are opportunities […] that are very hard to do if you’re not on the cloud, and it’s pretty much where all of our major customers are going.”