写点什么

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

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

关注

评论

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

android开发艺术探索pdf百度网盘,Android开发快速上手

android 程序员 移动开发

android开发艺术探索pdf百度网盘,已开源下载

android 程序员 移动开发

android程序员面试笔试宝典,完整版开放下载

android 程序员 移动开发

android手机开发工具,重磅消息

android 程序员 移动开发

android混合开发,【高级Android架构师系统学习】

android 程序员 移动开发

android物联网开发李天祥源代码,实现原理讲解

android 程序员 移动开发

android直播开发,自学编程找工作

android 程序员 移动开发

Android研发岗面试复盘总,成功入职字节跳动

android 程序员 移动开发

android音视频何俊林,音视频开发进阶指南

android 程序员 移动开发

android开发教程百度网盘,Android并发原理解析

android 程序员 移动开发

android开发教程百度网盘,app架构师

android 程序员 移动开发

android开发面试准备,程序员翻身之路

android 程序员 移动开发

Android高级工程师每日面试题精选,重要概念一网打尽

android 程序员 移动开发

android面试题及答案2019,rxjava原理面试

android 程序员 移动开发

Android面试题集锦在这里,Android开发面试基础

android 程序员 移动开发

android开发艺术探索pdf百度网盘,送大厂面经一份

android 程序员 移动开发

android棋牌游戏开发,阿里P8亲自教你

android 程序员 移动开发

android界面开发经典书籍,你真的了解Android系统启动流程吗

android 程序员 移动开发

android项目开发实战入门百度网盘,【面试总结】

android 程序员 移动开发

精品 IDEA 插件大汇总!值得收藏

程序员鱼皮

spring 编程 后端 插件 java

android算法面试题,附超全教程文档

android 程序员 移动开发

android音视频面试,小程序开发教程

android 程序员 移动开发

android音频面试题,android组件化开发框架

android 程序员 移动开发

android开发教程百度网盘,重磅消息

android 程序员 移动开发

android开发者选项,你不懂还不学

android 程序员 移动开发

android网络开发技术答案,retrofit原理

android 程序员 移动开发

android文件下载,androidframework开发

android 程序员 移动开发

android游戏开发入门,精心整理

android 程序员 移动开发

Android研发岗面试复盘总,你们觉得作为一名程序员最大的悲哀是什么

android 程序员 移动开发

android开发教程百度网盘,985研究生入职电网6个月

android 程序员 移动开发

BAT这种大厂履历意味着什么,字节跳动资深面试官亲述

android 程序员 移动开发

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