As quick as you think!
06 Paul Landucci
Stéphane Coez
Our Job
Applications deployed
through the WEB and
Windows
Analysis and reports for
developers & expert
users
HARRYSoftware,
Our Clients
The company asset!
HARRY Foundations
• Designed for business user
requirements
• Powerful and complete vs.
competitors
• One single interface to Relational and
OLAP environments
• Consistent, fast and customized
deployment
The HARRY Suite
Version 7
HARRYPilot, Version 7
One single GUI interface to relational,
multidimensional and vector DB:
• Accessing ORACLE, ESSBASE, MS-SQL
Server, MS OLAP, HARRYVS… from your
dictionary
• Design parameterized queries, through the
same GUI interface and automatisms,
• Navigate within OLAP environments,
• Transform any query to an application page or
broadcast it…
HARRYPilot
To structure & display
information
HReport,
powerful & pertinent
presentation
HARRYDataWEB
• To design the
application pages and
dynamics,
and run it on your
Intranet,
• To broadcast results
and information,
• To deploy according
to your user domains,
groups and profiles.
A 4 step process
• Step 1: Create your report at
the detail level
• Step 2: Replace pertinent
values
by parameters
• Step 3: Insert and design within
a
WEB application page
HARRYDataWEB
Interactive reporting,
Ad hoc queries,
HARRYNetServer
Mutidimensional navigation
HARRYDashboard
HARRY
Manager, HCube HReport
HAS
HARRYPilot
Dictionary
HARRYVectorServe
rs
Very fast datamarts:
HARRY 2: IBM Z90
HARRY-X: AIX, SUN, HP
HARRY-NT: WINDOWS XP & 2003
HARRY-LINUX
Vector Architecture
Adapted to:
• Marketing,
• Sales, logistics,
• WEB logging
analysis,
• …
Any large
database
The VectorServers many
benefits:
• Extremely fast on complex queries, scan,
calculations,
• Unlimited number of columns or
dimensions,
• Boolean fields and bitmap indexing,
• Dynamical functions and dimensions,
– Ranging or intervals
– IF(CONDITION;TRUE;FALSE),
– Typologies or Segment
Selection: Where and Count
Active selection Vector table
bitmap
0
1
0 Block 1 Data
Partition 0
bitmap 0
1
Unit Price
Product
Quantity
1
ID #
Etc.
Date
1 0 Block 2
1 1
1
0
1 …
0
0 1
0 0 Block 3
0
0
0
0
0 Block 4
0
VectorServer is 0
working on partition 0
0
and blocks. Block is
the minimum read unit As quick as you think!
Vector index
Selection
bitmap
0
Addresses in 0
1
Code vector table 0
1
0
74 5,15,194,2056,… Bitmap creation 0
75 2,3,12,16,17,18,27,… 0
0
76 1,8,10,… 0
0
… 0
0
0
0
Index allows: 0
1
0
To create a selection bitmap from a 0
0
matrix describing each value with 0
1
addresse for a variable in table 0
0
Without file reading 0
0
As quick as you think!
APL/M conversion
APL/M Version 10 & 11…
Availability on WINDOWS, UNIX, LINUX
Version 7.1 de HVS, released
Overpasses the 4 Giga Bytes file limit
UNIX, LINUX et WINDOWS files directly compatible
As quick as you think!
Nouveau look & feel XP
pour la console et le monitoring
As quick as you think!
Performances: 6.5 M Rec, 315 cols
As quick as you think!
HARRYVectorServer, next…
64 bit full version
Administration module as a ‘console’
Stored relational views ‘join-like’
Parallelization, multi-processing & clustering
Vector loaded in // on several instances
Dispatch one query on several servers
Load balancing
Dynamical profile session update
As quick as you think!
The fashion show room
JAVA…!
A alternative new architecture
HARRYDataWEB
Interactive reporting,
Ad hoc queries,
WEB
Mutidimensional navigation
HCube Application (Java) HReport
HARRYPilot & Dictionary
HARRY JAVA Classes
HARRY Workspace
VectorServer
Auxiliary processors
HARRY
Vector
Oracle XX DB
As quick as you think!
The HNS JAVA interface
To give to developers a total and accurate control on
HARRYVS at the appropriate level for their application.
Access to every command or function and parameters of
HARRYVectorServer.
Example: HARRY « SEL:FAMILY=702 »
Loads the selection bitmap in WS
Returns the count to application
Access to every HARRYVectorServer features or facility
As quick as you think!
Auxiliary processors
Goals : To create a dynamic link between an external server
(Oracle, SQLServer, DB2/U, etc.) and the
HARRYVectorServer WS through this server native
middleware.
Runs a query and sends the result to WS.
Notice: Query is only checked by the remote remote server.
Example: SQLORACLE
Syntax: SQLORACLE:SQL_QUERY
Example : SQLORACLE:SELECT NAME,FISRT,SALARY
FROM PERSO WHERE
DIV=‘MFG'
As quick as you think!
Example: a two server query
Select the customers who have today receivable
code for more than 1,500 Euros
& count
Client
Application 1 – ORACLE Query
« SQLORACLE:SELECT CUSTID,COUNT
HARRY_EXECCust_ID + return
LIST Workspace
list code HVS
WHERE account >= 1500»
ORACLE
SELECT CUSTID,COUNT
LIST
WHERE account >= 1500
As quick as you think!
Example: a two server query
Select the customers who have today receivable
Selected customers for more than 1,500 Euros
number
Client
Application
2 – Key selection within vector table
Cust_Id
vector
HARRY_EXEC « CSEL:LIST1 IN Cust_ID
Workspace
HVS
Customer S1
list
ORACLE
Load vector
HARRYVectorServer
As quick as you think!
HARRYSoftware
www.harrysoftware.com
Stéphane Coez, R&D
scoez@harrysoftware.com
Paul Landucci, CEO
planducci@harrysoftware.com
As quick as you think!