Распределенная система - BigTable
BigTable - это распределенная система хранения для управления структурированными данными, которые предназначены для масштабирования до очень большого размера.
Системные компоненты
Система состоит из 3 основных компонентов:
- Мастер -сервер
- Планшетные серверы
- Клиенты
Системные цели
Мастер -сервер
- Данные баланса между подключенными серверами планшетов.
- Создайте метаданные и отправьте их клиентам.
- Данные повторного баланса.
- Управление журналами всей системы.
Планшетные серверы
- Каждый планшетный сервер управляет количеством планшетов.
- Предоставьте API для клиентов.
- Обрабатывать запросы на чтение без блокировки.
- Обработка обновления/удаления запросов (Mutex-Lock).
- Содержать ленивые удаленные, обновленные, созданные векторы.
- Отправьте свои журналы немедленно освоить.
Клиенты
- Отправить запросы на планшетные серверы.
- Выберите «Правый сервер планшетов» в соответствии с доступными метаданными.
Системная поддержка
Любое количество планшетных серверов может быть добавлено, и каждый планшетный сервер может управлять любым количеством планшетов.
Системная архитектура
Бегать
# install dependencies
$ npm i
# run master server
$ npm run master
# run tablet servers
$ npm run tabletserver1
$ npm run tabletserver2
# run clients
$ npm run client1
$ npm run client2