Data Modeling in Looker
|
|
- Ami Nicholson
- 6 years ago
- Views:
Transcription
1 paper Data Modeling in Looker Quick iteration of metric calculations for powerful data exploration By Joshua Moskovitz The Reusability Paradigm of LookML At Looker, we want to make it easier for data analysts to service the needs of the data-hungry users in their organizations. We believe too much of their time is spent responding to ad hoc data requests and not enough time is spent building, experimenting, and embellishing a robust model of the business. Worse yet, business users are starving for data, but are forced to make important decisions without access to data that could guide them in the right direction. Looker addresses both of these problems with a YAML-based modeling language called LookML. With LookML, you build your business logic, defining your important metrics once and then reusing them throughout a model. That means you can unleash them on your business users to manipulate, iterate, and transform in any way they see fit. A key difference of LookML is that, unlike older approaches, LookML combines modeling, transformations, and derivations at the same layer (late-binding modeling). This allows vast amounts of data to be captured in relatively inexpensive databases (mirrored or copied), and then derivations and transformations occur much closer to, or at, query time. The traditional approach is to transform the data as it s loaded (ETL), whereas LookML allows for transform and derivation on demand (ELT). The result is a very agile data environment where user questions can change and the data environment can better keep up. Joshua Moskovitz is a data analytics expert on the analyst team at Looker. Joshua and other data analysts work with customers to build LookML models, design custom business metrics, and extend user expertise ensuring the organization s ability to extract business value out of data and drive a discovery-oriented culture using Looker. 1
2 E-Commerce Example Starting with Total Cost of Order Measures and Dimensions in Looker Looker divides data exploration into dimensions and measures. A dimension is something you can group by, and a measure is an aggregated dimension (for example, a sum, an average, or a count). Let s take a look at a simple e-commerce example. We will create one dimension, the Total Cost of Order, which can then be reused and built on throughout a single LookML model. First, a quick primer on a typical e-commerce data model, which will help answer questions about the buying and selling of items online. In this example, we ll work with a subset of tables: Orders, Order Items, and Inventory Items. As a business that tracks Orders, it s probably important to determine the distribution of customer orders based on cost. In our current Orders table, we don t have a field that tells us the cost of an order, because each order contains multiple items of varying costs. So we need to calculate a cost of an order by summing over the sale prices of the items in the order. Orders id created_at user_id Order Items id created_at order_id Inventory_item_id sale_price $ $45 Inventory Items id created_at cost sold_at product_id $ $ Suppose we want to calculate a new dimension for Orders that will determine the Total Cost of Order. In this case, the field is not stored in our database, but can be calculated from the sale price of order items in the order. We ll use is a simple technique called a correlated subquery. (For databases that don t support correlated subqueries or when performance becomes a problem, Looker supports more complex and powerful mechanisms via derived tables.) For any given order, the SQL to calculate the Total Cost of Order is: SELECT SUM(order_items.sale_price) WHERE order_items.order_id = orders.id Correlated Subqueries In a SQL database query, a correlated subquery (also known as a synchronized subquery) is a subquery (a query nested inside another query) that uses values from the outer query. The subquery is evaluated once for each row processed by the outer query. 2
3 We sum over the sale price associated for each item in a given order, where the order_items.order_id field matches with the primary key in the orders table. In Looker, we d want to create this dimension in the Orders view, since it s an attribute of an order. - view: Order fields: - dimension: total_amount_of_order_usd type: number sql: (SELECT SUM(order_items.sale_price) Now let s see this dimension in action. Tiering Total Cost of Order We now have a wide range of order amounts, so it probably makes sense to bucket these values across set intervals. Normally, if we were writing SQL, we d have to make a CASE WHEN statement for each discrete bucket. Conveniently, LookML has a tier function, so we can use that. - dimension: total_amount_of_order_usd_tier type: tier sql: ${total_amount_of_order_usd} tiers: [0,10,50,150,500,1000] Notice that we can reference our existing Total Amount of Order dimension in the sql: parameter of the measure. Now when we use the tier, we bucket orders into their respective tiers: 3
4 Determining Order Profit What if we wanted to know more about each order, maybe the profit? To determine the profit of an order, we will need a Total Cost of Order dimension. - dimension: total_cost_of_order type: number sql: (SELECT SUM(inventory_items.cost) LEFT JOIN inventory_items ON order_items.inventory_items_id = inventory_items.id In this case, our SQL sums over the cost of inventory items for a specific order. Now, to determine the Order Profit dimension, we must subtract the Total Cost of Order dimension from the Total Amount of Order dimension. Normally, we d have to subtract the SQL for the Total Cost of Order from the SQL for Total Amount of Order. But with LookML, we can just reference our already existing dimensions. - dimension: order_profit type: number sql: ${total_amount_of_order_usd} - ${total_cost_of_order} When using this Order Profit, Looker will substitute the existing business logic for both the Total Amount of Order and Total Cost of Order. Let s run a new query using the new Order Profit dimension. 4
5 Calculating Profit Per User Another valuable metric for an e-commerce business may be Profit Per User. In Looker, we can reference dimensions or measures from other views. In this case, to determine the Profit Per User, we ll reference our Count measure from the Users view as the denominator of a measure in the Orders view, where the numerator is our Order Profit dimension. We use the Count measure from the Users view to scope the count with users. - measure: profit_per_user type: number sql: *${order_profit}/nullif(${users.count},0) Now we can see how our Profit Per User varies by every order dimension. In this case, we see how it varies by order date: Creating an Average Total Amount of Order Measure What if we wanted a measure that computes the Average Total Amount of Order whenever we group by a dimension in Looker? For instance, we might group by Average Total Amount of Order in a certain Month, by orders from customers in a certain State, or by the Lifetime Number of Orders of a customer. When we create a measure in Looker, we can reuse it in many different contexts. Let s first build our Average Total Amount of Order measure. - measure: average_total_amount_of_order_usd type: average sql: ${total_amount_of_order_usd} Again, we can reference our already existing Total Amount of Order dimension and set the dimension type as an average. Now when we use this dimension, it will aggregate over all total order amounts within that group, calculating the average. 5
6 Here we see how the Average Total Amount of Order varies by the Lifetime Number of Orders of customers and by the Week the order was created. Creating Conditional Measures First Purchase and Return Shopping Revenue We can also create measures that calculate Total Amount of Order based on conditions of the order, such as whether it was a customer s first purchase or if a return customer made the purchase. This way, we can determine how much revenue was generated from new or returning customers. It s likely we have discrete teams focused on new user acquisition and on current user retention, so it may be important we break these revenues apart. - measure: total_first_purchase_revenue type: sum sql: ${total_amount_of_order_usd} filters: is_first_purchase: yes - measure: total_returning_shopper_revenue type: sum sql: ${total_amount_of_order_usd} filters: is_first_purchase: no Again, both of these measures Total First Purchase Revenue and Total Returning Shopper Revenue take advantage of our existing Total Amount of Order. We can now directly compare both types of revenue. 6
7 Putting It All Together Given the dimensions and measures we ve just created, let s build a report that shows us Total Returning Shopping Revenue, Total First Purchase Revenue, Average Total Amount of Order, and Average Order Profit, broken out by the Total Amount of Order tiered and the Week in which the order was created. To generate such a result set, we d have to write nearly 200 lines of SQL. Maybe this makes sense to write one time, but what if we want to look at this by a customer s State instead of by order Week? Or maybe we want to see Lifetime Number of Purchases by a customer, tiered? 7
8 As you can see, all these reports can be generated, altered, and updated without the need to rewrite any SQL. In LookML, we abstract the essential business logic once, then reference it within other dimensions and measures allowing quick, rapid iteration of data exploration, while also ensuring the accuracy of the SQL that s generated. If a business user wants a new tier, just add it to the dimension. If they want to determine revenue from users with more than 10 purchases, just create a new measure that sums total order amount and filters on customers with more than 10 purchases. Small updates are quick and can be made immediately available to end users. That frees you up to define the new metrics that will take your business to the next level. Try Looker for free looker.com/free-trial 8 Interested in trying out a modern way to analyze data? Sign up for a free Looker trial for a fresh start. Just tell us how to connect to your analytics database, and you ll experience the full Looker functionality free of charge. Or request a demo: looker.com/contact-sales About Looker Looker is an inventive software company that s pioneering the next generation of business intelligence (BI). We believe that businesses can only thrive when data is consistently defined and easily accessible across the entire organization. Our web-based platform powers the work of data analysts while fueling (and fulfilling) the business user s curiosity. Looker is creating true discovery-driven businesses and unlocking the value of their data, one customer at a time. Looker is based in Santa Cruz, CA looker.com 2014 Looker. All rights reserved. Looker and the Looker logo are trademarks of Looker Data Sciences, registered in the United States. Other trademarks are trademarks of their respective companies. All services are subject to change or discontinuance without notice. May 2014
9 Appendix SQL for Generating the Same Result Set Go back >> SELECT COALESCE (CASE < 0 THEN 'T00 (-inf,0)' >= 0 AND (SELECT SUM(order_items.sale_price) < 10 THEN 'T01 [0,10)' >= 10 AND (SELECT SUM(order_items.sale_price) < 50 THEN 'T02 [10,50)' >= 50 AND (SELECT SUM(order_items.sale_price) < 150 THEN 'T03 [50,150)' >= 150 AND (SELECT SUM(order_items.sale_price) < 500 THEN 'T04 [150,500)' >= 500 AND (SELECT SUM(order_items.sale_price) < 1000 THEN 'T05 [500,1000)' >= 1000 THEN 'T06 [1000,inf)' ELSE 'TXX Undefined' END,'') AS ''_p1'',coalesce(date_add(date(convert_tz(orders.created_at,'utc','america/los_angeles')),i NTERVAL (0-(DAYOFWEEK(CONVERT_TZ(orders.created_at,'UTC','America/Los_Angeles'))+5)%7) DAY),'') AS ''_g1'', DATE_ADD(DATE(CONVERT_TZ(orders.created_at,'UTC','America/Los_Angeles')),INTERVAL (0-(DAYOFWEEK(CONVERT_TZ(orders.created_at,'UTC','America/Los_Angeles'))+5)%7) DAY) AS 'orders.created_week', CASE < 0 THEN 'T00 (-inf,0)'
10 >= 0 AND (SELECT SUM(order_items.sale_price) < 10 THEN 'T01 [0,10)' >= 10 AND (SELECT SUM(order_items.sale_price) < 50 THEN 'T02 [10,50)' >= 50 AND (SELECT SUM(order_items.sale_price) < 150 THEN 'T03 [50,150)' >= 150 AND (SELECT SUM(order_items.sale_price) < 500 THEN 'T04 [150,500)' >= 500 AND (SELECT SUM(order_items.sale_price < 1000 THEN 'T05 [500,1000)' >= 1000 THEN 'T06 [1000,inf)' ELSE 'TXX Undefined' END AS 'orders.total_amount_of_order_usd_tier', AVG((SELECT SUM(order_items.sale_price) ) AS 'orders.average_total_amount_of_order_usd', SUM (CASE WHEN ((SELECT COUNT(*) FROM orders o WHERE o.id < orders.id AND o.user_id=orders.user_id) + 1 ) = 1 THEN (SELECT SUM(order_items.sale_price) ELSE NULL END) AS 'orders.total_first_purchase_revenue', SUM (CASE WHEN NOT COALESCE((( SELECT COUNT(*) FROM orders o WHERE o.id < orders.id AND o.user_id=orders.user_id) + 1 ) = 1, FALSE) THEN (SELECT SUM(order_items.sale_price) ELSE NULL END) AS 'orders.total_returning_shopper_revenue', AVG(((SELECT SUM(order_items.sale_price) Go back >>
11 - (SELECT SUM(inventory_items.cost) LEFT JOIN inventory_items ON order_items.inventory_item_id = inventory_items.id )) AS 'orders.average_order_profit' FROM orders WHERE orders.created_at BETWEEN (CONVERT_TZ(DATE_ADD(CURDATE(),INTERVAL -29 day), 'America/Los_Angeles','UTC')) AND (CONVERT_TZ(DATE_ADD(DATE_ADD(DATE_ADD (CURDATE(),INTERVAL -29 day),interval 30 day),interval -1 second), 'America/Los_Angeles','UTC')) GROUP BY 1,2 ORDER BY CASE < 0 THEN 'T00 (-inf,0)' >= 0 AND (SELECT SUM(order_items.sale_price) < 10 THEN 'T01 [0,10)' >= 10 AND (SELECT SUM(order_items.sale_price) < 50 THEN 'T02 [10,50)' >= 50 AND (SELECT SUM(order_items.sale_price) < 150 THEN 'T03 [50,150)' >= 150 AND (SELECT SUM(order_items.sale_price) < 500 THEN 'T04 [150,500)' >= 500 AND (SELECT SUM(order_items.sale_price) < 1000 THEN 'T05 [500,1000)' >= 1000 THEN 'T06 [1000,inf)' ELSE 'TXX Undefined' END LIMIT 500 Go back >>
Business Analytics: Asking the Right Questions. Ben Porterfield Founder, VP Engineering
Business Analytics: Asking the Right Questions Ben Porterfield Founder, VP Engineering BUSINESS INTELLIGENCE Operational Control How many sales did I do today? Understand & Improve Experience Are users
More informationOracle Database: Introduction to SQL Ed 2
Oracle University Contact Us: +40 21 3678820 Oracle Database: Introduction to SQL Ed 2 Duration: 5 Days What you will learn This Oracle Database 12c: Introduction to SQL training helps you write subqueries,
More informationSMARTnet provides you with the following advantages:
SMARTnet Service is an award-winning technical support service that gives you and your IT staff direct, round the clock access to Cisco engineers and extensive Cisco.com resources. Cisco SMARTnet is essential
More informationOracle EXAM - 1Z Oracle Database SQL Expert. Buy Full Product.
Oracle EXAM - 1Z0-047 Oracle Database SQL Expert Buy Full Product http://www.examskey.com/1z0-047.html Examskey Oracle 1Z0-047 exam demo product is here for you to test the quality of the product. This
More informationSlice Intelligence!
Intern @ Slice Intelligence! Wei1an(Wu( September(8,(2014( Outline!! Details about the job!! Skills required and learned!! My thoughts regarding the internship! About the company!! Slice, which we call
More informationTECHNOLOGY BRIEF: CA ERWIN DATA PROFILER. Combining Data Profiling and Data Modeling for Better Data Quality
TECHNOLOGY BRIEF: CA ERWIN DATA PROFILER Combining Data Profiling and Data Modeling for Better Data Quality Table of Contents Executive Summary SECTION 1: CHALLENGE 2 Reducing the Cost and Risk of Data
More informationHandout 12 Data Warehousing and Analytics.
Handout 12 CS-605 Spring 17 Page 1 of 6 Handout 12 Data Warehousing and Analytics. Operational (aka transactional) system a system that is used to run a business in real time, based on current data; also
More informationExam Actual. Higher Quality. Better Service! QUESTION & ANSWER
Higher Quality Better Service! Exam Actual QUESTION & ANSWER Accurate study guides, High passing rate! Exam Actual provides update free of charge in one year! http://www.examactual.com Exam : 1Z0-047 Title
More informationTableau Metadata Model
Tableau Metadata Model Author: Marc Reuter Senior Director, Strategic Solutions, Tableau Software p2 Most Business Intelligence platforms fall into one of two metadata camps: either model the entire enterprise
More informationAccurate study guides, High passing rate! Testhorse provides update free of charge in one year!
Accurate study guides, High passing rate! Testhorse provides update free of charge in one year! http://www.testhorse.com Exam : 70-467 Title : Designing Business Intelligence Solutions with Microsoft SQL
More informationQuerying Data with Transact-SQL
Course 20761A: Querying Data with Transact-SQL Page 1 of 5 Querying Data with Transact-SQL Course 20761A: 2 days; Instructor-Led Introduction The main purpose of this 2 day instructor led course is to
More informationChapter. Relational Database Concepts COPYRIGHTED MATERIAL
Chapter Relational Database Concepts 1 COPYRIGHTED MATERIAL Every organization has data that needs to be collected, managed, and analyzed. A relational database fulfills these needs. Along with the powerful
More informationORACLE TRAINING CURRICULUM. Relational Databases and Relational Database Management Systems
ORACLE TRAINING CURRICULUM Relational Database Fundamentals Overview of Relational Database Concepts Relational Databases and Relational Database Management Systems Normalization Oracle Introduction to
More informationQuerying Data with Transact SQL
Course 20761A: Querying Data with Transact SQL Course details Course Outline Module 1: Introduction to Microsoft SQL Server 2016 This module introduces SQL Server, the versions of SQL Server, including
More informationTIM 50 - Business Information Systems
TIM 50 - Business Information Systems Lecture 15 UC Santa Cruz May 20, 2014 Announcements DB 2 Due Tuesday Next Week The Database Approach to Data Management Database: Collection of related files containing
More informationProceedings of the IE 2014 International Conference AGILE DATA MODELS
AGILE DATA MODELS Mihaela MUNTEAN Academy of Economic Studies, Bucharest mun61mih@yahoo.co.uk, Mihaela.Muntean@ie.ase.ro Abstract. In last years, one of the most popular subjects related to the field of
More informationCSC 261/461 Database Systems Lecture 5. Fall 2017
CSC 261/461 Database Systems Lecture 5 Fall 2017 MULTISET OPERATIONS IN SQL 2 UNION SELECT R.A FROM R, S WHERE R.A=S.A UNION SELECT R.A FROM R, T WHERE R.A=T.A Q 1 Q 2 r. A r. A = s. A r. A r. A = t. A}
More informationTIM 50 - Business Information Systems
TIM 50 - Business Information Systems Lecture 15 UC Santa Cruz Nov 10, 2016 Class Announcements n Database Assignment 2 posted n Due 11/22 The Database Approach to Data Management The Final Database Design
More informationQuerying Data with Transact SQL Microsoft Official Curriculum (MOC 20761)
Querying Data with Transact SQL Microsoft Official Curriculum (MOC 20761) Course Length: 3 days Course Delivery: Traditional Classroom Online Live MOC on Demand Course Overview The main purpose of this
More informationQ&As Querying Data with Transact-SQL (beta)
CertBus.com 70-761 Q&As Querying Data with Transact-SQL (beta) Pass Microsoft 70-761 Exam with 100% Guarantee Free Download Real Questions & Answers PDF and VCE file from: 100% Passing Guarantee 100% Money
More information$99.95 per user. Writing Queries for SQL Server (2005/2008 Edition) CourseId: 160 Skill level: Run Time: 42+ hours (209 videos)
Course Description This course is a comprehensive query writing course for Microsoft SQL Server versions 2005, 2008, and 2008 R2. If you struggle with knowing the difference between an INNER and an OUTER
More informationInformatica Enterprise Information Catalog
Data Sheet Informatica Enterprise Information Catalog Benefits Automatically catalog and classify all types of data across the enterprise using an AI-powered catalog Identify domains and entities with
More informationOracle Database: SQL and PL/SQL Fundamentals NEW
Oracle Database: SQL and PL/SQL Fundamentals NEW Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals training delivers the fundamentals of SQL and PL/SQL along with the
More informationFIVE BEST PRACTICES FOR ENSURING A SUCCESSFUL SQL SERVER MIGRATION
FIVE BEST PRACTICES FOR ENSURING A SUCCESSFUL SQL SERVER MIGRATION The process of planning and executing SQL Server migrations can be complex and risk-prone. This is a case where the right approach and
More informationBusiness Analytics Nanodegree Syllabus
Business Analytics Nanodegree Syllabus Master data fundamentals applicable to any industry Before You Start There are no prerequisites for this program, aside from basic computer skills. You should be
More informationKaotii.
Kaotii IT http://www.kaotii.com Exam : 70-762 Title : Developing SQL Databases Version : DEMO 1 / 10 1.DRAG DROP Note: This question is part of a series of questions that use the same scenario. For your
More informationMicro Focus Partner Program. For Resellers
Micro Focus Partner Program For Resellers Contents Micro Focus Today About Micro Focus Our solutions for digital transformation Products and Solutions Program Membership Tiers Become a Portfolio Expert
More informationTable of Contents. PDF created with FinePrint pdffactory Pro trial version
Table of Contents Course Description The SQL Course covers relational database principles and Oracle concepts, writing basic SQL statements, restricting and sorting data, and using single-row functions.
More informationGoogle Analytics. powerful simplicity, practical insight
Google Analytics powerful simplicity, practical insight 1 Overview Google Analytics Improve your site and increase marketing ROI Free, hosted web analytics service View over 80+ reports online, for download,
More informationUsing Data Virtualization to Accelerate Time-to-Value From Your Data. Integrating Distributed Data in Real Time
Using Data Virtualization to Accelerate Time-to-Value From Your Data Integrating Distributed Data in Real Time Speaker Paul Moxon VP Data Architectures and Chief Evangelist @ Denodo Technologies Data,
More informationSchwan Food Company s Journey with SAP HANA
Speakers: Schwan Food Company s Journey with SAP HANA May 14, 2013 From Vision of SAP HANA to EDW on SAP HANA Al Grube Enterprise Information Architect The Schwan Food Company Al.Grube@schwans.com Mark
More informationPerformance Innovations with Oracle Database In-Memory
Performance Innovations with Oracle Database In-Memory Eric Cohen Solution Architect Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information
More informationMySQL for Developers. Duration: 5 Days
Oracle University Contact Us: 0800 891 6502 MySQL for Developers Duration: 5 Days What you will learn This MySQL for Developers training teaches developers how to develop console and web applications using
More informationSELECT Product.name, Purchase.store FROM Product JOIN Purchase ON Product.name = Purchase.prodName
Announcements Introduction to Data Management CSE 344 Lectures 5: More SQL aggregates Homework 2 has been released Web quiz 2 is also open Both due next week 1 2 Outline Outer joins (6.3.8, review) More
More informationBuilt for Speed: Comparing Panoply and Amazon Redshift Rendering Performance Utilizing Tableau Visualizations
Built for Speed: Comparing Panoply and Amazon Redshift Rendering Performance Utilizing Tableau Visualizations Table of contents Faster Visualizations from Data Warehouses 3 The Plan 4 The Criteria 4 Learning
More informationConsolidate data from a field into a list
Consolidate data from a field into a list This task is hard in VFP, but SQL Server provides two ways to do it. Tamar E. Granor, Ph.D. Some SQL commands were added to FoxPro 2.0 and I fell in love with
More informationMySQL for Developers. Duration: 5 Days
Oracle University Contact Us: Local: 0845 777 7 711 Intl: +44 845 777 7 711 MySQL for Developers Duration: 5 Days What you will learn This MySQL for Developers training teaches developers how to develop
More informationMissing Information. We ve assumed every tuple has a value for every attribute. But sometimes information is missing. Two common scenarios:
NULL values Missing Information We ve assumed every tuple has a value for every attribute. But sometimes information is missing. Two common scenarios: Missing value. E.g., we know a student has some email
More informationOracle Database 11g: SQL and PL/SQL Fundamentals
Oracle University Contact Us: +33 (0) 1 57 60 20 81 Oracle Database 11g: SQL and PL/SQL Fundamentals Duration: 5 Days What you will learn In this course, students learn the fundamentals of SQL and PL/SQL
More informationCS 4349 Lecture September 13th, 2017
CS 4349 Lecture September 13th, 2017 Main topics for #lecture include #dynamic_programming, #Fibonacci_numbers, and #rod_cutting. Prelude Homework 2 due today in class. Homework 3 released, due next Wednesday
More informationORACLE PL/SQL DATABASE COURSE
ORACLE PL/SQL DATABASE COURSE Oracle PL/SQL Database Programming Course (OPDP-001) JMT Oracle PL/SQL Hands-On Training (OPDP-001) is an intense hands-on course that is designed to give the student maximum
More informationDesigning and Managing a Microsoft Business Intelligence Solution Exam.
Microsoft 78-702 Designing and Managing a Microsoft Business Intelligence Solution Exam TYPE: DEMO http://www.examskey.com/78-702.html Examskey Microsoft 78-702 exam demo product is here for you to test
More informationSubquery: There are basically three types of subqueries are:
Subquery: It is also known as Nested query. Sub queries are queries nested inside other queries, marked off with parentheses, and sometimes referred to as "inner" queries within "outer" queries. Subquery
More informationFrom Single Purpose to Multi Purpose Data Lakes. Thomas Niewel Technical Sales Director DACH Denodo Technologies March, 2019
From Single Purpose to Multi Purpose Data Lakes Thomas Niewel Technical Sales Director DACH Denodo Technologies March, 2019 Agenda Data Lakes Multiple Purpose Data Lakes Customer Example Demo Takeaways
More informationDB - Week 3 Lab1-2 Introduction to Databases. Dina A. Said
DB - Week 3 Lab1-2 Introduction to Databases Dina A. Said dasaid@ucalgary.ca Relationships Create a relationship as follows: One-to-many s.t. field author_id in titles table is a foreign key from field
More information20761 Querying Data with Transact SQL
Course Overview The main purpose of this course is to give students a good understanding of the Transact-SQL language which is used by all SQL Server-related disciplines; namely, Database Administration,
More informationIntroduction to SQL Part 2 by Michael Hahsler Based on slides for CS145 Introduction to Databases (Stanford)
Introduction to SQL Part 2 by Michael Hahsler Based on slides for CS145 Introduction to Databases (Stanford) Lecture 3 Lecture Overview 1. Aggregation & GROUP BY 2. Set operators & nested queries 3. Advanced
More informationGoogle Analytics: Part 3
Attract Shoppers Google Analytics: Part 3 In this lesson, you will learn about: How to use Site Search Tracking How to view your Google Adwords Statistics Valuable ecommerce metrics to watch Tips and tricks
More informationThe strategic advantage of OLAP and multidimensional analysis
IBM Software Business Analytics Cognos Enterprise The strategic advantage of OLAP and multidimensional analysis 2 The strategic advantage of OLAP and multidimensional analysis Overview Online analytical
More informationData Strategies for Efficiency and Growth
Data Strategies for Efficiency and Growth Date Dimension Date key (PK) Date Day of week Calendar month Calendar year Holiday Channel Dimension Channel ID (PK) Channel name Channel description Channel type
More information1 Writing Basic SQL SELECT Statements 2 Restricting and Sorting Data
1 Writing Basic SQL SELECT Statements Objectives 1-2 Capabilities of SQL SELECT Statements 1-3 Basic SELECT Statement 1-4 Selecting All Columns 1-5 Selecting Specific Columns 1-6 Writing SQL Statements
More informationETL TESTING TRAINING
ETL TESTING TRAINING Retrieving Data using the SQL SELECT Statement Capabilities of the SELECT statement Arithmetic expressions and NULL values in the SELECT statement Column aliases Use of concatenation
More informationThree types of sub queries are supported in SQL are Scalar, Row and Table sub queries.
SQL Sub-Queries What are Sub queries? SQL Sub queries are the queries which are embedded inside another query. The embedded queries are called as INNER query & container query is called as OUTER query.
More informationLecture 18. Business Intelligence and Data Warehousing. 1:M Normalization. M:M Normalization 11/1/2017. Topics Covered
Lecture 18 Business Intelligence and Data Warehousing BDIS 6.2 BSAD 141 Dave Novak Topics Covered Test # Review What is Business Intelligence? How can an organization be data rich and information poor?
More informationLearn SQL by Calculating Customer Lifetime Value
Learn SQL Learn SQL by Calculating Customer Lifetime Value Setup, Counting and Filtering 1 Learn SQL CONTENTS Getting Started Scenario Setup Sorting with ORDER BY FilteringwithWHERE FilteringandSorting
More informationQuerying Data with Transact-SQL (761)
Querying Data with Transact-SQL (761) Manage data with Transact-SQL Create Transact-SQL SELECT queries Identify proper SELECT query structure, write specific queries to satisfy business requirements, construct
More informationAdvanced Web Intelligence Techniques for Aspiring Jedi Knights
September 9 11, 2013 Anaheim, California Advanced Web Intelligence Techniques for Aspiring Jedi Knights Alan Mayer Solid Ground Technologies Agenda Introduction Query Techniques Report Techniques Performance
More informationCA ERwin Data Modeler r8 Marketing & Sales Guide
CA ERwin Data Modeler r8 Marketing & Sales Guide Table of Contents Table of Contents... 2 Word Descriptions... 3 25 Word Description... 3 50 Word Description... 3 100 Word Description... 3 What s New in
More informationWhy is Mariposa Important? Mariposa: A wide-area distributed database. Outline. Motivation: Assumptions. Motivation
Mariposa: A wide-area distributed database Slides originally by Shahed Alam Edited by Cody R. Brown, Nov 15, 2009 Why is Mariposa Important? Wide-area (WAN) differ from Local-area (LAN) databases. Each
More informationShopping Cart Abandonment Practices of the Internet Retailer 1000 Companies
Shopping Cart Abandonment Practices of the Internet Retailer 1000 Companies by Megan Ouellet, Director of Marketing, Listrak October 12, 2011 Shopping cart abandonment rates are on the rise. The average
More informationWhy you should design your data hub top-down vs. bottom-up
Why you should design your data hub top-down vs. bottom-up 1 Why you should design your data hub top-down vs. bottom-up Why are central repositories of data more necessary now than ever? E very business
More informationQLIKVIEW ARCHITECTURAL OVERVIEW
QLIKVIEW ARCHITECTURAL OVERVIEW A QlikView Technology White Paper Published: October, 2010 qlikview.com Table of Contents Making Sense of the QlikView Platform 3 Most BI Software Is Built on Old Technology
More informationOracle 1Z0-071 Exam Questions and Answers (PDF) Oracle 1Z0-071 Exam Questions 1Z0-071 BrainDumps
Oracle 1Z0-071 Dumps with Valid 1Z0-071 Exam Questions PDF [2018] The Oracle 1Z0-071 Oracle Database 12c SQL Exam exam is an ultimate source for professionals to retain their credentials dynamic. And to
More informationSecurity Automation Best Practices
WHITEPAPER Security Automation Best Practices A guide to making your security team successful with automation TABLE OF CONTENTS Introduction 3 What Is Security Automation? 3 Security Automation: A Tough
More informationORACLE DATABASE 12C INTRODUCTION
SECTOR / IT NON-TECHNICAL & CERTIFIED TRAINING COURSE In this training course, you gain the skills to unleash the power and flexibility of Oracle Database 12c, while gaining a solid foundation of database
More informationCourse Modules for MCSA: SQL Server 2016 Database Development Training & Certification Course:
Course Modules for MCSA: SQL Server 2016 Database Development Training & Certification Course: 20762C Developing SQL 2016 Databases Module 1: An Introduction to Database Development Introduction to the
More informationSAP InfiniteInsight 7.0 Event Logging: Make the Most Out of Your Transaction Data
End User Documentation Document Version: 1.0 2014-11 Event Logging: Make the Most Out of Your Transaction Data Table of Contents Before you Start... 4 About this Document... 4 Prerequisites... 4 Technical
More informationData Replication Buying Guide
Data Replication Buying Guide 1 How to Choose a Data Replication Solution IT professionals are increasingly turning to heterogenous data replication to modernize data while avoiding the costs and risks
More informationInfrastructure Matters
Infrastructure Matters DATA PROTECTION DISASTER RECOVERY CLOUD SECURITY DATA ANALYTICS VIRTUALISATION Intel Xeon Processors. Your infrastructure matters more than you might think. Why? Because if you re
More informationOracle Database: SQL and PL/SQL Fundamentals Ed 2
Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 67863102 Oracle Database: SQL and PL/SQL Fundamentals Ed 2 Duration: 5 Days What you will learn This Oracle Database: SQL and PL/SQL Fundamentals
More informationSECURITY AUTOMATION BEST PRACTICES. A Guide to Making Your Security Team Successful with Automation
SECURITY AUTOMATION BEST PRACTICES A Guide to Making Your Security Team Successful with Automation TABLE OF CONTENTS Introduction 3 What Is Security Automation? 3 Security Automation: A Tough Nut to Crack
More informationPerm Integrating Data Provenance Support in Database Systems
Perm Integrating Data Provenance Support in Database Systems Boris Glavic Database Technology Group Department of Informatics University of Zurich glavic@ifi.uzh.ch Gustavo Alonso Systems Group Department
More informationPROFIT AND LOSS REPORT EXTENSION. User Guide. User Guide Page 1
PROFIT AND LOSS REPORT EXTENSION User Guide User Guide Page 1 Important Notice JTechExtensions reserves the right to make corrections, modifications, enhancements, improvements, and other changes to its
More informationAdvanced Multidimensional Reporting
Guideline Advanced Multidimensional Reporting Product(s): IBM Cognos 8 Report Studio Area of Interest: Report Design Advanced Multidimensional Reporting 2 Copyright Copyright 2008 Cognos ULC (formerly
More informationWHITE PAPER SEPTEMBER Reactive Rules for Database Logic. Agility, Re-Use and Performance
WHITE PAPER SEPTEMBER 2018 Reactive Rules for Database Logic Agility, Re-Use and Performance 2 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Executive Summary Introduction Since the advent of relational
More informationCA ERwin Data Profiler
PRODUCT BRIEF: CA ERWIN DATA PROFILER CA ERwin Data Profiler CA ERWIN DATA PROFILER HELPS ORGANIZATIONS LOWER THE COSTS AND RISK ASSOCIATED WITH DATA INTEGRATION BY PROVIDING REUSABLE, AUTOMATED, CROSS-DATA-SOURCE
More informationExtend your queries with APPLY
Extend your queries with APPLY SQL Server offers a way to combine tables with table-valued functions, and to create the equivalent of correlated derived tables. Tamar E. Granor, Ph.D. As I ve been digging
More informationMicrosoft Exam
Volume: 42 Questions Case Study: 1 Relecloud General Overview Relecloud is a social media company that processes hundreds of millions of social media posts per day and sells advertisements to several hundred
More informationQ1) Describe business intelligence system development phases? (6 marks)
BUISINESS ANALYTICS AND INTELLIGENCE SOLVED QUESTIONS Q1) Describe business intelligence system development phases? (6 marks) The 4 phases of BI system development are as follow: Analysis phase Design
More informationCourse Number : SEWI ZG514 Course Title : Data Warehousing Type of Exam : Open Book Weightage : 60 % Duration : 180 Minutes
Birla Institute of Technology & Science, Pilani Work Integrated Learning Programmes Division M.S. Systems Engineering at Wipro Info Tech (WIMS) First Semester 2014-2015 (October 2014 to March 2015) Comprehensive
More informationLeveraging Customer Behavioral Data to Drive Revenue the GPU S7456
Leveraging Customer Behavioral Data to Drive Revenue the GPU way 1 Hi! Arnon Shimoni Senior Solutions Architect I like hardware & parallel / concurrent stuff In my 4 th year at SQream Technologies Send
More informationHow Managers and Executives Can Leverage SAS Enterprise Guide
Paper 8820-2016 How Managers and Executives Can Leverage SAS Enterprise Guide ABSTRACT Steven First and Jennifer First-Kluge, Systems Seminar Consultants, Inc. SAS Enterprise Guide is an extremely valuable
More informationIntroduction to K2View Fabric
Introduction to K2View Fabric 1 Introduction to K2View Fabric Overview In every industry, the amount of data being created and consumed on a daily basis is growing exponentially. Enterprises are struggling
More informationBUYER S GUIDE WEBSITE DEVELOPMENT
BUYER S GUIDE WEBSITE DEVELOPMENT At Curzon we understand the importance of user focused design. EXECUTIVE SUMMARY This document is designed to provide prospective clients with a short guide to website
More informationWeb Analytics Key Metrics and KPIs Version 1.0
Web Analytics Key Metrics and KPIs Version 1.0 Web Analytics Association 2300 M Street, Suite 800 Washington DC 20037 standards@webanalyticsassociation.org Table of Contents Table of Contents 2 Introduction
More informationFull file at
Chapter 2 Data Warehousing True-False Questions 1. A real-time, enterprise-level data warehouse combined with a strategy for its use in decision support can leverage data to provide massive financial benefits
More informationIntroduction to Computer Science and Business
Introduction to Computer Science and Business This is the second portion of the Database Design and Programming with SQL course. In this portion, students implement their database design by creating a
More informationDESIGN TIME PRO. RGSR Software Inc. Design Time Pro Support Guide
DESIGN TIME PRO RGSR Software Inc. Design Time Pro Support Guide RGSR SOFTWARE INC. Design Time Pro Support Guide RGSR Software Inc. Table of Contents Setting Up The Database.1 Create Your Database....1
More informationComputing for Medicine (C4M) Seminar 3: Databases. Michelle Craig Associate Professor, Teaching Stream
Computing for Medicine (C4M) Seminar 3: Databases Michelle Craig Associate Professor, Teaching Stream mcraig@cs.toronto.edu Relational Model The relational model is based on the concept of a relation or
More informationmarketing versus marketing automation What s the difference and why should B2B marketers care?
email marketing versus marketing automation What s the difference and why should B2B marketers care? who is this white paper for? You re a B2B marketer in a company that s been using email marketing for
More information1. Managing Information in Table
1. Managing Information in Table Spreadsheets are great for making lists (such as phone lists, client lists). The researchers discovered that not only was list management the number one spreadsheet activity,
More informationCA ERwin Data Modeler
CA ERwin Data Modeler Implementation Guide Service Pack 9.5.2 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to only and is subject
More informationCombining Data.the EG way
Combining Data.the EG way Bank of Montreal Risk Capital and Stress Testing 12 / 09 / 2014 By: Anita Measey Objective: The perfect Join includes creating a calculated variable and grouping Having adding
More informationNested Queries. Dr Paolo Guagliardo. Aggregate results in WHERE The right way. Fall 2018
Nested Queries Dr Paolo Guagliardo dbs-lecturer@ed.ac.uk Fall 2018 Aggregate results in WHERE The right way Account Number Branch CustID Balance 111 London 1 1330.00 222 London 2 1756.00 333 Edinburgh
More informationAMAZON.COM RECOMMENDATIONS ITEM-TO-ITEM COLLABORATIVE FILTERING PAPER BY GREG LINDEN, BRENT SMITH, AND JEREMY YORK
AMAZON.COM RECOMMENDATIONS ITEM-TO-ITEM COLLABORATIVE FILTERING PAPER BY GREG LINDEN, BRENT SMITH, AND JEREMY YORK PRESENTED BY: DEEVEN PAUL ADITHELA 2708705 OUTLINE INTRODUCTION DIFFERENT TYPES OF FILTERING
More information1z Oracle Database SQL Expert
1z0-047 Oracle Database SQL Expert Version 1.6 QUESTION NO: 1 Which three possible values can be set for the TIME_ZONE session parameter by using the ALTER SESSION command? (Choose three.) E. 'os' local
More informationHyperion Interactive Reporting Reports & Dashboards Essentials
Oracle University Contact Us: +27 (0)11 319-4111 Hyperion Interactive Reporting 11.1.1 Reports & Dashboards Essentials Duration: 5 Days What you will learn The first part of this course focuses on two
More informationConfiguration Guide WHITEPAPER
+ Configuration Guide Companies today are struggling under the combined weight of legacy business intelligence and data warehousing tools. These old and inefficient systems were designed for a different
More informationTDWI Data Modeling. Data Analysis and Design for BI and Data Warehousing Systems
Data Analysis and Design for BI and Data Warehousing Systems Previews of TDWI course books offer an opportunity to see the quality of our material and help you to select the courses that best fit your
More informationHow to integrate data into Tableau
1 How to integrate data into Tableau a comparison of 3 approaches: ETL, Tableau self-service and WHITE PAPER WHITE PAPER 2 data How to integrate data into Tableau a comparison of 3 es: ETL, Tableau self-service
More information