说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

【先锋】事务、高性能,王涛谈打造超越MongoDB的NoSQL

HTML文档下载 WORD文档下载 PDF文档下载
兼顾事务和性能,并通过连接器实现复杂的SQL,NoSQL数据库SequoiaDB有着很多让人眼前一亮的特性。同时,SequoiaDB还能替代HDFS,作为MapReduce任务的数据存储源。

多样性、大容量给数据的存储和处理带来了巨大的挑战,当传统关系型数据库无法应对应用程序的快速迭代时,天生具备弱数据结构模式、易扩展等特性的NoSQL数据库得以飞速发展,在众多网络及新型应用程序中得以部署。然而,基于其分布式的特性,事务成为了大部分NoSQL数据库系统的致命弱项,也造就了NoSQL与任务关键性场景绝缘的这个现状。时至今日,着眼NoSQL领域,如何才能在高性能下兼顾事务以及更多功能已成为当务之急。为此,笔者近日与SequoiaDB创始人兼CTO王涛取得联系,就NoSQL打造进行了简要采访。同时,值得高兴的是,通过王涛得知,SequoiaDB即将开源。

以下为采访实录:


SequoiaDB创始人兼CTO 王涛

CSDN:请介绍你个人和SequoiaDB。

王涛:大家好,我叫王涛,现在是SequoiaDB的创始人兼CTO。之前我一直在IBM的北美数据库实验室做DB2数据库引擎。我们SequoiaDB是2012年正式成立的,每一行代码都是我们从零打造,并没有基于其他的开源数据库引擎。还记得当初我回国之前,大概用了半年的时间和几个IBM出来的兄弟在北美那边一行行地扣代码,最后整个引擎跑通了并且感觉性能不错,才回国成立的公司。我们SequoiaDB的核心产品就是一款文档类NoSQL数据库,从体系结构与应用场景上看和 MongoDB有些类似,因此很多时候我们会被拿出来和MongoDB作比较。

CSDN:你经历多年RDBMS与NoSQL的开发,是否可以从你的角度谈谈NoSQL运动?

王涛:我认为,NoSQL运动是现在应用程序互联网化和移动化的一个产物。过去,关系型数据库做点什么东西都需要进行复杂的数据模型设计和调整,但是在互联网时代这种玩法已经跟不上节奏了。所以,以互联网的标准数据格式JSON进行对象型数据存储成为一种需求,而这种需求同时也弱化了应用程序对关系模型的依赖。

当然,这并不是说NoSQL会在近期完全取代关系型数据库,而是这两者会有一个长期的共存,分别适用于不同的应用领域。现在我们已经看到,很多传统的企业也都开始慢慢接受互联网的思想,包括其业务模式以及后台所采用的技术,包括NoSQL数据库。

CSDN: 能否谈一下SequoiaDB当下都有哪些重量级的用户?数据库的规模达到什么级别?

王涛:我们现在在企业和互联网领域都有不少的成功案例。传统企业中包括像民生银行、海南航空、电信移动企业等;而互联网行业里面也有像蓝汛、蓝港在线这类企业。我们部署在一些客户的系统还是挺大的,比如有一家客户的日志分析集群系统总量超过PB,每天会产生近10TB的数据,都要近实时入库并且做到同时批处理分析和实时检索。这类集群都是百台节点的规模。

CSDN:同为文档类型NoSQL,对比全球排名第五的MongoDB,SequoiaDB的优势/特点是什么?

王涛:从架构上来讲,MongoDB和我们都是使用分片Sharding机制,每个分片里面做数据的复制和同步。而在具体实现中我们则有很大差异。譬如说我们的日志使用的是日志序列号LSN机制,而MongoDB则是一个capped collection,所以我们可以做到很多MongoDB根本不可能做到的事情,例如事务这类操作。除了这些功能点以外呢,我们的性能可以说是一大亮点。过去人们通过MongoDB和CouchDB可能都认为文档类NoSQL的性能比较差,至少和Cassandra这类的宽表库比起来差。但是现在在我们的测评中,很多原本HBase和Cassandra最突出的导入操作都被我们甩在了后面。

CSDN:确实,一般人都认为文档类数据库由于结构复杂,相比起宽表和KV类型的NoSQL来说性能不佳。为什么SequoiaDB在能够提供丰富的数据库操作功能以外还达到这么高的性能呢?

王涛:这个问题就要深入到代码的实现中去了。我想这都要归功于我们代码的精细化设计,尤其是对并发性和锁的这一部分。

在一个并行处理的数据库里面,如果锁控制得不好,会造成很多线程都堵在一个地方。如果大家有兴趣看看mongodb的代码可能会发现,它做了很多非常好的模块化封装,但是相反地对于一些锁的处理则比较粗糙,所以在高并发高压力的情况下总体的吞吐量根本上不去。而我们在设计SequoiaDB的时候,很多代码尽量做到无锁。程序的设计永远秉承一个理念,就是在正常流程下尽可能无锁,异常流程可以使用额外的代码或锁机制保证逻辑正确。所以即使在一个16核、32核的这种大机器下起高压力并发我们也可以把CPU打满,不会在某些代码上造成性能瓶颈。

另一方面,MongoDB实际上很多设计并非最优。譬如说它的日志机制使用了capped collection。可能咋一听起来很新潮很酷,但是实际上会对整体性能有着重大的损害。而我们使用的虽然是比较经典的日志LSN机制,但是正因为这种机制被所有关系型数据库使用了几十年,才从性能和功能上都被完善到了极致。

剩下的还有很多优化细节,譬如说我们在性能敏感的代码里面完全不允许使用string这种STL库,就是避免这种封装得比较深的库会做额外的譬如分配释放内存的操作,造成不必要的损耗。

CSDN:我们知道,分布式数据库和传统的单点数据库相比有很大不同。从技术上能不能简单介绍一下,分布式数据库的难点在什么地方?你们是怎样解决的?

王涛:传统的关系型数据库主要都是单点架构,有数的几个像Greenplum和DB2这种MPP 数据库才能够做到分布式架构。当然,我们说Oracle的RAC算是假的分布式,在存储层还是大统一。所以,我们这里说的分布式是Share Nothing的MPP架构。

在分布式系统里面,有几点是需要注意的。第一,就是数据是否可以做到弹性扩张。这个可能算是所有MPP分布式关系型数据库最大的弱点之一。比如DB2,想要添加个节点,需要做redistribution,遇到一个几十TB的数据库估计要好几天才能搞完。而NoSQL明显不能这么玩,所以我们用的是一致性哈希技术,把数据散列后映射到哈希环上根据范围划分节点,可以做到在增减节点时移动最少的数据。

第二,节点的可用性。现在讲究的大集群基本都是围绕着PC服务器说的,PC服务器的特点众所周知,就是容易坏。那么如果我一个集群里面有1000个节点,三天两头都有可能有机器出故障。如果用关系型数据库那种MPP架构就完蛋了,一个节点坏了可能整个表都挂了。所以,我们要用多数据副本的方式保证即使机器挂了,数据也可以在其他的节点中找到。

第三,就是事务操作。我想事务操作是现在很多NoSQL都不具备的功能。并不是说NoSQL的架构和事务有冲突,而是想要实现事务机制需要太多模块的配合。譬如说日志机制,对于MongoDB的capped collection机制就很难实现事务的提交和回滚功能。我们用的是基于传统的事务日志的机制才能够做到这一点。当然,别忘了还有记录锁、表锁这些机制,还要考虑多副本之间数据根据日志的分发同步,节点失效重新选举后日志的同步等一系列机制。

CSDN:事务一直是分布式数据库实现的难点,就算很多其他世界知名的NoSQL也没有很好地实现。可否详细介绍一下其中存在的挑战,以及SequoiaDB事务的实现途径。

王涛:事务本身其实原理并不难,就是做任何操作都要先写日志,然后把每个会话的日志都有一个链能够往回一条条找到本事务起始的位置,能够对每一个操作做redo和undo就可以了。这个是单点传统数据库的玩法。当然,锁这些机制是另一个故事了,这里先不提。

但是在分布式环境中,这个简单的东西就开始变复杂了。第一,如何确保在可配置的强一致与最终一致性中,事务在复制过程中的完整性。譬如说,主节点A挂了,备节点还没有同步到这个主节点最后的日志,这个时候事务怎么处理?对于我们来说,当然在最终一致性的配置中只能牺牲数据的完整性了,不过在强一致性开启的情况下则是必须要保证这一点。

另外,多个分片之间数据完整性的问题也存在。我们利用很多MPP数据库使用的二段提交(2PC)来玩,可以满足大部分提交回滚的需求。但是如果在二段提交过程中的小窗口处发生问题同样还会造成indoubt transaction,这一块处理也是难点。

还有很多网络问题的检测也和事务息息相关。比如说如果协调节点挂掉了,需要让数据节点能够立刻感知到这个事件,并且确保这个协调节点所属的事务全部进行回滚操作。而如果某一个数据节点掉了,协调节点则必须感知然后通知其他数据节点回滚这个操作。

CSDN:我们看到SequoiaDB提供不少与第三方产品的连接器,能不能介绍一下这些连接器的作用?

王涛:做一个数据库不像搞一个游戏或者应用软件,自己和自己玩就行了。数据库是软件项目基础架构的一部分,需要对接很多第三方的应用和产品,要把生态圈建立起来嘛。所以我们在和其他产品对接这一块也花了不少力气。主要是两个大方向,一个是和Hadoop这块一起玩,一个是和使用关系型数据库的应用这块一起玩。和Hadoop对接相对比较简单,就是Java里串行化的几个函数嘛,对接了以后自然和Spark的对接也有了。另外对于Hadoop生态圈里面其他的Hive和Storm我们也都做了连接器,可以直接利用Hive和Storm从数据库读写数据。

而和使用关系型数据库的应用对接就有点麻烦了。我们想了个方法,先和PostgreSQL对接。PG不是提供一个FDW的机制么,我们就直接写了个库能够串到FDW上,让PG能够定义基于SequoiaDB的外部表,里面定义各个字段和类型。每次查询的时候相关的请求会通过FDW转换成我们认识的东西发送的数据库上,然后返回的记录在格式化成PG需要的格式,在PG里面进行关联啊聚集之类的。

总地来说,我们会不断增强连接器的种类和功能,争取今后和多数主流的产品与第三方应用都能够较轻易地对接。

CSDN:SequoiaDB曾宣布提供开源版本,是否取得了一定的进展,对比商业版,开源版本会弱化哪些方面?

王涛:开源现在是万事俱备,就差最后临门一脚了。我们已经在Github和CSDN CODE平台上都建立好了repository,所有的代码审查和协议注释也都已经完成了。我们将很快在近期就会正式对外开源。

商业版和社区版相比,主要是在企业级服务这块增加了一些内容。譬如说24x7的技术支持啦,定期巡检啦,安全机制啦,还有一些额外的监控机制和工具软件之类的。而从数据库内核的代码上来看企业版和社区版基本区别不大,也并不存在集群规模限制等问题。

CSDN:作为数据库打造的行家,有什么使用经验可以分享给读者的?

王涛:太多经验也谈不上,现在我看到不少程序员和DBA兄弟依然围绕着关系型数据库吃饭,我想大家可以开始适当关注大数据和NoSQL这个领域。因为我觉得今后关系型数据库会成为一个存量市场,就像几十年前的大型机一样不会消亡,但是也不会近期迎来大规模的增长。相反,非关系型数据库与大数据技术正在开始起步,虽然市场上还是一片混战局势未明,但这也正是切入这个领域开始学习的好机会。如果局势都明朗了,基本该占的坑都被占完了,晚来的弟兄们也没啥汤好喝。

CSDN:你有什么需要对读者补充的么?

王涛:作为咱们国内不多的基础数据库软件,我们有信心在开源后和国外的产品进行功能与性能方面的正面抗衡。也希望国内的技术人员圈子多多给我们鼓励,最好能试用一下提出各自的宝贵意见。

中国创新“先锋”企业系列报道
序号 公司名称 成立时间 CEO/CTO 官方微博 公司产品/方向
1. 云适配 2012年 陈本峰
网站适配
2. 友友 2010年 
姚宏宇
@友友微博 C、C++、Java产品研发 
3. 聚合数据
2010年
左磊 
@聚合数据 移动数据服务
4. Anchora 2009年 鲁为民       

MoPaaS和InPaaS 
5. 够快 2012年
蒋烁淼 @够快科技 
云存储
6. 文思海辉
2012年 吴凯
@文思海辉 OpenStack公有云       
7. 搜狐云 2011年 邱英波
SendCloud                  
8. 联想云存储 2009年 罗予晋
云存储
9. 南京讯之智 2012年 谢晚霞
大数据实时分析
10. 上海圣何赛 2012年 
金剑 

云管理、云存储                
11. 国云科技 
2010年
季统凯
@国云科技 云操作系统                
12. SSO365 2012年 赵健                

云安全、云身份认证 
13. ClouDil云方案 2001年
叶滨 @世纪鼎利 
通信运营商                
14. 多备份 
2013年 胡茂华            
@木浪 云备份                 
15. 上海越诚软件 2011年 王炜                  
基于云的建站软件超市 
16. 云智慧 2009年 殷晋 @监控宝 云监控、基于大数据APM
17. 深圳泽云 2012年 何巨彬
高性能存储系统
18. 深圳智冠 2004年 卢慧莉  
手静脉生物识别、虚拟化
19. 北京沃安科技 2009年 曹学武 @沃安科技 移动视频技术提供商
20. 星环信息科技 2013年 孙元浩 @星环科技 大数据分析平台
21. 杭州数云 2011年 宣晓华 @杭州数云 数据挖掘
22. 红象云腾
2012年 童小军 @RedHadoop
基于Hadoop的大数据平台
23. APICloud 2013年 邹达 @APICloud 云API和端API
24. SequoiaDB
2012年 王涛 @SequoiaDB
大数据、云计算、NoSQL
备注:2014年9月16日更新,持续更新中......


备注:云先锋系列文章是由CSDN云计算频道打造的,主要报道国内外在云计算、大数据方面具有独特竞争优势的企业,以传播技术为目的,推动中国云计算技术的发展,只有你有云计算或大数据方面独特的技术、产品和服务,你就可以投稿,欢迎投稿weiwei@csdn.net。

第五届中国云计算大会于北京隆重举行 改变企业移动化:新Google地图API支持用户定制 诺基亚旗舰手机EOS真机图曝光 配备“巨型”摄像头 走进豆瓣:豆瓣的技术架构与团队文化分享 加速Web开发的10款HTML5工具 微软式微?AMD、英特尔等开始疏远Windows 语音技术现状:四千万突破语音产业的技术壁垒? 万维网联盟W3C推荐Web性能API 微软郑子颖:Windows Azure如何支持开源系统和软件? EMC 叶成辉:软件定义数据中心实现统一、开放的管理 百度云主任架构师 侯震宇:云终端开启数字生活 中国工程院院士 倪光南:中国云计算在全世界份额远超3% 信息图:未来的企业移动培训应用与技术 “2013年度中国优秀开源项目征集”活动最后三天 为什么开发者倾向于使用杂乱无章的免费工具 EMC合作伙伴销售经理杜术清:实现云的三种途径 开发者想走向海外:你融入老外的圈子了吗? 前微软工程师:美国监控和直接访问服务器?这不太可能 代码、TDD速查表 如何选择前端架构:服务器端HTML vs. JS部件 vs.单页Web应用 世界上最高深的Android特洛伊病毒 招聘iOS开发,老板必问的5个问题 护航科技吴伟湘:IT离线安全体检服务将带来颠覆 百度王继平:移动互联网时代云平台思路 “第八届开源中国开源世界高峰论坛”火热开启 微软发布SQL Server 2014预览版,展示内存数据库技术 帮助软件开发者提高效率的10个小窍门 我想做个程序员:Technovation Challenge圆女孩编程梦想 未来我们开发的Google Glass应用将会是什么样? 独家:前RIM大中华区总经理刘征宇,加入Appconomy 用一个API搞定一切 Segment.io为移动开发者提供便利的分析数据分发服务 cell帮忙来看一下 关于事务处理的问题! pb中解析xml的问题? 使用DrawText在窗口上画出几行字(带DT_WORDBREAK风格),请问如何知道其中任一字符的坐标值 送分小问题:客户端与服务器 谁能给我几个经典一点的directx方面的2d游戏例子吗 我毕业设计要用java做一个软件,能够实现信息隐藏技术,谁有这方面的经验?谢谢。100分 无比痛苦的我~~~~!! CEdit & CRichEdit 怎么调用flash文件 【【【简单的问题,只是我不知道而已 也不知现在那个版本的VS。ENT中文正式版要好点??? 关于DCOM的应用系统分发的简单问题! IBM TP600硬盘加密问题!!!在线等待 关于Linux下配置邮件服务器 哪里有适合delphi6的控健(包括fastreport)可以下载? 设备无关位图的数据,为什么与显示在屏幕上的RGB不一样,高手不一定会! 什么防火墙比较好???? 能用到存储过程吗? 如何操作动态连接库! 征求兼职,简单的数据库项目,要求人在上海。 怪问题送分 第五把钥匙 两台属于不同域的都安装的活动目录的服务器,如何建立域间的信任关系 一个delphi combobox的问题! WebControl中包含的中文字显示不正常? 怎样读取注册表中的数据呢? 刚刚写好一个 NT/2000/XP 的 backdoor (反向连接,插入系统进程,通讯加密) 愚人节千万别上厕所(刚看到的,转) 散 分! 高手进行,绝对给分! 继续上一个问题提问,关于动态窗体 不能加载控件dbgrid32?????许可证末找到??? 美萍反黄专家技术大讨论! Linux与四系统并存启动 怎么追这个很正点的女孩啊。请教。。。 急啊,连接数据库(online 请教MPEG4编辑问题 我的操作系统是2000,请问如何调整虚拟内存的大小? 谢谢詹维,请进来 java汉字显示乱码问题?? 我想自己编写一个画线的函数,不用mfc中的,而且速度要比mfc快,所以我想直接操纵缓存,请问怎么做? SQL SERVER2000中数据转换问题? 一个很奇怪的问题!高手请进! postdata.att文件用什么软件打开! 组网 我的网站怎么了? 如何解决问题:"无法在 sysdepends 中添加当前存储过程所对应的行,因为缺少该存储过程所依赖的对象 '测试2'。仍将创建该存储过程。" 搜寻指定路径下的所有文件。急~~~ 请问有blob字段的表怎么插入阿??? mysql在windows和unix下的问题!!!!!! 已知a为第三象限角,则a/2所在的象限为?需要理由, 执行下述语句后,a,b,m,n变量的值分别为?int a=1,b=2,c=3,d=4,m=5,n=6;a = ( m=a>b ) && ( n =c>d ) || ++a = = b--; 如何定义一个小于等于2的32次方的整型变量 已知a是第三象限角,则a/3是第几象限角?请写详细一点 若int a=4;则执行语句a+=a- =a+4后变量a的值是什么,答案是-8,a+,a-是什么, 用语言叙述代数式:m的3次方+n的3次方+p的3次方-mnnpp的意义为?这个是对的用语言叙述代数式:m的3次方+n的3次方+p的3次方-mnp的意义为? 已知a为第三象限角,则a/2所在的象限是?本人甚愚,请给出详细些的说明答案是有两个象限 若int a=4;则执行语句a+=a- =a+4后变量a的值是 定义一个求x的n次方函数,用此函数求2的0次方+2的1次方+2的2次方+··+2的63次方的值 w,x,y为正整型变量,以下switch语句为何不正确switch(pow(x,2)+pow(y,2)){case 1:case 3:w=x+y;break;case 0:case 5:w=y-x;} 设F1,F2是椭圆C1:x平方/6+y平方/2=1的焦点,P是双曲线C2:x平方/3-y平方=1与C1的一个交点,求向量PF1*向量PF2/绝对值向量PF1*绝对值向量PF2 的值 次方什么意思 已知 a为第三象限角,则a/2所在的象限是A、第一或第二象限 B、第二或第三象限 C、第一或第三象限 D、第二或第四象限 问一个关于英语所有格的问题?“表示无生命的东西的名词一般与'of'构成短语表示所有关系.” 这里的“无生命的东西”是指of前面名词的还是所有者?无语了,误导我了。 有谁知道anyone else的名词所有格 把吹鼓的气球在毛衣或头发上反复摩擦.把一个空可乐罐放在桌上,气球放到可乐罐旁接触.空可乐罐会怎样?30分钟内急需!*o* 已知F1,F2是椭圆C1:x^2/4+y^2=1与双曲线C2的公共焦点,A是C1,C2在第一象限的公共点,若向量AF1*AF2=0,则C2的离心率是 anyone else's anyone else anyone's else anyone's 的区别 把吹鼓的气球在毛衣或头发上反复摩擦.把一个空可乐罐放在桌上,气球放在可乐罐旁边(两者不能互相接触)慢慢移动气球,空可乐罐会怎么样呢?把结果写下来 英语语法题,请说明其它选项为何是错的.名词的格,何时用“名词+of+名词”,何时用“of+名词的所有格”1.Are you sure that the blue umbrella is the____?A.jone's B.Joneses' C.Joneses D.Jones'B (为什么不能是D,B和 anyone else's和somebody else's为什么所有格都在else上,还有他们分别是 为什么将一个气球在头发上摩擦几下,再拿到一个手臂旁,气球不会掉下来?请四楼 不要说理论,就回答这个问题。 对于英语所有格的用法表述里,“表示无生命事物的名词所有格需要借助介词of来表示”这句话要怎么理解呢?表示无生命事物的名词所有格需要借助介词of来表示.如:a photo of my family 我家的全 是anyone's else还是anyone else's? 函数y=根号1-x2/(x+3的绝对值—3)的奇偶性如题 无生命的名词所有格用“of+名词”来表示.无生命的名词所有格用“of+名词”来表示,如:a map of the world.哪一个是无生命的名词?还可以举一个例子 肥皂泡里面是真空的么. 描写雨的完整古诗2首 执行语句int a=5,b=10,c; int *p1=&a,*p2=&b; 后,下面不正确的赋值语句是a.c=*p1*(*p2); b.p2=p1; c.*p2=b; d.p1=a; anyone else`s和anyone`s的区别His handwriting is better than().实在是这两个弄不明白 可口可乐没有拧开盖子前瓶子内气压是多大? C语言,若有说明:int *p1,*p2,m=5,n; 以下是正确赋值语句的选项是若有说明:int *p1,*p2,m=5,n; 以下是正确赋值语句的选项是(A) p1=&m;p2=&p1;(B)p1=&m;p2=&n; *p1= *p2;(C) p1=&m;p2=p1; (D) p1=&m; *p2 = *p1 ; 一个质量为m的球形肥皂泡,其内有不计质量的空气,泡外真空,平衡时半径为R,由于受到扰动,肥皂泡做微...一个质量为m的球形肥皂泡,其内有不计质量的空气,泡外真空,平衡时半径为R,由于受到扰 向量叉乘方向为什么用右手定则来判定 有语句“int a=10,b=20,*p1,*p2; p1=&a; p2=&b; ”,若要让p1也指向b,可选用的赋值语句是( ).A、*p1=*p2 B、p1=p2 C、p1=*p2 D、*p1=p2 已知椭圆C1:x^2/a^2+y^2/b^2=1(a>b>0)的左、右焦点分别为F1、F2,其中F2也是抛物线C2:y^2=4x的焦点,M是C1、C2在第一象限的交点,且|MF2|=5/3,求椭圆C1的方程. 已知sina=2/3,cosb=-1/4,a b为相邻象限的角,求sin(a=b)与sin(a-b)的值求sin(a+b)与sin(a-b) 若有定义int a=7,b=9,*p1,*p2;下列赋值语句中正确的是第五题详解跪谢 失重条件下空气中的肥皂泡会破吗?若不计水分散失. 已知Sin(a+b)=4/5,cosb=-1/3,a属于第一象限,b属于第二象限求Sina 是多少 一着急 忘了 请说清楚 12、若定义 int a,b,*p1=&a,*p2=&b; 使p2指向a的赋值语句是(___A____).C A) *p2=&a; B) p2=&p1; C)12、若定义 int a,b,*p1=&a,*p2=&b; 使p2指向a的赋值语句是(_______).A) *p2=&a; B) p2=&p1;C) p2=&*p1 D) p2=*&a; 椭圆x^2/a^2+y^2/b^2=1(a>b>0)的左准线为l,左右焦点分别为F1、F2,抛物线C2以F2为焦点,l为准线,点P是C1、C2的一个公共点,则F1F2/PF1-PF1/PF2= 已知sina=2/3,cosb=-3/4,且a,b都是第二象限角,求sin(a+b),sin(a-b)的值得数 还要清楚过程 已知复数z=-1-2i,则1/z在复平面上表示的点位于( ) A、第一象限 B、第二象限 C、第三象限 D、第四象限 有一个吹泡机,一次恰好吹出100个肥皂泡,肥皂泡吹出后,经过1分钟有一半破了, (2)已知sina=2/3,cosB=-3/4,且a、B都是第二象限角,求sin(a-B)的值 所有格's 表示地点时,具体有哪些用法?可否举例说明一下.谢谢.当用where提问时,为了表示地点常用人名加上'S所有格形式表示.可否请大家举些例子让我来了解下此结构的实际用法.谢谢. 已知抛物线C1的顶点坐标在坐标原点,它的准线经过双曲线C2:y*y/b*b-x*x/a*a=1的一个焦点F1,且垂直于C2...已知抛物线C1的顶点坐标在坐标原点,它的准线经过双曲线C2:y*y/b*b-x*x/a*a=1的一个焦点F1,且垂 已知sina=1/3,a是第二象限角,cosb=-1/2,b是第三象限角,求sin(a+b)的值 什么时候用双重所有格? 帮我修改一下这篇文章,将句子与词语描写得更生动赏灯会那天是元宵节,吃过晚饭,我们全家都带好自做的花灯到楼下参加公寓里举办的赏灯会.放眼望去,一盏盏花灯连起来好似一条长长地银 描写雨的古诗? 双重所有格什么时候用我的问题是什么时候用。 双重所有格的用法英语中的双重所有格用法是什么.my mother’friend 和a friend of my mother’s有什么区别,为什么不用例如a capital of这种句式?还有要是Jack只有一个兄弟还能用a brother of Jack吗?好像这 已知向量a=(m,1),向量b=(-1,2),若a垂直b,则实数m的值是____ 若已知int i=8,j=10,m,n;请写出执行如下语句m=++i;n=j--;后变量i,j.m.n的值 什么时候会用到双重所有格 已知向量a=(-2,1,3),向量b=(-1,2,1)若向量a⊥(向量a - m向量b),则实数m的值 描写雨的诗要整首诗!急 双重所有格用法,of+'s结构 什么是所有格?a friend of my father‘s 出现这种情况是因为在一个名词前通常只用一个限定词(我不明白这句话啥意思)
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘