Л.р. 8 Побудова структури взаємодії компонентів хмарної автоматичної системи збору даних із сенсорів
. Побудова структури взаємодії компонентів хмарної автоматичної системи збору даних із сенсорів
Мета роботи: розробити принципову схему мінімально необхідних компонентів для отримання, зберігання та виведення даних отриманих з віддалених сенсорів.
Задача: створити та описати принципову схему ETL системи на основі сервісу GoogleCloud. Розробити принципову схему мінімально необхідних компонентів для отримання, зберігання та виведення даних отриманих з віддалених сенсорів.
Короткі теоретичні відомості.
Рекомендований стек технологій:
· Мова програмування:
o Python
o Сайт:
· Фреймворк:
o FastAPI framework
o Сайт:
o https://fastapi.tiangolo.com/
· База даних:
o Postgres
o Сайт:
FastAPI стоїть на плечах гігантів:
Starlette для частини пов'язаної з Інтернетом.
Pydantic для частини пов'язаної з даними.
Вам також знадобиться сервер ASGI для виробництва, наприклад Uvicorn (https://www.uvicorn.org/) або Hypercorn ( https://gitlab.com/pgjones/hypercorn).
Приклад
Створіть файл main.py з таким вмістом:
Запустіть сервер за допомогою:
Перевірка
Відкрийте браузер на http://127.0.0.1:8000/items/5?q=somequery
Ви побачите наступну JSON відповідь:
Ви вже створили API, який:
Отримує HTTP-запити шляхом / і /items/{item_id}.
І перший і другий шлях використовують GET операції (також відомі як методи HTTP).
шлях /items/{item_id} має параметр шляху item_id, який має бути int.
шлях /items/{item_id} має необов'язковий str параметр запиту q.
Інтерактивна документація з API¶
Перейдіть на http://127.0.0.1:8000/docs.
Ви побачите автоматичну інтерактивну документацію API (https://github.com/swagger-api/swagger-ui)
Альтернативна документація з API¶
Тепер перейдіть на http://127.0.0.1:8000/redoc. https://github.com/Rebilly/ReDoc
Ви побачите альтернативну автоматичну документацію (надану ReDoc):
Приклад оновлення¶
Тепер змініть файл main.py, щоб отримати тіло відповіді з запиту PUT.
Оголосіть тіло, використовуючи стандартну типізацію Python, дякую Pydantic.
Завдання: розробити структуру взаємодії хмартої інфраструктури, котра призначена для об'єкту автоматизації згідно Вашої теми досліджень.
Звіт повинен містити.
1. Назва роботи.
2. Мета роботи.
3. Дані про автора.
4. Виконані пункти завдання.
5. Висновки.
Звіт завантажити у форматі *.pdf, при необхідності у коментарі до роботи під час завантаження вставити посилання на проєкт.
Відмінно виконана робота оцінюється в 10 балів.
8 балів - правильність проекту і чіткість оформлення.
5 балів - обґрунтування.
6 квітня 2021, 09:09 |