`

eBay 的数据层扩展经验

阅读更多

eBay 的数据层扩展经验

网址:

 

对于 eBay ,我盲人摸象一样写了好几篇 Blog ,暂列一下:

今天又重新读了一下这篇《The eBay Architecture --Striking a balance between site stablility, feature velocity, performance, and cost》 ,觉得数据层的扩展经验也很有意思。

通过功能划分不同数据库,然后根据主要访问路径水平分割数据库。这句话太空了,类似 MySQL DB 大家常采用的 Shard 思路。

减小 DB 资源开销

数据库上没有业务逻辑 。这包括:不用存储过程; 只有少量比较简单的触发器。 把CPU 开销比较高的工作迁移到应用上。这包扩:参考完整性检查(嗯,检查一下你的 DB 是否再用外键? ); 连接(Join), 排序。
应用服务器尽量 Prepared 语句以及绑定变量的广泛使用。

最小化 DB 事务

自动提交(Commit)大多数主要的数据库写操作。 客户端绝对没有事务(业务逻辑) 。这包括: 单个数据库通过匿名 PL/SQL 块进行事务管理; 没有分布式事务。对于"事务", 相关信息可以从 eBay 首席架构师 Dan Pritchett 的访谈 得 到确认。没有事务更没有分布式事务这一点比较关键,这也是因为 eBay 的商业逻辑天然性质(否则也不容易做),所以可以做到 Scale Out,而最近了解到 Paypal 则因为交易逻辑比较复杂,只能是 Scale Up. Paypal 的技术信息一向比较封闭,谁能告诉我一点额外的信息呢?

 

分享到:
评论

相关推荐

    从eBay的SOA解决方案谈SaaS扩展性

    4. **数据层的模块化设计**:数据层应采用模块化设计,不同业务模块对应不同的数据库,这有利于数据的隔离和保护,同时也方便于数据层的扩展和优化。 ### 结语 SaaS扩展性的实现并非一蹴而就,它需要基于SOA的原则...

    Ebay分布式数据库实现

    通过采用 DAL 抽象层,eBay 能够高效地处理海量数据,同时保持系统的可扩展性和可靠性。本文详细介绍了 DAL 的各个方面,包括其结构、功能和服务。此外,还讨论了为何需要 DAL 以及它如何帮助解决大型分布式系统中的...

    eBay架构

    在缓存层,eBay利用高性能的缓存系统(如Redis或Memcached)来存储经常访问的数据,减少对数据库的直接访问,提高查询速度。此外,使用缓存还可以减轻后端服务器的压力,提升用户体验。 eBay的搜索功能是其核心竞争...

    Qcon2011 eBay技术平台:掌控十亿级交易数据(Tony Ng)

    这一演讲不仅揭示了eBay在全球电子商务领域的技术架构和工程实践,还展示了该公司如何应对大规模数据处理、系统可扩展性以及持续创新的挑战。 ### 关于Tony Ng Tony Ng在技术领域有着丰富的经验,他曾任职于eBay、...

    eBay大数据基本架构的未来 共23页.pdf

    面对如此爆炸性的数据增长,eBay的大数据架构需要具备高度的扩展性和适应性。一方面,公司处理着庞大的交易数据,如每秒售出的商品种类繁多,从手机到服装、家具,再到电子产品,这些交易数据构成了eBay业务的核心。...

    The eBay Architecture

    1. **横向扩展而非纵向扩展**:每一层都采用水平扩展策略,通过功能分解提高系统的可扩展性。 2. **异步集成优先**:减少组件间的依赖性,提高系统的可用性和可伸缩性。 3. **虚拟化技术的应用**:利用虚拟化技术...

    ebay architecture principle

    eBay的这四大架构原则,不仅是其技术团队多年实践经验的总结,也为其他企业提供了宝贵的参考案例。通过遵循这些原则,可以有效地解决大规模分布式系统中的常见问题,从而构建出稳定、高效、可扩展的应用程序。无论是...

    ebay架构分析

    综上所述,eBay的架构设计体现了现代大型互联网公司的最佳实践,旨在提供高可用、高性能、可扩展的服务,同时保证数据安全和用户体验。通过不断地优化和创新,eBay持续满足其全球用户的快速增长需求。

    eBay Architecture-Scalability with Agility

    标题“eBay Architecture - Scalability with Agility”及描述同名,揭示了eBay如何通过灵活且可扩展的架构来应对日益增长的数据量、用户需求以及业务挑战。下面,我们将深入探讨这一主题,理解eBay是如何实现其架构...

    ebay archtecture

    2. 水平切分:为了应对单个功能需求的增长,eBay采用无状态设计,通过负载均衡轻松实现应用层的水平扩展。数据库层面则通过数据水平分割(sharding)来分配负载,如用户数据、商品数据等分别在多台主机上分布。 3. ...

    分布式数据库实践(下eBay Marketing Feeds在十亿数据场景下的架构演变和NewSQL的实践尝试V3.pdf

    数据通过API或文件形式传输,系统分为批处理层、流处理层和服务层。然而,这种架构存在高延迟、维护成本高和扩展性差的问题,且由于数据源多样,导致兼容性问题。\n\n**第二代系统架构**\n\n为了解决上述问题,eBay...

    eBay’s Challenges and Lessons

    eBay通过使用Java企业版(Java EE)的组件,如Servlet、JSP和EJB,实现了高效且可扩展的服务层。此外,Java的并发处理能力也帮助eBay处理海量的并发请求,确保系统的稳定运行。 二、架构设计的关键点 1. 模块化...

    ebay的j2ee构架

    3. **综合层模式**:涉及数据访问对象、服务催化剂、域存储等,用于处理数据持久化和业务逻辑与数据访问之间的解耦。 #### eBay V3架构的发展 eBay从早期的C++/ISAPI DLL的双层架构转向J2EE架构,这标志着eBay从...

    大数据与云计算培训学习资料 eBay大数据平台介绍 共23页.pdf

    【大数据与云计算培训学习资料:eBay大数据平台介绍】是一份深入探讨eBay大数据平台的文档,涵盖了eBay数据平台的历史、发展以及大数据服务的主要应用场景。以下是对该文档内容的详细解析: 一、数据平台历史 eBay...

    国外技术干货:eBay Architecture(Tony Ng) 2011- Tony NG.zip

    1. **分层架构**:eBay系统通常采用分层架构,包括表示层、业务逻辑层和数据访问层。这种设计使得各层职责明确,易于维护和扩展。 2. **微服务架构**:随着业务复杂度增加,eBay可能会采用微服务架构,将大型应用...

    [分享]eBay边缘节点的云原生网络实践1

    也正是通过这个项目我们搭建了大量的软件实现的边缘节点,实现了基于软件的4层和L7负载均衡,其中4层的实现是基于IPVS,L7的实现基于Envoy。 在传统基于硬件负载均衡的架构中,eBay的公网流量都是经过边缘路由器...

    自助式数据服务

    亿贝的数据分析平台由多个关键组件构成,旨在提供稳定可靠、可扩展性强的服务: 1. **大数据分析挑战**:为了应对海量数据处理的挑战,亿贝采用了多种数据集成和处理工具,如Ab Initio、UC4 Pipeline等,确保数据...

    淘宝数据仓库环境介绍

    当前,淘宝数据仓库架构分为ODS层和计算层,采用4节点RAC环境负责数据的实时同步与备份,而12节点RAC则专注于复杂的数据计算任务,辅以Hadoop分布式计算框架。这种分层设计确保了数据的高效处理与安全存储,同时也为...

Global site tag (gtag.js) - Google Analytics