Windows是如何把SQLServer数据库引入到Linux的
小职 2018-07-02 来源 : 阅读 1373 评论 0

摘要:本文主要向大家介绍了Windows是如何把SQLServer数据库引入到Linux的,通过具体的内容向大家展示,希望能对大家学习SQLServer数据库有所帮助。

本文主要向大家介绍了Windows是如何把SQLServer数据库引入到Linux的,通过具体的内容向大家展示,希望能对大家学习SQLServer数据库有所帮助。

译者注:你是否平时的工作是用的是Linux操作系统,但公司的重要项目使用的是SQL Server,你曾经是否因此而鲲熬过?现在告诉你个好消息,微软已经在2017版本中,将SQL Server数据库引入到了Linux等开源系统中去了,作者在本文详细介绍了这其中的过程。以下为译文。 

 


早在2016年,当微软宣布SQL Server将很快在Linux上运行时,这一消息对用户和权威人士来说都是一个巨大的惊喜。在过去的一年中,微软对Linux(总之就是开源的操作系统)的支持已经十分重视,公司的使命似乎已经变成了只要哪里有用户,哪里就必须得有SQL Server工具。 

微软今天发布了SQL Server 2017的第一个候选版本,这将是第一个在Windows、Linux和Docker容器上运行的版本。仅Docker容器就已经吸引了超过100万的申请,因此毫无疑问,会有很多人对这款新版本非常感兴趣。尽管新版本有很多需要改进的地方,但SQL Server 2017支持Linux仍然是这个版本最重要的突破。 

在今天发表声明之前,我与微软的数据库系统组的总经理罗汉·库马尔进行了交谈,了解了这个项目的历史,以及他的团队如何成功地将SQL Server这么复杂的软件给引入到Linux中去的。在微软工作了18年的库马尔指出,他的团队注意到许多企业开始使用SQL Server作为z重要任务的工作负载。但与此同时,这些企业的工作环境也是组合的,包括Windows Server和Linux。对于许多这样的企业来说,无法在Linux上运行他们的数据库成为了一个瓶颈。 

“经过企业的谈话,很明显,我们觉得这么做是必要的,”库马尔说,“我们正在强制客户使用Windows作为他们选择的平台。”在微软的另一个化身中,这可能会被视为积极的东西,但该公司今天的战略却大不相同。 

库马尔还指出,许多企业都在寻找Oracle数据库产品的替代品。毕竟如果想要运行Linux,并使用具有完全企业支持的专有关系型数据库,那么你可能就不得不选择Oracle了。 

正如库马尔告诉我的,这并不是他的团队第一次希望可以支持Linux。他告诉我:“过去我们曾进行过几次讨论,但没有得到批准。”他说:“对于企业来说,这并不是一种战略”。但这已经是三年前的观点了-现在随着萨提亚·纳德拉成为了微软的掌舵人,这个团队决定再次提出这个想法。“我们反反复复的查看反馈消息,”他说:“看到这些决定的速度有多快,真让人感到惊讶。” 

位于雷德蒙德一家越南餐馆的照片前,团队最后决定继续推进这个项目。但是,在做出这个决定之后,这个团队现在面临着一项艰巨的任务:如何将数千万条SQL Server代码移植到Linux上?库马尔也不想在功能上做出任何妥协,因此要么必须是SQL Server的全部核心,要么就是什么都不做(目前,这排除了公司在Windows上提供的图形用户界面和工具)。 

Windows是如何把SQLServer数据库引入到Linux的

该团队在一个已经存在于微软的项目中找到了答案:Drawbridge。Drawbridge是一个在2011年启动的研究项目,它提供了一个容器,它提供了一个小的API表面和一个基础版本的Windows,可以有效地在容器中运行应用程序。这里的想法基本上是建立更好更安全的虚拟机。然后,库操作系统执行应用程序,处理内存管理和其他重要功能,并与底层操作系统集成。 

大约两年前,SQL Server团队决定将其作为Linux工作的核心。“领导层表现出了适量的关心,”库马尔评论道,“我的猜测是,鉴于Drawbridge是一个实验性的项目,人们确实对此感到担忧。”但是SQL Server团队接管了Drawbridge代码库,并将其添加到SQL操作系统层中。 

在许多方面,这个操作系统层是使这个项目成为可能的原因。由于SQL Server的需求总是超出了Windows和Windows服务器所能提供的,尤其是在内存管理方面,团队已经将许多标准OS特性构建到SQL Server的OS层中。因此,在Drawbridge中,SQL Server也可以管理自己的内存。这方面的工作非常成功,团队不仅在Linux上构建了SQL Server,还将SQL操作系统和它在Drawbridge上所做的工作合并到新的SQL平台抽象层上,这一层现在在Windows和Linux上运行。 

因此,SQL Server团队可以从一个单独的代码库工作,并且不必担心代码的运行位置(这包括Microsoft的Azure平台)。 

Linux的SQL Server应该在今年晚些时候就可以正式运行了。即使在今天,一些公司已经在生产环境中使用了它,而Linux版本的运行速度和Windows版本一样快(假设硬件一样)。 

除了最终将版本发布出来外,库马尔指出,团队将密切关注下一步该做什么。尽管数据库领域的创新仍在继续加速,但并不是所有的微软客户都希望他们的任数据库版本可以做到每年(甚至更快)更新一次。不过,鉴于我们最近看到SQL Server 2016和2017年发布的SQL Server版本,我对SQL Server 2018预览版的发布将充满信息。

本文由职坐标整理并发布,了解更多内容,请关注职坐标SQL Server数据库频道!

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程