Комрадз, выбираю основной, хобби, вечерний кодинг проектик.
Остановился на Object Store сервере/клиенте/библиотеке. Ничего революционного, или мега амбициозного.
В чем суть:
- Сервер харнит множество объектов
- Каждый объект имеет уникальный индекс и множество тегов
- Каждый тег в формате ключ=значение
- Каждый объект это набор бинарныйх данных
- Можно получить любую часть объекта по индексу+смещение+размер
- Можно получить объект целиком
- Можно удалить объет/изменить любую его часть
- Прозрачное шифрование данных/Разграничение доступа по тегам
- Поиск по тегам и простые условия
- Возможность репликации данных между серверами
Проект по большей части для себя, тихий кодинг под чай по вечерам и выходным. Несколько раз натыкался, что хочется независимо хранить какието файлы/контент, но единой точки хранения как то нет. Хочется иметь просто решение для абстрагирования от ФС, протоколов передачи данных и тд (по сути сейчас облока к этому и идут).
Пример использования: создаём несколько объектов с тегами mp3,rock,Track{1,2,3,4} закинуть их туда, управлять коллекцией и извлекать проще простого, если надо прилепить обложку альбома, создаём объект с обложкой img,jpg и связываем с другими тегами. Можно и не файлы хранить а любые события, будет работать как key=value db. По идее клиентом может легко выступать FUSE FS.
Конструктивная критика приветствуется