You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/kn/3-transport/lessons/2-store-location-data
localizeflow[bot] 8671d5c4aa
chore(i18n): sync translations with latest source changes (#571)
6 months ago
..
README.md chore(i18n): sync translations with latest source changes (#571) 6 months ago
assignment.md chore(i18n): sync translations with latest source changes (#571) 6 months ago

README.md

ಸ್ಥಳದ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಿ

ಈ ಪಾಠದ ಸ್ಕೆಚ್‌ನೋಟ್ ಅವಲೋಕನ

ಸ್ಕೆಚ್‌ನೋಟ್ ನಿತ್ಯ ನರಸింహನ್ ರವರಿಂದ. ದೊಡ್ಡ ಆಕಾರಕ್ಕೆ ಚಿತ್ರವನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ.

ಪಾಠಕ್ಕೂ ಮುಂಚಿನ ಪ್ರಶ್ನಾರ್ಥ

ಪಾಠಕ್ಕೂ ಮುಂಚಿನ ಪ್ರಶ್ನಾರಂಧ

ಪರಿಚಯ

ಕೊನೆಯ ಪಾಠದಲ್ಲಿ, ನೀವು GPS ಸೆನ್ಸರ್ ಬಳಸಿ ಸ್ಥಳದ ಡೇಟಾವನ್ನು ಸೆರೆಹಿಡಿಯುವ ನ್ಯಾಯಕ್ರಮವನ್ನು ಕಲಿತಿದ್ದಿರಿ. ಆಹಾರ ಸಾಗಿಸುವ ಲಾರಿ ಸ್ಥಳ ಮತ್ತು ಅದರ ಪ್ರಯಾಣವನ್ನು ದೃಶ್ಯೀಕರಿಸಲು ಈ ಡೇಟಾವನ್ನು ಕ್ಲೌಡ್‌ನಲ್ಲಿರುವ IoT ಸೇವೆಗೆ ಕಳುಹಿಸಿ ಸಂಗ್ರಹಿಸಬೇಕಾಗುತ್ತದೆ.

ಈ ಪಾಠದಲ್ಲಿ ನೀವು IoT ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸುವ ವಿಭಿನ್ನ ಆಯ್ದ ರೀತಿಗಳನ್ನು ಕಲಿಯುವುದಕ್ಕೆ, ಮತ್ತು ಸರ್ವರ್‌ಲೆಸ್ ಕೋಡ್ ಬಳಸಿ നിങ്ങളുടെ IoT ಸೇವೆಯಿಂದ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸುವಿಕೆಯನ್ನು ಕಲಿಯುವುದಕ್ಕೆ ಪ್ರಯತ್ನಿಸುವಿರಿ.

ಈ ಪಾಠದಲ್ಲಿ ನಾವು ಚರ್ಚಿಸುವವನುಗಳು:

ಸಂರಚಿತ ಮತ್ತು ಅಸಂರಚಿತ ಡೇಟಾ

ಕಂಪ್ಯೂಟರ್ ವ್ಯವಸ್ಥೆಗಳು ಡೇಟಾವ್ಯವಸ್ಥೆಗಳನ್ನು ನಿಭಾಯಿಸುತ್ತವೆ, ಮತ್ತು ಈ ಡೇಟಾವು ವಿವಿಧ ಆಕಾರ ಹಾಗೂ ಗಾತ್ರಗಳಲ್ಲಿ ಬರುವುದಾಗಿದೆ. ಇದು ಏಕೈಕ ಸಂಖ್ಯೆಯಿಂದ ಹಿಡಿದು ಸಮಸ್ಯೆ ಮಹತ್ವದ ಪಠ್ಯ, ವೀಡಿಯೊಗಳು ಮತ್ತು ಚಿತ್ರಗಳವರೆಗೆ, ಮತ್ತು IoT ಡೇಟಾವಿನವರೆಗೆ ಬದಲಾಗಬಹುದು. ಡೇಟಾವನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಎರಡು ವರ್ಗಗಳಲ್ಲಿ ವಿಭಾಗಿಸಲಾಗುತ್ತದೆ - ಸಂರಚಿತ ಡೇಟಾ ಮತ್ತು ಅಸಂರಚಿತ ಡೇಟಾ.

  • ಸಂರಚಿತ ಡೇಟಾ ಎಂದರೆ ಬದಲಾಗದ ಮತ್ತು ಬಲವಾದ ಸಂರಚನೆ ಹೊಂದಿರುವ ಡೇಟಾ, ಸಾಮಾನ್ಯವಾಗಿ ಸಂಬಂಧಿತ ಡೇಟಾ ಹೊಂದಿರುವ ಟೇಬಲ್‌ಗಳಿಗೆ ನಕ್ಷಾಮಾಡಲ್ಪಟ್ಟಿರುತ್ತದೆ. ಉದಾಹರಣೆಗೆ ವ್ಯಕ್ತಿಯ ವಿವರಗಳು - ಅವರ ಹೆಸರು, ಜನನದ ದಿನಾಂಕ ಮತ್ತು ವಿಳಾಸ.

  • ಅಸಂರಚಿತ ಡೇಟಾ ಎಂದರೆ ಬಲವಾದ ಬಂಧನ ಇಲ್ಲದೇ ಮತ್ತು ಕಾರಣಾಂತವಾಗಿ ಬದಲಾಗುವ ಡೇಟಾ. ಉದಾಹರಣೆಗೆ ಬರೆಯಲಾದ ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳು ಅಥವಾ ಸ್ಪ್ರೆಡ್ಶೀಟ್‌ಗಳು.

ಸ್ವಲ್ಪ ಸಂಶೋಧನೆ ಮಾಡಿ: ಇನ್ನೇನು ಸಂರಚಿತ ಮತ್ತು ಅಸಂರಚಿತ ಡೇಟಾ ಉದಾಹರಣೆಗಳನ್ನು ನೀವು ಕಲ್ಪಿಸಬಹುದು?

💁 ಅಲ್ಪ-сಂರಚಿತ ಡೇಟಾ ಕೂಡ ಇರುತ್ತದೆ, ಅದು ಸಂರಚಿತವಾಗಿದೆ ಆದರೆ ನಿಗದಿತ ಟೇಬಲ್‌ಗಳಿಗೆ ಸರಿಹೊಂದುವುದಿಲ್ಲ.

IoT ಡೇಟಾ ಸಾಮಾನ್ಯವಾಗಿ ಅಸಂರಚಿತ ಡೇಟಾಗೆ ಸೇರಬಹುದು.

ಒಂದು ದೊಡ್ಡ ವಾಣಿಜ್ಯ ಕೃಷಿ ಮುನ್ಸೂಚನೆಗೆ ವಾಹನಗಳ ನಿಲಗಡೆಗೆ IoT ಸಾಧನಗಳು ಸೇರಿಸುವಾಗ, ನೀವು ವಿಭಿನ್ನ ತರಹದ ವಾಹನಗಳಿಗೆ ವಿಭಿನ್ನ ಸಾಧನಗಳನ್ನು ಬಳಸಬಹುದು. ಉದಾಹರಣೆಗೆ:

  • ಕೃಷಿ ವಾಹನಗಳಗಾಗಿ, ಟ್ರ್ಯಾಕ್ಟರ್ ಗೆ GPS ಡೇಟಾ ಬೇಕಾಗುತ್ತದೆ ಅದು ಸರಿಯಾದ ಕ್ಷೇತ್ರಗಳಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಿದೆ ಎಂದು ಖಚಿತ ಪಡಿಸಲು
  • ಆಹಾರ ಸಾಗಿಸುವ ಲಾರಿಗಳಿಗೆ, ನೀವು GPS ಡೇಟಾ ಜೊತೆಗೆ ವೇಗ ಮತ್ತು ವೇಗವರ್ಧನೆ ಡೇಟಾವನ್ನು ಪಡೆಯಲು ಬಯಸುತ್ತೀರಿ, ಚಾಲಕ ಸುರಕ್ಷಿತವಾಗಿ ಚಾಲನೆ ಮಾಡುತ್ತಿದ್ದಾನೆ ಎಂಬುದನ್ನು ನೋಡುವುದಕ್ಕೆ ಮತ್ತು ಚಾಲಕ ಗುರುತು ಮತ್ತು ಪ್ರಾರಂಭ/ನಿಲ್ಲಿಸು ಡೇಟಾ ಮೂಲಕ ಸ್ಥಳೀಯ ಕೆಲಸ ಸಮಯ ಕಾನೂನುಗಳಿಗೆ ಅನುಗುಣವಾಗಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಲು.
  • ಸಂಶೀತ ಲಾರಿಗಳಿಗೆ ತಾಪಮಾನ ಡೇಟಾವೂ ಬೇಕಾಗುತ್ತದೆ ಆಹಾರ ತುಂಬಾ ಚಳಿ ಅಥವಾ ಬಿಸಿ ಆಗದೆ ಸಾಗಿಸುವಾಗ ಕೆಟ್ಟುಹೋಗದಂತೆ ನೋಡಿಕೊಳ್ಳಲು.

ಈ ಡೇಟಾ ಇತರೆ ಇತರೆ ಕಾಲಗಳಲ್ಲಿ ಬದಲಾಗಬಹುದು. ಉದಾಹರಣೆಗೆ, ಲಾರಿ ಕ್ಯಾಬ್ ಒಳಗೆ IoT ಸಾಧನ ಇರುವುದಾದರೆ, ವೇಳೆ ಟ್ರೇಲರ್ ಬದಲಾಗುತ್ತಲೇ ಅದು ಕಳುಹಿಸುವ ಡೇಟಾ ಕೂಡ ಬದಲಾಗಬಹುದು, ಉದಾಹರಣೆಗೆ ಸಂಶೀತ ಟ್ರೇಲರ್ ಬಳಸುತ್ತಿರುವಾಗ ಮಾತ್ರ ತಾಪಮಾನ ಡೇಟಾವನ್ನು ಕಳುಹಿಸುವುದು.

ಇನ್ನೇನು IoT ಡೇಟಾ ಸೆರೆಹಿಡಿಯಬಹುದೆಂದು ನೀವು ಭಾವಿಸುತ್ತೀರಾ? ಲಾರಿಗೆ ಸಾಗಿಸಲಾದಬರೋದು, ಹಾಗೂ ನಿರ್ವಹಣಾ ಡೇಟಾ ಎಂಬರಸನ್ನು ಮಹಿಳತೆ ಮಾಡಿ.

ಈ ಡೇಟಾ ಪ್ರತಿ ವಾಹನಕ್ಕೆ ವಿಭಿನ್ನವಾಗಿರಬಹುದು, ಆದರೆ ಎಲ್ಲವೂ ಒಂದೇ IoT ಸೇವೆಗೆ ಪ್ರಕ್ರಿಯೆಗೆ ಕಳುಹಿಸಲಾಗುತ್ತದೆ. IoT ಸೇವೆ ಈ ಅಸಂರಚಿತ ಡೇಟಾವನ್ನು ಪ್ರಕ್ರಿಯೆ ಮಾಡಲು ಹಾಗೂ ಆಯಾ ರೀತಿಗಳಲ್ಲಿ ಹುಡುಕಲು ಅಥವಾ ವಿಶ್ಲೇಷಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುವಂತೆ ಸೂಕ್ತವಾಗಿರಬೇಕು.

SQL ವಿರುದ್ಧ NoSQL ಸಂಗ್ರಹಣೆ

ಡೇಟಾಬೇಸ್‌ಗಳು ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಿ ಪ್ರಶ್ನೆ ಮಾಡಬಲ್ಲ ಸೇವೆಗಳಾಗಿವೆ. ಡೇಟಾಬೇಸ್‌ಗಳು ಎರಡು ರೀತಿಗಳಲ್ಲಿ ಬರುತ್ತವೆ - SQL ಮತ್ತು NoSQL

SQL ಡೇಟಾಬೇಸ್‌ಗಳು

ಮೊದಲ ಡೇಟಾಬೇಸ್‌ಗಳು ಸಂಬಂಧಿತ ಡೇಟಾಬೇಸ್ ಮ್ಯಾನೇಜ್‌ಮೆಂಟ್ ಸಿಸ್ಟಂಗಳು (RDBMS) ಅಥವಾ ಸಂಬಂಧಿತ ಡೇಟಾಬೇಸ್ ಎಂದು ಕರೆಯಲ್ಪಟ್ಟವು. ಅವುಗಳೆ SQL (Structured Query Language) ಬಳಸಿ ಡೇಟಾ ಸೇರಿಸಲು, ಅಳಿಸಲು, ನವೀಕರಿಸಲು ಅಥವಾ ಹುಡುಕಲು ಬಳಕೆಯಾಗುವ ಡೇಟಾಬೇಸ್‌ಗಳು. ಡೇಟಾಬೇಸ್‌ನ ಸ್ಕೀಮಾ ಒಂದು ಸ್ಪಷ್ಟವಾಗಿ ಸಂರಚಿತ ಟೇಬಲ್‌ಗಳ ಸಮೂಹವಾಗಿರುತ್ತದೆ, ಇದು ಸ್ಪ್ರೆಡ್ಶೀಟ್‌ ಕ್ಲಿಷ್ಟಿಯಾಗಿ ಹೋಗುತ್ತದೆ. ಪ್ರತಿಯೊಂದು ಟೇಬಲ್‌ನಲ್ಲಿ ಹಲವಾರು ಹೆಸರಿನ ಕಾಲಮ್‌ಗಳು ಇರುತ್ತವೆ. ನೀವು ಡೇಟಾ ಸೇರಿಸುವಾಗ, ಪ್ರತಿಯೊಂದು ಕಾಲಮ್‌ಗೆ ಮೌಲ್ಯಗಳನ್ನು ಹಾಕುವ ಮೂಲಕ ಟೇಬಲ್‌ಗೆ ಹೊಸ ಸಾಲು ಸೇರಿಸಲಾಗುತ್ತದೆ. ಇದು ಡೇಟಾವನ್ನು ಬಲವಾದ ಸಂರಚನೆಯಲ್ಲಿ ಇಡುತ್ತದೆ - ನೀವು ಕೆಲ ಕಾಲಮ್‌ಗಳನ್ನು ಖಾಲಿ ಇರಿಸಬಹುದು, ಆದರೆ ಹೊಸ ಕಾಲಮ್ ಸೇರಿಸಲು ಡೇಟಾಬೇಸಿನಲ್ಲಿ ಬದಲಾವಣೆ ಮಾಡಬೇಕು ಮತ್ತು ಇದಕ್ಕೆ ಹೊಂದುವಂತೆ ಇತ್ತೀಚಿನ ಸಾಲುಗಳಿಗೆ ಮೌಲ್ಯಗಳನ್ನು ತುಂಬಬೇಕು. ಈ ಡೇಟಾಬೇಸ್‌ಗಳು ಸಂಬಂಧಿತವಾಗಿವೆ - ಒಂದು ಟೇಬಲ್ ಇನ್ನೊಂದರೊಡನೆ ಸಂಬಂಧ ಹೊಂದಿದೆ.

ಬಳಕೆದಾರರ ಟೇಬಲ್‌ನ ಐಡಿ ಖರೀದಿ ಟೇಬಲ್‌ನ ಬಳಕೆದಾರರ ಐಡಿ ಕಾಲಮ್‌ಗೆ ಸಂಬಂಧವಾಗಿರುವ ಮತ್ತು ಉತ್ಪನ್ನಗಳ ಟೇಬಲ್‌ನ ಐಡಿ ಖರೀದಿ ಟೇಬಲ್‌ನ ಉತ್ಪನ್ನ ಐಡಿಗೆ ಸಂಬಂಧವಾಗಿರುವ ಸಂಬಂಧಿತ ಡೇಟಾಬೇಸ್

ಉದಾಹರಣೆಗೆ, ನೀವು ಬಳಕೆದಾರರ ವೈಯಕ್ತಿಕ ವಿವರಗಳನ್ನು ಟೇಬಲ್‌ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಿದರೆ, ಪ್ರತಿಯೊಬ್ಬ ಬಳಕೆದಾರರಿಗೆ ಆಂತರಿಕ ವಿಶಿಷ್ಟ ಐಡಿ ಇರುತ್ತದೆ, ಅದು ವ್ಯಕ್ತಿಯ ಹೆಸರು ಮತ್ತು ವಿಳಾಸವಿರುವ ಟೇಬಲ್‌ನಲ್ಲಿ ಸಾಲಿನಲ್ಲಿ ಉಪಯೋಗಿಸಲಾಗುತ್ತದೆ. ನೀವು ಆ ಬಳಕೆದಾರರ ಇನ್ನಷ್ಟು ವಿವರಗಳನ್ನು ಇತರ ಟೇಬಲ್‌ನಲ್ಲಿ, ಉದಾಹರಣೆಗೆ ಅವರ ಖರೀದಿಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಬಯಸಿದರೆ, ಹೊಸ ಟೇಬಲ್‌ನಲ್ಲಿ ಬಳಕೆದಾರರ ಐಡಿ ಕಾಲಮ್ ಇರುತ್ತದೆ. ಬಳಕೆದಾರರನ್ನು ಹುಡುಕಲು, ಅವರ ಐಡಿಯನ್ನು ಉಪಯೋಗಿಸಿ, ಅವರ ವೈಯಕ್ತಿಕ ವಿವರಗಳನ್ನು ಒಂದು ಟೇಬಲ್‌ನಿಂದ ಮತ್ತು ಖರೀದಿಗಳನ್ನು ಇನ್ನೊಂದು ಟೇಬಲ್‌ನಿಂದ ಪಡೆಯಬಹುದು.

SQL ಡೇಟಾಬೇಸ್‌ಗಳು ಸಂರಚಿತ ಡೇಟಾ ಸಂಗ್ರಹಿಸಲು ಮತ್ತು ನಿಮ್ಮ ಸ್ಕೀಮಾದ ಡೇಟಾ ಸರಿಯಾಗಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಲು ಅತ್ಯುತ್ತಮ.

ನೀವು SQL ಮೊದಲು ಬಳಸಿಲ್ಲವೆಂದಾದರೆ, SQL ಬಗ್ಗೆ ವಿಕಿಪೀಡಿಯಾ ಪುಟವನ್ನು ಓದಿ.

ಕೆಲವು ಪ್ರಸಿದ್ಧ SQL ಡೇಟಾಬೇಸ್‌ಗಳಿಗೆ Microsoft SQL Server, MySQL, ಮತ್ತು PostgreSQL ಸೇರಿವೆ.

ಸ್ವಲ್ಪ ಸಂಶೋಧನೆ ಮಾಡಿ: ಈ SQL ಡೇಟಾಬೇಸ್‌ಗಳ ಮತ್ತು ಅವುಗಳ ಸಾಮರ್ಥ್ಯದ ಬಗ್ಗೆ ತಿಳಿದುಕೊಳ್ಳಿ.

NoSQL ಡೇಟಾಬೇಸ್

NoSQL ಡೇಟಾಬೇಸ್‌ಗಳು SQL ಡೇಟಾಬೇಸ್‌ಗಳಂತಹ ಬಲವಾದ ಸಂರಚನೆಯಿಲ್ಲದ ಕಾರಣ ಇವು NoSQL ಎಂದು ಕರೆಯಲ್ಪಟ್ಟಿವೆ. ಇವು ಡಾಕ್ಯುಮೆಂಟ್ ಡೇಟಾಬೇಸ್‌ಗಳೆಂದೂ ಕರೆಯಲ್ಪಡುತ್ತವೆ ಏಕೆಂದರೆ ಅವು ಅಸಂರಚಿತ ಡೇಟಾವನ್ನು ಡಾಕ್ಯುಮೆಂಟ್ ರೂಪದಲ್ಲಿ ಸಂಗ್ರಹಿಸುತ್ತವೆ.

💁 ತಮ್ಮ ಹೆಸರಿನ ವಿರುದ್ಧ, ಕೆಲವು NoSQL ಡೇಟಾಬೇಸ್‌ಗಳು SQL ಬಳಸಿ ಡೇಟಾ ಹುಡುಕಲು ಅನುಮತಿಸುತ್ತವೆ.

NoSQL ಡೇಟಾಬೇಸ್‌ನಲ್ಲಿರುವ ಫೋಲ್ಡರ್‌ಗಳಲ್ಲಿ ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳು

NoSQL ಡೇಟಾಬೇಸ್‌ಗಳಿಗೆ ಡೇಟಾ ಸಂರಚನೆಯನ್ನು ನಿರ್ಧರಿಸುವ ಪೂರ್ವನಿಗದಿತ ಸ್ಕೀಮಾ ಇಲ್ಲ, ಬದಲಾಗಿ ಯಾವುದೇ ಅಸಂರಚಿತ ಡೇಟಾವನ್ನು ಇನ್‌ಸರ್‌ಟ್ ಮಾಡಬಹುದು, ಸಾಮಾನ್ಯವಾಗಿ JSON ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳನ್ನು ಉಪಯೋಗಿಸಿ. ಈ ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳನ್ನು ಫೋಲ್ಡರ್‌ಗಳಲ್ಲಿ ಒργανೈಸ್ ಮಾಡಬಹುದು, ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್‌ನ ಫೈಲ್‌ಗಳು ಹೇಗಿದೆಯೋ ಹಾಗೆ. ಪ್ರತಿ ಡಾಕ್ಯುಮೆಂಟ್ ಬೇರೆ ಬೇರೆ ಕ್ಷೇತ್ರಗಳನ್ನು ಹೊಂದಿರಬಹುದು - ಉದಾಹರಣೆಗೆ ನಿಮ್ಮ ಕೃಷಿ ವಾಹನಗಳಿಂದ IoT ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಿದರೆ, ಕೆಲವು ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳು ವೇಗ ಮತ್ತು ವೇಗವರ್ಧನೆಯ ಮೂರುಣಿಗೆಗಿಂತ ಹೊಂದಿರಬಹುದು, ಇತರವು ಟ್ರೇಲರ್‌ನ ತಾಪಮಾನವನ್ನು ಹೊಂದಿರಬಹುದು. ನೀವು ಹೊಸ ಲಾರಿಗೆತ ಬೆಳೆಯುವ ತರಹದ ಪತ್ತೆಗೆ ಹೊಸ ಕ್ಷೇತ್ರವನ್ನು ಸೇರಿಸಿದರೆ, ಉದಾಹರಣೆಗೆ ತೂಕ ಗಾತ್ರಿಸುವ ಮ್ಯಾಶಿನ್ ಹೊಂದಿರುವ ಲಾರಿಗೆ, ನಿಮ್ಮ IoT ಸಾಧನ ಆ ಹೊಸ ಕ್ಷೇತ್ರವನ್ನು ಸೇರಿಸಿ ಡೇಟಾಬೇಸ್‌ದಲ್ಲಿ ಯಾವುದೇ ಬದಲಾವಣೆಗಳಿಲ್ಲದೆ ನಿರ್ವಹಿಸಬಹುದು.

ಪ್ರಸಿದ್ಧ NoSQL ಡೇಟಾಬೇಸ್‌ಗಳಿಗೆ ಏಜ್ಯೂರ್ ಕಾಸ್ಮೋಸ್‌ಡಿ‌ಬಿ, ಮಾಂಗೋಡಿಬಿ, ಮತ್ತು ಕವ್ಚ್ಡಿಬಿ ಸೇರಿವೆ.

ಸ್ವಲ್ಪ ಸಂಶೋಧನೆ ಮಾಡಿ: ಈ NoSQL ಡೇಟಾಬೇಸ್‌ಗಳ ಮತ್ತು ಅವುಗಳ ಸಾಮರ್ಥ್ಯಗಳ ಬಗ್ಗೆ ತಿಳಿದುಕೊಳ್ಳಿ.

ಈ ಪಾಠದಲ್ಲಿ ನೀವು NoSQL ಸಂಗ್ರಹಣೆಯನ್ನು ಬಳಸಿಕೊಂಡು IoT ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸುವಿರ.

GPS ಡೇಟಾವನ್ನು IoT ಹಬ್ ಗೆ ಕಳುಹಿಸಿ

ಕೊನೆಯ ಪಾಠದಲ್ಲಿ ನೀವು IoT ಸಾಧನದ GPS ಸೆನ್ಸರ್‌ನಿಂದ GPS ಡೇಟಾವನ್ನು ಸೆರೆಹಿಡಿದಿದ್ದಿರಿ. ಈ IoT ಡೇಟಾವನ್ನು ಕ್ಲೌಡ್‌ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಲು, ಅದನ್ನು IoT ಸೇವೆಗೆ ಕಳುಹಿಸಬೇಕು. ಮೊದಲಿಗಿಂತ ಮತ್ತೊಮ್ಮೆ, ನೀವು Azure IoT Hub ಅನ್ನು ಬಳಸಿ, ಮೊದಲಿರುವ ಯೋಜನೆಯ IoT ಕ್ಲೌಡ್ ಸೇವೆಯನ್ನು ಬಳಸುತ್ತೀರಿ.

IoT ಸಾಧನದಿಂದ IoT ಹಬ್‌ಗೆ GPS ಟೆಲಿಮೆಟ್ರಿ ಕಳುಹಿಸುವುದು

ಕಾರ್ಯ - GPS ಡೇಟಾವನ್ನು IoT ಹಬ್ ಗೆ ಕಳುಹಿಸಿ

  1. ಉಚಿತ ತರುತ್ತಿರುವ ಟೈರ್ ಬಳಸಿ ಹೊಸ IoT ಹಬ್ ರಚಿಸಿ.

    ⚠️ ಅಗತ್ಯವಿದ್ದರೆ ಯೋಜನೆ 2, ಪಾಠ 4 ನಲ್ಲಿ IoT ಹಬ್ ರಚಿಸುವ ಸೂಚನೆಗಳನ್ನು ನೋಡಿ.

    ಹೊಸ ಸಂಪನ್ಮೂಲ ಗುಂಪನ್ನು ರಚಿಸುವುದನ್ನು ನೆನಪಿಡಿ. ಹೊಸ ಸಂಪನ್ಮೂಲ ಗುಂಪಿಗೆ gps-sensor ಎಂದು ಹೆಸರು ನೀಡಿ, ಮತ್ತು IoT ಹಬ್‌ಗೆ gps-sensor-<ನಿಮ್ಮ ಹೆಸರು> ಎಂಬ ಸತ್ವಸ್ವರೂಪದ ಹೆಸರನ್ನಿಡಿ.

    💁 ನೀವು ಹಿಂದಿನ ಯೋಜನೆಯ IoT ಹಬ್ ಇದೆಯಾದರೆ ಅದನ್ನು ಮರುಬಳಕೆ ಮಾಡಬಹುದು. ಇತರ ಸೇವೆಗಳನ್ನು ರಚಿಸುವಾಗ ಈ IoT ಹಬ್ಬಿನ ಹೆಸರು ಮತ್ತು ಅದರ ಸಂಪನ್ಮೂಲ ಗುಂಪಿನ ಹೆಸರನ್ನು ಬಳಸಿ.

  2. IoT ಹಬ್‌ಗೆ ಹೊಸ ಸಾಧನ ಸೇರಿಸಿ. ಈ ಸಾಧನವನ್ನು gps-sensor ಎಂದು ಕರೆಯಿರಿ. ಸಾಧನದ ಸಂಪರ್ಕ ಸರಣಿಯನ್ನು ಪಡೆದುಕೊಳ್ಳಿ.

  3. ನಿಮ್ಮ ಸಾಧನದ ಕೋಡ್ ಅನ್ನು ಪರಿಷ್ಕರಿಸಿ ಹೀಗಾಗಿ GPS ಡೇಟಾವನ್ನು IoT ಹಬ್‌ಗೆ ಕಳುಹಿಸುವಿನಲ್ಲಿ ಸಾಧನ ಸಂಪರ್ಕ ಸರಣಿ ಬಳಸಿ.

    ⚠️ ಅಗತ್ಯವಿದ್ದರೆ ಯೋಜನೆ 2, ಪಾಠ 4 ನಲ್ಲಿ ಸಾಧನವನ್ನು IoT ಗೆ ಸಂಪರ್ಕಿಸುವ ಸೂಚನೆಗಳನ್ನು ನೋಡಿ.

  4. ನೀವು GPS ಡೇಟಾವನ್ನು ಕಳುಹಿಸುವಾಗ, ಅದನ್ನು ಕೆಳಗಿನ JSON ಜೋಡಣೆ ರೂಪದಲ್ಲಿ ಮಾಡಿ:

    {
        "gps" :
        {
            "lat" : <latitude>,
            "lon" : <longitude>
        }
    }
    
  5. ನಿಮ್ಮ ದಿನನಿತ್ಯ ಸಂದೇಶ ವರ್ಗಾವಣೆಯನ್ನು ದುಡ್ಡಾಗದಂತೆ GPS ಡೇಟಾವನ್ನು ಪ್ರತಿ ನಿಮಿಷ ಕಳುಹಿಸಿ.

ನೀವು Wio ಟರ್ಮಿನಲ್ ಬಳಸಿ ಇದ್ದರೆ, ಅಗತ್ಯ ಗ್ರಂಥಾಲಯಗಳನ್ನು ಸೇರಿಸಲು, ಮತ್ತು NTP ಸರ್ವರ್ ಬಳಸಿ ಸಮಯವನ್ನು ಹೊಂದಿಸಲು ನೆನಪಿಡಿ. ನಿಮ್ಮ ಕೋಡ್ ಈ ಹಿಂದೆ ಪಾಠದ ಕೋಡ್ ಬಳಸಿ ಸರಿಯೆಲ್ಲಾ ಡೇಟಾ ಸರಿಯಾದ ಶ್ರೂರ್ಣದಿಂದ ಓದಿದೆಂದು ಖಚಿತಪಡಿಸಬೇಕು. ಕೆಳಗಿನ JSON ಡಾಕ್ಯುಮೆಂಟ್ ರಚಿಸಲು ಈ ಕೋಡ್ ಉಪಯೋಗಿಸಿ:

DynamicJsonDocument doc(1024);
doc["gps"]["lat"] = gps.location.lat();
doc["gps"]["lon"] = gps.location.lng();

ನೀವು ವರ್ಚುವಲ್ IoT ಸಾಧನವನ್ನು ಬಳಸುತ್ತಿದ್ದರೆ, ಅಗತ್ಯ ಗ್ರಂಥಾಲಯಗಳನ್ನು ವರ್ಚುವಲ್ ಪರಿಸರ ಬಳಸಿ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿಕೊಳ್ಳಿ.

ರಾಸ್ಪ್ಬೆರ್ರಿ ಪೈ ಮತ್ತು ವರ್ಚುವಲ್ IoT ಸಾಧನಕ್ಕೆ, ಹಿಂದಿನ ಪಾಠದ ಕೋಡ್ ಬಳಸಿ ಅಕ್ಷಾಂಶ ಮತ್ತು ರೇಖಾಂಶ ಮೌಲ್ಯಗಳನ್ನು ಪಡೆಯಿರಿ, ನಂತರ ಹಾಗೆಯೇ ಸರಿಯಾದ JSON ಸ್ವರೂಪದಲ್ಲಿ ಈ ಕೆಳಗಿನ ಕೋಡ್ ಮೂಲಕ ಕಳುಹಿಸಿ:

message_json = { "gps" : { "lat":lat, "lon":lon } }
print("Sending telemetry", message_json)
message = Message(json.dumps(message_json))

💁 ನೀವು ಈ ಕೋಡ್ ಅನ್ನು code/wio-terminal, code/pi ಅಥವಾ code/virtual-device ಫೋಲ್ಡರ್‌ನಲ್ಲಿ ಕಾಣಬಹುದು.

ನಿಮ್ಮ ಸಾಧನದ ಕೋಡ್ ಅನ್ನು ಓಡಿಸಿ ಹಾಗೂ az iot hub monitor-events CLI ಆಜ್ಞೆಯನ್ನು ಬಳಸಿ ಸಂದೇಶಗಳು IoT ಹಬ್ಬಿಗೆ ಹರಿಯುತ್ತಿರುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.

ಹಾಟ್, ವರ್ಮ್, ಮತ್ತು ಕೋಲ್ಡ್ ಮಾರ್ಗಗಳು

IoT ಸಾಧನದಿಂದ ಕ್ಲೌಡ್‌ಗೆ ಹರಿಯುವ ಡೇಟಾ ಯಾವಾಗಲೂ ನೈಜ ಸಮಯದಲ್ಲಿ (real time) ಪ್ರಕ್ರಿಯೆಗೆ ಒಳಪಡಿಸುವದು ಅಲ್ಲ. ಕೆಲವು ಡೇಟಾ ನೈಜ ಸಮಯದಲ್ಲಿ ಪ್ರಕ್ರಿಯೆಗೆ ಬಯಸಬಹುದು, ಇತರವು ಸ್ವಲ್ಪ ತಡವಾಗಿ, ಮತ್ತೊಂದಿನಷ್ಟು ಹೆಚ್ಚು ತಡವಾಗಿ ಪ್ರಕ್ರಿಯೆಗೆ ಒಳಪಡಿಸಬಹುದು. ಡೇಟಾ ಹೈದರಿಸುವ ವಿವಿಧ ಸೇವೆಗಳ ಪ್ರಕ್ರಿಯೆಯ ಸಮಯಗಳನ್ನು ಹಾಟ್, ವರ್ಮ್ ಮತ್ತು ಕೋಲ್ಡ್ ಮಾರ್ಗಗಳು ಎಂದು ಕರೆಯುತ್ತಾರೆ.

ಹಾಟ್ ಮಾರ್ಗ

ಹಾಟ್ ಮಾರ್ಗ ಎಂದರೆ ನೈಜ ಸಮಯ ಅಥವಾ ಅದಕ್ಕೆ ಸಮೀಪದ ಸಮಯದಲ್ಲಿ ಪ್ರಕ್ರಿಯೆ ಅಗತ್ಯವಿರುವ ಡೇಟಾ. ಉದಾಹರಣೆಗೆ, ವಾಹನ ಬೇರ್ಪಡೆಯಿನ ಬಳಿ ಬರುತ್ತಿದೆಯೆಂದು ಅಥವಾ ಸಂಶೀತ ಲಾರಿಯ ತಾಪಮಾನ ಹೆಚ್ಚಾಗಿದೆ ಎಂದು ತಕ್ಷಣ ಎಚ್ಚರಿಕೆ ನೀಡುವಾಗ ಹಾಟ್ ಡೇಟಾ ಉಪಯೋಗಿಸುತ್ತಾರೆ.

ಹಾಟ್ ಮಾರ್ಗದ ಡೇಟಾ ಪ್ರಕ್ರಿಯೆಗೆ ನಿಮ್ಮ ಕೋಡ್ ಕ್ಲೌಡ್ ಸೇವೆಗಳಿಗೆ ತಕ್ಷಣ ಈವೆಂಟ್‌ಗಳು ಬಂದಂತೆ ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತದೆ.

ವರ್ಮ್ ಮಾರ್ಗ

ವರ್ಮ್ ಮಾರ್ಗಅಂದರೆ ಸ್ವಲ್ಪ ಸಮಯದ ತಡದಿಂದ ಪ್ರಕ್ರಿಯೆಗೆ ಬರುವ ಡೇಟಾ; ಉದಾಹರಣೆಗೆ, ವರದಿಗಳು ಅಥವಾ ಚಿಕ್ಕ ಅವಧಿಯ ವಿಶ್ಲೇಷಣೆಗಾಗಿ. ಕಳೆದ ದಿನ ಸಂಗ್ರಹಿಸಿದ ಡೇಟಾ ಬಳಸಿ ದಿನನಿತ್ಯ ವಾಹನ ಮೀಲೇಜ್ ವರದಿಗಳನ್ನು ಮಾಡುವಾಗ ವರ್ಮ್ ಡೇಟಾ ಬಳಸುತ್ತಾರೆ.

ಕ್ಲೌಡ್ ಸೇವೆ ಸ್ವೀಕರಿಸಿದ ನಂತರ ವರಮ್ ಮಾರ್ಗ ಡೇಟಾ ಸಂಗ್ರಹಿಸಲು ತ್ವರಿತವಾಗಿ ಪ್ರವೇಶಿಸಬಹುದಾದ ಸಂಗ್ರಹಣೆಯಲ್ಲಿ ಇಡಲಾಗುತ್ತದೆ.

ಕೋಲ್ಡ್ ಮಾರ್ಗ

ಕೋಲ್ಡ್ ಮಾರ್ಗವು ಇತಿಹಾಸದ ಡೇಟಾ, ದೀರ್ಘಕಾಲವಿಟ್ಟು ಸಂಗ್ರಹಿಸಲು, ಬೇಕಾದಾಗ ಪ್ರಕ್ರಿಯೆಗೆ ಬರುವ ಡೇಟಾಗೆ ಸೂಚಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ವಾರ್ಷಿಕ ವಾಹನ ಮೀಲೇಜ್ ವರದಿಗಳನ್ನು ಪಡೆಯಲು ಅಥವಾ ಇಂಧನ ವೆಚ್ಚ ಕಡಿಮೆ ಮಾಡಲು ಅತ್ಯುತ್ತಮ ಮಾರ್ಗಗಳನ್ನು ವಿಶ್ಲೇಷಿಸಲು.

ಕೋಲ್ಡ್ ಮಾರ್ಗ ಡೇಟಾ ಡೇಟಾ ವೇರ್‌ಹೌಸ್‌ಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ - ಇದೊಂದು ಬದಲಾವಣೆಯಾಗದ ದೊಡ್ಡ ಪ್ರಮಾಣದ ಡೇಟಾ almacen ಆಗಿದ್ದು, ವೇಗವಾಗಿ ಮತ್ತು ಸುಲಭವಾಗಿ ಪ್ರಶ್ನೆ ಮಾಡಬಹುದಾದಂತೆ ರೂಪುಗೊಂಡಿವೆ. ಪ್ರತಿ ದಿನ, ವಾರ, ಅಥವಾ ತಿಂಗಳ ನಿಯಮಿತ ಸಮಯದಲ್ಲಿ ವರ್ಮ್ ಮಾರ್ಗದ ಸಂಗ್ರಹಣೆಯಿಂದ ಡೇಟಾ ವೇರ್‌ಹೌಸ್‌ಗೆ ಸ್ಥಳಾಂತರಿಸುತ್ತದೆ.

ಈಗವರೆಗೆ ನೀವು ಸೆರೆಹಿಡಿದ ಡೇಟಾ ಹಾಟ್, ವರ್ಮ್ ಅಥವಾ ಕೋಲ್ಡ್ ಮಾರ್ಗದನೆಯದು ಎಂದು ಯೋಚಿಸಿ.

ಸರ್ವರ್‌ಲೆಸ್ ಕೋಡ್ ಬಳಸಿ GPS ಘಟನೆಗಳನ್ನು ಪ್ರಕ್ರಿಯೆ ಪಡಿಸಿ

ಒಮ್ಮೆ ಮುದುಕ IoT ಹಬ್‌ಗೆ ಡೇಟಾ ಹರಿಯಲು ಆರಂಭಿಸಿದ ಮೇಲೆ, ನೀವು ಸರ್ವರ್‌ಲೆಸ್ ಕೋಡ್ ಬರೆದು Event-Hub ಹೊಂದಾಣಿಕೆಯಿಂದ ಆಗುವ ಘಟನಗಳನ್ನು ಕೇಳಬಹುದು. ಇದು ವರ್ಮ್ ಮಾರ್ಗವಾಗಿದೆ - ಈ ಡೇಟಾ ಸಂಗ್ರಹಿಸಿ ಮುಂದಿನ ಪಾಠದಲ್ಲಿ ಪ್ರಯಾಣ ವರದಿಗಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ.

IoT ಸಾಧನದಿಂದ IoT ಹಬ್‌ಗೆ GPS ಟೆಲಿಮೆಟ್ರಿ ಕಳುಹಿಸಿ, Event Hub ಟ್ರಿಗರ್ ಮೂಲಕ Azure Functions ಗೆ ಕಳುಹಿಸುತ್ತಿರುವುದು

ಕಾರ್ಯ - ಸರ್ವರ್‌ಲೆಸ್ ಕೋಡ್ ಬಳಸಿ GPS ಘಟನೆಗಳನ್ನು ಪ್ರಕ್ರಿಯೆ ಮಾಡಿ

  1. Azure Functions CLI ಬಳಸಿ Azure Functions ಅಪ್ಲಿಕೇಶನ್ ರಚಿಸಿ. Python ರನ್‌ಟೈಮ್ ಬಳಸಿ, gps-trigger ಎಂಬ ಫೋಲ್ಡರ್‌ನಲ್ಲಿ ರಚಿಸಿ, ಮತ್ತು Functions ಅಪ್ಲಿಕೇಶನ್ ಪ್ರಾಜೆಕ್ಟ್ ಹೆಸರಾಗಿ ಅದೇ ಹೆಸರು ಉಪಯೋಗಿಸಿ. ಇದಕ್ಕೆ ವರ್ಚುವಲ್ ಪರಿಸರವನ್ನು ಸೃಷ್ಟಿಸಬೇಕು.

    ⚠️ ಅಗತ್ಯವಿದ್ದರೆ ಯೋಜನೆ 2, ಪಾಠ 5 ನಲ್ಲಿ Azure Functions ಪ್ರಾಜೆಕ್ಟ್ ರಚಿಸುವ ಸೂಚನೆಗಳನ್ನು ನೋಡಿ.

  2. IoT ಹಬ್ ಇದರ Event Hub ಹೊಂದಾಣಿಕೆಗೆ ಹೊಂದುವ (compatible) ಎಂಡ್ಪಾಯಿಂಟ್ ಬಳಸಿ IoT ಹಬ್ ಈವೆಂಟ್ ಟ್ರಿಗರ್ ಅನ್ನು ಸೇರಿಸಿ.

⚠️ ನೀವು ಅಗತ್ಯವಿದ್ದಲ್ಲಿ ಪ್ರೊಜೆಕ್ಟ್ 2, ಪಾಠ 5 ರಿಂದ IoT ಹಬ್ ಘಟನೆ ಟ್ರಿಗರ್ಗೆ ನಿರ್ದಿಷ್ಟ ಸೂಚನೆಗಳನ್ನು ಸಂದರ್ಶಿಸಬಹುದು.

  1. local.settings.json ಫೈಲ್‌ನಲ್ಲಿ Event Hub ಅನುಕೂಲಕರ ಎಂಡ್ಪಾಯಿಂಟ್ ಸಂಪರ್ಕ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಸೆಟ್ ಮಾಡಿ, ಮತ್ತು ಆ ಎಂಟ್ರಿ ಇನ್ನುಳಿದ function.json ಫೈಲ್‌ನಲ್ಲಿ ವೈ ಖುಶಿಯನ್ನು ಬಳಸಿ.

  2. Azurite ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಸ್ಥಳೀಯ ಸಂಗ್ರಹಣ ಸಂಕರ자로 ಬಳಸಿ

  3. ನಿಮ್ಮ ಫಂಕ್ಷನ್ಸ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ರನ್ ಮಾಡಿ ಅದರ ಮೂಲಕ ಅದು ನಿಮ್ಮ GPS ಸಂಯಂತ್ರದಿಂದ ಘಟನೆಗಳನ್ನು ಪಡೆಯುತ್ತಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ. ನಿಮ್ಮ IoT ಸಾಧನವೂ ರನ್ ಆಗಿ GPS ಡೇಟಾವನ್ನು ಕಳುಹಿಸುತ್ತಿದ್ದರೆ ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.

    Python EventHub trigger processed an event: {"gps": {"lat": 47.73481, "lon": -122.25701}}
    

ಅಜೂರು ಸಂಗ್ರಹಣಾ ಖಾತೆಗಳು

ಅಜೂರು ಸ್ಟೋರೇಜ್ ಲೋಗೋ

ಅಜೂರು ಸ್ಟೋರೇಜ್ ಖಾತೆಗಳು ಒಂದು ಸಾಮಾನ್ಯ ಉದ್ದೇಶದ ಸಂಗ್ರಹಣಾ ಸೇವೆ ಆಗಿದ್ದು, ವಿವಿಧ ರೀತಿಯ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಲು ಸಾಧ್ಯ. ನೀವು ಡೇಟಾವನ್ನು ಬ್ಲಾಬ್‌ಗಳಾಗಿ, ಕ್ಯೂ ಗಳಲ್ಲಿ, ಟೇಬಲ್ಸ್ ನಲ್ಲಿ ಅಥವಾ ಫೈಲ್‌ಗಳಾಗಿ ಸಂಗ್ರಹಿಸಬಹುದು, ಮತ್ತು ಎಲ್ಲವನ್ನು ಒಂದೇ ಸಮಯದಲ್ಲಿ ಮಾಡಬಹುದು.

ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣಾ

ಬ್ಲಾಬ್ ಎಂದರೆ ಬೈನರಿ ಲಾರ್ಜ್ ಒಬ್ಜೆಕ್ಟ್ಸ್, ಆದರೆ ಇದು ಯಾವುದೇ ಅಸಂರಚಿತ ಡೇಟಾದೆಂದು ಪರಿಗಣಿಸಲಾಗಿದೆ. ನೀವು JSON ಡಾಕ್ಯುಮೆಂಟ್‌ಗಳಂತೆ IoT ಡೇಟಾ, ಚಿತ್ರಗಳು ಮತ್ತು ಚಲನಚಿತ್ರ ಫೈಲ್‌ಗಳನ್ನು ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣದಲ್ಲಿ ಸಂಗ್ರಹಿಸಬಹುದು. ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಗೆ ಕಂಟೇನರ್‍ಗಳು ಎಂಬ ಒಬ್ಬರೆಂದು bucket ಗಳನ್ನು ನೀಡಲಾಗಿದೆ, relational ಡೇಟಾಬೇಸ್‌ನ ಟೇಬಲ್ಸ್‌ಗಳ ಹೋಲಿಕೆಯಂತೆ. ಈ ಕಂಟೇನರ್‌ಗಳು ಒಂದು ಅಥವಾ ಹೆಚ್ಚು ಫೋಲ್ಡರ್‌ಗಳನ್ನು ಹೊಂದಬಹುದು, ಮತ್ತು ಪ್ರತಿಯೊಂದು ಫೋಲ್ಡರ್ ಇನ್ನಷ್ಟು ಫೋಲ್ಡರ್‌ಗಳನ್ನು ಹೊಂದಬಹುದು, ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ ಹಾರ್ಡ್ ಡಿಸ್ಕ್‌ನಲ್ಲಿ ಫೈಲ್‌ಗಳನ್ನು ಹೇಗೆ ಸಂಗ್ರಹಿಸುತ್ತೀರೋ ಹಾಗೆಯೇ.

ನೀವು ಈ ಪಾಠದಲ್ಲಿ IoT ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಲು ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಯನ್ನು ಬಳಸಲಿದ್ದೀರಿ.

ಸ್ವಯಂ ಅಧ್ಯಯನ: Azure Blob Storage ಕುರಿತಾಗಿ ಓದಿ

ಟೇಬಲ್ ಸಂಗ್ರಹಣಾ

ಟೇಬಲ್ ಸಂಗ್ರಹಣಾ ಸ್ಪಷ್ಟ ರಚನೆಯ ಹೊಂದಿದ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಲು ಅವಕಾಶ ಮಾಡಿಕೊಡುತ್ತದೆ. ಇದು ನಿಜವಾಗಿಯೂ ಒಂದು NoSQL ಡೇಟಾಬೇಸ್ ಆಗಿದ್ದು, ಆರಂಭದಲ್ಲಿ ನಿರ್ದಿಷ್ಟ ಟೇಬಲ್ಸ್ ಅಗತ್ಯವಿಲ್ಲ, ಆದರೆ ಒಟ್ಟಾರೆ ಒಂದು ಅಥವಾ ಹೆಚ್ಚು ಟೇಬಲ್ಸ್ ನಲ್ಲಿ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ ಮತ್ತು ನಿರ್ದಿಷ್ಟ ಯುನಿಕ್ ಕೀಲಿಗಳನ್ನು ಪ್ರತಿಯೊಂದು ಸಾಲನ್ನು ಸೂಚಿಸಲು ಉಪಯೋಗಿಸುತ್ತದೆ.

ಸ್ವಯಂ ಅಧ್ಯಯನ: Azure Table Storage ಕುರಿತಾಗಿ ಓದಿ

ಕ್ಯೂ ಸಂಗ್ರಹಣಾ

ಕ್ಯೂ ಸಂಗ್ರಹಣಾ 64KB ಗಿಂತಲೂ ಹೆಚ್ಚಿನ ಸಂದೇಶಗಳನ್ನು ಕ್ಯೂ ಇಳಿಸಬಹುದು. ನೀವು ಸಂದೇಶಗಳನ್ನು ಕ್ಯೂ ನ ಹಿಂದೆ ಸೇರಿಸಬಹುದು ಮತ್ತು ಮುಂದೆ ಓದಬಹುದು. ಕ್ಯೂಗಳು ಸಂಗ್ರಹಣಾ ಸ್ಥಳವಿದ್ದರೆ ಅನಿಶ್ಚಿತ ಕಾಲದವರೆಗೆ ಸಂದೇಶಗಳನ್ನು ಸಂಗ್ರಹಿಸಬಹುದು, ಇವು ಆರಂಭಿಕ ಸಂದೇಶಗಳ ಆತ್ಮಕಾಲಿಕ ಸಂಗ್ರಹಣೆಗೆ ಅನುಕೂಲವಾಗಿವೆ. ಉದಾಹರಣೆಗೆ, ನೀವು ಮಾಸಿಕ GPS ಡೇಟಾ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವ ಕೆಲಸ ರನ್ ಮಾಡಲು ಇಚ್ಛಿಸುವಾಗ, ದಿನ ಬೆಳಗ್ಗೆ ಪಟ್ಟಿಗೆ ಆ ಡೇಟಾವನ್ನು ಸೇರಿಸಿ, ನಂತರ ತಿಂಗಳು ಅಂತ್ಯದಲ್ಲಿ ಎಲ್ಲಾ ಸಂದೇಶಗಳನ್ನು ಪ್ರಕ್ರಿಯೆ ಮಾಡಬಹುದು.

ಸ್ವಯಂ ಅಧ್ಯಯನ: Azure Queue Storage ಕುರಿತಾಗಿ ಓದಿ

ಫೈಲ್ ಸಂಗ್ರಹಣಾ

ಫೈಲ್ ಸಂಗ್ರಹಣಾ ಕ್ಲೌಡ್‌ನಲ್ಲಿ ಫೈಲ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸುವುದು, ಮತ್ತು ಯಾವುದೇ ಅಪ್ಲಿಕೇಶನ್ ಅಥವಾ ಸಾಧನಗಳು ಕೈಗೊಳ್ಳಬಹುದಾದ ಇಂಡಸ್ಟ್ರೀ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಪ್ರೋಟೋಕಾಲ್ಸ್ ಅನ್ನು ಬಳಸುತ್ತವೆ. ನೀವು ಫೈಲ್‌ಗಳನ್ನು ಫೈಲ್ ಸಂಗ್ರಹಣೆಗೆ ಬರೆಯಬಹುದು ಮತ್ತು ನಂತರ ಅದನ್ನು ನಿಮ್ಮ PC ಅಥವಾ Mac ನಲ್ಲಿ ಡ್ರೈವ್ ಆಗಿ ಮೌಂಟ್ ಮಾಡಬಹುದು.

ಸ್ವಯಂ ಅಧ್ಯಯನ: Azure File Storage ಕುರಿತಾಗಿ ಓದಿ

ನಿಮ್ಮ ಸರ್ವರ್‌ಲೆಸ್ ಕೋಡ್ ಅನ್ನು ಸಂಗ್ರಹಣೆಗೆ ಸಂಪರ್ಕಿಸಿ

ನಿಮ್ಮ ಫಂಕ್ಷನ್ ಅಪ್ಲಿಕೇಶನ್ ಈಗ IoT ಹಬ್‌ನ ಸಂದೇಶಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಗೆ ಸಂಪರ್ಕಿಸಲು ಅಗತ್ಯವಿದೆ. ಇದಕ್ಕಾಗಿ 2 ಮಾರ್ಗಗಳಿವೆ:

  • ಫಂಕ್ಷನ್ ಕೋಡ್ ಒಳಗೆ, ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಯ ಪೈಥನ್ SDK ಅನ್ನು ಬಳಸಿ ಬ್ಲಾಬ್‌ಗಳಾಗಿ ಡೇಟಾವನ್ನು ಬರೆಯಿರಿ
  • ಊಟ್‌ಪುಟ್ ಫಂಕ್ಷನ್ ಬಂಧನವನ್ನು ಬಳಸಿ ಫಂಕ್ಷನ್‌ನ ಮರುಪಡೆಯನ್ನು ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಗೆ ಬಂಧಿಸಿ ಮತ್ತು ಬ್ಲಾಬ್ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಉಳಿಯಲು ಬಿಡಿ

ಈ ಪಾಠದಲ್ಲಿ ನೀವು ಪೈಥನ್ SDK ಅನ್ನು ಬಳಸಿಕೊಂಡು ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಯೊಂದಿಗೆ ಹೇಗೆ ಸಂವಹನ ಮಾಡಬಹುದು ನೋಡಿ.

IoT ಸಾಧನದಿಂದ IoT ಹಬ್‌ಗೆ GPS ದೂರಸಂಪರ್ಕವನ್ನು ಕಳುಹಿಸಿ, ನಂತರ ಇವೆಂಟ್ ಹಬ್ ಟ್ರಿಗರ್ ಮೂಲಕ ಅಜೂರು ಫಂಕ್ಷನ್ಸ್‌ಗೆ ಕಳುಹಿಸಿ, ನಂತರ ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಗೆ ಉಳಿಸಿ

ಡೇಟಾ ಕೆಳಗಿನ ಫಾರ್ಮಾಟ್‌ನ JSON ಬ್ಲಾಬ್ ಆಗಿ ಉಳಿಸಲಾಗುವುದು:

{
    "device_id": <device_id>,
    "timestamp" : <time>,
    "gps" :
    {
        "lat" : <latitude>,
        "lon" : <longitude>
    }
}

ಕಾರ್ಯ - ನಿಮ್ಮ ಸರ್ವರ್‌ಲೆಸ್ ಕೋಡ್ ಅನ್ನು ಸಂಗ್ರಹಣೆಗೆ ಸಂಪರ್ಕಿಸಿ

  1. ಒಂದು ಅಜೂರು ಸಂಗ್ರಹಣಾ ಖಾತೆಯನ್ನು ರಚಿಸಿ. ಅದಕ್ಕೆ gps<ನಿಮ್ಮ ಹೆಸರು> ಎಂಬಂತೆ ಹೆಸರು ನಿಡಿ.

    ⚠️ ನೀವು ಅಗತ್ಯವಿದ್ದರೆ ಪ್ರೊಜೆಕ್ಟ್ 2, ಪಾಠ 5 ರಿಂದ ಸಂಗ್ರಹಣಾ ಖಾತೆ ರಚಿಸುವ ಸೂಚನೆಗಳು ಸಂದರ್ಶಿಸಬಹುದು.

    ಕಳೆದ ಪ್ರೊಜೆಕ್ಟ್‌ನಿಂದ ಕೆಳಗಿನ ಸಂಗ್ರಹಣ ಖಾತೆಯಿದ್ದರೆ ಅದನ್ನು ಪುನರ Arrow ೂಪಯೋಗಿಸಬಹುದು.

    💁 ಈ ಪಾಠದಲ್ಲಿ ನಂತರ ನಿಮ್ಮ ಅಜೂರು ಫಂಕ್ಷನ್ಸ್ ಅಪ್ ಅನ್ನು ನಿಯೋಜಿಸಲು ನೀವು ಅದೇ ಸಂಗ್ರಹಣ ಖಾತೆಯನ್ನು ಬಳಸಬಹುದು.

  2. ಕೆಳಗಿನ ಕಮಾಂಡ್ ರನ್ ಮಾಡಿ ಸಂಗ್ರಹಣ ಖಾತೆಗಾಗಿ ಸಂಪರ್ಕ ಸ್ಟ್ರಿಂಗ್ ಪಡೆಯಿರಿ:

    az storage account show-connection-string --output table \
                                              --name <storage_name>
    

    <storage_name> ಅನ್ನು ನೀವು ರಚಿಸಿದ ಸಂಗ್ರಹಣ ಖಾತೆಯ ಹೆಸರಿನಿಂದ ಬದಲಾಯಿಸಿ.

  3. local.settings.json ಫೈಲ್‌ಗೆ ನಿಮ್ಮ ಸಂಗ್ರಹಣ ಖಾತೆಯ ಸಂಪರ್ಕ ಸ್ಟ್ರಿಂಗ್‌ಗಾಗಿ ಹೊಸ ಎಂಟ್ರಿಯನ್ನು ಸೇರಿಸಿ, ಹಿಂದಿನ ಹಂತದಿಂದ ಲಭ್ಯವಿರುವ ಮೌಲ್ಯವನ್ನು ಉಪಯೋಗಿಸಿ. ಅದಕ್ಕೆ STORAGE_CONNECTION_STRING ಎಂದು ಹೆಸರು ನಿಡಿ.

  4. requirements.txt ಫೈಲ್‌ಗೆ ಕೆಳಗಿನ ಪೈಥನ್ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಸೇರ್ಪಡೆ ಮಾಡಿ ಅಜೂರು ಸಂಗ್ರಹಣಾ ಪಿಪ್ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿರಿ:

    azure-storage-blob
    

    ಈ ಫೈಲ್‌ನಲ್ಲಿರುವ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ನಿಮ್ಮ ವರ್ಚುಯಲ್ ಎನ್‌ವೈರನ್ಮೆಂಟ್‌ನಲ್ಲಿ ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಿ.

    ದೋಷ ಬಂದರೆ, ನಿಮ್ಮ ವರ್ಚುಯಲ್ ಎನ್‌ವೈರನ್ಮೆಂಟ್‌ನಲ್ಲಿ ಪಿಪ್ ಆವೃತ್ತಿಯನ್ನು ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗೆ ಅಪ್‌ಗ್ರೇಡ್ ಮಾಡಿ, ನಂತರ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ:

    pip install --upgrade pip
    
  5. iot-hub-trigger__init__.py ಫೈಲ್‌ನಲ್ಲಿ ಕೆಳಗಿನ ಇಂಪೋರ್ಟ್ ಸೂಚನೆಗಳನ್ನು ಸೇರಿಸಿ:

    import json
    import os
    import uuid
    from azure.storage.blob import BlobServiceClient, PublicAccess
    

    json ಸಿಸ್ಟ್ MODULEನ್ನು JSON ಓದಲು ಮತ್ತು ಬರೆಯಲು ಬಳಸಲಾಗುತ್ತದೆ, os CONNECTION STRING ಓದಲು, ಮತ್ತು uuid ಎಕ್ಸ್‌ಕ್ಲೂಸಿವ್ GPS ರೀಡಿಂಗ್‌ಗೆ ಐಡಿ ನಿರ್ಮಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ.

    azure.storage.blob ಪ್ಯಾಕೇಜ್ ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಯೊಂದಿಗೆ ಕೆಲಸ ಮಾಡಲು Python SDK ಅನ್ನು ಒಳಗೊಂಡಿದೆ.

  6. main ವಿಧಾನಕ್ಕೆ ಮೊದಲು ಕೆಳಗಿನ ಸಹಾಯಕ ಫಂಕ್ಷನ್ ಅನ್ನು ಸೇರಿಸಿ:

    def get_or_create_container(name):
        connection_str = os.environ['STORAGE_CONNECTION_STRING']
        blob_service_client = BlobServiceClient.from_connection_string(connection_str)
    
        for container in blob_service_client.list_containers():
            if container.name == name:
                return blob_service_client.get_container_client(container.name)
    
        return blob_service_client.create_container(name, public_access=PublicAccess.Container)
    

    Python ಬ್ಲಾಬ್ SDK ನಲ್ಲಿ ಕಂಟೇನರ್ ಇಡುವುದು ಇಲ್ಲದಿರುವ ಸ್ಥಿತಿಯಲ್ಲಿ ಸಹಾಯಕವಿರುವ ವಿಧಾನವಿಲ್ಲ. ಈ ಕೋಡ್ local.settings.json ಫೈಲ್ (ಅಥವಾ ಮೋಡ/cloud ಸುತ್ತಿನಲ್ಲಿ ನಿಯೋಜನೆಯ ನಂತರ Application Settings) ನಿಂದ ಸಂಪರ್ಕ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಲೋಡ್ ಮಾಡುತ್ತದೆ, ನಂತರ BlobServiceClient ಕ್ಲಾಸ್ ರಚಿಸಿ ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣಾ ಖಾತೆಯೊಂದಿಗೆ ಸಂವಹನ ಮಾಡುತ್ತದೆ. ನಂತರ ಎಲ್ಲಾ ಕಂಟೇನರ್‌ಗಳ ಮೂಲಕ ಸುತ್ತುತ್ತದೆ, ನೀಡಲಾದ ಹೆಸರಿನ ಕಂಟೇನರ್ ಇದ್ದರೆ ಅದನ್ನು ಹುಡುಕಿ ContainerClient ಕ್ಲಾಸ್ ಅನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ ಕುಂಟೇನರ್ ಜೊತೆಗೆ ಬ್ಲಾಬ್ ಸೃಷ್ಟಿಸಲು. ಒಂದು ಕೂಡ ಕಾಣದಿದ್ದರೆ, ಕಂಟೇನರ್ ರಚಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಹೊಸ ಕಂಟೇನರ್ ಕ್ಲೈಂಟ್ ಹಿಂತಿರುಗುತ್ತದೆ.

    ಹೊಸ ಕಂಟೇನರ್ ರಚಿಸಿದಾಗ, ಸಾರ್ವಜನಿಕ ಪ್ರವೇಶವನ್ನು ಬ್ಲಾಬ್‌ಗಳ ಪರಿಶೀಲನೆಗೆ ನೀಡಲಾಗುತ್ತದೆ. ಈ ವಿಷಯ ಮುಂದಿನ ಪಾಠದಲ್ಲಿ GPS ಡೇಟಾವನ್ನು ನಕ್ಷೆಯಲ್ಲಿ ಪ್ರದರ್ಶನ ಮಾಡಲು ಉಪಯೋಗಿಸಲಾಗುತ್ತದೆ.

  7. ಮಣ್ಣು ತೇವಾಂಶದೊಂದಿಗೆ ಭಿನ್ನವಾಗಿ, ಈ ಕೋಡ್‌ನಲ್ಲಿ ಪ್ರತಿಯೊಂದು ಘಟನೆಯನ್ನು ಸಂಗ್ರಹಿಸಲು ಬಯಸುತ್ತೀರಿ, ಆದ್ದರಿಂದ main ಫಂಕ್ಷನ್‌ನ for event in events: ಲೂಪ್ ಒಳಗಾಗಿಯೇ ಕಳುಹಿಸಿರಿ, logging ಸ್ಟೇಟ್ಮೆಂಟ್ ಕೆಳಗೆ:

    device_id = event.iothub_metadata['connection-device-id']
    blob_name = f'{device_id}/{str(uuid.uuid1())}.json'
    

    ಈ ಕೋಡ್ ಘಟನೆ ಮೆಟಾಡೇಟಾದಿಂದ ಸಾಧನ ID ಪಡೆಯುತ್ತದೆ ಮತ್ತು ಅದನ್ನು ಬಳಸಿಕೊಂಡು ಒಂದು ಬ್ಲಾಬ್ ಹೆಸರು ರಚಿಸುತ್ತದೆ. ಬ್ಲಾಬ್‌ಗಳು ಫೋಲ್ಡರ್‌ಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಬಹುದು, ಮತ್ತು ಸಾಧನ ID ಫೋಲ್ಡರ್ ಹೆಸರಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ಪ್ರತಿ ಸಾಧನಕ್ಕೂ ಅದರ ಎಲ್ಲಾ GPS ಘಟನೆಗಳು ಒಂದು ಫೋಲ್ಡರ್‌ನಲ್ಲೇ ಇರುತ್ತವೆ. ಬ್ಲಾಬ್ ಹೆಸರು ಈ ಫೋಲ್ಡರ್ ಬಳಿಕ ಡಾಕ್ಯುಮೆಂಟ್ ಹೆಸರನ್ನು, ಮುಂಭಾಗದ slash ಗಳಿಂದ ವಿಭಜಿಸಲಾಗುತ್ತದೆ, ಲಿನಕ್ಸ್ ಮತ್ತು macOS ಪಥಗಳ ಹಾಗೆ (ವಿಂಡೋಸ್ ಕೂಡ ಹೀಗೆ ಆದರೆ ಲಿಂಕ್ಸ್ ಬದಿಗೆ ಬಾಯಲ್ಗಳು ಬಳಸುತ್ತದೆ). ಡಾಕ್ಯುಮೆಂಟ್ ಹೆಸರು ಪೈಥಾನ್ uuid ಮೋಡ್ಯೂಲ್ ಬಳಸಿ ರಚಿಸಲಾಗುವ ಯುನಿಕ್ ID ಜೊತೆಗೆ .json ಫೈಲ್ ಪ್ರಕಾರ.

    ಉದಾಹರಣೆಗೆ, gps-sensor ಸಾಧನ IDಗೆ, ಬ್ಲಾಬ್ ಹೆಸರು gps-sensor/a9487ac2-b9cf-11eb-b5cd-1e00621e3648.json ಇರಬಹುದು.

  8. ಈ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ:

    container_client = get_or_create_container('gps-data')
    blob = container_client.get_blob_client(blob_name)
    

    ಈ ಕೋಡ್ get_or_create_container ಸಹಾಯಕ ಬಳಸಿ ಕಂಟೇನರ್ ಕ್ಲೈಂಟ್ ಪಡೆಯುತ್ತದೆ, ನಂತರ ಬ್ಲಾಬ್ ಹೆಸರಿನಿಂದ ಬ್ಲಾಬ್ ಕ್ಲೈಂಟ್ ಅನ್ನು ಪಡೆಯುತ್ತದೆ. ಈ ಬ್ಲಾಬ್ ಕ್ಲೈಂಟ್‌ಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಬ್ಲಾಬ್‌ಗಳಿಗೆ ಅಥವಾ ಈ ಪ್ರಕರಣದಲ್ಲಿ ಹೊಸ ಬ್ಲಾಬ್‌ಗೆ ಸೂಚಿಸಬಹುದು.

  9. ಈ ಕೋಡ್ ಸೇರಿಸಿ:

    event_body = json.loads(event.get_body().decode('utf-8'))
    blob_body = {
        'device_id' : device_id,
        'timestamp' : event.iothub_metadata['enqueuedtime'],
        'gps': event_body['gps']
    }
    

    ಈ ಕೋಡ್ ಬ್ಲಾಬ್ ಬಾಡಿಯನ್ನು ರಚಿಸುತ್ತದೆ, ಅದು ಬ್ಲಾಬ್ ಸಂಗ್ರಹಣೆಗೆ ಬರೆಯಲಾಗುತ್ತದೆ. ಇದು ಸಾಧನ ID, IoT ಹಬ್‌ಗೆ ಟೆಲಿಮೆಟ್ರಿ ಕಳುಹಿಸಿದ ಸಮಯ ಮತ್ತು ಟೆಲಿಮೆಟ್ರಿಯಿಂದ GPS ಸಂಯೋಜನೆಗಳನ್ನು ಹೊಂದಿರುವ JSON ಡಾಕ್ಯುಮೆಂಟ್ ಆಗಿದೆ.

    💁 ಸಂದೇಶ ಕಳುಹಿಸಲಾದ ಸಮಯವನ್ನು ಪಡೆಯಲು ಮೆಸೇಜಿನ enqueue ಮಾಡಿದ ಸಮಯವನ್ನು ಬಳಸುವುದು ಮುಖ್ಯ, ಅಲ್ಲದಿದ್ದರೆ ಸಂದೇಶ ಫಂಕ್ಷನ್ಸ್ ಅಪ್ಲಿಕೇಶನ್ ಆಡುತ್ತಿಲ್ಲದಿದ್ದರೆ ಹಬ್‌ನಲ್ಲಿ ಕೆಲವು ಸಮಯ ನಿಲ್ಲಬಹುದು.

  10. ಈ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ:

    logging.info(f'Writing blob to {blob_name} - {blob_body}')
    blob.upload_blob(json.dumps(blob_body).encode('utf-8'))
    

    ಈ ಕೋಡ್ ಬ್ಲಾಬ್ ಬರೆಯಲಿರುವ ವಿವರಗಳನ್ನು ಲಾಗ್ ಮಾಡುತ್ತದೆ, ನಂತರ ಬ್ಲಾಬ್ ಬಾಡಿಯನ್ನು ಹೊಸ ಬ್ಲಾಬ್‌ಗಾಗಿ ಅಪ್‌ಲೋಡ್ ಮಾಡುತ್ತದೆ.

  11. ಫಂಕ್ಷನ್ಸ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ರನ್ ಮಾಡಿ. ನೀವು ಎಲ್ಲಾ GPS ಘಟನೆಗಳಿಗಾಗಿ ಬ್ಲಾಬ್‌ಗಳು ಬರೆಯಲ್ಪಡುವುದನ್ನು output ನಲ್ಲಿ ನೋಡಬಹುದು:

    [2021-05-21T01:31:14.325Z] Python EventHub trigger processed an event: {"gps": {"lat": 47.73092, "lon": -122.26206}}
    ...
    [2021-05-21T01:31:14.351Z] Writing blob to gps-sensor/4b6089fe-ba8d-11eb-bc7b-1e00621e3648.json - {'device_id': 'gps-sensor', 'timestamp': '2021-05-21T00:57:53.878Z', 'gps': {'lat': 47.73092, 'lon': -122.26206}}
    

    💁 ನೀವು IoT ಹಬ್ ಘಟನೆ ಮೊನಿಟರ್ ಕೂಡ ಸಮಯದಲ್ಲಿ ರನ್ ಆಗಿರದಿರುವುದು ಗಮನಿಸಿ.

💁 ಈ ಕೋಡ್ ಅನ್ನು ನೀವು code/functions ಫೋಲ್ಡರ್‌ನಲ್ಲಿ ಕಾಣಬಹುದು.

ಕಾರ್ಯ - ಅಪ್ಲೋಡ್ ಮಾಡಿದ ಬ್ಲಾಬ್‌ಗಳನ್ನು ಪರಿಶೀಲಿಸಿ

  1. ರಚಿಸಿರುವ ಬ್ಲಾಬ್‌ಗಳನ್ನು ನೋಡಲು, ನೀವು Azure Storage Explorer ಎಂಬ ಉಚಿತ ಟೂಲ್ ಬಳಸಬಹುದು ಅಥವಾ CLI ನಿಂದ.

    1. CLI ಬಳಸಲು ಮೊದಲು ಖಾತೆ ಕೀಲಿಯ ಅಗತ್ಯವಿದೆ. ಈ ಕಮಾಂಡ್ ರನ್ ಮಾಡಿ ಕೀಲಿಯನ್ನು ಪಡೆಯಿರಿ:

      az storage account keys list --output table \
                                   --account-name <storage_name>
      

      <storage_name> ಅನ್ನು ಖಾತೆಯ ಹೆಸರಿನಿಂದ ಬದಲಾಯಿಸಿ.

      key1 ಮೌಲ್ಯವನ್ನು ನಕಲಿಸಿಕೊಳ್ಳಿ.

    2. ಕೆಳಗಿನ ಕಮಾಂಡ್ ರನ್ ಮಾಡಿ ಕಂಟೇನರ್‌ನ ಬ್ಲಾಬ್‌ಗಳ ಪಟ್ಟಿ ಪಡೆಯಿರಿ:

      az storage blob list --container-name gps-data \
                           --output table \
                           --account-name <storage_name> \
                           --account-key <key1>
      

      <storage_name> ಅನ್ನು ಖಾತೆಯ ಹೆಸರಿನಿಂದ, ಮತ್ತು <key1> ಅನ್ನು ಕೊನೆಯ ಹಂತದಲ್ಲಿ ನಕಲಿಸಿದ ಮೌಲ್ಯದಿಂದ ಬದಲಾಯಿಸಿ.

      ಇದು ಎಲ್ಲಾ ಬ್ಲಾಬ್‌ಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡುತ್ತದೆ:

      Name                                                  Blob Type    Blob Tier    Length    Content Type              Last Modified              Snapshot
      ----------------------------------------------------  -----------  -----------  --------  ------------------------  -------------------------  ----------
      gps-sensor/1810d55e-b9cf-11eb-9f5b-1e00621e3648.json  BlockBlob    Hot          45        application/octet-stream  2021-05-21T00:54:27+00:00
      gps-sensor/18293e46-b9cf-11eb-9f5b-1e00621e3648.json  BlockBlob    Hot          45        application/octet-stream  2021-05-21T00:54:28+00:00
      gps-sensor/1844549c-b9cf-11eb-9f5b-1e00621e3648.json  BlockBlob    Hot          45        application/octet-stream  2021-05-21T00:54:28+00:00
      gps-sensor/1894d714-b9cf-11eb-9f5b-1e00621e3648.json  BlockBlob    Hot          45        application/octet-stream  2021-05-21T00:54:28+00:00
      
    3. ಕೆಳಗಿನ ಕಮಾಂಡ್ ಬಳಸಿ ಒಂದು ಬ್ಲಾಬ್ ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ:

      az storage blob download --container-name gps-data \
                               --account-name <storage_name> \
                               --account-key <key1> \
                               --name <blob_name> \
                               --file <file_name>
      

      <storage_name> ಖಾತೆಯ ಹೆಸರಿನಿಂದ, <key1> ಕೊನೆಯ ಹಂತದ ಮೌಲ್ಯದಿಂದ ಬದಲಾಯಿಸಿ.

      <blob_name> ಅನ್ನು ಕಳೆದ ಹಂತದ output ನಲ್ಲಿ Name ಕಾಲಮ್‌ನ ಪೂರ್ಣ ಹೆಸರಿನಿಂದ, ಫೋಲ್ಡರ್ ಹೆಸರನ್ನೂ ಸೇರಿಸಿ ಬದಲಾಯಿಸಿ. <file_name> ಅನ್ನು ಸ್ಥಳೀಯ ಫೈಲ್ ಹೆಸರಾಗಿ ಬದಲಾಯಿಸಿ.

    ಡೌನ್‌ಲೋಡ್ ಆದ ನಂತರ, ನೀವು JSON ಫೈಲ್ ಅನ್ನು VS ಕೋಡ್‌ನಲ್ಲಿ ತೆರೆಯಬಹುದು ಮತ್ತು GPS ಸ್ಥಳ ವಿವರಗಳನ್ನು ಹೊಂದಿರುವ ಬ್ಲಾಬ್ ನೋಡಬಹುದು:

    {"device_id": "gps-sensor", "timestamp": "2021-05-21T00:57:53.878Z", "gps": {"lat": 47.73092, "lon": -122.26206}}
    

ಕಾರ್ಯ - ನಿಮ್ಮ ಫಂಕ್ಷನ್ಸ್ ಅಪ್ ಅನ್ನು ಕ್ಲೌಡುಗೆ ನಿಯೋಜಿಸಿ

ನಿಮ್ಮ ಫಂಕ್ಷನ್ ಅಪ್ ಈಗ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದ ಕಾರಣ, ನೀವು ಅದನ್ನು ಕ್ಲೌಡ್‌ಗೆ ನಿಯೋಜಿಸಬಹುದು.

  1. ಹೊಸ ಅಜೂರು ಫಂಕ್ಷನ್ಸ್ ಅಪ್ ರಚಿಸಿ, ನೀವು ಮೊದಲು ರಚಿಸಿದ ಸಂಗ್ರಹಣ ಖಾತೆಯನ್ನು ಬಳಸಿ. ಅದಕ್ಕೆ gps-sensor- ಎಂಬ ಹೆಸರು ನೀಡಿ ಮತ್ತು ಕೊನೆಯಲ್ಲಿ ವಿಶಿಷ್ಟ ಗುರುತಿನ ಸಂಖ್ಯೆ ಅಥವಾ ನಿಮ್ಮ ಹೆಸರು ಅಥವಾ ಕೆಲವು ಯಾದೃಚ್ಛಿಕ ಪದಗಳನ್ನು ಸೇರಿಸಿ.

    ⚠️ ನೀವು ಅಗತ್ಯವಿದ್ದರೆ ಪ್ರೊಜೆಕ್ಟ್ 2, ಪಾಠ 5 ರಿಂದ ಫಂಕ್ಷನ್ಸ್ ಅಪ್ ರಚಿಸುವ ಸೂಚನೆಗಳು ಪರಿಶೀಲಿಸಬಹುದು.

  2. Application Settings ಗೆ IOT_HUB_CONNECTION_STRING ಮತ್ತು STORAGE_CONNECTION_STRING ಮೌಲ್ಯಗಳನ್ನು ಅಪ್‌ಲೋಡ್ ಮಾಡಿ

    ⚠️ ನೀವು ಅಗತ್ಯವಿದ್ದರೆ ಪ್ರೊಜೆಕ್ಟ್ 2, ಪಾಠ 5 ರಿಂದ ಅಪ್ಲಿಕೇಶನ್ ಸೆಟ್ಟಿಂಗ್ಸ್ ಅಪ್‌ಲೋಡ್ ಮಾಡುವ ಸೂಚನೆಗಳು ಪರಿಶೀಲಿಸಬಹುದು.

  3. ನಿಮ್ಮ ಸ್ಥಳೀಯ ಫಂಕ್ಷನ್ಸ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಕ್ಲೌಡ್‌ಗೆ ನಿಯೋಜಿಸಿ.

    ⚠️ ನೀವು ಅಗತ್ಯವಿದ್ದರೆ ಪ್ರೊಜೆಕ್ಟ್ 2, ಪಾಠ 5 ರಿಂದ ಫಂಕ್ಷನ್ಸ್ ಅಪ್ ನಿಯೋಜಿಸುವ ಸೂಚನೆಗಳು ಪರಿಶೀಲಿಸಬಹುದು.


🚀 ಸವಾಲು

GPS ಡೇಟಾ ಸಂಪೂರ್ಣವಾಗಿ ಸರಿಯಾದದು ಅಲ್ಲ, ಮತ್ತು ತೋರಿಸುವ ಸ್ಥಳಗಳು ಕೆಲವು ಮೀಟರ್ಸ್ ವರೆಗೆ ತಪ್ಪಬಹುದು, ವಿಶೇಷವಾಗಿ ಟನಲ್‌ಗಳಲ್ಲಿ ಮತ್ತು ಎತ್ತರದ ಕಟ್ಟಡಗಳ ಪ್ರದೇಶಗಳಲ್ಲಿ.

ಸ್ಯಾಟಲೈಟ್ ನ್ಯಾವಿಗೇಶನ್ ಇದನ್ನು ಹೇಗೆ ಮೀರಿಸಬಹುದು ಎಂದು ಯೋಚಿಸಿ? ನಿಮ್ಮ ಸ್ಯಾಟ್-ನ್ಯಾವ್ ಬಳಿ ಯಾವ ಡೇಟಾ ಇದೆ ಅದು ನಿಮ್ಮ ಸ್ಥಳದ ಬಗ್ಗೆ ಉತ್ತಮ ಅನుమಾನಗಳನ್ನು ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ?

ಉಪನ್ಯಾಸೋತ್ತರ ಕುಯಿಜ್

ಉಪನ್ಯಾಸೋತ್ತರ ಕುಯಿಜ್

ವಿಮರ್ಶೆ ಮತ್ತು ಸ್ವಯಂ ಅಧ್ಯಯನ

ಅಸೈನ್ಮೆಂಟ್

ಫಂಕ್ಷನ್ ಬಾಂಡಿಂಗ್‌ಗಳನ್ನು ಪರಿಶೀಲಿಸಿ


ಬೇರಿಕೆ: ಈ ದಾಖಲೆ Co-op Translator AI ಅನುವಾದ ಸೇವೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಶುದ್ಧತೆಯನ್ನು ಯತ್ನಿಸುತ್ತರೆಂದರೂ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸತ್ಯತೆಗಳು ಇರಬಹುದೆಂದು ದಯವಿಟ್ಟು ಗಮನಿಸಿ. ಮೂಲ ಭಾಷೆಯಲ್ಲಿ ಇರುವ ಮೂಲ ದಾಖಲೆ ಅಧಿಕಾರಿಕ ಮೂಲವಾಗಿ ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿಗಾಗಿ, ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದವನ್ನು ಬಳಕೆಯಿಂದ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ವಿವರಗಳು ಅಥವಾ ತಪ್ಪುಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿಕೆಗಳಿಗೆ ನಾವು ಹೊಣೆಗಾರರಲ್ಲ.