כיוונן של Oracle 12c הלכה למעשה - חלק ד - ilDBA Portal

כיוונן של Oracle 12c הלכה למעשה – חלק ד

12/02/2014 | פורסם על ידי

מאמר זה הוא מאמר רביעי בסדרת המאמרים "כוונון של oracle 12c – הלכה למעשה", והוא ידון בנושא Skewness. תזכורת למאמרים: חלק א, חלק ב, חלק ג.

Skewness

skewness הוא מספר גדול מאוד או קטן מאוד של התאמת פרדיקט של שאילתה מול עמודה בטבלה, באופן בלתי צפוי. נמחיש את המושג באופן הבא:

ראשית ניצור את הטבלה הבאה:

create table skewd_table(object_type) as select object_type from dba_objects;

הטבלה מכילה 91763 אובייקטים.

cmd_countFullTab

נוכל למצוא התפלגות של כל אובייקט באופן הבא:

select object_type, count(object_type) from skewd_table group by object_type order by count(object_type);

cmd_objStatistics

קיימים 5 אובייקטים מסוג DIMENSION.

select count(*) from skewd_table where object_type='DIMENSION';

cmd_countDimentions

 

אבל 4427 אובייקטים מסוג SYNONYM.

select count(*) from skewd_table where object_type='SYNONYM';

cmd_countSynonyms

נבנה היסטוגרמה עבור התפלגות הנתונים בטבלה הנ"ל. כל סל (bucket) יכיל טווח ערכים. במקרה הנוכחי סל יכיל את הערך של object_type. ההיסטוגרמה תראה כך:

histograma

נגדיר מידע שהוא skewed אם פרידקט מחזיר ערך שהוא גדול פי 10 מפרידקט אחר, כמו בדוגמה הנ"ל.

Skewness יכול לגרום בעיה עם ה- execution plan.

דוגמא: יש לנו טבלה של תנועות חשבון פר חברה (COMPANY_ID) וטבלה של חברות ((COMPANY_ID ו- COMPANY_NAME). אם נרצה לעשות סיכום של התנועות פר חברה, ה- Optimizer יבצע Cartesian Join עבור חברות עם מספר תנועות בודד. אבל אם הוא יבצע Cartesian Join מול חברות עם מיליוני תנועות תהיה ירידה חדה בביצועים.

הפתרונות הם: מחיקה\עדכון של היסטוגרמות, שימוש ב- Oracle 11g) Adaptive Cursor Sharing) או שינוי השאילתה. וזה מוביל אותנו לנושא הבא של היסטוגרמות.

The following two tabs change content below.

דוד יצחק

דוד יצחק , DBA אפליקטיבי ותשתיתי של SQL Server, Oracle ,Sybase Anywhere מזה 17 שנה עם התמחות בשיפור ביצועים, שרידות, זמינות גבוהה, רפלקציה, תוספים גיאוגרפיים, אבטחת מידע ו-Business Intelligence. הוא מרכז את פורום DBA צפון של ilOUG ומרצה בפורום משתמשי SQL Server.

תגובה אחת ל- “כיוונן של Oracle 12c הלכה למעשה – חלק ד”

ד יצחק DBA | 17/02/2014 בשעה 13:30
commenter

Oracle & IlOUG DBA North Forum 11.3.2014
שלום לכולם !
בהמשך לסידרה הזו
מוזמנים לכנס הבא של Oracle & ilOUG DBA North Forum .

כמו בכנסים הקודמים רוב החומר ייחודי לפורום שלנו והכי חשוב מעשי . תמצית הרצאות הכנסים ראיתם באתר הנוכחי בסדרת מאמרים על Oracle 12C . הרבה לפני כולם . חומר מעשי וייחודי .

רוצים לטעום עוד ..

http://www.iloug.org.il/Event_Page.php?EventID=187&BannID=330

בברכה,
ד יצחק ,
מנהל פורום DBA צפון

השאר תגובה:

שם (חובה):
אימייל (לא יפורסם) (חובה):
תגובה (חובה):

*



מאמרים קשורים

איך לבצע Sizing DB ב-Datacenter בארגונך בקלות (חלק א')

כחלק מהטמעות מוצרי IT תשתיתיים (כגון FWDB, מוצרי גיבוי, חוות Storage, מוצרי שו"ב ועוד…) בארגוני, אנו נדרשים המון פעמים לענות על שאלות לספקים כגון : מה גודל הכולל של ה –  Datacenter  ? מה חלוקת גודל ה [...]
מבוא

מבוא לבעיות ביצועים באורקל

The following two tabs change content below.BioLatest Posts עודד רז עודד רז, מנכ"ל חברת בריליקס ומייסד אתר זה. עודד הוא Oracle ACE Director ואחד מה-DBA-ים הבכירים ביותר בישראל, עם מעל 15 שנות ניסיון כ-DBA תשתיתי ואפליקטיבי. לעודד [...]

ה-SQL Performance Analyzer ב-Real Application Testing

בפוסט הקודם הזכרתי בקצרה את ה-SQL Performance Analyzer, בפוסט הזה אני אציג את ה-SPA, יתרונות וחסרונות של המוצר ואיך כדאי להשתמש [...]

מבוא ל- Real Application Testing

הפעם רציתי לסקור feature שלם שנקרא RAT (או בשמו המלא Real Application Testing). ה- feature הזה הוא database option של Oracle Enterprise Edition והוא לא חדש בכלל. הוא הוצג ב- 11gR1 וגם נמצא בשימוש לא מועט בעולם. משום מה, אצלנו בארץ לא יוצא [...]
Copyright 2019 ilDBA Portal. Brought to you by Brillix - Israel Leading DBA company. Sponsored by: DBSnaps - Database Video Tutorialss
Website Security Test
%d בלוגרים אהבו את זה: