首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Facebook 如何使用 ZippyDB 构建通用键值存储?

ZippyDB 是 Facebook 最大的强一致性、地理分布的键值存储。自从我们在 2013 年首次部署 ZippyDB 以来,这个键值存储的规模迅速扩大,如今,ZippyDB 为许多用例服务,包括分布式文件系统的元数据、为内部和外部目的计算事件,以及用于各种应用功能的产品数据。ZippyDB 在可调整的持久性、一致性、可用性和延迟保证方面为应用程序提供了极大的灵活性,这使得它在 Facebook 内部成为存储短暂和非短暂的小型键值数据的首选。在本文中,我们将首次分享 ZippyDB 的历史和开发,以及在构建这项服务时做出的一些独特的设计选择和权衡,这项服务解决了 Facebook 的大多数键值存储场景。

01

【Redis】NoSQL简介

NoSQL最常见的解释是“non-relational”, “Not Only SQL”。泛指非关系型的数据库。它们不保证关系数据的ACID特性。 NoSQL一词最早出现于1998年,是Carlo Strozzi开发的一个轻量、开源、不提供SQL功能的关系数据库。2009年,Last.fm的Johan Oskarsson发起了一次关于分布式开源数据库的讨论,来自Rackspace的Eric Evans再次提出了NoSQL的概念,这时的NoSQL主要指非关系型、分布式、不提供ACID的数据库设计模式。2009年在亚特兰大举行的"no:sql(east)“讨论会是一个里程碑,其口号是"select fun, profit from real_world where relational=false;”。因此,对NoSQL最普遍的解释是"非关联型的",强调Key-Value Stores和文档数据库的优点,而不是单纯的反对RDBMS。

02
领券