220 likes | 436 Views
تخصیص به نزدیکترین همسایه با حد آستانه نسبی ( RTNNA ). کاوه پاشائی ، رضا باصدا ، دکتر مسعود رهگذر {K.Pashaei , R.Basseda }@ece.ut.ac.ir , Rahgozar@ut.ac.ir. مقدمه. يک سيستم پايگاه داده توزيع شده :
E N D
تخصیص به نزدیکترین همسایه با حد آستانه نسبی (RTNNA ) کاوه پاشائی ، رضا باصدا ، دکتر مسعود رهگذر {K.Pashaei , R.Basseda }@ece.ut.ac.ir , Rahgozar@ut.ac.ir
مقدمه • يک سيستم پايگاه داده توزيع شده: • مجموعهاي از سايتها مي باشد که از طريق شبکه به هم متصل شدهاند که هر کدام از سايت ها پايگاه داده مخصوص به خود دارد اما مي توانند با يکديگر کار کنند • هر کاربري در هر سايتي مي تواند به همه داده هاي موجود در شبکه دسترسي داشته باشد درست مانند اينکه همه داده ها در سايت کاربر ذخيره شده است
مقدمه • راهحلهاي گوناگوني براي تخصيص پویای داده در سيستهماي توزيعي وجود داردکه برخی از آنها عبارتند از : • الگوريتم شمارنده ساده • الگوريتم Load Sensitive counter • الگوريتم Incremental • الگوريتم optimal • الگوريتم Threshold
الگوريتم optimal • الگوریتم optimal به صورت زیر می باشد: • براي هر قطعه داده که به صورت محلي ذخيره شده سطر شمارنده دسترسي را برابر 0 قرار بده ( Sik=0 که k=1,2,…,n ) • درخواست دسترسي به قطعه داده ذخيره شده را پراسس کن • شمارنده دسترسي نودي که به اين قطعه داده دسترسي پيدا کرده را يکي افزايش بده ( اگر نود x به قطعه داده i دسترسي پيدا کند قرار بده six=six+1 )( • اگر نودي که به آن دسترسي شده همان نود جاري باشد که قطعه داده در آن قرار دارد برو به مرحله 2 ( دسترسي محلي )
الگوريتم optimal • اگر شمارنده نود دور بيشتر از نودي باشد که قطعه داده در آن قرار دارد مالکيت اين قطعه داده همراه با آرايه مربوط به آن را به نود دور منتقل کن ( اگر نود x به قطعه داده i دسترسي پيدا کند و six>sij باشد قطعه داده i را به نود x بفرست ) • برو به مرحله 2 • مشکل الگوریتم optimal : • اگر الگوهاي تکرار دسترسي به قطعه هاي داده زياد باشد زمان زيادي براي انتقال قطعه هاي داده به نودهاي مختلف صرف مي شود بنابراين زمان پاسخ و تاخير افزايش پيدا مي کند
الگوریتم NNA • در الگوريتم NNA شرايط لازم براي اينکه قطعه داده منتقل شود درست مانند الگوريتم optimal مي باشد • اما مقصد يعني محلي که قرار است داده به آن منتقل شود فرق مي کند • مقصد قطعه داده اي که مي خواهد منتقل شود نودي مي باشد که همسايه نود مبدا است و اين نود همسايه يعني نودي که قرار است قطعه داده به آن منتقل شود در مسيري قرار دارد که نودهاي موجود در اين مسير بيشترين دسترسي به اين قطعه داده را دارند
الگوریتم NNA • از الگوريتم link state براي مسيربابي استفاده شده است • با استفاده از اين روش انتقال مکرر قطعه هاي داده به دليل اينکه اين قطعه هاي داده در نودي قرار مي گيرد که براي همه نودهايي که به اين قطعه داده دسترسي دارند هزينه دسترسي ميانگين دارد کاهش مييابد • تاخير کاهش مي يابد و زمان پاسخ بهتر مي شود • يک حد آستانه اي برابر 5
الگوریتم RTNNA • تصميم گيري درباره انتقال قطعه داده : • سطرهاي يک بلاک در صورتي که شمارنده مربوط به آن بلاک در يک سايت بيشتر از سايتي باشد که بلاک هم اکنون در آن قرار دارد تصميم گيري درباره انتقال قطعه داده با استفاده از الگوريتم هاي مسير يابي انجام مي شود • مانند الگوريتم NNA از الگوريتم link state استفاده می شود
الگوریتم RTNNA • نود G ،H ،I وE به طور مکرر براي قطعه داده i که در نود A قرار دارد درخواست مي فرستند • با توجه به الگوريتم RTNNA هنگامي که شمارنده مربوط به يکي از اين نودها بالاتر از بقيه نودها و نود مبدا باشد قطعه داده i به نود C منتقل مي شود • اگر اين درخواستها بعد از انتقال قطعه داده ادامه پيدا کند قطعه داده به نود B منتقل مي شود اين روش ادامه پيدا مي کند تا وقتي که قطعه داده به نود G منتقل شود
الگوریتم RTNNA • با قرار گرفتن اين قطعه داده در نود G ، درخواستها از نودهاي G ،H ،I و E با کمترين تاخير و نه تاخير کمينه جواب داده مي شود • در اين مرحله داده در يک وضعيت پايدار قرار مي گيرد بعد از اين مرحله اگر يکي از نودهاي H ،G وE بيشتر از ديگران درخواست قطعه داده بدهند اين قطعه داده در اين نود قرار مي گيرد .
الگوریتمRevise RTNNA • تصميم گيري براي انتقال قطعه داده از سايتي که در آن قرار دارد به سايت ديگر به اين صورت انجام مي شود • ابتدا مجموع شمارنده مربوط به يک قطعه داده که توسط تمامي سايتهاي موجود در شبکه به آن دسترسي شده محاسبه مي شود • اين مجموع بر تعداد نودها منهاي نودهايي که به اين قطعه داده دسترسي پيدا نکرده اند تقسيم مي شود • از اين معادله يک نتيجه حاصل مي شود اگر اين مقدار از مقدار شمارنده اين قطعه داده مربوط به سايتي که در آن قرار دارد بيشتر باشد انتقال قطعه داده انجام مي شود • داده يک مرحله با توجه به الگوريتم مسيريابي link state يک قدم منتقل مي شود و در سايت ديگري قرار مي گيرد
تاثير طول قطعه داده بر زمان پاسخ با استفاده از چهار روش optimal،NNA ،RTNNA و Revise RTNNA
تاثير طول قطعه داده بر زمان پاسخ با استفاده از چهار روش optimal،NNA ،RTNNA و Revise RTNNA • براي فاکتور زمان پاسخ براساس طول قطعه داده • الگوريتم NNA براي قطعه هاي داده با طول کمتر از 6000 بهتر از بقيه عمل مي کند • در بازه 6000 و 9500 نتايج حاصله از اين چهار روش براي فاکتور پاسخ نزديک هم مي باشد • وقتي طول قطعه داده از 9500 بيشتر مي شود الگوريتم RTNNA بهتر از ساير روش ها عمل مي کند.
تاثير طول قطعه داده بر زمان پاسخ با استفاده از چهار روش optimal،NNA ،RTNNA و Revise RTNNA • الگوريتم Revised RTNNA براي برخي قطعه هاي داده خيلي خوب عمل مي کند ولي براي برخي ديگر نتايج خوبي از اين الگوريتم بدست نمي آيد • در يک مقايسه کلي مي توان گفت که روش RTNNA بهترين عملکرد را براي فاکتور زمان پاسخ دارد بعد الگوريتم NNA نسبت به بقيه خوب عمل مي کند و نوسان کمتري براي قطعه داده با طول مختلف دارد بعد الگوريتم Revise RTNNA براي برخي قطعه هاي داده خوب است و در نهايت الگوريتم optimal ضعيف ترين عملکرد را در بين اين چهار روش دارد.
مقایسه براساس فاکتور زمان انتقال • عملکرد سه روش با توجه به فاکتور زمان انتقال • الگوریتم Revise RTNNA • الگوريتم RTNNA • الگوريتم NNA • الگوريتم optimal • با افزايش طول قطعه داده الگوريتم optimal بدترين عملکرد را دارد • الگوريتم NNA نسبت به الگوريتم هاي RTNNA و Revise RTNNA زمان زيادي را براي انتقال داده صرف مي کند • الگوريتم Revise RTNNA در حالت کلي بهتر از همه عمل مي کند
نتيجهگيري • بررسی دو الگوریتم • نزديکترين همسايه با حد آستانه نسبي • نزديکترين همسايه با حد آستانه نسبي اصلاح شده • مقایسه چهار روش با توجه به دو فاکتور • ميانگين تاخير براي پاسخ دادن به درخواست قطعه داده • زمان سپري شده براي انتقال قطعههاي داده در شبکه
نتيجهگيري • الگوريتم Revise RTNNA : • براي فاکتور زمان صرف شده براي انتقال قطعه داده بهتر از الگوريتمهاي ديگر عمل ميکند • الگوريتم RTNNA : • براي فاکتور زمان پاسخ اين چهار روش نتايج تقريباً مشابه دارند با اين حال این الگوریتم بهتر از بقيه ميباشد
منابع و مراجع • [1]L. C. John, A Generic Algorithm for Fragment Allocation in Distributed Database Systems, ACM,1994 • [2] Ahmad, I., K. Karlapalem, Y. K. Kwok and S. K. Evolutionary Algorithms for Allocating Data in Distributed Database Systems, International Journal of Distributed and Parallel Databases, 11: 5-32, The Netherlands, 2002. • [3] A. Brunstroml, S. T. Leutenegger and R. Simhal, Experimental Evaluation of Dynamic I)ata Allocation Strategies in a Distributed Database with changing Workloads, ACM Transactions on Database Systems, 1995 • [4] A. G. Chin, Incremental Data Allocation and ReAllocation in Distributed Database Systems, Journal of Database Management; Jan-Mar 2001 • ; 12, 1; ABI/INFORM Global pg. 35 • [5] T. Ulus and M. Uysal, Heuristic Approach to Dynamic Data Allocation in Distributed Database Systems, PakistanJournal of Information and Technology 2 (3): 231-239, 2003 • , ISSN 1682-6027 • [6] S. Voulgaris, M.V. Steen, A. Baggio, and G. Ballintjn, Transparent Data Relocation in Highly Available Distributed Systems. Studia Informatica Universalis. 2002 • [7] Navathe, S.B., S. Ceri, G. Wiederhold and J. Dou, Vertical Partitioning Algorithms for Database Design, ACM Transaction on Database Systems, 1984 • , 9: 680-710.
منابع و مراجع • [8] P.M.G. Apers, “Data allocation in distributed database systems,” ACM Transactions on Database Systems, vol. 13, no. 3, pp. 263–304, 1988. • [9] Y. F. Huang and J. H. Chen, Fragment Allocation in Distributed Database Design • Journal of Information Science and Engineering 17, 491-506, 2001 • [10] I. O. Hababeh , A Method for Fragment Allocation Design in the Distributed Database Systems, The Sixth Annual U.A.E. University Research Conference, 2005 • [11] R. Baseda, S. Tasharofi, M. Rahgozar, Near Neighborhood Allocation: A Novel Dynamic Data Allocation Algorithm in DDB, CSICC 2006. • [12] Ceri, S., Pernici, B., and Wiederhold, G., Optimization Problems and Solution Methods in the Design of Data Distribution, Information Systems, 14, 1989, 261-272. • [13] Ceri, S., Navathe, S. B., and Wiederhold, G., Distribution Design of Logical Database Schemas, IEEE Transactions on Software Engineering, 9 , 1983, 487-503. • [14] Zhang, Y., and Orlowska, M. E., On Fragmentation Approaches for Distributed Database Design, Information Sci., 1, 1994, 117-132.
Thanks for you Attention