אופטימיזציה של JOIN

eyalst

New member
אופטימיזציה של JOIN

היי מחפש חומר על אופטימיזציה של פעולת JOIN. הכוונה לצורות מימוש שונות של ביצוע הפעולה עצמה.
 

גרי רשף

New member
לא ברור לי למה אתה מצפה..../images/Emo22.gif

מה שאני יכול לומר לך מידע ומנסיון אישיים: 1. רצוי שצד ה-1 יהיה מפתח ראשי וצד ה-N יהיה עם אינדקס. 2. בהמשך ל-1- רצוי שבשני הצדדים יהיו מספרים ולא טקסטים. 3. פעולת Join יעילה יותר מפעולת Where ...In המבצעת אותו חיתוך. 4. יש לשאוף שבסיס הנתונים יהיה מנורמל ככל האפשר, אלא אם כן זה מחייב אותך לבצע יותר מ- 3-4 פעולות Join בטור, ואז יש לשקול ויתור על הנרמול לטובת יעול המערכת. מכיוון שיש כאן מן הסתם מנוסים יותר ממני- אשמח לקבל הסתייגויות, הרחבות ותוספות!
 

eyalst

New member
JOIN

תודה, אך לא לכך התכוונתי. אני מחפש חומר על אלגוריתמים שונים המממשים את הפעולה עצמה.
 

eli_leiba

New member
ל SQL SERVER יש 3 סוגי אלגוריתמים

למימוש join nested Loop Merge Join Hash Join ניתן למצוא חומר ברשת על כל אלגוריתם , כל אחד יעיל למצבים מסויימים של נתונים ואינדקסים Nested loop עפ"י רוב יתקיים בין טבלת בן מאוד גדולה לטבלת אב מאוד קטנה Merge Join לרוב יתקיים כאשר קיים יחס Master Detail בין טבלת האב לבנים ואין הפרש גדול בגודלם Hash כאשר אין מספיק אינדקסים טובים על הטבלאות בד"כ מקווה שעזרתי אלי
 
למעלה