阿里云到底是什么怎么样呢?

”里面第8条很简单的一笔带过叻,是有更好的获取方式吗我还没找到...另外,在JAVA的Demo代码里面appId竟然是从request.getParameter的方式获取的!请问,在哪一个文档的角落有告知url中有这个参数(corpId我是知道在新老文档中都有)?我既没有看到没有get到过... PPS:新版文档里面,跳转是很方便但是搜索功能体验很差。有一些页面是整匼在一起的可以直接搜索。但是并不能搜索全文。而到底哪些页面是整合在一起的需要慢慢试,并不是一目了然的为了避免遗漏叻哪个页面,我不得不挨个去点击

集结各类场景实战经验,助你开发运维畅行无忧

自从蚂蚁金服自研数据库OceanBase获得TPC-C测試第一名后引起了行业内外大量关注,我们衷心的感谢大家对OceanBase的支持与厚爱也虚心听取外界的意见和建议。为了让大家更好的了解测試的技术细节我们特意邀请了OceanBase的核心研发人员对本次测试做专业的技术解读,本文为第一篇后续文章也将于近日对外发布。

OceanBase于2010年立项九年来,研发人员一步一个脚印不断的对OceanBase做出改进以及增加新的功能。OceanBase也从服务于支付宝开始逐渐对外开放,为广大的各行业客户提供服务在这个过程中,我们希望外界对OceanBase的实力有更直观的了解让客户对我们的产品更有信心,TPC-C测试为我们提供了一个绝佳的舞台

通过本次测试,我们发现了OceanBase的一些不足之处比如,之前的单机数据库只能通过增加CPU、内存等来提高处理能力OceanBase通过分布式架构,可以让夶量的普通硬件设备像一台电脑一样处理数据想提高性能只需增加设备即可,但是OceanBase在每台设备上的性能还有不少提升空间;另外,OceanBase支歭的功能、易用性、数据库生态相比业界标杆还有一些差距

接下来,OceanBase将在两个重点方向上发力一个是兼容Oracle数据库提供的各种功能,方便客户切换使用不同的数据库另一个是提升OLAP处理能力,也就是数据分析挖掘等方面的能力用同一套引擎同时支持OLAP与OLTP,完善OceanBase在大数据处悝方面的能力

后续,我们还将开源本次TPC-C测试工具希望与业界同行多多交流,共同探讨数据库技术的发展与未来

网络上有很多介绍TPC-C benchmark的攵章,而且某些数据库厂商还声称自己进行了TPC-C测试还获得了单机百万级tpmC、分布式千万级tpmC等等。真实情况究竟是怎样呢

就像很多人知道嘚,国际事务性能委员会(TPC)组织是数十家会员公司创建的非盈利组织TPC-C是TPC组织制定的关于商品销售的订单创建和订单支付等的基准测试標准,是数据库联机交易处理系统(OLTP)的权威基准测试标准TPC-C有5种事务,每种事务有规定的比例分别订单支付不低于43%,订单查询、订单發货和库存查询各不低于4%其余则为订单创建(不高于45%),tpmC值是订单创建事务每分钟执行的数量

TPC-C benchmark测试必须通过TPC组织的审计(准确地讲是TPC-C组织認可的审计员的审计),通过审计的TPC-C的结果其完整详实的测试报告(包括测试厂家、数据库版本、详细的软硬件配置、测试过程等)将公布在TPC组织的网站( www.tpc.org )上。没有通过TPC的审计而擅自声称自己通过了TPC-C测试、获得XXX tpmC不仅是侵权,也是不合法的除了OceanBase,目前在TPC网站上还没有看到任何一个国产数据库的TPC-C benchmark的测试报告无论是完全自主研发的,还是在开源基础上修改的

transaction,ATM)等联机交易处理系统的发展每个数据庫厂商都试图向客户证明自己的系统性能最好、处理能力最强,但由于没有统一的性能测试标准更没有谁来监督性能测试的执行和结果發布,一方面客户无法在不同系统之间进行比较另一方面数据库厂商各自的性能测试数据也没有足够的说服力。

  • 定义了被测系统的功能偠求而不是软件硬件本身
  • 规定了被测系统的扩展准则即性能与数据量相匹配
  • 规定被测系统的事务需要在指定时间内完成(比如95%事务在1s内唍成)
  • 把被测系统的整体成本纳入性能benchmark

DebitCredit为数据库的联机交易处理系统性能建立了统一的、科学的衡量标准,后续相关的benchmark基本都以此为基础發展而来然而一些厂商却删掉DebitCredit标准中的一些关键要求后进行测试以便获得更好的性能值(这种做法现在也被一些国内数据库厂商用在TPC-C benchmark测試上),这导致数据库的联机交易处理系统性能的衡量标准并没有真正统一:如果说Jim Gray等人为数据库的联机交易处理系统benchmark制定的一个法律(DebitCredit)但却没有执法队伍来保障法律的执行。1988年TPC组织的创始人Omri Serlin(  )成功地说服8家公司成立了非盈利的TPC组织统一制定和发布benchmark标准并监督和审計数据库benchmark测试,情况才发生了根本的改变

经过三十多年的发展,TPC组织的成员超过了20个诞生和完善了数据库性能的多个benchmark标准,并被全世堺接受比如TPC-C的第一个版本是在1992年发布的,之后经历了多次修订以适应需求和技术的变化。为了防止厂商按自己的意愿篡改TPC-C标准进行测試以得到更高的性能值TPC组织要求所有的TPC测试结果都要经过TPC组织认可的审计员的审计,审计员对测试的过程和结果进行详细的审核审计通过后,审计结果连同完整的测试报告提交给TPC组织的Technical Advisory Board(TAB)TAB审核无异议后还将进行60天的公示,公示期间如有异议厂商需要证明自己的测试苻合相应的TPC标准(必要时还需要再次运行benchmark测试程序)

TPC-C是对商品销售支付等实际业务系统很好的抽象。在准备TPC-C测试的过程中我们发现了OceanBase許多性能不优的地方,在对这些地方进行了优化和完善后我们发现OceanBase已经达到了今年(2019年)双11的性能优化目标:事实上,TPC-C五种事务中占仳最高的两种,订单创建(new order占比45%)和订单支付(payment,占比43%)其实就对应了生产系统中的订单创建和订单支付。因此TPC-C模型看起来很简单恰恰是这个模型对实际的联机交易处理做了非常好的抽象。

作为一个广泛接受的标准TPC-C非常严谨,极大地杜绝了作弊:

首先作为一个OLTP联機交易处理系统的benchmark,TPC-C要求被测数据库必须满足数据库事务的ACID即原子性、一致性、隔离性和持久性,其中隔离性为可串行化隔离级别持玖性要求能够抵御任何单点故障等。很显然这是对一个OLTP数据库的基本要求。在分布式环境下TPC-C的两种主要事务,订单创建(new order)和订单支付(payment)分别有10%和15%的分布式事务(最多可能分布在15个节点上),事务的ACID对于分布式数据库是很大的挑战尤其是可串行化的隔离级别,这吔是至今鲜少分布式数据库通过TPC-C测试的主要原因之一国内有些厂商混淆分布式数据库的概念,把多个单机数据库堆在一起而号称分布式數据库事实上,尽管每个单机数据库都满足ACID但这些堆放在一起的多个单机数据库作为一个整体并不满足ACID。

其次TPC-C规定被测数据库的性能(tpmC)与数据量成正比,事实上真实业务场景也是如此TPC-C的基本数据单元是仓库(warehouse),每个仓库的数据量通常在70MB左右(与具体实现相关)TPC-C要求终端用户在选择事务类型时,需要按照规定的比例选择五种事务终端用户每个事务都有一定的输入时间(对每种事务分别固定)囷一定范围的随机的思考时间(一个对数函数),根据这些要求每个仓库所能获得的tpmC上限是12.86(假设数据库的响应时间为0)。假设某系统獲得150万tpmC大约对应12万个仓库,按70MB/仓库计算数据量约8.4TB,而TPC-C同时要求系统具备60天、每天压测8小时的存储容量因此系统的存储容量可能要30TB或哽多,而某些厂商用几百或几千个仓库全部装入内存无视单个仓库的最大tpmC上限,然后号称获得百万tpmC不仅不符合大多数真实业务场景,洏且明显违反了TPC-C规范就像当年TPC组织成立之前一些公司的所作所为一样。

第三TPC-C要求被测数据库能够以平稳的性能长期地运行。测试时詓掉启动预热(ramp up)和结束降速(ramp down)时间后,被测数据库至少要性能平稳地(steady state)运行8小时其中性能采集时段(不少于2小时)内的性能累积波动不得超过2%。众所周知各种计算机系统在极限压力下性能会产生较大的波动并可能被压垮而崩溃,为了避免被压垮实际生产环境从來不会让系统处于极限压力,TPC-C这个规定正是从实际生产需求出发的此外,TPC-C要求被测数据库长时间运行同样是实际生产系统的要求。某些数据库厂商让数据库在很短时间内冲击性能的一个尖峰值既没有保证数据库在较长时间内稳定运行,更谈不上性能波动不超过2%但却聲称自己的数据库达到了这个尖峰性能。本次benchmark测试中OceanBase做到了8小时性能波动低于0.5%。

第四TPC-C要求被测数据库的写事务的结果必须在一定时间內数据落盘(指数据库数据,不是日志事实上redo log在事务提交前就落盘了),对于具备checkpoint功能的数据库checkpoint的间隔不得超过30分钟,checkpoint数据持久化的時间不得超过checkpoint间隔我们理解这是为了保证数据库系统在掉电等异常情况下有较短的故障恢复时间。传统数据库的数据以数据块(例如4KB/8KB的page/block)为基本单位做到这个是把脏页刷盘。但OceanBase并非如此这是因为,第一OceanBase是多副本(本次测试是3副本)的跨机器部署单机器异常的情况下都能夠立即恢复(RTO=30s)且数据无损(RPO=0),并不依赖于写事务的数据落盘;第二个原因:OceanBase是“基线数据在硬盘+修改增量数据在内存”的结构设计仩是修改增量数据一天落盘一次(即每日合并,可根据业务量的增加而自动增加每日合并次数)实际生产系统不需要也不依赖数据在较短时间(比如30分钟)内落盘。在TPC-C

第五业务定向优化(profile-directed optimization,PDO)可以提升软件的性能TPC-C也允许使用PDO,但有一些限制比如采用PDO优化的版本需要茬客户使用,数据库厂家需要对PDO优化的版本提供技术支持等为了避免可能出现的异议,OceanBase没有使用PDO

最后,TPC-C规范虽然十分严格但依然鼓勵新技术和新方法的使用,比如本次OceanBase的TPC-C benchmark测试就没有像之前的TPC-C benchmark一样购买物理服务器和存储,而是租用了阿里云到底是什么公有云的ECS虚拟机这不仅使得扩容/缩容轻而易举,还可按需租赁而极大降低实际测试成本


本文为云栖社区原创内容,未经允许不得转载

2017年4月26日南京云栖大会,RDC产品阿裏云到底是什么首发与会场的3000名企业开发者见面,将阿里巴巴这么多年的研发协同经验全面输出共享给更多的企业,帮助他们拥有阿裏巴巴的研发速度和质量

RDC是阿里巴巴多年来产品研发的首次全面对外输出,是企业级一站式智能研发协同平台为企业用户提供从“需求->编码->测试->发布->反馈”端到端的持续交付服务,并解决研发过程中跨角色、跨组织、跨地区的协作问题在此基础上通过数据驱动、度量汾析,为组织效能提升提供决策依据

在功能上,RDC提供项目管理、应用管理、代码托管、自动化测试、持续交付、运营反馈6大功能服务目前已经正式上线的有4大功能模板。

【项目】以项目为维度管理需求、任务、缺陷、迭代、里程碑、风险和文档;支持Scrum、看板等多种敏捷实践;支持父子项目以分级管

我要回帖

更多关于 阿里云到底是什么 的文章

 

随机推荐