Introduction to Redis Labs during AWS re:Invent
Transcript
hey you're watching another CCO dose sponsored by Redis labs we're gonna go right into it what's the difference between rats and Cassandra why Redis laughs I mean I can throw it too soon Redis from AWS etc we ask the tough questions of red slaps stay tuned [Music] sponsoring yet another CTO adults from dutiful Las Vegas as you can tell with the rain pouring outside during a wf3 an event Redis labs and from Rena slaps I have their chief product officer Alvin Richards welcome to the program
great thanks cream vine for coming to tilt not a problem so first off I know Rex but when I think of Redis I harken back to what I said at work because you know we're now in the era of kubernetes and I'm gonna think the banner of OpenStack so I don't associate radical opus that but I associated with open-source and I'm the enterprise guy when I think of open-source I think about finding talent doing the open stack days and when that talent I develop that talent
around taking a project from open source adding some of my bits to it adding my IP to it and then a year later my whole team disappeared I absolutely need a ecosystem around a open source project I think maybe of Redis kind of just bare metal taking going out and pulling down a project and installing it how does Redis labs solve this problem of product versus project for me great questions so let's start off with Redis the project so it's been going about 11 years now
it's wildly popular by any metric you know it's three years running the most loved database on Stack Exchange the most deployed database on AWS billions of docker pools and so by any reasonable metric it's super loved it's super used but what are people weighted developers first pick it up mostly because it's sort of yeah does this or a Vulcan mind-meld with developers because they use it in a way that's very familiar with them they're dealing with data structures rather than object relational mapping layers or objectdock
you of mapping layers they're dealing with lists set sorted sets it's very very natural then to sort of segue into what does whether slabs do well we're the major sponsor of the project so we commit code to that through a real super producer Enterprise version and so most people start off thinking of Redis of the cache they may use it for example as a session store and that's great for when you're developing but what you want to do when you're a big global company you want
to distribute that data around the globe well this is where where the price comes in we have active active replication so you can have that same session state in multiple data centers you lose a data center that person who goes back to their shopping cart hasn't lost their shopping cart they have everything there because the data is replicated between all of those data centers in near-real-time and so whether that's a shopping cart or whether that is the leaderboard in your favorite game that you're playing on
your off your favorite on yeah I'm playing multiplayer people notice right exactly exactly right you want that session state you want that leaderboard or you want that risk analysis to that credit card transaction to have the same data irregardless of where you are do you only be able to access that data supersorrell so we're in the open source world when it county introducing open source to my enterprise off bodies ran as they might have heard of red is again from me can't layer or developers using
it as something too heavy basically free database on there and their development environment maybe move to something else in production for these very reasons but some of the use cases you gave to me is kind of new to me from a Redis perspective Redis is not something that I've rarely worked with day to day as are operated so when I think of like these multi-regional global databases the first thing that I think of is like as Cassandra DB what is the difference can you explain to
the audience the difference between the nature between a Redis and a Cassandra absolutely so you know I've been in databases a long time I started with Malaysia databases in the 80s and you know we got to a source stasis point of relational databases which is you had a single server the database running on it and you could load up however much data the problem we got in this sort of you know early 2000s is there was more data than a single server could hold right so
you have to put data across multiple servers you have to have some form of distribution of that data and the relational model has some challenges when you start distributing the data trying to do and join across service is very problematic in space flow and so other data models formed to allow that data to be distributed more easily so Redis is a key value store Cassandra is a white column store MongoDB is a document store these are just different ways of representing the data that have different
characteristics on how you can distribute that data so depending on the problem you solve you choose one database or another one or whatever your by your way of approaching the problem so you think it's all particularly solve the same problem with the same database but the advantages disadvantages will we'll leave that for it but the database yes so if you remember those advertisers in the 90s by Oracle that said put all your data into Oracle right everybody tried that and everybody really related right and so
I think the challenge for any IT organization is there are lots and lots of databases there like 250 on DB engines but there's these remain different categories of databases and for an IT professional you have to pick the right tool for the job and then you end up with this sort of polyglot environment where you still may have some relational you may have some key value you may have some document stores and so it's really understanding the problem trying to solve what are the scalability requirements
what are the availability requirements and can you pick the right tool to solve the problem for Redis we think and the problems it solves is where you've got very large sets of data or you've got data that you want to access very very quickly so a couple of really simple examples of that would be bidding on a google adword like google gives you 75 milliseconds I'd say you've got to give your bid in 75 milliseconds so the more data you can look at in this 75
milliseconds the better chance you've got of bidding the right offer for your client but you can't take 76 milliseconds you need something that's got very guaranteed latency so it could be an auction bid it could be you know risk analysis when you swipe your credit card there are more and more use cases where the more data you have the richer experience you can give you personalization on the web do you like getting those ads for products that completely irrelevant to you would you on those ads
that are really tailored to who you are and what you're doing right now and so this is the sort of where Redis comes in because you want to look at those big set data sets we look at them real quick so as I'm looking at databases these 250 different databases that have to pick from the Wayne Enterprises typically select databases that will say for this type of problem if you have a key value store problem as a enterprise we standardize on this DB four column databases
we sanitize on this DP that way I can do this this would be single DB vendor and I can get my support from that vendor what's the elevator pitch for choosing Redis laughs I mean Revis is an open-source project if you said it's all over the place why go to Redis other than the fact that you guys sponsor the open source project yes so I mean one routine is you're in a regulated industry and you need to have a relationship for bender and that's once or
traditional way of you build that relationship between the vendor and the customer but you know when I look at it from a technology perspective there are criteria that the business needs in order to meet their commitments to their customers or to other business units and that's all around SLA is around availability it's around throughput and performance and so in a very small Redis cluster you can do 200 million operations a second right so the question then becomes what can I now do about how does that
change the way I think about my business process or how I engage with a customer or how I can optimize and shuttle traffic so for example you know you can imagine your cell phone or cell phone operator and you've got trucks moving around right let's say part of your network goes down would you want to route that truck to go and do a home install or to go fit fix the the network problem now if you can reroute dynamically you can also then inform that customers
waiting for an installer if the person is going to be 20 minutes late so is that a feature of need reddit's or that varying add red labs adds on top of Redis so what it's allowing our customers to do is look at a greater data set and a number of different feeds so that it can make more sophisticated answers and that may be because it's a better routing it may be a better credit score it may be a bit of personalization experience it's all a question
of being able to look at that big graph of data for the relevancy and then be able to actually do more sophisticated processing so I get the sophisticated processing one of the things that I want to consistently use reliability as a challenge when it comes to databases being the underpinning of mission-critical applications and I have here open source so or resource I get in minutes I can really mix is getting to the point I trust many clinics however when I'm talking about databases I understand some
of the world's biggest businesses run their mission-critical solutions or Redis but I don't have a bunch of PhDs to make this thing work how do you guys help me to make sure that it's reliable great question so this there's two ways we do that so Redis labs as a company we started off as a cloud service for Redis and so the last eight years we've been running and managing hundreds of thousands of databases for thousands of customers and we built up a huge amount of operational
experience which we then baked into the product so there's customers who don't want to use they can take the same product you run in the cloud and they can run it on premise or they can run it in their private cloud instance and so what we what we've focused our attention on is all of the technologies and all of the edge cases so that we can actually give five nines of availability out of the box without having to have people's PhDs operating them I was talking
to a customer yesterday and they said you know we love Redis because we installed it we set up and we haven't had to touch it since in eighteen months and so this is you know the benefits of you know being born in the cloud has allowed us to instill all of those operational things that we have learned running at scale into the product that benefits people who may just want to learn it on premise themselves so for those of us that are new to kind of
the AWS world in the Redis world what's the relationship like what have you gotten ret reinvent why are you guys at really I mean it seems like AWS says they're too repetitive view of what Redis is and you guys aren't here every event talking to customers what's the conversation like what's the what's the value pitch great questions so you know we're here at reinvent AWS is one of the cloud providers that we run on we also work on GCP in this year we announced earlier this
year partnership where Google would actually promote rhiness enterprises our first party service along with their own Redis offering and so we work with all of the cloud providers and so one of the value pitches is a hybrid cloud deployment some of it you want to run on premise some of it you want to run on cloud you may actually want to span both of those if you've got a transition strategy to get from on-prem into cloud well Redis is going to help you doing that because
it's going to allow you to cache the data on both sides so you can maintain that application performance as you move in both the application load in dataload between those deployment characteristics but you need to do that in a reliable way and so technologies like active active give you that five nines of availability across those domains now most people will tell you cloud deployments are much more unreliable than traditional on-premise and that's absolutely the case and so this is where technology is like kubernetes actually helped
those migrations into the cloud deployment because they simplified the automation the data operations one of the things we announced recently was an extension to our kubernetes operator that would do automatic cost of recovery again this alleviates the burden for day to operations because Eligius was said and forget it so I really appreciate you taking out the time you're busy reinvent good we're all away over here at the cosmo you're not familiar with the set up here at reinvent it's spread across like eight different hotels and
it takes 45 minutes ago from one hotel to another I appreciate your time coming over from the Phoenicians for more coverage of AWS redundant go to their website dusty keel advisor comm or follow us on twitter at CTO advisor until the next CTO dos talk you then