jw11 doing analysis maryflynn
TRANSCRIPT
-
8/3/2019 JW11 Doing Analysis MaryFlynn
1/48
Mary Flynn, Director of Worldwide Sales Engineering, JaspersoftSherman Wood, Vice President Product Management, ConcentrixOdie Henderson, Senior Professional Services Consultant, Jaspersoft
Doing Data Analysis with Jaspersoft
1
-
8/3/2019 JW11 Doing Analysis MaryFlynn
2/48
Todays Discussion
Common analysis tasks
A brief history of analysis products at Jaspersoft
JasperReports Server ad hoc Domain capabilities and limitations
Analyzing data from any source: topics
er ormance trac ng
Jaspersoft OLAP OLAP Data and Process
Schema design with Jaspersoft OLAP Designer
MDX query profiling Cache, no cache or shared cache in a load balanced environment
Great resources
2011 Jaspersoft Corporation. Proprietary andConfidential 2
-
8/3/2019 JW11 Doing Analysis MaryFlynn
3/48
Drilling, slicing and dicing, pivoting, filtering and charting
-
8/3/2019 JW11 Doing Analysis MaryFlynn
4/48
Demonstrations
Drilling, slicing and dicing, filtering, pivoting and charting
Discovery, segmentation, refining and display
2011 Jaspersoft Corporation. Proprietary andConfidential 4
-
8/3/2019 JW11 Doing Analysis MaryFlynn
5/48
products at Jaspersoft
-
8/3/2019 JW11 Doing Analysis MaryFlynn
6/48
-
8/3/2019 JW11 Doing Analysis MaryFlynn
7/48
Advent of Ad Hoc
Requirement: easier reporting for business users
Added web-based report designer Banded detail reports
Automatically extract queries from JasperReports files -> TOPICS
2011 Jaspersoft Corporation. Proprietary andConfidential 7
-
8/3/2019 JW11 Doing Analysis MaryFlynn
8/48
-
8/3/2019 JW11 Doing Analysis MaryFlynn
9/48
Jaspersoft OLAP
Minor enhancements and engine updates over the years
Not-so-secret work underway to query the powerfulOLAP engine (Mondrian) from the Jaspersoft ad hocuser interface
What makes the engine powerful?
Answer: MDX
2011 Jaspersoft Corporation. Proprietary andConfidential 9
-
8/3/2019 JW11 Doing Analysis MaryFlynn
10/48
Parallel Period: One Calculation
[Measures].[Parallel Period]
Formula:
( ParallelPeriod( [Time].[Year] , 1 ,[Time].CurrentMember) ,[Measures].[Unit Sales] )
[Measures].[Diff Parallel]
Formula:
[Measures].[Unit Sales] -
[Measures].[Parallel Period]
2011 Jaspersoft Corporation. Proprietary andConfidential
-
8/3/2019 JW11 Doing Analysis MaryFlynn
11/48
Parallel Period: Multi-level Results
Calculates at all levels: Year, Quarter, Month, etc.
2011 Jaspersoft Corporation. Proprietary andConfidential
-
8/3/2019 JW11 Doing Analysis MaryFlynn
12/48
Prior Period: One Calculation
Calculated Member:
[Measures].[Prior Unit Sales]
Formula:
( [Time].PrevMember,[Measures].[Unit Sales] )
Calculated Member:
[Measures].[Diff Prior]
[Measures].[Unit Sales] -[Measures].[Prior Unit Sales]
2011 Jaspersoft Corporation. Proprietary andConfidential
-
8/3/2019 JW11 Doing Analysis MaryFlynn
13/48
Prior Period: Multi-level Results
Calculates at all levels: Year, Quarter, Month, etc.
2011 Jaspersoft Corporation. Proprietary andConfidential
-
8/3/2019 JW11 Doing Analysis MaryFlynn
14/48
-
8/3/2019 JW11 Doing Analysis MaryFlynn
15/48
Until Then
Learn and use the best of both!
First up: JasperReports Server
Finally: Great Resources
2011 Jaspersoft Corporation. Proprietary andConfidential 15
-
8/3/2019 JW11 Doing Analysis MaryFlynn
16/48
Tips and tricks:
Domain capabilities and limitations Analyzing data from any source: topics
Performance tracking, see the query
-
8/3/2019 JW11 Doing Analysis MaryFlynn
17/48
Domain Capabilities and Limitations
Domain: Database schema
represented in XML
XML converts to SQL defaultSQLGenerator
oracleSQLGenerator postgreSQLGenerator
sqlserverGenerator MS SQL Server
Ingres
db2SQLGenerator
mmxSQLGenerator
custom
2011 Jaspersoft Corporation. Proprietary andConfidential 17
-
8/3/2019 JW11 Doing Analysis MaryFlynn
18/48
Domain Capabilities and Limitations
XML snippet from a domain:
join store store on (sales_fact_1997.store_id ==
store.store_id)
Notice `back-ticks` were generated for MySQL in this
example
2011 Jaspersoft Corporation. Proprietary andConfidential 18
inner join `store` on (`sales_fact_1997`.`store_id` = `store`.`store_id`)
-
8/3/2019 JW11 Doing Analysis MaryFlynn
19/48
Domain Capabilities and Limitations
Sample generated by SQLGenerator
Query
select
store.store_type as store_store_type,
sum(sales_fact_1997.store_sales) as newSet1_store_sales_Sum
2011 Jaspersoft Corporation. Proprietary andConfidential 19
from
sales_fact_1997 inner join store on
(sales_fact_1997.store_id = store.store_id)
where
store.store_country = 'USA'
group by
store.store_type
order by
store_store_type
-
8/3/2019 JW11 Doing Analysis MaryFlynn
20/48
Domain Capabilities and Limitations
The database and database schema matter a lot
Complex join paths => complex queries => long queries
are optimized for rapid, small INSERTS, not SELECTS
2011 Jaspersoft Corporation. Proprietary andConfidential 20
-
8/3/2019 JW11 Doing Analysis MaryFlynn
21/48
Domain Tips
You can get a domain from a star schema in minutes
Columnar databases are well worth evaluating
Staging data Using a Topic (next up) that runs an optimized stored procedure
Not shown: Derived Tables run as sub-queries; this may
impact performance
After Topics: performance tracking tips
2011 Jaspersoft Corporation. Proprietary andConfidential 21
-
8/3/2019 JW11 Doing Analysis MaryFlynn
22/48
Analyzing Data From Any Source: Topics
Topics were Jaspersofts first data source for ad hocreport design
2011 Jaspersoft Corporation. Proprietary andConfidential 22
-
8/3/2019 JW11 Doing Analysis MaryFlynn
23/48
Topics are JasperReport units stored in the Topics folder
Analyzing Data From Any Source: Topics
2011 Jaspersoft Corporation. Proprietary andConfidential 23
-
8/3/2019 JW11 Doing Analysis MaryFlynn
24/48
JasperReports Server lists all reports in this folder in theTopics panel
Analyzing Data From Any Source: Topics
2011 Jaspersoft Corporation. Proprietary andConfidential 24
-
8/3/2019 JW11 Doing Analysis MaryFlynn
25/48
Why is this great?
You can use ANY query, ANY data source
Analyzing Data From Any Source: Topics
Custom queries (hibernate, Hadoop, web services, etc.)
Stored procedures, etc.
2011 Jaspersoft Corporation. Proprietary andConfidential 25
-
8/3/2019 JW11 Doing Analysis MaryFlynn
26/48
Topics
Queries are extracted from
JasperReports (JRXML) files
The query language only needs tobe registered with JasperReports
Domains
Queries are built on-demand by
the SQLGenerator
The SQLGenerator converts XML(the Domain definition) to SQL at
Analyzing Data From Any Source: Topics
erver
Topics can use any data source,
including custom data sources
The query is pre-defined / canned
run- me
Domains require a JDBC or JNDI
data source
Domains can make many morefields available to users
2011 Jaspersoft Corporation. Proprietary andConfidential 26
Tip: use Domains for relational databases; best with star schemasTip: use Topics for non-SQL data sources or complex queries
-
8/3/2019 JW11 Doing Analysis MaryFlynn
27/48
-
8/3/2019 JW11 Doing Analysis MaryFlynn
28/48
Topics
Queries are extracted from
JasperReports (JRXML) files
The query language only needs tobe registered with JasperReports
Domains
Queries are built on-demand by
the SQLGenerator
The SQLGenerator converts XML(the Domain definition) to SQL at
Analyzing Data From Any Source: Topics
erver
Topics can use any data source,including custom data sources
The query is pre-defined / canned
run- me
Domains require a JDBC orJNDI data source
Domains can make many morefields available to users
2011 Jaspersoft Corporation. Proprietary andConfidential 28
Tip: use Domains for relational databases; best with star schemasTip: use Topics for non-SQL data sources or complex queries
-
8/3/2019 JW11 Doing Analysis MaryFlynn
29/48
Topics
Queries are extracted from
JasperReports (JRXML) files
The query language only needs tobe registered with JasperReports
Domains
Queries are built on-demand by
the SQLGenerator
The SQLGenerator converts XML(the Domain definition) to SQL at
Analyzing Data From Any Source: Topics
erver
Topics can use any data source,
including custom data sources
The query is pre-defined /canned
run- me
Domains require a JDBC or JNDI
data source
Domains can make many morefields available to users
2011 Jaspersoft Corporation. Proprietary andConfidential 29
Tip: use Domains for relational databases; best with star schemasTip: use Topics for non-SQL data sources or complex queries
-
8/3/2019 JW11 Doing Analysis MaryFlynn
30/48
Performance Tracking, See the Query
Demonstration: Ad Hoc cache
2011 Jaspersoft Corporation. Proprietary andConfidential 30
-
8/3/2019 JW11 Doing Analysis MaryFlynn
31/48
Tips and Tricks:
OLAP Data and Process Schema design with Jaspersoft OLAP Designer
MDX query profiling Cache, no cache or shared cache in a loadbalanced environment
-
8/3/2019 JW11 Doing Analysis MaryFlynn
32/48
-
8/3/2019 JW11 Doing Analysis MaryFlynn
33/48
Data for Jaspersoft OLAP
Need a star schema Model against an existing database
Create a new database optimized for OLAP operations OLAP environment characteristics
Select/read queries with grouping across large data sets
Multiple data sources may be needed to get the data needed foranalysis: need to consolidate
Technology options Can your transactional environment take it?
Can your RDBMS take it? Or is it not efficient? Or cost effective? Look at different RDBMS options within your current environment, or
analytic databases
2011 Jaspersoft Corporation. Proprietary andConfidential 33
S h D i
-
8/3/2019 JW11 Doing Analysis MaryFlynn
34/48
Schema Design:Jaspersoft OLAP Designer
DBA tool to create an OLAP schema XML file
Also creates: Access Grant Schema
quer es or ews
Client-side installation:Java Swing application
Tip: download fromhttp://support.jaspersoft.com/downloads-JAWBPro4_0_0.html
2011 Jaspersoft Corporation. Proprietary andConfidential 34
S h D i
-
8/3/2019 JW11 Doing Analysis MaryFlynn
35/48
Schema Design:Jaspersoft OLAP Designer
Identifies errors
2011 Jaspersoft Corporation. Proprietary andConfidential 35
Tip: look here for troubleshooting help
Schema Design
-
8/3/2019 JW11 Doing Analysis MaryFlynn
36/48
Schema Design:Jaspersoft OLAP Designer
Automatically generates MDX queries
Great feature for testing
2011 Jaspersoft Corporation. Proprietary andConfidential 36
Schema Design:
-
8/3/2019 JW11 Doing Analysis MaryFlynn
37/48
Schema Design:Jaspersoft OLAP Designer
Interrogates the cube(s) to create MDX queries
Check results for issues
copied
Helpful when creating
OLAP Views inJasperReports Server
2011 Jaspersoft Corporation. Proprietary andConfidential 37
-
8/3/2019 JW11 Doing Analysis MaryFlynn
38/48
In Jaspersoft OLAP Designer:
1.Design and test the schema2.Run and save an MDX query
Deploying OLAP, Step 1
2011 Jaspersoft Corporation. Proprietary andConfidential 38
Deploying OLAP Step 2
-
8/3/2019 JW11 Doing Analysis MaryFlynn
39/48
Deploying OLAP, Step 2In JasperReports Server
1
3.3
2011 Jaspersoft Corporation. Proprietary andConfidential 39
2
3
4
Deploying OLAP Step 2
-
8/3/2019 JW11 Doing Analysis MaryFlynn
40/48
Deploying OLAP, Step 2In JasperReports Server
1. Create a JDBC or JNDI data source (if not alreadyavailable)
2. Upload the OLAP Schema3. Create an OLAP Client Connection
1. Type: Mondrian
2. Select the OLAP Schema (from step 2)
3. Select the JDBC or JNDI data source (from step 1)
4. Do not link an Access Grant (until youre expert)
4. Create an OLAP View1. Type: Mondrian
2. Select the Mondrian Client Connection (from step 3)
3. Paste your MDX query string remove the semicolon at the end
2011 Jaspersoft Corporation. Proprietary andConfidential 40
-
8/3/2019 JW11 Doing Analysis MaryFlynn
41/48
MDX Query Profiling
Analysis Options > Performance Profiling
Good for testing, developing better MDX queries
See: JasperAnalysis Ultimate Guide 3.7, Section 5.3.2Profiling Performance
Note: Auditing is different. See the chapter on Auditing inthe JasperReports Server Administrator Guide.
2011 Jaspersoft Corporation. Proprietary andConfidential 41
-
8/3/2019 JW11 Doing Analysis MaryFlynn
42/48
Jaspersoft OLAP Cache: default is ON
Shared Repository
c
c
2011 Jaspersoft Corporation. Proprietary andConfidential 42
Application servers runningJasperReports Server
Other services
load balancer
c
Traditional DataSources
-
8/3/2019 JW11 Doing Analysis MaryFlynn
43/48
Jaspersoft OLAP XML/A Provider
Shared Repository
2011 Jaspersoft Corporation. Proprietary andConfidential 43
Application servers runningJasperReports Server
Other services
load balancer
Traditional DataSources
c
Jaspersoft OLAPXML/A provider
Al i U D b C h
-
8/3/2019 JW11 Doing Analysis MaryFlynn
44/48
Alternative: Use Databases Cache
Shared Repository
2011 Jaspersoft Corporation. Proprietary andConfidential 44
Application servers runningJasperReports Server
Other services
load balancer
Analytic or ColumnarDatabase
-
8/3/2019 JW11 Doing Analysis MaryFlynn
45/48
JasperReports Server and Jaspersoft OLAP
J R t S Ad H
-
8/3/2019 JW11 Doing Analysis MaryFlynn
46/48
JasperReports Server, Ad Hoc
Documentation
JasperReports Server Evaluation Guiderelease 4.0
Chapter 3 Getting Started with AdHoc Reports
Section 3.3 Exploring and AnalyzingData in the Ad Hoc Editor
Training
Using Jaspersoft BI
For business users
8 hours delivered in (2) 4-hour classes
Live online
Jas ersoft Technical Trainin
JasperReports Server User Guiderelease 4.0
Chapter 4 Working with the Ad HocEditor
Chapters 6 and 7: Creating andAdvanced Domain Features
JasperServer Ultimate Guide 3.7
Chapter 3 Ad Hoc Reports and DataExploration
For software developers and systemarchitects
Four days
Live online
2011 Jaspersoft Corporation. Proprietary andConfidential 46
Jaspersoft OLAP
-
8/3/2019 JW11 Doing Analysis MaryFlynn
47/48
Jaspersoft OLAP
Documentation
JasperReports Server Evaluation Guiderelease 4.0
Chapter 4 Getting Started withOLAP Views
Jaspersoft OLAP User Guide release 4.0
Training
OReilly: DBA 4: Analyzing Data*
Jaspersoft Technical Training
Mondrian 3.0 Technical Guide
JasperAnalysis Ultimate Guide 3.7
2011 Jaspersoft Corporation. Proprietary andConfidential 47
* When registering for OReilly courses, please enter [email protected] in the Referred Email field.
-
8/3/2019 JW11 Doing Analysis MaryFlynn
48/48
Thank YouMary Flynn
Sherman WoodOdie Henderson