JDV
JBoss Data Virtualization
Data Integration, Data Firewall, Data Security
Luigi Fugaro
Red Hat Middleware Consultant
March 2017
Luigi Fugaro2
AGENDA
● Red Hat Middleware portfolio
● JDV Overview
● JDV use cases
● Teiid Designer
● JDV Internals
● Data Security
● Performance
● Architecture
● Q/A
Red Hat Middleware Portfolio
Luigi Fugaro4
Red Hat Middleware Portfolio
Accelerate
RH JBoss Enterprise
Application Platform
RH JBoss Web Server
RH JBoss Data Grid
RH JBoss Developer Studio
RH JBoss Operations
Network
RH Mobile Application
Platform
Integrate
RH JBoss Fuse
RH JBoss A-MQ
RH JBoss Data Virtualization
RH 3scale API Management
Platform
RH Single Sign-On
Automate
RH JBoss BRMS
RH JBoss BPM Suite
Luigi Fugaro5
Red Hat Middleware Portfolio
Accelerate
RH JBoss Enterprise
Application Platform
RH JBoss Web Server
RH JBoss Data Grid
RH JBoss Developer Studio
RH JBoss Operations
Network
RH Mobile Application
Platform
Integrate
RH JBoss Fuse
RH JBoss A-MQ
RH JBoss Data Virtualization
RH 3scale API Management
Platform
RH Single Sign-On
Automate
RH JBoss BRMS
RH JBoss BPM Suite
Luigi Fugaro6
Red Hat Middleware Portfolio
JBoss Data Virtualization
Overview
Luigi Fugaro8
JBoss Data Virtualization Overview
Data Integration
Luigi Fugaro9
JBoss Data Virtualization Overview
Luigi Fugaro10
JBoss Data Virtualization Overview
Luigi Fugaro11
JBoss Data Virtualization Overview
Luigi Fugaro12
JBoss Data Virtualization Overview
Runtime
Luigi Fugaro13
JBoss Data Virtualization Overview
Design time
JBoss Data Virtualization
Use cases
Luigi Fugaro15
JBoss Data Virtualization
Use cases
● Normalize
● Data Proxy
○ Migration
● Multi-protocol
○ SQL - ANSI SQL-92
■ JDBC
■ ODBC
○ HTTP
■ REST
■ OData v4
■ SOAP
● Data Integration
● Data Security
● Audit
Luigi Fugaro16
JBoss Data Virtualization
Use cases
● Normalize
● Data Proxy
○ Migration
● Multi-protocol
○ SQL - ANSI SQL-92
■ JDBC
■ ODBC
○ HTTP
■ REST
■ OData v4
■ SOAP
● Data Integration
● Data Security
● Audit
Luigi Fugaro17
JBoss Data Virtualization
Use cases
● Normalize
● Data Proxy
○ Migration
● Multi-protocol
○ SQL - ANSI SQL-92
■ JDBC
■ ODBC
○ HTTP
■ REST
■ OData v4
■ SOAP
● Data Integration
● Data Security
● Audit
Luigi Fugaro18
JBoss Data Virtualization
Use cases
● Normalize
● Data Proxy
○ Migration
● Multi-protocol
○ SQL - ANSI SQL-92
■ JDBC
■ ODBC
○ HTTP
■ REST
■ OData v4
■ SOAP
● Data Integration
● Data Security
● Audit
Luigi Fugaro19
JBoss Data Virtualization
Use cases
● Normalize
● Data Proxy
○ Migration
● Multi-protocol
○ SQL - ANSI SQL-92
■ JDBC
■ ODBC
○ HTTP
■ REST
■ OData v4
■ SOAP
● Data Integration
● Data Security
● Audit
Luigi Fugaro20
JBoss Data Virtualization
Use cases
● Normalize
● Data Proxy
○ Migration
● Multi-protocol
○ SQL - ANSI SQL-92
■ JDBC
■ ODBC
○ HTTP
■ REST
■ OData v4
■ SOAP
● Data Integration
● Data Security
● Audit
Luigi Fugaro21
JBoss Data Virtualization
Use cases
● Normalize
● Data Proxy
○ Migration
● Multi-protocol
○ SQL - ANSI SQL-92
■ JDBC
■ ODBC
○ HTTP
■ REST
■ OData v4
■ SOAP
● Data Integration
● Data Security
● Audit
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro23
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro24
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro25
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro26
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro27
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro28
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro29
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro30
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro31
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro32
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro33
JBoss Data Virtualization
Teiid Designer
Luigi Fugaro34
JBoss Data Virtualization
Sources
Select databse;
Connect database;
Import metadata;
Transformation Layer
Select the source;
Eventually transform (type);
Aggregate;
View
Select from VBLs;
Union;
Join;
Virtual Data Base
Teiid Designer
Luigi Fugaro35
JBoss Data Virtualization
Teiid Designer
JBoss Data Virtualization
Internals
Luigi Fugaro37
JBoss Data Virtualization
Internals
● Virtual procedures
● Resource adapters
● Translator
● Query Engine
● Query Optimizer
● Connectors
Luigi Fugaro38
JBoss Data Virtualization
Internals
● Virtual procedures
● Resource adapters
● Translator
● Query Engine
● Query Optimizer
● Connectors
Luigi Fugaro39
JBoss Data Virtualization
Internals
● Virtual procedures
● Resource adapters
● Translator
● Query Engine
● Query Optimizer
● Connectors
Luigi Fugaro40
JBoss Data Virtualization
Internals
● Virtual procedures
● Resource adapters
● Translator
● Query Engine
● Query Optimizer
● Connectors
Luigi Fugaro41
JBoss Data Virtualization
Internals
● Virtual procedures
● Resource adapters
● Translator
● Query Engine
● Query Optimizer
● Connectors
Luigi Fugaro42
JBoss Data Virtualization
Internals
● Virtual procedures
● Resource adapters
● Translator
● Query Engine
● Query Optimizer
● Connectors
Luigi Fugaro43
JBoss Data Virtualization
Internals
● Virtual procedures
● Resource adapters
● Translator
● Query Engine
● Query Optimizer
● Connectors
Luigi Fugaro44
JBoss Data Virtualization
ENTERPRISE RDBMS
IBM DB2 9.7, 10
Ingres 10
JBoss Data Services Platform 5.x
MariaDB
Microsoft SQL Server 2008, 2012, 2014
MySQL 5.1, 5.5
PostgreSQL 8.4, 9.2
Oracle 11g R2, 12c
Sybase ASE 15, IQ 16 Express (Tech Preview)
Internals/Connectors
Luigi Fugaro45
JBoss Data Virtualization
BIG DATA
Cloudera CDH 5.5
Hortonworks Data Platform 2.4
NoSQL
Apache Accumulo 1.6.5
Apache Cassandra 2.2.4
Apache HBase 1.1
MongoDB v3.0
HPE Vertica 7.2.1
SEARCH
Apache Solr 4.9.0
Internals/Connectors
Luigi Fugaro46
JBoss Data Virtualization
ENTERPRISE AND CLOUD APPLICATIONS
SAP Gateway
Salesforce.com
TECHNOLOGY CONNECTORS
Files
Generic datasources[3]
OData v4.0
REST/JSON over HTTP
SOAP Web Services
XML Files
XML over HTTP
Internals/Connectors
Luigi Fugaro47
JBoss Data Virtualization
ENTERPRISE DATA WAREHOUSE
Apache Hive 2.0
Amazon Redshift
Greenplum Database 4.1
Netezza 7.2
Teradata 15
OLAP DATA SOURCES/ ANALYTIC FRAMEWORKS
Apache Spark 2.0 and 1.6.0
Mondrian 3.5.0
Internals/Connectors
Luigi Fugaro48
JBoss Data Virtualization
OFFICE PRODUCTIVITY
Google Spreadsheets via Teiid Google resource adapter
Microsoft Access 2010
Microsoft Access 2013
Microsoft Excel 2010
Microsoft Excel 2013
SPECIALTY DATA SOURCES
Actian Analytics Express 2.0 (Tech Preview)
IBM Informix 12.10
LDAP 3
MetaMatrix 5.5.4
ModeShape Hierarchical Database
Red Hat Directory Server 9.0
Internals/Connectors
Luigi Fugaro49
JBoss Data Virtualization
Component details
https://access.redhat.com/articles/703673
Supported configuration
https://access.redhat.com/articles/703663
Internals/Connectors
JBoss Data Virtualization
Data Security
Luigi Fugaro51
JBoss Data Virtualization
Data Security
● Based on JAAS
○ JBoss EAP’s security-domain approach
● VDB’s ACL
○ Data-roles
■ Mapping
■ Constraints
● Coarse-grained
● Fine-grained
Luigi Fugaro52
JBoss Data Virtualization
Data Security
● Based on JAAS
○ JBoss EAP’s security-domain approach
● VDB’s ACL
○ Data-roles
■ Mapping
■ Constraints
● Coarse-grained
● Fine-grained
Luigi Fugaro53
JBoss Data Virtualization
Data Security
● Based on JAAS
○ JBoss EAP’s security-domain approach
● VDB’s ACL
○ Data-roles
■ Mapping
■ Constraints
● Coarse-grained
● Fine-grained
Luigi Fugaro54
JBoss Data Virtualization
Data Security
● Based on JAAS
○ JBoss EAP’s security-domain approach
● VDB’s ACL
○ Data-roles
■ Mapping
■ Constraints
● Coarse-grained
● Fine-grained
Luigi Fugaro55
JBoss Data Virtualization
Data Security
● Based on JAAS
○ JBoss EAP’s security-domain approach
● VDB’s ACL
○ Data-roles
■ Mapping
■ Constraints
● Coarse-grained
● Fine-grained
Luigi Fugaro56
JBoss Data Virtualization
Data Security/ACL
Luigi Fugaro57
JBoss Data Virtualization
Data Security/ACL
Luigi Fugaro58
JBoss Data Virtualization
Data Security/ACL
Luigi Fugaro59
JBoss Data Virtualization
Data Security/ACL
JBoss Data Virtualization
Performance
Luigi Fugaro61
JBoss Data Virtualization
Performance
● Internal Materialized View
● External Materialized View
Luigi Fugaro62
JBoss Data Virtualization
Performance/Internal Materialized View
Luigi Fugaro63
JBoss Data Virtualization
Performance/External Materialized View
● Database
● Red Hat JBoss Data Grid
JBoss Data Virtualization
Architecture
Luigi Fugaro65
JBoss Data Virtualization
Architecture
● Balancing with HAProxy
● Clustering
● JDV and JDG
● Next...
Luigi Fugaro66
JBoss Data Virtualization
Architecture
● Balancing with HAProxy
● Clustering
● JDV and JDG
● Next...
Luigi Fugaro67
JBoss Data Virtualization
Architecture
● Balancing with HAProxy
● Clustering
● JDV and JDG
● Next...
Luigi Fugaro68
JBoss Data Virtualization
Architecture
● Balancing with HAProxy
● Clustering
● JDV and JDG
● Next...
Luigi Fugaro69
JBoss Data Virtualization
Architecture
● Balancing with HAProxy
● Clustering
● JDV and JDG
● Next… hopefully...
○ Debezium for Change Data Capture to get real time data
■ MySQL Connector
■ MongoDB Connector
■ PostgreSQL Connector
■ Oracle Connector (coming soon)
JBoss Data Virtualization
Business Intelligence
Luigi Fugaro71
JBoss Data Virtualization
Business Intelligence
Luigi Fugaro72
JBoss Data Virtualization
Business Intelligence
Q/A
Documentation
https://access.redhat.com/documentation/it/red-hat-jboss-data-virtualization
Component details
https://access.redhat.com/articles/703673
Supported configuration
https://access.redhat.com/articles/703663
THANK YOU
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews

JDV for Codemotion Rome 2017