Latest / Agentic Conversations (formally mlops.community) / MLOps #22 Feature Stores: An Essential Part of the ML Stack to Build Great Data // Kevin Stumpf - Co-Founder & CTO at Tecton
Transcript
- 0:00It's good to have everybody here.
- 0:16I'm going to jump right into it. Get started with our guests to
- 0:23is none other than the CTO and co-founder of tecton AI which As
- 0:30quite a bit of hype these days because the majority of the team
- 0:36comes from, some hard hitters. They've got people like our host
- 0:41himself who was an ex kuber X Michelangelo.
- 0:46We've also got some x Facebook X, Cora guys, X Twitter, you
- 0:53name it. As far as where you spend your
- 0:56time on the internet, they probably have someone that used
- 0:59to work there. There.
- 1:01So, that is what's going on with tecton.
- 1:04And for our guests, he is not only a machine when it comes to
- 1:11coding and creating ml Ops tools, but he also does some old
- 1:17truck Endurance Sports, so he told me he did a little bit of
- 1:23Iron Man. He's done some Ultra marathons
- 1:26but his favorite hit the most fun.
- 1:28He's had was when he ran. 250 kilometers across the Sahara
- 1:33Desert, which is mind-blowing. I think for all you that are
- 1:39from the US, and don't know, km, that's around like, 150 miles.
- 1:44So you get an idea. I can imagine, you're drinking a
- 1:47lot of water or did you go with Toph style?
- 1:51So, yeah, please give it up big round of applause for our
- 1:56guests. We have Kevin stump the CTO of
- 1:59tecton. Thank you.
- 2:00For coming on here. Kevin, I really appreciate you
- 2:02joining us. Thanks for having me.
- 2:06Yeah. So before we jump into anything
- 2:09about tecton and feature stores, I know that's kind of what we're
- 2:14going to be centered around today and we're talking about a
- 2:17lot of feature stores and what you all are doing at tecton
- 2:21around future stores. I wanted to just start with a
- 2:23question that I normally start with, which is how did you end
- 2:27up in the place that you're at? Now, I know you're originally
- 2:30from Germany and now you're living in the Bay Area.
- 2:34You were working at Uber, can you give us a bit of a story
- 2:37around that and how it all happened?
- 2:40Yeah, definitely. I'll try to keep it brief.
- 2:43But I've always been a software engineer.
- 2:45And as I mentioned, I'm from Europe from Germany specifically
- 2:48and after high school started a software development company
- 2:51that builds software for various companies all over Europe and
- 2:55the us including things like test but automation software for
- 3:00GM in Michigan and through that. Engagement of project, I got to
- 3:06really like the US and decided to come over, come over to the
- 3:08Bay Area and stop focusing on just service oriented software
- 3:13businesses and really focus on product oriented businesses and
- 3:17through that thought would be a good idea to layer on some some
- 3:22business education to and then went to Stanford, Stanford
- 3:25Business School and through that ended up co-founding dispatcher,
- 3:31which was an end-to-end Market. Is the connect, the long-haul
- 3:35truck drivers to shippers and was really the Uber for
- 3:38long-haul truck driving. That's then also how we ended up
- 3:42a boober because who burrowes building out its own internal
- 3:45over afraid Division and then as soon as I joined Uber, I
- 3:49switched over to Michelangelo, the ml platform team and then
- 3:54work there as an engineering manager and Tech lead off the
- 3:56platform and saw all the potential and all the the impact
- 4:02that Michelangelo and then, Centralized and that
- 4:05standardized ml platform have a tuber, which I can really think
- 4:10about it as leaving to this Cambrian explosion off machine,
- 4:13learning applications within Uber, just by providing this
- 4:17Center Line standardized platform that all the engineers
- 4:21and all the data scientists were able to use to get a male real
- 4:24into production, so that had massive impact that the company
- 4:29at Alber. And that's when we decided, hey,
- 4:32let's, let's Company around and this face.
- 4:36So they that we can provide similar tooling similar
- 4:38platforms to other Enterprises that are not necessarily only
- 4:42the Bay Area. Yeah, so we're you bought by
- 4:46Uber and what year was that that was in 2016 as when we joined
- 4:52them and it was a yeah our entire company joined them and
- 4:58our entire operations and sales and whatnot to him or the
- 5:01majority of them then joins Acts.
- 5:04Fledgling, Uber Freights division at Edinburgh at the
- 5:07exact same time, they acquired Auto which was the self-driving
- 5:10trucking company and then through that they then just
- 5:16build out that division within Uber.
- 5:19Perfect. So, let's jump into feature
- 5:22stories because I got a lot of questions to ask and event.
- 5:27I want to just start with what a feature is.
- 5:31And I, you know, I was reading up a bit on.
- 5:35Can you just give us a breakdown of what a feature is?
- 5:38What feature engineering is that kind of info?
- 5:43Yeah, definitely. Yeah.
- 5:44For those of us that are are like me and a little bit slower.
- 5:49No, but sure, it's definitely a complicated and interesting and
- 5:53new topic and features is really data for machine learning and
- 5:57it's typically data or information.
- 6:01That's derived from raw data and an organization.
- 6:04You can think about it as being highly curated, really high
- 6:08quality information, that ml models are able to detect
- 6:12patterns. And those features then helped
- 6:15the model to predict something like it helps a model to predict
- 6:20which restaurant are you most likely to pick from if you open
- 6:24up and overeats app or how long is it?
- 6:26Most likely going to take you to get an Uber ride from Palo Alto
- 6:31up to San Francisco and typically the way you get from
- 6:36just raw data to these features. So, this highly curated
- 6:39high-quality information is by either, just cleaning the raw
- 6:42data. By filtering out all of liars or
- 6:46by aggregating information, where maybe you're saying, hey,
- 6:49how many times has a certain customer ordered Thai Dish in
- 6:55the last 30 days? So it's an aggregate feature.
- 6:58Then that would be very helpful for animal model to detect
- 7:02patterns. And and then oftentimes, it's
- 7:04also human intuition. That is applied to raw
- 7:08information where you can imagine that maybe.
- 7:13Data scientist has the intuition that the weather outside, we
- 7:16have something to do with what people want to eat right now in
- 7:19it. So you could have a Boolean
- 7:20variable that says, hey, is it like pretty warm right now
- 7:24outside? Or is it pretty cold outside
- 7:26right now? Which may determine whether
- 7:28somebody is more likely to order like a hot soup or a cold ice
- 7:30cream and stuff like that. Oh, that's that's such a good
- 7:36way of putting it and it makes total sense.
- 7:38So now when it comes to features and this idea of taking the
- 7:45whatever certain parts of I look at it, like you have your Excel
- 7:49sheet, right? And then you take a certain
- 7:52piece of the Excel sheet. Maybe you combined it with
- 7:54another one and or you say this is the important one.
- 7:58Let's look at it that way. I know I'm over simplifying this
- 8:01like crazy but But that's how I'm looking at it.
- 8:06Now, what is it that Needs to be done when you're trying to
- 8:12create like a store where you can.
- 8:15Just look at these and say, all right, I want to be able to pull
- 8:19from that quite easily. Mmm.
- 8:22Yeah, definitely. So there are at least three
- 8:26things that you need to do on the one side.
- 8:28It's like curation of those features.
- 8:29So somehow these features need to be calculated and they need
- 8:33to be ingested into this feature store so they need to come from
- 8:36somewhere. And again it's the big lie.
- 8:38Like you start with the Raw. Which may live in a data link
- 8:41that may live in a data warehouse and even Beyond
- 8:44streams like Kafka streams or maybe real-time data.
- 8:48And that needs to be transformed typically cleaned up aggregated
- 8:52and then those feature values need to make it into the feature
- 8:55story itself, like the database, if you will where it can then be
- 8:59retrieved from later on and then you need to be able to serve
- 9:04those feature values. Serve them, typically two or
- 9:07three different types of consumers.
- 9:09So one is the data scientist who just wants to interactively,
- 9:14explore features and maybe solve a new modeling problem and pull
- 9:19out historical feature values larger scale.
- 9:22Typically in order to be able to train models play around and see
- 9:25what works, what doesn't work. Second consumer with typically
- 9:28the production training pipe lines that run are going to Cron
- 9:31job, naively weekly, however frequently to train uml models,
- 9:36that also need to then consume from this feature store.
- 9:39Finch the latest set of updated, future values to train on your
- 9:42model and then third, and most importantly ends.
- 9:46And also the hardest type of consumer is the actual
- 9:50production model. That's often times, has the
- 9:54requirement of serving predictions at very very low
- 9:58latency very, very high scale, like an Uber Eats,
- 10:02recommendation model, or Uber ETA prediction model these types
- 10:06of models. They do no more than 10 to 20
- 10:09Seconds to make a prediction. They need to be able to fetch
- 10:12these feature values from the feature store and then really
- 10:16low, latency with with production as a lace.
- 10:19And then layered on top of that, the last piece of course, is
- 10:22also the management of those features somehow need to be able
- 10:25to be able to discover and search and find new features.
- 10:31Identify what business entities business objects over these and
- 10:35these business videos features typically associated with.
- 10:38Huzzah, Hook for them. Can I trust a certain feature?
- 10:42How much does it cost me? Am I even allowed to use it?
- 10:45What purpose am I allowed to use it for?
- 10:47And that type of stuff. Hmm, yeah.
- 10:50And that gets into something that I want to touch on later on
- 10:54about permission and how that would work out.
- 10:58But before we go into that, there was something I wanted to
- 11:01ask about when do you feel it's right for a company to start
- 11:07looking at feature stores? And what is it for right from
- 11:11the beginning of their ml journey?
- 11:13Is it something that you have to be a bit more mature in order to
- 11:16actually make good use of it? Or is it a little bit of both?
- 11:24yeah, I mean if you're if you're just one data scientist or two
- 11:30playing in jupyter notebooks and you're just running very simple
- 11:36offline predictions, literally yourself in the notebook and
- 11:39there is not a whole lot of features that you iterate on or
- 11:43the doing are sharing with the other data scientists and then
- 11:46something like a feature store, maybe an Overkill, but typically
- 11:50signals to look out for that are good sign that you do need a
- 11:54Your store is, are you wasting a lot of time getting ml model
- 12:00into production? And are you spending a lot of
- 12:02time there, creating writing you data pipelines that make that
- 12:07feature data available in production for serving for the
- 12:10model? Do you struggle with training
- 12:13serving inconsistencies where features all calculated
- 12:16differently for training purposes versus for serving
- 12:19purposes? If that's the case.
- 12:21That's a problem that a, that a feature story helps you with Do
- 12:24you find that data? Scientists are often times.
- 12:26Reinventing the wheel implementing the same feature
- 12:29over and over again. Maybe even with slightly
- 12:32different understandings of. What, a, how a feature should be
- 12:36implemented. If you have features that
- 12:42consumed raw data from various different types of data sources.
- 12:46Say, you want to combine raw data from a data warehouse and
- 12:50the data leg and the streaming Source doesn't really hard to
- 12:54get We need really sophisticated data pipelines to get to do this
- 12:58type of stuff properly. If you face, these types of
- 13:00challenges than typical future store, is also a pretty good
- 13:03idea for you. Yeah, let's go into that a bit
- 13:05more. Like why is it really hard to
- 13:08build features? Yeah, so be you can think about
- 13:14it this way. I look going again.
- 13:18Looking at again, at the raw data sources, the day Warehouse,
- 13:23the stream, the data Lake, It's the real time data sources.
- 13:25They all have very different characteristics to them, for
- 13:30one, you typically cannot run the exact same type of feature
- 13:36transformation against those different types of data sources.
- 13:39So data warehouse is really, really good at running large
- 13:43scale, aggregations and Joints. It takes a long time to execute
- 13:48them, but they're really, really good at doing that type of stuff
- 13:50whenever you slice and dice and filter out, only a small set up.
- 13:54Columns, you will not aggregate over them again, join them.
- 13:58That's when, uh, when a data warehouse or a data lake is very
- 14:01good. If you look at streams, for
- 14:04instance, you cannot do a large-scale aggregation or
- 14:07large-scale joint. Very efficiently with a stream
- 14:10with a stream and really limited more to running role-based or
- 14:15even phase Transformations where you're combining a couple fields
- 14:18from from events on a stream or you run temporal aggregations
- 14:22over limited time window. Toes, because of the time window
- 14:25becomes too large. Then of course you're speaking
- 14:28processor can run out of memory and run into all kinds of
- 14:32issues. And then if you're looking at
- 14:35more of the olltii p-type databases like the mongos of the
- 14:38world, the my sequels or postgres has, they are typically
- 14:43pretty good at running. Road-based Transformations and
- 14:47small-scale aggregations, but they don't have the entire
- 14:50historical data, right? They only have typically like
- 14:53the Using data Maybe with the last six months, maybe the last
- 14:56year, but they don't have all the historical context in which
- 14:59you cannot really important. High-quality information that
- 15:03may allow the ml model to predict much more accurately.
- 15:06What a user is about to do next. And so that's a that's a pretty
- 15:11hard challenge to build a system that is able to run
- 15:14Transformations against these different types of data sources
- 15:17that all have various very, very, very different
- 15:20characteristics. Then of course your Features
- 15:24also have different freshness requirements.
- 15:26So if you think about like an ubereats model, which is trying
- 15:32to predict, how long is it likely going to take for a
- 15:35restaurant to prepare an order for you?
- 15:37If you were to place an order right now they're imagine, there
- 15:41are two features that are typically very important here.
- 15:44One is how many orders have been placed in the last 30 minutes
- 15:49because that's typically a proxy for how busy is the restaurant
- 15:51right now and another Future will be here.
- 15:56How long does it take on average over the last two weeks, for
- 15:59this restaurant to finish an order?
- 16:02Both of those have very different freshness requirements
- 16:05or you can imagine that the 30-minute average or over the
- 16:1130-minute, trailing count of orders, has to be updated like
- 16:14every minute, every five minutes, if you updated every
- 16:16hour or so, you're, you're missing on the lot of, you know,
- 16:21very relevant information because you just don't know
- 16:23what's actually currently A happening in the restaurant
- 16:26two-week feature, though. You can just update nicely.
- 16:28It doesn't really matter that much.
- 16:29It doesn't, there's not that much minute-to-minute variance
- 16:32in this feature. That the model could pick up
- 16:33from then, of course, there's also again, this problem with
- 16:39online offline consistency where you find a lot of people just
- 16:43implementing feature Transformations differently on
- 16:46the online side as well as on the offline side.
- 16:48And if you have different implementations for these
- 16:51features Transformations, then all kinds of things.
- 16:54Go wrong where oftentimes some edge cases are treated
- 16:57differently or introduced a bug in one but not in the other and
- 17:00then your model picks up on something in the offline world
- 17:04that it will never seen the online world.
- 17:06And then of course, your model looks great when you do an
- 17:08offline back test but it's going to completely fail.
- 17:11When you're then later on trying to run it in production, you
- 17:14have no idea what's going on and then you need to debug the
- 17:16feature transformation code and then you see, oh shit.
- 17:19Here I'm handling. A null completely different or
- 17:21I'm dealing with a different floating-point, Precision, or Or
- 17:24something like that. It's just really tricky to dig
- 17:27into and and figure out. And then another thing that
- 17:33makes these features of for operational Amell, really hard.
- 17:36As that typically these types of ml models, when you generate
- 17:41training data, you want to be able to time travel to any point
- 17:45in the past, to look at, what does the world look like at any
- 17:48given point of time in the past? And then fetch a state of Like
- 17:55hundreds of thousands of features and then you generate a
- 17:57Time series, over say, the new update hourly or daily and then
- 18:03over you could go to like a feature store and say, hey give
- 18:06me the value of these 1000 features for every single day in
- 18:10the last 365 days, which then produces 365 rows and it's
- 18:16really hard actually to get this time travel done, right?
- 18:20So anyways, those are just a couple of features so I have one
- 18:25request. Can we stop talking about boober
- 18:27eats? Because I haven't had dinner yet
- 18:29and you're making me hungry. It's so but let's get into Uber
- 18:36a bit more because I know you did quite a bit of work there
- 18:39and you were messing around on Michelangelo.
- 18:41So what made you gravitate towards that project?
- 18:45And what exactly were you doing on Michelangelo?
- 18:50But I gravitated me towards Michelangelo when I was at over
- 18:54rooming. Yeah.
- 18:55Yeah exactly. Yeah, it was really, it was
- 18:58seeing how on the one side, how much potential there was a tuber
- 19:03to apply machine learning for all kinds of different use cases
- 19:06because Uber was, the fastest-growing private company
- 19:10of all times. It was collecting so much data
- 19:14on on rides on what users are doing and what suppose Something
- 19:19in the Uber Eats app and it was just, it was just a lot of
- 19:25manual work that unnecessarily had to happen, that led to sub
- 19:30optimal decisions around. How can you tell us like what
- 19:34some of that manual work was? Yeah.
- 19:36Like imagine that they're a customer support ticket.
- 19:42Request is coming in. And now the first step that it
- 19:46had that this ticket goes through, is that Some person has
- 19:50to read the ticket, understand what the issue is and then
- 19:54figure out. Okay.
- 19:54What's the urgency of this request?
- 19:56What's the priority of it? Who's what's the department with
- 19:59an Uber? That's best suited to respond to
- 20:03this customer and then manually routed over that obviously takes
- 20:06forever. It's a really poor experience
- 20:09for the customer because they're waiting forever.
- 20:12The person may actually who's making the wrong decision.
- 20:14May make a wrong decision, it's hard to track whether it was a
- 20:17good or bad decision. So All just not efficient at all
- 20:20and extremely expensive, both to the company and to the customer.
- 20:24And so, here is an obvious opportunity to apply in a male
- 20:27model that takes care of this routing decision, that can
- 20:31actually look at the text, try to understand the context, try
- 20:34to predict a, what's the priority of this thing?
- 20:36What's actually the issue and then routed to the right
- 20:39department and treat it with the right level of urgency.
- 20:44And so, so when you were seeing these manual steps, having to be
- 20:49done, then Michelangelo came and said, all right, we're going to
- 20:53fix that. Or what?
- 20:55What did you see and how did that work out?
- 20:58Like, what was the fix for that? Yeah, I think this, I was
- 21:00actually like many, many different teams and many
- 21:02Defenders, smart people and Uber, who did see the potential
- 21:06for machine learning and models, a tuber across the company.
- 21:10And so, you did have a lot of people who then, Did train
- 21:15models and then spent lots of time trying to get those models
- 21:19into production. And then there were struggling
- 21:22with getting production grade as a lays up and running, where the
- 21:26model doesn't just crash and the latency very good and all that
- 21:29stuff, and it was just a hodgepodge of different
- 21:31Frameworks buried were being used, and it would take a very
- 21:35long time for data, scientists work with software Engineers,
- 21:38but they do engineers with a male Engineers to over weeks and
- 21:40months get them uml model into production.
- 21:44And then, of course, various different use cases.
- 21:48I do burr, could benefit from the exact same types of
- 21:51features. There's a lot of feature sharing
- 21:53that could happen between different models and then you
- 21:55would see that those features are again implemented over and
- 21:59over again, it was very hard for other data, scientists to
- 22:02identify, need to know what features had other data
- 22:05scientists use before them and then I would be almost
- 22:08impossible for them to reuse them.
- 22:10And so it just became very clear that there is a lot of D 4 ml,
- 22:15people are applying them already.
- 22:17It's super expensive to do, it's extremely, are prone to do it.
- 22:20So let's build a standardized centralized platform, that
- 22:24allows data scientists and Engineers to get to the platform
- 22:28and trained animal model and get into production completely end
- 22:32to end from selecting the raw data to selecting the features
- 22:37doing some additional feature engineering training, the model
- 22:40back, testing the model and evaluating it.
- 22:42Managing the model are The fact versioning, it deploying it and
- 22:46serving it in production and then monitoring the predictions.
- 22:49All end to end with one platform.
- 22:52Yeah. And so talking about this idea
- 22:55of the feature stores or just this whole thing, starting to
- 23:01realize, hey, this is going to, this could be very costly.
- 23:05I want to jump into, do feature stores enable this, the
- 23:12companies that are using them, too.
- 23:14Save money on in terms of like their machine learning teams and
- 23:18if so, how how does that work? Yeah, definitely.
- 23:22There are tons of different opportunities to save money.
- 23:26One, is that if you're able to just reuse an existing feature,
- 23:31you don't have to implement it again.
- 23:34So you're saving time having to re-implement the feature.
- 23:37You don't have to wait until the feature is backfilled, if you
- 23:40were to implement it from scratch so you can just get
- 23:43started. Use it.
- 23:44Right away, it's out there in production.
- 23:48You don't have to go through the pain of working with a data
- 23:52engineer on ML engineer who then re implements your entire
- 23:55feature engineering pipeline, that you have that you've
- 23:58created in like your jupyter notebook, who has to, then
- 24:00understand your code and make it production-ready and
- 24:03re-implement it. And then work closely with you
- 24:05to make sure that all of you they are shot the assumptions
- 24:08that you've made he or she then is able to also extract and
- 24:12properly implemented. The production code It's all
- 24:15this back and forth is saved because the data scientist can
- 24:18just click a button or run a command line and get the feature
- 24:22into production without having to go through these extreme with
- 24:25friction folk processes then on top of that, Central teacher
- 24:29sores also able to give you visibility that you've never had
- 24:32before where you know actually no hey what's actually the cost
- 24:36the literal cost of these features.
- 24:38Like how much am I spending every day on running those
- 24:42compute jobs? To turn my raw data into into
- 24:46feature values is any model you can consuming these features.
- 24:50Or I might just producing these feature values every day.
- 24:53Every minute and nobody's using them.
- 24:54It's a complete waste of time and money.
- 24:57That's all, or if somebody's consuming them, if some arms are
- 25:00consuming them, which ones are those Which business use cases?
- 25:03Are they attached to how much money is the company making?
- 25:07Or how much good? We're all good.
- 25:08Will, are they creating with those models?
- 25:10And is it worth it? Looking at the cost?
- 25:13So those are just some of the immediate and obvious
- 25:17cost-saving opportunities that you get by having a features or
- 25:21that's perfect. Because one of my next questions
- 25:23was, you know, how is their relationship between the future
- 25:27store and Technical debt and that kind of makes sense.
- 25:31Like if you're just creating a bunch of features, but no model
- 25:35is actually using them. What is that for?
- 25:39And the other thing I was going to ask is about This can enable,
- 25:44you know, accountability and traceability.
- 25:48So as perfect now before we jump into what you're doing a tecton,
- 25:52I wanted to ask one quick question about Uber because it's
- 25:57always been on my mind since I heard about it how I've heard
- 26:00Uber's also utilizing Cube flow. So how does Michelangelo and
- 26:06Cube flow work together? Or is that something that was
- 26:09just like a something that they used to use or or can Do not
- 26:13talk about it. That's fine also.
- 26:16So cute Flow by itself is a collection of various different
- 26:21tools, right? And they make it very easy for
- 26:25you to spin up jupyter notebooks they make it easy for you to
- 26:30train tensorflow models in a distributed fashion or even on a
- 26:33single node. They make it easy to deploy your
- 26:35models using Selden and what not, they have q flow pipe lines
- 26:39around some data data pipelines and easier way.
- 26:43But at the end of the day, it's like an umbrella for many
- 26:46different tools that are all related to machine learning and
- 26:50that cubicle makes easy for you to run on kubernetes.
- 26:54Uber, and with Michelangelo, we were actually not running on
- 26:57kubernetes. We did use a lot of these tools
- 27:01that are under the umbrella of cube flow where we were using
- 27:05tensorflow for training or using jupyter notebooks for
- 27:09interactive development. But it wasn't that we were using
- 27:12the Q flow project. As is we're much more using the
- 27:15open-source components under it and fitting them into the Uber
- 27:18stack. Okay?
- 27:20Perfect. Yeah, because that was something
- 27:23that had been roaming around in my head.
- 27:26Since we had Josh button on while ago, talking about Cube
- 27:31flow 1.0 and he said, oh yeah, Uber uses this.
- 27:34And I was wondering like, how is that working with Michelangelo
- 27:37and whatever regards. But if it's just like okay just
- 27:40the modules of it that completely Makes sense.
- 27:44And so now let's talk about tech time and what you're doing over
- 27:48there at tecton Ai, and what exactly are you building and how
- 27:52is it different from Michelangelo?
- 27:55Yeah, definitely. So tecton is data platform for
- 28:00machine learning and you can really think about it as first
- 28:03like enterprise-ready feature store that takes the lessons
- 28:09that we've learned at Michelangelo.
- 28:11I do burr and whereas all the other come Please that named
- 28:13earlier to bring my really a best-in-class interest or to
- 28:19other companies who really want to use machine learning will be
- 28:22used efficiently by using a production before I go into more
- 28:25of the specifics off collecting on the capabilities of it.
- 28:29One big difference to Michelangelo that's very
- 28:32important. Is that Michelangelo was an
- 28:35end-to-end ml platform that helped you both with the
- 28:41modeling layer. And with a date, Later.
- 28:44And you like, you machine learning consists of both, you
- 28:48need the model and you need the data.
- 28:50If you don't have one or the other, then you're not going to
- 28:52be able to get them all into production and so Michelangelo
- 28:56handle both of them. It trains the model for you off
- 29:00of the data that it provided it managed model artifact deployed,
- 29:04the model artifact, it serves the model artifact and then as
- 29:08part of the serving it was also serving the features the data
- 29:11underneath that you can really look at it.
- 29:13The this like to layer stack data and models that have to be
- 29:17integrated with each other and they have to go hand in hand.
- 29:20In order to be successful with machine learning, was it sorry
- 29:23to interrupt, or was it also managing the data?
- 29:28Yes, yes, it was. Moving it around from databases
- 29:31and all of that good stuff too. So it was connected to the raw
- 29:36data sources. And so, Michelangelo itself
- 29:39wasn't like providing a data warehouse or an old TP database
- 29:42that was connected to those raw data sources in the company, but
- 29:47then the features and the featured Transformations that do
- 29:50turn the raw data into features that will stored and managed by
- 29:55Michelangelo, or less than using.
- 29:57Link for streaming applications for streaming Transformations
- 30:00and Spark for the batch Transformations.
- 30:02But it was always deriving features from the raw data and
- 30:07then storing and persisting them in data stores that Michelangelo
- 30:11itself, managed and then used to serve those feature values.
- 30:15Perfect. Okay, so now jump into tecton,
- 30:20Tech tongs focuses. Only on the data layer and
- 30:22provides very, very like intuitive and first-class, any
- 30:27great. Ian's with tools in the modeling
- 30:30layer so we have no intention of providing right now.
- 30:35Like the modeling layer on top of our data layer.
- 30:39We're really focused on providing the Best in Class
- 30:42feature platform that allows you to curate manage and serve those
- 30:48features lives again. The what does that mean?
- 30:51Again curation is you tell tecton, these are my raw data
- 30:57source. This is my S3 bucket or this is
- 30:59my cough custody and was my Kinesis dream.
- 31:02This is my snowflake or Rich of database and so you configure
- 31:07tecton to be able to access those typically using I am
- 31:10permissions of your running on AWS.
- 31:13Then you also tell tecton what are the features that you want
- 31:17it to to run? And how does it transform the
- 31:22raw data provided by these raw data sources into features that
- 31:26your mental models? Downstream will be able to train
- 31:29on and learn from. And the way you do that is by
- 31:34like we have this and we can go into more detail there later we
- 31:37are big Believers in devops course, we're talking about ml
- 31:40Ops here, devops Hormel, those Hormel data and features and so
- 31:44everything that you do with tecton, all the configuration
- 31:47everything happens in a file system in Python files.
- 31:51Were you very declaratively? Lay out?
- 31:54What are my features? What are the Transformations?
- 31:56Look like and And you hand those over to tecton using a CLI.
- 32:01So the tech tone is then able to automatically run.
- 32:05These feature pipelines, the turn, your raw data into
- 32:08features the tecton then stores and its future store.
- 32:13So that later on it can then serve those features to data
- 32:17scientists who are working into interactive environments and
- 32:19their jupyter notebooks to production training pipelines
- 32:23and to production models, who are either making Hi scale, low
- 32:28latency predictions and like canceled milliseconds or large
- 32:32scale batch predictions. Perfect.
- 32:36So I know there has been quite a bit of hype around what you all
- 32:40are doing. And first of all, great job on
- 32:43that one I think because it was it's something that people
- 32:47really enjoy like they need. And it's something that is right
- 32:52now really in the Forefront of what people are looking for.
- 32:57I think it just came out at the right time and just recently
- 33:01when was it a week or two ago as spark, you release more
- 33:06information about what you're doing, can you talk to us about
- 33:09what what exactly that is and right now like because so
- 33:13everyone knows if you just wanted to go out and buy tecton.
- 33:17You couldn't write. That's not possible.
- 33:19Yet. You'll have to talk to us and
- 33:24exactly. But we do have something.
- 33:27Special for everybody. That is here today and in the
- 33:31community I think we got to, we correct me if I'm wrong on this
- 33:34one, I'm not going to just give out a lot of stuff from Tech
- 33:37Tandoori, but but I could I've done it before.
- 33:42And so we said that if anyone wants to sign up for tecton and
- 33:47you just put in the comments of when you're signing up for the
- 33:50waiting list, because I think you have a waiting list right
- 33:53now, right? Yes, exactly.
- 33:54So if you put in the comments of the waiting list, You were part
- 33:58of the ml Ops Community or you saw this video or you listen to
- 34:02the podcast later on whatever you will get entered into a
- 34:06raffle for some gift cards and I don't know what the gift cards
- 34:11are, but I got a feeling you're going to make it who buries
- 34:13right now. I feel like you've been talking
- 34:17to us so much about every time, an amazing gift cards for a
- 34:20tech. Some credits.
- 34:21There we go. There we go.
- 34:23That would probably be more useful and some boober eats, So
- 34:28so great. So just yeah, talk to us a bit
- 34:30about that. Like, if I wanted to go get
- 34:32checked on right now, what's the process look like?
- 34:35Yeah, I'm right now, you basically reach out to us.
- 34:38It's very easy in our website. You just punch in your email
- 34:41address. If I would like to be optional
- 34:43forms on your use case, are you running on the cloud or re
- 34:46running on Prem? Because right now we're like
- 34:48allowed native feature platform very with a first-class
- 34:54integration with AWS. So ideally running on AWS.
- 34:57The case, then that's great. And then we'll reach out to you
- 35:01and discuss how to deploy technology into your
- 35:05environment. The quick summary on this is
- 35:09tecton, basically supports a sense, deployment version and
- 35:12the BBC deployment version. There's some customers who say,
- 35:15my data is highly sensitive. I really just want you to deploy
- 35:20the full text on stack into my environment.
- 35:23Typically, the way that would work is they have an AWS
- 35:25account, they create a cross. The account access role for us
- 35:29with limited permissions. That's enough for us to deploy
- 35:32tecton into their environment. And I get it up and running that
- 35:35typically takes less than 24 hours or the alternative is
- 35:39where they say, no, just give me the full set a solution.
- 35:41And I'll get the oars SAS hosted version of tech non-access to my
- 35:45estimate buckets, or to my red shift, my snowflake, my Kinesis
- 35:48wherever it is, and then everything just runs in our AWS
- 35:51account. Cool?
- 35:53So you mentioned that it's it's best.
- 35:55If you're on AWS, is there any Like prerequisites.
- 35:59Do I need to be running kubernetes?
- 36:01Or is there something that specifically I need to be
- 36:04running to have it? As long as you're in AWS, for
- 36:09will be able to figure it out because we use all the base,
- 36:13level infrastructure, Primitives from AWS, Vu Z KS is the
- 36:17kubernetes hosting solution. Dynamo for a lot of the key
- 36:20Value Store, the low latency surveying S3 for the warehouse
- 36:25msk for hazard Kafka provider and stuff like that.
- 36:28And so as long as you're running on AWS, it'll be very easy to
- 36:31get tecton up and running perfect.
- 36:34So now what can you walk us through?
- 36:36Like what Does the process of building a feature look like in
- 36:39technology? How does that work?
- 36:42Yeah, definitely. So you typically.
- 36:46So what's a feature a feature consists of two things.
- 36:49One is the metadata, it's like just the envelope of the feature
- 36:52that describes. Hey, what's the name of it?
- 36:55What's the entity that this feature is associated with say
- 36:58like a transaction or a writer or driver or restaurant or a
- 37:03combination of those is also, of course possible.
- 37:06Then Who's the owner? What's the SLA of it?
- 37:09Is it like an experimental feature?
- 37:10Or is it a production feature? And what are the freshness
- 37:14guarantees of this feature and all that type of stuff and then
- 37:18decides that? That's because that's not
- 37:20enough. That's just, that would only
- 37:22give you like a catalog of information of metadata.
- 37:24That's nice to have, but that's not enough besides that.
- 37:28You also need to Define. Hey, we're how do, how do these
- 37:31feature values, get calculated, and you describe a feature
- 37:35transformation? That turns the raw data into the
- 37:40feature values and we integrate with different data processing
- 37:44engines. We have the best integration
- 37:46right now, what's Park. And so typically what you would
- 37:48do is you just Define the feature transformation using pi
- 37:52spark code or scholar code. If you prefer that and you write
- 37:56that all in Python files that are again, describing in a
- 38:02declarative way, the feature Repository And then you once
- 38:07you're happy with your feature, then you run then use our CLI,
- 38:11your on tecton, apply for those of you who are familiar with
- 38:14terraform, it's the exact same thing where you use our CLI to
- 38:19basically ship this feature repository configuration that
- 38:23you have locally, that will be get back for full versioning of
- 38:25What Not to Tech tons back end and then tecton tells you.
- 38:29Oh, this is the Delta. This is a difference that I'm
- 38:32noticing, you've created a new feature or you've deleted an
- 38:35Bonnie of change the configuration?
- 38:37Are you sure you want? Do you want to do this then?
- 38:39So yep, I'm sure or your Ci City pipeline says yep, I'm sure and
- 38:44then tecton actually Stars spinning up and rolling out
- 38:47those data pipelines. And then cure AIDS and
- 38:51processes. These new feature values and
- 38:53makes them available in the future store.
- 38:56Great. And then how much automation is
- 39:02involved in this and where does that come in the automation?
- 39:08The tecton does for you behind the scenes or yeah it's a bit
- 39:12of. Yeah exactly.
- 39:13Like where's where is where are things that I would generally
- 39:19have to manually. Do where is that being picked up
- 39:23from tecton? Yeah.
- 39:25Okay where do you think Here, there's so much you'd have to do
- 39:27manually. There we go.
- 39:30Maybe we need to hold another session on.
- 39:32Let me, let me just. I'll walk you through the life
- 39:37of a future. Like let's say, you've actually
- 39:39just created a snippet which and like, in these, in your feature
- 39:43repository, again, which like declaratively defines your
- 39:46entire feature repository, all the features.
- 39:49You just add a new you, add a new couple of lines here, which
- 39:53is really just. Oh, here's a new feature.
- 39:54This is my transformation is just some high spark code.
- 39:57This is the name of it. Then you, if you are in a
- 40:01production environment, you would not typically just get
- 40:03committed into your good repository, and your cicp
- 40:07pipeline, but to talk to tecton, using Tech Don's CLI, which
- 40:11rolls it out. Or if you're just experimenting,
- 40:14then you can on your laptop just use the CLI to as soon as you do
- 40:17this. A whole bunch of stuff is
- 40:19happening at tecton. Where tecton looks at.
- 40:21Hey, what's the state of the world right now?
- 40:24What's your new goal State? Okay.
- 40:26A new feature. This is the raw data from which
- 40:29this feature wants to generate feature values.
- 40:32This is what the Transformations look like.
- 40:35What's the, what's the revision? Think that's necessary in order
- 40:38to run these Transformations? What's the, what are the
- 40:42instance types for your spark? Cluster for your EMR cluster or
- 40:45a database cluster on which you want to run it?
- 40:47Then it knows. Okay.
- 40:48New feature, this is the this is the provisioning I need for a
- 40:53new spark cluster. This is that That time range for
- 40:58which the customer or the user wants to backfill the future
- 41:00value. And then tecton would say, okay,
- 41:03let me first spin up a spark job on, say, EMR or data breaks, we
- 41:08support both of those which now takes a feature Transformations
- 41:14runs it as a spark job, to do a backfill over historical time
- 41:19range that you specified, which then writes those feature
- 41:22values, into both Technologies, online feature store.
- 41:25Dynamo, if you're running on a Us as three-fourth often feature
- 41:29store, then it knows. Okay.
- 41:31Now the backhoe is completed, I know that going forward, the
- 41:35customer really needs. I freshness for this future
- 41:37values. How do I get the highest
- 41:39freshness feature values? Well, I do get them by
- 41:42connecting at this stream that this feature transformation
- 41:47wants to wants to consume from. So then spins up a structured
- 41:50streaming job as far as structured, streaming job, which
- 41:54now continuously in steady state It keeps transforming feature
- 41:57values and writes them into both the offline feature store and
- 42:00online feature store. And then of course, all of that
- 42:03comes with monitoring where the system notices.
- 42:06Oh, like a back full job has failed.
- 42:08Let me retry it or let me see what's going on here?
- 42:10Why did it fail and also looks at the streaming jobs and chores
- 42:14that they're running properly, it even looks at the the
- 42:19freshness of those features that screaming jobs are producing
- 42:24that continuously monitors them and then in You as well as
- 42:27Texans on calling. Hey, something's going wrong.
- 42:30And that's just a, like, a some stuff that subset half the stuff
- 42:35of the automation that's happening behind the scenes with
- 42:38effect on if you create an onboard, a new feature on to the
- 42:40platform. So you can imagine it's a lot of
- 42:44stuff that you would typically have to do manually and that
- 42:47most companies are still doing manually today.
- 42:48If you wanted to do this all by yourself without a platform,
- 42:52Completely super insightful. So is there a way to when you're
- 42:58creating these features? Is there a way to group them
- 43:02together? Yes, there is.
- 43:06So there, one at the most fundamental, physical level.
- 43:11There is the grouping where we were you as a user group
- 43:14features into feature packages, is what we call them.
- 43:17And typically a feature package, refers back to A feature
- 43:23transformation pipeline. Imagine just apply spark job,
- 43:26really, and despised Park job. Can produce one or many
- 43:30features. Typically it's more efficient to
- 43:32compute many features of exact same time.
- 43:35And so, all of those features together are now grouped by
- 43:37default into one feature package.
- 43:40Now feature packages can also be Associated on.
- 43:44Should be Associated typically, with entities in your
- 43:47organization. Again like that's those are
- 43:49typically. The Core Business objects,
- 43:51business entity. He's that do or organization
- 43:54revolves around customers, Shoppers transactions products,
- 43:58that type of stuff. And then you're also able to
- 44:03group feature packages and to feature families in case you
- 44:06want to have some additional partitioning on a team basis or
- 44:11something like that. That's, for instance, something
- 44:13that we had to do brr. Uber Eats is one of them.
- 44:18Fraud is another one. So now talk to me about like Is
- 44:25there some kind of? I obviously there's an I would
- 44:28imagine there's some kind of UI that tecton has or is it only
- 44:32just like this library that you're declaring with?
- 44:36How does that work? And we do come with a with a UI
- 44:40there. The the main interface is that
- 44:42you're interacting with as a user.
- 44:44Is on the one side that you I it just makes it very easy to see
- 44:47what are all the features in my organization that makes it easy
- 44:50to discover new ones filter them by entity by Department by
- 44:53Future Family. Full text search and all the
- 44:56stuff that you've imagined. Then there is a python SDK that
- 44:59you use that you would use in your jupyter notebook.
- 45:02Or um, our notebook or tail breaks, notebook to fetch
- 45:07feature values typically, in order to generate your
- 45:10historical training data and whatnot.
- 45:12Where you say, hey tecton for this set of features, give me a
- 45:16feature values or the last 365 days for these two hundred
- 45:22business entities, and business entities will be A specific say
- 45:26riders or drivers where you pass in their primary key into
- 45:30tecton, then text him. Just generates the data frame
- 45:32for you with all these historical feature values are
- 45:35all these entities or the entire time range of these specified.
- 45:38That's the python SDK. And then there is the CLI
- 45:43honesty. Lies, what I mentioned a few
- 45:44times. In order to enable this fold,
- 45:47devops flow for features to tell tecton.
- 45:51Hey, here's the new goal State. Look at my feature Repository,
- 45:54Aggregation that I as a customer back myself and get look at it
- 45:59and roll it out to production and tell me what the Delta is.
- 46:02That's what he is to see life or.
- 46:04And then, last but not least, there are, of course, we have
- 46:06apis for the real-time serving of these features.
- 46:10Like it to your PC and rest interface.
- 46:13And we provide the client Side Library right now for the jvm to
- 46:17communicate with these apis. But you can, of course, any
- 46:19grades yourself, as well. Those apis, nice.
- 46:22So, one thing that I I talked with Shira Jane a while ago
- 46:27about their platform as SurveyMonkey when he was
- 46:31creating that feature store and I asked him.
- 46:35So do you guys have like a leader board of feature?
- 46:39Whose features been used the most and who created it?
- 46:43How I'm wondering if you have anything like that.
- 46:45It's funny that you say that a little over a year ago, we built
- 46:52a mock version of this, it wasn't connected to Real data
- 46:55but we just we just put it in the end.
- 46:57The product is like an Easter egg that we could talk show to
- 47:00people who were demoing the product.
- 47:02And so we do have that code in the code base, just to show what
- 47:06it could look like. But it's not actually connected
- 47:08yet but if there is interest for something like that, it would be
- 47:12easy enough to to recycle that all to you.
- 47:14I yeah I think I think it would be hilarious to have that
- 47:18because it can breed a little friendly competition between 10
- 47:21minutes for look at this feature that I created spinning Used
- 47:25over x amount of times. And I'm also wondering about
- 47:28this monitoring, you were talking earlier about like, how
- 47:32feature stores can save money when you're looking at?
- 47:35It features are actually being used and if they're not, is that
- 47:38part of the monitoring that you were talking about?
- 47:42That is one part of? Yeah, that's one part of it.
- 47:45It's just the visibility into the cost of features and then
- 47:48the ability to even identify, which one of those features is
- 47:50actually used by model, but there is additional monitoring
- 47:53psych data quality. Ring typically and data drift
- 47:56monitoring where typically it was machine learning when things
- 48:01go wrong. It's not that the model breaks
- 48:04or that the micro servers that host the model breaks.
- 48:06Like we've got that under control.
- 48:08Now, I think with the best software engineering practices,
- 48:11those are not the hard problems anymore.
- 48:13What tends to happen though and ml bottles break, is that the
- 48:16data breaks? And that could mean one of many
- 48:20things. One thing that often times
- 48:22happens is that an upstream data Offline is just lagging or it's
- 48:26completely broken and so, no, new data is coming in.
- 48:29What does that mean for the model?
- 48:31The model is now getting poor feature values.
- 48:34Either it's getting no feature values at all.
- 48:36Are you guys getting completely wrong?
- 48:37Feature values, where suddenly the standard deviation is 10 x
- 48:43different? What you expect over the meaning
- 48:44of shifted by a thousand or something like that and that's
- 48:47something that we can detect and that we can alert on sometimes.
- 48:51What actually is also, the root causes that.
- 48:54There is no outage in an upstream data pipeline.
- 48:57The problem is much more that the world has just changed
- 49:00feature. Distributions have changed and
- 49:02all you need to now do is we train your model and it's
- 49:05actually really good to have this type of monitoring in place
- 49:07because you'll just want to retrain your model every night
- 49:11or every week, if you don't get an A performance boost out of
- 49:15it, it will only want to retrain your model when you know, there
- 49:18is a reason for it and that could be that your model
- 49:20performance is starting to drop or more.
- 49:23Interestingly, if you see that the Feature distribution
- 49:26starting to change, are starting to deviate from the distribution
- 49:29of that you've identified. When you first generated the
- 49:32training data set, that's like the groove, the goal state,
- 49:35where are you know what the distribution is look like any
- 49:36training data set that you train your model on and then in real
- 49:39time you can compare those distributions to what you're
- 49:42seeing in production and if there is a a maintained
- 49:47deviation between those two. It's a good sign that you should
- 49:49probably retrain them all. And then the yeah.
- 49:54I think it's just the data quality, monitoring that we're
- 49:56doing on the feature pipelines itself.
- 49:59That's more happening. Upstream when you're on these
- 50:01bash and streaming pipelines, we look at the raw data.
- 50:04Coming out of the raw data sources.
- 50:06Does anything look off here and typically would try to do here
- 50:10is just provide you with a good Great Expectations integration.
- 50:12If you're familiar with us, So, I want to leave a little bit of
- 50:17space in case. Anyone has any questions, feel
- 50:20free to jump off of mute or throw it in the chat, if you're
- 50:24a little shy. And I because I know there's a
- 50:26lot that we've been going over. And so if anyone wants to ask
- 50:29Kevin anything, go ahead, jump in.
- 50:32Otherwise I have a lightning round.
- 50:35I wanted to get to on just to see what your initial responses
- 50:40and quick responses would be, but before We do that.
- 50:46I wanted to mention that. It's super interesting.
- 50:50How you were talking about this idea of just like, okay the
- 50:53world may have changed. I know, we used to say that a
- 50:55DOT science a lot with like a computer vision model.
- 50:58That is a car, the self-driving car, and there is, you know,
- 51:04like all of a sudden its nose. And this computer vision model
- 51:08is like, is that a stop sign? I can't tell because it's under
- 51:12snow, or there's snow on it, so that's that's huge.
- 51:15Huge. Now, I see some questions here
- 51:18in the Q&A. Let me see here.
- 51:21So, Gonzales asking seems that you're focusing on AWS.
- 51:27Did you choose AWS? Because your experts in this
- 51:30cloud provider or you involved at some level with them is
- 51:34they're like partnership going on and that leads to the next
- 51:38question. Are you like is there some kind
- 51:41of Co selling that's happening with AWS by In companies that
- 51:46are using Sage maker or how do you approach prospective
- 51:51customers? Yeah, definitely so we are an
- 51:55AWS partner now most recently, we've got the we're part of
- 52:00their official partnership program, but we chose it's them
- 52:06mostly because that's just where most of our customers are on.
- 52:10And really, that was just a market demand driven, most folks
- 52:14today are still 180. Yes.
- 52:15Yes, and that's what we started with, but we build a platform in
- 52:18a way of where it would be fairly easy for us to lift and
- 52:21shift to a different system. That's why everything is built
- 52:24on kubernetes all the other AWS in fracking opponents that were
- 52:28using, we typically decouple them and built against a generic
- 52:32interface. So that would be easy enough for
- 52:34us to switch over and support gcp as well.
- 52:37Like we wouldn't be able to support it tomorrow but a couple
- 52:39weeks of work and we'd be able to get it running on a juror or
- 52:42gcp. If somebody comes to you and
- 52:44asks for it, you can make it work.
- 52:47Yeah, exactly. So the next question is from
- 52:50Alex Panos, a also, a former guest on the Meetup and he's
- 52:55asking about feature. Well, first he saying feature
- 52:58stores are awesome. Yes they are.
- 53:00I agree with that how Alex and he was wondering by focusing
- 53:04solely on the data layer. Is there a risk that companies
- 53:08will prefer solutions that are more end-to-end adding more
- 53:12complexity. To the engineering
- 53:13infrastructure is not ideal for smaller companies.
- 53:19Yeah, it's a good question and I think it depends on the type of
- 53:21company. There may be some companies to
- 53:23really just want to buy an end-to-end solution that does
- 53:26everything for you and like and the ml workflow consists of many
- 53:33many different steps. Like Scala 10, different steps
- 53:35that. Maybe you've got an integrated
- 53:37end-to-end platform that implements from scratch tools
- 53:41that help you with every single one of these.
- 53:43Steps by going. So broad.
- 53:45You can imagine that the individual components are just
- 53:5060, 70 %, good. Implementations of these systems
- 53:54because you just spreading your focus.
- 53:55And so the intent platform just cannot be as good, a cannot be,
- 53:58as flexible as the alternative to this, which we often times
- 54:02now see in companies where you've got centralized data
- 54:07science, platform teams or organizations that provide a
- 54:12reference It's stack and an end-to-end platform to the data
- 54:17science teams in the organization, they just say hey
- 54:20this is the modeling tool, you should use like always use
- 54:24Pythor juice since the floor flow.
- 54:26This is the serving system that you should use these Selden.
- 54:31This is the feature store that you should use ideally tecton.
- 54:34And so they provide this opinionated framework to the
- 54:37rest of the organization and typically make it easy for them
- 54:41by integrating them with Other. So that the data scientists, the
- 54:44engineers don't have to think the whole time.
- 54:46Okay. Which component should I not be
- 54:47stitching together and be using a concert?
- 54:50But they just get this blueprint.
- 54:53And this this platform by the central organization and they
- 54:57still get the benefit that on every single step of the Amell
- 55:00workflow, they're able to use the best in breed class tool for
- 55:04that workflow step. And I believe that that's more
- 55:07where the future is heading. With these ml platforms or you
- 55:11will have these best in breed. Individual platforms that are
- 55:16really, really, well integrated to give you a really amazing end
- 55:19to end experience rather than having these end-to-end
- 55:23platforms that Implement everything from scratch, kind of
- 55:27reinvent the wheel to an extent and thereby, just give you a
- 55:30much less flexible platform and experience that always Place.
- 55:35Catch up with the latest things are happening in Industry.
- 55:39Yeah, it's that idea of, you know, jack of all trades, master
- 55:41of none. Yeah, exactly that.
- 55:45Yeah there's so many so many interesting questions I want to
- 55:49ask right now for you. It seems like it's really
- 55:51getting good here. Now that we've got one minute
- 55:53left. Are you cool to stay five
- 55:55minutes over, but you have a hard stop right now.
- 55:59One second, I can I can run five minutes over.
- 56:05He can do it. All right, so Bobby on is asking
- 56:08in the chat. She's asking cheeky, question,
- 56:10how does tecton measure the cost of?
- 56:13Of not having a feature store for a person perspective.
- 56:16Customer like I guess this may or may not be something we need
- 56:20to ask sales team but how do you map that out for someone?
- 56:24If you're saying, hey, you guys need a feature store, it could
- 56:27save you X. Yeah.
- 56:30So many tecton is running as fairly easy to measure the cost
- 56:35side, like we at the end of the day, on Italy, a specifically,
- 56:38we run jobs on EMR. So we know exactly how much they cost.
- 56:42How many know Ours are they consuming?
- 56:44What costs does that boil down to?
- 56:46And so you get extremely clear visibility into that costs of
- 56:52not just tacked on as the entire platform.
- 56:54But on an individual feature by feature level, you can see,
- 56:57okay? And this feature cost me this
- 56:59much for the data processing. That's feature cost me.
- 57:01This isn't that much for fetching, the feature value for
- 57:04training data purposes for training purposes, or this is
- 57:07how much it cost me for real time serving.
- 57:09So you get a really good clear picture of or where do the
- 57:14majority of the costs come from. If you want to predict it for
- 57:18predictive prospective customer, then the costs are a function of
- 57:24how much data are you processing.
- 57:28Is how many rows basically are you processing in order to
- 57:31generate your feature values, how frequently do you need to
- 57:35reprocess these feature values? And then it gets a little and
- 57:39then how frequently are you consuming those feature values?
- 57:43There is an additional trickiness of like what's the
- 57:45cardinality of like your primary keys off individual features
- 57:48that's also as factors in there. But by looking at your existing
- 57:56data processing, jobs are looking at the data shape.
- 58:00We can typically come up with fairly accurate estimates of how
- 58:03much this thing is going to cost you.
- 58:06So, another idea on these being able to filter your features,
- 58:10can you filter it by the most expensive?
- 58:12Features, not today. But we do have that information
- 58:17center. I'm just thinking, you know, the
- 58:20the people in the organization's who saying like, oh yeah I got
- 58:25the badge for most used feature and then the other guys got the
- 58:28badge for most expensive features but anyway so as far as
- 58:36The question goes about. So when you're talking about,
- 58:38all right, we see this happening where a lot of tools are going
- 58:41to start integrating really nicely with each other.
- 58:44How do you bet? What horse?
- 58:45Do you bet on to integrate in Tech, tone and what are you
- 58:49betting on right now? I guess, what do you integrate
- 58:51really nicely with? As far as the rest of the
- 58:53spectrum? Yeah, so we have an extremely
- 58:57strong integration with data bricks.
- 59:00We also have a very strong integration with AWS
- 59:04specifically on AWS, Us with sage maker, which with EMR. And
- 59:09with just, I am for ACLS, then we have blueprint, not just not
- 59:17really Integrations, it's more like here.
- 59:18This is a good stack and documentation on how to best use
- 59:23tecton with ML flow. How do you best use tecton with
- 59:26Selden or how do you best use technique done with algorithm?
- 59:29You Perfect. So right now it's that you're
- 59:36making the the bets on those guys and is it just because they
- 59:40were Market leaders in a way or was there something else that
- 59:44made you want to? We try to provide the
- 59:48Integrations with really the best in class tools off the
- 59:50other parts that cover data parts of the ml workflow and
- 59:55typically it's not an extremely complicated tight integration
- 59:59with these systems really Just being able to talk to each
- 1:00:02other's apis at a fairly well-defined interface level and
- 1:00:08it's typically not that hard to add an additional integration
- 1:00:11but those are the core ones that we're coming out of the box
- 1:00:13with. But we definitely want to
- 1:00:15heavily invest in additional Integrations.
- 1:00:18With the ecosystem going forward, Perfect.
- 1:00:21All right, lightning round 2 minutes.
- 1:00:23Here we go. We got it.
- 1:00:25So I just you can give me a yes or no or one word.
- 1:00:29Answers feel free. No question actually here on
- 1:00:34whether that there is a huge Trend towards open source thing.
- 1:00:38Mm improvising Enterprise level service, do we have plans to
- 1:00:42open source technology on? So it's an ongoing conversation.
- 1:00:45We do want to figure out which pieces what parts.
- 1:00:49Does it make sense to open source.
- 1:00:51That's an ongoing conversation that we're having with
- 1:00:53customers. Where one, understand, hey,
- 1:00:55which pieces will be helpful for US.
- 1:00:56Open Source. Typically will open source
- 1:00:58things where the customer needs. Built customizations or wants to
- 1:01:03build customizations on their own or build deeper Integrations
- 1:01:06on their own and it definitely will make sense for us to do
- 1:01:08something there when, when the need arises.
- 1:01:11So it's not off the table but there isn't a clear plan for it
- 1:01:15on the roadmap because it's them.
- 1:01:18It's an ongoing conversation and then on Enterprise level
- 1:01:21service. So tectum is software as a
- 1:01:23service, even if we deploy it into your BBC, until your
- 1:01:26account, we manage it. We upgraded we security patch.
- 1:01:30It we are. Run call of the thing breaks.
- 1:01:32And so it's the proper production as well as the way
- 1:01:36you'd expect it from any other SAS service.
- 1:01:40Really, thank you for that, and thanks for the great questions
- 1:01:44consult low. So, now, are we ready for a
- 1:01:47lightning round? I just give me one word answers
- 1:01:51or quick short to the point Cube flow and Grace.
- 1:01:59No, maybe so Lots of components air flow.
- 1:02:08Very widespread and great Cube flow and air flow together.
- 1:02:13Confusing and Val slow, very good and now drastically
- 1:02:20changing our life in the next five years.
- 1:02:23Absolutely, coronavirus recession.
- 1:02:26I hope not tensorflow or pie. Torch light, orange food you eat
- 1:02:34the night before one of your long-ass.
- 1:02:37Endurance races. Lots of pasta.
- 1:02:42Good ml monitoring best tool. Who still to be seen?
- 1:02:47Mmm where to start learning ml Ops?
- 1:02:53Emma laughs Community. There we go.
- 1:02:55I like that answer. One thing that we should know
- 1:03:00about Germany or I should know mainly be excited for next
- 1:03:07year's Oktoberfest. Are you guys hiring a tecton?
- 1:03:12We are in the its data Engineers.
- 1:03:14Ml Engineers data scientists There we go.
- 1:03:19To sales Engineers. So last one your personal most
- 1:03:25used open source tool. Cornett is hmm.
- 1:03:33Alright, that's it. Everybody and best place to
- 1:03:38reach out to you. I'm not going to say it's
- 1:03:39LinkedIn because I've had a LinkedIn request to connect with
- 1:03:42you for a few days. Now, it doesn't get through.
- 1:03:45I imagine you're very, very popular, and I got lost in the
- 1:03:48sea of people that are trying to get you to Outsource them, some
- 1:03:51coding in India or in Eastern Europe, wherever they're coming
- 1:03:56from. So are you on your on Twitter,
- 1:03:59right? Yeah.
- 1:04:01Or tell us, is there another way?
- 1:04:03Maybe we can get you into the ml Ops Community chat.
- 1:04:07Twitter works with Eminem's dumb or just my email, Kevin and
- 1:04:10tecton .ii, perfect. And so for everybody, that
- 1:04:13didn't hear it before, we are doing a giveaway for tecton.
- 1:04:18We are giving away 50 dollars or Euros.
- 1:04:22I can't remember what we said. I'm in Euros these days.
- 1:04:25I think it's $50 of tecton credit.
- 1:04:28So if you go onto tecton, You have the link, he throw that in
- 1:04:32the chat, somebody maybe Kevin if you go to tecton dot Ai and
- 1:04:38you sign up for text icon you will get to get some.
- 1:04:44Make sure to put that it's Mo Ops you were part of ml Ops
- 1:04:47community. So they give you the special
- 1:04:49treatment and there it is. I think that's about a D&D.
- 1:04:54Hey ya, ya quick clarification to gift card is actually going
- 1:04:59to be most likely an Jean gift card.
- 1:05:01Not not ticked. On credit.
- 1:05:03All right. There we go.
- 1:05:05Amazon works. Also, that's all good.
- 1:05:07I'm sure everyone is happy to get any kind of gift card.
- 1:05:11So, thank you guys, very much for doing this.
- 1:05:14This has been really enlightening as far as features
- 1:05:16stores go for me. I know I learned a ton.
- 1:05:19I imagine everyone else did and Kevin.
- 1:05:23You've been an awesome guest. You were very, very kind to
- 1:05:26break it down, real slow for me, and make sure that I understood
- 1:05:29everything So that's about it. I think we're good here and
- 1:05:36please. Yeah, please reach out to Kevin.
- 1:05:41If you have any other questions or check out tecton and we will
- 1:05:44see you next week. We got to meet ups next week, so
- 1:05:48enjoy. See you all later.
- 1:05:52Thank you. See y'all?