【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

Cayley:Google 开源的图数据库

  • 2014-06-30
  • 本文字数:908 字

    阅读完需:约 3 分钟

近日,Google 开源了图数据库 Cayley 。Cayley 是受 Freebase 和 Google 的 Knowledge Graph 背后的图数据库 graphd 所启发,由 Google 工程师 Barak Michener 开发的一款开源图数据库。图数据库是一种 NoSQL 数据库,适合处理大量复杂、互连接、低结构化的数据。图数据库与其他数据库不同,它更擅长描述数据之间的关系,所以被大量用于社交网络、推荐系统等专注于构建关系图谱的系统。

Cayley 使用 Go 语言编写,创始人 Barak 在博客中解释了选择 Go 的原因,“Cayley 需要支持高速且大并发的存取,Go 看起来是不错的选择。基于官方提供的标准包以及社区开源的包,开发过程中的一些大的障碍已经得以解决,再结合 Go 的并发模式,开发一个比 graphd 性能更高的图数据库成为可能。”

Cayley 的目标是成为开发者在 Linked Data 和图数据(语义网络、社交网络等)的工具之一。初步性能测试表明,在普通 PC 硬件和硬盘上,基于 LevelDB 存储的 Cayley 跑 1.34 亿三元组毫无压力,多跳交叉查询(比如有 X 和 Y 两位影星同时出演的电影)只需 150ms。Cayley 的主要特点如下:

  • Go 语言实现
  • 运行简单(三四条命令)
  • RESTful API(或者 REPL)
  • 内置查询编辑器和可视化工具
  • 支持多种查询语言:JavaScript、MQL
  • 多种后端存储数据库:LevelDB(单机)、MongoDB 或者内存
  • 模块化设计,容易扩展
  • 良好的测试覆盖
  • 速度快

值得注意的是,虽然 Cayley 在 GitHub 上放在 Google 名下,但它却不是 Google 官方项目,只是得到了 Google 的许可,由其员工创建并维护,类似的项目也有很多,比如 Protocol Buffers、AngularJS。

目前社区中比较成熟的图数据库是 Neo4j,它是一个用 Java 实现、完全兼容 ACID 的图形数据库。Cayley 与 Neo4j 相比最大的优势可能就是免费(Neo4j 不完全免费,使用全部功能需要有商业许可),关于二者性能的比较目前社区中还没有,相信接下来会有比较多的对比类文章。另外,在 Hacker News 上有开发者也提到另外一款图数据库 Orly ,从其 GitHub 状态来看,发展势头也不错。

感兴趣的读者可以观看 Google IO 大会上《构建一个小的知识图谱》主题演讲来了解 Cayley。在 GAE 上也运行了一个 Cayley 的案例,包括 30000 部电影以及它们的演员、角色、导演信息,读者可以测试学习。

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2014-06-30 05:5514731
用户头像

发布了 219 篇内容, 共 134.9 次阅读, 收获喜欢 190 次。

关注

评论

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

Vue项目的创建和托管

Python研究所

6月月更

效率提升 100%,YRCloudFile 让自动驾驶安全更有保障

焱融科技

人工智能 自动驾驶 大数据 数据存储

制造业项目MDM主数据项目实施心得

agileai

数据治理 数据集成 企业服务总线 项目实施 制造业项目

NFT质押流动性挖矿系统开发技术

薇電13242772558

NFT 流动性挖矿

【6.16-6.24】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

Guava中这些Map的骚操作,让我的代码量减少了50%

码农参上

JAVA开发 Guava java工具包

实时渲染:实时、离线、云渲染、混合渲染的区别

Finovy Cloud

渲染 云渲染

如何实现一套容器(C 语言版)2

祖维

c 容器 泛型 迭代器 双向链表

超大规模AI异构计算集群的设计和优化

Baidu AICLOUD

大模型训练 异构计算

全上链哈希游戏dapp系统定制(方案设计)

开发微hkkf5566

特尔携手微软发挥边云协同势能,推动AI规模化部署

科技之家

全链路业务追踪落地实践方案

云智慧AIOps社区

运维 AIOPS 解决方案 全链路追踪

无界共创,明道云参与广汽本田IT新技术展

明道云

车白兔:自助共享洗车机哪家好

共享电单车厂家

自助洗车机 自助洗车加盟 车白兔自助洗车

心楼:华为运动健康的七年筑造之旅

脑极体

科创人·味多美CIO胡博:数字化是不流血的革命,正确答案藏在业务的田间地头

科创人

模块五

Geek_2ce415

NFT双币质押流动性挖矿系统开发

开发微hkkf5566

在shiro基础上整合jwt,可在项目中直接使用呦

阿Q说代码

springboot Java EE 权限验证 shiro整合jwt

共享自助洗车24小时不打烊受青睐

共享电单车厂家

共享自助洗车 自助洗车 自助洗车加盟

Java—Servlet

武师叔

6月月更

【计算讲谈社】第三讲:如何提出关键问题?

大咖说

逻辑学 辩证思维 关键问题

图像搜索应用场景(个人见解,欢迎补充)

Geek_e369a5

什么是图像搜索 图像搜索的应用场景 拍照购物用图像搜索的作用

共享智能自助洗车现在市场如何

共享电单车厂家

自助洗车加盟 自助洗车市场 共享智能自助洗车

车白兔:洗车新模式共享自助洗车

共享电单车厂家

自助洗车 自助洗车加盟 车白兔洗车

Redis+Caffeine两级缓存,让访问速度纵享丝滑

码农参上

redis 缓存 JAVA开发 Caffeine

传统的IO存在什么问题?为什么引入零拷贝的?

源字节1号

Bytebase加入阿里云PolarDB开源数据库社区

阿里云数据库开源

阿里云 开源数据库 polarDB PolarDB-X 阿里云数据库

解密安卓微信聊天信息存储

ooooooh灰灰

Go sqlite 微信 后端 SqlCipher

共享洗车机多少钱一台?看品牌

共享电单车厂家

自助洗车机价格 自助洗车加盟 共享洗车机多少钱

面试官:你说你精通Redis,你看过持久化的配置吗?

阿Q说代码

redis aof rdb 数据持久化

Cayley:Google开源的图数据库_Google_小盖_InfoQ精选文章