Transcript
Page 1: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 1

Dataמחסני נתונים )Warehousing)

קורס מסדי נתונים

Page 2: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 2

מחסן נתוניםמחסן נתונים הוא מסד נתונים ענק המאחסן •

מידע היסטורידוגמא: שמירת המידע על כל הקניות של •

מוצרים בכל הסניפים של רשת סופרמרקטים

דוגמא: שמירת המידע על כל שיחות הטלפון •שנעשו בטלפונים של חברה מסוימת

Page 3: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 3

OLAP ו- OLTPשאילתות

Online Line Transactionהשאילתות עד כה הן •Processing (OLTP) כלומר הרבה שאילתות ,

קטנות שהתוצאה שלהן נדרשת באופן מיידי Online Lineסוג אחר של שאילתות הן שאילתות •

Analytical Processing (OLAP) שלרוב מופעלות על מחסני נתונים

בשאילתות שימוש רב בפונקציות הקבצה–אין צורך בתוצאות מיידיות–חישובי סטטיסטיקות על הנתונים כחלק מתמיכה –

בקבלת החלטות

Page 4: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 4

יצירת מחסן נתוניםנדרש צירוף נתונים ממקורות שונים•

נדרש שינוי בסכימה של הנתונים להתאמה –לסכימה אחידה

נדרשת התאמה ביחידות של הנתונים המאוחדים–לעיתים נדרשת תמיכה בעדכון נתונים שהשתנו•לעיתים נדרשת תמיכה בניקוי נתונים שהתיישנו• metadataנדרשת שמירת מידע על הנתונים )•

repositoryכדי לנהל את הנתונים )

Page 5: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 5

תכנון הטבלאות במחסן הנתוניםלרוב נעשה שימוש בסכימת כוכב:•

( שגדלה באופן קבועfact tableטבלת נתונים )–( קטנות dimension tablesטבלאות ממד )–

שלרוב נשארות קבועותלדוגמא:•

Sales(pid, timeid, locid, amount) Products(pid, pname, category, price)Locations(locid, city, start, country)Times(timeid, date, week, month, holiday_flag)

טבלת נתונים

טבלאות ממד

Page 6: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 6

צורות נורמליותBCNFטבלת נתונים בצורת •BCNFטבלאות ממד: לא בהכרח בצורת •

מיעוט פעולות הוספה, ביטול ועדכון ולכן –מיעוט בעיות של אי עקביות ואי סדירות

יחסית מעט מידע ולכן כפילויות אינן מהוות –בעיה

מאפשר חישוב יעיל של שאילתות משום –שהפירוק אינו דורש ביצוע פעולות צירוף טבעי

Page 7: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 7

(Data Miningכריית נתונים )

Page 8: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 8

כריית נתוניםכריית נתונים הוא תהליך של מציאת •

הקשרים מעניינים או תבניות במסדי נתונים גדולים לצורך תמיכה בקבלת החלטות

עתידיותכריית נתונים מאופיינת בניתוח מידע על •

גדולות מאודסמך קבוצות נתונים

Page 9: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 9

דוגמאותמציאת קישורים בין מוצרים שנקנים בחנות:•

דוגמת הבירה והחיתולים–החלטה על הנחה במוצר•קביעת רשימת הספרים המומלצים שיופיעו •

בסוף ספר מסויםכיצד לסווג לקוחות לצורך משלוח יעיל של •

עלוני פרסומת

Page 10: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 10

Data Mining vs. Machine Learning

מסד הנתונים מאוד גדול כמות הנתונים:•אז על האלגוריתמים להיות מותאמים לכך

: מסדי נתונים לרוב אינם מעוצבים עיצוב•למימוש כריית נתונים ולכן תכונותיהם לא

מתאימות לכריית נתונים: כמעט תמיד מסדי נתונים שגיאות ורעש•

מכילים שגיאות

Page 11: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 11

טכניקות כריית נתוניםקורס שעוסק בנושאטכניקה

Decision Treesמבוא לבינה מלאכותיתNeural Networks 1רשתות נוירונים ,

2רשתות נוירונים K-Nearest Neighborגיאומטריה חישוביתAssociation Rules

(Sequence Patterns, Classification Rules)

מסדי נתונים

Page 12: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 12

(Association Rulesחוקי קישור ) הוא אוסף של פריטים שנקנו בידי סל קניות•

לקוח יחיד בקניה יחידהזיהוי קבוצות של פריטים שנקנו יחדהבעיה: •מנסים לזהות חוקים מהצורה•

{pen } {ink}המשמעות: אם עט נרכש בקניה אז סביר

להניח שגם דיו נרכש בקניה

Page 13: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 13

טבלת רכישות לדוגמהtransiditem111pen111ink111diary111soap112pen112ink112diary

transiditem113pen113diary114pen114ink114soap114tissues

Page 14: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 14

מדדים לחוקי קישור כאשר LRצורה כללית של חוק קישור: •

L-ו Rהן קבוצות של פריטים LR(: התמיכה בחוק Support )תמיכה•

היא אחוז עסקאות הקניה שמכילות את כל R ומ-Lהפריטים מ-

(: הוודאות של חוק Cnfidence )וודאות•LR היא אחוז עסקאות הקניה שכוללות

L מבין העסקאות שכוללות את Rאת

Page 15: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 15

דוגמאות יש: }}ink{pen}לחוק•

תמיכה:–ודאות:–

יש}}ink{tissues }לחוק •תמיכה:–ודאות:–

יש }}soap{pen }לחוק•תמיכה:–ודאות:–

Page 16: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 16

אינטואיציה למדדיםאם לחוק תמיכה נמוכה יתכן שהוא נתגלה •

במקרה ואין מספיק עדויות כדי לבסס אותו יש וודאות נמוכה סביר LRאם לחוק •

R ורכישת Lלהניח שאין קשר בין רכישת יש להם LR ו-RL: החוקים הערה•

תמיכה זהה אבל עשויה להיות להם ודאות שונה

Page 17: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 17

המטרהמעונינים למצוא חוקי קישור בעלי תמיכה •

גבוהה וודאות גבוהה )בהתייחס למינימום תמיכה ומינימום ודאות הנתונים על ידי

המשתמש(

Page 18: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 18

אלגוריתם לחישוב, יש למצוא את כל חוקי c ו-sבהנתן ערכים •

ועם sהקישור עם תמיכה גדולה או שווה ל-cוודאות גדולה או שווה ל-

ניתן לבצע את החישוב בשני שלבים:•: מציאת קבוצות פריטים בעלות תדירות 1שלב •

(sגבוהה )קבוצות פריטים בעלות תמיכה <= , F: לכל קבוצה בעלת תדירות גבוהה 2שלב •

ובודקים L ול-R ל-Fעוברים על כל החלוקות של cיש וודאות <= LRאם לחוק

Page 19: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 19

מציאת קבוצות בעלות תדירות גבוהה

כיצד נעשה זאת?•?

Page 20: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 20

מציאת קבוצות בעלות תדירות גבוהה

כל : (The A Priori Propertyתכונה אפריורית )•תת קבוצה של קבוצה בעלת תדירות גבוהה היא

בעלת תדירות גבוההמהתכונה האפריורית מתקבל שניתן לייצר באופן •

איטרטיבי את הקבוצות בעלות התדירות הגבוהה:לוקחים קבוצות פריטים בעלות תדירות גבוהה שגודלן –

n לקבוצות בעלות nמרחיבים את הקבוצות בגודל –

n+1תדירות גבוהה בגודל

Page 21: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 21

מציאת קבוצות בעלות תדירות גבוהה

Freq = {}scan all transactions once and add to Freq the items that have

support > sk = 1repeat

foreach Ik in Freq with k itemsgenerate all itemsets Ik+1 with k+1 items,

such that Ik is contained in Ik+1 scan all transactions once and add to Freq the

k+1-itemsets that have support > sk++

until no new frequent itemsets are found

Page 22: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 22

דוגמא0.7מריצים את האלגוריתם עם תמיכה =

: מציאת קבוצות עם תדירות גבוהה:1שלב •{pen}, {ink}, {diary}

: בודקים את הקבוצות הבאות:2שלב •{pen, ink}, {pen, diary}, {pen, soap}, {pen, tissues}, {ink, diary}, {ink, soap}, {ink, tissues}, {diary, soap}, {diary, tissues}

הן:0.7הקבוצות עם תדירות <= {pen, ink}, {pen, diary}

Page 23: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 23

המשך דוגמא: בודקים כל אחת מהקבוצות:3שלב •

{pen, ink, diary}, {pen, ink, soap}, {pen, ink, tissues}, {pen, diary, soap}, {pen, diary, tissues}

0.7אין קבוצות עם תדירות <= מקבלים שקבוצות הפריטים עם התדירות הגבוהה הן:•

{pen}, {ink}, {diary}{pen, ink}, {pen, diary}

Page 24: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 24

עידון של האלגוריתם זו קבוצה {pen, tissues}באלגוריתם, נבדק האם •

בעלת תדירות גבוהה גם כאשר היה ידוע ש- {tissues}אינה קבוצה בעלת תדירות גבוהה

עידון: מרחיבים קבוצות פריטים בעלות תדירות •גבוהה רק על ידי פריטים כך שכל תת הקבוצות

אחרי ההרחבה יהיו קבוצות פריטים בעלות תדירות גבוהה

יתכן שטבלת הקניות לא נכנסת לזיכרון הראשי ואז •הסריקה תהיה יקרה

הפתרון: דוגמים את טבלת הקניות ומשתמשים בדגימה –בעלת גודל שתואם את הזיכרון הראשי במקום

להשתמש בטבלת הקניות עצמה

Page 25: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 25

גזירת חוקי קישורforeach frequent itemset I

foreach partition of I to two sets L, Rgenerate a candidate rule LR

foreach transaction T in the databaseforeach candidate rule LR

if L in T thenlnum(LR)++if R in T then rnum(LR)++

return all rules LR withrnum(LR)/lnum(LR) > c

Page 26: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 26

הכללת חוקי קישוררוצים לדעת האם בימי חמישי •

{milk}}bread{ באופן שונה מיתר ימי השבוע, כיצד נעשה זאת?

רוצים לדעת האם לקוחות מתל אביב •מתקיימים לגביהם אותם חוקי גרירה

שמתקיימים ללקוחות מירושלים

Page 27: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 27

סוגים אחרים של חוקים(Sequential Patternsתבניות סדרתיות )•

כל קניה עבור כל לקוח היא קבוצה של פריטים–סדרה של קניות היא סדרה של קבוצות פריטים– ,pen, ink, soap{ ,}pen, ink diary}לדוגמא: –

soap}תת סדרה נגזרת מסדרה על ידי –

מחיקת מספר קבוצות במלואן מהסדרה •מחיקת פריטים מקבוצות אחרות בסדרה•

Page 28: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 28

תבניות סדרה• {pen}, {ink, diary}, {pen, soap}

היא תת סדרה של•• {pen, ink}, {shirt}, {milk, ink, diary}, {soap, pen,

diary}

• {pen}, {ink, diary}, {pen, soap} אינה תת סדרה של•

• {pen, ink}, {shirt}, {soap, pen, diary}, {milk, ink, diary}

Page 29: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 29

תבניות סדרה היא אחוז סדרות הקניה Sהתמיכה בתבנית סדרה •

היא תת סדרה שלהןSשל הלקוחות ש-בעלת תמיכה גבוהה מעידה שמי s1, s2, ..., snסדרה •

בהמשך s2 בסבירות גבוהה יקנה את s1שקנה את וכן הלאה...

מציאת תבניות סדרה: •נעשה באופן דומה למציאת קבוצות פריטים בעלות –

תדירות גבוההמתחילים עם סדרות קטנות ומנסים להרחיב אותן–

Page 30: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 30

(Classification Rulesחוקי סיווג )נתונה טבלה:•

InsuranceInfo(custid:integer, age:integer, cartype:string, highrisk:boolean)

אם מעונינים למצוא חוקים מהסוג הבא: "•הגיל הוא בטווח מסוים והמכונית מסוג מסוים אז

"הלקוח הוא לקוח בסיכון גבוהניתן להפעיל את החוק על לקוחות חדשים •

שבאים לבטח את המכונית שלהם

Page 31: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 31

(Classification Rulesחוקי סיווג )צורה כללית:•

(l1< X1< h1 )and ... and (lk < Xk < hk)Y=c

לקביעת X1,...,Xk משתמשים בערכים עבור •Y

Page 32: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 32

מינוחים( נקבע בחוקdependent attribute )אטריביוט תלוי•( מופיעים predictor attribute )אטריביוט קובע•

בגוף החוקli<=Xi<=hi: אטריביוט מספרי•

Xi in {v1 …vj}: אטריביוט קטגורי•( – האטריביוט classification rules )חוקי סיווג•

התלוי הוא קטגורי( – האטריביוט regression rules )חוקי רגרסיה•

התלוי הוא מספרי

Page 33: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 33

דוגמא(18< age< 25) and (cartype in {Sports,Truck}) highrisk=true

Page 34: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 34

תמיכה וודאות היא אחוז C: תמיכה בתנאי תמיכה•

Cהרשומות שמספקות את היא התמיכה בתנאיC1C2התמיכה בחוק •

C1 and C2 היא אחוז C1C2: הודאות של חוק וודאות•

מבין הרשומות C2הרשומות שמספקות את C1שמספקות את

Page 35: מחסני נתונים ( Data Warehousing )

מסדי נתונים תשס"ג 35

עצי בחירה )עצי סיווג(Age

Car Type no

Yesno

<=25 >25

Sedan Sports, Truck

ניתן לייצר חוקי סיווגממסלולים משורש העץ

לעלה


Recommended