Если вы еще не использовали Airtable, это очень хорошо разработанное веб-приложение, похожее на Google Sheets, также реляционное и типизированное.
Вот его функции:
- реляционные данные
- динамическая схема (определяется пользователем и может быть легко изменена)
- живые обновления для совместной работы (вроде веб-сокетов)
- может справиться с массовой загрузкой данных (вероятно, в горизонтальном масштабе)
Какая архитектура базы данных может выполнить все эти вещи?Кажется, что SQL не может иметь такую динамическую схему, как они, но nosql не будет столь же производительным в масштабе с очень реляционными данными, выполняющими объединения, агрегирование и суммирование.
Кроме того, как бы они это сделали?индексирование для быстрых запросов?Конечный пользователь может создавать запросы к любому полю в любое время.Будут ли они просто индексировать каждый столбец / поле?
Я не знаю, относится ли это к делу, но я знаю, что они используют AWS.