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