11 月 19 - 20 日 Apache Pulsar 社区年度盛会来啦,立即报名! 了解详情
写点什么

Lovefield:谷歌开发的类似 SQL 的查询引擎

  • 2014-11-27
  • 本文字数:874 字

    阅读完需:约 3 分钟

Lovefield 是一个 JavaScript 库。它为希望利用关系型数据库优点的 Web 开发人员提供了一个类似 SQL 的查询引擎。

早在 2010 年, Chrome 4 就包含了 WebSQL Database API ,尝试向 Web 开发人员提供一种 SQL 数据存储。Chrome 的持久化存储是 SQLite。Safari 开发人员也致力于支持该 API。问题在于,W3C 停止了该 API 规范的制定工作,因为“所有感兴趣的实现者都使用了相同的 SQL 后端(SQLite), 但是,他们需要多种独立的实现才能沿着标准化的道路继续前进。”W3C 继续致力于 Web Storage Indexed Database API 方面的工作,两者都为主流浏览器所广泛采用,其中前者是一个简单的键值存储解决方案。

Lovefield 是一个跨浏览器的类似 SQL 的查询引擎。现在,谷歌希望通过它再次为开发人员提供关系型数据库。Lovefield 并不包含 SQL 查询分析器,但它以 JavaScript 库的形式提供对 SQL 2003 的一个有限子集的支持。开发人员可以使用 JavaScript 函数调用查询数据库。该引擎使用 IndexedDB 作为持久化存储,但为便于测试,它也可以运行在基于内存的临时存储上。Demetrios Papadopoulos 是 Chrome 团队的一名开发人员。据他介绍,Lovefield 适用于对存储需求较小的应用程序:数据集当前限制在2GB,数据在5 万行之内时,引擎性能尚有保证,但将来其性能还会提升。

Lovefield 支持:

  • 查询:select、insert、update、delete
  • 事务
  • 完整性约束检查
  • 聚合函数(count、min、max、sum、avg、stddev、distinct)
  • 多表关联
  • 模式升级
  • Promises
  • 其设计考虑了低端设备
  • 可以在 Chrome、Firefox 和 IE 10 上运行,并提供了必要的 Polyfill。在有一种“可用的”IndexedDB 实现之前,对 Safari 的支持暂时不会进行。

有些 SQL 功能将不会实现,如游标、视图、子查询和触发器。

虽然没有提供详细信息,但谷歌提到,他们计划未来将这项技术标准化,而且他们已经把它用在了 Chrome 应用、 Google Play Movies&TV 中。

Lovefield 目前只支持 JavaScript,但将来它可能会增加对其它语言的支持。Dart 是一种可能。

相关资源: Lovefield 规范设计 GitHub 库

查看英文原文:**** Lovefield: An SQL-like Query Engine by Google

2014-11-27 12:472933
用户头像

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

关注

评论

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

【LeetCode】链表的中间结点Java题解

Albert

LeetCode 5月月更

Linux环境下部署Jpress大型博客网站

jiangxl

火山引擎大规模机器学习平台架构设计与应用实践

火山引擎开发者社区

人工智能 机器学习

代码语言的魅力

百度Geek说

企评家 |上海家化联合股份有限公司成长性评价简介

企评家

Seata x 2022 开源之夏 ,一起来做开源达人!

阿里巴巴云原生

阿里云 云原生 seata 开源之夏

Cocos creatorの摇杆操控运动

空城机

Cocos 5月月更

linux之grep使用技巧

入门小站

Linux

JAVA程序对应不同的部署环境针对配置文件如何管理

jiangxl

Java tomcat

通过JConsoler监控Tomcat的JVM内存

jiangxl

吐血整理!42个人工智能机器学习数据集推荐!

澳鹏Appen

人工智能 机器学习 大数据 计算机视觉 数据集

企评家 |江西长运股份有限公司成长性评价简介

企评家

云钉一体:EventBridge 联合钉钉连接器打通云钉生态

阿里巴巴云原生

阿里云 云原生 事件总线 EventBridge

Java 8 开始新增的 Optional 类 - Optional 对象中的返回

HoneyMoose

Flutter 开源状态管理插件一览

岛上码农

flutter ios 安卓 移动端开发 5月月更

Redis「7」实现分布式锁

Samson

redis 学习笔记 5月月更

毫秒级返回数据,58同城 DBA 团队选择 TDengine 解决传感器数据处理难题

TDengine

数据库 tdengine

“学生管理系统”毕设架构设计

Pengfei

架构设计原则

⭐万字长篇超详细的图解Tomcat中间件方方面面储备知识⭐

jiangxl

tomcat Java web

二分实现及工程使用—Kafka

秋名山码民

算法 java 编程 5月月更

开启Tomcat管理注主页功能

jiangxl

tomcat

企评家,企业成长性评价为创业板企业投融资决策提供信息支持

企评家

Bootstrap 和 WordPress 的区别

海拥(haiyong.site)

bootstrap Wordpress 博客部署 WordPress 5月月更

数据库连接池 -Druid 源码学习(八)

wjchenge

Druid 数据库连接池

在线文本列表差集计算工具

入门小站

工具

基于Redis6.2.6版本部署Redis Cluster集群

jiangxl

在线HTML转CSV工具

入门小站

工具

微信业务架构&学生管理系统架构

intelamd

架构实战营 模块一作业

Gor

AAAI2022 生成方向推荐(上)| 评价指标 & 常识生成

infoQ-LolitaAnn

5月月更

Tomcat安全优化

jiangxl

tomcat Java web

Lovefield:谷歌开发的类似SQL的查询引擎_数据库_Abel Avram_InfoQ精选文章