Menu
עברית Русский
מכללת פרקטיקיו
- מתחילים ללמוד חינם -
קורסי תכנות / סייבר / ניהול רשת

Transaction Isolation Level

קורסים למנהלי רשת מסלול מנהלי רשת
עם התמחות בשרתי מיקרוסופט
מסלול סייבר והאקינג - Hacking מסלול תקשורת ואבטחת מידע
Cisco CCNA & FortiGate & Checkpoint
מומחה ווירטואליזציה
VMware & Hyper-V
מסלול לינוקס ו-DevOps מומחה ענן של אמזון - AWS מומחה ענן של מיקרוסופט - Azure מומחה ענן של גוגל - GCP מומחה שרתי SCCM - System Center
של מיקרוסופט לארגונים גדולים
קורסי תכנות מסלול Full Stack דוט-נט
יסודות התכנות
מסלול Full Stack דוט-נט
צד שרת - Backend
מסלול Full Stack דוט-נט
צד לקוח - Frontend
מסלול Full Stack Node.JS קורסי תכנות נוספים
Java / Python / PHP
מפתח אפליקציות - אנדרואיד - אייפון מפתח משחקי מחשב - Unity מפתח תוכנות לוונדוס - WinForms מסלול DBA - דטה אנליסט
התמחות במסדי נתונים – SQL
בדיקות תוכנה - QA בדיקות תוכנה - QA - אוטומציה בדיקות תוכנה - QA - בדיקות ידניות בדיקות תוכנה - QA - קורסים נוספים המלצות תלמידים על PracticU
סיכום על Transaction Isolation Level - IsolationLevel

מעמיקים את נושא הטרנזקציות ועוברים לרמות הבידוד: רואים מה קורה כששני חלונות שאילתה פועלים במקביל, מכירים את תופעות הקריאה dirty reads, non-repeatable reads ו phantoms, ובודקים בפועל את ארבע רמות הבידוד של SQL Server ואת השפעתן על הנעילות.
נושאי הסיכום המוצגים בשיעור:
1. פתיחה בתיאוריה: בדפדפן פתוח הערך Isolation (database systems) בוויקיפדיה, ובו המקטע Isolation Levels, Read Phenomena and Locks, הכולל שתי טבלאות תיאוריה: טבלה שמציגה אילו תופעות קריאה עלולות להופיע בכל רמת בידוד, וטבלה שמציגה אילו נעילות נרכשות בכל רמה. בהמשך העמוד מוסבר בהחמרה של Serializable שורות בטווח מסוים ננעלות עד סיום הטרנזקציה, בעוד שב REPEATABLE READ הטווח אינו ננעל והרשומה מוכנסת.
2. הרצה חוזרת של התרחיש: ב SQL Server Management Studio מול השרת 192.168.131.13 במסד הנתונים test מריצים שוב את סקריפט ההעברה מהשיעור הקודם: קריאה רגילה מציגה יתרות 1000 ו 100, והרצה עטופה בטרנזקציה מציגה בתוכה, אחרי העדכון הראשון, יתרה 0 לחשבון השני בזמן שהטרנזקציה עדיין פעילה.
3. הדגמת חסימה: פותחים חלון שאילתה שני ומריצים בו קריאה פשוטה של הטבלה. השאילתה נתקעת במצב Executing query ואינה מחזירה אף שורה, כי הטרנזקציה הפעילה מחזיקה נעילה על השורה שעודכנה. ההמתנה נמשכת דקות ארוכות עד שמבטלים את ההרצה באופן ידני.
4. טבלאות הוויקיפדיה: הטבלה Isolation Levels vs Read Phenomena סוקרת לכל רמת בידוד שלוש תופעות: Dirty reads, Non-repeatable reads ו Phantoms. ב Read Uncommitted כל שלוש התופעות עלולות להתרחש (may occur), ב Read Committed רק שתי האחרונות, ב Repeatable Read רק phantoms, וב Anomaly Serializable אף תופעה לא מופיעה. מתחת לטבלה מוסבר ש may occur פירושו שרמת הבידוד סובלת מהתופעה ושהמינוס פירושו שאינה סובלת ממנה, וגם ש Anomaly Serializable אינו זהה ל Serializable. הטבלה השנייה, Isolation Levels vs Locks, מציגה את סוגי הנעילות: ב Read Uncommitted אין נעילות, ב Read Committed נעילת כתיבה X ונעילת קריאה S, ב Repeatable Read שתיהן, וב Serializable נוספת גם נעילת טווח Range Lock. הערות השוליים מסבירות ש X היא exclusive lock הנשמרת עד סוף הטרנזקציה, ש S היא shared lock שאינו יכול להירכש על רשומה שעודכנה בטרנזקציה אחרת שטרם אושרה, ושקריאות SELECT ברמת Read Committed רוכשות נעילת קריאה אך משחררות אותה מיד לאחר הקריאה.
5. תיעוד MSDN: חיפוש בגוגל אחרי ביטויים בנושא רמות בידוד מוביל לעמוד SET TRANSACTION ISOLATION LEVEL בתיעוד של SQL Server 2000, המסביר שהפקודה קובעת את התנהגות הנעילה עבור הקריאות של החיבור, ומציג בתחביר את ארבע הרמות: READ COMMITTED, READ UNCOMMITTED, REPEATABLE READ ו SERIALIZABLE. READ COMMITTED מתוארת כברירת המחדל של SQL Server, READ UNCOMMITTED מממשת קריאה מלוכלכת בשם isolation level 0, שקולה ל NOLOCK והיא הפחות מגבילה, REPEATABLE READ נועלת את הנתונים בשימוש אך מאפשרת הכנסת שורות phantom חדשות, ו SERIALIZABLE מציבה range lock והיא המגבילה ביותר מבין הארבע.
6. דמו קריאה מלוכלכת: בחלון השני מקלידים מעל הקריאה את השורה SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED ומריצים. הקריאה חוזרת מיד גם בזמן שהטרנזקציה בחלון הראשון עדיין פעילה, ומציגה את המצב שבתוכה: 1000 ל PracticU ו 0 לחשבון השני, כלומר נתון שטרם אושר ועלול להשתנות או להתבטל.
7. READ COMMITTED וחזרה לחסימה: מחליפים ל SET TRANSACTION ISOLATION LEVEL READ COMMITTED ומריצים שוב. הקריאה בחלון השני נחסמת עד שהטרנזקציה מסתיימת, ורק אז מוצג המצב המאושר. הרצות חוזרות ונשנות של הסקריפט מדגימות שכל הרצה מורידה את יתרת החשבון השני ב 100 נוספים עד שהיא מגיעה למינוס 100, בעוד יתרת PracticU מטפסת ל 1200 ואף ל 1300.
8. REPEATABLE READ ו SERIALIZABLE: מחליפים ל SET TRANSACTION ISOLATION LEVEL REPEATABLE READ, מוסיפים קריאה שנייה בתוך הטרנזקציה, ומריצים מחלון שלישי פקודת הכנסה של שורה חדשה עם יתרה 500. ההכנסה עוברת מיד ומאשרת שברמה זו מותרת תופעת ה phantom. עוברים ל SET TRANSACTION ISOLATION LEVEL SERIALIZABLE ומריצים הכנסה נוספת של שורה עם יתרה 700: הפעם הפקודה נתקעת במצב Executing query עד שהטרנזקציה מסתיימת, ואז מושלמת, והקריאה שבחלון הראשון מציגה ארבע שורות: 1400 ל PracticU, מינוס 100, 500 ו 700. בסיום חוזרים לטבלאות הוויקיפדיה ועוקבים אחרי הקישורים של כל רמות הבידוד בתוך הטבלה: Read Uncommitted, Read Committed, Repeatable Read ו Serializable.

בסיום השיעור ראינו כיצד רמות הבידוד שולטות באינטראקציה בין שני חיבורים במקביל: ראינו חסימה של קריאה מול טרנזקציה פעילה, הכרנו את טבלאות תופעות הקריאה והנעילות, ובדקנו בפועל את כל ארבע הרמות מ READ UNCOMMITTED שחשפה קריאה מלוכלכת ועד SERIALIZABLE שחסמה הכנסת שורה עד סיום הטרנזקציה. השיעור הבא עוסק ב מאפייני טרנזקציה - ACID.SR999IL
סקר שוק נכון לתאריך – 01/09/2011

הסבר קצר על שיטת הלימוד אונליין

צילמנו בסרטונים את כל ההרצאות של הקורס, כי ללמוד בכיתה לא נוח וגם יקר.
קורס בכיתה עולה מעל מ-17 אלף ₪ ואצלנו בסרטונים רק 350 ש"ח לחודש.
אם משהו לא ברור בסרטון תמיד אפשר להתקשר למרצה ולדבר איתו ישירות בטלפון.
המרצה זמין גם בווטסאפ וגם בצ'אט באתר המכללה.


חשוב לציין שבסוף כל התלמידים, מכל המכללות, כולם ביחד ניגשים לאותה בחינה חיצונית של סיסקו / מיקרוסופט / לינוקס ומקבלים בדיוק אותה תעודה.
את החברות הגדולות האלו בכלל לא מעניין איפה ואיך למדת וכמה שילמת על הלימודים.
יש מבחן אחיד לכולם, המתבצע במרכז בחינות מורשה של חברת Pearson VUE. הם עושים את הבחינות בפועל עבור החברות הגדולות בשוק.
כל שבוע יש מבחן ומי שעובר אותו מקבל תעודת הסמכה בינלאומית.

לסיכום: יש מרכז בחינות מורשה בתל-אביב, שכולם מגיעים אליו מכל הארץ ועושים שם מבחני הסמכה הבינלאומיים ומי שעובר את המבחן מקבל את התעודה ולא חשוב להם איפה ואיך למדת.


מה לעשות אם לא מבינים משהו בסרט?

פשוט מאוד, מתקשרים למכללה ומדברים ישירות עם המרצה. אפשר גם להתכתב עם המרצה במייל או בווטסאפ או בצ'אט באתר.


האם יש לכם כיתות לימוד רגילות?

להשכיר כיתה + לשלם משכורת למרצה = 17 אלף ש"ח עלות הקורס לתלמיד.
אצלנו בסרטונים מקבלים אותו חומר לימוד
ואפילו יותר, כי אין מגבלה של זמן למרצה (כמו שיש בכיתה),
בנוסף מקבלים בדיוק אותה תעודה בינלאומית,
כי מבחן הוא מבחן אחיד לכולם המתבצע במרכז בחינות מורשה
והכי חשוב שמקבלים את אותם המרצים, שמלמדים בכיתה רגילה,
רק שצילמנו אותם בסרטונים
והמחיר בסרטונים רק 350 ש"ח ולא 17 אלף כמו בכיתה רגילה.



קיימים במכללה שני מסלולי לימוד:
  1. מסלול לימוד חופשי, בלי תעודה, להעשרת ידע כללי.
    מסלול לימוד חופשי, מתאים בעיקר למי שעובד בתחום וכבר יש לו תעודות והוא לא רוצה עוד מבחנים ותעודות.

  2. מסלול עם תעודה - מתאים בעיקר לתלמידים חדשים המעוניינים בקורס מסודר,
    הכולל הגשת עבודות ופרוייקט גמר. מסלול זה מעניק בסיומו תעודת מקצוע בינלאומית.
    למעשה ההבדל היחיד בין שני המסלולים זה פרויקט גמר בסוף.
    אם מגישים את פרויקט גמר - מקבלים תעודה.
    בדיקת פרויקט גמר והנפקת תעודה כרוכים בתשלום נוסף, כפי שכתוב בדף ההרשמה.

בסיום קורס ניתן לקבל תעודות הבאות:
1. תעודה של המכללה - מותנה בהגשת פרוייקט גמר בסוף הקורס
2. תעודת הסמכה בינלאומית של מיקרוסופט העולמית - מותנה במעבר מוצלח של מבחן הסמכה חיצוני של מיקרוסופט (מבחן זה מתבצע כל שבוע במרכז בחינות מורשה בתל-אביב)


מידע כללי:
1. חומר הלימוד מורכב ממאגר עצום ומסודר מאוד של סרטים מקצועיים, הניתנים לצפיה מהבית. מאגר זה כולל הרצאות מוקלטות בעברית בצורה מסודרת ע"י המרצים הטובים ביותר. רשימת הסרטים המלאה נמצאת בתפריט בצד ימין.
2. כל סטודנט במכללה מקבל שם וסיסמה לצורך גישה לשרת הקבצים שלנו.
השרת מכיל את כל התוכנות הדרושות ללימוד וכן חומר עזר
3. הקורסים מועברים בהתאם לסילבוסים של החברות המובילות: Microsoft, Cisco