570 likes | 736 Views
Magnify Search. Building Search Based Applications. Adam Lotrowski. a quick start guide. Agenda. Magnify Introduction Search Interface Overview Transforming Raw Data into Search Content Magnify Indexing Maintenance Organizing Magnify Search Libraries Additional Learning Material
E N D
Magnify Search Building Search Based Applications Adam Lotrowski a quick start guide
Agenda • Magnify Introduction • Search Interface Overview • Transforming Raw Data into Search Content • Magnify Indexing Maintenance • Organizing Magnify Search Libraries • Additional Learning Material • Getting Magnify Help
Single Access Point to all Applications and Databases Anyone Single Point of Information Access Business Analysts Multiple Application Interfaces IT Mainframe Servers Forms Reports Documents Images Multi Media Databases
Requirements for Successful Implementation Connect to 300 data sources; capture document changes in real time; merge documents; and more… Integration Use metadata to classify documents, to increase the find-ability, and to render dynamically search filters… Metadata Simple search box, powerful guided navigation, interactive tabular view, multi-drill to additional information… GUI World class Business Intelligence engine that allows you to ask and answer questions additional questions of the searchable content… BI Security Robust security for any data source, including row and column level security for structured sources; integration with other enterprise level security systems…
How Does Magnify Work? • The Magnify Process • Capture content in real time as information is added or edited. • Catalog content with a search engine index using tags to categorize, secure, rank and present results stored. • Cost effective and highly scalable solution leveraging open source Lucene. • Business intelligence reports presenting various ways to view found content. • Clustered indexes keep search within one application as more information becomes available. Transform Content into Searchable Information Enterprise Content Search Request Magnify Results Report Request WF Report
Leverage the Power of Search & Business Intelligence Information Inquiries • Search for customer account • Search for vendor transaction • Get account balances • Get all transactions exceeding $ X.xx • Leverage the strengths of each technology • Leverage hardware and software • Simplify development, maintenance & deployment • Offer better and more complete user experience
Search Interface Overview Reference: Magnify’s End User Manual: http://documentation.informationbuilders.com/masterindex/html/html_wf_7703/wf77maggs/wf77maggs.pdf
What is a search result? 1 2 3 4 5
Analytics with BI Search: Example Search for an inventory item in large repositories across many systems Narrow down the matches by using suggestions from the faceted navigation Click to convert the results to an Active Report to perform further analysis
Analytics with BI Search: Example You can now pivot the results to find the item that has the highest cost Then you can click on the item to generate any type of report Or you can switch back to search results and run any report on any item
Analytics with BI Search: Example Drill down to any report with relevant information for the item of interest Guided ad hoc and predictive analytics Detailed product documents Inventory, sales, and other reports
Magnify Search Tips • Exact Match: Use double quotation marks to search for two or more keywords that must appear together: "Magnify CentSales" • Inclusion: Use a + (plus sign) in front of keywords that must appear in the search results. To search for results that must contain "plasma" and may contain "TV" use the query: TV +plasma • Exclusion: Use a - (minus sign) in front of keywords you want to exclude from your search. To search for results that contain "stores" but not "united states" use the query: stores –"United States" • Boolean: Use logical operators such as OR, AND, and NOT (case sensitive) to link groups of terms together for a more powerful search. To search for results that contain "music teachers" or both "MP3" and "VHS", but not "New York" use the query: ("music teachers" OR (MP3 AND VHS)) NOT "New York" • Wildcard: Use a * (asterisk sign) or ? (question mark) anywhere in a keyword to expand your search. To perform a single character wildcard search use the "?" symbol. To perform a multiple character wildcard search use the "*" symbol. The single character wildcard search looks for terms that match that with the single character replaced. Multiple character wildcard searches looks for 0 or more characters: D?D or D*D
Transform Raw Data Into Search Content Reference: Magnify Developer’s Guide: http://documentation.informationbuilders.com/masterindex/html/html_wf_7703/wf77magdev/wf77magdev.pdf
Magnify: Quick Feed • Challenge • Building Search Based Applications (SBA) required specialized skills • Not many people have this skill • Realization: Building Search Based Applications is no different than building WebFOCUS reports • Magnify category fields equal BY fields • Searchable content equal PRINT fields • Search result links equal DEFINE fields with Drill Downs • New Feature: FORMAT MAGNIFY for quick feeds • Create a report in Developer Studio • Change format to Magnify ….. AND YOU ARE DONE!
Magnify: Getting Started • Steps to setup search • Review the data and build context BY JOINing common relationships • Identify high-level groups and designate searchable data • Enhance and enrich the data with drill downs and security • Aggregate data BY merging multiple rows into a single search result • Configure the feed and index with Magnify • Schedule feeds for full search life cycle • Immediate Benefits • Discover information with categorizations • Search across tables and rows • Associate search content with BI reporting
Course Example: Setup • Open Developer Studio • Create project for ibisamp • OR • Navigate to Data Servers > EDASERVE > Applications > ibisamp • Create Procedure to Review Content • Create a procedure named courses_all in Procedure Viewer • In Procedure Viewer, add a Report object and select the course.mas file • In Report Painter double click on CRSELIST segment to add all fields to the report canvas (or double-click on each field individually) • Save and Run • Close procedure
Identify Categories and Searchable Content Categories
Identify Categories and Searchable Content Categories
Identify Categories and Searchable Content Searchable Content
Course Example: Generate Search Result Metadata • Create a Procedure to Transform the Content – Part 1 • Create new procedure named courses_transformin Procedure Viewer • In Procedure Viewer, add a DEFINE object selecting the course.mas file • Add the Defined fields:
Course Example: Define Transformations • Create a Procedure to Transform the Content – Part 2 • Create a Report Object, selecting the course.mas file • Add the Fields and Set the Column Title as: • Required: SearchTitle, MagnifyID, and WF_INDEX_UNIQUE_KEY • Always Recommended: Categories, Magnify Meta Tags, and Searchable Content • Save, Run an the Close
Enhance And Enrich The Content Enhanced Title Unique IDs Categorizations Title Drill Down Link
Enhance And Enrich The Content Additional Drill Down Links Searchable Content
Course Example: Connect to Magnify • Create a FORMAT Magnify Procedure – Part 1 • Copy and paste the procedure: courses_transform.fex • Rename the new procedure to: courses_magnify.fex • Right-click on courses_magnify.fex select Edit in Associated Tool • Before the DEFINE object, add the below ENGINE objects: • Required: Connection Setting, BASEURL, DATASOURCE • Always Recommended: BATCHSIZE
Course Example: FORMAT MAGNIFY • Create a FORMAT Magnify Procedure – Part 2 • After the ENGINE objects, add the SET object • Used Settings: ASNAMES • Current Value: MIXED • Save • Open the Report Object and Change the Format Type • Click Options • Select Output Format • Expand Unstyled Formats • Select Format Magnify (MAGNIFY) • Click Apply, OK • Save, Run, and Close
Course Example: Drill Downs • Create Drill Down Reports for Course • Create Course Detail Report • Copy courses_all, paste and rename to courses_detail • Add WHERE COURSECODE EQ ‘&FXK’; • Change Output to FORMAT AHTML • Create Similar Course Report • Copy courses_detail , paste and rename to courses_similar • Edit WHERE to use field CLASSIF EQ ‘&FXK’;
Course Example: Next Context Library • Create New Index Library • Copy courses_magnify.fex, paste and rename to courses_subjects_magnify.fex • Right-click and Edit in Associated Tool • Change ENGINE MAGNIFY SET DATASOURCE=school_subjects • Add ENGINE MAGNIFY SET DELIMITER=#!# • Modify DEFINE Field: SYSSOURCE/A25='School Subjects'; • Modify DEFINE Field: SEARCHTITLE/A2000='<b>Subject: ' | CLASSIF | '</b>'; • Modify DEFINE Field: TITLE_URL/A2000= '/ibi_apps/WFServlet?' || 'FXK=' || COURSE.CRSELIST.CLASSIF || '&' || 'IBIF_ex=courses_subject' || '&' || 'IBIAPP_app=ibisamp'; • Modify DEFINE Field: HARDCODED/A50=‘ schools subject'; • In Report Painter: Add column: CLASSIFF and Change to BY field • In Report Painter: Recreate MagnifyID and WF_INDEX_UNIQUE_KEY using CLASSIFcolumn • In Report Painter: Rename Column Title C2_Department to M2A_Department • In Report Painter: Rename Column Title C4_Tuition_Range to M4A_Tuition_Range • In Report Painter: Rename Columns by changing S_ to SA_: S_DESCRIPTN1, S_DESCRIPTN2, S_DESCRIPTN3, S_CTITLE, S_COURSECODE, andS_SOURCE • Save, Run, Close • Create Drill Down Report for School Classes • Copy courses_all, paste and rename to course_subject • Add WHERE CLASSIF EQ ‘&FXK’; • Change Output to FORMAT AHTML
Magnify Indexing Maintenance Reference: Magnify Security and Administration: http://documentation.informationbuilders.com/masterindex/html/html_wf_7703/wf77magsec/wf77magsec.pdf
The Magnify Console • Open a browser • Navigate to: http://<server>:<port>/<context_root>/search/jsp • i.e.: http://localhost:8080/ibi_apps/search/jsp • Under Diagnostics • Notice Log Settings • Trace Incoming Files Sent By FORMAT Magnify • Log Feed Time and Search Events • Click on Index Monitor • Shows Active Index Libraries being processed • Feed statistics
Index Repository • Open Window Explorer to access WebFOCUS install folders • Navigate to: ibi\WebFOCUS77\magnify\lucene_index • This is where index libraries are generated by FORMAT Magnify procedures • The value set to DATASOURCE is used as the index library directory name • To Delete an index library application server needs to be restarted to release locks on directory.
Addition Helpful Tools • Application Server Log files • Records Magnify errors, logs and traces • Lucene Luke • Free online tool to peer into index library • Site: http://www.getopt.org/luke/ • Download: http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCQQFjAA&url=http%3A%2F%2Fwww.getopt.org%2Fluke%2Fluke.jnlp&ei=4DuPT_itIsbW0QGO4rSvDw&usg=AFQjCNEzskrB-EBOfd-dp8LqlA05dKtXHg&sig2=suUCYWEjqMVAxeVSveThMA • Use it to navigate to the index repository, select a specific index directory to open and view • See how many records indexed, available terms, etc
Organizing Magnify Search Reference: Magnify Security and Administration: http://documentation.informationbuilders.com/masterindex/html/html_wf_7703/wf77magsec/wf77magsec.pdf
The Collections File • Navigate to the Magnify configuration files: ibi\WebFOCUS77\config\magnify • Open in text editor: collections.xml • Analyzer Options: This lists all available analyzers which instruct Magnify how to parse incoming feeds and search so content can be matched to searches • Defaults Section: Assigns analyzer and style sheet used by the Magnify Search Based Application • Note the stylesheetattribute value: en/en_stylesheet • Collections Section: Organizes Index Libraries into specific groups and by default set to search all root indexes • Modify the member value to: school.* to globally search all indexes beginning with school • Indexes Section: Lists all available index libraries • Copy existing line and paste once • Replace line one with name and directory: school_courses • Replace line two with name and directory: school_subjects
The Style Sheet File • Navigate to the Magnify configuration files: ibi\WebFOCUS77\config\magnify\en\ • Open in text editor: en_stylesheet.xslt • Collection Descriptions • This list is presented in the drop down next to the search box on the Magnify Interface • After Default Collection add: Subject,Courses, • Optional change the Default Collection text • Must end in a comma (,)
The Style Sheet File • Collection Values • This list matches the order of the Collection Descriptions and maps to the indexes (name) setup in the Indexes section of the collections file • After default_collection add: school_courses,school_subjects, • Must end in a comma (,)
Refresh Magnify’s Search Based Application • Open a browser • Navigate to: http://<server>:<port>/<context_root>/search • i.e.: http://localhost:8080/ibi_apps/search • Refresh Magnify configuration • Restart Application Server • OR • Issue Application Server Magnify refresh commands • Append to the URL • proxyreload=1 to refresh changes to the style sheet • clearcache=1 to refresh changes to the collections file • i.e.: http://localhost:8080/ibi_apps/search?proxyreload=1&clearcache=1