כתיבת נתונים לקוביה באמצעות Excel 2010

By | 30 בדצמבר 2009

אחד החידושים הגדולים שהוצגו בגרסת 2008 של Analysis Services היה האפשרות לכתוב לקובית OLAP אשר שמורה כ- MOLAP. המשמעות הינה שגם קוביה אשר שומרת את הנתונים והאגרגציות בתוך מנוע ה- OLAP יכולה לקבל שינויים בנתונים מבחוץ (ולא דרך מנגנון העיבוד מחדש, Process). לעובדה זו ישנה משמעות גדולה מבחינת ביצועי הקוביה.

בשיטוט ברשת מצאתי אלפי אתרים המציינים תכונה חדשה זו של SSAS 2008 אך אף אתר המציין יישום שבוצע עם תכונה זו. הסיבה לכך פשוטה: כלי קצה לכתיבה אל תוך הקוביה הינם נדירים ושינוי קוביה באמצעות כתיבת סקריפט MDX אינו דבר קל מצד אחד, ולא שונה בהרבה משינוי בסיס הנתונים וביצוע עיבוד לקוביה.

גרסה 2010 של אקסל שינתה מציאות זו. עתה, ניתן לכתוב ישירות אל הקוביה מתוך אקסל, ללא התערבות כלשהי מצד אנשי מערכות המידע (פרט להגדרת הקוביה הראשונית כדי לאפשר לה שינויים). אקסל ביחד עם SQL 2008 הופכו במחי פיצ'ר לכלי תכנון. לכלי זה אין יכולת להחליף כלי תכנון ייעודיים דוגמת IBM TM1 או PowerOLAP אך הכיוון אליו צועדת מיקרוסופט ברור. את ההבדלים בין אפליקצית תכנון ייעודית לבין אקסל 2010 הציג דר' לירן אדליסט יחד איתי בכנס משתמשי ה- BI של מיקרוסופט .

לאחר הקדמה ארוכה יחסית ניגש לעניין.

 
 

תחילה יש להגדיר את קובית ה- OLAP או יותר נכון Measure Group  (קבוצת מדדים) מסויימת בתוך הקוביה תוכל לקבל שינויים מבחוץ (Write Back). הדרך הקלה ביותר לדעתי היא להתחבר אל AS באמצעות Management
Studio, לפתוח את תיקיית הקוביה המתאימה ומתחתיה את ה- Measures Group אותו רוצים לשנות.

   
 

יש ללחוץ עם כפתור עכבר ימני על קבוצת המדדים ולבחור לאפשר כתיבה (Write Back). בשלב הבא תדרשו לתת שם לטבלה חדשה בבסיס הנתונים על גבי SQL Server. טבלה זו תשמש על מנת לשמור את הערכים שירשמו לקוביה. לא נתייחס כעת להיבטים הטכניים אלא רק התפעוליים.

נבצע עיבוד לקוביה על ידי לחיצה עם כפתור ימני על הקוביה ובחירה ב- Process. נוכל לראות שבבסיס הנתונים נוצרה טבלה חדשה. יש לשים לב שה- User תחתיו פועל ה- Service של Analysis Services הינו בעל הרשאה מתאימה ליצירת טבלה חדשה בבסיס הנתונים אליו מקושר הקוביה לה ביצענו את השינוי.

הגענו לשלב המעניין: כתיבה מאקסל 2010 לקוביה. נפתח אקסל ונתחבר לקוביה.

נעמוד בתוך טבלת הציר וננווט לתא אשר הינו ברמה התחתונה ביותר של כל המיימדים. שימו לב לשים את כל המימדים שאינם על גבי הצירים באזור העמוד (Filter) של הטבלה ולבחור בכולם את הרמה התחתונה ביותר (Leaf).

את האפשרות לרשום בקוביה נצטרך לאפשר גם באקסל: בתפריט ה- Pivot Table נבחר ב- Option ובאמצעות כפתור What If Analysis נבחר ב- Enable What-If Analysis.

עתה ננסה לרשום משהו בתוך הטבלה. במקום הודעת השגיאה הרגילה, הטבלה פשוט השתנתה ויש בה ערך חדש המסומן בנקודה אדומה. כתיבת ערכים לקוביה לא בוצעה עדיין. טבלת הציר מאפשרת לעבוד עם הערכים החדשים ולכתוב אותם בפועל לקוביה רק לאחר בדיקות נוספות. הנקודה האדומה מבחינה בין ערכים שבאו בפועל מהקוביה לאלו שנרשמו רק מקומית (מהן Dirty Read). כתיבה בפועל לקוביה מבוצעת על ידי לחיצה שוב על הכפתור What-If Analysis ובחירה ב- Publish Changes.

כתיבת ערכים שאינם ברמה הנמוכה ביותר ופיזורם על פני הרמות הנמוכות יוצגו במאמר הבא.

  

Share

One thought on “כתיבת נתונים לקוביה באמצעות Excel 2010

  1. Pingback: כתיבת ערכים ל- SSAS 2008 באמצעות אקסל 2010 Excel Write back | BI and More

כתיבת תגובה

האימייל לא יוצג באתר.