Real-Time Data Processing Using AI Algorithms

Real-time data processing એટલે sensor નો data પછીથી અભ્યાસ કરવા સંઘરવાને બદલે એ આવે એ જ ક્ષણે, વહેતો હોય ત્યારે જ એનું વિશ્લેષણ કરવું, જેથી AIoT system તરત પ્રતિભાવ આપી શકે અને સમસ્યા કે તક બને એ જ ક્ષણે એને પકડી શકે.

10 min read · 6 cards · 2 checks

Read in: English · हिन्दी · ગુજરાતી


Theory

એ જ ક્ષણે ક્રિયા કરવી

કેટલાક નિર્ણયો તરત જ લેવાય તો જ કામના છે. જો AIoT system પાકને અચાનક ઠારનું જોખમ પકડે, કે કોઈ machine તૂટવાની અણી પર હોય, તો કાલે આપેલો પ્રતિભાવ નકામો છે, એણે અત્યારે જ ક્રિયા કરવી પડે. એ માટે real-time data processing જોઈએ: એટલે કે sensor નો data સંઘરીને પછી અભ્યાસ કરવાને બદલે એ આવે એમ જ એનું વિશ્લેષણ કરવું.

આ પાઠ real-time processing સમજાવે છે અને એ પછીથી જથ્થામાં data ચકાસવાથી કઈ રીતે જુદું છે એ દેખાડે છે. AIoT માં, જ્યાં sensors સતત ધારા વહાવે છે અને પરિસ્થિતિ ઝડપથી બદલાય છે, ત્યાં એ જ ક્ષણે પ્રક્રિયા કરીને પ્રતિભાવ આપવાની શક્તિ ઘણી વાર આખો મુદ્દો જ હોય છે. સમય જ બધું હોઈ શકે છે.

Theory

Real-time સામે batch

Data ની પ્રક્રિયા કરવાની બે મોટી રીતો છે. Batch processing data ભેગો કરીને એની પ્રક્રિયા પછીથી, જથ્થામાં કરે છે, જે તાત્કાલિક ન હોય એવા વિશ્લેષણ માટે સારું છે, જેમ કે આખી ઋતુની લઢણોનો અભ્યાસ. Real-time (કે stream) processing data વહેતો આવે એમ જ તરત એનું વિશ્લેષણ કરે છે, જેથી system તત્કાળ પ્રતિભાવ આપી શકે.

AIoT માં sensors વાચનોની સતત ધારા પેદા કરે છે, અને AI algorithms એની real time માં પ્રક્રિયા કરીને તાત્કાલિક નિર્ણય લે છે. ભેદ સમયનો છે: batch પછીથી જવાબ આપે છે કે 'શું બન્યું?'; real-time ઘટના બનતી હોય ત્યારે જ જવાબ આપે છે કે 'અત્યારે શું બની રહ્યું છે અને એનું મારે શું કરવું?'. AIoT નાં ઘણાં કામ, જેમ કે સલામતી, નિયંત્રણ અને ચેતવણીઓ, સ્વભાવે જ real-time છે, કારણ કે એમનું મૂલ્ય તરત મળતા પ્રતિભાવમાં જ છે.

Formula

Real-time અઘરું કેમ છે, અને એ ક્યાં ચાલે છે

Real time માં પ્રક્રિયા કરવી માગણી કરનારું કામ છે: data કદી અટકતો નથી, અને વિશ્લેષણે પાછળ પડ્યા વગર એની સાથે તાલ મિલાવવો પડે છે. એ માટે કાર્યક્ષમ algorithms જોઈએ અને data ની નજીક પૂરતી computing શક્તિ જોઈએ, અને એ જ મુખ્ય કારણ છે કે AIoT ઘણી વાર બધું દૂરના cloud માં મોકલીને જવાબની રાહ જોવાને બદલે edge computing વાપરે છે (એટલે કે ઉપકરણની નજીક પ્રક્રિયા, જે પછીનો વિષય છે).

એટલે real-time processing system ની આખી રચનાને ઘડે છે: AI ક્યાં ચાલે, જોડાણ કેટલું ઝડપી છે, અને model કેટલું કાર્યક્ષમ છે, નિર્ણય રાહ જોઈ શકતો ન હોય ત્યારે આ બધું મહત્ત્વનું બને છે. પ્રક્રિયાને તાકીદ પ્રમાણે બેસાડો: તાત્કાલિક ક્રિયા માટે real-time, અને નિરાંતે વિચારવા માટે batch.

Quiz

કોઈ AIoT system એ અચાનક ઊભા થયેલા ઠારના જોખમને પકડીને પાકને નુકસાન થાય એ પહેલાં એનું રક્ષણ કરવું છે. આ માટે કયા પ્રકારની data પ્રક્રિયા જોઈએ?

  1. Batch processing, એટલે કે data ભેગો કરીને આવતા મહિને એનું વિશ્લેષણ કરવું
  2. Real-time (stream) processing, એટલે કે sensor નો data આવે એમ જ એનું વિશ્લેષણ કરવું જેથી system તરત પ્રતિભાવ આપી શકે
  3. કોઈ પ્રક્રિયા જ નહીં; data ફક્ત સંઘરાય છે
  4. Data ની પ્રક્રિયા ક્યારે થાય એથી કશો ફરક પડતો નથી
Show the answer

Real-time (stream) processing, એટલે કે sensor નો data આવે એમ જ એનું વિશ્લેષણ કરવું જેથી system તરત પ્રતિભાવ આપી શકે

માથે આવેલા ઠારથી પાકનું રક્ષણ કરવા અત્યારે જ ક્રિયા કરવી પડે, એટલે system એ real-time (stream) processing વાપરવું પડે: sensor નો data આવે એમ જ એનું વિશ્લેષણ કરીને નુકસાન થાય એ પહેલાં તરત પ્રતિભાવ આપવો. વિકલ્પ A, એટલે કે batch processing (પછીથી વિશ્લેષણ), સમજ તો આપશે પણ બહુ મોડી, અને ત્યાં સુધીમાં પાકને નુકસાન થઈ ચૂક્યું હશે. વિકલ્પ C ખોટો છે: ફક્ત data સંઘરવાથી સમયસર કોઈ પ્રતિભાવ શક્ય બનતો નથી. વિકલ્પ D ખોટો છે: સમય પર આધારિત જોખમ માટે data ની પ્રક્રિયા ક્યારે થાય એ નિર્ણાયક છે, કારણ કે મોડો નિર્ણય નકામો છે. પ્રક્રિયાને તાકીદ પ્રમાણે બેસાડો: તાત્કાલિક ક્રિયા માટે real-time, અને લઢણોના તાત્કાલિક ન હોય એવા વિશ્લેષણ માટે batch.

Think first

સલામતી ખાતર બધું જ real time માં કેમ ન કરવું?

Real-time processing તાત્કાલિક પ્રતિભાવ શક્ય બનાવે છે, તો AIoT ના બધા data માટે એ જ કેમ ન વાપરવું? વિચારીને પછી tap કરો.

Show the answer

કારણ કે real-time processing batch કરતાં ઘણું વધારે માગણી કરનારું અને મોંઘું છે (computing શક્તિ, ઊર્જા અને રચનાની ગૂંચવણ ત્રણેયમાં), અને ઘણો બધો data સાવ તાત્કાલિક હોતો જ નથી. એટલે બધા માટે real-time વાપરવાથી એવા પ્રતિભાવો પાછળ સાધનો વેડફાય જેમને તાત્કાલિક હોવાની જરૂર જ નથી.

Real-time (stream) processing નો અર્થ એ કે system એ કદી ન અટકતા data ના પ્રવાહનું સતત વિશ્લેષણ કરવું પડે અને પાછળ પડ્યા વગર તાલ મિલાવવો પડે. એ માટે પૂરતી computing ક્ષમતા હંમેશા હાજર અને ચાલુ જોઈએ, કાર્યક્ષમ algorithms જોઈએ, અને ઘણી વાર data ની નજીક જ પ્રક્રિયા જોઈએ (એટલે કે પોતાની computing શક્તિ અને વીજવપરાશવાળાં edge ઉપકરણો). એ ખરેખર batch કરતાં બનાવવામાં તથા ચલાવવામાં અઘરું અને મોંઘું છે, કારણ કે batch તો ચૂપચાપ data ભેગો કરીને અનુકૂળ સમયે, વહેંચાયેલાં સાધનો કાર્યક્ષમ રીતે વાપરીને એને પીસી શકે છે.

સમય પર આધારિત કામો માટે, જેમ કે સલામતીનાં જોખમો, નિયંત્રણના નિર્ણયો અને તાકીદની ચેતવણીઓ, એ ખર્ચ વસૂલ છે, કારણ કે મોડો જવાબ નકામો છે. પણ AIoT નો ઘણો બધો data તાત્કાલિક હોતો નથી: પાકના ઉતારાની લાંબા ગાળાની લઢણો, ઋતુ પ્રમાણેની ભાત, અગાઉનું પ્રદર્શન, વીજવપરાશના અહેવાલ. આમાં તત્કાળ પ્રક્રિયાનો કશો ફાયદો નથી; રાત્રે કે અઠવાડિયે એક વાર જથ્થામાં એમનું વિશ્લેષણ કરવાથી એ જ સમજ ઘણી સસ્તી અને સહેલી રીતે મળે છે.

બધું જ real-time માંથી પસાર કરવાથી વધારાની computing શક્તિ, ઊર્જા અને પૈસા બળે, અને એ પણ એવા પ્રશ્નોના 'તાત્કાલિક' જવાબ આપવા માટે જ્યાં તાત્કાલિકતાનું કશું મૂલ્ય જ નથી. એ વેડફાટ છે, ખાસ કરીને battery પર ચાલતી કે મર્યાદિત સાધનોવાળી IoT ગોઠવણોમાં, જ્યાં વીજળી અને ક્ષમતા બંને કીમતી છે.

એટલે સમજદાર રચના પ્રક્રિયાની રીતને કામની તાકીદ સાથે બેસાડે છે: જ્યાં તરત મળતો પ્રતિભાવ મૂલ્ય પેદા કરે ત્યાં real-time, અને જ્યાં સમય જતાં થતું ચિંતન જોઈએ ત્યાં batch. આ પણ 'કામ પ્રમાણે ઓજાર' વાળો જ નિર્ણય છે, અને સારી પસંદગી કરવાથી system જ્યાં જરૂરી હોય ત્યાં ચપળ રહે છે અને બાકી બધે કાર્યક્ષમ. મોંઘું real-time processing ખરેખર સમય પર આધારિત હોય એના માટે જ રાખો.

Summary

Key takeaways

  • Real-time data processing એ sensor નો data વહેતો આવે એમ જ તરત એનું વિશ્લેષણ કરે છે, જેથી system તત્કાળ પ્રતિભાવ આપી શકે.
  • Batch processing એની જગ્યાએ data ભેગો કરીને પછીથી જથ્થામાં એની પ્રક્રિયા કરે છે, જે લઢણોના તાત્કાલિક ન હોય એવા વિશ્લેષણ માટે બરાબર છે.
  • AIoT માં sensors સતત ધારા પેદા કરે છે; AI algorithms એની real time માં પ્રક્રિયા કરીને તાત્કાલિક નિર્ણય લે છે.
  • ભેદ સમયનો છે: batch જવાબ આપે છે કે 'શું બન્યું?'; real-time જવાબ આપે છે કે 'અત્યારે શું બની રહ્યું છે અને શું કરવું?'.
  • Real-time માગણી કરનારું છે: એને કાર્યક્ષમ algorithms અને data ની નજીક computing શક્તિ જોઈએ, અને એટલે જ AIoT edge computing વાપરે છે.
  • સમય પર આધારિત કામો (સલામતી, નિયંત્રણ, ચેતવણીઓ) માટે real-time વાપરો અને તાત્કાલિક ન હોય એવા વિશ્લેષણ માટે batch, કારણ કે real-time વધારે મોંઘું પડે છે.
  • યાદ રાખવાની કડી: real-time data આવે એમ પ્રક્રિયા કરીને તરત ક્રિયા કરાવે છે; batch પછીથી પ્રક્રિયા કરીને નિરાંતે સમજ આપે છે.

Study this properly

This page is the lesson to read. In Gri-Learn the same topic is a graded deck: the self-checks are scored and your weak topics are tracked. Free to start.

Start this topic

Already have an account? Sign in

More from Advanced Integration of AI with IoT

Gri-Learn · syllabus-mapped B.C.A. lessons in English, Hindi and Gujarati

Real-Time Data Processing Using AI Algorithms · Concepts of A.I. and IoT Devices (Minor-6-02) · Gri-Learn