› פורומים › אפיון ופיתוח פריוריטי › טבלת המשך פרטית
- This topic has 3 תגובות, 4 משתתפים, and was last updated לפני 3 שנים, 3 חודשים by babun.
- Post
- Replies
-
- אוגוסט 16, 2021 בשעה 9:50 am
באופן תיאורטי, המיקום (טבלה רגילה או טבלת המשך) של שדה תלוי באחוז הרשומות שיהיה להן ערך בשדה הזה. אם לרוב השדות יהיה ערך, אזי עדיף להוסיף את השדה לטבלה הרגילה, אך אם רק למעט רשומות יהיה ערך, עדיף להוסיף את השדה לטבלת המשך: כך תחסכו מקום במסד הנתונים.למען האמת, אני רואה רק חסרונות בשימוש טבלאות המשך – צריך להוסיף קוד למסך לטפל בטבלה ובדוחות צריך להשתמש בחיבור מותנה כי לא ניתן לדעת אם יש רשומה מקבילה בטבלת ההמשך.
אני לא מבין למה הגדירו טבלאות כמו ORDERSA אם תמיד יהיה ערך בטבלת ההמשך. מבחינתי לא משנה אם מדובר בטבלה סטנדרטית או פרטית.
- אוגוסט 16, 2021 בשעה 7:53 pm
בתגובה גם לנעםבאופן כללי לא רוצים שטבלה תהיה גדולה מדי
כשקוראים מטבלה צריכים לקרוא או לפחות לעבור על כל הרוחב של השורה (כדי להגיע לרשומה הבאה, וזה לפחות כשקוראים באופן פשוט ועושים table scan ולא קופצים לרשומה ספציפית, אבל גם אז צריכים להגיע לעמודה ובדרך לעבור עמודות אחרות). גודל הטבלה משפיע על כמות ה-I/O שנדרש לבצע שאילתא.
אם יהיו עמודות שצריכים אותן רק לעיתים רחוקות אז אם שמים אותן בטבלת המשך אז אפשר לחסוך ע"י דילוג על הטבלה בלבד.
מה שנעם כותב לגבי חסכון קשור בעיקר לדעתי להאם היה צורך ליצור רשומה בכלל בטבלת ההמשך. במקרים בהם אנחנו מוסיפים רשומה בטבלת ההמשך עבור כל רשומה בטבלה העיקרית אז זה פחות רלוונטי.
אני רואה ערך מהסיבות שנעם הזכיר אם מדובר בטבלת המשך פרטית מיוחד כשאנחנו יודעים שנכניס רשומות רק עבור חלק מהרשומות במקור. או אולי לפי סוג הרשומה. לזה יש דוגמה בסטנדרטי – DOCPROJ היא בעצם טבלת המשך ל-DOCUMENTS אבל מנהלים בה רשומות רק עבור פרויקטים ולא צריכים את העמודות האלה על כל הרשומות כולל אלה של תעודות מלאי בהן העמודות כלל לא רלוונטיות.
[ בבקשה לא לשלוח הודעות פרטיות במערכת - אני לא קורא אותן ]- אוגוסט 18, 2021 בשעה 7:44 pm
<i>היי</i><i>בהמשך לדברי המלומדים אציין שהסיבה לטבלאות המשך היא היסטורית,</i>
מזמן שפריוריטי עבדה עם בסיס נתונים tabula ושם הייתה מגבלה על מספר העמודות.
כיום אני לא רואה סיבה לטבלת המשך למעט מקרה בו באמת לרוב הרשומות אין ערכים..
ובעיקר כי כאמור הוספת טבלת המשך דורשת התייחסות בטריגרים וזה פתח מיותר לצרות.
לגבי הביצועים, לעניות דעתי זה מינורי אם בכלל, ב sql ו oracle.
(אגב שמעתי שיש שיקול נוסף די נדיר להוסיף טבלת המשך לטבלה שיש בה הרבה מאד מאד רשומות (במונחי חברות ענק), ויש משמעות לקיצור זמן הרצת השדרוג, כי הוספת העמודה עצמה בכאלה סביבות יכולה לקחת זמן רב – לא היה איך לאמת את זה..)
בהצלחה
<i> </i>
<i> </i>
<i> </i>
<i> </i>
<i> </i>
- יש להתחבר למערכת על מנת להגיב.