Skip to content

Custom caching and data storage implementation developed using Go

Notifications You must be signed in to change notification settings

shhesterka04/own-database-cache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Own-Database-Cache

Описание

Собственная реализация кэширования и хранилища данных, разработанная с использованием Go

Особенности

  1. Разработан собственный механизм кэширования данных, который включает в себя фиксацию проблем с устаревшими данными (Stale Data) и предотвращение гонок данных (Race Conditions)
  2. Внутренняя база данных поддерживает механизмы транзакций, обеспечивая целостность данных при их изменении
  3. Реализован собственный парсер запросов SQL для удобства работы с базой данных
  4. Покрытие тестами методов SQL, транзакций базы данных и кэша

Руководство пользователя

Возможности SQL

  • Создание таблиц: Определение таблиц с конкретными столбцами и типами данных
  • Вставка данных: Добавление данных в таблицы с помощью команды INSERT
  • Запросы выборки: Получение данных с помощью SELECT с поддержкой сортировки ORDER BY и условий WHERE
  • Удаление записей: Удаление данных из таблиц с помощью команды DELETE с поддержкой условий
  • Обновление записей: Изменение существующих данных с помощью команды UPDATE с возможностью использования условий в WHERE

Создание таблицы

CREATE TABLE test (id, name, age) WITH TYPES (int64, string, int64)

Вставка данных

INSERT INTO test (id, name) VALUES (1, 'Alice'), (2, 'Bob')

Выборка данных

SELECT id, name FROM test
SELECT * FROM test ORDER BY name
SELECT id, name FROM test WHERE id > 1

Обновление данных

UPDATE test SET name = 'Обновлено' WHERE id > 1
UPDATE test SET name = 'Обновлено'

Удаление данных

DELETE FROM test WHERE id > 1

Запуск приложения

go run ./...

About

Custom caching and data storage implementation developed using Go

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages