How to choose the right database for your workloads

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
ROBERT KUBIS: Hello, and welcome to this Next OnAir talk about how to choose the right database for your workloads. I'm Robert Kubis. I'm a Google Cloud developer advocate, and I've worked with storage and databases for the majority of my time here at Google. You can find me on Twitter with @hostirosti. Now, if you look at application and database migration journeys, we do understand that these are dynamic and diverse. So if you are coming from an on-premises system and moving into the cloud, if you're moving from one cloud to another, or if you're looking at a multi-cloud strategy, even if you are in the business of developing something new from scratch or extending your applications with new applications from scratch, we want to meet you where you are and want to support you in those journeys. So today I want to focus on three major journeys here. First one is migration, so like for like migration, lift and shift, lift and optimize. Here, you're coming from a system that you're familiar with and you would like to stay with, but you want to move into the cloud, reducing your TCO, for instance, or having actually the possibility for faster migrations, fewer applications, rewrites, and enable the modernization once you are on the cloud. Second, I want to talk about modernization journeys. Here you are looking at challenges that you have with your existing databases where you want to move off your existing databases and want to move on a cloud native database, for instance, or one of our managed open source solutions. This can help you reduce and eliminate reliance on a single database. It allows you to rethink how you're using your databases, for instance, consolidating many databases into one or changing the database that you're using. And third, I want to touch on innovation and transformation. Here, I want to focus on what are the databases that we are offering as fully managed solutions to remove the toil from your plate so that you can concentrate on solving and building the things that your customers need. Here, you have the ability to really tap into systems that are scalable, available, SLA-backed, and that help you to advance your business. So let's start with migrate. So the migration journey, to be successful, is a multi-step process. And I want to touch on this because this is important if you want to have a successful database migration. You start with assessment and discovery. You want to see where you are, where you're coming from, and what are the criterias along the way that build success. Make these criterias in a way that you can check on your journey your success criterias along the way. Then you want to set up this environment. So there are different ways of doing this. You can basically start an organization, Google Cloud, create your projects, set up network peering, set up private networks to always have your data secure when you're moving it. Or if you have a lot of data, you can use something like Transfer Appliance that we are offering, which we are shipping to your data center, where you can load data onto it, ship it back, and then it gets loaded into GCS, where you can load it back into the database of your choice. Then you have the data migration, of course. Check with monitoring if this migration is going well, validate it, and then have always a strategy of if something goes wrong how to roll back. Especially if you do online migration, you want to have rollback strategies, and you want to have them tested. So what are the options? You see here on the left that there are a lot of databases that are around. There are open source databases. There are third-party databases. There are relational databases, key-value store, column store, caches, really streaming databases, a lot of databases that are around. Now, if you look at those databases, where can you end up on Google Cloud? So you see on the right, we have infrastructure as a service or managed databases that you can choose to end up. Especially for homogeneous migration, you want to look if your databases are supported by our fully managed services. Or you can also get help from our managed partners to go into those solutions. So let's resume. For instance, if you have all those databases on the left side, you can always go with the way and self-manage them on Compute Engine or Kubernetes Engine, if you like. Now, if you are using, for instance, MySQL, PL/SQL, SQL Server, you can use one of our managed solutions with Cloud SQL. Now, for each base, for instance if you have HBase workloads, our Cloud Bigtable managed solution and cloud native database has an HBase API. And so you can end up with your HBase workloads in Cloud Bigtables directly. Now, if you're looking into cache solutions, you can use Cloud Memorystore. Or for writers, for instance, we also have managed partner solutions with our open source partners to provide you a fully managed solution that is integrated with billing, that is integrated with monitoring, and easily accessible through the marketplace. And then, last but not least, we also have Bare Metal Solution. So Bare Metal Solution I will go a little bit more in detail later, but that also allows you to bring your third-party database workloads closer to our data centers. So I want to focus a bit on SQL, the how do we support you in SQL migration. So one of the things that, for instance, with MySQL support is external replication. So you can set up external replication of your existing MySQL databases on-premises or on another cloud, and this way, catch up with your data in our cloud on Cloud SQL and then switch over. We have also a lot of other functionality that helps you to move your data and your applications into the cloud. Now, I want to point out here that we are partnering with a lot of migration partners. You see a screenshot of logos down there in the slide. And if you basically want to have help, if you want to have experienced partners, experienced partners in your migration journey, please feel free to reach out to those migration partners that have done [INAUDIBLE] migration successfully onto Cloud SQL. And last but not least, I also wanted to point out that you can get more information on what features we have, for instance, with Cloud SQL coming, and how to migrate or recover with Cloud SQL in the talks that you see in the Learn More section. Now, what is Bare Metal Solution? With Bare Metal Solution, we allow you to migrate or move your Oracle workflows closer to Google Cloud. So maybe you can't move off Oracle right now, or you want to move at a later point, and you want to move your central workloads closer to Google Cloud. Now, with Bare Metal Solution, you have some solution that is possible in the sense of that we have purpose-built hardware that is certified that brings your workloads closer to Google Cloud. We have integrated billing. This is a very low latency setup with our data centers. And we allow you to bring your own DBAs or your service integration partners that you prefer with the solution. Now, if you want to learn more about the Bare Metal Solutions, please check out the talk DBS213. All right. With this, I want to go into the modernization section of this talk. So again, I want to touch on-- also, modernization journey is something that you need to look at the multiple steps that you are [? trotting ?] on during this journey. Now, this is a little bit more complex. You see here, I didn't do justice with just adding this app into my creation step, but each of these steps is touched if you do a modernization journey. Now in a modernization journey, you have things you have to think about, OK, I might have to do a data model transformation. I have to do my data transformation if I move into the cloud. There are maybe different things that you need to change in your apps to make that actually possible. But again, all this should be starting at an assessment. Do POCs. Set up the success criteria. Set up the environment, and have strategies if something goes wrong. Now, there are three main cloud native databases that I want to touch on here for your migration journeys. Number one is Firestore. So Firestore is our fast, fully managed, serverless NoSQL cloud database. So it allows you to especially build really powerful VAP and mobile applications. It is a document-based database. And it allows you also to sync your devices in real time. Now, Bigtable is a fast and fully managed wide-column database or key-value NoSQL database that allows you low latency, scalability, and reliability for massive workloads where you need fast lookups, fast writes, and fast scans. Now, Cloud Spanner is our database that addresses the [INAUDIBLE] and relational database market. With Cloud Spanner, you have an enterprise-grade, globally-distributed, and strongly consistent SQL database that has asset functionalities and that you have basically built-in disaster recovery and high availability with horizontal scale. Now, what do we see in our customers? What are the journeys that we see a lot of times? So here, I want to point out that, for instance, for the [INAUDIBLE] and SQL database modernization on workloads, we see a lot of customers that hit certain challenges with their existing relational databases. And they want to move into a more managed, scalable, and SLA-backed solution. So many of those customers are looking at Cloud Spanner at the destination from a relational database. Now here, challenges are addressed with scalability. You have an SLA up to five nines. You have built-in high availability and disaster recovery. So there are many things that help you basically making this decision. Now, other workloads that you can see is, for instance, Cassandra workloads. Now, there's a little bit of a differentiation here that you have to look at. So for Cassandra workload, it's really important is, why did you move to Cassandra in the first place? Did you try to address a challenge like you had scalability issues, and you were saying, OK, I wanted to address the scalability issue challenge, and that's why I moved to Cassandra, which is a horizontal, scalable database system. But by that, you sacrificed some of the consistencies, qualities that you have with a relational database. Now, if you weren't happy with sacrificing these constraints, the relational constraints that you have, the consistency constraints that you have in your workloads, and you had to build this into your application, which is error prone, and difficult, and quite an overhead, then many of those customers are actually moving to Cloud Spanner because you get back here the consistency, but you keep the horizontal scalability before your workloads. Now, if you moved to Cassandra because of the horizontal scalability, and you're fine sacrificing the consistency in here, then we see customers moving to Cloud Bigtable, where you have a level of consistency, but [? eventually ?] consistency for replication across zones and regions. Now, if you, for instance, come from a document store, we see quite a lot of customers that are looking, for instance, moving to Firestore as a destination from mongoDB, for instance. All right. So what how do we support you actually in these database modernization? So there are quite a couple of things that you can look at for this support in the modernization. On the one hand, we are building more and more tools that help you migrate. So we are integrating with industry standards like JDBC and Hibernate. We are integrating with very popular frameworks like Spring Cloud Integration, for instance. And we provide you with tools for fast, iterative development that you can do. For instance, the local emulators help you to fast iterate and develop locally without having to set up a database like Cloud Spanner or Bigtable database in the cloud, and you have all this overhead there. Also, by moving onto one of our Cloud databases, cloud native databases, you get all the other features as well. So you get high availability, all the scalability, and the integrations that come with more monitoring or optimizing your databases. Now, you might ask, OK, is that the only thing that I need if I make a decision to which database to move? And it is not. You have to differentiate between two main areas that I see here. One is, what are the technical considerations that we have touched on already in this talk? And what are the business considerations? Right? So a technical consideration, again, just briefly, what are the tools, and integration, and support you get on the technical side? What are the communities, things like that? What is the data model that you have to go into? And what are the consistency requirements that you have for your workloads? Now, on the other hand, the business consideration is things like, can you reuse the skills that you have already in your teams, in your companies? Is there a certain SLA that you need? Do you need certain managed functionality? What is the security requirements, compliance, certifications, things like that? So there are many criterias that you need and want to look at when you make your choice for a database. Now, that said, for all the cloud native databases that we offer, they are all SLA-backed. They all come with data encryption in-flight and addressed. And they all are built for scalability and availability. So with this, I want to focus on like, OK, what are the databases [INAUDIBLE] that you can end up with, and especially for your innovation and transformation journeys? First, Cloud Spanner. So why would you choose Cloud Spanner? First, it is a fully managed ACID and a relational database. It comes with a built-in high availability. So data is distributed and replicated across zones and for our multi-regional setups across regions. So if one zone goes down, your database will still be available. Now, the second thing is you are provisioning the database for what you need. Here, you can scale flexibly, horizontally. So you have an online elastic capacity scaling. And that is actually in a matter of minutes that you can scale. So you're just going to go either use an API or our console to scale your database, depending on instance, actually, depending on the load that you have. And a new feature that we just added recently, you can do things like Query Optimization Version pinning, where, if you have a query optimizer that we have released that you like and you want to test in your version before you actually go in with this for your production workloads, you have the ability to actually choose which kind of optimizations you want to have for your workloads. Now, we see a lot of uptake for Cloud Spanner in many, many, many verticals and different diverse workloads, especially things where you need the consistency constraints, where you need the asset capabilities of this database. Now, for Cloud Bigtable, here we are looking at a really, really performant, key-value, wide-column database. We see a lot of things like [INAUDIBLE] or anything where you need fast lookups. But Cloud Bigtable is optimized for fast [? ingress ?] and fast searches [INAUDIBLE] reads. Cloud Bigtable also has linear scalability. So depending on your workloads and depending on your traffic that you have, you can flexibly scale linearly for your workloads, which is very, very powerful. Again, Cloud Bigtable is a fully managed database. It comes with many, many client libraries in idiomatic languages. And you have tools integration like the Key Visualizer that helps you optimize your schemas. I also want to mention here, if you are going onto one of our cloud native databases, these get better over time. So Cloud Bigtable, for instance, is a database that we have developed and started to develop 15 years ago. It has made many, many iterations and optimizations along the way. Now, if you are betting on one of the cloud native databases, we are constantly optimizing the hardware, the network, the functionality under the hood. And you just get that out of the box. You don't have to self-manage, for instance, the operating system. You don't have to run patches or things like that, and updates for your self-managed workloads. Here, everything is fully managed for you. Now Firestore is the database that currently has the highest net promoter score. Firestore is very easy to start with. And again, it's a serverless, fully managed database, where you pay for what you get, and you pay for what you use. That is important here. And it comes with many, many integrations for iOS, Android, web clients. You find server client libraries. But a feature that I really, really like from Firestore is the real time synchronization between devices. And that can be a mobile device with Android, iOS, or it can be a web application. It is very easy to set up. You don't have to write a lot of code. It basically comes out of the box. Another feature which comes out of box here is that you have offline support. So even if you have connection challenges, we do all the things behind the scenes to make sure that your data is cached and the app experience is almost uninterrupted if your people-- or your users and your customers go offline. We see with Firestore that many, many companies are actually using Firestore to extend and modernize their application in front of legacy setups. So for instance, if you want to add a more natural and more modern mobile application experience, Firestore is one of the number one choices here to achieve that with your existing backends. Now, I don't want to say that you only want to end up in our cloud native databases. There are many situations where you might want to end up in an open source database. Now, with our managed open source solutions, you can do just that. And remember, here, it's about taking away the toil from you. With our managed solutions, we and our partners are taking care of things like operating system patches, database patches, keeping everything secure in the background, and updating the backend in the sense of that you get-- you can choose when you want to have your new functionalities coming in with your managed solutions. But it's much less toil. It is integrated with our monitoring and our logging tools, and integrated with the billing facilities as well. Now, you might have wondered-- there wasn't any data analytics database so far. So I want to actually bring in BigQuery here, which is our serverless, fully managed, petabytes-scale data warehouse system. So with BigQuery, you can run analytics across petabytes of data in minutes or terabytes of data in seconds. It's very feature-rich. It has a lot of features like ML integration. You have a natural language query interface now that is just released. You have an SQL interface. So it speaks SQL so you can, again, reuse your skills that you are already familiar with. What's really powerful with BigQuery is the integration with other systems. So BigQuery allows you to, for instance, run federated queries into Cloud SQL databases. By doing this, you don't need to move your data from Cloud SQL, for instance, to BigQuery. You can just query your data directly from BigQuery. And we also just recently announced that it's possible to actually query data in other clouds with BigQuery as well. So with this, let's get all this onto one slide. So here, you see the full data management portfolio that we are offering ourselves, as well as with our partners. And we don't stop there. You can always run your database of choice that, even if it's not supported by us directly or by our partners, you can always run it on our infrastructure. So for instance, if you look at HANA, or IBM Db2, or things like that, you can always run them directly on GCE and Kubernetes. So there are many ways, from in-memory, non-relational, relational data warehouses, everything here you see that can be accomplished with our database and data management portfolio. Now, I want to have a little different view here as my last slide before I close out this talk. So here, you see the different data model schemas that are available and are supported by our database systems and solutions. Now you see that many of those are either supported by our fully managed offerings, by our cloud native offerings, or through our partner offerings that we have here. And just for you, for reference and help, if you are in the business of moving from one cloud to another, or you want to set up a multi-cloud environment, we have also put the systems in other cloud providers so you have something that you can match up for our database solutions. All right. So with this, please tune into the sections and breakout talks that are available on Next OnAir. There are many really, really great talks that are coming out and that are really interesting to watch. Many go in a little bit more detail or a lot more detail in how to migrate your workloads onto Google Cloud. I also want to especially recommend you to watch the solution keynote, "What's New with Database Management." And also check out our showcase demos that are available at cloud.google.com, Next SF Demos under Data Management Databases. All right. With this, thank you very much for tuning in. I hope this was helpful. And please feel free to reach out to me, for instance, on Twitter @hostirosti. Thank you.
Info
Channel: Google Cloud Tech
Views: 4,923
Rating: 4.6799998 out of 5
Keywords: type: Conference Talk (Full production);, pr_pr: Google Cloud Next, purpose: Educate
Id: 3YnLuEdGzU8
Channel Id: undefined
Length: 24min 17sec (1457 seconds)
Published: Tue Sep 15 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.