getting started with ingres vectorwise [email protected]

33
Getting Started With Ingres VectorWise [email protected]

Upload: charlotte-king

Post on 12-Jan-2016

230 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Getting Started WithIngres [email protected]

Page 2: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Agenda

VectorWise is for ... Requirements Download Installation Ingres VectorWise Instance Architecture Testing the Installation Loading Data Running Queries The Demonstration

© 2010 Ingres Corporation

Page 3: Getting Started With Ingres VectorWise John.Smedley@ingres.com

VectorWise is for ...

Data warehousing Data mining Data marts Business Intelligence OLAP Big Data

© 2010 Ingres Corporation

Page 4: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Hardware Requirements

Fast CPUs Minimum Memory

– 4 gig Disk

– Lots

© 2010 Ingres Corporation

Page 5: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Operating System

Currently only available on 64-bit Linux Runs on

– RedHat– Fedora– CentOS– Ubuntu– SuSE

Will work on other Linux flavours Will come on other operating systems

© 2010 Ingres Corporation

Page 6: Getting Started With Ingres VectorWise John.Smedley@ingres.com

http://esd.ingres.com

Page 7: Getting Started With Ingres VectorWise John.Smedley@ingres.com
Page 8: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Documentation

Ingres VectorWise 1.0 for Linux User Guide http://community.ingres.com/forum

– /vectorwise-q/– /vectorwise-discussion/

Knowledge Base

© 2010 Ingres Corporation

Page 9: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Installation

Options– rpm GUI Install– ingbuild Install– Express Install

© 2010 Ingres Corporation

Page 10: Getting Started With Ingres VectorWise John.Smedley@ingres.com

rpm GUI Install

© 2010 Ingres Corporation

Page 11: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Unpack

Put the tgz file into a directory Ensure that the file is owned by the user who will own

the installation– It is suggested

• An “ingres” user Then

– tar –xvf ingresvw-1.0.0-112-NPTL-eval-linux-x86_64.tgz This creates a directory

– ingresvw-1.0.0-112-NPTL-eval-linux-x86_64

© 2010 Ingres Corporation

Page 12: Getting Started With Ingres VectorWise John.Smedley@ingres.com

rpm Installation

As the installation owner e.g. ingres cd to

– ingresvw-1.0.0-112-NPTL-eval-linux-x86_64– Which contains

• Files– LICENSE – readme_a64_lnx_nptl.html– ingres_express_install.sh– md5sum.txt – readme.html– ingres_install

• Dirctories– bin– pixmaps– rpm

© 2010 Ingres Corporation

Page 13: Getting Started With Ingres VectorWise John.Smedley@ingres.com

rpm Installationcommand

rpm Installation

You need theroot password

Page 14: Getting Started With Ingres VectorWise John.Smedley@ingres.com
Page 15: Getting Started With Ingres VectorWise John.Smedley@ingres.com
Page 16: Getting Started With Ingres VectorWise John.Smedley@ingres.com
Page 17: Getting Started With Ingres VectorWise John.Smedley@ingres.com
Page 18: Getting Started With Ingres VectorWise John.Smedley@ingres.com

And then ...

Tell Ingres VectorWise about the editor

Nothing else to do

[home]$ which vialias vi='vim' /usr/bin/vim[home]$ ingsetenv ING_EDIT /usr/bin/vim

© 2010 Ingres Corporation

Page 19: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Ingres VectorWise Instance

© 2010 Ingres Corporation

Page 20: Getting Started With Ingres VectorWise John.Smedley@ingres.com

User Interface (SQL, ABF, OpenROAD,

JAVA, etc.)

DASServer (iigcd)

CommunicationsServer (iigcc)

Archiver (iiacp)

Recovery Server (iircp)

Databases

Databases

Databases

JournalsJournals

JournalsJournals

TransactionLog File

Ingres Instance Architecture

Name Server (iigcn)

User Interface (SQL, ABF, OpenROAD,

etc.)

DBMS Server (iidbms)

Locks Log Buffers

© 2010 Ingres Corporation

Page 21: Getting Started With Ingres VectorWise John.Smedley@ingres.com

User Interface (SQL, ABF, OpenROAD,

JAVA, etc.)

DASServer (iigcd)

CommunicationsServer (iigcc)

Archiver (iiacp)

Recovery Server (iircp)

Databases

Databases

Databases

JournalsJournals

JournalsJournals

TransactionLog File

Ingres VectorWise Instance Architecture

Name Server (iigcn)

User Interface (SQL, ABF, OpenROAD,

etc.)

DBMS Server (iidbms)

Locks Log Buffers

© 2010 Ingres Corporation

VectorWiseServer VectorWise

Data Store

Page 22: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Limitations

No commit/rollback/savepoint No journalling No use of transaction log file No ckpdb/rollforwarddb of VectorWise data location No modify No alter table No rules

© 2010 Ingres Corporation

Page 23: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Limitations

No Dbprocedures No IngresDate No Time Zones No “long” data types No mixing of Ingres and VectorWise tables in the

same query Flattened queries only (no SE joins)

© 2010 Ingres Corporation

Page 24: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Testing the Installation without VectorWise

createdb my_ii sql my_ii

create table x (id int)\g

insert into x values(1)\g

insert into x values(5)\g

select * from x\g

\q destroydb my_ii

© 2010 Ingres Corporation

Page 25: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Testing the Installation with VectorWise

createdb my_vw sql my_vw

create table x (id int) with structure = vectorwise\g

insert into x values(1)\g

insert into x values(5)\g

select * from x\g

\q destroydb my_vw

© 2010 Ingres Corporation

Page 26: Getting Started With Ingres VectorWise John.Smedley@ingres.com

The Demo Database

© 2010 Ingres Corporation

Is the DBT-3 database benchmarkAvailable in Open Source at http://osdldbt.sourceforge.net/

Page 27: Getting Started With Ingres VectorWise John.Smedley@ingres.com

The Demo Table

© 2010 Ingres Corporation

CREATE TABLE lineitem ( l_orderkey INTEGER NOT NULL, l_partkey INTEGER NOT NULL, l_suppkey INTEGER NOT NULL, l_linenumber INTEGER NOT NULL, l_quantity DECIMAL(2,0) NOT NULL, l_extendedprice DECIMAL(8,2) NOT NULL, l_discount DECIMAL(2,2) NOT NULL, l_tax DECIMAL(2,2) NOT NULL, l_returnflag CHAR(1) NOT NULL, l_linestatus CHAR(1) NOT NULL, l_shipdate ANSIDATE NOT NULL, l_commitdate ANSIDATE NOT NULL, l_receiptdate ANSIDATE NOT NULL, l_shipinstruct CHAR(25) NOT NULL, l_shipmode CHAR(10) NOT NULL, l_comment VARCHAR(44) NOT NULL) WITH STRUCTURE = VECTORWISE

Page 28: Getting Started With Ingres VectorWise John.Smedley@ingres.com

Data Loading

Copy– Fastest method– Binary or ASCII

multiple Inserts– Can lead to

• Fragmentation within the data store• Performance degradation

© 2010 Ingres Corporation

Page 29: Getting Started With Ingres VectorWise John.Smedley@ingres.com

The Demo Load

© 2010 Ingres Corporation

copy table lineitem (        l_orderkey = 'c0|',        l_partkey = 'c0|',        l_suppkey = 'c0|',        l_linenumber = 'c0|',        l_quantity = 'c0|',        l_extendedprice = 'c0|',        l_discount = 'c0|',        l_tax = 'c0|',        l_returnflag = 'c0|',        l_linestatus = 'c0|',        l_shipdate = 'c0|',        l_commitdate = 'c0|',        l_receiptdate = 'c0|',        l_shipinstruct = 'c0|',        l_shipmode = 'c0|',        l_comment = 'c0nl') from 'lineitem.ingres‘

Page 30: Getting Started With Ingres VectorWise John.Smedley@ingres.com

The Demo Load

© 2010 Ingres Corporation

copy table lineitem () from 'lineitem.ingres‘

6001215 rows of data

Page 31: Getting Started With Ingres VectorWise John.Smedley@ingres.com

DataStorage

IngresStorage

Parse OptimizationQuery

Execution

SELECT l_returnflag, l_linestatus, …

Project(Agg(Select((Columnscan(

[l_returnflag,l_linestatus, …

Running Queries

VectorWiseStorage

VectorWiseServer

Ingres DBMS

© 2010 Ingres Corporation

Page 32: Getting Started With Ingres VectorWise John.Smedley@ingres.com

The Demo Query

© 2010 Ingres Corporation

SELECTl_returnflag,l_linestatus,sum(l_quantity) as sum_qty,

            sum(l_extendedprice) as sum_base_price, sum(l_extendedprice * (1 - l_discount)) as sum_disc_price, sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) as sum_charge, avg(l_quantity) as avg_qty,

avg(l_extendedprice) as avg_price, avg(l_discount) as avg_disc,

count(*) as count_order FROM

lineitem WHERE

l_shipdate <= date '1998-12-01' - interval '90' day GROUP BY

l_returnflag, l_linestatus ORDER BY

l_returnflag, l_linestatus

Page 33: Getting Started With Ingres VectorWise John.Smedley@ingres.com

And now live and without the use of a safety net - the demo ...