Twitter自主研发:Manhattan,面向服务的分布式数据库应对海量TPS

0 下载量 21 浏览量 更新于2024-08-27 收藏 177KB PDF 举报
Manhattan是Twitter自主研发的一款针对大规模、实时、多租户的分布式数据库,专为满足Twitter在全球范围内快速增长的用户交流平台的存储需求而设计。它在设计上体现了Twitter一贯的面向服务理念,将服务组件的使用者视为"客户",强调了系统的灵活性和适应性。 Twitter在面临14.3万TPS的高峰负载时,已经展现出了强大的系统架构能力,但为了更好地处理实时查询和低延迟,他们意识到现有的开源数据库无法满足特定的性能需求。这促使Twitter决定开发Manhattan,旨在提供高可靠性和高可用性,同时保持服务质量的稳定和一致性。 Manhattan的关键特性包括: 1. **可靠性**:设计为耐用且可预测性能,确保即使在面临故障、负载变化或热点问题时也能保持服务的稳定性。这包括对各种情况下的数据持久性和一致性有严格的要求。 2. **可用性**:强调了最终一致性,以提供不间断的服务,满足Twitter业务中大多数场景对于可用性的需求。这意味着数据在最终被更新后立即对所有读取请求可见,但在某些情况下可能存在稍长的延迟。 3. **可扩展性**:为了应对未来的增长和变化,Manhattan采用模块化设计,允许灵活地扩展存储引擎和实现强一致性。这使得系统能够适应不断增长的用户量和数据量,无论是在单个地理位置还是全球范围内的扩展。 4. **面向服务**:Manhattan的设计不仅仅是一个数据库,而是服务于整个Twitter平台的众多服务组件,每个服务使用者都可以像对待外部客户一样享受到高效和定制化的服务体验。 5. **性能**:Manhattan的目标是处理每秒数百万次查询,确保在实时环境中的延迟极低,这对于Twitter这样高度交互的社交平台至关重要。 Manhattan是Twitter在应对自身存储挑战上的创新解决方案,它结合了高性能、高可用性和面向服务的特性,为Twitter的持续发展提供了强大的技术支撑。随着Twitter业务的全球化和复杂度增加,Manhattan的重要性将更加凸显。