Wednesday, August 22, 2012

OBIEE - You should be mapping 2

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

9. הפעילו מחדש את כל רכיבי שרת הBI שסגרתם בסעיף 7.

10. ההמשך נעשה בתוך הדפדפן בOBIEE.

בחרו Administration.


Manage Map Data.


בשלב הבא יש להוסיף שכבות של מידע גאוגרפי.
נבחר לשונית Layers וכפתור Import Layers. 
 
אם עשיתם כל הכתוב עד עכשיו, יש לכם כמות מפחידה של שכבות אפשריות לייבוא. זה נובע ממיגוון הגדול של דוגמאות המוכנות שאורקל מספקת. בשביל ההתחלה אפשר להתמקד באילו המתחילות בOBIEE.למשל נוסיף שכבות של מדינה ועיר. 
נקבל:
עכשיו בא השלב בו מקשרים את השכבות עם המידע שלכם. בדוגמא שלי השתמשתי בנתוני ברירת המחדל המגיעים עם ההתקנת בסיס הנתונים אורקל בסכמת SH. שם יש שמות מדינות בטבלת countries.עומדים על השכבה הרלוונטית ובוחרים בEdit Layers:
לוחצים על הפלוס של BI Key Columns:
בוחרים Subject Area
ואת השדה הרלוונטי:
אפשר לחבר כאן מקורות מידע נוספים בOBIEE לאותה ההגדרה. 
ב Layer Key
יש דוגמאות שונות של איך המידע הגאוגרפי קיים כרגע בשכבה. למשל ברמת מדינה :
יש לדאוג שהמידע בטבלאות שלכם מתאים לפורמט זה ולקשר אותו לשדה הרלוונטי בsubject area הרלוונטי. אפשר לראות את פורמט הנתונים בSample Data. בדוגמה זו, אם תאור המדינה שלכם לא מתאים לנתוני טבלת המפות (United States לעומת United States of America למשל) המדינה הזו פשוט לא תעבוד על מפות.
מה חסר? המפות עצמן.
התחילו עם הלשונית Background Maps.
הפעילו את לחצן Import Background Map.
בחרו את המפה הרלוונטית לכם:
נשייך את השכבות לכל מפה:
נלחץ על עריכה במפה מסויימת, נלחץ על פלוס כדי להוסיף שכבות רלוונטיות ונסמן בקליק של עכבר, לאילו רמות פירוט כל שכבה רלוונטית.

כברירת מחדל יש 19 רמות פירוט כאשר 0 היא הכללית ביותר ו19 היא המפורטת ביותר (המרחק בקטן ביותר מעל כדור הארץ).


11.      עכשיו, בדוחות בהם נבחרו עמודות המשוייכות למידע גאוגרפי ניתן להוסיף גם אובייקט של מפה.(נרחיב על זה בפוסטים הבאים)

12.  כל זה טוב ויפה אבל אין לי ערים בישראל (חוץ מירושלים) בנתונים שקיבלתי מאורקל. איך נוסיף? בזמנכם הפנוי, אתם מוזמנים להשלים את טבלת הערים (OBIEE_CITY). בדוגמא הבאה, כל עיר מתווספת כנקודה בלבד ולא כפוליגון מסודר.
מה הדרך הפשוטה לקבל קווי אורך ורוחב של מקומות?  יש מאגרים רבים, אבל לשם הפתרון המהיר, פותחים Google maps, בוחרים מקום ולוחצים קליק ימני ו-What’s Here. אז מקבלים קווי אורך ורוחב למעלה. למשל תל אביב: 32.045915,34.768982 (שימו לב שבפונקציה בהמשך סדר המספרים הפוך). מריצים בבסיס נתונים אורקל, אחרי שמתחברים למשתמש obiee_navteq:

 
insert into OBIEE_CITY
select
'ISR',
'TEL-AVIV',
NULL,
MDSYS.SDO_GEOMETRY(
2001,
8307,
MDSYS.SDO_POINT_TYPE(34.768982, 32.045915,NULL),
NULL,
NULL),
'TEL_AVIV',
'XX',
NULL,
'Isr_Tel-Aviv',
'Isr_No State_Tel-Aviv',
'ISR_XX_Tel-Aviv' from dual ;

 
13. במידה ויש בעיות בייבוא של DMP בסעיף 6 מהסוג הבא: 
IMP-00017: following statement failed with ORACLE error 3252
...
...
IMP-00003: ORACLE error 3252 encountered
ORA-03252: initial extent size not enough for LOB segment

הפתרון הוא (תודה תמר נירנברג)
alter system set db_16k_cache_size=16k; ---(or other multiple of 16)
create tablespace
   ts_16k
datafile
'/YOU_DATA_FILE_LOCATION/oradata/bi_db/bi_db_ts_16k.dbf'
size
   100M
blocksize
   16k;
  ואז לעשות:
--drop the PARTITION table and re-create it in tablespace   ts_16k

  בשלב הבא לייבא את הנתונים בלבד.


 14. אם תשאלו את עצמכם, מהי הלשונית הנוספת ליד Background Maps, בשם Images... התשובה הוא:

       א. אלו אובייקטים גרפיים מיוחדים שניתן להוסיף למפה.

       ב. אני לא מתכנן לכסות את זה בקרוב אבל יש דוגמאות יפות בסביבת ההדגמות של אורקל.


15. במידה ויש בעיה עם כמות הנתונים במפה, ניתן לשלוט על הפרמטר בקובץ instanceconfig.xml:

<ServerInstance>
...
<SpatialMaps><LayerDataLayout><MaxRecords>1000</MaxRecords></LayerDataLayout></SpatialMaps>

 16. בבנית דוחות עם מפות חייבים להשתמש גם בעמודות שהוגדרו בlayers, כדי שנוכל לעבוד עם מפות.
 



Monday, August 20, 2012

OBIEE - You should be mapping, yeah

האמת, you should be dancing גם, אבל זה בבלוגים אחרים.

אני רוצה לכתוב כמה פוסטים על OBIEE 11 ומפות, לכבוד הכנס הדו-חודשי בנושא BI הקרוב, ב4 לספטמבר, באורקל, שבו אני מרצה על הנושא. בחלק הראשון אני רוצה לעשות קצת קניבליזם לפרסום שעשינו כאן ולהסביר איך לקנפג בצורה הפשוטה ביותר מפות בOBIEE 11.


מדריך זה הוא ארוך. זה נובע מכך שהוא מפורט מאד ומכיל הרבה צילומי מסך. לא להתיאש.
רוצים קיצור של הכל?
1. להגדיר את מקור נתוני המפות בmapviewer שמגיע עם ההתקנה.
2. להתקין נתוני מפות לבד או על סמך דוגמא מוכנה של אורקל בבסיס הנתונים.
3. להגדיר בOBIEE עצמו את השכבות השונות (שכבת הערים, שכבת המדינות...) ולקשר אותן לנתונים שלכם.
4. לקשר בOBIEE את המפות השונות לאותן שכבות.

בהמשך אני מרחיב:
בדוגמא שלי שם השרת הוא bdahab-il

1.      יש לי OBIEE 11 מותקן. במקרה שלי זה Simple Installation, לכן כל הכתובות פונות לPORT 7001. 
     במקרה של enterprise installation, זה לרוב 9704.
3.      לוחצים על מפתח הAdmin בפינה הימנית למעלה ומזינים משתמש וסיסמא של משתמש העל (Weblogic?).
4.      מתקבל מסך העבודה של mapViewer.
 
5.      אורקל הכינה מערכת בסיסית מוכנה לעבודה המבוססת על מפות של חברת NAVTEQ.
     לחלופין ניתן לעבודות עם מפות GOOGLE, BING ועוד.
6.      נתחיל עם הכיוון של navteq:
ניתן להוריד קבצי הדגמה של NAVTEQ NAVTEQ Data Bundle for OBIEE
הם נמצאים בעמוד ההדגמות תחת 11.1.1.3. 
אם הורדתם את ההדגמה של 11.1.1.5 באותו עמוד, אותם קבצי מפות נמצאים גם שם.
תקראו את ההנחיות של Sample 11.1.1.3 או המשיכו עם המתואר בהמשך.
צרו משתמש בבסיס הנתונים אורקל:
-- USER SQL
CREATE USER obiee_navteq IDENTIFIED BY obiee_navteq DEFAULT TABLESPACE USERS QUOTA UNLIMITED ON USERS ;

-- ROLES
GRANT "CONNECT" TO obiee_navteq;
GRANT "RESOURCE" TO obiee_navteq;
עכשיו הזמן לייבוא לבסיס הנתונים את קובץ הDMP שהורדתם:
בחלון מערכת ההפעלה: 
imp obiee_navteq/obiee_navteq@connectString file=obiee_navteq.dmp FULL=Y
 
אם זה לא עובד, הציצו בסעיף 13.
בנוסף התחברו לobiee_navteq בממשק SQL כלשהו והריצו:
insert into user_sdo_maps select * from my_maps;
insert into user_sdo_themes select * from my_themes;
insert into user_sdo_styles select * from my_styles;
insert into user_sdo_cached_maps select * from my_tile_cache; 
commit;
 
7.      וודאו כי חלק הBI  בשרת למטה 
     (או על ידי כניסה לEM והורדה של חלק הBI בלבד 
או על ידי הפעלה של חלק הweblogic בלבד בעלית הBI – בלי כל החלק של opmnctl).
לפעמים גם Mapviewer יורד כשמורידים את הBI. אז צריך להעלות אותו ידנית.

אנחנו כבר בmapviewer מסעיף 2. 
אם יצאתם תתחברו מחדש. 
הגיעו לconfiguration (ראו תמונה) 
החליפו את התכולה של <proxy_enabled_hosts> למשהו כמו:
http://localhost:7001/mapviewer,http://localhost:7001/,http://bdahab-il:7001/,http:// bdahab-il:7001/mapviewer
מזה:  

לזה:

כמו כן ודאו כי יש את הערכים הבאים:
<disable_direct_info_request>true</disable_direct_info_request>
<disable_info_request>true</disable_info_request>
<disable_csf>true</disable_csf>
<enforce_security_role>true</enforce_security_role>
מזה:

לזה:

לקראת סוף ההגדרות קיימת הגדרת Predefined Data Sources
החליפו את ההגדרה הקיימת ב:
<map_data_source name="OBIEE_NAVTEQ_Sample"
jdbc_host="10.229.147.238" (use your db ip)
jdbc_sid="orcl" (use your db sid)
jdbc_port="1521" (use your db port)
jdbc_user="obiee_navteq"
jdbc_password="!obiee_navteq" (use your selected password if different)
jdbc_mode="thin"
number_of_mappers="3"
allow_jdbc_theme_based_foi="false" 
/>
(למען הסר ספק, מחקו את הסוגריים ועשו מה שכתוב בהם כך שההגדרה תפנה לבסיס הנתונים האורקלי בו נמצאים נתוני המפות שלכם. )

מזה:

לזה:

שימו לב לצורה בה הסיסמא נכתבת (גרשים וסימן קריאה). לא לדאוג, אחרי השלב הבא הסיסמא תוצפן.
לחצו על Save&Restart שבתחתית הדף.
קבלו:
 כדי לבדוק שזה נכון, גשו לDatasources בתפריט משמאל וראו שנוספה שם שורה:
להמשך הבדיקה הציצו בManage Map Tile Layers,
בחרו בOBIEE_WORLD_MAP ולחצו על View map/ Manage tiles
שם לחצו על Show Map. עכשיו קצת סבלנות.

מהמם.
8.      עכשיו תגידו, כן אבל אני רוצה Google maps כי חשוב לי להגיע עד רמת הרחוב הבודד או מכל סיבה אחרת. אין בעיה, זאת אומרת יש אחת קטנה: השרת צריך להיות מחובר לאינטרנט.
     אז מה עושים?  תחת manage map tile Layers, בחרו Create. בסוג מקור בחרו Google Maps.
לחצו continue.
עכשיו יש הפתעה. בעבר היה צורך לפנות לGOOGLE, כדי לקבל KEY לכל אתר של OBIEE, בכתובת http://code.google.com/apis/maps/signup.html , מעכשיו, לא צריך. רק בחרו data Source ו-Submit.
 
רצוי לבדוק כמובן לבדוק שהמפה עובדת. כמו בסעיף הקודם:
Manage map tile layers
Manage
בחרו את המפה שלכם
View Map
Show Map

הפוסט הזה כבר ארוך מדי. נמשיך מסעיף 9 בפוסט הבא.
 

Monday, August 6, 2012

OBIEE 11.1.1.5 BP3 is available

עדכון מרכזי מספר 3 לגרסה 11.1.1.5 של OBIEE זמין באתר התמיכה (OBIEE 11.1.1.5.0 BP3). הוא מופיע כ-patch 13832750, וניתן להורדה חופשית באתר. 

בשלב זה הוא קיים רק עבור לינוקס וחלונות 64bit.
הוא יחליף את OBIEE 11.1.1.5 BP2.

מהצצה ראשונית, יש רשימה מכובדת של באגים מתוקנים.

OBIEE - נא לשמור על סדר ונקיון

זה קרה לי כבר פעם שניה.
בפעם הזאת שיניתי ערך של הגדרות יצוא לאקסל בOBIEE, לפי כל הכללים, ו... כלום. שום דבר. בדקתי שהשינוי נעשה, השרת אותחל מחדש והשינוי אכן מופיע בקובץ instanceconfig.xml. עדיין לא עובד. אז גיליתי במחיצה, בה יושב אותו קובץ קונפיגורציה, המון קבצי גיבויים. משהו בסגנון instanseconfig_backup.xml. כששיניתי את ההגדרות גם בקבצי הגיבוי... הכל התחיל לעבוד תקין.

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

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

מה למדנו מזה? שצריך, כמו בחיים לשמור על סדר וניקיון. 
לא להשאיר קבצי גיבוי ובמיוחד לא עם הסיומת המקורית, למשל XML במחיצות הרלוונטיות.
אגב, אילו גם המלצות רשמיות של תמיכת אורקל.

זכרו לא להשאיר גוויות בשטח.