TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ambry: LinkedIn’s Scalable Geo-Distributed Object Store

33 点作者 mlerner大约 2 年前

3 条评论

ambry大约 2 年前
I&#x27;ve worked on Ambry at LinkedIn for a little while, I&#x27;d be happy to answer any questions about architecture or things we&#x27;ve done since 2016. I wasn&#x27;t part of the original team. One thing I would call attention to from the article:<p>&gt; it’s key-value based approach to interacting with blobs doesn’t support file-system like capabilities, posing more of a burden on the user of the system (who must manage metadata and relationships between entities themselves).<p>I think this trade-off is one Ambry&#x27;s strongest design decisions. By giving up key-value access, Ambry gets to dictate the location of an object at write time. When a partition fills up, set it to read-only and create new partitions on new hosts. By having Ambry generate the blob ID, the system can embed information (like the partition number) right in the ID. With a key-value approach you need to worry about balancing (and re-balancing) the key space over your topology. With dense storage nodes, re-balancing is VERY expensive.<p>Also--most applications don&#x27;t actually need key-value access. For storing something like media (think: LinkedIn profile photo), you&#x27;ve already got a database row for the user profile; now one of those fields is a reference to your object store. It might as well be a storage-generated reference instead of one where the application tries to manage reference uniqueness and ends up using UUIDs or something similar anyway.<p>Apologies for the new account, I try to keep my main HN account semi-anonymous.
评论 #35507349 未加载
评论 #35507823 未加载
NoZebra120vClip大约 2 年前
Etymology: an ambry is a cabinet in a church for storing sacred items such as vessels or vestments. A common usage today is to store holy anointing oils.<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Ambry" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Ambry</a>
comvidyarthi大约 2 年前
I have worked on Ambry for a few years now. This paper is a bit old, but captures most of the core concepts of Ambry.<p>Some of the most fascinating parts of the journey after this paper have been scaling the system to support hundreds of GiBps of throughput per cluster, multiple workloads supporting other databases and stream processing systems, and rethinking the replication to make it compatible with public cloud. Checkout the GitHub repo to learn more <a href="https:&#x2F;&#x2F;github.com&#x2F;linkedin&#x2F;ambry">https:&#x2F;&#x2F;github.com&#x2F;linkedin&#x2F;ambry</a>