IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:列族

共 1 篇相关文章

IT 累计浏览 3,122

Google大表(BigTable) 第三部分

这篇讲的是Google在构建全球级分布式系统时,如何通过Spanner和F1两个系统,弥合传统NoSQL与关系型数据库之间的鸿沟。文章开篇就点明了BigTable留下的一个关键缺口:它虽能处理海量数据,但在需要事务、SQL和复杂关系数据建模的应用面前显得力不从心。 核心方案是两层架构的协同。底层是Spanner,它扩展了BigTable的分布式存储模型,加入了全球时间同步的TrueTime API,从而提供了外部一致性事务和强一致性的SQL查询。上层是F1,它运行在Spanner之上,提供了一个完整的、与Google内部海量业务共同演进的SQL层。文章细致地拆解了F1的几大关键设计:用“视图”来灵活地组合数据、实现高吞吐的Schema在线变更、以及通过Pub/Sub机制将实时数据流无缝集成到报表等分析场景中。 最终,这套组合拳不仅让开发者能用熟悉的SQL语法操作横跨全球的数据,更通过底层Spanner的可靠性保障了业务连续性。它展示了一种演进思路:先用NoSQL解决存储扩展问题,再通过构建在其上的新基础设施层,逐步补回事务、SQL和应用开发体验,从而支撑起Google Ads这样对一致性和开发效率都有极致要求的核心业务。