 Okay, we're back live here at the Cassandra Summit 2012. I'm John Furrier, the founder of SiliconAngle.com, and I'm joined with Jeff Kelly from Mukibon.org, the lead analyst for Big Data on our team, and we're joined with Jason Brown, software engineer at Netflix. Johnny, all right. Jason, welcome to theCUBE. Well, thank you for having me. So we had Adrian on earlier from Netflix, I call him CTO, but he was not on, obviously, a regular architecture. And he says, Netflix doesn't have a CTO. It's true. And he says, also, they only hire adults. Okay, no children. So good to know that you're not breaking in the labor laws and software development language. Yeah. So I couldn't help but resist. But welcome. So you're at Netflix. Yeah. Tell us about your experience. Sure. Obviously, because they only hire very senior executives and developers, so tell us about your background. Sure. So I've been at Netflix for four years. Before that, I was an architect and a lead engineer over at DOM. MajorleagueBaseball.com in New York City. This one? MLB? Yeah, Majorleague Baseball. And I basically re-implemented their entire e-commerce system. Before that, I was working over in the wireless space doing mobile applications way before it was sexy or interesting. It was a little boring back then. But then, before that, just kind of wandering around and trying to build my career up and eventually land out here in California. All right, so you're a software degree. What languages do you know? So the one I've been primarily working in for the last 10 years is Java. I do a little bit of Python scripting and a little bit of other things, but it's primarily Java. It's one that pays the mortgage. It's one that lets me... It's a good meat and potatoes. You know, good meat and potatoes. Java takes care of all the memory management. You don't have to deal with that. But you can go see if you want, right? No problem. Yeah, in fact, back when I was doing mobile development, half the work wasn't see. And actually, that was probably one of the best on-the-job experiences I've ever had. Constantly got my stuff handed back to me when the phones crashed and the vices did very naughty things. Well, we had to grill you on your expertise because we couldn't help but resist Adrian's comment about we only hired people with five-to-ten years experience and good culture. We asked him about the culture at Netflix. So congratulations. We're big fans of Netflix. See Reed and his history and entrepreneurship. It's just been a storied history. He used to work for a previous investor, my Audrey McLean, my last company's and she invested into the standard. But I got to follow his career. I don't know him personally, but just great, great brand. So love the disruption. So you guys are all cloud, right? So take us through, what's it like right now, architecturally? Let's get into the operating environment. So you're programming in Java. You have Amazon explaining a little bit about it. You're running Cassandra. What's the day-to-day life like in that environment? Sure. So the day-to-day life for just typical engineers, you're working on a coder features for, like say, the recommendations algorithm. And that's the algorithm that will show customers movies that they may be interested in, based upon everything they've watched and rated in the past. And so that would get calculated and then driven to the website. And so when the engineer is actually working, you write some code, you check it in. You basically create something that will run inside of EC2. And you can launch it pretty fast. And essentially, you could go from running a piece of code right now and pushing it in prod in just a few hours. And really, that few hours is really just taken by building the appropriate artifacts and then really just testing. So people are familiar with the recommendations service. Obviously, they have Netflix. They say, hey, I ran this movie. You might like this. Absolutely. On Google, I got the little transformer app here. It's part of my thing. Suggestions. You might want to try one of those. It would pop up other movies that I like, Act of Valor, MacGyver, you know what I'm like this. So take us through some of the coding behind that. That's what the intelligence is one, using a lot of data. Yeah, and grouping different customers by the similar likes. So if you and I have similar likes, we may be bucketed together. And I really can't talk too much about the internals because I'm not very familiar with them myself, but also some of it is internal. Secret sauce. It's a secret sauce of Netflix that we hope makes today a better product. Let me try to unpack and share that for the crowd. What they essentially do is some community detection. They store all the data now I'm all again. No, seriously. So you got to get the data. So I want to kind of go through kind of the big picture just because, and I want to oversimplify. I don't have to go into the secret sauce, but you need access to the data. So from a database standpoint, you have the Netflix's data model, all the data for all the clients, and all the customers. Yeah, all the customers. So you have all that data. And you got to pull that in at any given time. Correct. So to know my likes, you got to have access to my stuff all the time. Exactly. And so how do you guys do that? How does it work? Sure, so whenever you watch something or rate the movie, it'll get submitted to a database. Then that'll get run through one set of aggregation that'll figure out everything you've watched and all the movies that you'd be interested in and generates one set of lists. Then at runtime, when you actually go to Netflix.com or you go through a device, like a PS3 or anything else, I'll let you do on the fly filtering. So there's things like top 10 videos that you may be interested in or there's things like the foreign films you'd be interested in or the critically claimed heartbreakers that you'd be interested in. You'll basically find everything that you've watched and really filtered for hopefully what you are interested in. So how about the Cassandra? I think we could rattle on this for a long way. I know you probably won't get more specific as to the secret sauce. So we'll kind of redirect into the Cassandra. So why Cassandra in the cloud and specifically has it helped you guys? Absolutely, so one of the coolest features about Cassandra is that it has this multi-data center sense built into it. Meaning you can run the same, you can house the same set of data across multiple data centers and there can be geographically disparate locations. So for us that means essentially we can have a customer's complete set of data in Europe and a complete set in Singapore and a complete set in the US. And for us that's really great because as we want to grow internationally having the customer's data available everywhere and very close to them is very critical for our business and to get recommendations and the customer's data as fast as possible so we can serve up what they'd be interested in. Except for replication essentially and replicating the infrastructure. Absolutely. So what's involved? I mean, does Cassandra take care of all that? It does, pretty much under the hood. So we've had some Cassandra committers on board at Netflix who've written a lot of a code and have contributed back to the open source project and that's essentially what we run in our production environment so that we can run inside of Amazon too and have customer's data in Europe, in the US and anywhere else that Netflix decides to go to. So there's a word that's being kicked around since the whole social data streaming. Not streaming movies like you guys but streaming data. So data is fast moving. Is Cassandra a better use case than HBase or what's the, I mean takes us through the Mongo, HBase, Cassandra, based on your expert opinion, looking at the different views. Actually we know why you like Cassandra but you know HBase has some advantages. Yeah. You've got simple DB which... We actually started off our cloud migration using simple DB. Unfortunately we found that it didn't scale up to what we needed. There were major performance problems and we just had to basically migrate or abandon pastics. It was just not scaling up to our needs. And so at that point we really need to find out a database that we had to manage and so we did a comparison way back in the day about two years ago now. We evaluated things like Mongo, Cassandra, React, HBase and Cassandra won out for us because of the data center compatibility. We found that HBase didn't work for us because it seemed more geared towards large chunks of data rather than our needs at runtime which is for a specific customer set of data which is a much smaller sort of a unit of granularity. So HBase is great for doing a lot of analytical work but didn't work for our runtime needs. MongoDB we played with a little bit. There was a team that actually deployed it internally but it had a lot of performance scalability problems. There's a right lock that every time you do a right inside of it it tries to do a lock and I don't know much of the details myself but essentially they were able to make it fall over unfortunately pretty fast. So for their specific purpose it didn't work. And as we're trying to not have a whole slew of database systems running around we decided to center on Cassandra. Got it, good. So yeah I'm interested to hear a little bit about how these two worlds big data analytics, kind of big data transactional real time products too. How they lived together in Netflix because we actually had a data scientist on from Netflix that Hortonworks Hadoop Summit talked a little bit about the algorithms and building the analytics that power the suggestions. But you've also got, once you make the suggestions you've also got to deliver the content. Correct. So you've kind of got both worlds there. Exactly. How do you purge that at Netflix in terms of making those two work together and both from a technology perspective from a team staffing perspective? Is there overlap? How does that work? Sure, so it's unfortunately not one big system that can rule them all. It's unfortunately a group of systems. In fact when we first moved to the cloud and moved to Cassandra the problem that we found that we had was it wasn't one system and then moving all the data out of one, moving all the data out of Cassandra into something else where it could be analyzed and really churned through was actually quite assured that our analytics team spent, I think the better part of seven, eight months trying to work through that process. And so that's the process of getting it out and getting it in. A lot of how that team works is that they'll upload the crunched out numbers. They'll just stash it up in S3 and then it'll be pulled in by another team to be stuffed into either another Cassandra cluster or just those runtime services will pull it from S3. So unfortunately it's not as simple as we would all like but it all works. All right but I think that it's important to point out people sometimes are trying to kind of compare and contrast the different big data approaches and they're often complementary in many ways. I mean what Cassandra does certainly is complementary in a lot of ways to what Hadoop does in terms of the analytics. It's a little bit different when you get into H-Base and then you're talking a little bit about kind of a competitive situation. So in terms of Cassandra we've heard a little bit about over the last couple of years the kind of the tool set has improved. A couple of years ago it was not great. So could you talk about that? Could you first of all confirm that, is that accurate? And how has it developed? How has it improved over the last couple of years and how easy is it to use now? Sure so for an enterprise company like Netflix where you're going to go in and you know your pioneers and you're basically gonna have bloody fingers at the end of this, you're ready to sit down and write some code. For most other companies unfortunately that's a big undertaking and it's kind of scary. We've done a lot of things. There's still a lot of room for improvement. So we've written a lot of open source, we've written a lot of tools that we've open sourced but unfortunately there's still a lot of stuff that the typical enterprise off the street just, it's a high barrier to entry. Now I think things have improved a lot over even just the last couple of years and if you think about things like Oracle and even MySQL, they've been around for decades and so there have been time for these, not only the technologies to settle in but then tools communities to form around them which maybe in a few years we'll start to see with a lot of the NoSQL solutions but at least right now it's still a lot of, you know just arrows and you know. We have one minute left so I want to ask one final question. Obviously we had a good job of Adrian, we just pumped it up on the blog so there's a blog post out there now. Go to Siliconangle.com, you can see the blog post and write up from Kit Dodson, one of our editors as well as the video footage from Adrian's video. But given Netflix's position in the marketplace both as an innovator and a disruptor as well as putting stuff in production, what would you share with some of the younger generation CS dudes coming out of college or indoor, working their way through the trenches, learning and playing in the open source community around and just trying to get some navigation around what language is, you know, philosophies. Could you just share your personal and collective Netflix mojo with the crowd in terms of just how to approach the different languages framework up and down the stack? Sure so I'll actually share my own personal story. My background is actually not in computer science, I have a master's degree in music composition. So coming out of grad school in 1999 I needed to get a job. So I basically just started at the bottom doing tech support phone calls and basically it was really just staying up late nights, studying as much as I can. Luckily I was at a company where the systemist engineer who was the founder of the company just kind of took me underneath his wing, gave me a software apprenticeship and really it was just a lot of hard work at the end of the day and reading as much as I can. And back then open source wasn't as big as it is now. But definitely reading any code you can get your hands on in all the different languages is great. But of course I think reading C is probably the best skill to have of all because that's really closest to the metal and of course you can do the most damage to the metal but perhaps to your own self. But that's really where it's at, it all boils down. All right, Jason Brown, software engineer at Netflix. We had a great Netflix contingent here on theCUBE. I'll see proponents of Cassandra. I'll see very cloud-centric in their architecture. They do have stuff on-prem just to kind of clarify that. It's not just all 100% cloud but it's heavily with Amazon one vendor and they're deploying it and saving a lot of money. We're here to talk about Europe, et cetera. So Jason, thanks for coming on theCUBE. We'll be right back with our next guest of this short break. Thanks for having us.