Data Virtualization Demoette… Packaged Query Single Select Option

Slides:



Advertisements
Similar presentations
February 18, 2012 Lesson 3 Standard SQL. Lesson 3 Standard SQL.
Advertisements

CC SQL Utilities.
An End-User Perspective On Using NatQuery Building a Dynamic Variable T
Microsoft Access 2010 Chapter 7 Using SQL.
DB Audit Expert v1.1 for Oracle Copyright © SoftTree Technologies, Inc. This presentation is for DB Audit Expert for Oracle version 1.1 which.
Databases and LINQ Visual Basic 2010 How to Program 1.
ASP.NET Programming with C# and SQL Server First Edition
Session WW12 Session Title Jan Migge , Mamdouh Diab How to use A2 SQLDataGrid instead of wwGenericSQLGrid for SQL Databases Focus of presentation: The.
IS 221: DATABASE ADMINISTRATION Lecture 6:Create Users & Manage Users. Information Systems Department 1.
Views In some cases, it is not desirable for all users to see the entire logical model (that is, all the actual relations stored in the database.) In some.
Damian Tamayo Tutorial DTM Data Generator Fall 2008 CIS 764.
1 Chapter 6: Using Prompts in Tasks and Queries 6.1 Prompting in Projects 6.2 Creating and Using Prompts in Tasks 6.3 Creating and Using Prompts in Queries.
© Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Outline 25.1 Test-Driving the ATM Application 25.2.
Chapter 13 Views Oracle 10g: SQL. Oracle 10g: SQL2 Objectives Create a view, using CREATE VIEW command or the CREATE OR REPLACE VIEW command Employ the.
Module 5: Managing Content. Overview Publishing Content Executing Reports Creating Cached Instances Creating Snapshots and Report History Creating Subscriptions.
SQL INJECTION Diwakar Kumar Dinkar M.Tech, CS&E Roll Diwakar Kumar Dinkar M.Tech, CS&E Roll
SQL IMPLEMENTATION & ADMINISTRATION Indexing & Views.
Dept. of Computer & Information Sciences
SQL Database Management
Data Virtualization Demoette… ODBC Clients
Data Virtualization Tutorial… SSL with CIS Web Data Sources
Data Virtualization Tutorial: Custom Functions
Data Virtualization Demoette… Logging in CIS
Visual Basic 2010 How to Program
Project Management: Messages
Data Virtualization Demoette… Business Directory Custom Properties
Data Virtualization Demoette… Caching – Database – Multi Table
Business Directory REST API
Data Virtualization Tutorial: Introduction to SQL Script
Data Virtualization Demoette… Custom Java Procedures
Data Virtualization Demoette… Flat-File Data Sources
Data Virtualization Demoette… JMeter Load Testing CIS JDBC
Data Virtualization Demoette… ADO.NET Client
Data Virtualization Community Edition
Data Virtualization Demoette… JMeter Load Testing CIS SOAP
Data Virtualization Tutorial… LDAP Domains in CIS
Data Virtualization Community Edition
Data Virtualization Demoette… CIS Rights
Data Virtualization Tutorial… CORS and CIS
Data Virtualization Demoette… Data Lineage Reporting
Data Virtualization Tutorial… OAuth Example using Google Sheets
Data Virtualization Tutorial: XSLT and Streaming Transformations
Data Virtualization Demoette… JDBC Clients
What’s New in SQL Server 2016 Master Data Services
Data Virtualization Tutorial… Semijoin Optimization
Database application MySQL Database and PhpMyAdmin
Data Virtualization Demoette… Column-Based Security
Data Virtualization Demoette… Parameterized Queries
Data Virtualization Demoette… Salesforce.com Data Source
Data Virtualization Demoette… DDL Feature
Data Virtualization Tutorial: JSON_TABLE Queries
Data Virtualization Community Edition
CIS 336 strCompetitive Success/tutorialrank.com
CIS 336 str Education for Service-- tutorialrank.com.
Auditing in SQL Server 2008 DBA-364-M
Database Applications (15-415) DBMS Internals- Part III Lecture 15, March 11, 2018 Mohammad Hammoud.
© Copyright TIBCO Software Inc.
Agenda Database Development – Best Practices Why Performance Matters ?
CIS16 Application Programming with Visual Basic
Unit 9 NT1330 Client-Server Networking II Date: 8/9/2016
Chapter 2 Views.
Please thank our sponsors!
SQL This presentation will cover: View in database MySQL installation
DataMart (Data Warehouse) Tool:
Chapter 2 Views.
M1G Introduction to Database Development
IST 318 Database Administration
SQL Views Presented by: Dr. Samir Tartir
Shelly Cashman: Microsoft Access 2016
Microsoft 365 Business Technical Fundamentals Series
Presentation transcript:

Data Virtualization Demoette… Packaged Query Single Select Option Hello, and welcome to the Demoette series for Cisco Information Server, or CIS. Demoettes are brief instructional videos that demonstrate specific features of CIS. In this Demoette, we discuss the Packaged Query Single Select option.

Agenda What is it and why does it matter? A basic demo Summary Here is our agenda. We begin by defining the Packaged Query Single Select option and outlining its importance for our customers. Next we walk through a very basic demo of the Single Select option. Finally, we summarize the contents of this demoette.

Agenda What is it and whey does it matter? A basic demo Summary Let’s begin by discussing what the Single Select option is, and why it is important for our customers.

What is it? Packaged Query Single Select Option Packaged Queries enable CIS to execute non-standard data access statements If results must be filtered, CIS Optimizer cannot push down additional work If the Packaged Query is a single SELECT, the option may be selected Single Select permits more push-down by CIS As we have seen in a previous demoette, Packaged Queries are a way for CIS to execute non-standard data access statements by pushing them down unchanged to the underlying physical data source. This enables great flexibility for using non-standard statements with CIS, but it also limits the ability of the CIS optimizer to tune queries, because CIS cannot change the statements in the packaged query. For example, if we want to add a WHERE clause filter to the results of a packaged query, CIS cannot modify the packaged query to include this filter. Instead, CIS must retrieve the complete results of the packaged query, and perform the filtering itself. This can lead to inefficient network usage and longer response times for data consumers. However, if the packaged query is a single-statement operation that returns a result set, the Packaged Query Single Select option may be selected. This option enables CIS to modify the packaged query and push more work down to the physical data source.

Why does it matter? Packaged Query Single Select Option Makes CIS optimizer more powerful More work pushed to data source More efficient use of network Less processing required on CIS Server The Single Select option is important to our customers for several reasons. It gives more power to the CIS optimizer, enabling it to push more work down to data sources. This can result in faster processing, more efficient network usage, and faster throughput for data consumers, since less processing is required on the CIS server.

Agenda What is it and why does it matter? A basic demo Summary Next, let’s walk through a very basic demo of the Single Select option.

Demo: Here is the business problem… Here is the business problem that we illustrate in this demo. We are using a packaged query to access data on a PostgreSQL database. The packaged query lets us use PostgreSQL’s non-standard LIMIT keyword. We then use the packaged query in a virtual View, which adds a WHERE clause filter. Unfortunately, CIS must bring back the entire result set of the packaged query, and then filter the results. This means we are using the network inefficiently, and we are also adding to the processing load on CIS. In addition, the PostreSQL data source may have indexes defined that would make our filtering even more efficient. We’ll use the Single Select option to enable CIS to push the filter down to the data source and improve overall efficiency.

Before you begin: Import Optional CAR File You can easily build the resources needed for this demo from scratch. However, users may import a CAR file that is available with the Additional Resources that accompany this demo. The CAR file uses the Examples data that is delivered with CIS, so no new data source has to be configured.

Demo We’ll begin by showing the processing flow when the Single Select option is NOT chosen. This packaged query uses the non-standard LIMIT keyword, which postgres uses to limit the number of rows returned by a query. <CLICK> Note that the Single Select option is NOT chosen.

Demo Now we create a View that uses the packaged query, and adds a WHERE clause filter. <CLICK> As the execution plan shows. CIS must add its own filter step, because it cannot modify the packaged query in order to add the filter. This increases the amount of work that must be done on the CIS server, and it also forces us to bring unwanted rows over the network connection between postgres and CIS. <CLICK> We also see that CIS views the packaged query itself as simply a black box. It is viewed as a stored procedure that cannot be modified.

Demo Now let’s try the same packaged query, but with Single Select turned on.

Demo We create a view with the same filter. <CLICK> The execution plan is now simpler. The filter step is gone, and the Procedure step has been replaced by a Fetch. <CLICK> The Fetch step is interesting. With the Single Select option chosen, the original contents of the packaged query now appears enclosed in parentheses as a sub-select… <CLICK> … enabling the WHERE clause filter to be appended to the query. The filter now pushes down to the data source, which should be more efficient.

Demo Now we can understand why the Single Select option can only be used with packaged queries that perform a single select statement. Let’s use the multi-part option to create a new packaged query that performs a DELETE statement before the select. We’ll choose the Single Select option, which is invalid in this case. <CLICK> Now when we create a view using this packaged query, the execution plan embeds the packaged query contents in a sub-select. However, the sub-select is clearly not a valid SQL statement, and it will fail upon execution. We have seen both valid and invalid examples of the Packaged Query single select option. Our demo is complete.

Agenda What is it and why does it matter? A basic demo Summary Let’s summarize what we have seen in this presentation.

Summary Packaged Query Single Select Option Packaged Queries enable CIS to execute non-standard data access statements If results must be filtered, CIS Optimizer cannot push down additional work If the Packaged Query is a single SELECT, the option may be selected Single Select permits more push-down by CIS Makes CIS optimizer more powerful More work pushed to data source More efficient use of network Less processing required on CIS Server Packaged Queries are a way for CIS to execute non-standard data access statements by pushing them down unchanged to the underlying physical data source. This enables great flexibility for using non-standard statements with CIS, but it also limits the ability of the CIS optimizer to tune queries, because CIS cannot change the statements in the packaged query. For example, if we want to add a WHERE clause filter to the results of a packaged query, CIS cannot modify the packaged query to include this filter. Instead, CIS must retrieve the complete results of the packaged query, and perform the filtering itself. This can lead to inefficient network usage and longer response times for data consumers. However, if the packaged query is a single-statement operation that returns a result set, the Packaged Query Single Select option may be selected. This option enables CIS to modify the packaged query and push more work down to the physical data source. The Single Select option is important to our customers for several reasons. It gives more power to the CIS optimizer, enabling it to push more work down to data sources. This can result in faster processing, more efficient network usage, and faster throughput for data consumers, since less processing is required on the CIS server. Thank you.

TOMORROW starts here.