NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

开源再添生力军 FoundationDB Record Layer

  • 2019-01-15
  • 本文字数:1104 字

    阅读完需:约 4 分钟

开源再添生力军 FoundationDB Record Layer

2019 年 1 月 14 日,FoundationDB Record Layer 开源版本正式发布!


诞生之初,FoundationDB 就被设计为具有简单 API 的高度可扩展的键值存储,而 Layer 则是通过添加功能和数据模型来扩展数据库的功能,并支持新的存储访问模式。刚刚开源的 FoundationDB Record Layer 在 FoundationDB 之上提供了关系数据库语义,具有模式管理、索引功能和丰富的查询功能。


据悉, Record Layer 已经应用在 Apple 的生产系统中,支持数亿用户的应用程序和服务。

基于 FoundationDB 的面向记录的数据库

Record Layer 可以像关系数据库一样存储结构化数据, Record Layer 管理的数据库支持具有字段和类型、模式、复杂的主索引和辅助索引以及声明性查询执行的记录。 Record Layer 还包括了传统关系数据库中不常见的功能,例如支持复杂的嵌套数据类型、记录提交时的索引以及跨不同类型记录的索引和查询。


基于 FoundationDB 的 Record Layer 不仅继承了 FoundationDB 的 ACID、可靠性和性能,而且使用 FoundationDB 的事务语义提供了类似于传统关系数据库的功能。例如, Record Layer 的二级索引是以事务方式维护的,因此它们始终与最新的数据更改保持同步,减少了应用程序代码中的错误数量,大大简化了应用程序开发。

可应用于大规模数据库实例

Record Layer 可应用于大规模数据库实例,支持在单个 FoundationDB 集群中管理数百万个离散数据库实例。它的设计和核心功能集可以扩展到数百万并发用户和各种客户端应用程序生态系统中,每个客户端应用程序可具备自己的数据模型和查询访问模式。


为了简化操作, Record Layer 是无状态的,扩展就像启动实例一样简单。在面对各种各样的工作负载时, Record Layer 会以可预测的方式来平衡用户之间的资源消耗,并且 Record Layer 也可根据用户需求的增长来弹性扩展。


Record Layer 新特性:


  • 将记录表示为协议缓冲区消息,提供行业标准序列化和模式演化,支持嵌套和重复字段等功能;

  • 支持利用协议缓冲区数据模型的事务性二级索引以及各种高级索引类型,包括聚合索引,如分组计数、全文索引、序数排名索引和可扩展功能索引。在可能的情况下,还可利用高级 FoundationDB 特性,例如原子突变。

  • 包含用于检索数据的声明性查询 API 和用于将这些查询转换为具体数据库操作的查询计划器。

  • 以完全无状态的方式操作。可在毫秒内实例化逻辑数据库并执行操作;资源约束,允许限制任何给定的操作或查询;允许将控制权交还给客户端,并与其它客户端共同迭代;

  • 提供大量深层扩展点。例如,用户可以构建自定义索引维护器和查询计划功能; Layer 的序列化 API 支持客户端定义的加密和压缩算法。


参考链接:https://www.foundationdb.org/blog/announcing-record-layer/


2019-01-15 19:076694
用户头像

发布了 34 篇内容, 共 27.9 次阅读, 收获喜欢 58 次。

关注

评论

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

「Android渲染」为什么alpha渲染性能低?

李小四

Android渲染 Alpha 渲染

华仔架构实战营 - 作业 - 模块1

曲元洪

架构实战营

区块链:颠覆其外,守旧其中

CECBC

互联网

架构实战营-课后作业-模块1

如何在Deno中使用 Node 模块?

Sakura

4月日更

架构实战营 模块一:课后作业

👈

架构实战营

【LeetCode】森林中的兔子Java题解

Albert

算法 LeetCode 4月日更

回归本我还是追逐名利,技术人在中年危机下的抉择?

刘华Kenneth

管理 职场 中年危机

与JVM做朋友系列(2)再见类加载器

洛神灬殇

JVM ClassLoader 类加载器

区块链走红 江苏多行业应用迈入"可信时代"

CECBC

农产品

ARST- 日常打卡2

pjw

Netty 核心源码解读 —— EventLoop 篇

松然聊技术

与JVM做朋友系列(3)又见Class字节码

洛神灬殇

JVM X86 stack register

博客主题用腻了?来试试赛博朋克 2077 主题吧!

清秋

CMS Hexo 博客 4月日更

没有lrzsz,怎么传文件到服务器?

运维研习社

运维 工具

喂~ 办章吗?Python OpenCV 互联网+ 项目,图像处理取经之旅第 18 天

梦想橡皮擦

Python OpenCV 4月日更

大数据计算生态之数据计算(二)

小舰

4月日更

Vue3源码 | 读懂keep-alive组件以及缓存机制

梁龙先森

源码分析 大前端 Vue3

架构师实战营 模块一作业(微信业务架构和学生管理系统架构备选方案)

代廉洁

架构实战营

区块链开发主流语言和核心优势

CECBC

区块链

【极客大学】模块一作业

冬天的树

架構設計訓練營作業1

海罗沃德

架构实战营

元数据管理—动态表单设计器在crudapi系统中完整实现

crudapi

API crud crudapi 动态表单 表单设计

Redis 集群

escray

redis 学习 极客时间 Redis 核心技术与实战 4月日更

如何做决策?

石云升

决策 28天写作 职场经验 管理经验 4月日更

模块一作业

c

架构实战营

去面试,公司问我生辰八字。

yes

面试

架构实战营 模块一:学习总结

👈

架构实战营

「架构师训练营 4 期」 第十三周 - 001&2

凯迪

架构师训练营 4 期

树莓派第一天的各种坑

IT蜗壳-Tango

4月日更

架构实战营 模块1 课后作业

唐高为

架构实战营

开源再添生力军 FoundationDB Record Layer_数据库_甜梨_InfoQ精选文章