写点什么

RethinkDB 已经将其数据库移植到 Windows

  • 2016-02-14
  • 本文字数:1054 字

    阅读完需:约 3 分钟

RethinkDB 已经推出了其数据库的 Windows 版本。该版本耗时一年开发,可以运行在 64 位 Windows 操作系统上,目前尚处于 Beta 测试阶段。

考虑到此次移植所付出的巨大的时间成本,我们采访了 RethinkDB 联合创始人 Michael Glukhovsky,了解更多关于其数据库 Windows 版本的细节。

InfoQ:将 RethinkDB 移植到 Windows,最困难的部分有哪些?

MG:RethinkDB 的异步 I/O 操作依赖特定于平台的 API。Windows 上的相关 API 同 Linux 的 epoll 和 OS X 的 kqueue 有很大的不同。在 Linux 上,开发人员使用 epoll 获取通知,让他们知道一个描述符已经读或写就绪。在 Windows 上,开发人员使用 I/O 完成端口(IOCP),这需要将异步操作进行排队,并在操作成功或失败时发送通知。改写构建系统是另一个主要的难点。我们必须在 Windows 上统一编译所有第三方开源依赖。

InfoQ:RethinkDB 有一个跨不同操作系统的公用代码库吗?

MG:是的,RethinkDB 有一个统一的跨平台代码库。不过,有些特定于平台的代码路径依赖于本地平台的 API。在我们的 GitHub 库中,有一个arch目录,其中包含了所有特定于平台的代码。据我们估计,RethinkDB 有 3% 到 4% 的源代码是特定于某个操作系统的。

InfoQ:Windows 版本的功能同 Linux 和 OS X 版本一样吗?

MG:RethinkDB on Windows 在功能上与 Linux 和 OS X 版本相同。该数据库的特性在所有三个平台上都是一致的。不过,我们仍然在优化 Windows 版本,以便它达到同样的性能。

InfoQ:您能给我们大体介绍下路线图上有哪些特性吗?

MG:对于新的 Windows 移植,我们正努力让开发人员可以将数据库作为一个 Windows 服务运行。更广泛地讲,我们正在实现一些安全特性,如支持数据库用户账户和权限。此外,我们还在扩展数据库的实时处理能力,让开发人员可以在更多的操作中使用 changefeeds。

RethinkDB 是一个开源、分布式、可扩展的数据库,可以配置用于实时向应用程序推送数据变化通知,而不是让应用程序不断地轮询数据库变化。 InfoQ 过去曾经介绍过 RethinkDB

Kyle Kingsbury Jepsen 系列文章的作者,他最近对 RethinkDB 进行了测试,以核实它在使用majority读 & 写时是否支持线性操作。Kingsbury 总结道:

据我所知,RethinkDB 的安全声明是准确的。如果写操作的一致性水平低于majority,那么可能会丢失更新,并在使用singleoutdated读时遇到各种读异常,但是majority/majority似乎是线性的。

关于这一点,我们建议读者阅读 Kingsbury 详细介绍有关测试执行和测试结果的博文来了解更多信息。

查看英文原文: RethinkDB Has Ported Their Database to Windows

2016-02-14 18:002094
用户头像

发布了 1008 篇内容, 共 430.9 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

拼多多的数字农业三部曲:新技术、新农人、新商路

Alter

数字农业

1688跨境寻原通数据接口对接:跨境电商卖家必看!

tbapi

1688API 1688代采系统 1688跨境寻源通 1688跨境代采

公链实体矿机矿池搭建系统开发指南

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 钱包开发 代币开发

雷鸟发布 AR 眼镜雷鸟 Air 3:售价 1699 元;苹果 M4 版 iMac 发布 10999 元起丨 RTE 开发者日报

声网

解锁热带雨林:Mint Expedition 第四季正式开启!

NFT Research

blockchain NFT\ #Web3

商家下载中心设计演进之路|得物技术

得物技术

Java 后端 架构设计

图像生成新范式:智源推出全能视觉生成模型 OmniGen

智源研究院

淘宝商品评价API的获取与应用

科普小能手

API 接口 API 测试 淘宝API接口 淘宝API 淘宝商品评价接口

HDFS 统一存储实战经验|京东零售技术实践

京东零售技术

大数据 数据

构建区块链生态系统:公链、浏览器、钱包与节点搭建全攻略

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 钱包开发 代币开发

基于纯血鸿蒙开发,微信适配情况如何?

博文视点Broadview

ppt文字描边怎么设置?用这2个软件轻松制作!

职场工具箱

职场 PPT 办公软件 AI生成PPT

ApsaraMQ Serverless 能力再升级,事件驱动架构赋能 AI 应用

阿里巴巴云原生

阿里云 云原生 消息队列

阿里云消息团队创新论文被软件工程顶会 FM 2024 录用

阿里巴巴云原生

阿里云 云原生 消息队列

威睿能源:赋能绿色转型,打造低碳未来

科技热闻

如何通过事件溯源实现百万TPS全内存撮合交易引擎

Damon

事件溯源 撮合交易系统 全内存

JVM 调优深度剖析:优化 Java 应用的全方位攻略(一)

王中阳Go

Java JVM

利用 EMQX ECP 实现边缘服务配置的版本管理与参数化下发

EMQ映云科技

边缘计算 智能IoT边缘服务 emqx EMQX ECP

【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(4)

HarmonyOS SDK

HarmonyOS

主动写入流对@ResponseBody注解的影响

京东科技开发者

分布式服务高可用实现:复制

京东科技开发者

无代码时代来临,程序员面临淘汰?

积木链小链

程序员 IT 无代码 无代码平台

NFTScan | 10.21~10.27 NFT 市场热点汇总

NFT Research

NFT\

Docker运行环境安装

京东科技开发者

如何与上级保持良好关系

老张

职场 升职加薪 沟通方式

如何技术上配置对接Teams Direct Routing

cts喜友科技

通讯 云通讯 通讯通信

RethinkDB已经将其数据库移植到Windows_数据库_Abel Avram_InfoQ精选文章