Lovefield — функциональный SQL-подобный движок на JavaScript для запросов в БД
3Иллюстрация с сайта Lifehack.Org
Компания Google анонсировала под свободной лицензией новый JavaScript-движок запросов в БД, предназначенный для веба и предоставляющий SQL-подобный синтаксис.
Необходимость такого движка появилась несколько лет назад. Однако попытки разработать и стандартизировать WebSQL, начавшиеся в 2010 году, завершились ничем. Соответственно, разработчики так и не получили кроссбраузерного решения для реляционных БД в веб-клиентах. Существующие решения вроде IndexedDB и LocalStorage больше соответствуют объектно-ориентированным хранилищам и не обладают возможностями, соответствующими реляционным СУБД.
Эту задачу и решает богатый возможностями движок запросов Lovefield. В качестве бэкенда он использует IndexedDB и предоставляет интуитивный SQL-подобный декларативный синтаксис, снижая тем самым трудозатраты разработчиков. В движке не используется парсинг запросов, что обеспечивает иммунитет к SQL-инъекциям. Возможности Lovefield включают в себя:
- поддерживаются запросы SELECT, INSERT, UPDATE, DELETE;
- атомарность с понятной семантикой транзакций;
- проверки на сохранение целостности;
- поддержка агрегатных функций: COUNT, MIN, MAX, SUM, AVG, STDDEV, DISTINCT;
- группировка посредством GROUP BY;
- использование запросов для нескольких таблиц (JOIN);
- поддержка веб-браузеров Chrome, Firefox, IE 10.
На текущий момент Lovefield по критерию производительности подходит для баз меньше 50 000 строк. Разработчики планируют увеличить производительность в будущих версиях, а также реализовать поддержку внешних ключей, каскадного добавления и удаления и др. Исходный код Lovefield опубликован на GitHub под свободной лицензией Apache Licence 2.0.
Постоянная ссылка к новости: http://www.nixp.ru/news/12975.html. Никита Лялин по материалам Google-opensource.Blogspot.Ru.
- PouchDB — JavaScript-аналог CouchDB для хранения данных 2 6 июня 2012 г.
Airbnb купила Deco Software и открыла код Deco IDE для JavaScript-приложений с React Native
AnyChart открыла для некоммерческого использования JavaScript-библиотеки для визуализации данных
Google выпустила инструмент OSS-Fuzz для постоянного fuzz-тестирования Open Source-проектов 1
Walmart публикует исходный код своей JavaScript-платформы для веб-сайтов — Electrode 1
Facebook открыла код JavaScript-фреймворка Relay для приложений на основе React 1
ScriptCover — дополнение к Chrome, показывающее «покрытие» JavaScript-кода 1 4
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
Про IndexedDB можно тут почитать: https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API
Вкратце: «transactional database system, like a SQL-based RDBMS; however whereas the latter uses tables with fixed columns, IndexedDB is a JavaScript-based object-oriented database».
Lovefield: мы любим ваши поля