انتخاب پایگاه های داده مناسب
اسلاید 1: انتخاب پايگاههاي داده مناسب براي دادههاي عظيم و راهكار مهاجرت از پايگاههاي داده سنتيدكتر محمد رضا احمديمهندس داود ملكي مهندس احسان آريانيان1
اسلاید 2: فهرست مطالب:شناخت جنبه هاي ساختاري و كاركردي پايگاه هاي داده سنتيويژگيهاي ساختاري و كاركردي پايگاه هاي داده ابري بررسي فناوري هاي مطرح در ايجاد پايگاه هاي داده ابريبررسي روش هاي مهاجرت از پايگاه هاي داده موجود به ابريارزيابي و مقايسه ويژگيهاي مختلف پايگاههاي داده2
اسلاید 3: پايگاههاي داده رابطه ايمدل رابطهاي در سال ۱۹۷۰ توسط ادگار كود مطرح شد. اين مدل داراي ساختار دادهاي بر اساس يک مفهوم رياضي به نام رابطه استوار است. در پايگاه داده رابطهاي، رابطه نمايش جدولي دارد و اساساً پايگاه داده رابطهاي مجموعهاي است از تعدادي جداول با مفاهيم ساختار ي: سطر وستونهر جدول از نظر محتواي دادهاي مجموعهاي است از نمونههاي متمايز از انواع سطرها و هر سطر نيز مجموعهاي از مقادير است که هر کدام از يک مجموعه برگرفته شدهاند.3
اسلاید 4: قوانين حاكم بر پايگاههاي داده رابطه ايAtomic : A transaction is a logical unit of work which must be either completed with all of its data modifications, or none of them is performed.Consistent : The consistency property ensures that any transaction will bring the database from one valid state to another. Only valid data is saved.Isolated : Modifications of data performed by a transaction must be independent of another transaction. Durable : When the transaction is completed, effects of the modifications performed by the transaction must be permanent in the system. 4
اسلاید 5: ويژگيهاي پايگاههاي داده رابطه اي • داده ها و ارتباطات بين آنها در پايگاه داده به صورت مجموعه ای از جداول ديده می شود• هيچ جدولی دارای سطرهای تكراری نيست• ترتیب سطرها و ستون ها در هر جدول مهم نيست• ستون ها اتميک هستند و مقادیر ستون ها غیر قابل تجزیه اند• هر مقدار که در دو رکورد مختلف واقع می شود رابطه ای را بین آن دو رکورد می فهماند• ارتباط رابطه ها با يکديگر از طریق صفات خاصه مشترک انجام می گيرد• ایجاد، دسترسی و توسعه آن آسان است. بعد از ایجاد پایگاه داده اولیه، جداول جدید می توانند اضافه شوند بدون اینکه نیاز به تغییر کاربردهای موجود باشد 5
اسلاید 6: ساختار داخلي پايگاه داده6
اسلاید 7: نمونه هايي از پايگاههاي داده رابطه ايThe most popular RDBMS are:MS SQL Server, IBM DB2, Oracle DB,MySQL, Microsoft Access.7
اسلاید 8: محدوديت هاي پايگاههاي داده رابطه ايبراي داد ه هاي با توالي نوشتن بالا و توالي خواندن کم: همانند شمارنده هاي بازديد صفحات وب، دستگاه هاي وقايع نگار يا تلسكوپ هاي فضايي. براي داده هاي با توالي خواندن بالا و توالي نوشتن بسيار كم: همانند داده هاي گذرا و تصاوير، اسناد و HTML رندر شده با دسترسي تكراري.براي کاربردهايي كه نيازبه دسترسي بالا (High Availability) و توقف خدمات (Downtime) بسيار كم دارند: اين مورد در مدل رابطه اي با كمبود هاي همراه است و به خوبي از عهده آن بر نمي آيد. در اينجا بيش از هر چيز به مقياس پذيري افقي و امكان توسعه روي ماشين هاي مختلف شبكه نياز دارد. 8
اسلاید 9: ادامه4. براي داد ه هايي که بايد در نقاط مختلف جغرافيايي با هم همگام سازي شوند: چنين داده هايي که در کلاسترهاي مختلف يك شبكه بزرگ سازماني با دفاتر مختلف پراكنده در سطح جغرافيايي وسيع موجودند و نياز است تا همواره با بالاترين سرعت و کمترين هزينه ممکن با هم همگام سازي شوند.5. براي داد ه هاي بزرگ تجاري يا مرتبط با تحليل وب : چنين داده هايي تقريباً شکل و قالب از پيش تعيين شده اي ندارند و بر اساس محتواي متغير موجود روي وب توليد مي شوند و در بيشتر موارد به فعاليت كاربران و سيستم هاي نرم افزاري مرتبط و وابسته هستند. اغلب نياز است تا چنين داده هايي به خوبي ذخيره سازي شوند ( ترجيحاً به صورت موازي) و امكانات پرس و جو پذيري غني در اختيار بگذارند تا به خوبي قابل تحليل باشند. 9
اسلاید 10: Digital Information10
اسلاید 11: Digital Information11
اسلاید 12: What is NoSQL ?NoSQL is a non-relational database management systems, different from traditional relational database management systems in some significant ways. It is designed for distributed data stores where very large scale of data storing needs (for example Google or Facebook which collects terabits of data every day for their users). These type of data storing may not require fixed schema, avoid join operations and typically scale horizontally. 12
اسلاید 13: پايگاه های داده توزيع شدهدراین نوع پایگاه هاي داده بر خلاف پایگاه های مرکزی داده ها به جای این که در یک محل مرکزی نگهداری شده بر روی چندین مرکز نگهداری شده و هر مرکز نیز تا حد زیادی استقلال خود را حفظ می کند. دو نوع این پایگاه هاي داده عبارتند از :همسان یا :Homogeneous یک پایگاه داده یکسان، مطلع از یکدیگر و آماده هماهنگی و دارای شمای یکسان داده ایغیر همسان یا :Heterogeneous پایگاه داده غیر یکسان، غیر مطلع از یکدیگر و آماده هماهنگی و همکاری محدود و دارای شمای غیر یکسان داده ای13
اسلاید 14: RDBMS vs NoSQLRDBMS - Structured and organized data - Structured query language (SQL) - Data and its relationships are stored in separate tables. - Standard Data Manipulation Language, Data Definition Language - Tight Consistency - BASE Transaction NoSQL (Stands for Not Only SQL) - No declarative query language - No predefined schema - Key-Value pair storage, Column Store, Document Store, Graph databases - Eventual consistency rather than ACID property - Unstructured and unpredictable data - CAP Theorem - Prioritizes high performance, high availability and scalability14
اسلاید 15: CAP Theorem (Brewer’s Theorem)CAP theorem states that there are three basic requirements which exist in a special relation when designing applications for a distributed architecture.Consistency - This means that the data in the database remains consistent after the execution of an operation. For example after an update operation all clients see the same data. Availability - This means that the system is always on, no downtime. Partition Tolerance - This means that the system continues to function even the communication among the servers is unreliable, i.e. the servers may be partitioned into multiple groups that cannot communicate with one another.15
اسلاید 16: CAP Theorem16
اسلاید 17: NoSQL pros/consAdvantages :High scalabilityDistributed ComputingLower cost Schema flexibility, semi-structure dataNo complicated RelationshipsDisadvantages No standardizationLimited query capabilities (so far)Eventual consistent is not intuitive to program17
اسلاید 18: NoSQL Classification18
اسلاید 19: Matching DB19
اسلاید 20: ساختار کلی معماری پايگاه داده ابری20Cloud DB Management System
اسلاید 21: چالشهاي مطرح در بانک اطلاعاتی ابری21
اسلاید 22: مشخصات فني پايگاه هاي داده اي ابري متداولدر اين قسمت معرف ترين پايگاه هاي داده ابري ارائه شده است:بستر هدوپاز گروه Key-value پايگاههاي داده بررسي مي شود:•MemCacheDBاز گروه Document-Based پايگاههاي داده بررسي مي شود:•CouchDB •MongoDBاز گروه Column-Based پايگاههاي داده بررسي مي شود:•HBase•Cassandraاز گروه Graph پايگاههاي داده بررسي مي شود:•پايگاه داده Neo4J22
اسلاید 23: What Is Apache Hadoop?In very simple terms, Hadoop is a set of algorithms (frameworks) which allows storing huge amount of data (can be referred to as Big Data), and processing it in a much more efficient and faster manner (via distributed processing). So essentially, the core part of Apache Hadoop comprises two things: A storage part (Hadoop Distributed File System or HDFS) and a processing part (MapReduce). Its Hadoop Distributed File System (HDFS) splits files into large blocks (default 64MB or 128MB) and distributes the blocks amongst the nodes in the cluster. For processing the data, the Hadoop Map/Reduce ships code (specifically Jar files) to the nodes that have the required data, and the nodes then process the data in parallel. 23
اسلاید 24: MemcacheDBيك پايگاه داده كليد-مقدار بر اساس پايگاه داده بركلي است. اين سامانه معمولاً براي افزايش سرعت وبسايتهاي استفاده کننده از پايگاهداده، با استفاده از ذخيره دادهها و اشيا در حافظه اصلي براي کاهش تعداد دفعات خواندن داده از پايگاهداده به کار ميرود.در يك شبکه اجتماعي اين سيستم با استفاده از هزاران سرور Memcached، دهها ترابايت داده کششده گذرا را در هر لحظه پردازشكرده و خدمات مرتبط را به کاربران خود ارائه ميكند.دادههاي با توالي خواندن بالا و توالي نوشتن بسيارکم: همانند دادههايگذرا و کش شدهاي از تصاوير، اسناد و HTML رندر شده با دسترسي تکراري.
اسلاید 25: CouchDBمعماري توزيعي و همتاسازيذخيره سازي سندها ويژگيهاي اسيدديدگاه نگاشت/کاهش وايندکس هاپايداري نهايي يا Eventual Consistencyزبان Erlangريلکس نماد سادگي كارباآن استيک پايگاه دادههاي سندگراي متنباز است كه تمركز اصلي آن سادگي استفاده به عنوان يك پايگاه داده در وب است. اين پايگاه داده از JSON براي ذخيره داده ها استفاده مي كند. CouchDB در ابتدا با زبان برنامهنويسي C++ نوشته شده بود، ولي بعد به زبان برنامهنويسي ارلنگ انتقال داده شد.25
اسلاید 26: Column-Based Cassandraمدل داده اي كلاسترينگ حلقه اي در کاساندراكاساندرا يكي از مهم ترين بانك هاي داده اي غيررابطه اي كه توسط فيس بوك شروع شد و از سال 2010 مورد حمايت آپاچي قرار گرفت.از خصوصيات کليدي اين پايگاه داده ميتوان به عدم تمرکز، الاستيک بودن، قابليت تحمل خطا، ثبات قابل تنظيم، بهينهسازي و دسترسپذيري بالا اشاره کرد. همچنين اين پايگاهداده از ابتدا به گونهاي طراحي شده است که به شدت مقياسپذير بوده و بهسادگي روي سرورهاي معمولي که در ديتاسنترهاي مختلف پراکنده شدهاند، توزيع شود. استفاده كنندگان: شرکتهاي Digg، فيسبوک، Cloudkick، سيسکو، آيبيام، Reddit، Rackspace، SimpleGeo و Ooyala و OpenX26
اسلاید 27: پايگاه داده Neo4Jمبتني بر گراف گره ها و روابط حاوي دادهپرس و جو هاي مبتني بر پيمايششاخص (Index) گذاري براي جستجوي راحت تر ACID استقابليت اجرا بر روي کلاستر با كارايي بالاذخيره ميليون ها گره و رابطهAPI شي گراکاملا مقاوم بسيار مقياس پذير استدارا بودن چرخه توسعه به شدت سريعانعطاف پذير است،اين بانک اطلاعاتي در سه نسخه عرضه مي شود:Community : از اين نسخه به عنوان پايه اي ترين نسخه از Neo4j ياد مي شود.Advanced : قابليت مانيتور کردن پيشرفته بانک اطلاعاتي را دارد.Enterprise: قابليت پشتيبان گيري آنلاين، کلاسترينگ و مانيتورينگ پيشرفته را دارد.27
اسلاید 28: ساختارپايگاه داده درپياده سازي مدلهای ابریانتقال لایه داده به ابری شامل دو گام اساسی میباشد :مهاجرت DBL به cloud سازگاری DAL جهت فعال سازی دسترسی ابری . 28
اسلاید 29: مراحل مهاجرت داده ها به پايگاه داده ابريجهت انتقال لایه داده به بانک ابری چالشهایی ایجاد میگردد جهت رفع این چالشها از الگوهای داده ابری استفاده میشود. 29
اسلاید 30: مراحل مهاجرتدر بخش ارزیابی، اطلاعات مرتبط با مدیریت محاجرت مانند ابزارها و گزینه های مهاجرت به منظور ارزیابی تأثیر مهاجرت بانک اطلاعاتی ارزیابی میگردد . تجزیه و تحلیل جزئیات پیاده سازی در بانک اطلاعاتی هدف یعنی انواع داده های مختلف ، مکانیزمهای مدیریت تراکنش را بررسی میکند . بخش مهاجرت اين الگو به مهاجرت داده از دادههای مبدأ به دادههای مقصد در محیط تستی میپردازد . بعد از مرحله مهاجرت هم بانک اطلاعاتی و هم نرم افزار در مرحله تست بررسی می گردند . در نهایت در مرحله استقرار سیستم نهایی شامل بانک اطلاعاتی مهاجرت یافته در محیط واقعی مستقر میگردد 30
اسلاید 31: روش انتخاب پايگاه داده ابري انتخاب بر اساس نوع داده داده هايي كه مي توانند با مدل Key-Value ايندكس شوند.داده هايي كه مي توانند با مدل Document-oriented ذخيره شوند.داده هايي كه مي توانند با مدلColumn-oriented ذخيره مي شوند. داده هايي كه مي توانند با مدل Graph ذخيره مي شوند31
اسلاید 32: انتخاب بر اساس ويژگيهاي فني پايگاه داده دراين روش بر اساس ويژگيهاي تركيبي تئوري CAP متناسب با نوع داده :32
اسلاید 33: انتخاب بر اساس مدل ارائه پايگاه داده در اين روش بر اساس مدل ارائه پايگاه داده تقسيم بندي صورت مي گيرد: ارائه سرويس پايگاه داده توسط ماشين هاي مجازي :machine Image Virtual و Cassandra . Amazone simpleDB ارائه خدمات پايگاه داده به عنوان سرويس: Database as a service, Cassandra, MongoDBارائه سرويس بصورت ابر محلي: Native Cloud NoSQL--Google APP, SalesForse33
اسلاید 34: مكانيزم انتخاب34
اسلاید 35: مقايسه پايگاههاي داده سنتي و دادههاي عظيم35
اسلاید 36: مقايسه انواع پايگاههاي دادهاي عظيم 36
اسلاید 37: 37مقايسه پيچيدگي
اسلاید 38: توسعه پذيري و مقايسه كارايي38
اسلاید 39: نتيجه گيرياين تحقيق با هدف شناخت پايگاههاي داده موجود و تمركز بر مشكلات و نقاط ضعف تكنولوژي هاي سنتي در رويارويي با نياز هاي جديد و آتي فناوري اطلاعات مي باشد.بديهي است با گسترش زير ساختها، سرويس ها و برنامه هاي كاربردي جديد درفناوري اطلاعات نياز به ابزارها و راه حل هاي متفاوتي دارد.شناخت جنبه هاي ساختاري و كاركردي پايگاه هاي داده سنتي مورد بررسي قرار گرفت و مدل رياضي و توسعه اي آنها بر اساس ويژگيهاي ACID ارائه گرديد. 39
اسلاید 40: ويژگيهاي ساختاري و كاركردي پايگاه هاي داده ابري در قالب سيستم هاي توزيع شده و ساختارمدل غير رابطه اي بر اساس تئوري CAP و ويژگيهاي BASE ارائه گرديد.فناوري هاي مطرح در ايجاد پايگاه هاي داده ابري در چهار دسته با ويژگي ها و مشخصات فني نمونه هاي معروف آنها مورد بررسي قرار گرفت.مراحل و روش هاي مهاجرت از پايگاه هاي داده موجود به ابري در قالب الگوهاي 7 مرحله اي مهاجرت و نحوه انتخاب پايگاه داده مناسب از ميان مدلهاي مختلف ارائه گرديد.مقايسه و ارزيابي فاكتورهاي كليدي صورت گرفته است.40
اسلاید 41: 41
نقد و بررسی ها
هیچ نظری برای این پاورپوینت نوشته نشده است.