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精选文章