Thanks to Ravi Mayuram, S.V.P. Engineering and CTO at Couchbase, for sharing his insights on the current and future state of databases. Ravi has been with Couchbase for four and a half years after being with Oracle and Siebel.
Q: What are the keys to a successful database strategy?
A: We have moved from a focus on features and functionality to a top-down approach to achieve digital transformation — which is all about scaling and delivering data in real-time to optimize the customer experience (CX). NoSQL scales up and out to meet the needs of agility and speed with a distributed architecture.
Q: How have databases changed recently?
A: The application landscape has changed dramatically and databases are being asked to keep up. Moving away from monolithic applications to an agile microservices approach, as well as the move to cloud and container technologies, have triggered a lot of rethinking at the database tier, as well. The database now needs to respond to the changing needs of agile applications. The modern database needs to support what we call "flexible schema" to enable the development agility business are expecting. It needs to operate natively in the cloud or containerized infrastructure and it needs to scale on demand. The approach of traditional databases, which are schema rigid and vertically scaling, don’t match with today’s requirements.
Q: How can companies benefit from databases?
A: As you’ve likely heard, data is the new oil in this new economy. Consequently, modern databases play a very important role in the digital transformations that companies are undertaking to stay relevant. Not all databases are the same; depending on the desired use case, companies across various industries can benefit in several ways from the right database. For example, within the travel industry, the “look to book” ratio has gone from 100:1 to 10,000:1 as customers want to check flights, prices, airlines, hotels, and rental cars before booking. The system must scale to handle more traffic, with more data, and no downtime. Society changes how we behave. The company with the fastest OODA (observe, orient, decide, act) loop will win.
Q: What are the technical solutions you use?
A: Our Server product is built on C++, Erlang, C, and Go. Our customers can program to the databases in any of several popular languages (Java, .NET, PHP, Python, Go, C, and Node.js) and frameworks of their choice. Our Mobile product is natively built for iOS, Android, .NET, and Java.
Q: What are some “real-world” problems you are helping your client solve?
A: We solve real-world problems of scale and data availability, where the data comes to you, versus having to go fetch the data. For example, we worked with United Airlines to upgrade and modernize their flight operations technology for 41,000+ pilots, flight attendants, and flight schedulers. When launching the Crew Modernization program, Couchbase Server and Couchbase Mobile were selected as the underlying technologies to help improve employee experience and increase efficiency. United is now able to maintain accurate and up-to-date information from multiple mainframe application data silos, build a foundational technology platform that services all information channels, and quickly build and deploy FAA-approved mobile applications. The Crew Modernization program now provides pilots with flight information, simplifies flight attendant tasks, and streamlines information to personnel across geographies, time zones, and devices. Going forward, United plans to roll out additional applications, including personalized customer information synchronization, airport agent real-time flight updates, and gate display information management.
And in another example, by using Couchbase Mobile, SyncThink enables sports team doctors to have a responsive brain injury detection experience while conducting sideline assessments even if network connectivity is intermittent. Doctors can run tests, capture results, and then sync data with Couchbase Server as soon as connectivity improves. The solution can sync even large data collections rapidly. EYE-SYNC collects a decent amount of data in a 60-second evaluation period, and we need to sync all of that data as soon as possible. Teams can test multiple players simultaneously, then sync a large amount of data seamlessly. They can get results fast, which means they can quickly determine whether a player can stay in the game or requires additional medical attention.
Q: What are the most common issues you see companies having with databases?
One of the biggest issues facing companies today is “database sprawl.” The new requirements being faced by applications has led to an increasing number of point solutions at the data layer. There are now a plethora of technology choices from caching layers to search and analytics engines — very few of which do much more than their specialized niche. It’s then up to the organization to stitch these together and manage the complexity of changing API’s and versions, moving data between systems, changing the data model or format to suit each individual technology and having the internal skills necessary to manage all of them. By choosing a platform like Couchbase, digital innovators are containing this sprawl that enables them to bring their solutions faster to market.
Q: Where do you see the greatest opportunity in the evolution of databases?
A: Organizations are looking for consolidation in the number of technologies that they need to incorporate into an application to solve a particular problem. Database technologies that can meet a variety of needs will be the ones that get adopted most broadly. A single database platform that can offer a key-value object store, full querying capability (SQL), and search and analytical capability that can run and scale in the cloud but also offer a mobile solution for the edge and IoT use cases serves the needs of the digital innovators. With more and more human-machine interaction, there are going to be new innovations in building cyber-physical systems. These new systems need these modern databases to store and process data, find information, and derive insight from this data. This is a great time for innovation in databases.
Q: Do you have any concerns regarding databases today?
A: I’d say the lack of standards across the various technology choices will be an impediment to significant maturity within the database industry.
Q: What skills do developers need to be proficient with databases?
A: Developers now more than ever have to meet and exceed market demands by quickly changing their application. And once the application has been developed according to the current market needs comes the second challenge: the scalability of the application. The developer does not know how big the application must scale but is required to design the system in such a fashion that it can scale on demand. The development agility comes from leveraging skills that programmers have developed over the years: SQL. Therefore, they need to learn the scalability and other new data management techniques that NoSQL systems have introduced. A database platform like one we have built at Couchbase brings the benefit of SQL programming and flexible schema, as well as the scale-out architecture of NoSQL systems. Understanding these new systems and developing their skills in these areas will enable them to develop their application quickly and scale that application on demand.