Transcript Jaspersoft
IRMAC Presentation
Jaspersoft Suite Overview
©2012 Jaspersoft Corporation. Proprietary and Confidential
1
INTRODUCTION TO JASPERSOFT ARCHITECTURE
Products in the BI Suite
Standards and APIs
Deployment, scalability and upgrades
Security
©2012 Jaspersoft Corporation. Proprietary and Confidential
2
Jaspersoft Business Intelligence Suite
Reporting Engine
Visual Report
Design Environment
Ad Hoc Reports, Dashboards,
In-Memory Analysis Server
Powerful OLAP
Data Analysis
High Performance
Data Integration
3
©2012 Jaspersoft Corporation. Proprietary and Confidential
Jaspersoft BI Architecture (Marketecture)
©2012 Jaspersoft Corporation. Proprietary and Confidential
4
Standards and APIs
Web Standard Customizable Front End with Service API’s
Jaspersoft UI Framework
Extensions
Web Service
Integration
Interfaces:
SOAP and REST
Presentation (.css)
Events (.js)
JSR-168
portlets
Structure (.jsp)
Web Services /
C/C++, PHP
Java API
HTTP API
XML/A (OLAP)
*** Business Logic: Service API’s ***
Reporting
Engine
JasperReports
Library
Ad Hoc
Reporting
JasperReports
Server
Report
Scheduling
Scheduler
OLAP
Engine
OLAP
Engine
Repository
Hibernate
ORM
Object
Permission
User
Authority
Spring
Security
Back-End Implementations can be Configured and/or Replaced
connect any data source
XML, XML/A
TXT & CSV
RDBMS
SSO
LDAP, JAAS, MS Active Directory, IBM
Tivoli, SiteMinder, CAS
JasperReports Server Components
WAR file deployed to Java application server
Examples: Tomcat, Web Logic, JBoss, tcServer, WebSphere, Glassfish
Can be configured behind a load balancer
WAR file includes a Web user interface and APIs
One shared Jaspersoft Repository
Database (Oracle, PostgreSQL, MySQL, DB2, MS SQL Server)
Database can be configured master/slave for failover
Diverse clients
Jaspersoft web user interface (JasperReports Server - UI)
Web services clients (SOAP and RESTful)
©2012 Jaspersoft Corporation. Proprietary and Confidential
6
Scalability and Failover
See the JasperReports Server Ultimate Guide, Chapter 11
Repository
Database
Data
Sources
Browser user
load
balancer
Web services client
Email Services
Java application servers
JasperReports Server
deployed as WAR files
©2012 Jaspersoft Corporation. Proprietary and Confidential
External
Authentication
e.g. SiteMinder, CAS,
JAAS, LDAP etc.
7
SECURITY
Object, column and row based security
Single Sign On
Secure infrastructure
©2012 Jaspersoft Corporation. Proprietary and Confidential
8
Authorization: Security Permissions
Object, column, row security
“Principal Object”
JasperReports Server creates and maintains for each user session
Identifies the user
Role(s): order of precedence
Custom profile attributes: handles cases where user, tenant and role do
not suffice
©2012 Jaspersoft Corporation. Proprietary and Confidential
9
Object based security
©2012 Jaspersoft Corporation. Proprietary and Confidential
10
Different Profiles, Different Views
Typical Business User
©2012 Jaspersoft Corporation. Proprietary and Confidential
Typical Superuser
11
Authentication: Spring Security
A variety of authentication providers come with Spring
Security, or are easily integrated:
LDAP/Active Directory
JAAS
CA SiteMinder
CAS (Central Authentication System)
Tomcat realm
Static/in-memory
Custom database lookup
X509
More
Custom
©2012 Jaspersoft Corporation. Proprietary and Confidential
12
DATA INTEGRATION
Case study: Jaspersoft’s internal data
warehouse
©2012 Jaspersoft Corporation. Proprietary and Confidential
13
Internal use case:
Data Integration Requirements
Many Source Types (SFDC, XML, Web Services, CSV,
etc)
Data Cleansing/Scrubbing
Full Refresh
Incremental Refresh
Fault Tolerant (Error Handling, Auto-Restart and Alerting)
Scheduling with Intelligent Workflows
Performance
Rapid Time-to-Metrics
14
Internal use case:
Business Systems We Use
salesforce.com (53)
- Campaigns/Hits
- Inquiries/Leads
- Opportunities
- Accounts
- Contacts
- Custom Objects
(2,000,000)
(400,000)
(25,000)
(32,000)
(79.000)
SOAP
App
Exchange
Every 15 min
Intacct (50)
- Orders
- Invoices
- AP/AR
- Rev Rec Schedules
XML
Gateway
Hourly
Others (26)
- Eloqua
- Bugzilla
-
(4,900,000)
Openair
Jasperforge.org
Jaspersoft.com
eStore
15
©2012 Jaspersoft Corporation. Proprietary and Confidential
JDBC
Nightly
Hardware
• Dual Processor
• Quad Core
• 24 GBs RAM
• 4 TB Raid 5
Software
• ESXi
• CentOS
• JasperReports Server
• MySQL
Internal use case:
Jaspersoft ETL Workflows
16
Internal use case:
ETL Administration
17
©2012 Jaspersoft Corporation. Proprietary and Confidential
Internal use case:
Lessons Learned
Define metrics and dimensions before implementing
In writing, signed off by key stake holders
Definition, Owner, Data Refresh Rate
Define the roles of users accessing the data
How to access the data? Dashboards? Ad-Hoc
Data security
Make it a Closed Loop
Regular meeting to discuss the metrics
Define changes to be made
Implement changes
18
Summary: Why use ETL?
Transform the data at the ETL layer
Persist results sets, including calculated metrics
Faster, more responsive reporting
Consistently accurate data
Schedule near-real time data refreshes
©2012 Jaspersoft Corporation. Proprietary and Confidential
19
REPORTING AND ANALYSIS, PART 1
Report designers: web-based Ad Hoc and iReport
Unified Analysis experience
©2012 Jaspersoft Corporation. Proprietary and Confidential
20
Preview: JasperReports Lifecycle Server
Compiled
.jrxml file
.jrprint
JasperReports Server :
•
associates inputs into logical JasperReports Units
•
automates report execution
•
exposes APIS for other applications to do the same
©2012 Jaspersoft Corporation. Proprietary and Confidential
21
Two Report (.jrxml) Designer Tools
iReport
JasperReports Server: Ad Hoc
For professional report designers
Client-side installation required
Pixel-perfect and programmatic control
Extensive capabilities
©2012 Jaspersoft Corporation. Proprietary and Confidential
Appropriate for all users
Web-based, only require a browser
Pre-defined report templates
Limited formatting
22
JasperReports Server Report Units
Images
Translation files
Sub-report
Chart customizer
Input controls
©2012 Jaspersoft Corporation. Proprietary and Confidential
23
Technical Training
©2012 Jaspersoft Corporation. Proprietary and Confidential
24
Online Learning Portal
©2012 Jaspersoft Corporation. Proprietary and Confidential
25
Best Practices for Building
Complex Reports
Don’t boil the ocean – break it down
Learn to leverage components
Use sub-datasets, sub-reports, Tables etc.
You can use multiple Detail bands
Use conditional logic to get more from one report
Use parameterized queries – but don’t start with them
Appreciate the power of report design – it’s not Excel
Take training and read the Ultimate Guide – it’s great
Join JasperForge and user groups
©2012 Jaspersoft Corporation. Proprietary and Confidential
26
Thank You