低代码到底是不是行业毒瘤?一线大厂怎么做的?戳此了解>>> 了解详情
写点什么

LinkedIn Engineering 发布 SenseiDB 1.0.0

2012 年 3 月 21 日

LinkedIn Engineering 发布并开源了其分布式、半结构化数据库 SenseiDB 。SenseiDB 是 LinkedIn 背后搜索基础架构使用到的技术,LinkedIn 主页、 LinkedIn Signal 以及其他搜索功能(如人员 / 公司搜索)均使用了 SenseiDB。SenseiDB 最初是因为公司需要,由内部人员开发,而现在它以开源方式发布在 Search, Network, Analytics 项目之下。

SenseiDB 是一个 NoSQL 数据库,它专注于高更新率以及复杂半结构化搜索查询。熟悉 Lucene 和 Solor 的用户会发现,SenseiDB 背后有许多似曾相识的概念。SenseiDB 部署在多节点集群中,其中每个节点可以包括N 块数据片。 Apache Zookeeper 用于管理节点,它能够保持现有配置,并可以将任意改动(如拓扑修改)传输到整个节点群中。SenseiDB 集群还需要一种模式用于定义将要使用的数据模型。

从SenseiDB 集群中获取数据的唯一方法是通过 Gateways (它没有“INSERT”方法)。每个集群都连接到一个单一 gateway。你需要了解很重要的一点是,由于 SenseiDB 本身没法处理原子性(Atomicity)和隔离性(Isolation),因此只能通过外部在 gateway 层进行限制。另外,gateway 必须确保数据流按照预期的方式运作。内置的 gateway 有以下几种形式:

应用程序开发人员还可以自定义 gateway。这里是一个 gateway 示例,它从 Twitter 更新中获取数据。

通过借助输入数据流将数据送入集群,SenseiDB 允许使用定义好的模式进行多方位查询。为此,它还提供了一个可由任意 HTTP 客户端访问的 REST API 。该 API 的灵感来源于 ElasticSearch’s Query DSL 。SenseiDb 还为 API 提供了 Java 和 Python 封装,相信 Ruby 版本很快也会出现。

最后,SenseiDB 提供了浏览查询语言(Browse Query Language,简称BQL)作为另一种查询方式。BQL 类似SQL(目前仅包含SELECT 语句),它可以用一种更方便的方式查询SenseiDB。此外,集群安装还附带了一个图形化Web 控制台,用作对BQL 查询进行检查和调试。

想要了解更多信息,请查阅文档 Javadocs Wiki 。SenseiDB 的源代码托管在 GitHub 上。

查看英文原文: LinkedIn Engineering Releases SenseiDB 1.0.0

2012 年 3 月 21 日 09:052378
用户头像

发布了 125 篇内容, 共 29.2 次阅读, 收获喜欢 2 次。

关注

评论

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

第三周作业

晴空万里

第七周作业

Geek_ce484f

极客大学架构师训练营

第七周作业

fmouse

极客大学架构师训练营

架构 2 期 - 第三周作业(1)

浮生一梦

极客大学架构师训练营 第三章作业 2组

JVM真香系列:轻松理解class文件到虚拟机(上)

田维常

JVM

简单工厂模式

猴子胖胖

golang 设计模式

第七周作业总结

Geek_ce484f

极客大学架构师训练营

【第七周】课后作业

云龙

[架构师训练营第 1 期] 第七周命题作业

猫切切切切切

极客大学架构师训练营

《一本小小的MyBatis源码分析书》.pdf

田维常

电子书

性能优化一第七周作业「架构师训练营第 1 期」

天天向善

架构师训练营 第三周作业

文江

第三周学习总结

晴空万里

架构一期第七周作业

Airs

设计模式

小黄鱼

极客大学架构师训练营

多团队如何评估故事点(译) ——来自Mike Cohn的建议

Bruce Talk

敏捷开发 Agile 估算与计划

Architecture Phase1 Week7:Summarize

phylony-lu

极客大学架构师训练营

《Java并发编程的艺术》.pdf

田维常

电子书

JVM真香系列:轻松理解class文件到虚拟机(下)

田维常

JVM

架构师训练营第 7 周课后练习

叶纪想

极客大学架构师训练营

架构师训练营第七周课程笔记及心得

Airs

7.7 第七周课后练习

张荣召

第七周总结

fmouse

极客大学架构师训练营

应用实战——数据库设计时设计标识字段的一些思考【mysql】

老农小江

数据库设计 实战

架构师训练营第三周作业

leo

极客大学架构师训练营

架构师训练营第三周学习笔记

李日盛

设计模式

架构师训练营第 1 期 -第七周作业

睁眼看世界

极客大学架构师训练营

性能测试中并发量与响应时间和吞吐量的关系

天天向上

极客大学架构师训练营

week07作业

追风

架构师一期

[架构师训练营第 1 期] 第七周学习总结

猫切切切切切

极客大学架构师训练营

组合模式

猴子胖胖

golang 设计模式

2021 ThoughtWorks 技术雷达峰会

2021 ThoughtWorks 技术雷达峰会

LinkedIn Engineering发布SenseiDB 1.0.0-InfoQ