راهكاری نوين در انتخاب پايگاههاي داده مناسب جهت ذخيرهسازي کلان دادهها در شبکه ملی اطلاعات
محورهای موضوعی : فناوری اطلاعات و ارتباطاتمحمد رضا احمدی 1 , داود ملکی 2 , احسان آریانیان 3
1 - دانشيار پژوهشگاه ارتباطات و فناوري اطلاعات
2 - عضو هيات علمي پژوهشگاه ارتباطات و فناوري اطلاعات
3 - استاديار پژوهشگاه ارتباطات و فناوري اطلاعات
کلید واژه: کلان دادهها, پايگاههاي داده سنتي, پايگاه دادهی کلان داده, انتخاب پایگاههای داده,
چکیده مقاله :
توسعه زيرساختها و برنامههاي كاربردي به خصوص سرويسهاي همگاني در قالب رايانش ابري، الگوهاي سنتي خدمات پايگاههاي داده و روشهاي ذخيرهسازي آنها را با محدوديتها و چالشهاي جدي روبرو ساخته است. توسعه روزافزون ابزارهاي مولد خدمات دادهاي و لزوم ذخيرهسازي نتايج پردازشهاي بزرگ وگسترده حاصل از فعاليتهاي مختلف در شبکه ملی اطلاعات و دادههای تولیدی بخش خصوصي و شبكههاي فراگير اجتماعي، روند مهاجرت به پايگاههاي داده نوين با ويژگيهاي مناسب را اجتنابناپذير كرده است. با گسترش و تغيير حجم و تركيب دادهها و شكلگيري کلان دادهها، عملكردها و الگوهاي سنتي پاسخگوي نيازهاي جديد نيستند. بنابراين لزوم استفاده از سيستمهاي ذخيرهسازي داده در قالبها و مدلهاي نوین و مقیاسپذیر را ضروري ساخته است. در اين مقاله راهكارهاي اساسي در خصوص ابعاد ساختاري و كاركردهاي مختلف پايگاههاي داده سنتي و سيستمهاي ذخيرهسازي نوين بررسي گرديده و راهكارهاي فني جهت مهاجرت از پايگاههاي داده سنتي به نوین و مناسب برای کلان دادهها ارائه ميگردد. همچنین ويژگيهاي اساسي در خصوص پيوند پايگاههاي داده سنتي و نوين جهت ذخيره و پردازش دادههاي حاصل از شبکه ملی اطلاعات ارائه شده و پارامترها و قابليتهای پايگاههای داده در بستر استاندارد پایه و بستر هدوپ بررسی شده است. به عنوان یک نمونه عملیاتی یک راهکار ترکیبی از پایگاه داده سنتی و نوین با استفاده از روش کارت امتيازی متوازن ارائه شده و مورد ارزیابی و مقایسه قرار گرفته است.
The development of infrastructure and applications, especially public services in the form of cloud computing, traditional models of database services and their storage methods have faced sever limitations and challenges. The increasing development of data service productive tools and the need to store the results of large-scale processing resulting from various activities in the national network of information and data produced by the private sector and pervasive social networks has made the process of migrating to new databases with appropriate features inevitable. With the expansion and change in the size and composition of data and the formation of big data, traditional practices and patterns do not meet new needs. Therefore, it is necessary to use data storage systems in new and scalable formats and models. This paper reviews the essential solution regarding the structural dimensions and different functions of traditional databases and modern storage systems and technical solutions for migrating from traditional databases to modern ones suitable for big data. Also, the basic features regarding the connection of traditional and modern databases for storing and processing data obtained from the national information network are presented and the parameters and capabilities of databases in the standard platform context and Hadoop context are examined. As a practical example, a combination of traditional and modern databases using the balanced scorecard method is presented as well as evaluated and compared.
[1] Farahani, Farzane, and Fatemeh Rezaei. "Implementing a scalable data management system for collected data by smart meters." 2021 26th International Computer Conference, Computer Society of Iran (CSICC). IEEE, 2021.
[2] ElDahshan, Kamal A., AbdAllah A. AlHabshy, and Gaber E Abutaleb. "A Comparative Study Among the Main Categories of NoSQL Databases." Al-Azhar Bulletin of Science 31.2 (2020): 51-60.
[3] de Oliveira, Vitor Furlan, et al. "SQL and NoSQL Databases in the Context of Industry 4.0." Machines 10.1 (2021): 20.
[4] Deka, G.C., Handbook of Research on Securing Cloud-Based Databases with Biometric Applications. 2014: IGI Global.
[5] Kausar, M.A. and M. Nasar, SQL versus NoSQL databases to assess their appropriateness for big data application. Recent Advances in Computer Science and Communications (Formerly: Recent Patents on Computer Science), 2021. 14(4): p. 1098-1108.
[6] Mostajabi, F., A.A. Safaei, and A. Sahafi, A Systematic Review of Data Models for the Big Data Problems. IEEE Access, 2021.
[7] Ramez, E. and N. Shamkant B, Fundamentals of database systems. 2022.
[8] Arora, I. and A. Gupta, Cloud databases: a paradigm shift in databases. International Journal of Computer Science Issues (IJCSI), 2012. 9(4): p. 77.
[9] Ibrahem, Ali Hikmat, and Subhi RM Zeebaree. "Tackling the Challenges of Distributed Data Management in Cloud Computing-A Review of Approaches and Solutions." International Journal of Intelligent Systems and Applications in Engineering 12.15s (2024): 340-355.
[10] Strauch, S., et al. Decision Support for the Migration of the Application Database Layer to the Cloud. in Cloud Computing Technology and Science (CloudCom), 2013 IEEE 5th International Conference on. 2013. IEEE.
[11] Strauch, S., V. Andrikopoulos, and T. Bachmann. Migrating application data to the cloud using cloud data. in e 3rd International Conference on Cloud Computing and Service Science,(CLOSER). 2013. Citeseer.
[12] محمدرضا احمدی، داود ملکی و احسان آریانیان، کتاب پایگاههای داده پیشرفته (راهکار گذر به کلان دادهها و زنجیرههای بلوکی). ناشر: اندیشه عصر، 1399.
[13] Date, C., What Is Database Design, Anyway? In: Database and Relational Theory (2019): 393-406.
[14] Adhikari, M. and S. Kar, NoSQL Databases. Handbook of Research on Securing Cloud-Based Databases with Biometric Applications, 2014: p. 109.
[15] Chaudhry, Natalia, and Muhammad Murtaza Yousaf. "Architectural assessment of NoSQL and NewSQL systems." Distributed and Parallel Databases 38.4 (2020): 881-926.
[16] Maricic, M., et al., Measuring the ict development: the fusion of biased and objective approach. Scientific Bulletin" Mircea cel Batran" Naval Academy, 2015. 18(2): p. 326.
[17] Odun-Ayo, Isaac, and Adeyemi Aina. "Development of a Cloud-Based Payroll Management System."
[18] Rafique, Ansar, et al. "CryptDICE: Distributed data protection system for secure cloud data storage and computation." Information Systems 96 (2021): 101671
[19] Feng, X., M. Conrad, and K. Hussein, NHS Big Data Intelligence on Blockchain Applications, in Big Data Intelligence for Smart Applications. 2022, Springer. p. 191-208.
[20] Pikuleva, N., A.S. Khafizova, and D. Gashigullin. Querying Big Graphs in Data Flow Language. in 2021 International Conference on Industrial Engineering, Applications and Manufacturing (ICIEAM). 2021. IEEE.
[21] Chang, W.L., A. Roy, and M. Underwood, NIST big data interoperability framework: volume 4, security and privacy. 2015.
[22] Rassam, Murad, Aishah Alfarhan, and Reem Alhussain. "Cloud Database Security Issues and Challenges: A Review." Journal of Innovative Information and Communication Technology 1.1 (2021): 21-31.
[23] Khan, Wisal, et al. "SQL and NoSQL database software architecture performance analysis and assessments—A systematic literature review." Big Data and Cognitive Computing 7.2 (2023): 97.
[24] Vera-Olivera, H., et al., Data Modeling and NoSQL Databases-A Systematic Mapping Review. ACM Computing Surveys (CSUR), 2021. 54(6): p. 1-26.
[25] Oliveira, C., et al., Using the balanced scorecard for strategic communication and performance management, in Strategic corporate communication in the digital age. 2021, Emerald Publishing Limited.
[26] Goldstein, James C. "Strategy maps: the middle management perspective." Journal of Business Strategy 43.1 (2022): 3-9.
[27] Mohapatra, H. and A.K. Rath, Fault tolerance in WSN through uniform load distribution function. International journal of sensors wireless communications and control, 2021. 11(4): p. 385-394.
[28] Adam, K., et al. Bigdata: Issues, challenges, technologies and methods. in Proceedings of the International Conference on Data Engineering 2015 (DaEng-2015). 2019. Springer.
[29] مهدی مرسلی، ابوالفضل طرقی حقیقت، ساسان حسینعلی زاده، مروری بر کاربرد الگوریتمهای فراابتکاری در توازن بار در رایانش ابری، فصلنامه فناوری اطلاعات و ارتباطات ایران، شماره 53، سال 14، پاییز-زمستان 1401
[30] کیومرث سلیمی، مهدی ملامطلبی، بهبود توازن بار در رایانش ابری با استفاده از الگوریتم جهش قورباغه سریع (R-SFLA )، فصلنامه فناوری اطلاعات و ارتباطات ایران، شماره 57، سال 15، پاییز 1402
Journal of Information and
Communication Technology
Volume 16, Issue 59-60, Spring and Summer 2024, pp. 1-16
Providing a New Solution in Selecting Suitable Databases for Storing Big Data in the National Information Network
Mohammad Reza Ahmadi1, Davood Maleki2, Ehsan Arianyan31
1Associate Professor, ICT Research Institute, Tehran, Iran
2Faculty Member, ICT Research Institute, Tehran, Iran
3Assistant Professor of ICT Research Institute, Tehran, Iran
Received: 31 October 2021, Revised: 02 May 2022, Accepted: 14 August 2022
Paper type: Research
Abstract
The development of infrastructure and applications, especially public services in the form of cloud computing, traditional models of database services and their storage methods have faced sever limitations and challenges. The increasing development of data service productive tools and the need to store the results of large-scale processing resulting from various activities in the national network of information and data produced by the private sector and pervasive social networks has made the process of migrating to new databases with appropriate features inevitable. With the expansion and change in the size and composition of data and the formation of big data, traditional practices and patterns do not meet new needs. Therefore, it is necessary to use data storage systems in new and scalable formats and models. This paper reviews the essential solution regarding the structural dimensions and different functions of traditional databases and modern storage systems and technical solutions for migrating from traditional databases to modern ones suitable for big data. Also, the basic features regarding the connection of traditional and modern databases for storing and processing data obtained from the national information network are presented and the parameters and capabilities of databases in the standard platform context and Hadoop context are examined. As a practical example, a combination of traditional and modern databases using the balanced scorecard method is presented as well as evaluated and compared.
Keywords: Big Data, Traditional Databases, Big Data Databases, Databases Selection.
راهكاری نوين در انتخاب پايگاههاي داده مناسب جهت ذخيرهسازي کلان دادهها در شبکه ملی اطلاعات
محمدرضا احمدي1، داود ملكي2، احسان آريانيان32
1 دانشيار پژوهشگاه ارتباطات و فناوري اطلاعات، تهران، ایران
2 عضو هيات علمي پژوهشگاه ارتباطات و فناوري اطلاعات، تهران، ایران
3 استاديار پژوهشگاه ارتباطات و فناوري اطلاعات، تهران، ایران
تاریخ دریافت: 09/08/1400 تاریخ بازبینی: 12/02/1401 تاریخ پذیرش: 23/05/1401
نوع مقاله: پژوهشی
چکيده
توسعه زيرساختها و برنامههاي كاربردي به خصوص سرويسهاي همگاني در قالب رايانش ابري، الگوهاي سنتي خدمات پايگاههاي داده و روشهاي ذخيرهسازي آنها را با محدوديتها و چالشهاي جدي روبرو ساخته است. توسعه روزافزون ابزارهاي مولد خدمات دادهاي و لزوم ذخيرهسازي نتايج پردازشهاي بزرگ وگسترده حاصل از فعاليتهاي مختلف در شبکه ملی اطلاعات و دادههای تولیدی بخش خصوصي و شبكههاي فراگير اجتماعي، روند مهاجرت به پايگاههاي داده نوين با ويژگيهاي مناسب را اجتنابناپذير كرده است. با گسترش و تغيير حجم و تركيب دادهها و شكلگيري کلان دادهها، عملكردها و الگوهاي سنتي پاسخگوي نيازهاي جديد نيستند. بنابراين لزوم استفاده از سيستمهاي ذخيرهسازي داده در قالبها و مدلهاي نوین و مقیاسپذیر را ضروري ساخته است. در اين مقاله راهكارهاي اساسي در خصوص ابعاد ساختاري و كاركردهاي مختلف پايگاههاي داده سنتي و سيستمهاي ذخيرهسازي نوين بررسي گرديده و راهكارهاي فني جهت مهاجرت از پايگاههاي داده سنتي به نوین و مناسب برای کلان دادهها ارائه ميگردد. همچنین ويژگيهاي اساسي در خصوص پيوند پايگاههاي داده سنتي و نوين جهت ذخيره و پردازش دادههاي حاصل از شبکه ملی اطلاعات ارائه شده و پارامترها و قابليتهای پايگاههای داده در بستر استاندارد پایه و بستر هدوپ بررسی شده است. به عنوان یک نمونه عملیاتی یک راهکار ترکیبی از پایگاه داده سنتی و نوین با استفاده از روش کارت امتيازی متوازن ارائه شده و مورد ارزیابی و مقایسه قرار گرفته است.
کلیدواژگان: کلان دادهها، پايگاههاي داده سنتي، پايگاه دادهی کلان داده، انتخاب پایگاههای داده.
[1] * Corresponding Author’s email: ehsan_arianyan@itrc.ac.ir
[2] * رایانامة نويسنده مسؤول: ehsan_arianyan@itrc.ac.ir
1- مقدمه
اولين سيستم مديريت پايگاه داده برای اولین بار توسط يكي از پيشگامان اين شاخه به نام چارلز بکمن1 گسترش يافت[1]. مقالات بکمن اين را نشان داد که فرضيات او کارايي بسيار مؤثرتري براي دسترسي به وسايل ذخيرهسازي را مهيا ميکند. بهدنبال آن مدل رابطهاي به همراه عملگرهاي جبري و اصول آن در دهه هفتاد ميلادي توسط ادگار کاد2 ارائه شدند[1]. کاد به دليل اين ابتكار، جايزه تورينگ را از آن خود ساخت که معادل جايزه نوبل در علم رايانه است. او مدلهاي موجود را مورد انتقاد قرار ميداد. براي مدتي نسبتاً طولاني اين مدل در مجامع علمي مورد تأييد قرار گرفت. اولين محصول موفق براي ميکروکامپيوترها dBASE بود که براي سيستمعاملهاي CP/M و PC-DOS/MS-DOS ساخته شد. در دهه ۱۹۸۰ پژوهش بر روي پايگاههاي مدل توزيع شده و ماشينهاي پايگاهي متمرکز شد، اما تأثير کمي بر بازار گذاشت. در سال ۱۹۹۰ توجه متخصصان به مدل شيءگرا جلب شد. اين مدل جهت کنترل دادههاي مرکب لازم بود و به خوبي با استفاده از پايگاههاي داده غيرسنتي، در كاربردهايي نظير مهندسي داده (شامل مهندسي نرمافزار منابع) و مهندسي دادههاي چند رسانهاي کار ميکرد. در سال ۲۰۰۰ نوآوري تازهاي رخ داد و پايگاه XML به وجود آمد. هدف اين مدل از بين بردن تفاوت بين مستندات و دادهها بود و کمک ميکرد که منابع اطلاعاتي چه ساخت يافته و چه غيرساختيافته در کنار هم قرار گيرند. مفاهيم پايگاههاي داده سنتی رابطهاي به همراه زبان برنامهنویسی SQL ، مجموعهای از جدولها، ستونها و سطرهاي دادهاي و روابط جدولها میباشند. اما، برخي محدوديتها و مشکلات باعث مطرح شدن مفاهيم جديدي در پايگاههاي داده شده است. مشكلات اصلي مدل رابطهاي سنتي عبارتند از:
· محدوديت فضا و ناکارآمدي فناوريهاي سنتي ذخيرهسازي براي حجم عظيم اطلاعات، كه چالش اصلي آنرا بايد در نحوه جستجوي دادهها و يافتن ارتباطها و نظمهاي پنهان در ميان حجم عظيم داده جستوجو كرد.
· در محيط جديد کلان دادهها3 دادههايي از انواع گوناگون نظير متن، تصوير، فيلم، صوت و انواع ديگر دادهها وجود دارد. ابزارهاي مديريتي پايگاههاي داده سنتي قادر به جمعآوري، ذخيرهسازي، جستوجو، اشتراكگذاري، تحليل و نمايش همزمان تمام اين انواع دادهاي به صورت كارا نيستند.
· يکي از مهمترين مسائل مرتبط با کلان دادهها، مشكل بودن كار با آنها بهوسيله پايگاهدادهاي رابطهاي و بستههاي نرمافزاري مرتبط با آن است. چرا که براي پردازش اين دادهها در يک زمان معقول به نرمافزارهاي به شدت موازي شده با قابليت اجرا بر روي تعداد زيادي سرور نياز است، اين در حالي است كه ساختار سنتي پايگاههاي داده رابطهاي براي اجراي برنامههاي موازي كارا نيستند.
از طرف ديگر مدل رابطهاي داراي محدوديتهاي زيادي ميباشد که در ادامه به مواردی از آنها اشاره خواهیم کرد:
· كارايي پايين براي دادههاي با توالي نوشتن بالا و توالي خواندن کم- نظير شمارندههاي بازديد صفحات وب و دستگاههاي وقايع نگار فضايي.
· كارايي پايين براي دادههاي با توالي خواندن بالا و توالي نوشتن بسيار كم- نظير دادههاي گذرا و تصاوير، اسناد و پردازش تصویر در HTML با دسترسي تكراري.
· كارايي پايين براي کاربردهايي با نيازمنديهاي در دسترس بودن بالا4 و با توقف خدمات5 بسيار كم- اين مورد در مدل رابطهاي با كمبودهايي همراه است و به خوبي از عهده آن بر نميآيد. اين نوع كاربردها بيش از هر چيز به مقياسپذيري افقي و امكان توسعه بر روي ماشينهاي مختلف شبكه نياز دارند.
· كارايي پايين براي دادههايي که بايد در نقاط مختلف جغرافيايي با هم همگامسازي شوند- استفاده از پايگاههاي داده سنتي براي دادههاي عظيمي که در خوشههاي مختلف يك شبكه بزرگ سازماني با دفاتر پراكنده در سطح جغرافيايي وسيع ذخيره شدهاند و نياز است تا همواره با بالاترين سرعت و کمترين هزينه ممکن با هم همگامسازي شوند، كارا و قابل استفاده نيست و هزينههاي بسياري را در برخواهد داشت.
· كارايي پايين براي دادههاي بزرگ تجاري يا مرتبط با تحليل وب كه طرح6 خاصي ندارند- این دادهها تقريباً و قالب از پيشتعيين شدهاي ندارند و بر اساس محتواي متغير موجود بر روي وب توليد ميشوند و در بيشتر موارد به فعاليت كاربران و سيستمهاي نرمافزاري مرتبط و وابسته هستند. اغلب نياز است تا چنين دادههايي به صورت موازي ذخيرهسازي شوند و امكانات پرسوجوپذيري غني مهیا باشد تا بهخوبي قابل تحليل باشند كه در مدلهاي رابطهاي سنتي اين قابليت وجود ندارد.
کارلو استروزي7 نخستين بار در سال 1998 عبارت NoSQL را براي اشاره به پايگاههاي دادهاي سبك و متن باز رابطهاي به كار گرفت كه از مدل رابطهای SQL استفاده نميكردند[2]. هر چند بعدها وي به اين نكته اشاره كرد كه اين عبارت و مفهوم پشت آن، كاملاً از مدل رابطهاي جداشده و بهتر است آن را غيررابطهاي يا NoREL8 بناميم. عبارت NoSQL مفهومي است كه براي مشخص كردن پايگاههاي دادهاي به كار ميرود كه به شدت با پايگاههاي دادهاي رابطهاي سنتي متفاوت هستند. اين پايگاههاي داده اغلب با مفاهيم سنتي نظير جدولها، سطر و ستونهاي ثابت بيگانه هستند و در بيشتر موارد، عمليات الحاق9 در آنها بيمعني بوده و به صورت افقي مقياسپذير هستند. با اين حال، تا چند سال گذشته كه تنها راهحل ذخيرهسازي دادهها پايگاه داده رابطهاي بود، سيستمهاي نرمافزاري و پايگاه دادهاي سنتي معماري مناسبي براي بهرهبرداري مناسب از مجموعهاي از ماشينها را نداشته و محدوديتهاي ساختاري، آنها را در مواجهه با ابعاد مختلف کلان دادهها شامل حجم، سرعت و تنوع، ناتوان و ناکارآمد ساخته بود. بر اين اساس، چند سالي است كه راهحلهاي مناسبي براي مديريت و تحليل اين نوع دادهها تحت عنوان NoSQL مطرح شده است. امروزه تعداد زيادي از آنها به بلوغ رسيده و پتانسيل بسياري براي استفاده و توسعه در محيطهاي کلان دادهها را دارند[2, 3].
بخشهاي مختلف مقاله به شرح زير ارائه شده است. در ادامه، بعد از بررسی تحقیقات مرتبط در زمینه انتخاب پایگاه داده، در بخش دوم فرآیند اجرای پژوهش ارائه میشود. همچنین در این بخش به معرفي ساختار پايگاههاي داده رابطهاي خواهيم پرداخت. در بخش سوم پايگاههاي داده غيرساختاريافته مورد بررسي قرار ميگيرند. در بخش چهارم ساختار فني بانكهاي اطلاعاتي کلان دادهها مورد تحقيق قرار خواهد گرفت و در بخش پنجم ويژگيهاي كليدي در انتخاب پايگاههاي دادهی کلان داده معرفي خواهند شد. در بخش ششم، ساختار پايگاه دادهی ابری و راهکار مهاجرت به آن و در بخش هفتم شاخصهاي كارايي در پايگاه داده سنتي و توزيع شده ارائه میشود. در ادامه در بخش هشتم، مقايسه و انتخاب انواع پايگاههاي داده با روش کارت امتیازی متوازن و در بخش نهم مقايسه كارايي ترکيب پايگاه داده سنتي و کلان داده مورد بررسي قرار میگیرد. در پايان نتيجهگيري و راهکارهای پیشنهادی ارائه شده است.
1-1- تحقیقات مرتبط
در این بخش تحقیقات مرتبط در زمینه انتخاب پايگاههاي داده مناسب جهت ذخیره و بازیابی اطلاعات مورد بررسی قرار گرفته است. این تحقیقات برای کاربردهای مختلف بر اساس ساختار دادهای و نوع پایگاه داده صورت گرفته که به شرح زیر میباشد:
1. در مرجع [4]، در خصوص دادههای با کاربرد بیومتریک، مقايسه و انتخاب يك پايگاه دادهی کلان مورد بررسی قرار گرفته است.
2. در مرجع [5]، به بررسی موضوع مقياسپذيري در انتخاب پایگاههای داده SQL و NoSQL پرداخته شده است.
3. در مرجع [6]، به ارائه انتخاب یک پایگاه داده بر اساس مدل دادهاي پرداخته شده است.
4. در مرجع [7]، به بررسی كنترل دسترسي و واسطهاي دستيابي در پایگاه داده پرداخته شده است.
5. در مرجع [8] به بررسی تغییر الگو در پایگاههای داده ابری پرداخته شده است. این پایگاه داده يك بانک اطلاعاتي مبتنی بر سند بوده و در این تحقیق موضوع سرعت و مقیاسپذیری مورد بررسی قرار گرفته است.
6. در مرجع [9] به بررسی رویکرد مدیریت داده در مقیاس بزرگ در محیطهای ابری پرداخته است. این نوع پايگاههای داده اشتراکي میباشند و پايگاه داده موجود در بستر ابر قرار میگیرد.
7. در مرجع [10]، به موضوع تصمیمگیری جهت انتقال و مهاجرت دادهها به لایه مرتبط در ابر پرداخته شده است. در اینجا مراحل انتقال در لایه پايگاه داده از سنتي به کلان داده مورد بررسی قرار گرفته است.
8. در مرجع [11]، برنامههاي كاربردي در مدلهاي مختلف توسعه ابري، با استفاده از يک الگوي معماري چهار لايهاي ارائه شده است. این مدلها شامل لایه نمایش، لایه کسب و کار، لایه دسترسی به داده و لایه پایگاه داده میباشد.
لازم به ذکر است که در هیچکدام از تحقیقات و کارهای ارائه شده مرتبط به موضوع انتخاب پايگاههاي داده مناسب بر اساس حجم دادهها و ساختار داخلی آنها اشاره نگردیده است. همچنین ملاک در انتخاب پایگاه داده پارامترهای کیفی و کمی نبوده است، اما در این تحقیق ما با توجه به ویژگیهای کیفی پایگاههای داده و بر اساس ساختار دادههای اطلاعاتی، موضوع انتخاب پایگاه داده مناسب را مورد بررسی قرار دادهایم.
2- فرآیند اجرای پژوهش
در این تحقیق فرایند اجرای پژوهش در دو بخش اصلی مورد بررسی قرار گرفته است.
در بخش اول جنبههای نظری و تئوری موضوع مطرح شده است. از دید گاه نظری توسعه حجم و تنوع روز افزون دادهها در خدمات مختلف فناوری اطلاعات چالشها و تگناهای جدی در تئوریهای ذخیرهسازی و تجهیزات ذخیره ساز سنتی ایجاد کرده است و بکارگیری این پایگاههای داده جهت ذخیرهسازی دادههای کلان را با چالشهای مختلفی روبرو ساخته است. جهت حل این محدودیتها، ایجاد قابلیتهای تازه از جمله افزایش ظرفیت ذخیرهسازی، قابلیت عملکرد موازی در فرایند پردازش و ذخیرهسازی و ایجاد مدلهای ذخیرهسازی غیرساختاریافته پیشنهاد شده است. جهت اثبات میزان تاثیر راهکارارائه شده، ابتدا محدودیتهای پایگاههای داده رابطهای و ویژگیهای پایگاههای داده غیر رابطهای تعیین شده است. به منظور دستیابی به راه حل مطلوب ساختار کلی بانکهاي اطلاعاتي جهت ذخیرهسازی کلان دادهها پیشنهاد و مكانيزم مطلوب جهت انتخاب پايگاه داده مناسب براي کلان دادهها ارائه شده است.
در بخش دوم، به منظور اثبات راهکارهای ارائه شده، شاخصهاي كارايي در پايگاه داده سنتي و توزيع شده تعیین و كارايي ترکيبی پايگاههای داده سنتي و کلان داده با استفاده از روش کارت امتیازی متوازن مورد ارزیابی قرار گرفته و رفتار کلی سیستم و میزان کارایی پایگاه داده منتخب در حجم دادههای مختلف محاسبه گردیده است. نتایج این بررسی محدوديت پايگاههای داده سنتی و چگونگی ارائه راهکار مناسب جهت ذخيرهسازی دادههای کلان در شبکه ملی اطلاعات را ارائه مینماید. در ادامه ما به تشريح بيشتر پايگاههاي داده رابطهای و غیررابطهای پرداخته و ويژگيهاي آنها را بررسي خواهيم نمود.
2-1- ساختار پايگاههاي داده رابطهاي
پايگاه داده سنتي مجموعهاي است از دادههاي ذخيره شده و پايا بر اساس يک مدل دادهاي مشخص كه به صورت مجتمع و يكپارچه به هم مرتبط بوده و با كمترين افزونگي تحت مديريت يك سيستم متمركز كنترل شده و توسط يك يا چند كاربر، به طور همزمان و اشتراكي مورد استفاده قرار ميگيرد. معماري پايگاههاي داده سنتي بصورت توزيع شده10 و يا مركزي11 ميباشد[12]. ساختار اين پايگاههاي داده بصورت لايهاي، گرافي و يا جدولي ميباشند. قوانين حاكم بر اين پايگاههاي داده داراي چهار ويژگي اصلي12ACID است. ACID متشكل از چهار ويژگي كلي به صورت زير است كه تضمين ميكند تراكنشهاي پايگاه داده با قابليت اطمينان خوبي پردازش ميشوند[3]:
· تجزيهناپذيري (A): يک تراکنش بايد به صورت کامل انجام شود و در غير اينصورت بايد لغو گرد.
· ثبات و سازگاري (C): يک تراکنش بايد سيستم را از يک حالت سازگار به حالت سازگار ديگري ببرد و جامعيت دادهها را باتوجه به قوانين آن حفظ کند.
· جدا سازي (I): هر تراکنش بايد از ساير تراکنشهايي که ممکن است همزمان در همان محيط در حال اجرا باشند مستقل باشد.
· ماندگاري (D): تاثيرات اجراي موفق يک تراکنش بايد ماندگار باشند.
نمونهاي از اين پايگاههاي داده سنت عبارتند ازMS SQL Server ، IBM DB2،Oracle ، MySQL و Microsoft Access. فراگيرترین مدل پايگاههاي داده سنتي مدل رابطهاي ميباشد. مدلهاي دادهاي قبل از مدل رابطهاي در سطح پاييني از انتزاع قرار داشتند و وجود اشارهگرهايي که توسط طراح پايگاه داده سازماندهي ميشدند کار طراحي را بسيار مشکل ميکرد ولي با اين وجود تنها راه دستيابي به کارايي مناسب در پردازش انبوه دادهها بودند. مدل رابطهاي در ابتدا به دليل بار پردازشي بالا مورد استقبال سازندگان برنامههاي مديريت پايگاههاي داده13 قرار نگرفت ولي به تدريج و با قويتر شدن کامپيوترها استقبال از آن بيشتر شد و امروزه تقريباً تمامي سيستمهاي مديريت پايگاههاي داده بر اساس آن ساخته ميشوند. در اين مدل زبان پرسوجوي استاندارد SQL مورد نظر قرار گرفته است.SQL ، نامي است فراگير براي ردهي گستردهاي از سامانههاي مديريت پايگاههاي داده نوع سنتي. توجه به اين نكته ضروري است كه پايگاههاي داده SQL همان مدل رابطهاي نيستند بلكه SQL يك زبان استاندارد رابطهاي است. SQL در بسياري از موارد نميتواند به خوبي از مدل رابطهاي پشتيباني كند. اين زبان از نظر ناقص بودن دستورات و نحوه اجراي آنها داراي مشكلات بسيار است. تئوري زير بناي مدل رابطهاي بر اساس يك انديشه تئوريك به نام تئوري رابطه بنا شده است[1]. يكي از موضوعات مهمي كه سازندگان پايگاه داده در نظر دارند، دانش تئوري طراحي پايگاه داده است. مباحث نظريهاي رابطه توسط اكثريت سازندگان پايگاه داده پذيرفته شده است كه بسيار مهم است. مدل رابطهاي وابسته به يك محصول خاص نيست بلكه وابسته به قوانين است. محصولات و فنآوريهاي رابطهاي مانندSQL و اوراكل مرتب در حال تغيير ميباشند اما قوانين آنها ثابت هستند. بنابراين مدل رابطهاي و SQL يكي نيستند و تفاوتهايي با هم دارند. نكته ديگر اين است كه در مجموع مدل رابطهاي، طبيعتي اعلانگرا و نه روالگرا دارد. روشهاي اعلانگرا در پايگاه داده سنتي بر روشهاي روندگرا ترجيح دارند چرا كه ملموستر هستند[13]. در حال حاضر، اصول رياضي پشتيبان روش رابطهاي و مدلهاي پيادهسازي آن، ويژگيهاي خاصي دارد كه مناسب دادههاي سنتي بوده و قابليت حفظ و ذخيرهسازي اطلاعات كم و متوسط را دارد. با گسترش ابزارهاي جديد در صنعت فناوري اطلاعات و تغيير مدل و الگوهاي آن، تناسب دادهها با روشهاي ذخيرهسازي از تناسب خارج گرديده و سيستمهاي موجود كارايي خود را از دست دادهاند.
3- ساختار پايگاههاي داده غيرساختار يافته
مفاهيم پايگاههاي داده رابطهاي، مدت زمان زيادي بر برنامههاي كاربردي مبتني بر آنها حاكم و استفاده از آنها در برنامههاي كاربردي بزرگ اجتنابناپذير کرده است. با اين حال، برخي محدوديتها و مشکلات باعث مطرح شدن مفاهيم جديدي در پايگاه داده شده است. براي جواب دادن به نيازهاي امروزي، پايگاههاي دادهاي جديدي پا به عرصه وجود گذاشتهاندکه با عنوان Not Only SQL يا NoSQL شناخته ميشوند. محققان دانشگاهي اين پايگاههاي دادهاي را با عنوان ذخيرهسازي ساختيافته ميشناسند كه مفهومي كلي بوده و در برگيرنده پايگاههاي دادهاي رابطهاي نيز هست. در سال 2009، شركت Rackspace عبارت NoSQL را باز معرفي كرد و از آن براي اشاره به مجموعهاي از پايگاههاي دادهاي غيررابطهاي و گسترده در شبكه استفاده كرد كه در نقطه مقابل پايگاههاي دادهاي رابطهاي قديمي مانند Microsoft SQL Server، MySQL، IBM DB2، Informix، Oracle RDBMS، PostgreSQL، Oracle RDB و ... قرار ميگرفتند[12]. پس از بروز نيازهاي جديد و معرفي تئوريهاي مورد نياز براي پيادهسازي چنين پايگاهدادهاي نوظهوري، محصولات مختلفي در اين زمينه پا به عرصه وجود نهادند كه هر يك از جهاتي مهم بوده و قابليت بسيار سودمندي به همراه دارند. فعاليتهاي مرتبط با توسعه پايگاههاي دادهاي NoSQL در محافل علمي به شدت افزايش يافته است و اخيراً كار روي پروژه اي به نام 14UnQL آغاز شده كه هدف آن، تدوين استاندارد زبان پرسوجو در پايگاهدادهاي NoSQL است[2, 3]. اين زبان به گونهاي طراحي خواهد شد تا به جاي جدولهاي سنتي و سطرها و ستونهاي دادهاي، به ترتيب مجموعهها15، اسناد16 و فيلدهاي مشخصي مورد پرسوجو قرار دهد. اين زبان در اصل مجموعهاي فراتر از SQL به شمار آمده و زبان SQL را ميتوان نمونه بسيار محدود شده آن به شمار آورد.
3-1- كليات پايگاه داده غير رابطهاي NoSQL
اصطلاح NoSQL نامي عمومي است که به مجموعهاي از پايگاههاي داده اطلاق ميشود که از زبان پرسوجوي ساختيافته SQL17 يا مدل داده رابطهاي استفاده نميکنند. اين اصطلاح نخستينبار توسط اريک اوانس18 به کار رفت. او که يکي از توسعهدهندگان پايگاههاي داده غيررابطهاي است، بعدها او از به کار بردن اين اصطلاح خودداري كرد و به جاي آن اصطلاح کلان دادهها را به کار برد تا اين گروه از پايگاههاي داده را نه براساس عدم سازگاری با SQL، بلکه براساس مديريت مقادير کلان داده، تعريف کند. پايگاههاي داده NoSQL، برخلاف مدلهاي رابطهاي يکسري ويژگيهاي خاصي ارائه ميدهند و عبارتند از [14, 15]:
· نيازي به تعريف طرح19 خاصي براي پايگاه داده نيست: دادهها ميتوانند در NoSQL بدون نياز به تعريف الگوي محدود کنندهاي ذخيره شوند. قالب دادههايي که در پايگاه داده NoSQL ذخيره ميشوند بدون ايجاد آشفتگي در برنامه ميتوانند هر لحظه تغيير کنند. اين ويژگي انعطافپذيري بسيار بالايي به كاربردها ميدهد که نياز اساسي هر كسبوكاري است.
· بخشبندي خودكار20: اين ويژگي با عنوان خاصيت كشساني هم شناخته ميشود. پايگاه داده NoSQL به صورت خودکار دادهها را بدون نياز به دخالت برنامه بر روي سرورها منتقل ميكند. در اين حالت سرور ميتواند بدون نياز به برنامه لايه داده را مديريت كند.
· پشتيباني از پرسوجوي توزيعي: پايگاه داده NoSQL قدرت پرسوجو گرفتن از صدها يا هزاران سرور توزيع شده را دارد.
· حافظه نهان يكپارچه21: براي کاهش زمان تاخير و افزايش بهرهوري سيستم، تکنولوژي پيشرفته NoSQL قابليت ذخیره کردن دادهها را در حافظه نهان سيستم دارد و اين قابليت به صورت شفاف انجام ميشود.
3-2- مدل پايگاههاي داده غيررابطهاي بر اساس تئوريCAP و ويژگيهاي BASE
عبارت NoSQL يك مفهوم براي مشخصسازي يك تحول جديد است كه در دنياي پايگاههاي دادهاي در حال وقوع است. هماکنون با توسعه فناوريهاي مختلف و قابليت نمونهبرداري و توليد حجم عظيمي از دادهها، امکان ذخيرهسازي و تحليل آنها چالشي بزرگ به شمار ميآيد. مديريت دادههايي مانند دادههاي هواشناسي، فعاليتهاي برخط کاربران يا تحليلهاي اقتصادي در قالب پايگاههاي دادهاي سنتي، کارايي چنداني نخواهند داشت. همچنين، امروزه سرويسدهندگان بسياري به ذخيرهسازي و ارائه محتواي کلان داده به کاربران خود در شبکه نياز دارند که خود چالشي بسيار بزرگ به شمار ميآيد. کارآيي بسيار بالا در ذخيرهسازي و ارائه دادههایي مانند اسناد PDF و فايلهاي MP3، در مقياس وسيع، يکي از بهترين کاربردهايي است که پايگاههاي دادهاي NoSQL شايستگي خود را در فراهمکردن آن به اثبات رساندهاند. يک نمونه مناسب در اين زمينه، خدمات Amazon S3 است. با اين اوصاف، موارد ذکر شده تنها چالش پيش روي توسعهدهندگان و سرويسدهندگان نيست. ذخيرهسازي، مديريت و بازيابي دادههاي گذرا که در بعضي موارد در مقياس بالايي در برنامههاي کاربردي امروزي توليد ميشوند نيز يکي ديگر از چالشهاي امروزي است که راه حل مديريت مناسب آنها را پايگاههاي دادهاي NoSQL ارائهکردهاند. اين پايگاههاي داده، در مديريت دادههايي نظير متغيرهاي يک نشست22 در وب، يک دياگرام مناسب براي انتخاب راه حل درست توسط ناتان هورست23 براساس نظريه CAP طراحي شده که در شکل 1 آمده است[2, 16].
شکل 1. دياگرام نظريه CAP
در دياگرام شكل 1 سه گوشه اصلي نشانگر ويژگيهاي ثبات24، دردسترسبودن25 و قابليت بخشبندي26 هستند. ثبات در اينجا يعني همه کاربران همواره به دادههاي مشابه دسترسي داشته باشند، دردسترس بودن يعني همه کاربران امکان خواندن و نوشتن را داشته باشند و قابليت بخشبندي نيز به معناي اين است که سيستم به رغم تقسيم شدن فيزيكي شبكه به قسمتهاي مختلف به خوبي كار كند. بر اساس نظريه CAP، تنها دو عنصر از اين سه عنصر ميتوانند همزمان در سيستمهاي واقعي به صورت قطعي و تضميني وجود داشته باشند. بر همين اساس، براي داشتن هر جفت مشخصه، ميتوان راهحلي را که روي ضلع مشترک آنها آورده شده است، انتخاب كرد.
همچنین ويژگي BASE27 در طراحي پايگاههاي داده غيررابطهاي و در مقايسه با سيستمهاي سازگار با ACID مطرح ميشود. اين اصطلاح براي توصيف ويژگيهاي انواع تراكنشهايي است كه توسط پايگاههاي داده غيررابطهاي پشتيباني ميشوند. يك سيستم BASE، با سه ويژگي مشخص تشريح ميشود كه عبارتند از: اساساً در دسترس بودن، وضعيت نرم و در نهايت پايدار بودن. در پايگاهداده BASE، گزينه اول كه در دسترس بودن يا مهيا بودن است ضروريترين خصيصه ميباشد. يك نمونه از پايگاههاي داده مبتني بر BASE، پايگاه داده مربوط به شبكههاي اجتماعي است كه در مقايسه با پايگاههاي داده بانكي كه به طور سرسخت بر پايه تئوري CAP استوار هستند، حساسيت زيادي در وجود ويژگي ثبات ندارد. لذا در پايگاه داده شبكه اجتماعي مبتني بر خصيصه BASE عمل ميشود[12].
4- ساختار فني بانکهاي اطلاعاتي دادههای کلان
اگر چه NoSQL به عنوان پايگاههاي دادهی کلان داده پذيرفته شده است ولي يک راهحل جهت حل تمام مشکلات نميباشد. در اين قسمت نمونههايي از پايگاههاي داده برای کلان دادهها متداول مورد بررسي قرار خواهند گرفت و به ويژگيهاي فني آنها اشاره خواهد شد.
· Amazon SimpleDB: اين پايگاه داده غيررابطهاي بسيار دسترسپذير، مقياسپذير و انعطافپذير ميباشد. يک واسط كاربري ساده باGet ، Post، Delete و اجراي پرسوجو را ارائه ميدهد. همچنين به کاربر اجازه ميدهد قبل از ذخيرهسازي دادهها آنها را رمزگذاري نمايند
· Google App's Bigtable: اين پايگاه داده يک سيستم ذخيرهسازي توزيع شده بر مبناي GFS براي دادههاي ساختيافته ميباشد. علاوه بر آن در بسياري از محصولات گوگل مانند Google app engine به خوبي پيادهسازي شده است و اجازه ميدهد تا دادههاي پيچيده ذخيره شوند.
· Hadoop: يک زيرساخت برنامهنويسي براي پيادهسازي مدلMapReduce بر روي سيستمهاي توزيع شده ميباشد و بيشتر مناسب دادههاي بدون ساختار ميباشد.
· CouchDB: يك محصول متنباز در پروژه Apache است كه از سال 2008 معرفي شده است. در اين پايگاه داده كه يك بانک اطلاعاتي سندگرا ميباشد، رکوردها با فرمتJSON28 ذخيره ميشوند و با استفاده از رابطHTTP بازيابي ميگردند.
· MongoDB: يك بانک اطلاعاتي سندگرا است و به عنوان يک بانک اطلاعاتي شيءگرا طراحي شده است. اين پايگاه داده داراي سرعت و مقياسپذيري بالايي ميباشد[17, 18].
5- ويژگيهاي انتخاب پايگاه کلان دادهها
در حالت كلي مقايسه و انتخاب يك پايگاه دادهی کلان دادهها بر اساس پنج مشخصه اصلي زير ميباشد[4]:
· مقياسپذيري [5]
· پايداري و يكپارچگي در تراكنشها [19]
· مدل دادهاي [6]
· پشتيباني از پرس وجو29 [20]
· كنترل دسترسي و واسطهاي دستيابي [7]
اما با توجه به اين شاخصها، محصولات نرمافزاري زيادي براي انتخاب کردن وجود دارند كه ميبايست بر اساس دستهبنديهاي مشخصي آنها را شناسايي كرد. ميتوان به ترتيب از روشهاي زير براي اين كار استفاده كرد كه در ادامه به آن ميپردازيم.
5-1- انتخاب بر اساس نوع داده و تناسب آن با ويژگيهاي پايگاهداده
در اين روش پايگاه داده با توجه به نوع دادههاي اطلاعاتي و ويژگيهاي آنها انتخاب ميشود. شکل 2 فرآيند انتخاب پايگاه داده بر اساس تطابق ويژگيهاي كليدي داده و مشخصات پايگاه داده را نشان ميدهد.
در اين روش انتخاب پايگاه داده ميتواند به يكي از چهار حالت زير صورت پذيرد:
نوع اول: دادههايي كه ميتوانند با مدل کلید-مقدار30 انديسگذاري شوند: اين روش شبيه نقشهها يا ديکشنريها هستند که درون آنها دادهها با يک کليد منحصر بفرد شناسايي ميشوند. نمونههايي از پايگاههاي داده از اين گروه عبارتند از: Redis، Riak و MemcacheDB.
شکل 2. انتخاب پايگاه داده مناسب بر اساس نوع داده
نوع دوم: دادههايي كه ميتوانند با مدل مبتنی بر سند ذخيره شوند: در اين مدل، اطلاعات بصورت جفتهاي کليد و مقدار در فرمت پايگاهداده غيررابطهاي JSON يا شبيه آن ذخيره ميشود. درون اسناد کليدها بايد منحصربهفرد باشند. در مقايسه با مدل کلید-مقدار، در اين مدل مقادير براي سيستم قابل فهم هستند و ميتوان بر روي آنها پرسوجو اجرا کرد. نمونههايي از پايگاههاي داده از اين گروه MongoDB و Couchbase ميباشند.
نوع سوم: دادههايي كه ميتوانند با مدل مبتنی بر ستون31 ذخيره شوند: اين مدل، از ستونها براي ذخيرهسازي اطلاعات استفاده ميکند. نمونههايي از پايگاههاي داده از اين گروه Cassandra و HBase ميباشند.
نوع چهارم: دادههايي كه ميتوانند با مدل مبتنی بر گراف ذخيره شوند: اين مدل بهصورت تخصصي براي مديريت دادههايي که به يکديگر متصل هستند بهينه شده است. نمونههايي از پايگاههاي داده اين گروه Neo4J و OrientDB ميباشند[2, 21].
5-2- انتخاب بر اساس ويژگيهاي فني پايگاه داده
در اين روش پايگاههايداده بر اساس تئوري CAP انتخاب ميگردند. در اين ساختار سه ويژگي اصلي C، A وP سه رأس تصميمگيري هستند و بر اساس نظريه CAP، تنها دو ويژگي از اين سه ويژگي در سيستمهاي واقعي قابل تضمين هستند. شكل 1 تركيب ويژگيها و پايگاههاي داده سازگار متناسب با نوع داده را نشان ميدهد. به عنوان مثال اگر ويژگيهاي C و A مورد نظر باشند ميتوان يكي از پايگاههاي داده نوع RDBMS را انتخاب كرد. اگر ويژگيهاي C و P مورد نظر باشند ميتوان يكي از پايگاههاي داده MongoDB يا HBaseرا انتخاب كرد. همچنين اگر ويژگيهاي P و A مورد نظر باشند ميتوان يكي از پايگاههاي داده Cassndra يا CouchDBرا انتخاب كرد[16].
5-3- انتخاب بر اساس ويژگيهاي سرويس ابر
پايگاههاي داده غيررابطهاي ميتوانند به صورت پيشفرض در محيط ابر اجرا شوند اما اغلب بر روي بسترهاي IaaS و PaaS اجرا ميشوند. در اين روش بر اساس ساختار و نحوه ارائه سرويس ميتوان مدل پايگاه داده ابري را انتخاب نمود. سه انتخاب براي يك پايگاه داده ابری وجود دارد كه عبارتند از:
· پايگاه دادهي مبتني بر ماشين مجازي: پايگاهداده به عنوان بخشي از مجازيسازي مستقر ميشود و چندين ماشين مجازي، سرور فيزيکي يکساني را به اشتراک ميگذارند. اين روش ماکزيمم سطح جداسازي (در سطح سيستم عامل) را ارائه ميکند و در نتيجه رشد بيرويه ماشينهاي مجازي يكسري مسائل امنيتي در نظر میباشد.
· پايگاه داده به عنوان سرويس ابري: پايگاهداده به عنوان يک سرويس، منابع را در اختيار كاربر يا كاربران قرار ميدهد. اين روش به كاربران اجازه ميدهد يک يا چند پايگاهداده را تعريف و مديريت کنند. هر مشترک ميتواند فقط پايگاهدادهاي را که به او اختصاص داده شده است ببيند و پايگاههاي داده مشترکان ديگر براي او قابل روئيت نيست. همچنين مديريت و هماهنگيهاي پايگاه داده را خود بر عهده دارد و ميتواند منابع محاسبه اضافي و ذخيرهسازي مبتني بر تقاضا را از طريق پرتال ابري انتخاب و اختصاص دهد. از جمله اين پايگاههاي داده MongoDB و Cassandra ميباشند[22].
· پايگاه داده به عنوان سرويس پايه ابر32: يكسري از فراهمكنندگان ابر، اين سرويس را به صورت پيش فرض در دسترس قرار ميدهند. اين پايگاه داده به عنوان سرويس پايه خدمات ابر ناميده ميشود. همچنين اين پايگاه داده اشتراکي است و خدمات پايگاه داده بر روي طرح پايگاه داده موجود استقرار مييابند. Amazon SimpleDB يكي از مشهورترين اين نوع پايگاه داده است[9, 23].
شکل 3 انتخاب پايگاههاي دادهی مناسب بر اساس ساختار و حجم داده را بطور مرحله به مرحله بر اساس سه مدل انتخابی نشان میدهد. با توجه به تنوع ویژگی دادهها، متدولوژی انتخاب پایگاه داده مناسب به روشهای مختلفی میسر میباشد، در اینجا برای دادههای با حجم کم انتخاب پایگاههای داده سنتی مناسب میباشد و در استفاده از محیطهای مجازی و خدمات ابری پایگاههای داده NoSQL راهکار مناسبی را ارائه مینماید. در دادههای کلان با حجم زیاد انتخاب پایگاههای داده مناسب تنوع مختلفی داشته و بر اساس نوع داده گزینههای مختلفی از مدلهای سنتی تا مدلهای مبتنی بر کلید مقدار، ستونی، گرافی و مبتنی بر سند قابل انتخاب میباشند که از روی ویژگیهای داده به طور خودکار انتخاب خواهند گردید[29].
شکل 3. متدولوژي انتخاب پايگاه داده مناسب بر اساس حجم داده
5-4- مكانيزم پيشنهادي جهت انتخاب پايگاه داده مناسب براي کلان دادهها
چالش اصلي كه دنياي کلان دادهها با آن مواجه میباشند، اين است كه يك حجم مشخص داده میتواند شامل اجزای مختلفی باشد كه هر يك بايد در يكي از انواع پایگاههای داده ذخيره شود و هيچ پایگاه داده واحدي براي ذخيرهسازي همه آنها وجود ندارد. مدل ارائه شده بر روي اين مسئله كار ميكند كه چگونه دادههای ورودی بين پایگاههاي داده مختلف تقسيم شود به نحوي كه امكان پردازش مناسب آنها ميسر باشد. در اين بخش به ارائه يك مكانيزم پيشنهادي جهت انتخاب پايگاه داده مناسب براي کلان دادهها ميپردازيم. در اينجا فرض بر وجود يك حجم داده اطلاعاتي با ترکیبات مختلف میباشد و هدف انتخاب پايگاه داده مناسب جهت ذخيرهسازی آن اجزاء است. انتخابهاي ممكن و نحوه انتخاب پايگاه دادهی کلان دادهها مناسب در شكل 4 نشان داده است.
شکل 4. مدل ترکیبی33 در انتخاب پایگاه کلان داده مناسب
اين انتخاب با توجه به مشخصات فني پايگاههاي داده كه در بخشهاي قبل آمده است، انجام گرفته است. مكانيزم انتخاب و مديريت پايگاههاي داده در نمونه پيشنهادي بر اساس نتايج ارزيابي صورت گرفته بين پايگاههاي داده سنتي و کلان دادهها و همچنين متريكهاي فني انواع مختلف پايگاههاي دادهاي کلان دادهها است. در الگوي انتخاب، پنج مدل پايگاه داده با ويژگيهاي متفاوت شامل پايگاه داده رابطهاي يا سنتي، پايگاههاي داده بر اساس كليد-مقدار، پايگاههاي داده ستوني، پايگاه داده محتوايي و پايگاه داه گرافي ميباشند. متناسب با ويژگيهاي دادههاي ورودي و مكانيزم انتخاب، پايگاه داده مناست براي داده مورد نظر انتخاب ميگردد. اين انتخاب مادامي كه ويژگيهاي دادهها تغيير نكند ثابت بوده و با تغيير پارامترهاي كليدي داده ممكن است تغيير نمايد[12, 24].
6- ساختار پايگاه دادهی ابری و راهکار مهاجرت به آن
به طور كلي، انتقال لايه داده برنامههاي كاربردي به پايگاه دادهی کلان دادهها، يك مسئله پيچيده و چندبعدي است. جهت انتقال لايه داده به بانک کلان داده، چالشهايي ايجاد ميگردد كه جهت رفع اين چالشها از روش مرحله به مرحله34 استفاده ميشود.
در اينجا ما روش لازوسكي و نادوري35، كه شامل هفت مرحله جداگانه ميباشد را مطابق شکل 5، ارائه مينماييم[10]. اين روش برای انتقال لايه پايگاه داده از سنتي به پايگاه دادهی کلان دادهها است كه مراحل آن مشخص شده است. اين مراحل به شرح زير ميباشد:
شکل 5. مراحل انتقال در لایه پايگاه داده از سنتي به کلان دادهای [10]
بخش ارزيابي، اطلاعات مرتبط با مديريت پروژه مانند ابزارها و گزينههاي مهاجرت به منظور ارزيابي تأثير مهاجرت بانک اطلاعاتي جمعآوري ميگردد.
بخش تجزيه و تحليل جزئيات پيادهسازي در بانک اطلاعاتي هدف، يعني انواع دادههاي مختلف، مکانيزمهاي مديريت تراکنش را بررسي ميکند. در اين بخش انتخاب پايگاه داده مناسب انجام ميشود و يك طرح را براي اجراي آن ميسازد.
بخش مهاجرت اين بخش به مهاجرت دادهها از پايگاه داده مبدأ به پايگاه داده مقصد در محيط تستي ميپردازد. بعد از مرحله مهاجرت در مرحله تست هم بانک اطلاعاتي و هم نرمافزار بررسي ميگردند كه شامل تاييد صحت داده نيز ميباشد. هر گونه بهينهسازي بر اساس پايگاهداده مقصد اعمال ميشود. در نهايت در مرحله استقرار سيستم نهايي شامل بانک اطلاعاتي مهاجرت يافته در محيط واقعي مستقر ميگردد.
جهت بهرهگيري از مزاياي تكنولوژي رايانش ابري، بكارگيري از پايگاههاي داده مبتني بر رايانش ابري براي کلان دادههاي به صورت فزآيندهاي مورد توجه قرار گرفته است. براي استفاده از مزيتهاي رايانش ابري، ممکن است برنامههاي كاربردي موجود به رايانش ابري منتقل شوند يا از همان ابتدا به صورت ابري طراحي گردند. برنامههاي كاربردي مطابق شکل 6، در مدلهاي مختلف توسعه ابري، با استفاده از يک الگوي معماري چهار لايهاي ساخته ميشوند[11]:
1. لايه نمايش، که تعاملات بين کاربر و كاربرد را تشريح ميکند.
2. لايه كسبوكار، که منطق كسبوكار را تحقق ميبخشد.
3. لايه دسترسی به داده (DAL36)، که مسئول ذخيرهسازي دادههاي كاربرد ميباشد.
شکل 6. ساختار لايههاي نرمافزاري در پایگاه داده ابري
4. لايه پايگاهداده (DBL37)، که مسئول تدوام و نگهداري دادهها ميباشد.
در اینجا مهاجرت لايه داده سنتي به ابري شامل دو گام اساسي ميباشد:
· مهاجرت DBL به ابر
· سازگاری DAL جهت فعالسازي دسترسي
همچنین شکل 6، موقعيت لايههاي مختلف براي توزيع يك كاربرد در مدلهاي مختلف توسعه ابري را نمايش ميدهد. لايه داده مجموع دو لايه دسترسي به داده و لايه پايگاهداده ميباشد. DAL مسئول دسترسي به دادهها ميباشد در حالي که DBL مسئول تدوام و نگهداري دادهها ميباشد [30].
7- شاخصهاي كارايي پايگاههای داده سنتي و توزيع شده
در بخش ششم، روشهای مهاجرت به پايگاه دادههای کلان مورد بحث قرار گرفت. در اينجا به بررسی شاخصهاي کارايی در پايگاههای داده سنتی و توزیع شده خواهيم پرداخت. جهت این بررسی، عملكرد پايگاههاي داده سنتي و توزيع شده هدوپ بر اساس ويژگيهاي آنها مورد مقایسه قرار گرفته است. شكل 7 ساختار داخلي پايگاههاي داده سنتي را نشان ميدهد. در اين پايگاههاي داده اصول ذخيرهسازي بر اساس جداول طراحي شده صورت ميگيرد.
در شكل 8 ساختار لايهبندي پايگاه داده توزيع شده هدوپ و نحوه ارتباط زير بخشهاي مختلف لايه داده و لايه محاسبات آن نشان داده شده است.
شکل 7. ساختار پايگاه داده سنتي رابطهاي
شکل 8. ساختار پايگاه دادهی کلان دادهها در بستر هدوپ
بر اساس این شکل، انتخاب نوع پايگاه داده ميتواند بر اساس مشخصات فني و مقايسه مراحل اجرايي هر يك از پايگاههاي داده سنتي و توزيع شده كه در اينجا تشريح شدهاند، انجام گيرد. به منظور مقايسه عملكرد پايگاههاي داده مختلف ويژگيهاي مختلف آنها مطابق جدول شماره 1 مورد بررسي قرار گرفته است.
جدول 1. مقايسه ويژگيهاي پايگاههاي داده سنتي و کلان داده
اين جدول، مقايسه كلي از ويژگيهاي كليدي پايگاههاي داده سنتي و کلان دادهها را نشان ميدهد. فاكتورهاي مقايسه شده بر اساس پارامترهاي كليدي دخيل در انتخاب و مديريت پايگاههاي داده انتخاب شدهاند و نتايج ارزيابيهاي صورت گرفته بين پايگاههاي داده سنتي و کلان دادهها ارائه شده است.
از مسائل مهم ديگر در انتخاب پايگاههاي داده، مسئله مقياسپذيري در ابعاد افقي و عمودي ميباشند كه در طراحي و اجراي سامانههاي پيچيده و بزرگ همچون پايگاههاي داده بسيار حياتي و محوري ميباشد. مقياسپذيري را ميتوان در ابعاد گوناگوني اندازهگيري کرد. مقياسپذيري عمودي به معني گسترش منابع در يك گره از سيستم ذخيرهسازي، به طور نمونه ارتقاي پردازنده يا سامانه ذخيرهسازي در يک کامپيوتر ميباشد. از طرف ديگر، مقياسپذيري افقي به معني افزايش تعداد گرهها و تجهيزات ذخيرهسازي بيشتر به سيستم است. ميزان تاثير انواع مقياسپذيري افقي بيشتر از عمودي ميباشد. مطابق قانون امدال38 با دو برابر شدن قدرت پردازش، سرعت اجرا تنها به ميزان يک پنجم افزايش مييابد. اين بدين معني است که افزودن سختافزار در يك سيستم لزوماً شيوه بهينهاي جهت افزايش كارايي نيست. البته اگر کل برنامه قابل موازيسازي بود انتظار ميرفت که سرعت نيز دو برابر گردد.
8- مقايسه انواع پايگاههاي داده با روش کارت امتیازی متوازن
يکی از روشهای متداول در انتخاب و ارزیابی روشهای مختلف در خدمات فناوری اطلاعات، استفاده از روش کارت امتيازی متوازن39 میباشد. کارت امتيازی متوازن يا BSC، روشی برای مديريت عملکرد یک سیستم است؛ که ايده اوليه آن سال ۱۹۹۲، در تحقيقات رابرت کاپلان و ديويد نورتون40، در زمينه روشهاي نوين سنجش عملکرد سازمانها شکل گرفت. کارت امتيازي متوازن، يک ابزار مديريتی برای اجرای استراتژی است؛ گزارش ساختاربندی شده و استانداردی که به مدیر یا سیستم اجازه ميدهد بتوانند به راحتی بر روند اجرای فعاليتها نظارت داشته باشند و نتايج اين فعاليتها را بررسی و کنترل کنند. ويژگی اصلی کارت امتيازی متوازن در اختيار گذاردن بستری مناسب برای شناخت قوانين و روابط علت و معلولی حاکم بر دنياي کسب و کار و همچنين استخراج برنامههاي عملياتی برای اجرايي کردن استراتژی در یک سیستم یا سازمان است[25, 26]. برنامهريزی راهبردی شامل بررسی قابليتها و ضعفهای محيطي و درونی میشود به طوری که نتايج حاصل از انتخاب استراتژي را به عملياتهاي روزمره پيوند ميزند. کارت امتيازي متوازن با چنين هدفی توسعه يافته است که شاخصها و متريکها در برنامهريزي راهبردی تدوين شوند و آنها عملياتي و قابل اندازهگيري باشند. در این پژوهش نیز بهمنظور مدیریت و انتخاب دقیق پایگاههای داده مناسب، از روش کارت امتیازی متوازن با در نظر گرفتن پارامترهای مختلف از منظر داشتن نوآوری، قابلیت اجرا در فرآیندهای داخلی، رضایت کاربر و مباحث هزینهای استفاده شده است. این پارامترها برگرفته از ویژگیهای پایگاههای داده مختلف بوده و نقش مهمی در تواناییهای آنها ایجاد میکند. جهت انتخاب مناسب پوشش حداکثری پارامترهای کلیدی میتواند نقش تعیین کنندهای را ایفا نماید. بدین منظور با توجه به نیازهای اساسی بر پایه ویژگیهای دادهها، پارامترهای مختلف کلیدی در این زمینه مشخص و با توجه به درجه اهمیت آنها امتیاز مشخصی در نظر گرفته شده که مبین ویژگیهای کیفی آنها میباشند.
به منظور تبديل ويژگيهاي کيفي به مقادير کمي سطوح پنجگانه تعریف شده است که هریک درجه مشخصی از مقادیر کیفی را نشان میدهد. برای تفکیک سطوح مختلف سطح ضعيف، پايين، متوسط، بالا، عالي در نظر گرفته شده است. مقدار کيفي مطابق جدول 2 امتیاز دهی شده است. همچنین ویژگیهایی که تاثیر مثبت دارند با مقایر مثبت و ویژگیهایی که تاثیر منفی دارند با مقایر منفی میباشند.
جمعبندی و انتخاب متریکهای فنی موردنظر برای ارزیابی انوع مختلف پایگاه داده شامل مقياسپذيري [5]، انعطافپذيري [14, 15]، پيچيدگي [24]، سرعت اجرا [5]، حجم دادهها [21]، تنوع دادهاي [21]، تحمل خطا [27]، دسترسيپذيري [12]، ثبات [3] و بخشبندي [12] میشود. فرایند اجرای BSC، بر اساس متريكهاي فني مرتبط با انواع مختلف پايگاههاي داده ساختار یافته و غیر ساختار یافته و با توجه به مستندات و منابع مختلف فنی در این زمینه انجام شده است. همچنین تجربیات پروژههای انجام شده مرتبط با پایگاه داده به عنوان راهکارهای کلیدی مورد استفاده قرار گرفته است. امتیازدهی و نتایج ارزيابيهاي بدست آمده در جدول 3 ارائه شده است. در این جدول، براي تعیین امتياز نهایی از روش کارت امتيازی متوازن BSC با در نظر گرفتن وزن يکسان براي همه متريکها، محاسبات صورت گرفته و مقادیر بدست آمده درج گردیده است. در استراتژي کارت امتيازي متوازن براي انتخاب پايگاه داده، همه جنبههاي کليدي از منظرهای مختلف نوآوری، فرآیندهای داخلی، کاربری و هزینهای با پارامترهای استانداردی مهم در ارزیابی پایگاههای داده استفاده شده است.
جدول 2. مقادير کيفي و امتیازهای در نظر گرفته شده
مقدار کيفی | امتياز |
ضعيف | 1± |
عملکرد پايين | 2± |
متوسط | 3± |
بالا | 4± |
عالي | 5± |
بنابراين روش پیشنهادی به جاي تمرکز تنها بر قسمتي از قابليت يک پايگاه داده، يک ديد کلي از عملکرد پارامترهاي مختلف را براي انتخاب در نظر میگیرد. مطابق اطلاعات ارائه شده در جدول شماره 3، دو بستر استاندارد و هدوپ انتخاب و پنج پایگاه داده مختلف با یازده متریک کلیدی متفاوت امتیازدهی گردیده که مجموع نتایج امتیازات ارائه شده است. بر اين اساس، شکل 9 درصد کارايي مجموع قابليتهاي جدول 3 براي انواع مختلف پايگاههاي داده را به صورت نمودار ميلهاي نشان ميدهد.
همانطوركه در نتايج اين جدول مشخص شده است حضور زيرساختار هدوپ براي پايگاه داده، قابليتها در تمامي متريکهاي مختلف بهبود مييابند. هدوپ براي ذخيرهسازي و پردازش توزيع شده مجموعهی کلان دادهها از مدل برنامهريزي کليد/مقدار استفاده ميکند. اين چارچوب به صورت خوشههايي از سختافزارها ایجاد ميشود. همه ماژولها در هدوپ با اين فرض اساسي طراحي شدهاند که در صورت خرابي بتواند به صورت خودکار مشکلات احتمالي را برطرف کنند تا مجموعه سيستم بتواند بصورت پيوسته و مستمر خدمات ارائه نمايد. همچنين جدول 3 مقايسه نتايج ارزيابي در متريکهاي متفاوت را نشان ميدهد.
9- مقايسه كارايي ترکيب پايگاه داده سنتي و کلان داده
به منظور تعیین رفتار پایگاههای داده متفاوت در مواجه با دادههای ورودی، بایستی عملکرد آنها را برای دادههای مختلف در نظر بگیریم. با توجه به تجربیات و مطالب ارائه شده در بالا، قابلیتهای کارایی در پایگاههای داده سنتی بیشتر در سرعت اجرا، دسترسيپذيري، ترميم و همزماني تمرکز داشته و این کارایی نسبت عكس با ميزان مربع حجم دادههای ورودی دارد. بطوریکه چنانچه حجم دادههای ورودی افزایش یابد، کارایی پایگاه داده بهشدت کاهش مییابد.
شکل 9. مقايسه کارایی پايگاههاي داده منتخب جهت ذخيرهسازي کلان دادهها در محیطهای استاندارد و بستر هدوپ
بنابراين با توجه به نمودارها مراجع [7] [28] تناسبی كه ميتوان میان کارایی یک پایگاه داده سنتی و حجم داده ورودی در نظر گرفت به صورت Ptr در رابطه ریاضی (1) خواهد بود:
, (1)
در اين رابطه v حجم داده و K مقدار ثابت میباشد. از طرف ديگر با توجه به مطالب بيان شده قبل، كارايي پايگاه دادههاي توزيع شده براي کلان دادهها شامل ارزاني، مقياسپذيري، تحملپذيري، انعطاف، بخشپذيري، تنوع دادهاي و حجم داده ميباشند كه در مجموع 7 قابليت را شامل ميشود. در عمل كارايي پايگاه دادهی کلان دادهها براي دادههاي گسترده بيشتر از پايگاه داده سنتي ميباشد. با توجه به قابليتهاي اين پايگاه داده ميتوان اينگونه نتيجه گرفت كه پايگاههاي داده توزيع شده نسبتي با حجم داده ورودي ندارد. بنابراين رابطهاي كه ميتوان براي پايگاه دادهی کلان داده در نظر گرفت به صورت PDدر فرمول رياضی 2 خواهد بود:
(2)
در اين رابطه متغير K مقداری ثابت میباشد كه بستگي به نوع پايگاه داده دارد. با توجه به نتايج فوق، كارايي تركيب پايگاه داده سنتي و توزيع شده هدوپ براي کلان داده شامل پارامترهاي مختلف نظير ارزاني، مقياسپذيري، تحمل، انعطاف، بخشپذيري، تنوع دادهاي، حجم داده، دسترسيپذیری، ترميم و همزماني ميباشد كه در مجموع 10 قابليت كارايي را شامل ميشود.
[1] Charles Bachman
[2] Edgar Frank Codd
[3] Big Data
[4] High Availability
[5] Downtime
[6] . Schema
[7] Carlo Strozzi
[8] Not Only Relational
[9] Join
[10] Distributed
[11] Central
[12] ACID (Atomicity, Consistency, Isolation, Durability)
[13] DBMS
[14] Unstructured Query Language
[15] Collection
[16] Documents
[17] Structured Query Language
[18] Eric Evans
[19] Schema
[20] Auto-Sharding
[21] Integrated caching
[22] Session
[23] Nathan Hurst
[24] Consistency
[25] Availability
[26] Partition Tolerance
[27] Basically Available, Soft state, Eventual consistency
[28] JavaScript Object Notation
[29] Query
[30] Document-oriented
[31] Column-oriented
[32] Native
[33] Hybrid
[34] Step-by-step
[35] Laszewski, Nauduri
[36] Data Access Layer
[37] Database Layer
[38] Amdahl's law
[39] Balanced Score Card (BSC)
[40] Robert S.Kaplan and David P.Norton
جدول 3. مقايسه انواع پايگاههای داده برای دادههای کلان
سنتي رابطهاي | مبتنيبر گراف | مبتنيبر مستندات | مبتنيبر ستون | مبتنيبر كليد/مقدار | محیط هدوپ | محیط استاندارد | پايگاه داده متريك |
1 | 3 | 3 | 4 | 4 |
| P | مقياسپذيري |
4 | 4 | 5 | 5 | P |
| ||
1 | 4 | 4 | 3 | 4 |
| P | انعطافپذيري |
4 | 4 | 4 | 5 | P |
| ||
1- | 4- | 3- | 3- | 2- |
| P | پيچيدگي |
3- | 2- | 1- | 1- | P |
| ||
1 | 2 | 3 | 4 | 4 |
| P | سرعت اجرا |
3 | 4 | 5 | 5 | P |
| ||
1 | 2 | 3 | 3 | 4 |
| P | حجم دادهها |
3 | 4 | 4 | 5 | P |
| ||
1 | 1 | 3 | 2 | 4 |
| P | تنوع دادهاي |
3 | 3 | 3 | 5 | P |
| ||
2 | 3 | 3 | 4 | 4 |
| P | تحمل خطا |
4 | 4 | 5 | 5 | P |
| ||
4 | 2 | 4 | 2 | 4 |
| P | دسترسيپذيري |
3 | 4 | 3 | 5 | P |
| ||
4 | 4 | 2 | 4 | 2 |
| P | ثبات |
4 | 4 | 5 | 3 | P |
| ||
1 | 4 | 4 | 4 | 4 |
| P | بخشبندي |
4 | 4 | 5 | 5 | P |
| ||
2 | 3 | 3 | 4 | 4 |
| P | قابليت اجرا در ابر |
5 | 5 | 5 | 5 | P |
| ||
16 | 24 | 29 | 31 | 36 |
| P | مجموع امتيازات |
34 | 38 | 43 | 47 | P |
| ||
32% | 48% | 58% | 62% | 72% |
| P | درصد امتيازات (قابليتها پایگاه داده) |
68% | 76% | 86% | 94% | P |
|
تركيب پايگاه دادهی کلان دادهها و سنتي باعث افزايش كارايي سيستم به صورت ماگزيمم كارايي در ابعاد مختلف داده براي بازههاي مختلف خواهد شد. بنابراين رابطهاي كه ميتوان براي تركيب پايگاه دادهها با توجه به جميع مشخصات گفته شده، عنوان كرد به صورت ماگزيمم كارايي هر دو نوع پايگاه داده به صورت PT در فرمول رياضی 3 است:
(3)
اين رابطه كارايي تركيب پايگاه دادهی کلان دادهها و سنتي را نشان ميدهد. جهت نشان دادن این ارتباط، حجم داده در محدوده داده کم و کلان داده در دو پایگاه داده SQL و هدوپ مورد ارزیابی قرار گرفته که نتایج کلی در شکل 10 ارائه شده است. این نتایج کارایی ترکیب پايگاه داده سنتي و کلان داده را نشان میدهد. این شكل، مقايسهاي از كارايي سه حالت مختلف براي پايگاه داده سنتي، کلان و تركيب هر دوي آنها را ميباشد.
شکل 10. مقايسه كارايي پايگاه داده سنتي، کلان داده و تركيب آنها
همانطور که در این شکل نشان داده شده است افزایش حجم داده در وهله اول باعث کاهش کارایی در پایگاه داده سنتی گردیده بطوری که با افزایش میزان داده ورودی کارایی پایگاه داده بطور نمایی کاهش مییابد تا اینکه توانایی خودر را در ارائه دادههای زیاد از دست میدهد. از طرف دیگر در پایگاه داده توزیع شده میزان حجم داده نقش مهمی در عمکرد سیستم ایجاد نمینماید و افزایش حجم داده تغییر چندانی در سطح کارایی ایجاد نمینماید. لذا همانطور که اين شكل نشان ميدهد در حجم دادههاي كم، پايگاههاي داده سنتي و در حجم دادههاي زياد، پايگاههاي داده توزيع شده، برتري داشته كه در حالت كلي رفتار حالت تركيبي بيشترين كارايي را ارائه مينمايد. با توجه به چالش اصلي تنوع و حجم كه دنياي کلان داده با آن مواجه است به طوری كه يك مجموعه عناصر دادهای هر يك بايد در يكي از انواع پایگاههای داده ذخيره شوند و هيچ پایگاه داده واحدي براي ذخيرهسازي همه آنها وجود ندارد. نکته مهمی که در راهکار پیشنهادی اهمیت دارد اینکه برای دادههای با حجم بسیارکم، از پایگاههای داده سنتی SQL و برای حجم انبوه از پایگاههای داده توزیع شده هدوپ استفاده میشود. بدین ترتیب امکان پردازش بهینه آنها میسر میشود. این ویژگی لزوم ترکیب هر دو پایگاه داده را برای بهترین کارایی در شرایط مختلف ایجاد مینماید.
10- نتيجهگيري
اين مقاله ضمن معرفی پايگاههاي داده موجود و چگونگی مشكلات و نقاط ضعف ابزارهاي سنتي در رويارويي با نيازهاي جديد و آتي فناوري اطلاعات، از جمله حجم بزرگ دادهها و تركيب ساختاري آنها، به معرفي پايگاههاي داده مناسب جهت ذخیره دادههای کلان میپردازد. بديهي است با گسترش روز افزون زيرساختها، سرويسها و برنامههاي كاربردي جديد درفناوري اطلاعات و توليد غيرقابل تصور دادهها، ذخيرهسازي، جستجو، مديريت، پردازش و ارائه دادهها و سرويسهاي مرتبط در ابعاد وسيع كشوري و جهاني به پديدهاي بسيار پيچيده و فني تبدیل شده است. ارائه راهحل مناسب به این تنگناها نياز به ابزارها و راهحلهاي هوشمند دارد. در اين تحقيق جنبههاي ساختاري و كاركردي پايگاههاي داده سنتي مورد بررسي قرار گرفت و نشان داده شد كه اصول رياضي پشتيبان در این روش و مدلهاي پيادهسازي آن ويژگيهاي خاصي را ايجاد مينمايد كه مناسب دادههاي سنتي بوده و قابليت حفظ و ذخيرهسازي اطلاعات كم و متوسط را دارد. لذا با توسعه روزافزون صنعت فناوري اطلاعات و تغيير مدل و الگوهاي توليد داده، پايگاه دادههاي سنتي در رويارويي با فضاي جديد كارآيي خود را از دست دادهاند. در اين راستا با معرفي ويژگيهاي ساختاري و كاركردي پايگاههاي داده غيررابطهاي، به نحوه ذخیرهسازی کلان دادهها اشاره شده است. همچنین متد كلي جهت انتخاب پايگاه داده مناسب براي کلان دادهها با تركيب پيوند پايگاههاي داده سنتي و نوين جهت ذخيره و پردازش دادههاي حاصل از خدمات فراگير ملی پيشنهاد شده است. علاوه بر آن روشهايي جهت مهاجرت از پايگاههاي داده سنتي به پايگاههاي داده کلان مورد بررسي قرار گرفتند. به منظور ارزيابی روشهای ارائه شده، الگوهاي كارايي شامل مقايسه كلي ويژگيهاي پايگاههاي داده سنتي و کلان و همچنين مقايسه بر اساس متريكهاي انتخابي در بستر استاندارد و هدوپ با استفاده از روش کارت امتیازی متوازن مورد ارزيابی قرار گرفته است. نتايج بدست آمده نشان میدهد که ابعاد و ویژگیهای داده تاثیر بسیار مهمی در انتخاب پایگاه داده مناسب داشته و در حالت کلی پايگاه داده با مدل ذخيرهسازی کليد/مقدار بيشترين قابليت برای ذخيره کلان دادهها را دارا میباشد. همچنين با در نظر گرفتن زيرساختار هدوپ در بستر پايگاه داده، قابليتهاي آن در تمامي متريکها بهبود مييابند. از لحاظ کارايي، نتايج نشان میدهد که برای دادههاي با حجم كم، پايگاههاي داده سنتي رابطهای و در حجم دادههاي زياد پايگاههاي داده توزيع شده ارجحيت زیادی دارند. لذا در مجموعه دادههای مختلف با حجم دادههای متفاوت استفاده ترکيبی از هر دو نوع پايگاه داده بيشترين کارايی را به همراه خواهد داشت.
جهت تحقیقات بعدی، پیادهسازی روش پیشنهادی و تعیین جزئیات فنی در دسترسی به پایگاههای داده مختلف و تدوین راهکار اجرایی به منظور ذخیرهسازی هر داده اختیاری میباشد.
مراجع
[1] Farahani, Farzane, and Fatemeh Rezaei. "Implementing a scalable data management system for collected data by smart meters." 2021 26th International Computer Conference, Computer Society of Iran (CSICC). IEEE, 2021.
[2] ElDahshan, Kamal A., AbdAllah A. AlHabshy, and Gaber E Abutaleb. "A Comparative Study Among the Main Categories of NoSQL Databases." Al-Azhar Bulletin of Science 31.2 (2020): 51-60.
[3] de Oliveira, Vitor Furlan, et al. "SQL and NoSQL Databases in the Context of Industry 4.0." Machines 10.1 (2021): 20.
[4] Deka, G.C., Handbook of Research on Securing Cloud-Based Databases with Biometric Applications. 2014: IGI Global.
[5] Kausar, M.A. and M. Nasar, SQL versus NoSQL databases to assess their appropriateness for big data application. Recent Advances in Computer Science and Communications (Formerly: Recent Patents on Computer Science), 2021. 14(4): p. 1098-1108.
[6] Mostajabi, F., A.A. Safaei, and A. Sahafi, A Systematic Review of Data Models for the Big Data Problems. IEEE Access, 2021.
[7] Ramez, E. and N. Shamkant B, Fundamentals of database systems. 2022.
[8] Arora, I. and A. Gupta, Cloud databases: a paradigm shift in databases. International Journal of Computer Science Issues (IJCSI), 2012. 9(4): p. 77.
[9] Ibrahem, Ali Hikmat, and Subhi RM Zeebaree. "Tackling the Challenges of Distributed Data Management in Cloud Computing-A Review of Approaches and Solutions." International Journal of Intelligent Systems and Applications in Engineering 12.15s (2024): 340-355.
[10] Strauch, S., et al. Decision Support for the Migration of the Application Database Layer to the Cloud. in Cloud Computing Technology and Science (CloudCom), 2013 IEEE 5th International Conference on. 2013. IEEE.
[11] Strauch, S., V. Andrikopoulos, and T. Bachmann. Migrating application data to the cloud using cloud data. in e 3rd International Conference on Cloud Computing and Service Science,(CLOSER). 2013. Citeseer.
[12] محمدرضا احمدی، داود ملکی و احسان آریانیان، کتاب پایگاههای داده پیشرفته (راهکار گذر به کلان دادهها و زنجیرههای بلوکی). ناشر: اندیشه عصر، 1399.
[13] Date, C., What Is Database Design, Anyway? In: Database and Relational Theory (2019): 393-406.
[14] Adhikari, M. and S. Kar, NoSQL Databases. Handbook of Research on Securing Cloud-Based Databases with Biometric Applications, 2014: p. 109.
[15] Chaudhry, Natalia, and Muhammad Murtaza Yousaf. "Architectural assessment of NoSQL and NewSQL systems." Distributed and Parallel Databases 38.4 (2020): 881-926.
[16] Maricic, M., et al., Measuring the ict development: the fusion of biased and objective approach. Scientific Bulletin" Mircea cel Batran" Naval Academy, 2015. 18(2): p. 326.
[17] Odun-Ayo, Isaac, and Adeyemi Aina. "Development of a Cloud-Based Payroll Management System."
[18] Rafique, Ansar, et al. "CryptDICE: Distributed data protection system for secure cloud data storage and computation." Information Systems 96 (2021): 101671
[19] Feng, X., M. Conrad, and K. Hussein, NHS Big Data Intelligence on Blockchain Applications, in Big Data Intelligence for Smart Applications. 2022, Springer. p. 191-208.
[20] Pikuleva, N., A.S. Khafizova, and D. Gashigullin. Querying Big Graphs in Data Flow Language. in 2021 International Conference on Industrial Engineering, Applications and Manufacturing (ICIEAM). 2021. IEEE.
[21] Chang, W.L., A. Roy, and M. Underwood, NIST big data interoperability framework: volume 4, security and privacy. 2015.
[22] Rassam, Murad, Aishah Alfarhan, and Reem Alhussain. "Cloud Database Security Issues and Challenges: A Review." Journal of Innovative Information and Communication Technology 1.1 (2021): 21-31.
[23] Khan, Wisal, et al. "SQL and NoSQL database software architecture performance analysis and assessments—A systematic literature review." Big Data and Cognitive Computing 7.2 (2023): 97.
[24] Vera-Olivera, H., et al., Data Modeling and NoSQL Databases-A Systematic Mapping Review. ACM Computing Surveys (CSUR), 2021. 54(6): p. 1-26.
[25] Oliveira, C., et al., Using the balanced scorecard for strategic communication and performance management, in Strategic corporate communication in the digital age. 2021, Emerald Publishing Limited.
[26] Goldstein, James C. "Strategy maps: the middle management perspective." Journal of Business Strategy 43.1 (2022): 3-9.
[27] Mohapatra, H. and A.K. Rath, Fault tolerance in WSN through uniform load distribution function. International journal of sensors wireless communications and control, 2021. 11(4): p. 385-394.
[28] Adam, K., et al. Bigdata: Issues, challenges, technologies and methods. in Proceedings of the International Conference on Data Engineering 2015 (DaEng-2015). 2019. Springer.
[29] مهدی مرسلی، ابوالفضل طرقی حقیقت، ساسان حسینعلی زاده، مروری بر کاربرد الگوریتمهای فراابتکاری در توازن بار در رایانش ابری، فصلنامه فناوری اطلاعات و ارتباطات ایران، شماره 53، سال 14، پاییز-زمستان 1401
[30] کیومرث سلیمی، مهدی ملامطلبی، بهبود توازن بار در رایانش ابری با استفاده از الگوریتم جهش قورباغه سریع (R-SFLA )، فصلنامه فناوری اطلاعات و ارتباطات ایران، شماره 57، سال 15، پاییز 1402