داده های اینترنت اشیاء را با معنی کنید

ذخیره، تحلیل و اعمال قوانین بر روی داده های اینترنت اشیاء

هرچه اشیاء بیشتری به اینترنت اشیاء متصل می شوند، حجم داده ای که توسط دیوایس ها ایجاد می شود و یا با آنها در ارتباط است، بالاتر می رود. چند مثال از این نوع داده ها وضعیت دیوایس ها، متادیتا ها و داده های ناشی از خواندن از سنسورها می باشند که به شدت افزایش می یابند. در صورتی که میخواهید پروژه تان ارزشمند باشد، مدیریت و معنی داده به این داده ها ضروری است.

تحلیل داده ها می تواند بر روی داده های اینترنت اشیاء جهت ایجاد داشبوردها، گزارش ها و اعلانات اعمال می شوند تا سالم بودن و وضعیت دیوایس های متصل را مانیتور کنند و داده های دریافتی از سنسورها را نمایش دهند. تحلیل ها برای شناسایی الگوها، تشخیص ناهنجاری ها و پیش بینی نتایج از روی داده ها و همچنین انجام اقدامات با توجه به قوانین استفاده می شود.

در این مقاله قصد داریم درباره چند رویکرد از سر و کار با داده ها شامل ذخیره داده، پردازش و تحلیل داده، و اعمال قوانین صحبت کنیم.

ذخیره داده

دیوایس های اینترنت اشیاء معمولا قابلیت ذخیره ی داده ی محدودی دارند، پس توده ی داده ای که توسط دیوایس ها تولید شده اند، می بایست با استفاده از پروتکل های ارتباطی مانند MQTT و CoAP با سرویس های اینترنت اشیاء ارتباط بگیرند و سپس پردازش و تحلیل بر روی آنها انجام شود. میزان داده ای که می توان با سرویس ها و اپلیکیشن های اینترنت اشیاء ذخیره کرد و سپس دسترسی پیدا کرد، حتی بیشتر از قبل خواهد بود.

ذخیره سازی داده ها، تنها نگرانی ما از سر و کار داشتن با حجم بالایی از داده ها نیست؛ دیگر نگرانی های ما عبارتند از:

– سر و کار داشتن با داده های ناهمگون

– انتقال، جداسازی و جمع کردن داده ها جهت آماده کردن آنها برای اعمال تحلیل ها در حین تعقیب کردن منشاء داده ها

– امن سازی داده ها جهت حفظ صخت و حریم خصوصی آن ها

– انتخاب فناوری های ذخیره سازی جهت اطمینان از تعادل بین بهره وری بالا، قابلیت اطمینان، انعطاف پذیری و مقیاس پذیری و هزینه

داده های ناهمگون

داده ای که توسط دیوایس های اینترنت اشیاء دریافت می شود، مخلوطی از قالب های داده ی مختلف، شامل ساختارمند، نیمه ساختارمند و بدون ساختار می باشد. این داده ممکن است شامل داده های گسسته ی سنسورها، متادیتاهای سلامت دیوایس یا فایل های بزرگ مثل عکس و ویدیو باشد. چون داده های اینترنت اشیاء به بک قالب نیستند، رویکرد داده های یک اندازه برای ذخیره سازی داده های اینترنت اشیاء وجود ندارد.

انتقال داده

داده ها معمولا بر روی دیوایس ها یا به درگاه ها ارسال می شوند. وقایع ممکن است به دلیل ارسال بدون ترتیب، نیاز به ­­مرتب شدن داشته باشند و اگر داده ای به زمان حساسیت داشته باشد، ممکن است دور ریخته شود.

اطلاعات منبع درباره ی سنسوری که داده را دریافت کرده و محل و برچسب زمانی آنها اغلب در همین نقطه پیوست می شوند. ذخیره سازی داده های خام برای خطایابی و تحلیل تاریخچه ای مفید می باشند ولی ذخیره و پیش پردازش داده ها، اگر داده ها نیاز به تحلیل بیش از یک بار داشته باشند، از تکرار انتقالات بسیار سنگین جلوگیری می کند.

مطمئن شوید که داده هایتان را منتقل می کنید و سپس درباره ی اینکه داده را انتقال و ذخیره کرده تا در هزینه ی پهنای باند و ذخیره سازی صرفه جویی کنید، تصمیم گیری کنید

امن سازی داده

داده ها باید به طور امن ارسال و ذخیره شوند تا صحت و حریم خصوصی شان حفظ شود. این اتفاق با استفاده از پروتکل های امن و رمزنگاری ممکن می باشد.

فناوری های ذخیره سازی داده

چون پروژه های اینترنت اشیاء پیچیده می باشند، شما نیاز دارید که مجموعه از استراتژی های ذخیره سازی داده را استفاده کنید.

فناوری های ذخیره سازی داده که برای داده هایی که به طور موقتی در لبه یعنی زمانی که داده بر روی دیوایس یا درگاه در حال پردازش می باشد، ذخیره می کنید، باید از لحاظ فیزیکی قدرتمند باشند (برای دوام آوردن به هنگام کارکردن در محیط های سختی که دیوایس ها آنجا نصب هستند)، اما در عین حال سریع و قابل اعتماد باشند تا پیش پردازش ها بتوانند به سرعت و با دقت قبل از ارسال داده به قسمت بالادستی، انجام شوند. ذخیره سازی داده ی دیوایس، می تواند از مزیت های فناوری های حافظه ی نسل پیش رو و غیر فرار (NVRAM) مانند فناوری سه بعدی X نقطه ای و ReRAM که بیش از هزار برابر از NAND فلش ها سریع تر هستند و از DRAM ها کمتر توان مصرف می کنند، استفاده کنند.

زمانی که داده از دیوایسی که آن را تولید کرده ارسال می شود، می تواند در فضای ابری، on permises و یا هردو ذخیره شود.

داده مقصد خود را با توجه به اهداف مختلفی انتخاب می کند. برای داده ای که برای اهداف آرشیوی در نظر گرفته شده است، نسبت به داده ای که به تحلیل آنی نیاز دارد، از رویکردهای ذخیره سازی متفاوتی استفاده می شود تا متمم رویکرد تحلیلی ای که اتخاذ کرده است، باشد. دسترسی به داده باید سریع بوده و از آنالیز گسسته و آنی پشتیبانی کند. فناوری های ذخیره سازی که برای اینگونه داده ها باید اتخاذ شود، باید خواندن و نوشتن همزمان، موجودیت حداکثری پشتیبانی کنند و شامل فهرست هایی باشند که بتوان آن ها را برای بهینه کردن دسترسی به داده ها پیکربندی نمود.

داده های آرشیو شده در حجم بالا می توانند در فضای ابری ذخیره شوند که این عمل باعث پایین آمدن سرعت دسترسی ولی در عین حال کم شدن هزینه ها و ارتجاعی بودن می شود که با بالارفتن حجم داده ها خود را نشان می دهد. دسترسی به قالب فایل های بزرگ مانند ویدیو معمولا به صورت پی در پی می باشد که ممکن است این داده با استفاده از ذخیره سازی شیئی ذخیره شود(مانند OpenStak Object Storage  که به عنوان Swift شناخته می شود.)، و یا به طور مستقیم در سامانه های توزیع شده ی فایل مانند Hadoop HDFS یا IBM GPFS نوشته شود. ابزارهای انبار داده مانند Apache Hive می توانند با مدیریت خواندن، نوشتن و دسترسی به داده ای که در فضای توزیع شده ذخیره شده است، در تعامل باشند.

فناوری های ذخیره سازی داده که اغلب در اینترنت اشیاء به کار می روند، شامل پایگاه های داده NoSQL و پایگاه های داده ی زمان متوالی می باشند.

پایگاه های داده NoSQL یک انتخاب محبوب برای استفاده در تحلیل داده های اینترنت اشیاء هستند؛ چون آنها از بازدهی بالا و تاخیر کم پشتیبانی می کنند و رویکرد schema-less آنها انعطاف پذیر بوده که به انواع داده ها اجازه ی اضافه شدن را می دهد. پایگاه های داده NoSQL متن بازکه برای داده های اینترنت اشیاء استفاده می شوند، عبارتند از: Couchbase ، Apache Cassandra ، Apache CouchDB ، MongoDB و Apache Hbase که یک پایگاه داده ی NoSQL برای Hadoop می باشد. میزبانی فضای ابری NoSQL توسط IBM’s Cloudant و AWS DynamoDB فراهم شده است.

– پایگاه های داده ی زمان متوالی می توانند رابطه ای بوده و یا برپایه ی رویکرد NoSQL باشند. این پایگاه داده ها به طور اختصاصی برای داده های مبتنی بر زمان طراحی شده اند که برای بسیاری از داده های سنسورها که زمانی بودن در ذاتشان است، ایده آل می باشد. پایگاه های داده ی زمان متوالی عبارتند از: InfluxDB ، OpenTSB ، Riak ، Prometheus و Graphite.

تحلیل داده

داده های اینترنت اشیاء نیاز به تحلیل دارند تا مورد استفاده قرار بگیرند، اما پردازش دستی حجم بالای داده هایی که دیوایس های اینترنت اشیاء تولید می کنند، عملی نیست. پس بسیاری از پروژه های اینترنت اشیاء از تحلیل های خودکار استفاده می کنند.

ابزارهای تحلیل بر روی داده هایی همچون داده های وضعیت دیوایس و خوانده شده توسط سنسور، جهت ساختن گزارش های توصیفی به کار می روند تا داده ها را از طریق داشبوردها و نمایش دهنده ها ارائه کرده و اقدامات یا اعلاناتی را انجام دهند.

تعداد زیادی فریمورک های تحلیل گر و پلتفرم های اینترنت اشیاء هستند که در پروژه ی اینترنت اشیاء شما می توانند بر روی داده ها تحلیل انجام دهند. تحلیل ها می توانند به طور آنی و درست در همان زمانی که داده دریافت می شود و یا بر روی داده های ذخیره شده اند، انجام شوند. رویکزد های تحلیلی عبارتند از: تحلیل توزیع شده، تحلیل آنی، تحلیل لبه و یادگیری ماشین.

تحلیل توزیع شده

این تحلیل برای سامانه های اینترنت اشیاء جهت تحلیل در مقیاس و به خصوص برای داده های تاربخچه ای که برای ذخیره و پردازش در یک نقطه بسیار وسیع می باشند، مهم است. داده می تواند به پایگاه های داده ی چندگانه ارسال شود؛ به طور مثال داده می تواند برای هر دیوایس به صورت ساعتی، روزانه یا ماهانه، به پایگاه های داده ارسال شود مانند IBM Watson IoT Historian Service که به Cloudant NoSQL وصل می شود تا داده در آنجا ذخیره شود. تحلیل ها ممکن است شامل پخش کردن نتایج در نقاط جغرافیایی چندگانه باشد. شما نیاز دارید که فریمورک یک تحلیل یا راه انداز ذخیره ساز را که به فضای توزیع شده متصل می شود انتخاب کنید تا اتصال به این پایگاه های داده ی توزیع شده بدون مشکل انجام شود.

Apache Hadoop یک فریمورک برای پردازش دسته ی داده هاست که از موتور MaoReduce برای پردازش داده های توزیع شده استفاده می کند. این فریمورک یکی از اولین فریمورک های متن باز می باشد که برای تحلیل داده های بزرگ به کار می رود. Hadoop برای تحلیل تاریخچه ای داده های اینترنت اشیاء و آنجاهایی که حساسیت به زمان مطرح نیست، ایده آل است؛ مانند انجام تحلیل بر روی یک گروه از داده ها و نتیجه گیری کردن در یک زمان دیگر.

تحلیل آنی

تحلیل داده های با حجم بالا در اینترنت اشیاء اغلب به طور آنی انجام می گیرد، به خصوص اگر داده ها به زمان حساس باشند. در این موارد ما به دلیل اینکه استفاده از پردازشهای گروهی برای نتیجه دادن زمان می برد و تاخیر برای ما مسئله ی مهمی می باشد، از تحلیل آنی استفاده می کنیم.

تحلیل های آنی همچنین برای داده های زمان متوالی مورد استفاده می باشند؛ چون بر خلاف پردازش گروهی، ابزارهای تحلیل آنی معمولا از کنترل تحلیل پنجره ی زمانی و محاسبه با معیارهای گردشی پشتیبانی می کنند. مثل دنبال کردن میانگین ها به طور ساعتی به جای محاسبه ی تک تک میانگین ها در یک گروه از داده.

فریمورک هایی که برای تحلیل آنی طراحی شده اند عبارتند از Apache Storm و Apache Samza ( که معمولا به همراه Kafka و Hadoop YARN به کار می رود). موتورهای ترکیبی که برای تحلیل آنی و گروهی به کار می روند شامل Apache Apex ، Apache Spark و Apache Flink می باشند. Apache Kafka به عنوان یک لایه ی جاذب به کار می رود که می تواند بالای یک موتور مانند Spark ، Storm یا Hadoop قرار بگیرد.

تحلیل لبه

تحلیل های اینترنت اشیاء معمولا بر روی داده های خام دیوایس اعمال نمی شوند. داده ابتدا پیش پردازش می شود تا اگر کپی ای از آن وجود داشت، با توجه به نوع تحلیل مورد استفاده دور ریخته شود، مرتب شده و جمع آوری یا نرمالیزه می شود. این نوع تحلیل معمولا در نقطه ی شروع رسیدن داده در دیوایس و یا درگاه که داده ها جمع آوری می شوند، اعمال می شود تا تصمیم گیری شود که کدام داده ها به دیوایس های بالادستی ارسال شوند.

تحلیلی که بر لبه ی شبکه و دقیقا در زمان ساختن داده ها اعمال می شوند، به عنوان تحلیل لبه شناخته می شود. پلتفرم اینترنت اشیاء IBM Watson شامل یک SDK از تحلیل لبه می باشد. Apache Edgent (که سابقا با اسم Quarks شناخته می شد)، یک مثال از یک موتور نهفته ی تحلیل گر سبک و متن باز می باشد که برای استفاده در دیوایس ها و درگاه های اینترنت اشیاء طراحی شده است. فریمورک EdgeX Foundry نیز یک فریمورک محاسبه کننده ی لبه ای برای اینترنت اشیاء و برپایه ی لینوکس می باشد.

تحلیل لبه باعث پایین آمدن تاخیر و کاهش نیاز به پهنای باند می شود؛ زیرا همه ی داده های دیوایس نیازی به ارسال ندارند. با این حال، دیوایس های محدود قابلیت پردازشی محدودی دارند و برای استفاده از آن ها در پروژه های اینترنت اشیاء از ترکیبی از تحلیل های لبه و بالادستی بهره می برند.

یادگیری ماشین

استفاده از مدل های مرسوم ریاضی-آماری برای تحلیل به دلیل اینکه می تواند در دنبال کردن هدف، ایجاد گزارش و مشاهدات، پیش بینی روند ها و ساختن شبیه سازی هایی که قابلیت پیش بینی و بهینه سازی برای رسیدن به خروجی خاص، استفاده شود، ارزشمند می باشد. به طور مثال شما می توانید خروجی را به ازای اعمال یک حرکت خاص پیش بینی کنید، زمان خراب شدن یک قطعه را پیش بینی کنید و یا پیکربندی سامانه ی خود را ازلحاط هزینه و کارایی بهینه کنید. با این حال، ارزش تحلیل بر اساس مدل های آماری زمانی که در حال استفاده از داده های پویا هستیم و چندین متغیر در طول زمان تغییر می کنند و ما نمی دانیم کدام یک را باید برای بهینه سازی تعقیب کنیم، کاهش می یابد. کاهش هزینه ها و بالا بردن بهره وری مثالی از این متغیرها هستند. در این گونه موارد، به جای استفاده از مدل های آماری، از الگوریتم های یادگیری ماشین استفاده می شود که می تواند از روی داده ها نحوه رفتار کردن را یاد بگیرد.

یادگیری ماشین می تواند بر روی داده های تاریخچه ای و آنی اعمال شود. تکنیک های یادگیری ماشین می توانند برای شناسایی الگوها، شناسایی متغیرهای کلیدی و ارتباط بین آن ها جهت ساختن یک مدل از تحلیل بهینه شده و سپس استفاده از آن مدل برای شبیه سازی و تصمیم گیری، استفاده شوند. رویکرد یادگیری ماشین نسبت به مدل های آماری این مزیت را دارد که اگر داده ی جدیدی وارد شد، این مدل ها می توانند ارتقا یابند که باعث ارتقا نتایج خواهد شد.

رویکردهای یادگیری ماشین عبارتند از:

شبکه های عصبی: شبکه های عصبی شبکه هایی از نودها هستند که داده را به محض اینکه وارد می شوند، گرفته و تصمیمی اتخاذ کرده و یا نتیجه را به خروجی می دهند. شبکه ی عصبی برای کار با داده ها جهت رسیدن به خروجی مطلوب پرورش یاقته است.

یادگیری عمیق: یادگیری عمیق شبیه به شبکه ی عصبی می باشد، اما با تعداد لایه های پنهانی بیشتر بین ورودی و خروجی.

حافظه ی طولانی کوتاه مدت (LSTM): شبکه های LSTM برای حلقه های بازخورد به کار می روند که شامل چند حافظه برای پردازش داده های زمان متوالی می باشد.

فریمورک های مستقل و متن باز یادگیری ماشین که در اینترنت اشیاء به کار می روند عبارتند از: TensorFlow، PyTorch ، Theano یا جعبه ابزار شناختی CNTK. ابزار های یادگیری ماشینی نیز وجود دارند که بر روی Apache Spark کار می کنند. مانند ماشین های یادگیری H20 و DeepLearning4J و SystemML.

رفتار با داده ها بر اساس اعمال قوانین

موتورهای قوانین از بینشی که داده ی اینترنت اشیاء از طریق تحلیل ها و اعمال قوانین برای ایحاد تصمیم های دقیق و تکرارپذیر، در اختیارشان قرار داده استفاده می کنند. رویکردای متنوعی برای پیاده سازی قوانین در اینترنت اشیاء به کار می رود:

درخت های تصمیم گیری: نقاط تصمیم گیری توسط یک درخت نمایش داده می شوند (که یک طرح سلسله مراتبی برپایه ی گراف است) که نشان دهنده ی نثاط تصمیم گیری می باشد. هر برگ از درخت نمایانگر یک تصمیم می باشد.

درخت های تصمیم گیری با اقزایش حالت هایی که باید دنبال شوند، بسیار بزرگ می شود.

گراف جریان داده: گراف های جریان داده برای نمایش دادن وابستگی داده ها و جریان بین توابع به کار می رود. یک مثال از فریمورکی که می تواند گراف جریان داده تولید کند، TensorFlow می باشد.

پردازش واقعه ی پیچیده (CEP): CEP اغلب برای پرداش های زمان متوالی به کار می رود و برای اعمال قوانین بر روی داده های سنسورهای آنی مناسب است.

موتورهای استنتاجی: پیاده سازی قوانین اگر-آنگاهی

مدیریت پروسه مدیریت: در زمینه ی سامانه های BPM قوانین اغلب به صورت جدول تصمیمات پیاده سازی می شوند.

تحلیل ها و موتورهای قوانین متن باز، می توانند خود-مدیر باشند؛ با این حال برخی از پلتفرم های اینترنت اشیاء از تحلیل ها و قوانینی استفاده می کنند که متن باز هستند؛ مانند IBM’s Analytics for Apache Spark. پلتفرم های اینترنت اشیاء معمولا شامل چند راه حل مجتمع که ترکیبی از تحلیل آنی و گروهی است، می باشند. چند مثال از پلتفرم های اینترنت اشیاء که این قابلیت ها را دارند عبارتند از:

– Oracle Edge Analytics and Stream Analytics

– Azure Stream Analytics

– AWS IoT

– Google Cloud Dataflow

– IBM Watson IoT Platform Analytics

جمع بندی

در این مقاله یک دیدکلی نسبت به ابزارهایی برای معنی دادن به داده ها مانند مدیریت داده ها، استفاده از تحلیل ها و اعمال قوانین پیدا کردید.

تحلیل داده های اینترنت اشیاء برای مدیریت در گستره ی وسیع و سامانه های پیچیده مانند شهرهای متصل ضروری می باشد تا بتوان نیازها را پیش بینی کرد و قوانینی که برای جواب دادن نسبت به تغییر سرویس ها نیاز است، اعمال نمود؛ مانند کنترل سیگنال های تطبیقی ترافیک یا مدیریت روشنایی هوشمند.

تحلیل داده های اینترنت اشیاء، بهره وری را در سامانه های کوچک نیز بالا می برد. به طور مثال برای پیش بینی زمان تعمیر قطعات صنعتی یا وسایل خودکار، از داده ی سنسورهایی که بر آن ها نصب شده است برای پیش بینی اینکه چه زمانی برای تعمیر باید برنامه ریزی کرد که در زمان بهینه ای بوده و قابلیت اعتماد قطعات را نیز بالا ببرد؛ و اینکه از چه تعمیراتی به دلیل زمان زیاد صرف شده و پایین آورده بهره وری، صرف نظر کنیم.

 

منبع: IBM

محمدرضا داودی

دانشجوی مهندسی برق دانشگاه صنعتی اصفهان هستم و چند وقتی هست که به مبحث اینترنت اشیاء علاقه مند شده ام.

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *