Fixing the Worst Database in the World

Size: px
Start display at page:

Download "Fixing the Worst Database in the World"

Transcription

1 Fixing the Worst Database in the World Heli Chris

2 Introduction, Heli Graduated from University of Helsinki (Master of Science, computer science), currently a doctoral student, researcher and lecturer (databases, Big Data, Multi-model Databases, methods and tools for utilizing semi-structured data for decision making) at University of Helsinki Worked with Oracle products since 1993, worked for IT since 1990 Data and Database! CEO for Miracle Finland Oy Oracle ACE Director Ambassador/EOUC (EMEA Oracle Users Group Community) Public speaker and an author Winner of Devvy for Database Design Category, 2015 Author of the book Oracle SQL Developer Data Modeler for Database Design Mastery (Oracle Press, 2015), co-author for Real World SQL and PL/SQL: Advice from the Experts (Oracle Press, 2016)

3 Helskyaho Heli, Valin-Raki Elise

4 Introduction, Heli Been an Oracle Designer user since 1996 and Data Modeler user since 2010 Been solving performance problems since 1993 Absolutely convinced that good database design and documentation will reduce this work. Absolutely convinced that it is easier to solve problems on database that has been documented

5 Why to design? "Data is the most valuable property in our company" "Why do we need to design the database? We already design the application!"

6 Why is designing the app not enough? Point of view (saving and retrieving data vs. UI) First increment vs. 20 years from now the whole picture vs. increments Different goals/targets: Code tables vs. Code files (how about the data integrity?) How about analysis, reports, everything else but the UI that the data is used for Same terminology, different meaning -> misunderstandings...

7 Why to model the data? To facilitate communication about the requirements To find the questions that should be asked To understand the requirements

8 Tables are the of your database

9 Get them wrong and

10 you need to be a SQL

11 with attrs as ( select pr.productno, attrs.* from products pr, json_table ( productinfo, '$' null on error columns ( description path '$.description',colour path '$.colour',weight path '$.weight',height path '$.dimensions.height',width path '$.dimensions.width',depth path '$.dimensions.depth' ) ) attrs union all

12 select productno, description, colour, weight, height, width, depth from ( select pr.productno, pa.attrname, pa.attrvalue from ( select productno from products ) pr left join ( select productno, attrname, attrvalue from product_attributes ) pa on pr.productno = pa.productno ) pivot ( min(attrvalue) for attrname in ( 1 height, 2 depth, 3 width, 4 weight, 5 colour, 6 description

13 ) ) ), product_details as ( select productno, min(description) descr, min(colour) clr, min(weight) wt, min(height) ht, min(width) wd, min(depth) dp from attrs group by productno ) select customers_ssn, descr, wt, clr,

14 case when ht like '%cm' then to_number(regexp_substr(ht, '^[0-9\.]*')) / 100 when ht like '%m' then to_number(regexp_substr(ht, '^[0-9\.]*')) else to_number(ht) / 100 end * case when wd like '%cm' then to_number(regexp_substr(wd, '^[0-9\.]*')) / 100 when wd like '%m' then to_number(regexp_substr(wd, '^[0-9\.]*') ) else to_number(dp) / 100 end *

15 case when dp like '%cm' then to_number(regexp_substr(dp, '^[0-9\.]*')) / 100 when dp like '%m' then to_number(regexp_substr(dp, '^[0-9\.]*') ) else to_number(dp) / 100 end volume, sum ( qty * howmuchtheypay ) from "Order" o join orderline ol on o.orderno = ol.order_orderno join product_details pd on ol.products_productno = pd.productno

16 where ( to_date ( o."date" default null on conversion error, 'DD-MON-YYYY' ) > add_months(sysdate, -1) or to_date ( o."date" default null on conversion error, 'MM/DD/YYYY' ) > add_months(sysdate, -1) or to_date ( o."date" default null on conversion error, 'YYYY/MM/DD' ) > add_months(sysdate, -1) ) group by customers_ssn, descr, ht, wd, dp, wt, clr

17 Help me Heli Helskyaho you're my only hope!

18 DEMO

19 Bad Primary s

20 Bad Primary s Anything non-unique (duh ) if you have to ask, it (probably) isn't! Things you (may) need to update addresses Stuff which is "unknown" in some cases

21 Always surrogate? Need more joins; slower SQL? Still need to add unique constraint over natural key Can enforce complex business rules with "natural keys"

22 School Teacher Scheduling Who is teaching what, when, and where? Teacher only in one place at a time Only one class in each room at a time

23 New Requirement! You can only schedule approved teachers for a class create table class_teachers ( class_teacher_id integer, teacher_id integer, class_id integer, primary key ( class_teacher_id ), unique ( teacher_id, class_id ) ); Surrogate key

24 Teachers must be approved for classes No teacher_id! How validate teacher only has one class at a time? \_( ツ )_/

25 No surrogate: can implement rules! Teacher only in one place at a time Only one class in each room at a time

26 Wrong Data Types

27 Wrong Data Types: Invalid Data create table bad_data_types ( date_yyyymmdd integer ); insert into bad_data_types values ( ); insert into bad_data_types values ( ); insert into bad_data_types values (-1);

28 alter table bad_data_types add constraint is_date check ( to_number ( to_date ( date_yyyymmdd, 'yyyymmdd' ), 'yyyymmdd' ) = date_yyyymmdd ); ORA-01481: invalid number format model

29 alter table bad_data_types add constraint is_date check ( to_number ( to_date ( date_yyyymmdd, 'yyyymmdd' ), 'yyyymmdd' ) = date_yyyymmdd ) novalidate; Stops new invalid dates Existing data may still be dodgy!

30 Wrong Data Types: More Complex SQL with dates as ( select to_date ( date_yyyymmdd, 'yyyymmdd' ) dt from bad_data_types where regexp_like ( date_yyyymmdd, '[0-9]{4}(1[0-9] 0[1-9])(3[0-1] [1-2][0-9] 0[1-9])' ) ) select * from dates where dt = :date_var Still not quite right

31 Defaults to NLS settings! validate_conversion ( <expression> as <data type>, [ <format mask> ], [ <nls_parameters> ] ) 1 = Success! 0 = Failure

32 select to_date(date_yyyymmdd, 'yyyymmdd') from bad_data_types where validate_conversion ( date_yyyymmdd as date, 'yyyymmdd' ) = 1;

33 this......must match this cast ( <expression> as <data type> [ default <value> on conversion error ], [ <format mask> ], [ <nls_parameters> ] ) Also... to_date() to_number() to_timestamp() etc.

34 select to_date( date_yyyymmdd default ' ' on conversion error, 'yyyymmdd' ) from bad_data_types; 31-DEC-9999

35 Wrong Data Types: Performance how to screw up the optimizer's estimates 1-JAN DEC-2017 = 1 DAY = 8,870

36

37 Flexible Easy to add new attributes Less time requirement gathering

38 Flexible Flexible Easy to add new attributes Less time requirement gathering Don't know contents until run-time More complex SQL

39 Functions ( ) json_value extract single value json_query return JSON fragment json_table convert JSON to relational table

40 Functions ( ) json_value extract single value json_query return JSON fragment json_table convert JSON to relational table but how do you know what to extract?

41 Data Guide

42 Data Guide ( ) alter table products add constraint product_desc_is_json_c check ( product_description_json is json ); create search index products_ji on products ( product_description_json ) for json parameters ( 'dataguide on' );

43 Data Guide ( ) begin DBMS_JSON.add_virtual_columns( ); end; / 'PRODUCTS', 'product_description_json', DBMS_JSON.get_index_dataguide('PRODUCTS', 'product_description_json', DBMS_JSON.FORMAT_HIERARCHICAL)

44 Data Guide ( ) begin DBMS_JSON.create_view ( 'products_v', 'PRODUCTS', 'product_description_json', DBMS_JSON.get_index_dataguide( 'PRODUCTS', 'product_description_json', DBMS_JSON.FORMAT_HIERARCHICAL) ); end;

45 Oracle Data Modeler Helps You Build Better Databases Use it!

46 Oracle Data Modeler #MakeDataGreatAgain Gratisography

Design Your Databases Straight to the Cloud. Heli Helskyaho DOAG 2017

Design Your Databases Straight to the Cloud. Heli Helskyaho DOAG 2017 Design Your Databases Straight to the Cloud Heli Helskyaho DOAG 2017 Introduction, Heli Graduated from University of Helsinki (Master of Science, computer science), currently a doctoral student, researcher

More information

Do We Still Need to Design Databases? Heli Helskyaho

Do We Still Need to Design Databases? Heli Helskyaho Do We Still Need to Design Databases? Heli Helskyaho Introduction, Heli Graduated from University of Helsinki (Master of Science, computer science), currently a doctoral student, researcher and lecturer

More information

Top 10 Features of SQL Developer everybody should use, even in the Cloud. Heli Helskyaho, Elise Valin-Raki

Top 10 Features of SQL Developer everybody should use, even in the Cloud. Heli Helskyaho, Elise Valin-Raki Top 10 Features of SQL Developer everybody should use, even in the Cloud Heli Helskyaho, Elise Valin-Raki Introduction, Heli Graduated from University of Helsinki (Master of Science, computer science),

More information

9 use cases for Oracle SQL Developer Data Modeler

9 use cases for Oracle SQL Developer Data Modeler 9 use cases for Oracle SQL Developer Data Modeler Heli Helskyaho, Miracle Finland Oy DOAG 2013 19.11.2013 Miracle Finland Oy Introduction, Heli Graduated from Helsinki University (Master of Science, computer

More information

Oracle SQL Developer Data Modeler For Database Design Mastery (Oracle Press) By Heli Helskyaho

Oracle SQL Developer Data Modeler For Database Design Mastery (Oracle Press) By Heli Helskyaho Oracle SQL Developer Data Modeler For Database Design Mastery (Oracle Press) By Heli Helskyaho If you are looking for the ebook Oracle SQL Developer Data Modeler for Database Design Mastery (Oracle Press)

More information

Collaborative Design with Oracle SQL Developer Data Modeler

Collaborative Design with Oracle SQL Developer Data Modeler Collaborative Design with Oracle SQL Developer Data Modeler Heli Helskyaho Miracle Finland Oy Jeff Smith Oracle Corp Cary, North Carolina, USA Keywords: SQL Developer, design, architect, model, ERD, diagram,

More information

Big Data and the Multi-model Database. Heli Helskyaho DOAG 2017

Big Data and the Multi-model Database. Heli Helskyaho DOAG 2017 Big Data and the Multi-model Database Heli Helskyaho DOAG 2017 Introduction, Heli Graduated from University of Helsinki (Master of Science, computer science), currently a doctoral student, researcher and

More information

Database Programming with PL/SQL

Database Programming with PL/SQL Database Programming with PL/SQL 2-2 Objectives This lesson covers the following objectives: List and define the different types of lexical units available in PL/SQL Describe identifiers and identify valid

More information

Oracle Database: Introduction to SQL Ed 2

Oracle 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 information

Oracle Database 11g: SQL and PL/SQL Fundamentals

Oracle 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 information

MARIADB & JSON: FLEXIBLE DATA MODELING

MARIADB & JSON: FLEXIBLE DATA MODELING MARIADB & JSON: FLEXIBLE DATA MODELING FEBRUARY 2019 MARIADB PLATFORM Transactions and Analytics, UNITED MariaDB Platform is an enterprise open source database for transactional, analytical or hybrid transactional/analytical

More information

ACCESS isn t only a great development tool it s

ACCESS isn t only a great development tool it s Upsizing Access to Oracle Smart Access 2000 George Esser In addition to showing you how to convert your Access prototypes into Oracle systems, George Esser shows how your Access skills translate into Oracle.

More information

Top 5 Issues that Cannot be Resolved by DBAs (other than missed bind variables)

Top 5 Issues that Cannot be Resolved by DBAs (other than missed bind variables) Top 5 Issues that Cannot be Resolved by DBAs (other than missed bind variables) March 12, 2013 Michael Rosenblum Dulcian, Inc. www.dulcian.com 1 of 43 Who Am I? Misha Oracle ACE Co-author of 2 books PL/SQL

More information

Going to the Grid: What the APEX 5.1 Interactive Grid Means or You and Your Users. Karen Cannell

Going to the Grid: What the APEX 5.1 Interactive Grid Means or You and Your Users. Karen Cannell Going to the Grid: What the APEX 5.1 Interactive Grid Means or You and Your Users Karen Cannell kcannell@thtechnology.com TH Technology Note to Early Slide Downloaders: I edit my slides frequently up to

More information

Flexible Data Modeling in MariaDB

Flexible Data Modeling in MariaDB Flexible Data Modeling in MariaDB WHITE PAPER Part 2 JSON Table of Contents Introduction - Benefits and Limitations - Benefit - Limitations - Use Cases JSON Functions - Definitions - Create - Read - Indexes

More information

Oracle Database: SQL and PL/SQL Fundamentals NEW

Oracle 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 information

Oracle Database: SQL and PL/SQL Fundamentals Ed 2

Oracle 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 information

Appendix: Application of the Formal Principle for the Analysis of Performance Problems After an Oracle Migration

Appendix: Application of the Formal Principle for the Analysis of Performance Problems After an Oracle Migration Appendix: Application of the Formal Principle for the Analysis of Performance Problems After an Oracle Migration The method described in this book is helpful in most cases which a database specialist is

More information

Grid Essentials. APEX 18.1 Interactive Grids. Karen Cannell TH Technology

Grid Essentials. APEX 18.1 Interactive Grids. Karen Cannell TH Technology Grid Essentials APEX 18.1 Interactive Grids Karen Cannell kcannell@thtechnology.com TH Technology About Me TH Technology Oracle Consulting Services, APEX Focus Mechanical/SW Engineer - Analyzed, designed,

More information

JSON and PL/SQL: A Match Made in Database

JSON and PL/SQL: A Match Made in Database JSON and PL/SQL: A Match Made in Database Steven Feuerstein Oracle Developer Advocate for PL/SQL Oracle Corporation steven.feuerstein@oracle.com @sfonplsql stevenfeuersteinonplsql.blogspot.com Practically

More information

ETL TESTING TRAINING

ETL 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 information

Creating and Working with JSON in Oracle Database

Creating and Working with JSON in Oracle Database Creating and Working with JSON in Oracle Database Dan McGhan Oracle Developer Advocate JavaScript & HTML5 January, 2016 Safe Harbor Statement The following is intended to outline our general product direction.

More information

The Mother of All Query Languages: SQL in Modern Times

The Mother of All Query Languages: SQL in Modern Times The Mother of All Query Languages: SQL in Modern Times @MarkusWinand @ModernSQL http://www.almaden.ibm.com/cs/people/chamberlin/sequel-1974.pdf 1974 1992 SQL-92 Tied to the Relational Idea Relational Data

More information

ETL Best Practices and Techniques. Marc Beacom, Managing Partner, Datalere

ETL Best Practices and Techniques. Marc Beacom, Managing Partner, Datalere ETL Best Practices and Techniques Marc Beacom, Managing Partner, Datalere Thank you Sponsors Experience 10 years DW/BI Consultant 20 Years overall experience Marc Beacom Managing Partner, Datalere Current

More information

PostgreSQL. JSON Roadmap. Oleg Bartunov Postgres Professional. March 17, 2017, Moscow

PostgreSQL. JSON Roadmap. Oleg Bartunov Postgres Professional. March 17, 2017, Moscow PostgreSQL JSON Roadmap Oleg Bartunov Postgres Professional March 17, 2017, Moscow NoSQL Postgres briefly 2003 hstore 2006 hstore as illustration of GIN 2012 (sep) JSON in 9.2 2012 (dec) nested hstore

More information

Querying Data with Transact-SQL

Querying Data with Transact-SQL Querying Data with Transact-SQL Course: 20761 Course Details Audience(s): IT Professional(s) Technology: Microsoft SQL Server 2016 Duration: 24 HRs. ABOUT THIS COURSE This course is designed to introduce

More information

Advanced Constraints SQL. by Joe Celko copyright 2007

Advanced Constraints SQL. by Joe Celko copyright 2007 Advanced Constraints SQL by Joe Celko copyright 2007 Abstract The talk is a short overview of the options a programmer to use DDL (Data Declaration Language) in SQL to enforce a wide range of business

More information

HKTA TANG HIN MEMORIAL SECONDARY SCHOOL SECONDARY 3 COMPUTER LITERACY. Name: ( ) Class: Date: Databases and Microsoft Access

HKTA TANG HIN MEMORIAL SECONDARY SCHOOL SECONDARY 3 COMPUTER LITERACY. Name: ( ) Class: Date: Databases and Microsoft Access Databases and Microsoft Access Introduction to Databases A well-designed database enables huge data storage and efficient data retrieval. Term Database Table Record Field Primary key Index Meaning A organized

More information

Oracle rman: Don t Forget the Basics

Oracle rman: Don t Forget the Basics Oracle rman: Don t Forget the Basics UGF 6458 Michael S. Abbey Oracle DBA / Team Lead / Author Sunday, September 29, 2012 Why Pythian Recognized Leader: Global industry leader in data infrastructure managed

More information

Designing Tableau Prep

Designing Tableau Prep # T C 1 8 # T a b l e a u d e s i g n Designing Tableau Prep Clark Wildenradt Staff User Experience Designer Tableau Software I am a Midwesterner I am a Father I am a Designer What is Tableau Prep?

More information

AO3 - Version: 2. Oracle Database 11g SQL

AO3 - Version: 2. Oracle Database 11g SQL AO3 - Version: 2 Oracle Database 11g SQL Oracle Database 11g SQL AO3 - Version: 2 3 days Course Description: This course provides the essential SQL skills that allow developers to write queries against

More information

MS-Access : Objective Questions (MCQs) Set 1

MS-Access : Objective Questions (MCQs) Set 1 1 MS-Access : Objective Questions (MCQs) Set 1 1. What Are The Different Views To Display A Table A) Datasheet View B) Design View C) Pivote Table & Pivot Chart View 2. Which Of The Following Creates A

More information

COSC 304 Introduction to Database Systems SQL DDL. Dr. Ramon Lawrence University of British Columbia Okanagan

COSC 304 Introduction to Database Systems SQL DDL. Dr. Ramon Lawrence University of British Columbia Okanagan COSC 304 Introduction to Database Systems SQL DDL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Overview Structured Query Language or SQL is the standard query language

More information

Administrivia. Introduction to Computer Systems. Pointers, cont. Pointer example, again POINTERS. Project 2 posted, due October 6

Administrivia. Introduction to Computer Systems. Pointers, cont. Pointer example, again POINTERS. Project 2 posted, due October 6 CMSC 313 Introduction to Computer Systems Lecture 8 Pointers, cont. Alan Sussman als@cs.umd.edu Administrivia Project 2 posted, due October 6 public tests s posted Quiz on Wed. in discussion up to pointers

More information

Programming: Computer Programming For Beginners: Learn The Basics Of Java, SQL & C Edition (Coding, C Programming, Java Programming, SQL

Programming: Computer Programming For Beginners: Learn The Basics Of Java, SQL & C Edition (Coding, C Programming, Java Programming, SQL Programming: Computer Programming For Beginners: Learn The Basics Of Java, SQL & C++ - 3. Edition (Coding, C Programming, Java Programming, SQL Programming, JavaScript, Python, PHP) PDF PLEASE NOTE: You

More information

CS 4604: Introduction to Database Management Systems. B. Aditya Prakash Lecture #5: Entity/Relational Models---Part 1

CS 4604: Introduction to Database Management Systems. B. Aditya Prakash Lecture #5: Entity/Relational Models---Part 1 CS 4604: Introduction to Database Management Systems B. Aditya Prakash Lecture #5: Entity/Relational Models---Part 1 E/R: NOT IN BOOK! IMPORTANT: Follow only lecture slides for this topic! Differences

More information

Introduction to Computer Science and Business

Introduction 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 information

Provider: MySQLAB Web page:

Provider: MySQLAB Web page: Provider: MySQLAB Web page: www.mysql.com Installation of MySQL. Installation of MySQL. Download the mysql-3.3.5-win.zip and mysql++-.7.--win3-vc++.zip files from the mysql.com site. Unzip mysql-3.3.5-win.zip

More information

Demystifying SQL Tuning: Tips and Techniques for SQL Experts

Demystifying SQL Tuning: Tips and Techniques for SQL Experts Demystifying SQL Tuning: Tips and Techniques for SQL Experts Mughees A. Minhas Director of Product Management, Database and Systems Management Sergey Koltakov Product Manager, Database Manageability Outline

More information

CS2500 Exam 2 Fall 2011

CS2500 Exam 2 Fall 2011 CS2500 Exam 2 Fall 2011 Name: Student Id (last 4 digits): Section (morning, honors or afternoon): Write down the answers in the space provided. You may use the usual primitives and expression forms, including

More information

Transcript: A Day in the Life of a K12 Seventh Grade Teacher

Transcript: A Day in the Life of a K12 Seventh Grade Teacher Transcript: A Day in the Life of a K12 Seventh Grade Teacher Transcript (Video) Transcript (Video with Audio Description) Transcript (Audio Description) Transcript (Video) 00:00:00.000 MUSIC 00:00:05.799

More information

Do-It-Yourself Data Migration

Do-It-Yourself Data Migration Do-It-Yourself Data Migration Dr. Paul Dorsey & Michael Rosenblum Dulcian, Inc. June 5, 2012 1 of 29 Been Around FOREVER Who Am I? - Paul Spoke at almost every big Oracle conference since 93 First inductee

More information

Mergesort again. 1. Split the list into two equal parts

Mergesort again. 1. Split the list into two equal parts Quicksort Mergesort again 1. Split the list into two equal parts 5 3 9 2 8 7 3 2 1 4 5 3 9 2 8 7 3 2 1 4 Mergesort again 2. Recursively mergesort the two parts 5 3 9 2 8 7 3 2 1 4 2 3 5 8 9 1 2 3 4 7 Mergesort

More information

<Insert Picture Here> DBA Best Practices: A Primer on Managing Oracle Databases

<Insert Picture Here> DBA Best Practices: A Primer on Managing Oracle Databases DBA Best Practices: A Primer on Managing Oracle Databases Mughees A. Minhas Sr. Director of Product Management Database and Systems Management The following is intended to outline

More information

Database Programming with SQL 5-1 Conversion Functions. Copyright 2015, Oracle and/or its affiliates. All rights reserved.

Database Programming with SQL 5-1 Conversion Functions. Copyright 2015, Oracle and/or its affiliates. All rights reserved. Database Programming with SQL 5-1 Objectives This lesson covers the following objectives: Provide an example of an explicit data-type conversion and an implicit data-type conversion Explain why it is important,

More information

DT Challenge Year 7/8 Arduino Sound

DT Challenge Year 7/8 Arduino Sound DT Challenge Module 2: Using Sensors https://groklearning.com/learn/aca-dt-78-ar-sound/2/0/ Previous: Hello, Arduino Next: Making Decisions Key Concepts Key Concept Coverage Abstraction Data: collection,

More information

T-SQL Training: T-SQL for SQL Server for Developers

T-SQL Training: T-SQL for SQL Server for Developers Duration: 3 days T-SQL Training Overview T-SQL for SQL Server for Developers training teaches developers all the Transact-SQL skills they need to develop queries and views, and manipulate data in a SQL

More information

Text & Design 2015 Wojciech Piskor

Text & Design 2015 Wojciech Piskor Text & Design 2015 Wojciech Piskor www.wojciechpiskor.wordpress.com wojciech.piskor@gmail.com All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means,

More information

Organizing a storage hierarchy (creating folders etc).such as: keeping all related files in a sub folder. Reviewers: REF No:

Organizing a storage hierarchy (creating folders etc).such as: keeping all related files in a sub folder. Reviewers: REF No: Title: Organizing a storage hierarchy (creating folders etc).such as: keeping all related files in a sub folder. Contributers: Dhanya.P Std: IV Reviewers: Submission Date: Approval Date: REF No: Brief

More information

JSON Home Improvement. Christophe Pettus PostgreSQL Experts, Inc. SCALE 14x, January 2016

JSON Home Improvement. Christophe Pettus PostgreSQL Experts, Inc. SCALE 14x, January 2016 JSON Home Improvement Christophe Pettus PostgreSQL Experts, Inc. SCALE 14x, January 2016 Greetings! Christophe Pettus CEO, PostgreSQL Experts, Inc. thebuild.com personal blog. pgexperts.com company website.

More information

Full file at

Full file at SQL for SQL Server 1 True/False Questions Chapter 2 Creating Tables and Indexes 1. In order to create a table, three pieces of information must be determined: (1) the table name, (2) the column names,

More information

MITOCW ocw f99-lec07_300k

MITOCW ocw f99-lec07_300k MITOCW ocw-18.06-f99-lec07_300k OK, here's linear algebra lecture seven. I've been talking about vector spaces and specially the null space of a matrix and the column space of a matrix. What's in those

More information

6232B: Implementing a Microsoft SQL Server 2008 R2 Database

6232B: Implementing a Microsoft SQL Server 2008 R2 Database 6232B: Implementing a Microsoft SQL Server 2008 R2 Database Course Overview This instructor-led course is intended for Microsoft SQL Server database developers who are responsible for implementing a database

More information

MySQL: an application

MySQL: an application Data Types and other stuff you should know in order to amaze and dazzle your friends at parties after you finally give up that dream of being a magician and stop making ridiculous balloon animals and begin

More information

Real-World Performance Training Star Query Prescription

Real-World Performance Training Star Query Prescription Real-World Performance Training Star Query Prescription Real-World Performance Team Dimensional Queries 1 2 3 4 The Dimensional Model and Star Queries Star Query Execution Star Query Prescription Edge

More information

Using Thick Database Principles to Leverage Oracle SQL and PL/SQL Part III:

Using Thick Database Principles to Leverage Oracle SQL and PL/SQL Part III: Using Thick Database Principles to Leverage Oracle SQL and PL/SQL Part III: Implementation Techniques Peter Koletzke Technical Director & Principal Instructor Me 34 yrs. database industry 30 yrs. consulting

More information

Oracle Database 12c SQL Fundamentals

Oracle Database 12c SQL Fundamentals Course Overview This course takes a unique approach to SQL training in that it incorporates data modeling theory, relational database theory, graphical depictions of theoretical concepts and numerous examples

More information

E(xtract) T(ransform) L(oad)

E(xtract) T(ransform) L(oad) Gunther Heinrich, Tobias Steimer E(xtract) T(ransform) L(oad) OLAP 20.06.08 Agenda 1 Introduction 2 Extract 3 Transform 4 Load 5 SSIS - Tutorial 2 1 Introduction 1.1 What is ETL? 1.2 Alternative Approach

More information

Information & Communications Technology (ICT) Essentials 2 (2017/2018)

Information & Communications Technology (ICT) Essentials 2 (2017/2018) Information & Communications Technology (ICT) Essentials 2 (2017/2018) Florida 9009120.2017 This document provides the correlation between interactive e-learning curriculum, and the Information & Communications

More information

Handout 6 CS-605 Spring 18 Page 1 of 7. Handout 6. Physical Database Modeling

Handout 6 CS-605 Spring 18 Page 1 of 7. Handout 6. Physical Database Modeling Handout 6 CS-605 Spring 18 Page 1 of 7 Handout 6 Physical Database Modeling Purpose- translate the logical description of data into the technical specifications for storing and retrieving data Goal - create

More information

How Enova Financial Uses Postgres. Jim Nasby, Lead Database Architect

How Enova Financial Uses Postgres. Jim Nasby, Lead Database Architect How Enova Financial Uses Postgres Jim Nasby, Lead Database Architect Who are we? Some history Migration Where are we today? (The cheerleading section) Cool stuff Q&A Overview 2 Who are we? Who are we?

More information

DOWNLOAD PDF INSIDE RELATIONAL DATABASES

DOWNLOAD PDF INSIDE RELATIONAL DATABASES Chapter 1 : Inside Microsoft's Cosmos DB ZDNet Inside Relational Databases is an excellent introduction to the topic and a very good resource. I read the book cover to cover and found the authors' insights

More information

Oracle Syllabus Course code-r10605 SQL

Oracle Syllabus Course code-r10605 SQL Oracle Syllabus Course code-r10605 SQL Writing Basic SQL SELECT Statements Basic SELECT Statement Selecting All Columns Selecting Specific Columns Writing SQL Statements Column Heading Defaults Arithmetic

More information

CS111: PROGRAMMING LANGUAGE II

CS111: PROGRAMMING LANGUAGE II 1 CS111: PROGRAMMING LANGUAGE II Computer Science Department Lecture 1: Introduction Lecture Contents 2 Course info Why programming?? Why Java?? Write once, run anywhere!! Java basics Input/output Variables

More information

Introduction to SQL/PLSQL Accelerated Ed 2

Introduction to SQL/PLSQL Accelerated Ed 2 Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 67863102 Introduction to SQL/PLSQL Accelerated Ed 2 Duration: 5 Days What you will learn This Introduction to SQL/PLSQL Accelerated course

More information

Lecture 1. Course Overview, Python Basics

Lecture 1. Course Overview, Python Basics Lecture 1 Course Overview, Python Basics We Are Very Full! Lectures are at fire-code capacity. We cannot add sections or seats to lectures You may have to wait until someone drops No auditors are allowed

More information

Table of Contents. PDF created with FinePrint pdffactory Pro trial version

Table 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 information

Oracle 1Z0-482 Exam Questions and Answers (PDF) Oracle 1Z0-482 Exam Questions 1Z0-482 BrainDumps

Oracle 1Z0-482 Exam Questions and Answers (PDF) Oracle 1Z0-482 Exam Questions 1Z0-482 BrainDumps Oracle 1Z0-482 Dumps with Valid 1Z0-482 Exam Questions PDF [2018] The Oracle 1Z0-482 Oracle Data Integrator 11g Certified Implementation Essentials exam is an ultimate source for professionals to retain

More information

Drop Table If Exists Sql Command Not Properly Ended

Drop Table If Exists Sql Command Not Properly Ended Drop Table If Exists Sql Command Not Properly Ended Wait, this does not work! SQL_ drop table if exists t, drop table if exists t * ERROR at line 1: ORA-00933: SQL command not properly ended. Okay. It

More information

FREQUENTLY ASKED QUESTIONS ABOUT CLASS LOGISTICS AND TELECONFERENCE TECHNOLOGY

FREQUENTLY ASKED QUESTIONS ABOUT CLASS LOGISTICS AND TELECONFERENCE TECHNOLOGY FREQUENTLY ASKED QUESTIONS ABOUT CLASS LOGISTICS AND TELECONFERENCE TECHNOLOGY 1. CAN I GET CEUS FOR TAKING LLA? A: LLA has been approved for Continuing Education Credits (CEUs) by a variety of professional

More information

1 Writing Basic SQL SELECT Statements 2 Restricting and Sorting Data

1 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 information

Advanced SQL. Chapter 8 finally!

Advanced SQL. Chapter 8 finally! Advanced SQL Chapter 8 finally! Views (okay so this is Ch 7) We've been saving SQL queries by saving text files Isn't there a better way? Views! basically saved SELECT queries Syntax CREATE VIEW viewname

More information

ORACLE CERTIFIED ASSOCIATE ORACLE DATABASE 11g ADMINISTRATOR

ORACLE CERTIFIED ASSOCIATE ORACLE DATABASE 11g ADMINISTRATOR ORACLE CERTIFIED ASSOCIATE ORACLE DATABASE 11g ADMINISTRATOR The process of becoming Oracle Database certified broadens your knowledge and skills by exposing you to a wide array of important database features,

More information

Lecture 2: Divide&Conquer Paradigm, Merge sort and Quicksort

Lecture 2: Divide&Conquer Paradigm, Merge sort and Quicksort Lecture 2: Divide&Conquer Paradigm, Merge sort and Quicksort Instructor: Outline 1 Divide and Conquer 2 Merge sort 3 Quick sort In-Class Quizzes URL: http://m.socrative.com/ Room Name: 4f2bb99e Divide

More information

Today s Experts. Mastering Dates Using SEQUEL 1. Technical Consultant. Technical Consultant

Today s Experts. Mastering Dates Using SEQUEL 1. Technical Consultant. Technical Consultant Today s Experts Steven Spieler Vivian Hall Technical Consultant Technical Consultant Mastering Dates Using SEQUEL 1 Mastering Dates Using SEQUEL Mastering Dates Using SEQUEL 2 Working with dates on the

More information

Lecture 1. Course Overview, Python Basics

Lecture 1. Course Overview, Python Basics Lecture 1 Course Overview, Python Basics We Are Very Full! Lectures and Labs are at fire-code capacity We cannot add sections or seats to lectures You may have to wait until someone drops No auditors are

More information

Course Outline and Objectives: Database Programming with SQL

Course Outline and Objectives: Database Programming with SQL Introduction to Computer Science and Business Course Outline and Objectives: Database Programming with SQL This is the second portion of the Database Design and Programming with SQL course. In this portion,

More information

CPSC 211, Sections : Data Structures and Implementations, Honors Final Exam May 4, 2001

CPSC 211, Sections : Data Structures and Implementations, Honors Final Exam May 4, 2001 CPSC 211, Sections 201 203: Data Structures and Implementations, Honors Final Exam May 4, 2001 Name: Section: Instructions: 1. This is a closed book exam. Do not use any notes or books. Do not confer with

More information

MySQL Worst Practices. Introduction. by Jonathan Baldie

MySQL Worst Practices. Introduction. by Jonathan Baldie MySQL Worst Practices by Jonathan Baldie Introduction MySQL and MariaDB are two of the most popular database engines in the world. They re rightly chosen for their speed potential, portability, and the

More information

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Sloan School of Management

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Sloan School of Management MASSACHUSETTS INSTITUTE OF TECHNOLOGY Sloan School of Management 15.561 IT Essentials Spring 2005 An Introduction to Microsoft Access * Lecture Script 1. Introduction Open Database: Northwind.mdb Select

More information

Repe$$on CSC 121 Fall 2015 Howard Rosenthal

Repe$$on CSC 121 Fall 2015 Howard Rosenthal Repe$$on CSC 121 Fall 2015 Howard Rosenthal Lesson Goals Learn the following three repetition methods, their similarities and differences, and how to avoid common errors when using them: while do-while

More information

Data Vault Partitioning Strategies WHITE PAPER

Data Vault Partitioning Strategies WHITE PAPER Dani Schnider Data Vault ing Strategies WHITE PAPER Page 1 of 18 www.trivadis.com Date 09.02.2018 CONTENTS 1 Introduction... 3 2 Data Vault Modeling... 4 2.1 What is Data Vault Modeling? 4 2.2 Hubs, Links

More information

Mergesort again. 1. Split the list into two equal parts

Mergesort again. 1. Split the list into two equal parts Quicksort Mergesort again 1. Split the list into two equal parts 5 3 9 2 8 7 3 2 1 4 5 3 9 2 8 7 3 2 1 4 Mergesort again 2. Recursively mergesort the two parts 5 3 9 2 8 7 3 2 1 4 2 3 5 8 9 1 2 3 4 7 Mergesort

More information

Motivation and basic concepts Storage Principle Query Principle Index Principle Implementation and Results Conclusion

Motivation and basic concepts Storage Principle Query Principle Index Principle Implementation and Results Conclusion JSON Schema-less into RDBMS Most of the material was taken from the Internet and the paper JSON data management: sup- porting schema-less development in RDBMS, Liu, Z.H., B. Hammerschmidt, and D. McMahon,

More information

Intro. Speed V Growth

Intro. Speed V Growth Intro Good code is two things. It's elegant, and it's fast. In other words, we got a need for speed. We want to find out what's fast, what's slow, and what we can optimize. First, we'll take a tour of

More information

A Choice Performance Tuning

A Choice Performance Tuning Jason Wong, SQL Saturday 514, May 14th, 2016 / Thank You Sponsors! Visit the Sponsor tables to enter their end of day raffles. Turn in your completed Event Evaluation form at the end of the day in the

More information

OOoCon Slide 1

OOoCon Slide 1 OOoCon 2005 The OpenOffice.org ECDL About the Austrian way Slide 1 Agenda Speaker Introductions Some generic statements and politics About the ECDL/ICDL About the test and the difficulty having good training

More information

G64DBS Database Systems. Lecture 6 More SQL Data. Creating Relations. Column Constraints. Last Lecture s Question

G64DBS Database Systems. Lecture 6 More SQL Data. Creating Relations. Column Constraints. Last Lecture s Question G6DBS Database Systems Lecture 6 More SQL Data Tim Brailsford Creating Relations From last lecture.. CREATE TABLE CREATE TABLE ( , ) Column definitions are made

More information

Oracle Database: Introduction to SQL/PLSQL Accelerated

Oracle Database: Introduction to SQL/PLSQL Accelerated Oracle University Contact Us: Landline: +91 80 67863899 Toll Free: 0008004401672 Oracle Database: Introduction to SQL/PLSQL Accelerated Duration: 5 Days What you will learn This Introduction to SQL/PLSQL

More information

CS W Introduction to Databases Spring Computer Science Department Columbia University

CS W Introduction to Databases Spring Computer Science Department Columbia University CS W4111.001 Introduction to Databases Spring 2018 Computer Science Department Columbia University 1 in SQL 1. Key constraints (PRIMARY KEY and UNIQUE) 2. Referential integrity constraints (FOREIGN KEY

More information

Now, we can refer to a sequence without having to use any SELECT command as follows:

Now, we can refer to a sequence without having to use any SELECT command as follows: Enhancement in 11g Database PL/SQL Sequence: Oracle Database 11g has now provided support for Sequence in PL/SQL. Earlier to get a number from a sequence in PL/SQL we had to use SELECT command with DUAL

More information

Student Password Management and Office 365 Directions

Student Password Management and Office 365 Directions PART I: You will sign in to the Password Self-Service to retrieve your Office 365 account information and set up a new password. This can only be done on a school computer. 1. Double Click on the Password

More information

How Well Do Relational Database Engines Support

How Well Do Relational Database Engines Support How Well Do Relational Database Engines Support JSON? Christian Antognini @ChrisAntognini ITOUGTD19 @ChrisAntognini Senior principal consultant, trainer and partner at Trivadis christian.antognini@trivadis.com

More information

Guest Lecture. Daniel Dao & Nick Buroojy

Guest Lecture. Daniel Dao & Nick Buroojy Guest Lecture Daniel Dao & Nick Buroojy OVERVIEW What is Civitas Learning What We Do Mission Statement Demo What I Do How I Use Databases Nick Buroojy WHAT IS CIVITAS LEARNING Civitas Learning Mid-sized

More information

2. a. approximately cm 3 or 9p cm b. 20 layers c. approximately cm 3 or 180p cm Answers will vary.

2. a. approximately cm 3 or 9p cm b. 20 layers c. approximately cm 3 or 180p cm Answers will vary. Answers Investigation ACE Assignment Choices Problem. Core Other Connections Problem. Core,, Other Applications 7, ; Connections 7 0; unassigned choices from previous problems Problem. Core 7 Other Connections,

More information

Quicken 2015 The Official Guide For Windows! Ebooks Free

Quicken 2015 The Official Guide For Windows! Ebooks Free Quicken 2015 The Official Guide For Windows! Ebooks Free The Only Official Guide to the #1 Personal Finance Software Take control of your personal finances using the best practices and time-saving tips

More information

PL / SQL Basics. Chapter 3

PL / SQL Basics. Chapter 3 PL / SQL Basics Chapter 3 PL / SQL Basics PL / SQL block Lexical units Variable declarations PL / SQL types Expressions and operators PL / SQL control structures PL / SQL style guide 2 PL / SQL Block Basic

More information

Holistic Database Security

Holistic Database Security Holistic Database Security 1 Important Terms Exploit: Take advantage of a flaw or feature Attack Surface: Any node on the network that can be attacked. That can be the UI, People, anything that touches

More information

Querying Data with Transact SQL

Querying 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 information

COMP-202: Foundations of Programming. Lecture 13: Recursion Sandeep Manjanna, Summer 2015

COMP-202: Foundations of Programming. Lecture 13: Recursion Sandeep Manjanna, Summer 2015 COMP-202: Foundations of Programming Lecture 13: Recursion Sandeep Manjanna, Summer 2015 Announcements Final exams : 26 th of June (2pm to 5pm) @ MAASS 112 Assignment 4 is posted and Due on 29 th of June

More information