Live data from Hacker News

TernFS – An exabyte scale, multi-region distributed filesystem

xtxmarkets.com

41–50 of 111 posts

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#41
post #35
post #34

> The firm started out with a couple of desktops and an NFS server, and 10 years later ended up with tens of thousands of high-end GPUs, hundreds of thousands of CPUs, and hundreds of petabytes of storage. So much resources for producing nothing of real value. What a waste. Great project though, appreciate open sourcing it.

In theory what they are doing of value, is that at any time you can go to an exchange and say "I want to buy x" or "I want to sell y" and someone will buy it from you our sell it from you... at a price that's likely to be the accurate price. At the extreme if nobody was providing this service, investors (e.g. pension funds), wouldn't be confident that they can buy/sell their assets as needed in size and at the right…

> In theory

> At the extreme

> The theoretical model

These qualifiers would seem to belie the whole argument. Surely the volume of HFT arbitrage is some large multiple of what would be necessary to provide commercial liquidity with an acceptable spread?

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#42

Over 500PB of data, wow. Would love to know how and why "statistical models that produce price forecasts for over 50,000 financial instruments worldwide" require that much storage.

If you keep all order book changes for a large number of financial instruments volume adds up quickly.

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#43
post #34

> The firm started out with a couple of desktops and an NFS server, and 10 years later ended up with tens of thousands of high-end GPUs, hundreds of thousands of CPUs, and hundreds of petabytes of storage. So much resources for producing nothing of real value. What a waste. Great project though, appreciate open sourcing it.

If price action trading is horoscopes for adults, they're a modern a day oracle.

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#44
post #18

Earlier quoted context omitted.

Ceph is more of: here's a raw block of data, do whatever the hell you want with it, not really good for immutable data.

Well sure you would have to enforce immutability at the client side.

It's more that it has all the systems to allow mutability which add a lot of overhead when used as an immutable system.

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#45

Cool project and kudos for open sourcing it. Noteworthy limitation: > TernFS should not be used for tiny files — our median file size is 2MB.

...which places it firmly in the "just like every other so-called exascale file system." We already had GPFS...

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#46
post #19

Earlier quoted context omitted.

There are much larger Ceph clusters, but they are enterprise owned and not really publicly talked about. Sadly I can’t share what I personally worked on.

The question is whether there are single Ceph deployments are that large. I believe Hetzner uses Ceph for its cloud offering, and that's probably very large, but I'd imagine that no single tenant is storing hundreds of PBs in it. So it's very easy to shard across many Ceph instances. In our use-case we have a single tenant which stores 100s of PBs (and soon EBs).

Digital Ocean is also using Ceph[1]. I think these cloud providers could easily have 100s of PBs Clusters at their size, but it's not public information.

Even smaller company's (I do think that Ceph will hit performance issues at that size and going into the EB range will likely require code changes.

My best guess would be that Hetzner, Digital Ocean and similar, maintain their own internal fork of Ceph and have customizations that tightly addresses their particular needs.

[1]: https://www.digitalocean.com/blog/why-we-chose-ceph-to-build...

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#47

Earlier quoted context omitted.

I have worked on exabyte-scale storage engines. There is a good engineering reason for this type of limitation. If you had 1 KiB average file size then you have quadrillions of metadata objects to quickly search and manage with fine-granularity. The kinds of operations and coordination you need to do with metadata is difficult to achieve reliably when the metadata structure itself is many PB in size. There are intere…

This sounds like a fascinating niche piece of technical expertise I would love to hear more about. What are the biggest challenges in scaling metadata from a trillion to a quadrillion objects?

It is dependent on the intended workload but there are a few common design problems. Keep in mind that you can't just deal in the average case, you have to design for the worst possible cases of extremely skewed or pathologically biased distributions. A lot of the design work is proving worst case resource bounds under various scenarios and then proving the worst case behavior of designs intended to mitigate that.

An obvious one is bulk deletion, which is rarely fast at any scale. This may involve trillions of updates to search indexing structures, which in naive implementations could look like pointer-chasing across disk. Releasing storage to allocators has no locality because you are streaming the allocations to release off that storage in semi-random order. It is unhelpfully resistant to most scheduling-based locality optimization techniques. You also want to parallelize this as much as possible and some of these allocators will be global-ish.

The most interesting challenge to me is meta-scheduling. Cache replacement algorithms usually don't provide I/O locality at this scale so standard mitigations for cache-resistant workloads like dynamic schedule rewriting and latency-hiding are used instead. Schedulers are in the center of the hot path so you really want these to be memory-resident and fast. Their state size is loosely correlated with the number of objects, so in some extreme cases these can easily exceed available memory on large servers. You can address this by designing a "meta-scheduler" that adaptively optimizes the scheduling of scheduler state, so that the right bits are memory-resident at the right time so that the scheduler can optimally schedule its workload. It is difficult to overstate how much of a breaking change to conventional architecture this turns out to be. These add some value even if the state is memory resident but they greatly increase design complexity and make tail latencies more difficult to manage.

A more basic challenge is that you start dealing with numbers that may not be representable in 64-bits. Similarly, many popular probabilistic algorithms may not offer what you need when the number of entities is this large.

I aggressively skirted these issues for a long time before relenting. I deal more with database storage engines than filesystems, but to a first approximation "files" and "shards" are equivalent for these purposes.

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#48

Over 500PB of data, wow. Would love to know how and why "statistical models that produce price forecasts for over 50,000 financial instruments worldwide" require that much storage.

Me too. Is is really hard for me to understand, what XTX is actually doing. Trading? VC? AI/ML? Have you seen their portfolio? PS: Company seems legit. Impressive growth. But I still don't understand what they are doing. Provide "electronic liquidity". Well....

computing correlations between 50.000 financial instruments (X^T X) and doing linear regression ;).

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#49
post #34

> The firm started out with a couple of desktops and an NFS server, and 10 years later ended up with tens of thousands of high-end GPUs, hundreds of thousands of CPUs, and hundreds of petabytes of storage. So much resources for producing nothing of real value. What a waste. Great project though, appreciate open sourcing it.

Your comment contradicts itself. They produced this project at least.

Re: TernFS – An exabyte scale, multi-region distributed filesystem

#50

This sounds like it would be a good underpinning for a decentralized blockchain file storage system with its focus on immutability and redundancy.

But a blockchain is already immutable. It becomes decentralised and redundant if you have multiple nodes sharing blocks.

No need for an underpinning, it is the underpinning.

Post reply on HN