סיכום: טרנזקציות ובקרת מקביליות
סיכום של מושגים מרכזיים בתיאוריה של טרנזקציות ובקרת מקביליות במערכות נתונים, חיוני להבנת תהליכים מסחריים במערכות מבוזרות.
Quiz(72 domande)
1. מהי טרנזקציה?
Termini in questo set(72)
טרנזקציות בסיסיות(16)
מהי טרנזקציה?
טרנזקציה היא סדרת פעולות שמבוצעות כיחידה אחת. אם אחת מהן נכשלת, כולן בביטול.
מהו מצב עמידה?
מצב עמידה מתייחס למצב שבו טרנזקציה מחכה למשאבים. זה יכול לגרום לעיכובים.
מהם ארבעת המאפיינים של טרנזקציות?
אטומיות, עקביות, בידוד, עמידות.
אטומיות - מה זה?
אוטומטית מתייחסת לכך שטרנזקציה מתנהגת כמו יחידה אחת. אם חלק נכשל, כל הטרנזקציה לא מתבצעת.
מהי עקביות בטרנזקציה?
עקביות מבטיחה שהנתונים יהיו תמיד במצב נכון לאחר טרנזקציה. היא שומרת על כללים עסקיים.
מאפיין עמידות - הסבר.
עמידות פירושה שהשינויים שביצעה טרנזקציה נשמרים גם במקרה של קריסה. הנתונים לא יאבדו.
מהו בידוד?
בידוד מבטיח שכל טרנזקציה מתבצעת בנפרד, ללא השפעות חיצוניות מטרנזקציות אחרות.
האם טרנזקציה יכולה להתפרק?
לא. טרנזקציה חייבת לפעול כיחידה אחת. אם אחת נכשלת, כולן לא מתבצעות.
מהו כשל טרנזקציה?
כשל מתייחס למצב שבו טרנזקציה לא מצליחה להשלים את כל פעולותיה. זה יכול לקרות בגלל בעיות מערכת.
מהו COMMIT?
COMMIT הוא תהליך שבו שינויים שביצעה טרנזקציה נשמרים באופן סופי במערכת.
מהו ROLLBACK?
ROLLBACK הוא תהליך שבו מחזירים את המערכת למצב קודם לאחר כשל בטרנזקציה.
אילו בעיות עשויות להיווצר בטרנזקציות?
סיכונים כמו deadlock, עיכובים, ומצב עמידה אפשריים.
איך נמדוד את הצלחת טרנזקציה?
הצלחה נמדדת לפי השלמת כל הפעולות בהצלחה, ללא שגיאות.
שקול דוגמה לטרנזקציה שלא הצליחה.
אם קנייה נכשלה כי הכרטיס לא עבר, כל החיובים יחזרו למצב הקודם.
מהו מצב מקביליות?
מצב שבו מספר טרנזקציות מתבצעות בו זמנית על אותם נתונים, מה שעלול לגרום להתנגשויות.
מה הקשר בין טרנזקציות לבקרת מקביליות?
בקרת מקביליות מתמקדת בשיטות שמאפשרות לנהל גישה בטוחה לנתונים תוך כדי פעולות מקבילות.
בקרת מקביליות(20)
מהי בקרת מקביליות?
בקרת מקביליות היא שיטת ניהול המונעת קונפליקטים בין טרנזקציות שמתרחשות בו זמנית על אותו הנתון.
שיטת התפקידים (Two-Phase Locking)
שיטה שמחלקת את פעולות הטרנזקציה לשתי שלבים: שלב לקיחה ושלב שחרור. המטרה היא למנוע קונפליקטים.
מהי שיטת ה-Optimistic Concurrency Control?
שיטה בה הטרנזקציות פועלות ללא נעילה והקונפליקטים נבדקים רק בסוף. אם קונפליקט נמצא, הטרנזקציה נכשלה.
מה זה תרשים תלות?
תרשים המייצג את הקשרים בין טרנזקציות ומסייע לזיהוי קונפליקטים פוטנציאליים.
מהי נעילה בלעדית?
נעילה המונעת גישה לנתון על ידי טרנזקציה אחרת עד שהטרנזקציה הנוכחית משחררת אותה.
מהי נעילה משותפת?
נעילה המאפשרת לקרוא נתון על ידי מספר טרנזקציות באותו הזמן, אך לא מאפשרת כתיבה.
מהו Deadlock?
מצב שבו שתי טרנזקציות מחכות זו לזו לשחרור משאבים והן לא יכולות להתקדם.
מהי שיטת Wait-Die?
שיטת ניהול Deadlock שבה טרנזקציה צעירה מחכה לטרנזקציה מבוגרת או נכשלה.
מהי שיטת Wound-Wait?
שיטה שבה טרנזקציה מבוגרת דוחקת הטרנזקציה הצעירה הממתינה וגורמת לה להיכשל.
מהו Timestamp Ordering?
שיטה שבה כל טרנזקציה מקבלת חותמת זמן. השיטה מבטיחה סדר ביצוע על פי הזמן.
השווה בין שיטת טבלה ושיטת נעילה.
שיטת טבלה מספקת גישה מהירה אך עלולה לגרום לקונפליקטים. שיטת נעילה מספקת בטיחות גבוהה יותר אך איטית יותר.
מהי Isolation Level?
דרגת הבידוד של טרנזקציה, קובעת את האופן שבו טרנזקציות אחרות יכולות להשפיע על הנתונים שלה.
שיטת Read Committed
דרגת בידוד שבה טרנזקציות יכולות לקרוא רק נתונים שהיו מחויבים עד כה.
שיטת Serializable
הדרגה הגבוהה ביותר של בידוד, מבטיחה ביצוע של טרנזקציות כאילו היו רציפות.
מהי בעיית הכפלה?
בעיה שבה טרנזקציה מסוימת רואה שינויים שטרם מחויבו, דבר שעלול להוביל לתוצאות לא צפויות.
מהי רמת גישה מסונפת?
מצב שבו טרנזקציה רואה נתונים לא מחויבים של טרנזקציה אחרת.
שיטת Lock-Free
שיטה המאפשרת גישה לנתונים מבלי לנעול אותם, אך עלולה להיתקל בבעיות קונפליקט.
מהו Multi-Version Concurrency Control?
שיטה המספקת גרסאות שונות של נתונים לטרנזקציות, כך שטרנזקציה יכולה לפעול על גרסה ישנה מבלי לחכות.
נכון או לא נכון: נעילה משותפת מונעת כתיבה.
נכון. נעילה משותפת מאפשרת קריאה בלבד, לא כתיבה.
מהי שיטת Snapshot Isolation?
שיטת Snapshot Isolation מאפשרת לקרוא נתונים כגרסה קודמת של הנתונים בזמן שהטרנזקציה מתבצעת, מבלי לחסום טרנזקציות אחרות. זה מונע בעיות של קריאות לא עקביות אך עשוי להוביל לבעיות כמו אנומליה של כתיבה.
בעיות מקביליות(20)
מהי בעיית טינקינג?
בעיה זו מתרחשת כאשר טרנזקציות מקבילות מנסות לשנות את אותם נתונים, דבר שיכול להוביל לתוצאות לא צפויות.
מהי בעיית כתיבה חפיפית?
כאשר שתי טרנזקציות כותבות על אותו שדה, התוצאה עשויה להיות שגויה. לדוגמה, אם טרנזקציה A ו-B כותבות על שדה X, הניסיון האחרון ייגבר.
בעיית אנומליה של קריאות
כאשר טרנזקציות מקבילות קוראות נתונים שכתובים על ידי טרנזקציות אחרות, התוצאה עשויה להיות לא עקבית.
האם בעיית טינקינג נגרמת על ידי כתיבה בלבד?
לא, היא נגרמת גם משילוב של קריאות וכתיבות בטרנזקציות מקבילות.
מהי בעיית Deadlock?
מצב שבו שתי טרנזקציות או יותר ממתינות אחת לשנייה, ולכן כולן נתקעות ולא יכולות להמשיך.
מה יכול לגרום ל-Deadlock?
שימוש לא נכון במשאבים, כמו כשטרנזקציה A מחזיקה משאב 1 וממתינה למשאב 2, וטרנזקציה B מחזיקה משאב 2 וממתינה למשאב 1.
מהי בעיית חוסר תיאום?
כאשר טרנזקציות מקבילות פועלות באופן שלא מתואם, התוצאה עשויה להיות שגויה וכך יש להיזהר מכך.
מהי דוגמת בעיית כתיבה חפיפית?
אם טרנזקציה A עוסקת בשינוי מחיר של מוצר, ו-B מנסה גם היא לשנות את אותו מחיר בו זמנית.
מהי בעיית אינקונסיסטנטיות?
כאשר הנתונים לא מתאימים אחד לשני לאחר שהתרחשו מספר טרנזקציות במקביל.
מהי בעיית קריאות לא עקביות?
כאשר טרנזקציה רואה נתונים שהשתנו על ידי טרנזקציה אחרת לפני שלב ה-completion שלה.
מהי בעיית פיצול?
כאשר טרנזקציה אחת מתבצעת חלקית, מה שמוביל לכך שטרנזקציות אחרות פועלות על נתונים לא מעודכנים.
מהו פתרון ל-Deadlock?
שימוש באלגוריתמים לזיהוי Deadlock ופתרון על ידי שחרור המשאבים או ביטול אחת מהטרנזקציות.
כיצד ניתן למנוע בעיות מקביליות?
על ידי שימוש בטכניקות כמו Locking, Timestamping או Isolation Levels.
מהי בעיית חוסר סינכרוניזציה?
כאשר טרנזקציות פועלות על אותם נתונים בלי תיאום, מה שמוביל לתוצאות שגויות.
מהו מודל ייצור/שימוש?
מודל שבו טרנזקציות מייצרות נתונים ואז משתמשות בהם, דבר שיכול לגרום לבעיות מקביליות אם לא מתואמות.
מהו פוטנציאל לבעיות מקביליות?
במערכות עם גישה רבה לנתונים, במיוחד כשיש מספר טרנזקציות הפועלות בו זמנית.
מהי בעיית חוסר עמידות?
כאשר הנתונים לא עומדים בדרישות עקב שינויים שנעשו על ידי טרנזקציות אחרות.
מה קורה כשיש חוסר תיאום?
זה יכול לגרום לאיבוד נתונים או לתוצאות לא צפויות של טרנזקציות.
איך פתרון בעיות מקביליות מסייע?
הוא מקטין את הסיכון לאובדן נתונים ושגיאות, ומבטיח שמירה על עקביות המידע.
מהי בעיית תחרות נתונים?
בעיה שמתרחשת כאשר מספר טרנזקציות מנסות לגשת לנתונים בו זמנית, מה שעלול לגרום לתוצאה לא צפויה או לא עקבית. - נגרמת מעדכון או קריאה בו זמנית - יכולה להוביל לאנומליות שונות במידע
פתרונות ואלגוריתמים(16)
מהו אלגוריתם 2PL?
אלגוריתם Two-Phase Locking (2PL) מחלק את חיי הטרנזקציה לשלב נעילה ואחריו שלב שחרור. הוא מבטיח סודיות אך עלול לגרום למצב של Deadlock.
האם True או False: Timestamps מבטיחים סדר קבוע של טרנזקציות.
True. Timestamps מוודאים שכל טרנזקציה מקבלת חותמת זמן, ובכך קובעים סדר עקבי לביצוען.
תאר את אלגוריתם OCC.
אלגוריתם Optimistic Concurrency Control (OCC) כולל שלושה שלבים: בדיקה, עדכון ואישור. הוא עובד על ההנחה שהקונפליקטים נדירים.
מהי בעיית Deadlock?
מצב שבו שתי טרנזקציות או יותר מחכות זו לזו לשחרור משאבים, דבר שגורם לכל אחת מהן להיתקע.
השלם: אלגוריתם ____ הוא גישה לניהול בעיות מקביליות באמצעות נעילה.
Two-Phase Locking (2PL).
האם True או False: קונפליקט בין טרנזקציות הוא בלתי נמנע?
False. ניתן להקטין קונפליקטים בעזרת אלגוריתמים מתקדמים במקביל.
השווה בין 2PL ל-OCC.
2PL: נעילה מראש, סדר קבוע. OCC: ללא נעילה, גישה אופטימית, בדיקות מאוחרות.
מהו היתרון של Timestamps?
Timestamps מאפשרים לעקוב אחרי הסדר בו טרנזקציות בוצעו, מה שמשפר את הסודיות ומפחית קונפליקטים.
מהו Atomicity?
מאפיין המבטיח שטרנזקציה תתבצע במלואה או לא תתבצע כלל. אם מתרחשת שגיאה, המערכת מחזירה את המצב הקודם.
האם True או False: עקרון הסודיות חל על כל האלגוריתמים.
True. עקרון הסודיות הוא קריטי בניהול טרנזקציות במקביל.
מהו Isolation?
מאפיין המבטיח שכל טרנזקציה פועלת כאילו היא היחידה במערכת, ומונע השפעות מפריעות מטרנזקציות אחרות.
תאר בקצרה את אלגוריתם Wait-Die.
אלגוריתם Wait-Die קובע אם טרנזקציה יכולה לחכות או 'למות' אם היא נתקלת במנעול תפוס. הצעירים מפסידים.
מהו Recovery?
תהליך החזרת המערכת למצב עקבי לאחר שגיאה או קריסה, כולל החזרת נתונים לסטאטוס הקודם.
השלם: אלגוריתם __ מציע גישה אופטימית לניהול קונפליקטים.
OCC.
מהו Lock Granularity?
רמת הפירוט שבה נעילות מוחלות, כמו טבלה, שורה או עמודה. רמת פירוט גבוהה מפחיתה קונפליקטים.
האם True או False: יש צורך במנעולים בכל אלגוריתם.
False. לא כל האלגוריתמים מצריכים מנעולים, לדוגמה OCC.
Domande in questo set(72)
1. מהי טרנזקציה?
2. מהי מטרת בקרת מקביליות?
3. מהי בעיית חוסר סינכרוניזציה?
4. מהו היתרון של אלגוריתם 2PL?
5. מהו מצב עמידה?
6. איזה מהבאים מתאר את שיטת ה-Optimistic Concurrency Control?
7. מהי בעיית כתיבה חפיפית?
8. מהו מאפיין Atomicity?
9. מהם ארבעת המאפיינים של טרנזקציות?
10. מהו המאפיין הבולט של שיטת Two-Phase Locking?
11. מהו מודל ייצור/שימוש?
12. מה קורה במצב Deadlock?
13. מהי עקביות בטרנזקציה?
14. מהו Deadlock?
15. מהי בעיית Deadlock?
16. מהו ההבדל בין 2PL ל-OCC?
17. מהו בידוד?
18. באיזו שיטה טרנזקציה צעירה מחכה לטרנזקציה מבוגרת?
19. מהי בעיית טינקינג?
20. מהו Isolation?
21. מהו כשל טרנזקציה?
22. מהו Timestamp Ordering?
23. מהי בעיית אינקונסיסטנטיות?
24. מהו אלגוריתם OCC?
25. מהו COMMIT?
26. מהו יתרון של שיטת Lock-Free?
27. מהי בעיית תחרות נתונים?
28. מהן Timestamps?
29. מהו ROLLBACK?
30. מהי רמת בידוד ב- Read Committed?
31. מהי בעיית קריאות לא עקביות?
32. מהו היתרון של Lock Granularity נמוך?
33. אילו בעיות עשויות להיווצר בטרנזקציות?
34. מהי שיטת Serializable?
35. מהי בעיית פיצול?
36. מה קורה כאשר טרנזקציה פוגשת מנעול תפוס באלגוריתם Wait-Die?
37. איך נמדוד את הצלחת טרנזקציה?
38. מהי בעיית הכפלה?
39. מהי בעיית חוסר תיאום?
40. מהו Recovery במערכות ניהול מסדי נתונים?
41. שקול דוגמה לטרנזקציה שלא הצליחה.
42. מהו תרשים תלות?
43. מה קורה כשיש חוסר תיאום?
44. מהי בעיית קונפליקט בין טרנזקציות?
45. מהו מצב מקביליות?
46. מהי נעילה בלעדית?
47. מהי בעיית חוסר עמידות?
48. האם True או False: כל אלגוריתם ניהול טרנזקציות דורש נעילות?
49. מה הקשר בין טרנזקציות לבקרת מקביליות?
50. איזו מהשיטות מאפשרת קריאה של נתונים לא מחויבים?
51. מהו פתרון ל-Deadlock?
52. מה קורה כאשר ישנן יותר מדי נעילות באלגוריתם?
53. מה מהמאפיינים הבאים מתאר את תהליך ההפיכה של שינויים שביצעה טרנזקציה לארוכים במערכת?
54. מהי השוואה בין שיטת טבלה לשיטת נעילה?
55. מהו פוטנציאל לבעיות מקביליות?
56. מה תפקידם של מנעולים באלגוריתמים לניהול טרנזקציות?
57. איזה מצב מתאר כאשר טרנזקציה ממתינה למשאבים ואין אפשרות להמשיך בתהליך?
58. מהי השפעת הקונפליקט בין טרנזקציות?
59. איך פתרון בעיות מקביליות מסייע?
60. מהו מצב של קונפליקט בין טרנזקציות?
61. מהו המאפיין של טרנזקציה שמבטיח שכל הנתונים יהיו במצב תקין לאחר השלמתה?
62. מהו פרדוקס הטרנזקציות?
63. מהי בעיית אנומליה של קריאות?
64. מהו העיקרון העומד מאחורי אלגוריתם Two-Phase Locking (2PL)?
65. איזו שיטה מפחיתה קונפליקטים אך עשויה להאריך את זמן ההמתנה?
66. מהי בעיית חוסר עמידות?
67. איזו מהשיטות מאפשרת לטרנזקציות לפעול ללא נעילות אך בודקת קונפליקטים בסוף?
68. מהי בעיית חוסר סנכרון בטרנזקציות?
69. איזו רמת בידוד מונעת מהטרנזקציות לקרוא נתונים שלא הוחזקו עד כה?
70. איזו מהבעיות הבאות אינה נחשבת לבעיית Deadlock?
71. מהו העיקרון של שיטת Wound-Wait?
72. מהי בעיית פיצול בטרנזקציות?
Set correlati
Normalisierung Datenbanken Abiturvorbereitung
Transaktionen ACID Definitionen
SQL GROUP BY und HAVING
Relationale Algebra
Abitur: SQL JOIN Idee
SQL WHERE
Wiederholung: Tabelle Schlüssel
Entity-Relationship-Modell Kardinalitäten fürs Abi
Crea il tuo set di studio
Carica un PDF, incolla le tue note o descrivi un argomento – l'IA genera schede, quiz e altro in pochi secondi.

