在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

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:002255
用户头像

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

关注

评论

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

Apifox 1月更新:性能测试、多人协作接口实时同步功能全面解析

Apifox

程序员 性能测试 Apifox API 接口工具

2023 年度龙蜥最佳用户案例奖揭晓,中国移动、小红书、中国人寿财险等企业上榜!

OpenAnolis小助手

开源 操作系统 用户案例 龙蜥社区 商业版

魔搭+ 函数计算: 一键部署,缩短大模型选型到生产的距离

Serverless Devs

容器 云原生 中间件 函数计算 函数计算FC

惊为天人!这个保存推特视频到手机相册的办法真的一绝!

frank

twitter

SpringBoot3集成Zookeeper

Java 架构 SpringBoot3 Zookeeper3.8 Curator5.5

Web3 游戏开发者的数据分析指南

Footprint Analytics

区块链 区块链游戏 #Web3 web3游戏

华为云幻兽帕鲁服务器搭建教程(Windows平台)

YG科技

理解ETF的风险:透明度高、投资组合清晰可见背后的考量

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

元宇宙技术对于虚拟仿真应用的一些帮助

3DCAT实时渲染

虚拟仿真 元宇宙 元宇宙解决方案

实现定时任务的六种策略

不在线第一只蜗牛

前端 定时任务 开发

外贸独立站如何SEO优化推广?

九凌网络

Yuliverse:引领区块链游戏新篇章!

Footprint Analytics

区块链游戏 元宇宙 链游 Web3 游戏

定向减免!函数计算让 ETL 数据加工更简单

Serverless Devs

容器 云原生 中间件 函数计算 函数计算FC

聚道云连接器:实现航信费控与用友NCC对接,助力某商贸集团业务升级

聚道云软件连接器

案例分享

软件测试学习笔记丨抓包工具Charles实战

测试人

软件测试

速看!盘点这一年 OpenTiny 都在做什么?

OpenTiny社区

开源 前端 低代码 组件库

OpenKruise :Kubernetes背后的托底

华为云开发者联盟

开发 华为云 华为云开发者联盟

走出大模型部署新手村!小明这样用魔搭+函数计算

Serverless Devs

容器 中间件 函数计算 函数计算FC

低代码(Low-Code)技术简化开发难度,快速搭建应用

互联网工科生

软件开发 低代码 数字化 JNPF

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