Рубрика «sqlite»

Всем доброго дня! Пишу здесь впервые. На написание меня этой статьи побудило желание рассказать людям об эффективном способе миграции от внутренней базы данных sqlite3 к внешней БД PostgreSQL. Подобной статьи на Хабре я не нашел, поэтому надеюсь будет полезно.

Я перечитал много статей на эту тему и попробовал различные варианты, но получилось у меня только с одним. Спасибо этому человеку: Oodcode. Так же расскажу про остальные способы и что из них вышло.

Предпосылки

Изначально причиной миграции стали ошибки алертов, приходящие из Grafana (~130 штук). А именно: Читать полностью »

BundledSQLiteDriver из библиотеки androidx.sqlite — это специальная сборка встраиваемой СУБД SQLite от команды разработчиков Android Jetpack, предназначенная для использования в Kotlin Multiplatform проектах. В этой статье мы рассмотрим особенности её использования по сравнению со встроенным в Android вариантом SQLite.

Room и androidx.sqlite

В начале 2004 года Google анонсировала официальную поддержку Kotlin Multiplatform в Room — ORM‑подобной библиотеке для доступа к локальным хранилищам на основе SQLite.

Читать полностью »

Как фильтры Блума в 10 раз ускорили SQLite - 1


Это интригующая история о том, как исследователи с помощью грамотного использования фильтров Блума смогли в 10 раз ускорить аналитические запросы в SQLite. Ниже я приведу свой краткий обзор работы «SQLite: Past, Present, and Future (2022)», и объясню некоторые внутренние особенности баз данных, включая механизм реализации соединений.Читать полностью »

Безумные и забавные факты о SQLite - 1

  1. SQLite — самая часто разворачиваемая и используемая база данных. На текущий момент активно используется более одного триллиона (1000000000000 или миллиона миллионов) баз данных SQLite.

    Её поддерживают три человека. Они не допускают внешних контрибьюторов.

  2. Скорее всего, SQLite используется больше, чем все остальные движки баз данных суммарно. В мире работают миллиарды копий SQLite. Её можно встретить повсюду.
    Безумные и забавные факты о SQLite - 2

  3. К тому же, есть такая вероятность, что это один из пяти наиболее часто разворачиваемых программных модулей.
    Безумные и забавные факты о SQLite - 3

  4. За разработкой SQLite стоит компания Hwaci. Кажется, она занимается и музыкой (?).
    Безумные и забавные факты о SQLite - 4

  5. Изначально SQLite создавалась для корабля ВМС США. Ричард Хипп (D. Richard Hipp, DRH) разрабатывал ПО для эсминца USS Oscar Austin. Раньше ПО корабля просто переставало работать при выходе из строя сервера (это было в 2000-х). Для боевого корабля это неприемлемо.

    Поэтому DRH задался вопросом: что, если база данных будет работать без какого-либо сервера?Читать полностью »

Эксперимент по ускорению SQLite - 1


SQLite быстра, но можно ли сделать её ещё быстрее? Исследователи из Университетов Хельсинки и Кембриджа задались этим вопросом и опубликовали работу Serverless Runtime / Database Co-Design With Asynchronous I/O. В ней они продемонстрировали возможность 100-кратного снижения времени задержки, и ниже я в общих чертах эту их работу прокомментирую.

Речь пойдёт об исследовании возможностей Limbo — переписанной на Rust версии SQLite.Читать полностью »

Введение

Телеграм довольно ответственно относится к конфиденциальности пользователей. В частности, можно удалить любое сообщение в переписке, как у себя, так и у собеседника. И сообщение действительно удалится, у обоих и навсегда. Но есть пара «но».

Восстанавливаем удалённые сообщения в Telegram - 1

Читать полностью »

Почему СУБД такие медленные - 1

Недавно на Хабре публиковался перевод статьи «Просто выберите Postgres» (оригинал, англ. яз) с аргументами, что Postgres — оптимальная БД для десктопных и мобильных приложений. Аналогичное мнение высказывают в других популярных статьях вроде «До свидания MongoDB, здравствуй PostgreSQL». Главным недостатком SQLite называют то, что данные хранятся в одном файле, а MongoDB (а также DynamoDB и Cassandra) — низкую производительность:

«Всё это связано с тем, что подобные базы данных, по сути, представляют собой огромную распределённую хеш-таблицу. Единственные операции, работающие без необходимости сканирования всей базы данных — это поиск по секционному ключу и сканы, при которых используется ключ сортировки.

…Если паттерны доступа существенно изменятся, то может потребоваться полная повторная обработка всех данных».

Более производительные резидентные БД хранят данные в памяти (Redis, Valkey), но их использование ограничено объёмом ОЗУ.

После такого заявления интересно посмотреть на независимые тесты производительности разных СУБД.Читать полностью »

Данная статья представляет собой ознакомление с базовым синтаксисом SQLAlchemy 2.0, информации здесь хватит для того, чтобы сразу начать пользоваться и удовлетворить 80% ваших нужд, да и на неё вы потратите меньше времени, чем на чтение документации).

Предполагается, что вы знакомы с базовым синтаксисом языка Python и, возможно, новичок в программировании, как я)))

Установка

$ pip install SQLAlchemy

Создание модели данных

В SQLAlchemy нужно создавать модели данных, которые вы будете хранить в вашей базе данных.
Модель данныхЧитать полностью »

Excel — самый опасный софт на планете - 1

В 80-е годы компании покупали компьютеры, чтобы запустить электронные таблицы. Автоматический расчёт налогов и зарплат казался чудом. Тысячи бухгалтеров оказались на улице, остальным пришлось осваивать работу ПК, а конкретно — Excel.

И до сих пор Excel играет важнейшую роль в бизнесе многих компаний. Без электронных таблиц у них просто всё развалится. Сложно найти на компьютере другую программу настолько древнюю и настолько важную, от которой столько всего зависит. И в такой ситуации факапы неизбежны.
Читать полностью »

Просто выберите Postgres - 1

Отчасти это действенный совет, отчасти — вопрос к читателям.

Совет: при создании нового приложения, требующего постоянного хранения данных, как это и бывает в случае большинства веб-приложений, по умолчанию следует выбирать Postgres.

Почему не sqlite?

sqlite — достаточно неплохая база данных, но данные хранятся в одном файле.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js