Android Данные датчика в Cloud pubsub - PullRequest
0 голосов
/ 02 апреля 2020

Фон

У меня есть датчик "A", который подключается к моему мобильному приложению через Bluetooth. Этот датчик генерирует 512 точек данных в секунду.

Что мне нужно

Мне нужно отправить отправить эти данные в Google BigTable через Cloud pub / sub. Я уже создал topi c и могу отправить сообщение * topi c.

В чем проблема

  1. Этот ответ говорит о том, что мне нужно создать движок приложения и подключить мое приложение к этот движок приложения. Ядро приложения получит данные и отправит их в Bigtable через pub / sub и dataflow.Я получаю это, но теперь у меня есть две подзадачи здесь -

    a. Как можно передать данные из моего мобильного приложения в движок приложения? WebSocket? Потому что я думаю, что не могу сделать простой запрос на отправку данных на маршрут (/ publishdata), я прав?

    б. Я аутентифицирую своего пользователя в мобильном приложении с помощью аутентификации firebasea. Могу ли я проверить моего пользователя на движке приложения через firebase-admin sdk? Я могу сделать это, передав tokenId, но это правильный метод? или я могу использовать firebase для аутентификации моих пользователей в движке приложения?

  2. Я видел проектов , где люди предлагают создать учетную запись службы и добавить ее в приложение. Проблема в том, что я не хочу предоставлять свои учетные данные клиенту. Еще один разговор

Может кто-нибудь предложить мне решить эту проблему?

Мысли, которые у меня есть

Я могу отправить данные в базу данных реального времени firebase и затем подумать о перемещении этих данных в Bigtable через pubsub или облачную функцию. Я не смог найти ни одного примера движка приложения, подключающегося к базе данных и считывающего данные из базы данных в реальном времени. В этом примере я думал, что эти парни отправляют данные в базу данных в реальном времени, а затем используют pubsub для перемещения данных в Bigtable. Если это возможно, то могу ли я аутентифицировать своего пользователя на движке приложения через firebase-admin sdk?

1 Ответ

0 голосов
/ 02 апреля 2020

Во-первых, вы должны взглянуть на this Создать приложение Android с использованием Firebase и статью App Engine Flexible Environment, в которой показано, как написать мобильное приложение с внутренним хранилищем данных в режиме реального времени. синхронизация и регистрация пользовательских событий с использованием Firebase.

Что касается вашего первого вопроса об отправке данных в App Engine, вы можете отправить его как HTTP POST. Пожалуйста, ознакомьтесь со следующими вопросами по Stackoverflow: 1 , 2 .

. Ссылка для создания учетной записи службы и добавления ее в приложение не является безопасной. вариант. В этом случае вы можете использовать Callable Cloud Functions. Обратитесь к этому потоку Stackoverflow .

Вы можете получить данные из базы данных Firebase Realtime через службу резервного копирования , которая позволяет экспортировать данные в GCS Bucket. Затем вы можете переместить его в Bigtable, используя шаблоны потока данных с открытым исходным кодом, например Cloud Storage Avro в Bigtable . Пожалуйста, обратитесь к официальной документации , чтобы узнать больше об экспорте данных в Bigtable.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...