Базы данных необходимы для сохранения данных в приложениях Node.js. В зависимости от приложения вы можете использовать самые разные реализации. Тонкая альтернатива тяжелым базам данных - Node.js lowdb.

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

Облегченной альтернативой является SQLite, файловая база данных SQL. Но здесь также необходимо скомпилировать драйвер базы данных. Чтобы этого избежать, существует база данных под названием lowdb. Эта база данных основана на библиотеке Lodash. Данные записываются в файл JSON. Поскольку база данных хранит данные в виде обычного текста, она никоим образом не приближается к производительности полноценной базы данных, которая обычно хранит информацию в оптимизированном двоичном формате. По этой причине использование lowdb в производительной работе не рекомендуется.

Node.js lowdb - установка и первые шаги

Node.js lowdb можно установить через NPM и Yarn. Например, для NPM это команда npm install lowdb. Уровень адаптера используется для доступа к данным. Node.js lowdb предоставляет ряд адаптеров. Наиболее важными из них являются FileSync и FileAsync для синхронного или асинхронного доступа.

Прежде чем вы сможете работать с базой данных, вы должны сначала инициализировать адаптер. При этом вы передаете конструктору имя файла, в котором должна быть сохранена информация. Файл может уже существовать и быть предварительно заполненным информацией. Если файл не существует, он создается lowdb. Затем вы передаете объектное представление адаптера в lowdb. Если файл базы данных еще не существует, необходимо предварительно определить структуру базы данных. Для этого вызовите метод defaults и передайте имена каждого хранилища объектов. Затем вызовите метод записи, чтобы сохранить информацию.

Чтобы узнать, как использовать lowdb для выполнения всех операций CRUD, вы можете прочитать оставшуюся часть этого сообщения в этом блоге.