Может ли Spanner поддерживать индексы для легкого подсчета аналитических запросов моих данных?

Я хотел бы дать своим партнерам результаты простого COUNT(*) ... GROUP BY items.color введите запросы и, возможно, присоединяется к items а также orders или что-то подобное. Я бы хотел, чтобы время ответа на запрос составляло менее одной секунды (в худшем случае порядка секунды) и масштабировалось до миллиардов строк.

Мой текущий подход заключается в резервном копировании данных GCDatastore и их загрузке в BigQuery и предоставлении ежедневной аналитики или использовании GCDataflow для поддержки набора предопределенных счетчиков.

Это то, что Spanner использует в качестве сценария использования, если я перевожу свой бэкэнд из Datastore в Spanner?

1 ответ

Решение

Сегодня выполнение подсчета запросов в Cloud Spanner требует полного сканирования таблицы. В зависимости от размера таблицы это может занять больше секунды.

Одна вещь, которую вы могли бы сделать, это отслеживать количество в отдельной таблице, и всякий раз, когда вы обновляете items таблица, обновить счет в той же транзакции.

Другие вопросы по тегам