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

אינדקס - Clustered Index

קורסים למנהלי רשת מסלול מנהלי רשת
עם התמחות בשרתי מיקרוסופט
מסלול סייבר והאקינג - 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
סיכום על אינדקס - Clustered Index

בשיעור זה לומדים על אינדקס מקובץ מסוג Clustered: סוקרים את רשימת האינדקסים של טבלת ההזמנות באובייקט אקספלורר ובודקים את מאפייני האינדקס של המפתח הראשי, מריצים שאילתא עם סינון לפי מפתח ורואים בתוכנית הביצוע פעולת seek מהירה וזולה על האינדקס המקובץ, מעתיקים את הטבלה לטבלה חדשה בלי אינדקסים ורואים שאותה שאילתא הופכת לסריקת טבלה יקרה פי יותר מחמישה, מודדים את הפער בקריאות הלוגיות בעזרת set statistics IO on, בונים על הטבלה החדשה אינדקס מקובץ ייחודי עם CREATE UNIQUE CLUSTERED INDEX, ומוודאים שאחרי הבנייה השאילתא חוזרת להתנהג בדיוק כמו על הטבלה המקורית.

נושאי הסיכום המוצגים בשיעור:
1. פתיחה וסקירת אינדקסים: פותחים את הקובץ index.sql שמתחיל בהערות על where Clause, Order by ו Join Condition ובהגדרות Selectivity ו Density, ומסיים בהערה "--- Clustered Index" שפותחת את הנושא של השיעור. באובייקט אקספלורר מרחיבים את תיקיית Indexes של טבלת ההזמנות Orders ורואים רשימת אינדקסים כמו CustomerID, OrderDate ו ShipPostalCode, וכולם מסומנים כלא ייחודיים ולא מקובצים.
2. מאפייני האינדקס של המפתח הראשי: פותחים את חלון "Index Properties - PK_Orders" על טבלת ההזמנות, ושם רואים ששם האינדקס הוא PK_Orders, סוג האינדקס הוא Clustered, האינדקס מסומן כ Unique, עמודת המפתח היא OrderID בסדר עולה מסוג int, ואפשרות הערכים הריקים אסורה. כלומר המפתח הראשי של הטבלה ממומש בפועל כאינדקס מקובץ ייחודי, ושורות הטבלה עצמן מאוחסנות מסודרות לפי המפתח.
3. הרצה על הטבלה המקורית: כותבים "select * from orders" עם הסינון "where orderid =10248", ומקבלים שורה אחת. בתוכנית הביצוע רואים פעולת seek על האינדקס המקובץ של הטבלה, עם אומדן של שורה אחת בלבד ועלות אופרטור זולה שהמרצה מסמן בהערה "--0.0032 Operator Cost". פעולת ה seek נשענת על האינדקס PK_Orders ומגיעה ישר אל השורה המבוקשת במקום לעבור על כל הטבלה.
4. העתקת הטבלה בלי אינדקסים: מעתיקים את הטבלה בעזרת "select * into TempOrders" ואז "from orders", ומתעדים את הפעולה בהערות "---select * into TempOrders" ו "-- from orders". ההעתקה מעבירה את כל 830 השורות אל טבלה חדשה שנוצרת אוטומטית בלי אינדקסים ובלי מפתח ראשי. אחר כך מריצים על הטבלה החדשה את "select * from temporders" עם אותו סינון "where orderid =10248", ובתוכנית הביצוע במקום פעולת seek מתקבלת פעולת "Table Scan" מלאה, עם אומדן של 211.8 שורות ועלות אופרטור שהמרצה מסמן בהערה "--0.018 Operator Cost", כלומר יקרה פי יותר מחמישה מההרצה על הטבלה המקורית.
5. מדידה עם set statistics IO on: מוסיפים בראש הסקריפט את הפקודה "set statistics IO on" שמדפיסה אחרי כל הרצה את סטטיסטיקת הקריאות של כל טבלה שהייתה מעורבת בה. ההרצה על טבלת ההזמנות מדווחת על scan count 0 ועל 2 קריאות לוגיות בלבד, והמרצה מסמן זאת בהערה "-- 2 Pages Read", ואילו ההרצה על הטבלה שהועתקה מדווחת על scan count 1 ועל 20 קריאות לוגיות, והמרצה מסמן זאת בהערה "-- 20 Pages Read". כלומר בלי האינדקס השרת קורא פי עשרה עמודים כדי למצוא שורה אחת.
6. יצירת אינדקס מקובץ ייחודי: לוחצים לחיצה ימנית על dbo.TempOrders, פותחים את תפריט האינדקסים ובוחרים ביצירת אינדקס חדש מסוג Clustered ומסומן כ Unique, עם השם "ClusteredIndex-TempOrders" ועל עמודת OrderID בסדר עולה. המרצה ממליץ בסרטון לבחור באינדקסים ייחודיים. מהחלון מייצרים סקריפט של פקודת היצירה, והוא "CREATE UNIQUE CLUSTERED INDEX [ClusteredIndex-TempOrders] ON [dbo].[TempOrders]" ואז בסוגריים "([OrderID] ASC)", וההרצה מסתיימת בהודעה "Command(s) completed successfully.".
7. התוצאה אחרי הבניית האינדקס: מריצים שוב את השאילתא על הטבלה החדשה, והסטטיסטיקה מדווחת עכשיו על scan count 0 ועל 2 קריאות לוגיות בלבד במקום 20, בדיוק כמו על הטבלה המקורית. בתוכנית הביצוע במקום סריקת הטבלה מתקבלת פעולת seek על האינדקס המקובץ החדש "ClusteredIndex-TempOrders", עם עלות אופרטור זולה כמו בטבלה המקורית ואחסון מסוג RowStore. מעניין שאומדן מספר השורות נשאר 211.8 גם אחרי הבניית האינדקס, כי הסטטיסטיקות של הטבלה עדיין לא עודכנו, אבל ההרצה בפועל מחזירה שורה אחת בלבד.

בסיום השיעור למדנו לזהות אינדקס מקובץ במאפייני המפתח הראשי של טבלה, לקרוא תוכנית ביצוע ולהבחין בין פעולת seek זולה לבין סריקת טבלה יקרה, למדוד את מספר הקריאות הלוגיות עם set statistics IO on, להעתיק טבלה עם select into ולקבל טבלה חדשה בלי אינדקסים, לבנות עליה אינדקס מקובץ ייחודי עם CREATE UNIQUE CLUSTERED INDEX, ולראות שהשאילתא על הטבלה החדשה דורשת 2 קריאות לוגיות בלבד במקום 20. השיעור הבא עוסק באינדקס - Non-clustered Index.SR929CIDX
סקר שוק נכון לתאריך – 01/09/2011

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

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


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

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


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

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


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

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



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

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

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


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