Подключите функцию firebase из БД в реальном времени к Spanner - PullRequest
0 голосов
/ 20 октября 2018

У меня есть приложение с десятками тысяч пользователей, где каждую секунду мы собираем данные (данные о местоположении).Для анализа мы пытаемся разрешить запрос этих данных для создания отчетов для пользователя.

Идея состоит в том, чтобы передать данные из базы данных в реальном времени в Spanner, чтобы я мог запрашивать данные в формате SQL и генерироватьотчеты, основанные на этом.Я хочу иметь возможность делать это из моего триггера каждый раз, когда я обновляю базу данных в реальном времени.Таким образом, данные следуют этому потоку:

Данные о местоположении iOS / Android -> записывает базу данных Firebase Realtime -> Триггер функции на основе события записи -> Добавить в Spanner

Возможно ли это, и если да, то как это сделатьты предлагаешь это сделать?Я уже использую функции Firebase для запуска уведомлений и поддержания согласованности базы данных, но не знаю, как подключиться к гаечному ключу.Документация, которую я нашел, полностью посвящена функциям Cloud, и когда я выполняю

const Spanner = require('@google-cloud/spanner'); 

, я получаю сообщение «Ошибка: триггеры синтаксического анализа ошибки: не удается найти модуль '@ google-cloud / spanner'"

Мое первое ограничение: ограничены ли функции Firebase самой FireBase или я могу интегрироваться с другими облачными инструментами, такими как гаечный ключ?

Спасибо,

Рикардо

Ответы [ 2 ]

0 голосов
/ 23 октября 2018

Ошибка означает, что вы (правильно) не установили клиентскую библиотеку Cloud Spanner.Чтобы это исправить, запустите в своей папке функций:

npm install @google-cloud/spanner

Если вам не нужны данные в RTDB, вы можете полностью избежать этого шага и напрямую вызвать облачную функцию: см. Функции HTTP .

В документации есть полезное «Руководство по написанию облачной функции для взаимодействия с Cloud Spanner», просто измените его на put вместо get: см. Использование облакаГаечный ключ с облачными функциями

0 голосов
/ 21 октября 2018

У меня нет опыта работы с базами данных реального времени, PubSub и функциями, но я также заинтересован:)

Я представляю 2 шага: [1] триггеры Firestore могут публиковать сообщения в PubSub, и [2] Функции могут подписываться и обрабатывать события PubSub, которые взаимодействуют с Spanner.

...