Menu
Sign In Pricing Add Podcast

Ben Naecker

Appearances

Oxide and Friends

Querying Metrics with OxQL

1820.672

It's worth mentioning that we do have these grand ambitions, I think, Brian, that you alluded to about what is possible. And we've already mentioned this earlier, but we don't want to be constrained by the lowest common denominator. We didn't want the query language that customers would use to explore the data to inform the kind of data we bothered to collect.

Oxide and Friends

Querying Metrics with OxQL

1839.466

And then histograms, Ben, as you were saying, I feel like it's an area where we are total zealots. Maybe everyone's a total zealot. I just don't know it. But we feel like real zealots in that regard. Is everyone a zealot?

Oxide and Friends

Querying Metrics with OxQL

1870.658

I'm reminded a little bit about how Cliff accuses us of being really into postmortem debugging. I feel like we are similarly really into histograms, I think just because we've seen their utility in so many domains.

Oxide and Friends

Querying Metrics with OxQL

1914.631

I mean, I feel like both of them, everyone should feel this way, and maybe people already do on histograms, but I just feel like, I mean, as Ben's saying with these other query systems, they're not necessarily embracing them as first-class primitive, whereas it was very, I mean, I think, I don't know if this is fair to say, but Brian, a bunch of my thinking on this was informed by the Fishworks system, the ZFS storage appliance and the analytic system that you built there.

Oxide and Friends

Querying Metrics with OxQL

1938.06

Yeah, for sure. Most of it, much of it grounded on histograms, on these distributions to visualize what's going on in the system. I mean, that really strongly informed it here. And we knew we wanted to build a system where that was front and center.

Oxide and Friends

Querying Metrics with OxQL

2009.289

I mean, I feel like it's only been 10, 15 years since people all recognized that the average was not a number you really wanted to talk about in polite company. But that's fairly recent.

Oxide and Friends

Querying Metrics with OxQL

2289.373

I didn't realize that. Do they give you bounds on their hand-waving?

Oxide and Friends

Querying Metrics with OxQL

2315.566

I just had the most embarrassing realization. I'm like, I don't know why you'd need that. You probably only need it for things like analytics from the web, like clicks. Oh God, I'm horrible.

Oxide and Friends

Querying Metrics with OxQL

245.514

Thank you for asking. 18 query languages ago. 18 query languages.

Oxide and Friends

Querying Metrics with OxQL

2696.859

Those graphs are really fun. What is the package you're using to draw that stuff?

Oxide and Friends

Querying Metrics with OxQL

27.732

It sounds like that's right. Yeah. I need to, uh, hang out with a bunch of germy kids again to, to get it back.

Oxide and Friends

Querying Metrics with OxQL

2777.121

Plug your own technology, exactly.

Oxide and Friends

Querying Metrics with OxQL

3340.199

That's a great point, Ben. That's a great point because keep in mind the context here, which is customers bought this thing to host their data, like their virtual disks, their virtual instances. So we're like, actually, we thought maybe some of ours would.

Oxide and Friends

Querying Metrics with OxQL

3374.832

I don't know, we'd let users get half of what they paid for. I don't know, something like that seems fair. And then we'd take the rest.

Oxide and Friends

Querying Metrics with OxQL

360.228

There was another sick burn, Brian. I just want to make sure you didn't miss this one, which was on Hacker News a week ago, talking about the Oxide query language.

Oxide and Friends

Querying Metrics with OxQL

368.712

It says, when a small hardware company is not only making its own full hardware and software stack, but brings that all the way down to telemetry query language, I get a lot of NIH vibes and question if any of these elements will get the attention they deserve.

Oxide and Friends

Querying Metrics with OxQL

4.034

With your pseudo podcast hosts?

Oxide and Friends

Querying Metrics with OxQL

406.752

Yeah. Andy, have you, have you like, we have our own embedded operating system. You know this, like we're.

Oxide and Friends

Querying Metrics with OxQL

421.624

Our own VMM user land. Like, do you want us to, I mean, it's going to be a long tweet if we get into all of these. It is.

Oxide and Friends

Querying Metrics with OxQL

4292.528

Well, that may also be reflective of a little confusion. ClickHouse is not hosted in Crucible. So we're doing replication through ClickHouse's own mechanisms, whereas Crucible is what we use to store the data associated with instance data, like the customer's virtual volumes. That's what Crucible is for.

Oxide and Friends

Querying Metrics with OxQL

4311.582

And so we're using those same U.2 devices, both for Crucible volumes and for ClickHouse, but they're pretty much separate concerns.

Oxide and Friends

Querying Metrics with OxQL

4499.336

No, no. Can't imagine storing it. Can't imagine querying it. Just, they're wrong.

Oxide and Friends

Querying Metrics with OxQL

4522.501

And you're going to bring up Antler. Yeah, absolutely.

Oxide and Friends

Querying Metrics with OxQL

4533.564

Antler lover when I was doing stuff in Java. That's been a minute, but thanks for exposing me. Thanks for outing me as a former Java expat or whatever. I knew you loved Antler more than Java. Oh, 100%. Yeah, no, I think Antler is terrific. Never loved Java, but did love Antler. But Ben, didn't we use PEG? Or maybe was it PEST in the USDT stuff?

Oxide and Friends

Querying Metrics with OxQL

4678.061

So, Brian, I'm glad you brought up Antler because I feel like Antler was very domain-specific to Java. And to bring us back to the beginning, it seems like these other systems are much more native for Rust. I mean, for example, there is an Antler generation for Rust. And I haven't kept tabs on the state of it.

Oxide and Friends

Querying Metrics with OxQL

4696.313

But it makes sense to have a domain-specific language for this kind of activity specific to the language that you want to use to augment that generation.

Oxide and Friends

Querying Metrics with OxQL

4714.177

For like, you don't want to have the least common denominator. Turns out domain-specific languages can be valid. I'm sure there are lots of them that shouldn't have been written or whatever. But as long as you're looking at the available options and considering the aspects of the domain.

Oxide and Friends

Querying Metrics with OxQL

4744.941

Because the bar is high enough where you're not just going to frivolously dive into it. I think that's fair.

Oxide and Friends

Querying Metrics with OxQL

5364.637

Hold on to that for a few years. We'll see.

Oxide and Friends

Querying Metrics with OxQL

5676.802

That technology has been within our hands for years.

Oxide and Friends

Querying Metrics with OxQL

99.104

Lots of soundbites. Real, like, paid promotion kind of vibes. Like, you know, one of those paid promotions where, like, clearly the folks have, like, spent, like, half an hour figuring out what it's about, but not, like, three hours figuring out what it's about.