SlideShare a Scribd company logo
info@rittmanmead.com www.rittmanmead.com @rittmanmead
Using Oracle Big Data SQL to add Hadoop + NoSQL

to your Oracle Data Warehouse
Mark Rittman, CTO, Rittman Mead
SQL Celebration Day, Netherlands June 2016
info@rittmanmead.com www.rittmanmead.com @rittmanmead 2
•Many customers and organisations are now running initiatives around “big data”

•Some are IT-led and are looking for cost-savings around data warehouse storage + ETL

•Others are “skunkworks” projects in the marketing department that are now scaling-up

•Projects now emerging from pilot exercises

•And design patterns starting to emerge
Many Organisations are Running Big Data Initiatives
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Gives us an ability to store more data, at more detail, for longer

•Provides a cost-effective way to analyse vast amounts of data

•Hadoop & NoSQL technologies can give us “schema-on-read” capabilities

•There’s vast amounts of innovation in this area we can harness

•And it’s very complementary to Oracle BI & DW
Why is Hadoop of Interest to Us?
info@rittmanmead.com www.rittmanmead.com @rittmanmead 4
•Mark Rittman, Co-Founder of Rittman Mead

‣Oracle ACE Director, specialising in Oracle BI&DW

‣14 Years Experience with Oracle Technology

‣Regular columnist for Oracle Magazine

•Author of two Oracle Press Oracle BI books

‣Oracle Business Intelligence Developers Guide

‣Oracle Exalytics Revealed

‣Writer for Rittman Mead Blog :

http://www.rittmanmead.com/blog

•Email : mark.rittman@rittmanmead.com

•Twitter : @markrittman
About the Speaker
info@rittmanmead.com www.rittmanmead.com @rittmanmead
Flexible Cheap Storage for Logs, Feeds + Social Data
$50k
Hadoop
Node
Voice + Chat
Transcripts
Call Center LogsChat Logs iBeacon Logs Website LogsCRM Data Transactions Social FeedsDemographics
Raw Data
Customer 360 Apps
Predictive 

Models
SQL-on-Hadoop
Business analytics
Real-time Feeds,

batch and API
info@rittmanmead.com www.rittmanmead.com @rittmanmead
Incorporate Hadoop Data Reservoirs into DW Design
info@rittmanmead.com www.rittmanmead.com @rittmanmead
Oracle Big Data Product Architecture
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Oracle Big Data Appliance - Engineered System for running Hadoop alongside Exadata

•Oracle Big Data Connectors - Utility from Oracle for feeding Hadoop data into Oracle

•Oracle Data Integrator EE Big Data Option - Add Spark, Pig data transforms to Oracle ODI

•Oracle BI Enterprise Edition - can connect to Hive, Impala for federated queries

•Oracle Big Data Discovery - data wrangling + visualization tool for Hadoop data reservoirs

•Oracle Big Data SQL - extend Oracle SQL 

language + processing to Hadoop
Oracle Software Initiatives around Big Data
Hang on though…
This is Hadoop
Where everything is non-relational
isn’t SQL on Hadoop

somewhat missing the point?
Using Oracle Big Data SQL 3.0 to add Hadoop & NoSQL to your Oracle Data Warehouse
info@rittmanmead.com www.rittmanmead.com @rittmanmead
Where Can SQL Processing Be Useful with Hadoop?
•Hadoop is not a cheap substitute for enterprise DW platforms - don’t use it like this

•But adding SQL processing and abstraction can help in many scenarios:

• Query access to data stored in Hadoop as an archive

• Aggregating, sorting, filtering and transforming data

• Set-based transformation capabilities for other frameworks (e.g. Spark)

• Ad-hoc analysis and data discovery in-real time

• Providing tabular abstractions over complex datatypes
SQL!
Though 

SQL

isn’t actually

relational
According
to Chris Date

SQL is just

mappings
Tedd Codd

used 

Predicate

Calculus
and there’s

never been

a mainstream

relational

DBMS
but it is the

standard

language for

RDBMSs
and it’s great

for set-based

transforms

& queries
so

Yes SQL!
info@rittmanmead.com www.rittmanmead.com @rittmanmead 15
•Original developed at Facebook, now foundational within the Hadoop project

•Allows users to query Hadoop data using SQL-like language

•Tabular metadata layer that overlays files, can interpret semi-structured data (e.g. JSON)

•Generates MapReduce code to return required data

•Extensible through SerDes and Storage Handlers

•JDBC and ODBC drivers for most platforms/tools

•Perfect for set-based access + batch ETL work
Apache Hive : SQL Metadata + Engine over Hadoop
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Hive uses a RBDMS metastore to hold

table and column definitions in schemas

•Hive tables then map onto HDFS-stored files

‣Managed tables

‣External tables

•Oracle-like query optimizer, compiler,

executor

•JDBC and OBDC drivers,

plus CLI etc
16
How Does Hive Translate SQL into MapReduce?
Hive Thrift
Server
JDBC / ODBC
Parser Planner
Execution Engine
Metastore
MapReduc
e
HDFS
HueCLI
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Hive uses a RBDMS metastore to hold

table and column definitions in schemas

•Hive tables then map onto HDFS-stored files

‣Managed tables

‣External tables

•Oracle-like query optimizer, compiler,

executor

•JDBC and OBDC drivers,

plus CLI etc
17
How Does Hive Translate SQL into MapReduce?
hive> select count(*) from src_customer;


Total MapReduce jobs = 1

Launching Job 1 out of 1

Number of reduce tasks determined at compile time: 1

In order to change the average load for a reducer (in bytes):

set hive.exec.reducers.bytes.per.reducer=

In order to limit the maximum number of reducers:

set hive.exec.reducers.max=

In order to set a constant number of reducers:

set mapred.reduce.tasks=

Starting Job = job_201303171815_0003, Tracking URL = 

http://localhost.localdomain:50030/jobdetails.jsp…

Kill Command = /usr/lib/hadoop-0.20/bin/

hadoop job -Dmapred.job.tracker=localhost.localdomain:8021 

-kill job_201303171815_0003



2013-04-17 04:06:59,867 Stage-1 map = 0%, reduce = 0%

2013-04-17 04:07:03,926 Stage-1 map = 100%, reduce = 0%

2013-04-17 04:07:14,040 Stage-1 map = 100%, reduce = 33%

2013-04-17 04:07:15,049 Stage-1 map = 100%, reduce = 100%

Ended Job = job_201303171815_0003

OK

25

Time taken: 22.21 seconds
HiveQL

Query
MapReduce

Job submitted
Results 

returned
But Hive is too slow 

for ad-hoc queries
info@rittmanmead.com www.rittmanmead.com @rittmanmead 19
•Cloudera’s answer to Hive query response time issues

•MPP SQL query engine running on Hadoop, bypasses MapReduce for
direct data access

•Mostly in-memory, but spills to disk if required

•Uses Hive metastore to access Hive table metadata

•Similar SQL dialect to Hive - not as rich though and no support for Hive
SerDes, storage handlers etc
Cloudera Impala - Fast, MPP-style Access to Hadoop Data
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Apache Drill is another SQL-on-Hadoop project that focus on schema-free data discovery

•Inspired by Google Dremel, innovation is querying raw data with schema optional

•Automatically infers and detects schema from semi-structured datasets and NoSQL DBs

•Join across different silos of data e.g. JSON records, Hive tables and HBase database

•Aimed at different use-cases than Hive - 

low-latency queries, discovery 

(think Endeca vs OBIEE)
Apache Drill - SQL for Schema-Free Data Discovery
info@rittmanmead.com www.rittmanmead.com @rittmanmead 21
•A replacement for Hive, but uses Hive concepts and

data dictionary (metastore)

•MPP (Massively Parallel Processing) query engine

that runs within Hadoop

‣Uses same file formats, security,

resource management as Hadoop

•Processes queries in-memory

•Accesses standard HDFS file data

•Option to use Apache AVRO, RCFile,

LZO or Parquet (column-store)

•Designed for interactive, real-time

SQL-like access to Hadoop
How Impala Works
Impala
Hadoop
HDFS etc
BI Server
Presentation Svr
Cloudera Impala

ODBC Driver
Impala
Hadoop
HDFS etc
Impala
Hadoop
HDFS etc
Impala
Hadoop
HDFS etc
Impala
Hadoop
HDFS etc
Multi-Node

Hadoop Cluster
but sometimes,
but sometimes,
you need the real thing
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Originally part of Oracle Big Data 4.0 (BDA-only)

‣Also required Oracle Database 12c, Oracle Exadata Database Machine

•Extends Oracle Data Dictionary to cover Hive

•Extends Oracle SQL and SmartScan to Hadoop

•Extends Oracle Security Model over Hadoop

‣Fine-grained access control

‣Data redaction, data masking

‣Uses fast c-based readers where possible

(vs. Hive MapReduce generation)

‣Map Hadoop parallelism to Oracle PQ

‣Big Data SQL engine works on top of YARN

‣Like Spark, Tez, MR2
Oracle Big Data SQL
Exadata

Storage Servers
Hadoop

Cluster
Exadata Database

Server
Oracle Big

Data SQL
SQL Queries
SmartScan SmartScan
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•As with other next-gen SQL access layers, uses common Hive metastore table metadata

•leverages Hadoop standard APIs for HDFS file access, metadata integration etc
Leverages Hive Metastore and Hadoop file access APIs
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Brings query-offloading features of Exadata

to Oracle Big Data Appliance

•Query across both Oracle and Hadoop sources

•Intelligent query optimisation applies SmartScan

close to ALL data

•Use same SQL dialect across both sources

•Apply same security rules, policies, 

user access rights across both sources
Extending SmartScan, and Oracle SQL, Across All Data
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Read data from HDFS Data Node

‣Direct-path reads

‣C-based readers when possible

‣Use native Hadoop classes otherwise

•Translate bytes to Oracle

•Apply SmartScan to Oracle bytes

‣Apply filters

‣Project columns

‣Parse JSON/XML

‣Score models
How Big Data SQL Accesses Hadoop (HDFS) Data
Disks%
Data$Node$
Big$Data$SQL$Server$
External$Table$Services$
Smart$Scan$
RecordReader%
SerDe%
10110010%10110010%10110010%
1%
2%
3%
1
2
3
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•“Query Franchising – dispatch of query processing to self-similar compute agents on
disparate systems without loss of operational fidelity”
•Contrast with OBIEE which provides a query federation capability over Hadoop

•Sends sub-queries to each data source

•Relies on each data source’s native query engine, and resource management

•Query franchising using Big Data SQL ensures consistent resource management 

•And contrast with SQL translation tools (i.e. Oracle SQL to Impala)

•Either limits Oracle SQL to the subset that Hive, Impala supports

•Or translation engine has to transform each Oracle feature into Hive, Impala SQL
Query Franchising vs. SQL Translation / Federation
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Oracle Database 12c 12.1.0.2.0 with Big Data SQL option can view Hive table metadata

‣Linked by Exadata configuration steps to one or more BDA clusters

•DBA_HIVE_TABLES and USER_HIVE_TABLES exposes Hive metadata

•Oracle SQL*Developer 4.0.3, with Cloudera Hive drivers, can connect to Hive metastore
View Hive Table Metadata in the Oracle Data Dictionary
SQL> col database_name for a30
SQL> col table_name for a30
SQL> select database_name, table_name
2 from dba_hive_tables;
DATABASE_NAME TABLE_NAME
------------------------------ ------------------------------
default access_per_post
default access_per_post_categories
default access_per_post_full
default apachelog
default categories
default countries
default cust
default hive_raw_apache_access_log
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Big Data SQL accesses Hive tables through external table mechanism

‣ORACLE_HIVE external table type imports Hive metastore metadata

‣ORACLE_HDFS requires metadata to be specified

•Access parameters cluster and tablename specify Hive table source and BDA cluster
Hive Access through Oracle External Tables + Hive Driver
CREATE TABLE access_per_post_categories(
hostname varchar2(100),
request_date varchar2(100),
post_id varchar2(10),
title varchar2(200),
author varchar2(100),
category varchar2(100),
ip_integer number)
organization external
(type oracle_hive
default directory default_dir
access parameters(com.oracle.bigdata.tablename=default.access_per_post_categories));
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Run normal Oracle SQL from the Oracle Database server

•Big Data SQL query franchising then uses agents on Hadoop nodes to query and return
data independent of YARN scheduling; Oracle Database combines and returns full results
Running Oracle SQL on Hadoop Data Nodes
SELECT w.sess_id,w.cust_id,c.name
FROM web_logs w, customers c
WHERE w.source_country = ‘Brazil’
AND c.customer_id = w.cust_id
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•OBIEE can access Hadoop data via Hive, but it’s slow 

•(Impala only has subset of Oracle SQL capabilities)

•Big Data SQL presents all data to OBIEE as Oracle data, with full advanced analytic
capabilities across both platforms
Example : Combining Hadoop + Oracle Data for BI
Hive Weblog Activity table
Oracle Dimension lookup tables
Combined output

in report form
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Not all functions can be offloaded to Hadoop tier

•Even for non-offloadable operations Big Data SQL will perform column pruning and
datatype conversion (which saves a lot of resources)

•Other operations (non-offloadable) will be done on the database side

•Requires Oracle Database 12.1.0.2 + patchset, and per-disk licensing for Big Data SQL

•You need and Oracle Big Data Appliance, and Oracle Exadata, to use Big Data SQL
Restrictions when using Oracle Big Data SQL
SELECT NAME FROM v$sqlfn_metadata WHERE offloadable ='YES'
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•From Big Data SQL 3.0, commodity hardware can be used instead of BDA and Exadata

•Oracle Database 12.1.0.2 on x86_64 with Jan/Apr Proactive Bundle Patches

•Cloudera CDH 5.5 or Hortonworks HDP 2.3 on RHEL/OEL6

•See MOS Doc ID 2119369.1 - note cannot mix Engineered/Non-Engineered platforms
Running Big Data SQL on Commodity Hardware
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•No functional differences when running Big Data SQL on commodity hardware

•External table capability lives with the database, and the performance functionality with
the BDS cell software.

•All BDS features (SmartScan, offloading, storage indexes etc still available)

•But hardware can be a factor now, as we’re pushing processing down and data up the wire

•1GB ethernet can be too slow, 10Gb is a minimum (i.e. no InfiniBand)

•If you run on an undersized system you may see bottlenecks on the DB side. 
Big Data SQL on Commodity Hardware Considerations
But Hadoop is more than 

simple HDFS files
Using Oracle Big Data SQL 3.0 to add Hadoop & NoSQL to your Oracle Data Warehouse
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Subsequent releases of Big Data SQL have extended its Hadoop capabilties

•Support for Hive storage handlers (HBase, MongoDB etc)

•Hive partition elimination

•Better, more efficient access to Hadoop data

•Storage Indexes

•Predicate Push-Down for Parquet, ORC, HBase, Oracle NoSQL

•Bloom Filters

•Coming with Oracle Database 12.2

•Big Data-aware optimizer

•Dense Bloom Filters

•Oracle managed Big Data partitions
Going beyond Fast Unified Query Access to HDFS Data
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Hive Storage handlers give Hive the ability
to access data from non-HDFS sources

•MongoDB

•HBase

•Oracle NoSQL database

•Run HiveQL queries against NoSQL DBs

•From BDS1.1, Hive storage handlers can
be used with Big Data SQL

•Only MongoDB, HBase and NoSQL
currently “supported”

•Others should work but not tested
Big Data SQL and Hive Storage Handlers
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Create Hive table over HBase database as normal

•Typically done to add INSERT and DELETE capabilities to Hive, for DW dimension ETL

•Create Oracle external table as normal, using ORACLE_HIVE driver
Use of Hive Storage Handlers Transparent to BDS
CREATE EXTERNAL TABLE tablename colname coltype[, colname coltype,...]
ROW FORMAT
SERDE 'org.apache.hadoop.hive.hbase.HBaseSerDe'
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES (
'serialization.format'='1',
'hbase.columns.mapping'=':key,value:key,value:
CREATE TABLE tablename(colname colType[, colname colType...])
ORGANIZATION EXTERNAL
(TYPE ORACLE_HIVE DEFAULT DIRECTORY DEFAULT_DIR
ACCESS PARAMETERS
(access parameters)
)
REJECT LIMIT UNLIMITED;
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•From Big Data SQL 2.0, Storage Indexes
are automatically created in Big Data SQL
agents

•Check index before reading blocks – Skip
unnecessary I/Os

•An average of 65% faster than BDS 1.x

•Up to 100x faster for highly selective
queries

•Columns in SQL are mapped to fields in
the HDFS file via External Table Definitions

•Min / max value is recorded for each
HDFS Block in a storage index
Big Data SQL Storage Indexes
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Hadoop supports predicate push-down through several mechanisms (filetypes, Hive
partition pruning etc)

•Original BDS 1.0 supported Hive predicate push-down as part of SmartScan

•BDS 3.0 extends this by pushing SARGable (Search ARGument ABLE) predicates

•Into Parquet and ORCFile to reduce I/O when 

reading files from disk

•Into HBAse and Oracle NoSQL database 

to drive subscans of data from remote DB

•Oracle Database 12.2 will add more optimisations

•Columnar-caching 

•Big Data-Aware Query Optimizer, 

•Managed Hadoop partitions

•Dense Bloom Filters
Extending Predicate Push-Down Beyond Hive
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Typically a one-way street - queries run in Hadoop but results delivered through Oracle

•What if you want to load data into Hadoop, update data, do Hadoop>Hadoop transforms?

•Still requires formal Hive metadata, whereas direction is towards Drill & schema-free queries

•What if you have other RDBMSs as well as Oracle RDBMS? 

•Trend is towards moving all high-end analytic workloads into Hadoop - BDS is Oracle-only

•Requires Oracle 12c database, no 11g support

•And cost … BDS is $3k/Hadoop disk drive

•Can cost more than an Oracle BDA

•High-end, high-cost Oracle-centric solution

•of course!
… So What’s the Catch?
info@rittmanmead.com www.rittmanmead.com @rittmanmead
•Rich, comprehensive SQL access to all enterprise data

•Extend Oracle security, advanced analytic features and metadata across Hadoop & NoSQL
Oracle Big Data SQL Vision : Unified Query
http://www.rittmanmead.com
info@rittmanmead.com www.rittmanmead.com @rittmanmead
Using Oracle Big Data SQL to add Hadoop + NoSQL

to your Oracle Data Warehouse
Mark Rittman, CTO, Rittman Mead
SQL Celebration Day, Netherlands June 2016

More Related Content

What's hot (20)

PDF
OTN EMEA Tour 2016 : Deploying Full BI Platforms to Oracle Cloud
Mark Rittman
 
PDF
OTN EMEA TOUR 2016 - OBIEE12c New Features for End-Users, Developers and Sys...
Mark Rittman
 
PDF
Riga dev day 2016 adding a data reservoir and oracle bdd to extend your ora...
Mark Rittman
 
PDF
The Future of Analytics, Data Integration and BI on Big Data Platforms
Mark Rittman
 
PPTX
Unlock the value in your big data reservoir using oracle big data discovery a...
Mark Rittman
 
PDF
How a Tweet Went Viral - BIWA Summit 2017
Rittman Analytics
 
PDF
New World Hadoop Architectures (& What Problems They Really Solve) for Oracle...
Rittman Analytics
 
PDF
Oracle Big Data Spatial & Graph 
Social Media Analysis - Case Study
Mark Rittman
 
PDF
OBIEE12c and Embedded Essbase 12c - An Initial Look at Query Acceleration Use...
Mark Rittman
 
PDF
Deploying Full BI Platforms to Oracle Cloud
Mark Rittman
 
PDF
Innovation in the Data Warehouse - StampedeCon 2016
StampedeCon
 
PPTX
Big data architectures and the data lake
James Serra
 
PDF
Building a Next-gen Data Platform and Leveraging the OSS Ecosystem for Easy W...
StampedeCon
 
PPTX
Navigating the World of User Data Management and Data Discovery
DataWorks Summit/Hadoop Summit
 
PDF
Turn Data Into Actionable Insights - StampedeCon 2016
StampedeCon
 
PDF
Big Data Architecture Workshop - Vahid Amiri
datastack
 
PPTX
Hadoop Data Lake vs classical Data Warehouse: How to utilize best of both wor...
Kolja Manuel Rödel
 
PPTX
Hadoop and Enterprise Data Warehouse
DataWorks Summit
 
PDF
Building a Data Lake on AWS
Gary Stafford
 
PPTX
SQL on Hadoop for the Oracle Professional
Michael Rainey
 
OTN EMEA Tour 2016 : Deploying Full BI Platforms to Oracle Cloud
Mark Rittman
 
OTN EMEA TOUR 2016 - OBIEE12c New Features for End-Users, Developers and Sys...
Mark Rittman
 
Riga dev day 2016 adding a data reservoir and oracle bdd to extend your ora...
Mark Rittman
 
The Future of Analytics, Data Integration and BI on Big Data Platforms
Mark Rittman
 
Unlock the value in your big data reservoir using oracle big data discovery a...
Mark Rittman
 
How a Tweet Went Viral - BIWA Summit 2017
Rittman Analytics
 
New World Hadoop Architectures (& What Problems They Really Solve) for Oracle...
Rittman Analytics
 
Oracle Big Data Spatial & Graph 
Social Media Analysis - Case Study
Mark Rittman
 
OBIEE12c and Embedded Essbase 12c - An Initial Look at Query Acceleration Use...
Mark Rittman
 
Deploying Full BI Platforms to Oracle Cloud
Mark Rittman
 
Innovation in the Data Warehouse - StampedeCon 2016
StampedeCon
 
Big data architectures and the data lake
James Serra
 
Building a Next-gen Data Platform and Leveraging the OSS Ecosystem for Easy W...
StampedeCon
 
Navigating the World of User Data Management and Data Discovery
DataWorks Summit/Hadoop Summit
 
Turn Data Into Actionable Insights - StampedeCon 2016
StampedeCon
 
Big Data Architecture Workshop - Vahid Amiri
datastack
 
Hadoop Data Lake vs classical Data Warehouse: How to utilize best of both wor...
Kolja Manuel Rödel
 
Hadoop and Enterprise Data Warehouse
DataWorks Summit
 
Building a Data Lake on AWS
Gary Stafford
 
SQL on Hadoop for the Oracle Professional
Michael Rainey
 

Viewers also liked (18)

PPTX
Rolling stones power point o
chewitt5
 
PPTX
Spark vs. PL/SQL
OPITZ CONSULTING Deutschland
 
PPTX
Where are the slides?
Robin Moffatt
 
PDF
Spark Summit EU talk by Simon Whitear
Spark Summit
 
PDF
Spark Summit EU talk by Sudeep Das and Aish Faenton
Spark Summit
 
PDF
Connecting Hadoop and Oracle
Tanel Poder
 
PDF
Cassandra at eBay - Cassandra Summit 2012
Jay Patel
 
PDF
Realtime Analytical Query Processing and Predictive Model Building on High Di...
Spark Summit
 
PDF
Aws seminar-tokyo dan-jp-final-publish
awsadovantageseminar
 
PDF
Leticia alonso inmaculada concepcion
ABNCFIE VALLADOLID
 
PPTX
Employee of the month
Adam Chard
 
PPTX
Cumpleaños especial (pasado)
Jessica Viviana Toledo Aranda
 
PPTX
Sistem pencernaan katak
Nurhidayah Yusuf
 
PDF
PwC 2016 Top Issues - The Aging Workforce
Todd DeStefano
 
PPTX
Sistem gerak jadi
Muhammad Fikri
 
PPTX
Erik j. robinson
erikrobinson
 
PDF
Barrow_Quarterly_1997_Physical_Aspects_of_Stx_Radiosurgery
Jeffrey A. Fiedler
 
PDF
Goal worksheet
Jennifer Gaither
 
Rolling stones power point o
chewitt5
 
Where are the slides?
Robin Moffatt
 
Spark Summit EU talk by Simon Whitear
Spark Summit
 
Spark Summit EU talk by Sudeep Das and Aish Faenton
Spark Summit
 
Connecting Hadoop and Oracle
Tanel Poder
 
Cassandra at eBay - Cassandra Summit 2012
Jay Patel
 
Realtime Analytical Query Processing and Predictive Model Building on High Di...
Spark Summit
 
Aws seminar-tokyo dan-jp-final-publish
awsadovantageseminar
 
Leticia alonso inmaculada concepcion
ABNCFIE VALLADOLID
 
Employee of the month
Adam Chard
 
Cumpleaños especial (pasado)
Jessica Viviana Toledo Aranda
 
Sistem pencernaan katak
Nurhidayah Yusuf
 
PwC 2016 Top Issues - The Aging Workforce
Todd DeStefano
 
Sistem gerak jadi
Muhammad Fikri
 
Erik j. robinson
erikrobinson
 
Barrow_Quarterly_1997_Physical_Aspects_of_Stx_Radiosurgery
Jeffrey A. Fiedler
 
Goal worksheet
Jennifer Gaither
 
Ad

Similar to Using Oracle Big Data SQL 3.0 to add Hadoop & NoSQL to your Oracle Data Warehouse (20)

PDF
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...
Mark Rittman
 
PPTX
Twitter with hadoop for oow
Gwen (Chen) Shapira
 
PDF
Big Data Developers Moscow Meetup 1 - sql on hadoop
bddmoscow
 
PDF
Technologies for Data Analytics Platform
N Masahiro
 
PPTX
Apache drill
MapR Technologies
 
PPT
ODI 11g in the Enterprise - BIWA 2013
Mark Rittman
 
PDF
IlOUG Tech Days 2016 - Unlock the Value in your Data Reservoir using Oracle B...
Mark Rittman
 
PPTX
SQL on Hadoop
Bigdatapump
 
PPTX
Spark SQL
Caserta
 
PPSX
How to use Big Data and Data Lake concept in business using Hadoop and Spark...
Institute of Contemporary Sciences
 
PDF
SQL Engines for Hadoop - The case for Impala
markgrover
 
PPTX
Big Data 2.0: YARN Enablement for Distributed ETL & SQL with Hadoop
Caserta
 
PDF
Big Data visualization with Apache Spark and Zeppelin
prajods
 
PPT
Etu Solution Day 2014 Track-D: 掌握Impala和Spark
James Chen
 
PPTX
Modernize Your Existing EDW with IBM Big SQL & Hortonworks Data Platform
Hortonworks
 
PPTX
Accelerating Big Data Analytics
Attunity
 
PDF
Meetup Oracle Database BCN: 2.1 Data Management Trends
avanttic Consultoría Tecnológica
 
PPT
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
Andrew Brust
 
PPTX
Microsoft's Big Play for Big Data
Andrew Brust
 
PPTX
Practical introduction to hadoop
inside-BigData.com
 
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...
Mark Rittman
 
Twitter with hadoop for oow
Gwen (Chen) Shapira
 
Big Data Developers Moscow Meetup 1 - sql on hadoop
bddmoscow
 
Technologies for Data Analytics Platform
N Masahiro
 
Apache drill
MapR Technologies
 
ODI 11g in the Enterprise - BIWA 2013
Mark Rittman
 
IlOUG Tech Days 2016 - Unlock the Value in your Data Reservoir using Oracle B...
Mark Rittman
 
SQL on Hadoop
Bigdatapump
 
Spark SQL
Caserta
 
How to use Big Data and Data Lake concept in business using Hadoop and Spark...
Institute of Contemporary Sciences
 
SQL Engines for Hadoop - The case for Impala
markgrover
 
Big Data 2.0: YARN Enablement for Distributed ETL & SQL with Hadoop
Caserta
 
Big Data visualization with Apache Spark and Zeppelin
prajods
 
Etu Solution Day 2014 Track-D: 掌握Impala和Spark
James Chen
 
Modernize Your Existing EDW with IBM Big SQL & Hortonworks Data Platform
Hortonworks
 
Accelerating Big Data Analytics
Attunity
 
Meetup Oracle Database BCN: 2.1 Data Management Trends
avanttic Consultoría Tecnológica
 
Microsoft's Big Play for Big Data- Visual Studio Live! NY 2012
Andrew Brust
 
Microsoft's Big Play for Big Data
Andrew Brust
 
Practical introduction to hadoop
inside-BigData.com
 
Ad

More from Mark Rittman (12)

PDF
Adding a Data Reservoir to your Oracle Data Warehouse for Customer 360-Degree...
Mark Rittman
 
PDF
What is Big Data Discovery, and how it complements traditional business anal...
Mark Rittman
 
PDF
Deploying Full Oracle BI Platforms to Oracle Cloud - OOW2015
Mark Rittman
 
PDF
Delivering the Data Factory, Data Reservoir and a Scalable Oracle Big Data Ar...
Mark Rittman
 
PDF
End to-end hadoop development using OBIEE, ODI, Oracle Big Data SQL and Oracl...
Mark Rittman
 
PDF
OBIEE11g Seminar by Mark Rittman for OU Expert Summit, Dubai 2015
Mark Rittman
 
PDF
BIWA2015 - Bringing Oracle Big Data SQL to OBIEE and ODI
Mark Rittman
 
PDF
OGH 2015 - Hadoop (Oracle BDA) and Oracle Technologies on BI Projects
Mark Rittman
 
PDF
UKOUG Tech'14 Super Sunday : Deep-Dive into Big Data ETL with ODI12c
Mark Rittman
 
PDF
Part 1 - Introduction to Hadoop and Big Data Technologies for Oracle BI & DW ...
Mark Rittman
 
PDF
Part 4 - Hadoop Data Output and Reporting using OBIEE11g
Mark Rittman
 
PDF
Part 2 - Hadoop Data Loading using Hadoop Tools and ODI12c
Mark Rittman
 
Adding a Data Reservoir to your Oracle Data Warehouse for Customer 360-Degree...
Mark Rittman
 
What is Big Data Discovery, and how it complements traditional business anal...
Mark Rittman
 
Deploying Full Oracle BI Platforms to Oracle Cloud - OOW2015
Mark Rittman
 
Delivering the Data Factory, Data Reservoir and a Scalable Oracle Big Data Ar...
Mark Rittman
 
End to-end hadoop development using OBIEE, ODI, Oracle Big Data SQL and Oracl...
Mark Rittman
 
OBIEE11g Seminar by Mark Rittman for OU Expert Summit, Dubai 2015
Mark Rittman
 
BIWA2015 - Bringing Oracle Big Data SQL to OBIEE and ODI
Mark Rittman
 
OGH 2015 - Hadoop (Oracle BDA) and Oracle Technologies on BI Projects
Mark Rittman
 
UKOUG Tech'14 Super Sunday : Deep-Dive into Big Data ETL with ODI12c
Mark Rittman
 
Part 1 - Introduction to Hadoop and Big Data Technologies for Oracle BI & DW ...
Mark Rittman
 
Part 4 - Hadoop Data Output and Reporting using OBIEE11g
Mark Rittman
 
Part 2 - Hadoop Data Loading using Hadoop Tools and ODI12c
Mark Rittman
 

Recently uploaded (20)

PDF
A Web Repository System for Data Mining in Drug Discovery
IJDKP
 
PPSX
PPT1_CB_VII_CS_Ch3_FunctionsandChartsinCalc.ppsx
animaroy81
 
PPTX
PPT2 W1L2.pptx.........................................
palicteronalyn26
 
PPTX
ppt somu_Jarvis_AI_Assistant_presen.pptx
MohammedumarFarhan
 
PPTX
Presentation by Tariq & Mohammed (1).pptx
AbooddSandoqaa
 
PPTX
727325165-Unit-1-Data-Analytics-PPT-1.pptx
revathi148366
 
DOCX
Artigo - Playing to Win.planejamento docx
KellyXavier15
 
PPTX
Communication_Skills_Class10_Visual.pptx
namanrastogi70555
 
PDF
Business Automation Solution with Excel 1.1.pdf
Vivek Kedia
 
PDF
Orchestrating Data Workloads With Airflow.pdf
ssuserae5511
 
PDF
Kafka Use Cases Real-World Applications
Accentfuture
 
PPTX
一比一原版(TUC毕业证书)开姆尼茨工业大学毕业证如何办理
taqyed
 
DOCX
Starbucks in the Indian market through its joint venture.
sales480687
 
PDF
TCU EVALUATION FACULTY TCU Taguig City 1st Semester 2017-2018
MELJUN CORTES
 
PDF
Digital-Transformation-for-Federal-Agencies.pdf.pdf
One Federal Solution
 
PDF
Data science AI/Ml basics to learn .pdf
deokhushi04
 
PDF
ilide.info-tg-understanding-culture-society-and-politics-pr_127f984d2904c57ec...
jed P
 
PPTX
Smart_Workplace_Assistant_Presentation (1).pptx
kiccha1703
 
PPTX
MENU-DRIVEN PROGRAM ON ARUNACHAL PRADESH.pptx
manvi200807
 
PDF
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
Tamanna36
 
A Web Repository System for Data Mining in Drug Discovery
IJDKP
 
PPT1_CB_VII_CS_Ch3_FunctionsandChartsinCalc.ppsx
animaroy81
 
PPT2 W1L2.pptx.........................................
palicteronalyn26
 
ppt somu_Jarvis_AI_Assistant_presen.pptx
MohammedumarFarhan
 
Presentation by Tariq & Mohammed (1).pptx
AbooddSandoqaa
 
727325165-Unit-1-Data-Analytics-PPT-1.pptx
revathi148366
 
Artigo - Playing to Win.planejamento docx
KellyXavier15
 
Communication_Skills_Class10_Visual.pptx
namanrastogi70555
 
Business Automation Solution with Excel 1.1.pdf
Vivek Kedia
 
Orchestrating Data Workloads With Airflow.pdf
ssuserae5511
 
Kafka Use Cases Real-World Applications
Accentfuture
 
一比一原版(TUC毕业证书)开姆尼茨工业大学毕业证如何办理
taqyed
 
Starbucks in the Indian market through its joint venture.
sales480687
 
TCU EVALUATION FACULTY TCU Taguig City 1st Semester 2017-2018
MELJUN CORTES
 
Digital-Transformation-for-Federal-Agencies.pdf.pdf
One Federal Solution
 
Data science AI/Ml basics to learn .pdf
deokhushi04
 
ilide.info-tg-understanding-culture-society-and-politics-pr_127f984d2904c57ec...
jed P
 
Smart_Workplace_Assistant_Presentation (1).pptx
kiccha1703
 
MENU-DRIVEN PROGRAM ON ARUNACHAL PRADESH.pptx
manvi200807
 
NVIDIA Triton Inference Server, a game-changing platform for deploying AI mod...
Tamanna36
 

Using Oracle Big Data SQL 3.0 to add Hadoop & NoSQL to your Oracle Data Warehouse

  • 1. [email protected] www.rittmanmead.com @rittmanmead Using Oracle Big Data SQL to add Hadoop + NoSQL
 to your Oracle Data Warehouse Mark Rittman, CTO, Rittman Mead SQL Celebration Day, Netherlands June 2016
  • 2. [email protected] www.rittmanmead.com @rittmanmead 2 •Many customers and organisations are now running initiatives around “big data” •Some are IT-led and are looking for cost-savings around data warehouse storage + ETL •Others are “skunkworks” projects in the marketing department that are now scaling-up •Projects now emerging from pilot exercises •And design patterns starting to emerge Many Organisations are Running Big Data Initiatives
  • 3. [email protected] www.rittmanmead.com @rittmanmead •Gives us an ability to store more data, at more detail, for longer •Provides a cost-effective way to analyse vast amounts of data •Hadoop & NoSQL technologies can give us “schema-on-read” capabilities •There’s vast amounts of innovation in this area we can harness •And it’s very complementary to Oracle BI & DW Why is Hadoop of Interest to Us?
  • 4. [email protected] www.rittmanmead.com @rittmanmead 4 •Mark Rittman, Co-Founder of Rittman Mead ‣Oracle ACE Director, specialising in Oracle BI&DW ‣14 Years Experience with Oracle Technology ‣Regular columnist for Oracle Magazine •Author of two Oracle Press Oracle BI books ‣Oracle Business Intelligence Developers Guide ‣Oracle Exalytics Revealed ‣Writer for Rittman Mead Blog :
 http://www.rittmanmead.com/blog •Email : [email protected] •Twitter : @markrittman About the Speaker
  • 5. [email protected] www.rittmanmead.com @rittmanmead Flexible Cheap Storage for Logs, Feeds + Social Data $50k Hadoop Node Voice + Chat Transcripts Call Center LogsChat Logs iBeacon Logs Website LogsCRM Data Transactions Social FeedsDemographics Raw Data Customer 360 Apps Predictive 
 Models SQL-on-Hadoop Business analytics Real-time Feeds,
 batch and API
  • 8. [email protected] www.rittmanmead.com @rittmanmead •Oracle Big Data Appliance - Engineered System for running Hadoop alongside Exadata •Oracle Big Data Connectors - Utility from Oracle for feeding Hadoop data into Oracle •Oracle Data Integrator EE Big Data Option - Add Spark, Pig data transforms to Oracle ODI •Oracle BI Enterprise Edition - can connect to Hive, Impala for federated queries •Oracle Big Data Discovery - data wrangling + visualization tool for Hadoop data reservoirs •Oracle Big Data SQL - extend Oracle SQL 
 language + processing to Hadoop Oracle Software Initiatives around Big Data
  • 11. Where everything is non-relational
  • 12. isn’t SQL on Hadoop
 somewhat missing the point?
  • 14. [email protected] www.rittmanmead.com @rittmanmead Where Can SQL Processing Be Useful with Hadoop? •Hadoop is not a cheap substitute for enterprise DW platforms - don’t use it like this •But adding SQL processing and abstraction can help in many scenarios: • Query access to data stored in Hadoop as an archive • Aggregating, sorting, filtering and transforming data • Set-based transformation capabilities for other frameworks (e.g. Spark) • Ad-hoc analysis and data discovery in-real time • Providing tabular abstractions over complex datatypes SQL! Though 
 SQL
 isn’t actually
 relational According to Chris Date
 SQL is just
 mappings Tedd Codd
 used 
 Predicate
 Calculus and there’s
 never been
 a mainstream
 relational
 DBMS but it is the
 standard
 language for
 RDBMSs and it’s great
 for set-based
 transforms
 & queries so
 Yes SQL!
  • 15. [email protected] www.rittmanmead.com @rittmanmead 15 •Original developed at Facebook, now foundational within the Hadoop project •Allows users to query Hadoop data using SQL-like language •Tabular metadata layer that overlays files, can interpret semi-structured data (e.g. JSON) •Generates MapReduce code to return required data •Extensible through SerDes and Storage Handlers •JDBC and ODBC drivers for most platforms/tools •Perfect for set-based access + batch ETL work Apache Hive : SQL Metadata + Engine over Hadoop
  • 16. [email protected] www.rittmanmead.com @rittmanmead •Hive uses a RBDMS metastore to hold
 table and column definitions in schemas •Hive tables then map onto HDFS-stored files ‣Managed tables ‣External tables •Oracle-like query optimizer, compiler,
 executor •JDBC and OBDC drivers,
 plus CLI etc 16 How Does Hive Translate SQL into MapReduce? Hive Thrift Server JDBC / ODBC Parser Planner Execution Engine Metastore MapReduc e HDFS HueCLI
  • 17. [email protected] www.rittmanmead.com @rittmanmead •Hive uses a RBDMS metastore to hold
 table and column definitions in schemas •Hive tables then map onto HDFS-stored files ‣Managed tables ‣External tables •Oracle-like query optimizer, compiler,
 executor •JDBC and OBDC drivers,
 plus CLI etc 17 How Does Hive Translate SQL into MapReduce? hive> select count(*) from src_customer; 
 Total MapReduce jobs = 1
 Launching Job 1 out of 1
 Number of reduce tasks determined at compile time: 1
 In order to change the average load for a reducer (in bytes):
 set hive.exec.reducers.bytes.per.reducer=
 In order to limit the maximum number of reducers:
 set hive.exec.reducers.max=
 In order to set a constant number of reducers:
 set mapred.reduce.tasks=
 Starting Job = job_201303171815_0003, Tracking URL = 
 http://localhost.localdomain:50030/jobdetails.jsp…
 Kill Command = /usr/lib/hadoop-0.20/bin/
 hadoop job -Dmapred.job.tracker=localhost.localdomain:8021 
 -kill job_201303171815_0003
 
 2013-04-17 04:06:59,867 Stage-1 map = 0%, reduce = 0%
 2013-04-17 04:07:03,926 Stage-1 map = 100%, reduce = 0%
 2013-04-17 04:07:14,040 Stage-1 map = 100%, reduce = 33%
 2013-04-17 04:07:15,049 Stage-1 map = 100%, reduce = 100%
 Ended Job = job_201303171815_0003
 OK
 25
 Time taken: 22.21 seconds HiveQL
 Query MapReduce
 Job submitted Results 
 returned
  • 18. But Hive is too slow 
 for ad-hoc queries
  • 19. [email protected] www.rittmanmead.com @rittmanmead 19 •Cloudera’s answer to Hive query response time issues •MPP SQL query engine running on Hadoop, bypasses MapReduce for direct data access •Mostly in-memory, but spills to disk if required •Uses Hive metastore to access Hive table metadata •Similar SQL dialect to Hive - not as rich though and no support for Hive SerDes, storage handlers etc Cloudera Impala - Fast, MPP-style Access to Hadoop Data
  • 20. [email protected] www.rittmanmead.com @rittmanmead •Apache Drill is another SQL-on-Hadoop project that focus on schema-free data discovery •Inspired by Google Dremel, innovation is querying raw data with schema optional •Automatically infers and detects schema from semi-structured datasets and NoSQL DBs •Join across different silos of data e.g. JSON records, Hive tables and HBase database •Aimed at different use-cases than Hive - 
 low-latency queries, discovery 
 (think Endeca vs OBIEE) Apache Drill - SQL for Schema-Free Data Discovery
  • 21. [email protected] www.rittmanmead.com @rittmanmead 21 •A replacement for Hive, but uses Hive concepts and
 data dictionary (metastore) •MPP (Massively Parallel Processing) query engine
 that runs within Hadoop ‣Uses same file formats, security,
 resource management as Hadoop •Processes queries in-memory •Accesses standard HDFS file data •Option to use Apache AVRO, RCFile,
 LZO or Parquet (column-store) •Designed for interactive, real-time
 SQL-like access to Hadoop How Impala Works Impala Hadoop HDFS etc BI Server Presentation Svr Cloudera Impala
 ODBC Driver Impala Hadoop HDFS etc Impala Hadoop HDFS etc Impala Hadoop HDFS etc Impala Hadoop HDFS etc Multi-Node
 Hadoop Cluster
  • 23. but sometimes, you need the real thing
  • 24. [email protected] www.rittmanmead.com @rittmanmead •Originally part of Oracle Big Data 4.0 (BDA-only) ‣Also required Oracle Database 12c, Oracle Exadata Database Machine •Extends Oracle Data Dictionary to cover Hive •Extends Oracle SQL and SmartScan to Hadoop •Extends Oracle Security Model over Hadoop ‣Fine-grained access control ‣Data redaction, data masking ‣Uses fast c-based readers where possible
 (vs. Hive MapReduce generation) ‣Map Hadoop parallelism to Oracle PQ ‣Big Data SQL engine works on top of YARN ‣Like Spark, Tez, MR2 Oracle Big Data SQL Exadata
 Storage Servers Hadoop
 Cluster Exadata Database
 Server Oracle Big
 Data SQL SQL Queries SmartScan SmartScan
  • 25. [email protected] www.rittmanmead.com @rittmanmead •As with other next-gen SQL access layers, uses common Hive metastore table metadata •leverages Hadoop standard APIs for HDFS file access, metadata integration etc Leverages Hive Metastore and Hadoop file access APIs
  • 26. [email protected] www.rittmanmead.com @rittmanmead •Brings query-offloading features of Exadata
 to Oracle Big Data Appliance •Query across both Oracle and Hadoop sources •Intelligent query optimisation applies SmartScan
 close to ALL data •Use same SQL dialect across both sources •Apply same security rules, policies, 
 user access rights across both sources Extending SmartScan, and Oracle SQL, Across All Data
  • 27. [email protected] www.rittmanmead.com @rittmanmead •Read data from HDFS Data Node ‣Direct-path reads ‣C-based readers when possible ‣Use native Hadoop classes otherwise
 •Translate bytes to Oracle
 •Apply SmartScan to Oracle bytes ‣Apply filters ‣Project columns ‣Parse JSON/XML ‣Score models How Big Data SQL Accesses Hadoop (HDFS) Data Disks% Data$Node$ Big$Data$SQL$Server$ External$Table$Services$ Smart$Scan$ RecordReader% SerDe% 10110010%10110010%10110010% 1% 2% 3% 1 2 3
  • 28. [email protected] www.rittmanmead.com @rittmanmead •“Query Franchising – dispatch of query processing to self-similar compute agents on disparate systems without loss of operational fidelity” •Contrast with OBIEE which provides a query federation capability over Hadoop •Sends sub-queries to each data source •Relies on each data source’s native query engine, and resource management •Query franchising using Big Data SQL ensures consistent resource management •And contrast with SQL translation tools (i.e. Oracle SQL to Impala) •Either limits Oracle SQL to the subset that Hive, Impala supports •Or translation engine has to transform each Oracle feature into Hive, Impala SQL Query Franchising vs. SQL Translation / Federation
  • 29. [email protected] www.rittmanmead.com @rittmanmead •Oracle Database 12c 12.1.0.2.0 with Big Data SQL option can view Hive table metadata ‣Linked by Exadata configuration steps to one or more BDA clusters •DBA_HIVE_TABLES and USER_HIVE_TABLES exposes Hive metadata •Oracle SQL*Developer 4.0.3, with Cloudera Hive drivers, can connect to Hive metastore View Hive Table Metadata in the Oracle Data Dictionary SQL> col database_name for a30 SQL> col table_name for a30 SQL> select database_name, table_name 2 from dba_hive_tables; DATABASE_NAME TABLE_NAME ------------------------------ ------------------------------ default access_per_post default access_per_post_categories default access_per_post_full default apachelog default categories default countries default cust default hive_raw_apache_access_log
  • 30. [email protected] www.rittmanmead.com @rittmanmead •Big Data SQL accesses Hive tables through external table mechanism ‣ORACLE_HIVE external table type imports Hive metastore metadata ‣ORACLE_HDFS requires metadata to be specified •Access parameters cluster and tablename specify Hive table source and BDA cluster Hive Access through Oracle External Tables + Hive Driver CREATE TABLE access_per_post_categories( hostname varchar2(100), request_date varchar2(100), post_id varchar2(10), title varchar2(200), author varchar2(100), category varchar2(100), ip_integer number) organization external (type oracle_hive default directory default_dir access parameters(com.oracle.bigdata.tablename=default.access_per_post_categories));
  • 31. [email protected] www.rittmanmead.com @rittmanmead •Run normal Oracle SQL from the Oracle Database server •Big Data SQL query franchising then uses agents on Hadoop nodes to query and return data independent of YARN scheduling; Oracle Database combines and returns full results Running Oracle SQL on Hadoop Data Nodes SELECT w.sess_id,w.cust_id,c.name FROM web_logs w, customers c WHERE w.source_country = ‘Brazil’ AND c.customer_id = w.cust_id
  • 32. [email protected] www.rittmanmead.com @rittmanmead •OBIEE can access Hadoop data via Hive, but it’s slow •(Impala only has subset of Oracle SQL capabilities) •Big Data SQL presents all data to OBIEE as Oracle data, with full advanced analytic capabilities across both platforms Example : Combining Hadoop + Oracle Data for BI Hive Weblog Activity table Oracle Dimension lookup tables Combined output
 in report form
  • 33. [email protected] www.rittmanmead.com @rittmanmead •Not all functions can be offloaded to Hadoop tier •Even for non-offloadable operations Big Data SQL will perform column pruning and datatype conversion (which saves a lot of resources) •Other operations (non-offloadable) will be done on the database side •Requires Oracle Database 12.1.0.2 + patchset, and per-disk licensing for Big Data SQL •You need and Oracle Big Data Appliance, and Oracle Exadata, to use Big Data SQL Restrictions when using Oracle Big Data SQL SELECT NAME FROM v$sqlfn_metadata WHERE offloadable ='YES'
  • 34. [email protected] www.rittmanmead.com @rittmanmead •From Big Data SQL 3.0, commodity hardware can be used instead of BDA and Exadata •Oracle Database 12.1.0.2 on x86_64 with Jan/Apr Proactive Bundle Patches •Cloudera CDH 5.5 or Hortonworks HDP 2.3 on RHEL/OEL6 •See MOS Doc ID 2119369.1 - note cannot mix Engineered/Non-Engineered platforms Running Big Data SQL on Commodity Hardware
  • 35. [email protected] www.rittmanmead.com @rittmanmead •No functional differences when running Big Data SQL on commodity hardware •External table capability lives with the database, and the performance functionality with the BDS cell software. •All BDS features (SmartScan, offloading, storage indexes etc still available) •But hardware can be a factor now, as we’re pushing processing down and data up the wire •1GB ethernet can be too slow, 10Gb is a minimum (i.e. no InfiniBand) •If you run on an undersized system you may see bottlenecks on the DB side.  Big Data SQL on Commodity Hardware Considerations
  • 36. But Hadoop is more than 
 simple HDFS files
  • 38. [email protected] www.rittmanmead.com @rittmanmead •Subsequent releases of Big Data SQL have extended its Hadoop capabilties •Support for Hive storage handlers (HBase, MongoDB etc) •Hive partition elimination •Better, more efficient access to Hadoop data •Storage Indexes •Predicate Push-Down for Parquet, ORC, HBase, Oracle NoSQL •Bloom Filters •Coming with Oracle Database 12.2 •Big Data-aware optimizer •Dense Bloom Filters •Oracle managed Big Data partitions Going beyond Fast Unified Query Access to HDFS Data
  • 39. [email protected] www.rittmanmead.com @rittmanmead •Hive Storage handlers give Hive the ability to access data from non-HDFS sources •MongoDB •HBase •Oracle NoSQL database •Run HiveQL queries against NoSQL DBs •From BDS1.1, Hive storage handlers can be used with Big Data SQL •Only MongoDB, HBase and NoSQL currently “supported” •Others should work but not tested Big Data SQL and Hive Storage Handlers
  • 40. [email protected] www.rittmanmead.com @rittmanmead •Create Hive table over HBase database as normal •Typically done to add INSERT and DELETE capabilities to Hive, for DW dimension ETL •Create Oracle external table as normal, using ORACLE_HIVE driver Use of Hive Storage Handlers Transparent to BDS CREATE EXTERNAL TABLE tablename colname coltype[, colname coltype,...] ROW FORMAT SERDE 'org.apache.hadoop.hive.hbase.HBaseSerDe' STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ( 'serialization.format'='1', 'hbase.columns.mapping'=':key,value:key,value: CREATE TABLE tablename(colname colType[, colname colType...]) ORGANIZATION EXTERNAL (TYPE ORACLE_HIVE DEFAULT DIRECTORY DEFAULT_DIR ACCESS PARAMETERS (access parameters) ) REJECT LIMIT UNLIMITED;
  • 41. [email protected] www.rittmanmead.com @rittmanmead •From Big Data SQL 2.0, Storage Indexes are automatically created in Big Data SQL agents •Check index before reading blocks – Skip unnecessary I/Os •An average of 65% faster than BDS 1.x •Up to 100x faster for highly selective queries •Columns in SQL are mapped to fields in the HDFS file via External Table Definitions •Min / max value is recorded for each HDFS Block in a storage index Big Data SQL Storage Indexes
  • 42. [email protected] www.rittmanmead.com @rittmanmead •Hadoop supports predicate push-down through several mechanisms (filetypes, Hive partition pruning etc) •Original BDS 1.0 supported Hive predicate push-down as part of SmartScan •BDS 3.0 extends this by pushing SARGable (Search ARGument ABLE) predicates •Into Parquet and ORCFile to reduce I/O when 
 reading files from disk •Into HBAse and Oracle NoSQL database 
 to drive subscans of data from remote DB •Oracle Database 12.2 will add more optimisations •Columnar-caching •Big Data-Aware Query Optimizer, •Managed Hadoop partitions •Dense Bloom Filters Extending Predicate Push-Down Beyond Hive
  • 43. [email protected] www.rittmanmead.com @rittmanmead •Typically a one-way street - queries run in Hadoop but results delivered through Oracle •What if you want to load data into Hadoop, update data, do Hadoop>Hadoop transforms? •Still requires formal Hive metadata, whereas direction is towards Drill & schema-free queries •What if you have other RDBMSs as well as Oracle RDBMS? •Trend is towards moving all high-end analytic workloads into Hadoop - BDS is Oracle-only •Requires Oracle 12c database, no 11g support •And cost … BDS is $3k/Hadoop disk drive •Can cost more than an Oracle BDA •High-end, high-cost Oracle-centric solution •of course! … So What’s the Catch?
  • 44. [email protected] www.rittmanmead.com @rittmanmead •Rich, comprehensive SQL access to all enterprise data •Extend Oracle security, advanced analytic features and metadata across Hadoop & NoSQL Oracle Big Data SQL Vision : Unified Query
  • 46. [email protected] www.rittmanmead.com @rittmanmead Using Oracle Big Data SQL to add Hadoop + NoSQL
 to your Oracle Data Warehouse Mark Rittman, CTO, Rittman Mead SQL Celebration Day, Netherlands June 2016