T1*T2 - دانشگاه آزاد اسلامي واحد نجف آباد
Download
Report
Transcript T1*T2 - دانشگاه آزاد اسلامي واحد نجف آباد
پایگاه داده پيشرفته
سئواالت نمونه
دکتر محمدحسین ندیمی
دانشکده مهندس ی کامپیوتر
دانشگاه آزاد اسالمی واحد مجف آباد
Advance Data Base Lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad Branch, Islamic Azad University
مديريت و همزماني تراكنش ها
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
آبشاریrollback زمانبند ترمیم پذیر چه زمانبندی است؟کدامیک از تراکنش های زیر ترمیم پذیر است؟آیا در بین تراکنشهای زیر- 1
وجود دارد؟
باید قبلTi شدنCommit. نوشته شده باشدTi داده ای را بخواند که قبل توسط تراکنش دیگری به نامTj اگر تراکنش
.به چنین زمانبندی ترمیم پذیر گویند. اعمال شودTj شدنCommit از
• Sa’: R1(X); R2(X); W1(X); R1(Y); W2(X); C2;W1(Y); C1;
•
(recoverable but suffers from the lost update problem)
• Sc: R1(X); W1(X); R2(X); R1(Y); W2(X); C2; A1;
•
(non-recoverable)
• Sd: R1(X); W1(X); R2(X); R1(Y); W2(X);W1(Y); C1; C2;
•
•
•
(recoverable)
Se: R1(X); W1(X); R2(X); R1(Y); W2(X);W1(Y); A1; A2;
(recoverable but cascading rollback)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
درچه شرایطی خروجی زمانبند غیر سریال نسبت به زمانبند سریال ناسازگار است؟آیا تراکنش زیر سریال پذیر است؟چرا؟- 2
2
T
1
T
Time
begin-transaction
read(x)
t3
t1
t2
x= x+100
t4
write(x)
begin_transaction
read(x)
t5
t6
x= x* 1.1
t7
write(x)
t8
read(y)
t9
y = y * 1.1
t10
write(y)
t11
commit
t12
read(y)
t13
write(y)
t14
commit t15
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: حالت است3 شاملInterleaved ناسازگاری در در اجرای- 3
Write-read (WR) conflict
Read-write (RW) conflict
Write-write (WW) conflict
.)خروجی ناسازگار ایجاد می کندWR Confilict ( خیر زیرا به دلیل خواند کثیف
نشدهCommit تغییر یافته اما هنوزT1 مقداری را می خواند که توسطT2
خروجی نسبت به هر زمانبند سریالی متفاوت است
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
•
•
•
- 4اگر دو تراکنش به صورت همروند اجرا شوند کدام گزینه صحیح است؟
ww )2مشکل وابستگی تثبیت نشده را به وجود می آورد WR)3 .مشکل
RR)1مشکل تحلیل ناسازگار را به وجود می آورد.
وابستگی تثبیت نشده رابه وجودمی آورد RW)4مشکل نتیجه از دست رفته را به وجود می آورد.
پاسخ:
WR)3مشکل وابستگی تثبیت نشده را به وجود می آورد.
- 5اساس ی ترین مشکل قفل گذاری کدام است؟
)1اجرای ناپیوسته
)2بن بست
)3انتظار
)4برگشت
پاسخ:
)2بن بست
- 6چه موقع نمی توان از صحت بانک اطالعاتی مطمئن بود؟
)1در شروع هر تراکنش
)3در حین اجرای تراکنش
)2درپایان هر تراکنش
)4بالفاصله بعد از بار کردن اولیه پایگاه داده
پاسخ:
)3در حین اجرای تراکنش
- 7مدیریت تراکنش کدامیک از موراد زیر را تضمین می کند؟
پا)1اجرای موفق تراکنش ها
)عدم اجرای تراکنش های ناموفق
پاسخ:
)4بالاثر کردن تراکنش های ناموفق
)2اجرای تراکنش های موفق3
)4بالاثر کردن تراکنش های ناموفق
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 8فرض کنید 6تراکنش در Databaseزیر به صورت همروند به جداول و تاپلهای آن دسترس ی دارند .با توجه به نوع
درخواست هر تراکنش قفل Intentionمربوطه را در سلسله مراتب زیر نمایش داده و مشخص کنید که کدامیک از قفلها به
چه دلیل نمی تواند تعلق بگیرد.
)Transaction2:R(T2) Transaction3:W(P5
)Transaction5:W(P1) Transaction6:R(T5
پدر دارای قفل Ixاست و طبق تعریفاتی
که قبل داشتیم قفل Ixمی تواند به این
نود تعلق بگیرد.
)Transaction1:W(T8
)Transaction4:R(P3
پدر دارای قفل Ixاست و طبق تعریفاتی
که قبل داشتیم قفل Isمی تواند به این
نود تعلق بگیرد.
)T1(IX
D
)T3(IX
)T1(IX
)T1(IX
P7
)T2(IS
R2
R3
R1
)T3(X
P6
)T4(S
P5
P4
P3
)T2(IS
P2
)T1(X
T9
T8
T7
این قفل تعلق نمی
گیرد.
جد دارای قفل Isاست و
طیق تعریف فرزند می
تواند قفل sداشته
باشد.
این قفل تعلق نمی
گیرد.
P1
)T2(S
T6
T5
T4
T3
T2
T1
. شکل زیر کدامیک از مشکالت کنترل همروندی را داراست؟توضیح دهید- 9
time
T1
T2
X
t1
Begin_Transaction
10
t1
Read(x)
10
t3
x=x+10
10
20
10
t4
Begin_Transaction
t5
Read(x)
Write(x)
..
.
t6
X=x-10
RollBack
t7
Write(x)
t8
Commit
20
10
:پاسخ
. را داردuncommited Dependancy مشکل استفاده از داده های تثبیت نشده یا
مقدرا آن تغییرT2 استفاده می کند که در طول اجرای تراکنشx از دادهT2 شدن تراکنشRollback قبل ازT1تراکنش
کرده
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 10توالی پذیری را در مورد طرح زیر بررس ی کنید:
T2
time
T1
)R(x
X=x+50
)W(x
پاسخ:
تراکنشها زمانی توالی پذیر هستند که اجرای همروند انها با یک اجرای متوالی آنها
نتیجه یکسانی داشته باشد.
در این مثال نتیجه اجرای طرح روبرو با اجرای متوالی )(T1,T2برابر است ،پس
این طرح توالی پذیر است.
)R(x
t=x*0.1
x=x-t
)W(x
t2
)R(y
y=y+50
)W(y
)R(y
y=y+t
)W(y
t1
t3
t4
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: زمانبندی زیر را در نظر بگیرید-11
T1
T2
T3
r(A)
w(B)
r(B)
r(C)
w(C)
w(A)
آنرا بنویسیدC2PL الف) معادل
دچار بن بست می شود یا خیرB2PL ب) نشان دهید که در
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
آنرا بنویسیدC2PL الف) معادل
T1
T2
T3
r(A)
w(B)
r(B)
w(C)
w(A)
r(C)
:راه حل
T1 X(B) S(A) R(A) U(A) W(B) U(B)
T2
X(C) S(B) R(B) U(B) W(C) U(C)
T3
T1
T2
T3 X(A) S(C) R(C) U(C) w(A) U(A)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
دچار بن بست می شود یا خیرB2PL ب) نشان دهید که در
T1
T2
T3
r(A)
w(B)
r(B)
w(C)
w(A)
r(C)
T1 S(A) R(A)
T2
T3
:راه حل
B انتظار برای
S(B)R(B)
S(C)R(C)
C انتظار برای
A انتظار برای
بن بست
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
زمانبندی زیر را با پروتکل مهر زمانی نشان دهید-12
T1 R(D)
D=D+1
W(D)
T2 R(D)
D=D+1
W(D)
TS(T1)=150
TS(T2)=160
R-TS(D)=0
W-TS(D)=0
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Read Rule: IF TS(Ti)<W-TS(Q) Then Reject Else Accept
Write Rule: IF (TS(Ti)<W-TS(Q)) Or (TS(Ti)<R-TS(Q)) Then Reject Else Accept
زمان
T1
TS(T1)=150
t1
R(D)
t2
t3
T2
TS(T2)=160
R-TS(D)=150
R(D)
R-TS(D)=160
D=D+1
t4
D=D+1
t5
W(D)
* t6
D
R-TS(D)=0
W-TS(D)=0
W-TS(D)=160
W(D)
رد می شود چرا کهt6 در لحظهT1 عمل نوشتن توسط
TS(T1)= 150 < W-TS(D) = 160
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 13مشکلت همزمانی تراکنش ها را توضیح دهید.
• بهنگاام ساازی گمشاده : lost updates -اینن مشن ل منوقبی بنروز منی کنند کنه ،تراکن ن ی
بلفاص ننله بع نند از تن نراکنش دیگ ننری ک ننه مق ننداری را بن نرای داده ای نوش ننته اس ننت ،بخواه نند ،
مقدار جدیدی برای آن داده ،بنویسد.
• اسااتفاده از داد اههااای تثبیاات نشااده : uncommitted dependency -ایننن حالننت
م ننوقبی رد میدهن نند ک ننه دو ت ن نراکنش ب ننه طن ننور همزم ننان در حن ننال اجن نرا باشن ننند و اول ننی در حن ننالی
بازگشننت داده شننود ( )Rollbackکننه ت نراکنش دومننی ،در حننال اسننتفاده از دادههننای تثبیننت
نشده اولی باشد.
• تحلیاال ناسااازگاری : inconsistent analysis -ایننن حالننت مننوقبی رد میدهنند کننه یننک
تن نراکنش در ح ننال مراس ننبه ب ننر روی دادهه ننا میباش نند در ح ننالی ک ننه تن نراکنش دیگ ننری در ح ننال
بهنگام سازی دادهها است.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 14حالت های مختلف Interleavedدو تراکنش را بررس ی و بیان کنید در هر حالت کدام یک از مشکلت
همزمانی بروز می کند.
•
A : RRو Bهر دو بخواهند Tرا بخوانند ،عمل خواندن این دو تراکنش تداخلی با یکدیگر ندارد ،بنابر این در این مورد
اش الی ایجاد نمی شود.
•
A :WWمقدار Tرا بخواند سپس Bبخواهد روی Tبنوسید ،اگر به Bاجازه نوشتن داده شود ،مش ل ترلیل ناسازگار
بروز می کند
•
A :WRروی Tبنوسید و Bبخواهد Tرا بخواند ،ممکن است مش ل داده های تثبیت نشده بروز کند.
•
A :WWروی Tبنوسید و سپس Bبخواهد روی Tبنویسد ،اگر به Bاجازه نوشتن داده شود ،در این صورت مش ل
بروزرسانی گمشده بروز می کند.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 15با توجه به جدول تراکنش های روبر او کدامیک از مشکالت 2PLمبنایی بروز می کند؟ آن را توضیح
دهید.
T2
T1
)LOCK-X(D1
)READ(D1
D:=D1-50
)WRITE(D1
Oب ن ننروز پدی ن ننده ب ن ننن بس ن ننت م ن ننی باش ن نند ک ن ننه
ت نراکنش T1منتظننر اسننت کننه ت نراکنش
T2از D2قفنل گشنایی کنند و تنراکنش
T2در انتظار قفل گشایی از D1توسنط
تراکنش T1است.
)LOCK-S(D2
)READ(D2
)LOCK-S(D1
Wait
)LOCK-X(D2
Wait
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
تبعیت میکند واحتمال بن بست در آن وجود دارد یاخی ا اار؟2pl مثال روبرو از کدام- 16
شدید را نشان میدهدچون قفل2pl O
های انرصاری تا تثبینت شندن ینا طنرد
شن ن ن ن ن نندن ت ن ن ن ن ن نراکنش حف ن ن ن ن ن ن میشن ن ن ن ن ننوند
.واحتمال بن بست در ان وجود دارد،
T1
Lock-X(A)
Read(A)
T2
Write(A)
Lock-X(B)
Read(B)
Lock-X(B)
Write(B)
0
Lock-X(A)
0
Read(A)
0
Write(A)
COMMIT
Unlock(A)
Unlock(C)
COMMIT
Unlock(B)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 17در سلسله مراتب پایگاه داده مانند ش ل زیر :
الف ) چگونه رکوردی را برای خواندن قفل گذاری می کنید؟
Oابتدا پایگاه داده و ناحیه و فایل شامل ان رکورد را قفل ضمنی ،ISو آن رکورد را قفل
sمیگذاریم.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ب ) چگونه رکورد را برای نوشتن قفل گذاری کنیم ؟
X رکورد،IX پایگاه داده و ناحیه وفایل شامل ان رکورد قفل ضمنی
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 18انواع رویه های قفل گذاری را بیان کنید.چند نوع قفل داریم؟
اشتراکی (خواندن)
S
Xانرصاری(نوشتن)
ISیعنی برخی از فرزندان ان قفل Sاست
IXیعنی برخی از فرزندان ان قفل Sیا Xاست
)ISوSIX :) IX
زیر درخت با ریشه نود در مد اشتراکی و بصورت صریح قفل شده است و ممکن است گره
های سطوح پایین تر در مد انرصاری Xباشد
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-19چگونه برای خواندن و نوشتن فایل قفل گذاری می کنید؟
پایگاه داده و ناحیه شامل ان فایل قفل ضمنی ، IXفایل شامل رکورد قفل Xاگر تراکنش دیگری درخواست
خواندن و نوشتن این فایل را داد باید صبر کند
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مبنایی بروز می کند آن را توضیح دهید؟2PL با توجه به پدیده زیر کدامیک از مشکلت.20
T1
LOCK-X(D1)
READ(D1)
D:=D1-50
WRITE(D1)
T2
LOCK-S(D2)
READ(D2)
LOCK-S(D1)
WAIT
LOCK-X(D2)
WAIT
قفل گشایی کند وD2 ازT2 منتظر است که تراکنشT1 بروز پدیده بن بست می باشد که تراکنش
. استT1 توسط تراکنشD1 در انتظار قفل گشایی ازT2 تراکنش
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
آیا اجرای طرح همروند زیر ام ان پذیر است ؟، با استفاده از قاعده نوشتن مهر زماني.21
) TS(T1)<TS(T2)<TS(T3) : ( با فرض اینکه داشته باشیم
T3
T2
T1
R(D1)
R(D1)
D1:=D1+10
W(D1)
TS(T1)=100
TS(T2)=200
TS(T3)=300
R(D2)
D1:=D1+20
W(D1)
D2:=20
D2:=D2+20
W(D2)
W(D2)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ياد آوري(پروتكل مهر زماني) :
در عمل خواندن Ti :دستور ) R(Dرا صادر می کند :
الف .اگر ) TS(Ti) < W-TS(Dدرخواست خواندن رد می شود وTiباید از سر گرفته شود ،زیرا
Tiدرخواست خواندن مقداری از Dرا دارد که طی یک عمل نوشتن ،تغییر کرده است .
ب .اگر ) ،TS(Ti)>= W-TS(Dدرخواست خواندن اجرا می شود و ) R-TS(Dبا ماکزیمم دو مقدار
) R-TS(Dو )TS(Tiمقدارگذاری می شود .
در عمل نوشتن Ti :دستور ) W(Dصادر می کند :
الف .اگر ) ، TS(Ti)< R-TS(Dدرخواست نوشتن رد می شود و Tiباید از سر گرفته شود ،زیرا
مقداریکه Tiمیخواهد تولید کند ،پیشتر مورد نیاز بوده است .
ب .اگر،TS(Ti)< W-TS(Dدرخواست نوشتنTiنادیده گرفته می شود و تراکنش میتواند ادامه
دهد.
جز دو حالت الف و ب ،درخواست نوشتن انجام می شود و ) W-TS(Dبامقدار ) TS(Tiمقدارگذاری می
شود .
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: جواب) با توجه به قاعده فوق و زمانمهر های فرضی روند اجرا به این صورت می باشد که
توضيحات
D2
Ts(T1)>0
D1
T3=300
R-TS = 100
W-TS=0
R-TS = 200
W-TS=0
Ts(T2)>0
T2=200
T1=100
R(D1)
R(D1)
D1:=D1+10
Ts(T1)<200
Ts(T3)>0
W(D1)
R-TS = 300
W-TS=0
R(D2)
D1:=D1+20
Ts(T2)<200
Ts(T2)<0 نیست
R-TS = 200
W-TS=200
W(D1)
D2:=20
D2:=D2+20
Ts(T2)<300
Ts(T3)<300
Ts(T3)<0
W(D2)
R-TS = 300
W-TS=300
W(D2)
. طرد شده و باید اجرای خود را از سرگیرندt2 وt1 تراکنش
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
.22دو مرحله تكنيك قفل گذاري دو مرحله اي()2PLرا نام برده و توضيح دهيد؟
جواب )مرحله قفل گذاري(بسط) و مرحله قفل گشايي(قبض).
در مرحله بسط تراكنش فقط ميتواند داده را قفل كند و در مرحله قبض فقط ميتواند قفل گشايي انجام
دهد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
در زمانبند همروند زیر کدام مورد صحیح نمیباشد؟- 23
T0
Read(A)
A=A-50
T1
Read(A)
Temp=A*0.1
A=A-temp
Write(A)
Read(B)
Write(A)
Read(B)
B=B+50
Write(B)
B=B+temp
Write(B) •
نیستview serializeable)الف
خواهد بود3050 برابرA+B فرض شود پس از اجراA=1000,B=2000 ب)اگر
نمی باشدT0T1 با زمانبند سریالconflict ج)معادل
می باشدT1T0 با زمانبندconflict د)معادل
گزینه د:پاسخ
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 24اگر که در روش های کنترل هم روندی ما هیچ گونه اطلعاتی در مورد ساختار درونی تراکنش ها و آیتم های
داده ای مورد نیاز آنها و ترتیب آنها نداشته باشیم کدام پروت ل کنترل همروندی را باید استفاده کنیم؟
پاسخ :تنها پروت ل قابل انجام در این شرایط پروت ل قفل گذاری دو مرحله ای میباشد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مشکل زمانبند زیر چیست؟- 25
:پاسخ
.نتیجه از دست رفته و باعث کاهش همروندی می شود
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ی 2PLاستفاده کنیم ،برای افزایش
- 26دو تراکنش زیر را در نظر بگیرید .اگر از پروتکل قفل گذار ا
همروندی،کدام قفل و چگونه استفاده شود؟
T2:
)READ(D1
)READ(D2
)DISPLAY(D1+D2
T1:
)READ(D1
)READ(D2
.
.
.
)READ(Dn
)WRITE(D1
پاسخ:
چون T1به قفل انرصاری روی D1تنها در پایان کار نیاز دارد اگر T1بتواند D1را به طور اشتراکی قفل کند تا
T2نیز بتواند آنرا بخواند همروندی بیشتر می شود .و در آخر با دستور ) UPGRADE(D1قفل اشتراکی روی
D1را به قفل انرصاری تبدیل کند و عمل نوشتن را انجام دهد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
T1
: كدام مشكل همروندی را حل میكند2PL پروتكل، در طرح اجرای زیر- 27
الف) ترلیل ناسازگار
T2
ب) نتیجه از دست رفته
Lock-X(D)
ج) خواندن داده ناجور
د) هیچ كدام
READ(D)
D:=D+100
Lock-X(D)
WRITE(D)
WAIT
ROLLBACK/UNLOCK(
D)
READ(D)
گزینه ج:پاسخ
آیا در مثال اول سطح همروندی دو تراكنش
كاهش یافته است؟
بلی:پاسخ
D:=D-10
WRITE(D)
COMMIT/UNLOCK(D
)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
کدام یک، دو دستورالعمل از دو تراکنش متفاوت باشند که در زمانبندی همروند وجود دارندI1,I2 اگر که- 28
) هستند؟swappable( از حالتهای زیر جابه جا پذیر
read(a),write(a) )الف
read(a),read(a) )ب
T1
T2
write(a),write(a) )ج
R(B)
write(a),read(a) )د
R(B)
گزینه ب:پاسخ
B:=B-50
امكان پذیر است؟2PL آیا طرح اجرای روبرو با
W(B)
خیر:پاسخ
R(A)
R(A)
Display(A+B)
A:=A+50
W(A)
Display(A+B)
Advance
33 Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 29در سیستم پایگاه داده هنگام بروز پدیده بن بست ،کدام تراکنش باید قربانی شود؟
پاسخ:
برای تصمیم گیری در مورد اینکه کدام تراکنش باید قربانی شود ،ضوابطی وجود دارد از جمله:
تعداد قفلها :تراکن ی که تعداد کمتری قفل دارد ،قربانی می شود.
کمتر بودن عملیات :تراکن ی که عملیات کمتری در پایگاه داده ها انجام داده است ،قربانی می شود.
زمان باقیمانده برای اتمام تراکنش :تراکن ی که اتمام آن زمان بیشتری خواهد گرفت ،قربانی می شود (تراکنش
جوانتر).
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 30چگونه برای خواندن و نوشتن فایل قفل گذاری می کنید؟
)T1(X
)T1(X
پایگاه داده و ناحیه شامل ان فایل قفل ضمنی ، IX
فایل شامل رکورد قفل Xاگر تراکنش دیگری
درخواست خواندن و نوشتن این فایل را داد باید صبر
کند
)T1(X
C4
B4
B3
C3
A
B2
C2
B1
C1
R
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Backup &recovery
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
فاجعه چه ملزوماتي نياز است؟- براي عمل ترميم پايگاه داده- 1
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
به چند صورت ميتواند انجام گیرد؟Media Recovery - 2
Media Recovery
توسطPhysical Recover
NoArchiveLog پايگاه داده به صورت
TableSpace Recovery
Complete Recovery
توسطLogical Recover
ArchiveLog پايگاه داده به صورت
Database Recovery
DataFile Recovery
Incomplete Recovery
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
در اوراكل را با هم مقايسه كنيد؟Recovery مكانيسم هاي- 3
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
سخت افزاري را نام برده شرح دهيد؟online انواع افزونگي- 4
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
چه وظیفه ای دارد؟Authoriation control - 5
این فرایند اطلعاتی را از کاربران یا تجهیزات متقاض ی دسترس ی به منابع دریافت میکند وبر طبق ان ام ان
استفاده از منبع یا منابع مستقر روی شبکه را به انها می دهد و انها اجازه پردازش پیدا می کنند
Query processor
Catalog manager
Program object
code
Authoriation
control
Command processor
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 6نقش اجزای اصلی حفاظت داده ها راشرح دهید؟
•
•
•
•
مدیریت تراکنش ها:وظیفه ارائه حالت اتمیک برای تراکنش ها وکنترول اجرا یا لغو تراکنش ها را بر عهده دارد
مدیریت ترمیم:تضمین میکند که اگر اجرای تراکنش با عدم موفقیت روبرو شد تاثیر نامطلوبی روی تراکنش های دیگر
نگزارد
برنامه ریزی:در مورد زمان اجرا وتخصیص حافظه ها
مدیریت بافر:تخصیص بافر به برنامه ها نیاز به مدیریت دارد از یک طرف باید فضای حافظه اصلی را در اختیار حافظه
جانبی بگذاریم واز طرف دیگر وقتی درخاستها زیاد شود باید فضای تخصیص راکم کنیم تا کارایی کم نشود
Schadular
Transaction manager
Recovery manager
Buffer manager
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 7انواع خطا کدامند؟
•
•
•
•
خطای منطقی:عدم اتمام تراکنش به دالئل داخلی
خطای سیستمی:خطاهای داخل سیستم
سقط سیستم:قطع برق یا خرابی سخت افزار
ناتوانی دیسک:خراب شدن دیسک
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Raid3 - 8به کدامیک از انواع Raidشباهت دارد و با کدامیک منطبق است؟
جواب:
شبیه به Raid2هست زیرا که اطلعات را بصورت سکتوری روی گروهی از درایوها Stripeمیکند.
Raid3در واقع انطباقی از Raid0است که مقداری از ظرفیت هر یک از درایوها را قربانی میکند اما به
سطح باالیی از سلمت اطلعات و ترمل خطا دست یابد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
جواب(توضیرات بیشتر برای دانشجو)
خیلی شبیه به Raid2است و اطلعات را به صورت سکتوری روی گروهی از درایوها Stripeمیکند و
تفاوت آن در این است که یک درایو جداگانه برای ذخیره ی داده های پریتی در نظر می گیرد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ادامه جواب(توضیرات بیشتر برای دانشجو):
Raid3در واقع انطباقی از Raid0است که مقداری از ظرفیت هر یک از درایوها را قربانی میکند اما به سطح باالیی از
سلمت اطلعات و ترمل خطا دست یابد.در این حالت بلوکهای داده به نوارهایی تقسیم شده و بر روی تمام درایوهای
درون آرایه به جز ی ی از آنها نوشته میشوند.اطلعات موازنه ی نوار که برای بررس ی سلمت داده در تمام درایوهای درون
زیر سیستم مورد استفاده قرار میگیرندو در هنگام نوشتن داده ها ایجاد شده و بر روی دیسک پریتی نوشته میشوند.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 9 کدامیک از انواع Raidبهترین انتخاب برای کاربردهای بررانی و حساس است؟چرا؟
و بگویید که این نوع Raidبه چند دیسک احتیاج دارد؟
جواب:
بهترین انتخاب Raid6میباشد بخاطر دیسکهای داده ای مجزا با دو پریتی توزیع شده ی مجزا.
این نوع Raidنیاز به N+2دیسک دارد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
جواب(توضیرات بیشتر برای دانشجو):
بهترین انتخاب Raid6میباشد بخاطر دیسکهای داده ای مجزا با دو پریتی توزیع شده ی مجزا.در واقع Raid6نسخه ی
پیشرفته ی Raid5میباشد که تصحیح و کنترل خطا را بهبود می بخشد.این ویرایش Raidاطمینان و توانایی باال در زمینه ی
خرابی داده را فراهم میکند.
این نوع Raidنیاز به N+2دیسک دارد:
:Nتعداد دیسکهای سخت در حالت معمولی می باشد.
:2به دلیل دارا بودن حالت پریتی دو بعدی.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Raid1 – 10یا تکرار آینه ای ( )Mirroringرا توضیح دهید؟سرعت خواندن و نوشتن در این نوع Raidبه چه
صورت است و به چند درایو داخلی نیاز دارد؟
جواب:
در Raid1اطلعات یکسان بر روی دو دیسک نوشته میشود و در کامپیوتر به صورت یک درایو نمایش داده میشود و در واقع
یک Backupگیری همزمان داده ها است .سرعت خواندن در این نوع دو برابر سرعت خواندن در یک درایو منفرد فاقد
Mirroringاست ولی عمل می بینیم که در مدت زمان نوشتن تغییری حاصل نمی شود .در این نوع Raidبه تعداد زوج و
(حداقل )2درایو داخلی برای ذخیره سازی اطلعات نیازمندیم.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
جواب(توضیرات بیشتر برای دانشجو):
در Raid1اطلعات یکسان بر روی دو دیسک نوشته میشود و در کامپیوتر به صورت یک درایو نمایش داده میشود و در واقع
یک Backupگیری همزمان داده ها است ولی باید بدانیم که در این نوع Raidفقط نیمی از کل حجم فضای ذخیره سازی
برای کاربر قابل استفاده است و نیمی دیگر به افزونگی اختصاص دارد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ادامه جواب(توضیرات بیشتر برای دانشجو):
سرعت خواندن در این نوع دو برابر سرعت خواندن در یک درایو منفرد فاقد Mirroringاست زیرا همزمان از دو هارددیسک
استفاده میشود و روش (round-robinروح سرگردان) برای خواندن داده ها ب ار میرود به این ترتیب که سرور برای
خواندن داده ها مرتبا از یک هارد دیسک به هارد دیگر میرود و عمل زمان را بین دو هارد تقسیم میکند ولی با این حال در موقع
نوشتن داده ها باید روی دو هارد دیسک نوشته شود و عمل می بینیم که در مدت زمان نوشتن تغییری حاصل نمی شود.
در این نوع Raidبه تعداد زوج و (حداقل )2درایو داخلی برای ذخیره سازی اطلعات نیازمندیم.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 11افزونگی را تعریف کنید و یکی از متداول ترین روشهای افزونگی را نام ببرید؟معایب و مزایای آن را شرح دهید؟
جواب:
افزونگی به معنای استفاده از درایوهای داخلی بیشتر برای ذخیره سازی اطلعات است یا بعبارت دیگر به معنی ذخیره سازی
داده های مشابه در بیش از یک م ان از حافظه است که متداول ترین روش استفاده از ویژگی Raidمیباشد بخصوص
Raid1و .Raid6
مزیت:
حفاظت آنی از اطلعات در مواقع بروز خطا است.
معایب:
(1هزینه
(2اطلعات شما را در مواجه با آسیب های فیزی ی مثل گرمای شدید-رطوبت یا آسیب دیدگی قطعات داخلی مرافظت
نمیکند.
(3بازسازی Raidپروسه ای طوالنی است که بسته به نوع و حجم اطلعات ذخیره شده در فضای ذخیره سازی ممکن
است چند روز طول بکشد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
– 12
را نام ببرید؟Raid الف)بهترین انواع
چیست؟Raid10 باRaid01 ب)تفاوت
:جواب
. بهترین هستندRaid10 وRaid6 وRaid1:الف
. سرعت خواندن باال استRaid10 سرعت نوشتن باال است ولی درRaid01 در:ب
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 13تفاوت Raid 10با Raid 01در چیست و کاربرد هر کدام را نام ببرید؟
در Raid 10عمل تکه تکه کردن بلوکهای داده همانند Raid1انجام می پذیرد ولی Raid 01به عنوان آرایه آینه ای نیز
ی RAID0ایجاد شده اند
معروف است با این تفاوت که قطعات داده ها یا Segmentها طبق استراتژ ا
در Raid 10تصحیح و کنترل خطا نیز مانند Raid2می باشد .اما در Raid 01مانند RAID5می باشد.
در Raid01كوچكترین مشكل در عملكرد یك درایو ،آرایه را به مدل RAID0تبدیل خواهد كرد .ولی در Raid 10ام ان
ترمل خرابی چند دیسک وجود دارد
کاربرد : Raid 10
سیستمهای Serverو بانکهای اطلعاتی
کاربرد : Raid 01
پردازشهای تصویری و filesereverهای عمومی
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 14تفاوت Raid 3و Raid 2در چیست؟
RAID 3خیلی شبیه RAID 2میباشد .و اطلعات را به صورت سکتوری روی گروهی از درایوها stripeمیکند .تفاوت آن
ایناست که یک درایو جداگانه برای ذخیرهی دادههای پریتی درنظر میگیرد RAID3.بر دادههای ECCجاسازی شده در هر
سکتور برای ردیابی اش االت ،تکیه دارد .اگر درایوی از کار افتاد بهوسیلهی XORکردن اطلعات موجود روی سایر درایوها
،عملیات بازیابی را انجام میدهد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 15تفاوت RAID 5با RAID 1در چیست؟
اساسا RAID 5شبیه RAID 1است .با این تفاوت که RAID 5برای هر نوار از دادهها یک پریتی ذخیره میکند .اما در
مقایسه با RAID 1عملیات نوشتن آهستهتر است .زیرا یک زمان اضافی برای نوشتن اطلعات پریتی نیاز است.در موقع نوشتن
اطلعات RAID 5تقریبا 60درصد آهستهتر از RAID 1عمل میکند .عملیات خواندن هم هیچ تغییری پیدا نمیکند.برای
رسیدن به بهترین کارآیی RAID 5 ،باید یک فضای ذخیرهسازی داشته باشد برابر با حاصل جمع فضای تمامی هارد دیسکها
منهای .1
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 16تفاوت RAID 4با RAID 3در چیست؟
RAID 4از نوارهای بزرگتری استفاده میکند.به همین دلیل رکوردها از هر درایو جداگانه میتوانند خواندهشوند(البته به جز
درایو پریتی) .این عمل این ام ان را میدهد تا عملیات خواندن به اشتراک گذاشتهشود
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 17
الف)افزونگی را تعريف کنيد؟
ب)انواع افزونگی ONLINEسخت افزاری را نام ببريد و هر کدام را جداگانه تعريف کنيد؟
الف)افزونگی()Redundancyی ی از مهمترین ابزارها در ترمل پذیری خطای سیستم ها می باشد.
افزونگی با اضافه کردن چند ماژول به جای یک ماژول و استفاده کردن از همه آنها سبی می کند احتمال درست کار کردن
سیستم را باال ببرد.مثل یک سیستم به جای آن که یک پردازنده داشته باشد شامل دو پردازنده باشد حال اگر ی ی از آنها از کار
بیافتد سیستم می تواند به طور خودکار پردازنده دوم را جایگزین کند.
ب)
افزونگی سخت افزاری فعال(پویا):
در این روش غیر از ماژول اصلی که در حال کار است تعدادی ماژول هم وجود دارند که به آنها پشتیبان گفته می شود.این
ماژول ها نقش یدک را بازی می کنند یعنی اگر ی ی از ماژول های اصلی خراب شود یک ماژول پشتیبان جای آن را می گیرد
افزونگی سخت افزاری غیرفعال(ایستا):
روش غیر فعال مدلی است که در آن تمامی ماژول ها از ابتدا استفاده می شود و در حین کار و یا بروز خرابی هیچ نوع تغییری در
ترکیب بندی آنها ایجاد نمی شود .در این روش جلوی خرابی سیستم بصورت بی درنگ گرفته می شود زیرا نیاز به پیکربندی
مجدد پس از بروز خرابی ندارد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 18
الف) Raidرا تعریف کنید؟
ب) مزایا و معایب Raidنرم افزاری را توضیح دهید؟
ج) اساس کار Raidچیست؟
الف) Raidمخففی است از آرایه افزونه ای برای دیسک های مستقل
Raidی ی از موارد افزایش ترمل خطای سیستم است.روش های مختلفی برای ترکیب چند هارد دیسک در یک آرایه بسته به
نیازهای برنامه کاربردی وجود دارد
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
.19ترمیم داده را توضیح دهید و بگویید بر چه اصلی استوار است؟
تننرمیم تضننمین مننی کننند کننه اگننر اج نرای ت نراکنش بننا عنندم موفقیننت یننا سننقو روبننرو شنند ،تنناثیر نننا مطلننوبی روی پایگنناه داده یننا
ت نراکنش ه ننای دیگ ننر نگ ننذارد و حال ننت پایگ نناه داده را همیش ننه س ننازگار نگ ننه دارد.ب ننه عب ننارت دیگ ننر بازگردان نندن پایگ نناه داده ب نه وض ننع
سازگاری که درست قبل از بروز خرابی داشت.و ترمیم داده بر اصل افزونگی استوار است.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
.20چگونه می توان یک بهنگام سازی را لغو کرد؟
پاسخ این است که سیستم یک ثبت وقایع را روی نوار یا معموال دیسک نگهداری می کند که در آن جزئینات مربنو بنه عمنل بنه
هنگننام رسننانی ضننبط مننی شننود.بنننابراین اگننر الزم باشنند کننه یننک عمننل بننه هنگننام رسننانی لغننو شننود سیسننتم مننی تواننند بننا اسنتفاده از
درایه مربو به هنگام رسانی در ثبت وقایع ش ی به هنگام شده را به وضعیت قبلی خود بر گرداند.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 21خواص تراکنش ها چیست؟
غیر قابل تفکیک بودن:تراکنش ها اتمیک هستند(همه یا هیچکدام)
پایننداری:یعنننی ت نراکنش بانننک اطلعنناتی را از یننک حالننت پاینندار بننه حالننت پاینندار دیگننری مننی برد،بنندون اینکننه نیننازی باش ند در نقطننه
میانی پایداری بانک اطلعاتی حف شود.
جداسازی:تراکنش ها از هم جدا هستند یعنی هر چند به طور کلی ممکن اسنت تراکنشنها بنه صنورت همزمنان اجنرا شنوند ولنی تنا
زمانی که آن تراکنش قبول می شود به هنگام رسانی هر تراکنش از سایر به هنگام رسانی ها پنهان است.
تننداوم:پننس از اینکننه یننک تنراکنش قبننول شنند،به هنگننام رسننانی هننای آن در بانننک اطلعنناتی پاینندار خواهننند بننود حتننی اگننر سیسننتم در
ادامه کار دچار اختلل شود.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 22انواع حاالت یک تراکنش را توضیح دهید.
فعال یا :actionحالتی که در آن تراکنش در حال اجرا است.
طرد شده یا :abortحالتی که در آن تراکنش دیگر نمی تواند فعال باشد و از مریط اجرا خارج می شود.
تمام شده یا :finishedحالتی که تراکنش تمام عملیناتش را انجنام داده و سنابقه اجنرایش در فاینل ثبنت درج شنده ولنی هننوز بنه
هنگام سازی هایش در پایگاه وارد نشده است.
تثبیت شده یا :commitedحالتی که تمام تغییرات مورد نظر تراکنش انجام شده و در پایگاه داده هم وارد شده است.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 23با به وجود آمدن check pointکدام مورد برقرار نیست؟
)1تمام به هنگام سازی ها از حالت موقت خارج و پایدار می شوند
)2تمام ادرس دهی های بانک اطلعاتی از بین می رود و قفل بین چندتایی ها باز می شود
)3قبل از رسیدن به نقطه تثبیت رکورد چک پوینت در فایل ثبت نوشته می شود
)4ممکن است به هنگام سازی ها هنوز در حافظه اصلی و بافر موجود باشند
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-24انواع قفل را نام ببرید؟ و کدام قفل برای خواندن داده ها مناسب است؟
قفل باینری و قفل انرصاری –اشتراکی
برای خواندن قفل اشتراکی استفاده می شود.
-25تکنیکاهای کنترل همروندی را تعریف کنید:
الف) تکنیکهای خوشبینانه
ب)بد بینانه
-26دو روش برای تشخیص یا کشف بن بست چیست؟
روش مهلت زمانی
روش بررس ی متناوب درخواست های قفل گذاری
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
معماری سیستم های پایگاه داده
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 1بانک های اطالعاتی توزیع شده را تعریف کنید؟
•
این معماری مجموعه ای است از چند پایگاه داده منطقا یکپارچه ولی به طور فیزی ی توزیع شده روی یک شبکه
کامپیوتری.
•
سیستم بانک اطلعات توزیع شده شامل مجموعه ای از سایت ها است که از طریق نوعی شبکه ارتباطی به هم متصل
شده اند که در آن :
هر سایت یک سایت سیستم بانک اطلعات کامل است.
سایت ها با هم کار کرده و هر کاربرمی تواند به هر جای شبکه و سایت های مختلف دسترس ی داشته باشد.
•
•
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 2اصل اساس ی هر بانک اطالعاتی توزیع شده چیست؟
•
از نظر کاربر ،سیستم توزیع شده دقیقا باید مثل سیستم توزیع نشده (متمرکز) باشند به این معنا که هر
کاربر گمان کند که با یک سیستم مترکز کار می کند.
- 3یکی از امتیازات سیستم های توزیع شده فراهم کردن قابلیت اعتماد وقابلیت دسترس ی باال میباشد این دو
را توضیح دهید و کاربرد هریک را بنویسید ؟
•
•
قابلیت اعتماد -احتمال راه اندازی شدن و اجرای سیستم در لحظه است .قابلیت اعتماد در سیستم های
توزیع شده بهبود یافت زیرا چنین سیستم هایی در وضعیت همه یا هیچ نیستند -آن ها می توانند در صورت از
کار افتادن بعض ی از قطعات مثل از کار افتادن یک سایت به کارشان ادامه دهند
قابلیت دسترس ی -احتمال راه اندازی و اجرای مداوم سیستم در یک دوره ی خاص است همانند قابلیت
اعتماد قابلیت دسترس ی در سیستم توزیع شده بهبود یافت که بعض ی از دالیل آن مثل قابلیت اعتماد و
بخ ی از دالیل ام ان تکثیر داده ها است
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 4ویژگی های سیستم های کالینت /سرور را نام ببرید؟
•
•
•
•
بعض ی از سایت ها کلینت و بعض ی از سایت ها سرور هستند
تمام داده ها در سرور قرار دارند
تمام برنامه های کاربردی در سایت های کلینت اجرا می شوند
درز ها نمایش داده می شوند (استقلل م انی فراهم نیست)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
پایگاه داده پیشرفته
- 5ی ی از اهداف مهم پایگاه داده توزیع شده خود مختاری مرلی میباشد آن را توضیح دهید ؟
سایت در سیستم توزیع شده باید خود مختار باشد معنای خود مختاری مرلی این است که تمام عملیات
کنترل
می
سایت
آن
توسط
سایت
یک
در
ها
شوند .سایتی مثل xبرای موفقیت در انجام عملیات نباید به سایتی مثل yوابسته باشد در غیر این صورت
هیچ
اگر
حتی
افتد
کار
از
y
سایت
چنانچه
چیزی در سایت xنادرست نباشد باز هم سایت xممکن است نتواند اجرا شود و این حالت مطلوب
مختاری
کند
می
ایجاب
همچنین
مرلی
خود
نیست.
که داده های مرلی با مسئولیت مرلی مدیریت و اداره شوند .
قابلیت اعتماد احتمال راه اندازی شدن و اجرای سیستم در لحظه است .قابلیت اعتماد در سیستم های توزیع
شده بهبود یافت زیرا چنین سیستم هایی در وضعیت همه یا هیچ نیستند آن ها می توانند در صورت از کار
افتادن بعض ی از قطعات مثل از کار افتادن یک سایت به کارشان ادامه دهند .
قابلیت دسترس ی احتمال راه اندازی و اجرای مداوم سیستم در یک دوره ی خاص است همانند قابلیت اعتماد
قابلیت دسترس ی در سیستم توزیع شده بهبود یافت که بخ ی از دالیل ام ان تکثیر داده ها است.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 6اصل اساس ی هر بانک اطالعاتی توزیع شده چیست؟
از نظر کاربر ،سیستم توزیع شده “دقیقا“ باید مثل سیستم توزیع نشده (متمرکز) باشند به این معنا که هر کاربر
گمان کند که با یک سیستم مترکز کار می کند.
در پایگاه داده توزیع شده چیست؟
- 7دالیل نامطلوب بودن وابستگی به یک سایت خاص ا
•
•
سایت مرکزی ممکن است یک گلوگاه شود.
-سیستم ممکن است آسیب پذیر شود.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
در پایگاه داده های توزیع شده را بیان کنید
تکثیر ا
- 8دو مورد ااز مزایا او عیب عمده استقالل ا
• تکثیر حداقل به دو دلیل مطلوب است:
)1اوال میتواند کارایی بهتری ایجاد کند (ش ی تکثیر شده ی حاصل تا زمانی که حداقل یک کپی وجود داشته باشد
برای پردازش حداقل برای بازیابی در دسترس باقی می ماند)
)2استقلل تکثیر اجازه می دهد که کپی ها در هر زمانی در پاسخ به تغییر نیازمندی ها ایجاد و حذف شوند بدون
اینکه این برنامه ها و فعالیت ها نامعتبر شوند
• عیب آن :عیب عمده ی تکثیر این است که وقتی ش ی تکثیر شده ی خاص ی به هنگام می شود تمام کپی های
آن ش ی باید به هنگام شوند.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 9مدل کالینت سرور را مختصرا تشریح کنید.
در منندل اصننلی کلینننت سننرور ,فرآیننندها در سیسننتم توزیننع شننده بننه دو گننروه(احتمنناال دارای همپوشننانی)تقسننیم میشننوند .سننرور ,
پروسننه ای اسننت کننه سننرویس خاصن ی را پینناده سننازی مننی کننند .مثننل سننرویس سیسننتم فایننل یننا سننرویس بانننک اطلعنناتی ,کلینننت ,
پروسه ای است که سرویس ی را از سنرور درخواسنت منی کنند .بنرای اینن کنار ,پینامی را بنه آن میفرسنتد و منتظنر پاسنخ از سنرور منی
ماند .این تعامل کلینت سرور را رفتار درخواست پاسخ نیز می نامند.
- 10معماری 3الیه کالینت سرور شامل چه الیه هایی است این الیه ها را مختصرا توضیح دهید.
این معماری دارای 3الیه منطقی هست که هر الیه در یک ماشین اجرا میشود.
-1سطح واسط کاربر :سطح واسط کاربر معموال توسط کلینت ها پیاده سازی میشود .اینن سنطح شنامل برنامنه هنایی اسنت کنه
بننه کنناربران اجننازه مننی دهنند بننا برنامننه هننای کنناربردی تعامننل داشننته باشننند .بطننور مثننال سنناده تننرین برنامننه واسننط کنناربری ,صننحفه
نمایش مبتنی بر کاراکتر است.
-2سطح پردازش :سطح پردازش معموال شامل برنامه های کاربردی اصلی است.
-3سطح داده :سطح داده شنامل برنامنه هنایی اسنت کنه داده هنای واقبنی را کنه برنامنه هنای کناربردی بنر روی آن عمنل منی کننند را
نگاه می دارد .خاصیت مهم این سطح این است که داده ها معموال پایدار هستند .یعننی حتنی اگنر هنیچ برنامنه ی کناربردی در حنال
اجرا نباشد ,داده ها برای استفاده بعدی ذخیره می شوند .و معموال این الیه در سرور پیاده سازی می شود.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 11توانایی ها و کاستی های کالینت فربه در مقابل کالینت الغر چیست؟
گرچنه ماشننین هننای کلینننت کارهننای زیننادی انجننام مننی دهننند ,منندیریت آنهننا نیننز دشننوار اسننت .انجننام کارهننای بیشننتر در کلیننت ,نرافنزار
آن را مسننتعد خطننا کننرده کلینننت را بیشننتر بننه سن و (مثننل سیسننتم عامننل و منننابع ) وابسننته مننی کننند .از دینند منندیر سیسنتم کلینننت
هننای فربننه بهتننرین گزینننه نیسننتند .کلینننت هننای الغننر آسننان تننر هسننتند .ولننی هزینننه آن مننی تواننند واسننط کنناربر غیننر حرفننه ای و کننارایی
اندک آن باشد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 12 مهمترین ویژگی های معماری سیستم پایگاه داده ای توزیع شده چیست؟
•
•
مهمترین هدف سیستم های توزیع شده تولید شفافیت( )Trancparencyاست
یعنی سیستم توزیع شده باید شبیه یک سیستم توزیع نشده عمل کند ،که
خودمختاری مرلی-عدم اطمینان به کامپیوتر مرکزی-عملکرد مدام-استقلل م انی-
استقلل تکه تکه شدن-استقلل تکثیر-پردازش تقاضاهای توزیع شده-مدیریت
تراکنش های توزیع شده –استقلل سخت افزار ،نرم افزار ،سیستم
عامل،شبکه DBMS ،نتیجه می شود.
در حقیقت استقلل ها بسط حالت توزیع شده مفهوم معروف استقلل داده
(فیزی ی) است.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 13 ویژگی های سیستم های کالینت /سرور را نام ببرید ؟
•
•
•
•
•
بعض ی از سایت ها کلینت و بعض ی از سایت ها سرور هستند
تمام داده ها در سرور قرار دارند
تمام برنامه های کاربردی در سایت های کلینت اجرا می شوند
درز ها نمایش داده می شوند) استقلل م انی فراهم نیست(
شبکه های کامپیوتری ی ی از ملزومات این معماری می باشد .
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 14 وظایف Clientو همچنین Serverرا بیان کنید ؟
•
•
وظایف : Client
• مدیریت User Interface
• بررس ی Syntaxورودی های کاربر
• پردازش منطقی Appها
• تولید درخواستهای DBو انتقال آنها به سرور
• بازگشت پاسخ دریافت شده از سرور به کاربر
وظایف : Server
• پذیرش و پردازش درخواستهای DBاز Client
• تضمین عدم نقض جامعیت
• نگهداری Catalogسیستم
• فراهم آوری دستیابی همروند به DB
• کنترل ترمیم
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 15مزایای استفاده از رویه های ذخیره شده دربرنامه نویس ی کاربردی سیستم های
کالینت/سرور را نام ببرید ؟
در صورت استفاده از رویه های ذخیره شده تعداد
پیام های بین کالینت و سرور کاهش بیشتری می
یابد. -
این رویه ها می توانند برای پنهان کردن
جزئیات - DBMSیا بانک اطالعات از کاربر به کار
روند ،و در نتیجه درجه باالتری از
استقالل داده ها را فراهم کنند.
یک رویه ذخیره شده می تواند بین چندین کالینت
مشترک باشد. -
بهینه سازی می تواند در زمان ترجمه ی رویه
ذخیره شده) به جای زمان اجرا (انجام شود. -
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: Students با توجه به رابطه-1
. تکه بندی افقی کنیدLevel الف) این رابطه را بر اساس صفت
. تکه تقسیم کنید3 ب) این رابطه را تکه بندی عمودی کنید وبه
.ج) قوانین صحت تکه بندی را برای قسمت الف و ب بررس ی کنید
Relation Students
Student#
Fname
Lname
123
Kambiz ali
456
Class#
Grade
Group#
teacher
level
Mohammadi 101
19.5
1
Ghanbari
Advanced
Mahlagha
Esmaili
102
14
2
Abdollahi
Intermediate
789
Javad
Javadifar
103
19
3
Afrand
Elementary
987
Lida
Molavi
109
9.5
1
Ghanbari
Advanced
654
Fatemeh
Hamedi
102
11
2
Abdollahi
Intermediate
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: حل قسمت الف
P1=Ϭ level=‘Advanced’ ) Students)
P2=Ϭ level=‘Intermediate’ )Students)
P3=Ϭ level=‘Elementary’ )Students)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Student#
Fname
Lname
Class#
Grade
Group#
teacher
level
123
Kambiz ali
Mohammadi
101
19.5
1
Ghanbari
Advanced
987
lida
Molavi
109
9.5
3
Ghanbari
Advanced
Student# Fname
Lname
Class#
Grade
Group#
teacher
level
456
Mahlagha
Esmaili
102
14
2
Abdollahi
Intermediate
654
Fatemeh
Hamedi
102
11
2
Abdollahi
Intermediate
Student#
Fname
Lname
Class#
Grade
Group#
teacher
level
789
Javad
Javadifar
103
19
2
Afrand
Elementary
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ج) بررس ی قوانین صحت تکه بندی افقی
. ظاهر می شودP3 ویا تکهP2 یا تکهP1 در تکهStudents هر تاپل در رابطه: • کامل بودن
P1 U P2 U P3 = Students : • دوباره سازی
وهمAdvanced وجود ندارد که همLevel تکه ها غیر متصل هستند چون هیچ مقدار: • بدون اتصال
. باشدElementary وهمIntermediate
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: حل قسمت ب
S1= Π student#, Fname, Lname (students)
Student# Fname
Lname
123
Kambiz ali
Mohammadi
456
Mahlagha
Esmaili
789
Javad
Javadifar
987
Lida
Molavi
654
Fatemeh
Hamedi
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
S2= Π student#, Class#, Grade (students)
Student# Class#
Grade
123
101
19.5
456
102
14
789
103
19
987
109
9.5
654
102
11
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
S3= Π student#, Group#, teacher, level (students)
Student# Group# teacher
level
123
1
Ghanbari
Advanced
456
2
Abdollahi
Intermediate
789
3
Afrand
Elementary
987
1
Ghanbari
Advanced
654
2
Abdollahi
Intermediate
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ج) بررس ی قوانین صحت تکه بندی عمودی
کامل بودن :هر صفت در رابطه Studentsدر تکه S1یا تکه S2ویا تکه S3ظاهر می شود.
دوباره سازی S1 ∞ S2 ∞ S3 = Students :
بدون اتصال :غیر از کلید اصلی که برای دوباره سازی الزم است بقیه تکه ها غیر متصل هستند.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-2رابطه ی Featureمفروض است .این رابطه را توسط تکه بندی افقی به 3تکه S1,S2,S3تقسیم کرده
ایم سپس تکه ی S2را با تکه بندی عمودی به 3تکه S21,S22,S23تقسیم کرده ایم .نام این روش تکه
بندی چیست ؟ چگونه قانون دوباره سازی را اعمال کنیم.
حل سوال : 2
تکه بندی مخلو
S1 U (S21 ∞ S22 ∞ S23) U S3 = Feature
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ماژول های مورد استفاده دریک پایگاه داده متمرکزبرای پردازش یک تراکنش را نام ببرید؟-3
مدیرتراکنش-1
(Lock Manage) ( یا مدیرقفلScheduler) زمان بند-2
(Recovery Manager) مدیر ترمیم-3
(Buffer Manager) مدیر بافر-4
هماهنگ کننده تراکنش یا(مدیر تراکنش سراسری-5
(Global Transaction Manager
Data Communications ارتباطات داده ای-6
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-4استراتژی های تخصیص رانام ببرید وتوضیح دهیدکدام یک بهترین کاربرد رادارد؟
الف -متمرکز )(centralized
ب -تکه تکه یا جزءبندی شده )Partitioned(fragmented
ج -تکرارکامل )(Complete replication
ح -تکرارانتخابی )(Selective replication
این استراتژی ترکیبی از تکرارکامل وتکه تکه و متمرکز است.
هدف این استراتژی این است که استفاده تمام مزایای از روش های دیگراست.
این شایع ترین استراتژی مورد استفاده به دلیل انعطاف پذیری آن است.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
•
- 5وظایف یک هماهنگ کننده TCتوضیح دهید؟
آغاز اجرای تراکنش .
شکستن تراکنش به تعدادی از ریزتراکنشها وتوزیع این زیر تراکنشها به سایتهای مناسب برای اجرا.
هماهنگ کردن پایان هرتراکنش که در آن سایت آغاز شده که می تواند منجر به ( commitانجام موفقیت
آمیز) یا ( abortانجام نا موفق) در همه سایتها شود .
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Non- blocking-6در انجام پردازش چیست؟
•
•
پروت ل اصلحی برای هر دو سایت با خطا ارتبا برقرار میکند به منظور اطمینان از اینکه خطا دریک سایت
اثری بر پردازش در سایت دیگر نداشته باشد .بعبارت دیگر عملکرد سایت نباید blockشود
یک تراکنش را غیر مسدود گوییم اگر اجازه دهد یک تراکنش به سایتهای عملیاتی خاتمه دهد بدون انکه
منتظر recoveryبرای سایتهای failشده بماند
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
است ؟چرا؟non-blocking ،2pc آیا- 7
خیر
•
دهد یا در زمان مشخص پاسخ ندهد هماهنگ کننده همهabort اگر یک شرکت کننده رای2pc در
نمی ماندrecovery میشود و منتظر پروت لabort تراکنش
•
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
است؟چرا؟non-blocking ،3pc آیا- 8
بله
•
. استفاده می کندpre commit از یک پیام
قبلی بنابر اولینpre-commit همه پردازش های موثر از تصمیم سراسری آگاه هستند توسط پیام
شده و درنتیجه می تواند در رد دادن خطا اقدام کندcommit پردازش
•
•
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 9چرا پروت ل 2pcیک پروت ل non-blockingنیست و این مش ل چگونه در پروت ل 3pcبرطرف شده
است؟
پروت ل 2pcانسدادی است به این معنا که در شرایطی سایت های مشترک نمی توانند در مورد اتمام تراکنش تصمیم بگیرند و
باید منتظر بمانند ،مثل اگر هماهنگ کننده خراب شد همه سایتها باید منتظر ترمیم آن بمانند.
در پروت ل 3pcهماهنگ کننده پس از تصمیم گیری ،این تصمیم ( )pre-commitرا در چندین سایت ثبت می کندتا اگر
هماهنگ کننده دچار خرابی شد خود سایتها بتوانند تصمیم گیری کنند و مش ل انسدادی بودن 2pcرا رفع می نماید.
-10در پروت ل 2PLمتمرکز ،هماهنگ کننده تراکنش چه وظایفی دارد؟
هماهنگ کننده تراکنش را به تعدادی زیرتراکنش تقسیم می کند ،همچنین مسئولیت حف
سازگاری را برعهده دارد.
هنگامیکه داده تکراری است ،هماهنگ کننده انتخاب میکند که کدام نسخه آن برای عمل READاستفاده شود ،و
هماهنگ کننده می تواند از طرف همه TMهای مرلی به مدیر قفل درخواست قفل بدهد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
دچار چه نوعparticipant را ودر این پروت ل3pc را نشان می دهد یا پروت ل2pc ش ل زیر یک پروت ل-11
ای شده است؟crash
پروت ل رانشان میدهدTwo-Phase Commit این ش ل یک. از نوع زودگذر است چون سریع اصلح شدهcrash این
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 12چرا blockingدر دسترس بودن سیستم را کم می کند؟
•
•
اگر سايت fail ،coordinatorشود و در همان زمان چند سايت شرکت کننده خودشان را آماده براي
انجام يك تراكنش معرفي كنند در اين حالت سایتها بايستي صبركنند تا recover ،coordinatorشود
و تراكنشهاي بلوكه را پايان دهد.
تراكنشهاي بلوكه شده تمام منابع را نگه مي دارند تا زماني كه شرکت کننده ها دستور نهايي را از
coordinatorتنها بعد از اينكه recoveryشد دريافت كنند
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-13ی ی از موثرترین راههای پیشگیری از بن بست را توضیح دهید؟
•
•
•
•
timeout
به وسیله این روش یک تراکنش که درخواست قفل کرده منتظر یک سیستم معین در یک زمان
مشخص خواهد بود
اگر آن قفل در زمان مشخص واگذار نشود ،درخواست قفل timeoutرد می شود
در این شرایط DBMSفرض میکند که تراکنش به بن بست رسیده است حتی اگر این حالت
اتفاق نیفتاده باشد و تراکنش را abrotو بصورت خودکار آنرا شروع مجدد میکند .
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
در برث استقلل تکه تکه شدن؛اگرفرض کنیم پایگاه به دوتکه زیر تقسیم شده و کاربر- 14
تقاضای زیرا صادر کند نتیجه از کدام تکه ها بازیابی خواهد شد؟
EMP where Salary>40 And DEPT#=DEPT#(‘D1’)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
در نظرL_EMPوN_EMp توسط کاربر به عنوان دیدی از تکه هایEMP متغیر رابطه ای
:گرفته می شود
Var EMP “View” N_EMP Union L_EMP
:بهینه ساز تقاضای اصلی کاربر را به صورت زیر تبدیل می کند
where Salary>40 And DEPT#=DEPT#(‘D1’)( N_EMP Union L_EMP)
:می توان آن را به
Union (where Salary>40 And DEPT#=DEPT#(‘D1’) L_EMP)
(where Salary>40 And DEPT#=DEPT#(‘D1’) N_EMP)
:معادل زیر استUnion در کاتولوک می داند که عملوند دوم درL_EMP با توجه به تکه
And EMP where Salary>40 And DEPT#=DEPT#(‘D1’)
DEPT#=DEPT#(‘D2’)
ارزیابیTure هرگز بهWhere و چون این متغیر به رابطه ی تهی ارزیابی می شود زیرا شر
.نخواهد شد و تقاضا به حالت زیر تبدیل می شود
where Salary>40 And DEPT#=DEPT#(‘D1’) N_EMP
.اکنون شبیه ساز می داند که تنها به سیستم یا سایت نیویورک باید دسترس ی داشته باشد
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 15 مثالی از تقاضاهای توزیع شده را ارائه دهید و در صورت وجود چندین حالت پاسخ چگونه
بهترین حالت انتخاب خواهد شد؟
تقاضایی برای اجتماع رابطه rxذخیره شده در سیستم Xو رابطه ryذخیره شده در سیستم :Y
rxبه Yانتقال پیدا کند.
ryبه Xانتقال پیدا کند.
Rxو ryبه سیستم Zانتقال پیدا کنند.
و ...
بهینه ساز بهترین حالت را انتخاب می کند بنابراین بهینه ساز مهم است .
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-1 6بانک اطالعاتی زیر مفروض است :
asg:
Prof:
esp
Pname
P#
برقا
دانش
P1
resp
رئیس
C1
صنایع
اسماعیلی
P2
استاد
C1
P2
مکانیک
ابوطالبی
P3
استاد
C2
P2
کامپیوتر
قاسمی
P4
معاون اجرایی
C3
P3
صنایع
حسنی
P5
معاون پژوهش ی
C4
P3
ق
بر ا
جاللی
P6
معاون آموزش ی
C2
P4
مکانیک
داوری
P7
رئیس
C2
P5
صنایع
صالحی
p8
رئیس
C3
P6
معاون پژوهش
C1
P7
city
اراک
clgname
برقا
Clg#
رئیس
C3
p8
C1
اصفهان
معماریا
C2
اصفهان
کامپیوتر
C3
تهران
عمران
C4
Clg:
Clg#
P#
P1
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
تقسیم بندی مطلوب را انجام دهید،هر مسؤلا تقسیم کنید
بر اساس تخصص ا
را اasg اطالعات جدولا
. سپس شرایط صحت تقسیم را ارزیابی کنید
asg i = asg
Prof 1=
p#
-
profi
esp=‘‘برق
(prof)
P#
pname
p1
دانش
esp
ق
بر ا
p6
جاللی
برقا
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Prof 2=
Prof 3=
Prof 4=
esp =‘ ‘صنایع
(prof)
esp =‘( ‘ مکانیکprof)
esp =‘ ‘کامپیوتر
(prof)
P#
pname
esp
P2
اسماعیلی
صنایع
P5
حسنی
صنایع
p8
صالحی
صنایع
P#
pname
esp
p3
ابوطالبی
مکانیک
p7
داوری
مکانیک
P#
Pname
esp
p4
قاسمی
کامپیوتر
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
بررس ی قوانین صحت تقسیم
: کامل بودن-1
ظاهر شدهprof4 یاprof3 یاprof2 یاprof1 است در رابطهprof هر تاپل که در رابطه
: دوباره سازی-2
Prof1 U prof2Uprof3 U prof4 = prof
: بدون اتصال-3
تکرار شدهprofi هر قلم داده(سطر)فقط در یک
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
asg 1 = asg
asg 2 = asg
p#
p#
prof1
prof2
asg 3 = asg
p# prof3
asg 4 = asg
p# prof4
کامپیوتر
P#
Clg#
p4
C2
برق
صنایع
P#
Clg#
resp
P1
C1
رئیس
p6
C3
رئیس
P#
Clg#
resp
P2
C1
استاد
P2
C2
استاد
P5
C2
رئیس
p8
C3
رئیس
P#
Clg#
P3
C3
resp
معاونا اجرایی
P3
C4
معاون پژوهش ی
p7
C1
معاون پژوهش ی
resp
معاون آموزش
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-17انواع استراتژی های تخصیص را از نظرلوکالیتی منابع واطمینان ودردسترس پذیری کارایی و هزینه
نگهداری و هزینه ارتبا با هم مقایسه کنید:
تخصیص متمرکز:لوکالیتی منابع بجز در سایت اصلی در پایین ترین حد است
کارایی قانع کننده نیست و هزینه نگهداری کمترین است
برای دسترس ی به کل داده ها باید از شبکه استفاده کرد و این بدین معنی است که هزینه ارتبا باالست.
اطمینان و در دسترس پذیری پایین است چون ممکنه سایت مرکزی باشکست روبه رو شود و کل پایگاه
داده از بین برود .
تخصیص تکه بندی:روی هر سایت بطور مجاز لوکالیتی باالست ..چون تکراری نیست هزینه نگهداری پایین
است و اطمینان و در دسترس پذیری کم است (هرچند
از متمرکز بیشتر است) چون اگر ی ی از سایتها دچار خطا شد باز مقداری از
اطلعات از بین می رود.
کارایی قانع کننده است وهزینه ارتبا پایین است .اگر توزیع به طور مناسب طراحی شده باشد
تکرار کامل:چون یک کپی کامل از پایگاه داده در هر سایت نگهداری می شودبنابراین لوکالیتی و اطمینان و کارایی
ماکزیمم است..اگر چه هزینه نگهداری و هزینه ارتبا برای آپدیت باالست
روش تکرار انتخابی :هدفش این است که از تمام مزیت های روشهای قبل استفاده می کند .
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
را به همراه ش ل توضیحDDBMS راه اندازی شده در یک سایت درglobal رویه اجرای یک تراکنش-18
.دهید
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
.. مشخص کنید که هریک از قطعه کدهای زیرنشان دهنده چه نوعی از شفافیت توزیبی هستند-19
SELECT fName,lName
FROM S21 AT SITE 3
WHERE staffNo IN(SELECT staffNo FROM S1 WHERE position=‘manager’)
UNION
SELECT fName,lName
FROM S22 AT SITE 5
WHERE staffNo IN(SELECT staffNo FROM S1 WHERE position=‘manager’)
UNION
SELECT fName,lName
FROM S23 AT SITE 7
WHERE staffNo IN(SELECT staffNo FROM S1 WHERE position=‘manager’)
شفافیت نگاشت محل که کاربران نیاز دارند نام تکه ها و محل آیتم های داده را بدانند
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
SELECT fName,lName
FROM S21
WHERE staffNo IN(SELECT staffNo FROM S1 WHERE position=‘manager’)
UNION
SELECT fName,lName
FROM S22
WHERE staffNo IN(SELECT staffNo FROM S1 WHERE position=‘manager’)
UNION
SELECT fName,lName
FROM S23
WHERE staffNo IN(SELECT staffNo FROM S1 WHERE position=‘manager’)
با این شفافیت کاربر باید بداند که داده چطور تکه بندی شده اما از محل داده بی خبر... شفافیت محل
است
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-20ی ی از معایب پروت ل 2PLنسخه اصلی این است که هنوز درجه ای از centralizationدر سیستم
وجود دارد،چرا ،توضیح دهید؟
زیرا درخواست های قفل برای یک نسخه اصلی خاص باید بوسیله یک سایت اداره شوند.
-21فرضیات پروت ل 3pcرا بگویید؟
در این پروتکل فرض بر این است که خرابی تقسیم شبکه اتفاق نمی افتد و همزمان بیش از kسایت
خراب نخواهند شد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 22تفاوت 2plمحافظه کارانه با 2plشدید چیست؟
پاسخ:
در پروتوکل مرافظه کارانه ،تراکنش نمی تواند شروع به اجرا کند مگر اینکه تمام قفلهای الزم را دریافت کرده
باشد ،ولی در پروتوکل شدید ،تراکنش نمی تواند قفل انرصاری را بگشاید مگر اینکه تثبیت یا طرد شده باشد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
امنیت
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
.1تفاوت بین کنترل دسترس ی مرتاطانه و الزامی را نام برده و مهمترین ایراد وارده بر این روش چیست؟
•
1
در کنترل مرتاطانه ،کاربر معموال حقوق دستیابی (یا امتیازات) متفاوتی روی اشیای مختلف دارد؛ علوه بر
این ،چندین مردودیت ارثی وجود دارد که ،مشخص می کند کدام کاربران ،چه مجوز هایی روی کدام اشیا
دارندطرح های مرتاطانه ،بسیار قابل انعطاف هستند .کاربر هم می تواند امتیاز خود را به کاربر دیگری
اعطاء کند.
•
در کنترل الزامی ،هر ش یء داده با یک سطح طبقه بندی( ،)Classification Levelبرچسب گذاری می
شود ،و به هر کاربر یک سطح مجوز ( )Clearance Levelداده می شود .سپس یک ش یء داده فقط می
تواند توسط کاربرانی با مجوزهای خاص دستیابی شود .سیاست طرح های الزامی ،ارثی است و در نتیجه،
خیلی دقیق هستند.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ایراد وارد بر کنترل دسترس ی مرتاطانه- 2
1
U
4
U
4
U
1
U
4
U
1
U
2
U
2
U
3
U
3
1
2
U
1
U
2
U
3
3
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
. را با مجوز زیر در نظر بگیردALEX کاربر.3
DEFINE PERMIT RETRIEVE ON P TO ALEX
WHERE P.CITY=“LONDON”
. زیر را صادر کندQUEL درخواستALEX فرض کنید کاربر
RETRIVE ( P.P# , P.WEIGHT)
WHERE P.COLOR =“RED”
دستوری را که سیستم به طور خودکار جایگزین درخواست باال می کند چیست؟
RETRIVE ( P.P# , P.WEIGHT)
WHERE P.COLOR =“RED”
AND P.CITY=“LONDON”
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 4خاصیت ستاره در روش کنترل دستیابی الزامی چیست؟ و بر روی کدام یک از جنبه های امنیتی تاثیر
می گذارد؟4
کاربر iدر صورتی می تواند ش یء jرا به هنگام کند که سطح مجوز iبرابر با سطح طبقه بندی jباشد.
جنبه های قانونی ،اجتماعی و اخلقی
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
:را در نظر بگیریدSTATS متغییر رابطه ای- 5
STATS{NAME,CHILDREN,OCCUPATION,SALARY,TAX,AUDITS}
KEY{NAME}
را روی صفاتDELETE وINSERT امتیازاتTODD به کاربر
.}بدهیدOCCUPATION,SALARY,TAX,AUDITS}
.را پس بگیریدALEX تمام امتیازات کاربر
در بازه شنبه تادوشنبه مجوز500000 کاربرانی که درآمد ماهیانه آنها کتر از
.را روی فیلد های زیر را داشته باشندAPPEND,RETRIVE,REPLACEهای
OCCUPATION,SALARY,TAX,AUDITS
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad Branch,
Islamic Azad University
AUTHORITY SA3
GRANT DELETE
(OCCUPATION,SALARY,TAX,AUDITS),
INSERT(OCCUPATION,SALARY,TAX,AUDITS)
ON STATS
TO TODD
DROP AUTHORITY
ALEX;
DEFINE PERMIT APPEND,RETRIVE,REPLACE
ON
STATS( OCCUPATION,SALARY,TAX,AUDITS)
TO
JOE
AT TTA4
FROM 9:00 TO 17:00
ON
SAT TO MON
WHERE STATS.SALARY<500000
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad Branch,
Islamic Azad University
کدام مورد جزء جنبه های امنیتی یک بانک اطالعات است؟- 6
secrecy )الف
integrity )ب
availability )ج
د) همه موارد
.همه موارد صحیح می باشد
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
7
-روش های رمز نگاری را با ذکر نام مقایسه کنید؟
ن:در این روش فرستنده وگیرنده از یک کلید سری مشترک برای رمز نگاری و رمز گشایی استفاده می
متقار ا
گیرد.
کنندوتوافق بر روی یک کلید مشترک دشوار است و به این دلیل کمتر مورد استفاده قرار می ا
ن:در این روش هر فرد دو کلید در اختیار دارد یک کلید عمومی و یک کلید خصوص ی و کامال محرمانه
نامتقار ا
.فرستنده داده ها را با کلید عمومی رمز کرده و داده ها تنها با کلید خصوص ی گیرنده قابل رمز گشایی است
و این روش دارای امنیت باالیی است و مورد استفاده فراوان قرار می گیرد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 8ضعف اصلی سیاست های mandatoryاست .
خاصیت ارثی
توضيح:
اگر کاربر u1بتواند Aرا ببيند در نتيجه کاربر U2نمی تواند Bرا ببيند و Aرا نبيند وهيچ امکانی به
کاربران برای واگذاری يا پس گرفتن مجوز به ديگر کاربران داده نمی شود.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 9تفاوت اصلی امنیت و جامعیت در چه موردی است؟
.1امنیت به معنای حفاظت از داده ها در مقابل کاربران مجاز و جامعیت یعنی حفاظت از داده ها در مقابل کاربران غیر
مجاز
.2هر دوی امنیت و جامعیت یعنی حفاظت در برابر کاربران مجاز
.3امنیت به معنای حفاظت از داده ها در مقابل کاربران غیرمجاز و جامعیت یعنی حفاظت از داده ها در مقابل کاربران
مجاز
.4هر دوی امنیت و جامعیت یعنی حفاظت در برابر کاربران غیرمجاز
جواب صحيح گزينه 3
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 10کدامیک از موارد زیر در مورد رمزگذاری درست میباشد؟
الف-الگوریتم رمزنگاری DESترکیبی از روش جانشيني و جایگشتی است
ب-رمزهاي جانشيني ترتيب کاراکتر های متن ساده راعوض مي كنند ولي آنها را تغيیر مي دهند .ولی رمز هاي جایگشتی ترتيب
حروف را حف مي كنند ولي آنها را تغيیر نمي دهند.
ج-الگوریتم آمری ا استاندارد جدیدی به نام استاندارد رمز نگاری پیشرفته ( )AESرا پذیرفت که مبتنی بر الگوریتم
Rijndaelاست و از کلید های 128و 192و یا 256بیتی استفاده می کند.
د-در روش AESمتن به بلک های 64بیتی تقسیم می شود
-1الف و ب و ج
- 2ب و ج و د
-3الف و ب و د
-4الف و ج و د
جواب صحیح گزینه 4
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 11روشهای رمزنگاری را نام برده و توضیح دهید؟
جانشینی :هر کاراکتر با استفاده از کلید رمزنگاری به رمز تبدیل شده و به جای آن کاراکتر دیگر قرار می گیرد.
جایگشت :رمزهای جانشینی ترتیب کاراکترهای متن ساده را حف می کنند ولی آنها را تغییر می دهند ولی رمزهای جایگشتی
ترتیب حروف را عوض می کنند ولی آنها را تغییر نمی دهند.
روش :DES
.1تقسیم متن ساده به بلکهای 64بیتی
.2تعیین کلیدهای 64بیتی و هر کلید شامل 56بیت 8 +بیت به عنوان parityکه 2 56کلید وجود دارد.
.3بلوک به عنوان یک جایگشت به آن رمزنگاری می شود.
.4بلوک جایگشت شده در معرض دنباله ای از 16مرحله جانشینی پیچیده قرار میگیرد.
.5جایگشت دیگری مع وس جایگشت اولیه در آخرین مرحله از نتیجه اعمال می شود.
روش :AES
.1در طرح کلید عمومی الگوریتم رمزنگاری و کلید رمزنگاری در اختیار همه قرار دارد بنابراین هر کس ی می تواند متن ساده را
به متن رمزی تبدیل کند ولی کلید رمزگشایی متناظر به صورت سری نگهداری می شود.
.2کلید رمزگشایی نمی تواند از رمزنگاری حدس زده شود ولذا کس ی که رمزنگاری اصلی را انجام می دهد نمی تواند
رمزگشایی را انجام دهد.
.3طرح های عمومی شامل دو کلید هستند .1 :رمزنگاری .2رمزگشایی
.4ایده اصلی رمزنگاری کلید عمومی مربو به Diffeو Hellmanاست.
.5ارائه ی ی از بهترین طرحها الگوریتم RSAبرای این روش است.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
جمله زیر را رمز گذاری کنید؟computer روش رمزگذاری جایگشت را توضیح داده و با کلید- 12
I study computer
:پاسخ
در روش های رمزگذاری جایگشت برخلف
روش های جانشینی نوع حروف عوض نمی
.شود ولی م ان آنها تغییر می کند
ismctesturadybda
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
رمز گذاری داده ها متن زیر را انجام دهید؟-13
AS KINGFISHERS CATCH FIRE
: پاسخ
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 11آيا مفهوم امنیت و جامعيت با هم برابرند؟ توضيح دهيد.
پاسخ :خیر برابر نيستند .اين دو مقوله در عین حال كه با هم شباهتهايي دارند ،از يكديگر متفاوتند ،در امنیت
مسئله حفاظت داده ها در مقابل كاربر غیر مجاز مطرح است و حصول اطمينان از اينكه كاربران ،به انجام
آنچه كه بدان اقدام مي ورزند مجازند .حال آنكه در جامعيت ،نوعي حفاظت داده ها در مقابل عمليات كاربر
مجاز اعمال مي شود و حصول اطمينان از اينكه اقدام كاربران ،صحيح است و صحت و دقت داده ها را
خدشه دار نمي كند.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
ارزیابی و بهینه سازی
پرس و جو
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-1کدامیک از صفت های عبارات زیر ،روی بانک اطالعات عرضه کنندگان -قطعات – پروژه ،معادلند وکدامیک
معادل نیستند ؟
) ” S join ( ( P join J ) where city= “ london
A1.
) A2 . ( P where city = “ london “ ) join ( J join S
با توجه به خاصیت جابه جایی عملگر الحاق با مردودیت وتبدیل آن به مردودیت و الحاق – هم چنین شرکت پذیری
روی الحاق ،این دو عبارت معادلند .
) B1. ( S where city = “ london “) union ( S where status > 10
B2. S where city = “ london “ and status > 10
با توجه به تعریف دو عملگر ،دو عبارت ،خروجی یکسان ندارند ومعادل نیستند .
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
C1. S join ( P { city } minus J { city } )
C2. ( S join P { city } ) minus ( S join J { city } )
.دو عبارت معادل نیستند
D1. ( J { city } intersect P { city } ) union S { city
}
D2. J { city } intersect ( S { city } union P {
city } )
با توجه به خاصیت شرکت پذیری عملگرهای اجتماع و اشتراک دو عبارت معادل نیستند
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
دو درخت پرس وجو برای عبارت زیر ترسیم نمایید و هزینه دستیابی به دیسک هر کدام را مراسبه کنید-2
Songs (sid , sname , genre:, year)
Ratings (uid, sid, time, rating)
SELECT S.genre
FROM Ratings R, Songs S
WHERE R.sid=S.sid AND
R.uid=50 AND S.year>2000
جدولsongs تاپل و جدول50 دارایratings تاپل است100 دارای
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
genre
genre
uid=50
year > 2000
sid=sid
sid=sid
Songs
uid=50
Ratings
Ratings
year >2000
Songs
(T2)
(T1)
Cost of T1 = 50 + 100 + 50 + 50 = 250
Cost of T2 = 100 + 50 + 1 +25 + 26 = 202
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
-3قیدهای زیر برای بانک اطلعات عرضه کنندگان -قطعات – پروژه ها وجود دارد
شهرهای معتبر :لندن ،پاریس
هر پروژه ای باید در شهری باشد که در آن شهر ،حداقل یک عرضه کننده آن پروژه وجود داشته باشد.
را عرضه نماید p2هر عرضه کننده لندن باید قطعه
عرضه کنندگان در لندن نسبت به عرضه کنندگان در پاریس باید انواع متفاوت تری از قطعات عرضه کنند
باتوجه به قیدهای باال پرس وجو های زیر را به شکل ساده تر بیان کنید:
راعرضه میکنند p2عرضه کنندگانی را مشخص کنید که قطعه
عرضه کنندگان مستقر در لندن را مشخص کنید.
عرضه کنندگانی را مشخص کنید که هیچ عرضه کننده ای انواع بیشتری از قطعات را تولید نمیکند
عرضه کنندگان پاریس را مشخص کنید
عرضه کنندگانی را مشخص کنید که هیچ پروژه ای را در همان شهر عرضه کننده عرضه نمیکنند
عرضه کنندگانی را مشخص کنید که پروژه ها را درشهری که یک عرضه کننده آن وجود دارد عرضه میکنند
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
زیر کدام است؟sql بهینه ترین پرس و جوی دستور
Select * from t1,t2
Where t1.a=t2.a
And t1.a=‘a’ and t2.a=‘a’
1- σ (t1.a=‘a’ ^t2.a=‘a’)(T1*T2)
2- σ (t1.a=‘a’ ^ t2.a=‘a’) (t1 ∞(t1.a=t2.a) t2)
3- (σ (t1.a=‘a’) (t1)) ∞(t1.a=t2.a) (σ (t1.a=‘a’) (t1))
4 - 3- (σ (t1.a=‘a’) (t1)) ∞(t1.a=t2.a) (t2)
شامل داده های زیر باشدt1,t2 اگر جداول
[[1,a],[2,a],[3,b]] T1(b,a)
[[1,a],[2,a],[3,b],[4,b]] T2(b,a)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Select * from t1,t2
Where t1.a=t2.a
And t1.a=‘a’ and t2.a=‘a’
1- σ (t1.a=‘a’ ^t2.a=‘a’)(T1*T2)
(3+4)+2*(3*4)=31
2- σ (t1.a=‘a’ ^ t2.a=‘a’) (t1 ∞(t1.a=t2.a) t2)
(3+4)+2*(6)=19
3- (σ (t1.a=‘a’) (t1)) ∞(t1.a=t2.a) (σ (t1.a=‘a’) (t1))
(3+2)+(4+2)+4=15
4 - (σ (t1.a=‘a’) (t1)) ∞(t1.a=t2.a) (t2)
(3+2)+4+4+4=17
شامل داده های زیر باشدt1,t2 اگر جداول
[[1,a],[2,a],[3,b]] T1(b,a)
[[1,a],[2,a],[3,b],[4,b]] T2(b,a)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 4پرس و جو ی زیر را در نظر بگیرید .باتوجه به شماهای رابطه ای داده شده به سواالت زیر پاسخ دهید؟
«یافتن اسامی همه ی مشتریانی که در هر شعبه واقع در بروکلین یک حساب دارند و موجودی حساب آنها
بیشتر از 1000دالر است »
)Branch-schema=(branch-name, branch-city,assets
)Accoun-schema=(account-number , branch-name,balance
)Depositor-schema = (customer-name , branch-name
الف)فرم SQLو جبر رابطه ای این پرس و جو را بنویسید ؟
ب)درخت جبر رابطه ای متعارف این پرس و جو را رسم کنید؟
ج)با استفاده از قوانین تبدیل درخت را بهینه کنید؟
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: به شکل زیر استSQL فرم
SELECT Customer-name
FROM branch b,account c,depositor d
WHERE branch-city=“brooklyne” AND balance>1000
AND b.branch-name=a.branch-name AND
a.account-number = d.account-number
: به جبر رابطه ایSQL تبدیل فرم
Π Customer-name(σ branch-city=“brooklyne”^
balance>1000 (branch ∞) account ∞depositor)))
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
: درخت جبر رابطه ای متعارف
Π customer- name
σ branch-city ^ balance < 1000
∞
∞
branch
account
depositor
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Π Customer-name(σ branch-city=“brooklyne”^
balance >1000 ( branch ∞ account) ∞depositor))
Π customer- name
σ branch-city
^ balance < 1000
∞
∞
depositor
branch
account
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Π Customer-name((σ branch-city=“brooklyne”^
balance >1000 ( branch ∞ account)) ∞depositor)
Π Customer-name((σ branch-city =“brooklyne”
(balance >1000 ( branch ∞ account)) ∞depositor)
Π customer- name
∞
∞
σ branch-city
depositor
σ balance < 1000
branch
account
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Π customer- name
∞
∞
Π branch-name
σ branch-city
branch
Π customer- name
,account-number
Π branch-name
,account-number
depositor
σ balance < 1000
account
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
. پرس و جو ی زیر را در نظر بگیرید- 5
فرض کنید سه جدول با نام
جدول اساتیدT(name,code)
جدول دروسB(name,code)
جدول دانشجوD(name,code,number)
Select d.name
from D,B,T
where D.name=B.code
And B.code=T.code
And D.number=17
And T.name=‘ahmadi’
با استفاده از روش تجزیه تقاضا
الف) روند تجزیه را به صورت مرحله به مرحله نوشته
ب) درخت تجزیه را رسم نمائید
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
T’: select T.code from T where T.name=‘ahmad’
Q1=select D.name from D,B,T’
D.code=D.code
And B.code=T’.code
And D.number=17
D’=select D.name,D.code from D where D.number=17
Q2=select D’.name from D’,B,T’ where
D’.code=B.code
And B.code = T’.code
B’=select B.code,T’.code from B,T’ where B.code = T’.code
Q3=select D’.namefrom D’,B’ where D’.code=B’.code
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
Q3
B’
B
D’
T’
D
T
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
فرم پرس و جوی زیر مطرح است- 6
Select p.a,p.b from client c,view v,property p
Where p.a=‘—’
And c.a=v.a
And v.p=p.p
And c.m>=p.r
Amd p.o=‘0’
با استفاده از بهینه سازی معنایی فرم پرس و جوی نهایی نوشته شود؟
Select a,b from p where p.o=‘0’ and p.a=‘—’
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
:رابطه های زیر وآمارهای داده شده در مورد هر یک را در نظر بگیرید-7
S=R1 ∞ R2 ∞ R3 ∞ R4مطلوبست مراسبه کاردینالیتی رابطه
R1(A,B)
R2(B,C)
R3(C,D)
R4(D,E)
n
100
200
300
400
V iA
20
ViB
VIc
60
50
100
ViD
50
50
VIe
40
100
400*300*200*100 /60*100*50
رانکوهی است309 فرمول صفحه
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
4 – 8مرحله اصلی در پردازش پرس و جو چیست؟
تجزیه :پرس و جو به فرم داخلی تبدیل می شود که جهت دست اری ماشین مناسب تر است.
بهینه سازی :تعدادی بهینه سازی را با شر خوب بودن صرفنظر از مقادیر داده ی واقبی و مسیرهای دستیابی
فیزی ی که در بانک اطلعاتی ذخیره شده است انجام می دهد.
ایجاد کد :پس از تبدیل ش ل داخلی پرس و جو به ش ل مطلوب بهینه ساز باید تصمیم بگیرد که چگونه باید
پرس و جوی تبدیل شده ای را که توسط ش ل کانونی تغییر یافته نمایش داده می شود ،اجرا نماید.
اجرا :شامل ساخت مجموعه ای از نقشه های پرس و جو یا Query Planکاندید و سپس انتخاب بهترین و
ارزانترین نقشه می باشد.
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
. به فرم جبر رابطه ای تبدیل شودSQL عبارت- 9
SELECT p.propertyNo, p.street
FROM Client c, Viewing v, PropertyForRent p
WHERE c.prefType = ‘Flat’
AND c.clientNo = v.clientNo
AND v.propertyNo = p.propertyNo
AND c.maxRent >= p.rent
AND c.prefType = p.type
AND p.ownerNo = ‘CO93’
Π p.propertyNo, p.street (σ c.prefType=‘Flat’ ^
c.clientNo=v.clientNo ^
v.propertyNo=p.propertyNO ^
c.maxRent>= p.rent ^
c.prefType=p.type ^
p.ownerNo=‘CO93’((C >< V) >< P))
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
معادل جبر رابطه ای زیر را بنویسید-10
σθ(E1∞E2)=(σθ(E1))∞Θe2)
معادل سمت چپ:جواب
Select S.A1,G.A1
(Select S.A1,S.A2,G.A1
From S.A1=G.A1)
Where city=“s”
:معادل سمت راست
Select S.A1,G.A1
From(Select S.A1,S.A2
From S
Where city=“S”)
Where S.A1=G.A1
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قوانین م اشفه ای برای بهینه سازی پرس و جو
جداسازی ترکیبات عطفی عملگر گزینش به عملگرهای گزینش منرصر به فرد:مرحله اول
•
c1 AND c2 AND ... AND cn (R1 R2 ... RN)
= c1( c2(...( cn(R1 R2 ... RN) ) )
cond1 AND cond2
cond1
cond2
R
R
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قوانین م اشفه ای برای بهینه سازی پرس و جو
انتقال عمل گزینش به پایین درخت با قوانین زیر:مرحله دوم
c1 ( c2(R)) = c2 ( c1(R))
A1, A2, ..., An ( c (R)) = c ( A1, A2, ..., An (R)) (assuming c is in Ai)
c1 AND c2 ( R S ) = (c1 (R)) (c2 (S))
c1 AND c2 ( R S ) = (c1 (R)) (c2 (S))
c ( R S ) = (c (R)) (c (S))
c ( R S ) = (c (R)) (c (S))
c ( R – S ) = (c (R)) – (c (S))
•
•
•
•
•
•
•
•
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قوانین م اشفه ای برای بهینه سازی پرس و جو
انتقال عمل گزینش به پایین درخت با قوانین زیرتا حد ممکن:مرحله دوم
•
R.A = S.B
S.B < 50
R.A > 10
R.A = S.B
R.A > 10
R
S
R
S.B < 50
S
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قوانین م اشفه ای برای بهینه سازی پرس و جو
مرتب سازی عملگرهای دودویی:مرحله سوم
R.A > 10
R
•
T.C = 3
T.C = 3
S.B < 50T
S
T
R.A > 10
S.B < 50R
S
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قوانین م اشفه ای برای بهینه سازی پرس و جو
ضرب دکارتی همراه با مردودیت رامی توان به الحاق شرطی تبدیل نمود:مرحله چهارم
( C (R x S)) = (R
C
•
S) –
R.A=S.B
R.A=S.B
R
R
S
S
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قوانین م اشفه ای برای بهینه سازی پرس و جو
تبدیل مردودیت تصویر به تصویر مردودیت جهت انتقال تصاویر به پایین الحاق
List1 ( List2 (...( Listn(R))...) ) = List1(R)
(cascade)
A1, A2, ..., An ( c (R)) = c ( A1, A2, ..., An (R)) (commute with as long as c is
part of the projected attributes)
L ( R C S ) = (A1, ..., An (R)) C ( B1, ..., Bm (S)) (commute with )
L ( R S ) = (A1, ..., An (R)) ( B1, ..., Bm (S)) (commute with )
L ( R S ) = ( L (R)) ( L (S)) (commute with )
•
•
•
•
•
•
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قوانین م اشفه ای برای بهینه سازی پرس و جو
تبدیل مردودیت تصویر به تصویر مردودیت جهت انتقال تصاویر به پایین الحاق
•
R.C, S.D
R.C, S.D
R.A=S.B
R.A=S.B
R.A, R.C
R
S.B, S.D
S
R
S
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مثال
کارAQUARIUS متولد شده اند ودر پروژه1957 فامیل کارمندانی را پیدا کنید که بعد از سال
.می کنند
LNAME
EMPLOYEE, WORKS_ON, PROJECT
PNAME = ‘AQUARIUS’ AND PNUMBER=PNO
AND ESSN=SSN AND BDATE > ‘1957-12-31’;
•
SELECT
FROM
WHERE
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مثال
ها به پایین درختselect • انتقال
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مثال
• مرتب سازی
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مثال
• جایگزینی ضرب دکارتی و انتخاب با الحاق
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مثال
• انتقال تصویر به پایین درخت
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
- 11چهارمرحله اصلی در پردازش پرس وجو؟
تجزیه
بهینه سازی
ایجاد کد
اجرا
.1قوانین تبدیل در کدام مرحله استفاده می شوند؟بهینه سازی
.2درکدام مرحله ملحضات مسیرهای فیزی ی ونروه ذخیره سازی در نظر گرفته می
شود؟تولید کد
.3کاتالوگ سیستم در کدام مرحله وبه چه منظور استفاده می شود؟تولید کدواجرا
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
مثالی از تفاوت استراتژی ها برپایه هزینه آنها
برای پرس وجوی زیر دو استراتژی بنویسید وبهترین را
انتخاب کنید
ENAME SELECT
EMP,ASG FROM
EMP.ENO = ASG.ENO WHERE
RESP = "Manager« AND
:استراتژی اول
ENAME(RESP=“Manager”EMP.ENO=ASG.ENO(EMP×ASG))
ENAME(EMP ⋈ENO (RESP=“Manager” (ASG))
: استراتژی دوم
.برخالف انتظار استراتژی اول بهتراست
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
جداول
Customer (CU) (CustomerID, Name, Street, City, •
County)
Checkedout (CH) (CustomerID, FilmID, TapeNum, •
Date,ReturnDate, AmountPaid, Length, EmpID)
Film (F) (FilmID, Title, Date, RentalPrice, •
Distributor, Type)
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
.با استفاده از قوانین مکاشفه ای پرس وجوی زیر را بهینه کنید
زندگی می کنند وفیلمelm اسامی مشتریانی که در خیابان
. را مشاهده کردنterminator
sql فرم
SELECT Name
Customer CU, CheckedOut CH, Film F FROM
T.Title = ’Terminator’ AND F.FilmId = CH.FilmID WHERE
AND CU.CustomerID = CH.CustomerID and CU.Street = ‘Elm’
فرم جبر رابطه ای
Name(Title = ‘Terminator’ F.FilmId = CH.FilmID
CU.CustomerID = CH.CustomerID CU.Street = ‘Elm’
(( cu ><ch)>< f))
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
درخت پرس و جوی متعارف
Name
.FilmID CU.CustomerID = CH.CustomerID CU.Street = ‘Elm’
CU
F
CH
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
منحصر به فرد به عملگرهایجداسازی ترکیبات عطفی عملگر
Name
F.FilmId = CH.FilmID
Title = ‘Terminator’
CU.CustomerID = CH.CustomerID
Street = ‘Elm’
F
CH
CU
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
جابه جاپذیری عملگرها وپیوندها برای مرتب سازی عملگرگزینش
Name
CU.CustomerID =
CH.CustomerID
F.FilmId = CH.FilmID
Street = ‘Elm’
Title = ‘Terminator’
CU
CH
F
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
تبدیل ضرب دکارتی با محدودیت به الحاق شرطی
Name
⋈ CU.CustomerID =
CH.CustomerID
⋈ F.FilmId = CH.FilmID
Title = ‘Terminator’
:قانون تبدیل پیوندی
CH
Street = ‘Elm’
CU
F
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University
قانون تبدیل محدودیت تصویر به تصویر محدودیت
Name
⋈ CU.CustomerID =
⋈ F.FilmId = CH.FilmID
FilmID
Title = ‘Terminator’
CH.CustomerID
FilmID, CustomerID
FilmID, CustomerID
CH
Street = ‘Elm’
CU
F
Advance Database System lectures, Dr. Mohammad Hossein Nadimi, Faculty of Computer Engineering, Najafabad
Branch, Islamic Azad University