The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз СУБД SQLite 3.32. Проект DuckDB развивает вариант SQLite для аналитических запросов

24.05.2020 12:26

Опубликован релиз SQLite 3.32.0, легковесной СУБД, оформленной в виде подключаемой библиотеки. Код SQLite распространяется как общественное достояние (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум, в который входят такие компании, как Adobe, Oracle, Mozilla, Bentley и Bloomberg.

Основные изменения:

  • Реализован аппроксимированный вариант команды ANALYZE, который позволяет в очень больших БД обойтись частичным сбором статистики, без полного сканирования индексов. Ограничение на число записей при сканировании одного индекса задаётся при помощи новой директивы "PRAGMA analysis_limit".
  • Добавлена новая виртуальная таблица "bytecode", в которой предложена информация о байткоде заранее подготовленных выражений (prepared statement).
  • Добавлена VFS-прослойка checksum, добавляющая 8-байтовые контрольные суммы в конец каждой страницы данных в БД и проверяющая их при каждом чтении из БД. Прослойка позволяет выявлять повреждения БД в результате случайного искажения битов в устройствах хранения.
  • Добавлена новая SQL-функция iif(X,Y,Z), возвращающая значение Y, если выражение X является истинным, или Z, в противном случае.
  • В выражениях INSERT и UPDATE теперь всегда применяется закрепление типов столбцов (column affinity) перед вычислением условий в блоке CHECK.
  • Лимит на число параметров повышен с 999 до 32766.
  • Добавлено расширение UINT collating sequence с реализацией сортировки последовательностей, учитывающей целые числа в тексте для сортировки этого текста в числовом порядке.
  • В интерфейсе командной строки в команду ".import" добавлены опции "--csv", "--ascii" и "--skip". В команде ".dump" разрешено использование нескольких LIKE-шаблонов с слиянием на выходе всех таблиц, соответствующих заданным маскам. Добавлена команда ".oom" для отладочных сборок. В команды ".excel", ".output" и ".once" добавлена опция "--bom". В команду ".filectrl" добавлена опция "--schema".
  • Указанное с оператором LIKE выражение ESCAPE теперь переопределяет символы подстановки, что соответствует поведению PostgreSQL .

Дополнительно можно отметить развитие новой СУБД DuckDB, в которой разрабатывается вариант SQLite, оптимизированный для выполнения аналитических запросов. Помимо кода оболочки из SQLite проектом используется вынесенный в отдельную библиотеку парсер из PostgreSQL, компонент Date Math из MonetDB, своя реализация оконных функций (на базе алгоритма Segment Tree Aggregation), векторизированный движок выполнения запросов (на базе алгоритма Hyper-Pipelining Query Execution), обработчик регулярных выражений на основе библиотеки RE2, собственные оптимизатор запросов и MVCC-механизм управления одновременным выполнением заданий (Multi-Version Concurrency Control). Код проекта распространяется под лицензией MIT. Разработка пока находится на стадии формирования экспериментальных выпусков.

  1. Главная ссылка к новости (https://www.sqlite.org/release...)
  2. OpenNews: Релиз СУБД SQLite 3.31 с поддержкой генерируемых столбцов
  3. OpenNews: Fedora планирует перевести RPM с BerkeleyDB на SQLite
  4. OpenNews: Уязвимость в SQLite, позволяющая удалённо атаковать Chrome через WebSQL
  5. OpenNews: Доступен Dqlite 1.0, распределённый вариант SQLite от компании Canonical
  6. OpenNews: В рамках проекта LiteTree развивается вариант SQLite с поддержкой ветвления БД
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53018-sqlite
Ключевые слова: sqlite, database, duckdb
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (15) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, MonkAlex (ok), 13:06, 24/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Лимит на число параметров повышен с 999 до 32766.

    Эх, сколько раз приходилось на своих 2к параметрах обходить конкретно SQlite отдельно.
    Теперь то заживём! =)

     
  • 1.2, Аноним (2), 13:16, 24/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не понял, теперь это колоночный sqlite? Если так, то это очень радует.
     
     
  • 2.8, Аноним (8), 13:25, 25/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Если ставишь вместо SQLite какой-то ClickHouse, то да он колоночный.
     

  • 1.3, mos87 (ok), 15:56, 24/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    >Проект DuckDB развивает вариант SQLite для аналитических запросов

    скуль (вернее реляционное АКА табличное хранение данных) только для этого и нужнО тащeмта.
    щас в скуль что только не пихают дураки.

     
     
  • 2.7, funny.falcon (?), 12:24, 25/05/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В SQL может быть хранение как построчное, так и колоночное.

    Построчное хранение лучше для OLTP нагрузки. Поколоночное - для OLAP.

    Если в типы добавить JSON (особенно бинарный), то внезапно реляционки становятся гибридами и догоняют (а то и обгоняют) по удобству No-No-No-SQL.

    А дураки - это люди с черезмерной категоричностью суждений.

     
     
  • 3.11, mos87 (ok), 14:20, 25/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > В SQL может быть хранение как построчное, так и колоночное.
    > Построчное хранение лучше для OLTP нагрузки. Поколоночное - для OLAP.
    > Если в типы добавить JSON (особенно бинарный), то внезапно реляционки становятся гибридами
    > и догоняют (а то и обгоняют) по удобству No-No-No-SQL.
    > А дураки - это люди с черезмерной категоричностью суждений.

    а если к буханке приделать рога то она догоняет троллейбус

    скуль придуман бимерами где-то в 70х и ни для чего кроме работы таблицами (реляциями) не задумывался. тогда еще были иллюзии что манагеры-непогромисты им будут пользоваться... 50 лет спустя это чудо разрослось до нестандартизированного монстра, невереоятно негибкого и при этом невероятно же многословного, которого при всех этих красотах заставляют работать уже не с таблицами а черт знает с чем. вернее, людей заставляют конечно.

     
     
  • 4.12, Аноним (12), 15:26, 25/05/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > разрослось до нестандартизированного

    На SQL есть стандарт.

     
  • 4.14, funny.falcon (?), 23:42, 25/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Судя по тону вашей писанины, вы не понимаете ни почему, ни для чего SQL(?) был придуман, ни почему он в своё время (при всех своих недостатках) стал доминирующей технологией (хотя все эти ваши NoSQL существовали до него).

    Когда поймёте, на вас снизойдёт озарение.
    Если поймёте...

    Хорошего вечера. Удачи Вам во всём. Да хранит Вас Бог.

     
  • 4.16, Cradle (?), 11:56, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    плохого танцора всегда кто-нибудь да заставляет...
    SQL в отличии от всяких алголов/60 развивался от простого к сложному а не наооборот, там всегда возможно работать с удобным подмножеством языка на конкретном движке. Это у создателей движков может голова болет что в свой язык засовывать и как потом поддерживать. Или у школьников, которые не знают с чего начать, вот им и не гибко.
     
     
  • 5.17, mos87 (ok), 15:02, 26/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    языка чего? если SQL язык погромирования то и ldapsearch тогда тоже. И iptables бгг

    но проблема в том что он не.

    и вообще базы/движки исторически были ОСью в ОСи. А уж это обслуживание всего нутра как-бы-тоже SQLем... Хорошо когда у машины есть руль. Хорошо когда есть отвертка чтобы чинить машину. Но если во имя унификации отвертка в качестве ручки имеет руль... ну это такое. На любителя.

     

  • 1.4, Аноним (4), 20:53, 24/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > с оператором LIKE выражение ESCAPE теперь переопределяет символы

    Дык вроде ESCAPE и раньше работал.

     
  • 1.6, Аноним (6), 11:02, 25/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    DuckDB не на Java, уже хорошо.
     
  • 1.9, Аноним (8), 13:26, 25/05/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А чего там со всякими хипстерскими LevelDB и BoltDB?
     
     
  • 2.10, Вашье (?), 14:14, 25/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Какой-то LevelDB был в Ceph, но они перешли на RocksDB.
     
  • 2.15, funny.falcon (?), 23:47, 25/05/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну как сказать...

    LevelDB до сих пор сторадж в таких мало кому нужных программах, как Google Chrome, Bitcoin Core, и многих других.

    BoltDB (его форк и продолжение de-facto BBoltDB) - основа практически ни кому не известного Etcd, который является бэкендом метаданных ущербному Kubernetes (и многим другим хипстерским поделкам).

    В общем, к сожалению, упомянутые Вами недо-технологии ещё не умерли. Но в связи с ненужностью программ, их использующих, мы скоро о них забудем.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру