Первый шаг — спроектировать таблицу и столбцы для базы данных, определить, как будут храниться метаданные, спроектировать операторы запроса и операторы обновления.
Затем внедрите триггеры облачного хранилища, чтобы уведомить службу, которую вы записываете для обработки событий из облачного хранилища. Cloud Functions и Cloud Run часто используются для обработки событий. В рамках обработки события ваш код будет обновлять базу данных.
Последним шагом после правильной работы триггеров является сканирование всей корзины и обновление базы данных метаданными для каждого объекта облачного хранилища.
Ваш вопрос не содержит деталей. Лучше использовать числовые операторы вместо У меня есть большое количество объектов, хранящихся в корзине облачного хранилища GCP.. Для меня это означает как минимум десятки миллионов объектов. Ваш вопрос не включает информацию о том, как быстро происходят изменения в облачном хранилище, или фактические запросы, которые вам необходимо выполнить.
Имейте в виду, что Cloud Storage — это плоское пространство имен. Концепция иерархии (папки/каталоги) эмулируется в программном обеспечении. Если вы храните пространство имен в базе данных так же, как и в облачном хранилище, производительность может быть не лучше.
Я несколько раз реализовал ваш тип дизайна для AWS, Google Cloud и Azure. Если вам действительно не нужна сложность системы, управляемой событиями, я рекомендую время от времени просматривать корзину хранилища и создавать простую текстовую электронную таблицу, которую можно обрабатывать с помощью grep, awk и т. д.