Home

Getting Started

Utilities

Indexing

Omnidex

Development

Tutorials

Quick Links

 

Utilities

VIEWGEN

Example

 

Omnidex Utilities

 

VIEWGEN creates flattened data warehouse views of multiple tables to facilitate high-speed retrieval.

The VIEWGEN program prompts for whether to use memory-mapped access or malloc'd memory for its internal processing. Memory-mapped access may allow access to more of the machine's memory on many platforms.

Performance can be degraded using mapped access, however on most platforms, benchmarks showed that performance degradation was less than 5%. Note that when using memory-mapped access, it may be necessary to direct each dimension and snowflake table to a separate device, as a temporary file must be created for each dimension table. Unless overridden, these files are created in TMPDIR.

VIEWGEN also has added prompts for selection criteria for each table, allowing for filtering of dimension, snowflake and fact tables. This can be valuable to reduce the size of dimension tables loaded into memory.

These prompts can be avoided by setting the environment variable VIEWGEN_NOMAP=1. This allows existing scripts to be run without change. This will be removed in future releases.

VIEWGEN now produces a file containing an insertable environment file entry for the superview table. This file is overridden each time VIEWGEN is run, and is called "view.src". VIEWGEN also includes improved statistics at the end of each run, showing the amount of time and memory required.

 

Example

Following is a sample run of the new VIEWGEN program:

DS73000 2.0.00 VIEWGEN - Super-View Generator Sun Jun 06 23:22:56 1999

(c) Dynamic Information Systems Corp. 1981-1999
LICENSEE: ** D.I.S.C. Internal Copy **

Environment file name: star.env

Fact table name: orders

Columns to include in view: status, tax_state, source, pmt_method, discount, quantity, sales_tax, amount,total

Options passed to oaselect:

Criteria passed to oaselect:

Estimated cardinality: 200

Process dimensions separately? n

Merge dimension result files? n

(M)apped access or m(a)llocs? m

Dimension table #1: prospects

Fact link columns: acct

Dimension link columns: acct

Columns to include in view: acct, state, zip, region, country, gender, mailflag, mailing, profession, income, profile, preferred, frq_buy_mbr, cr_limit, discount_rt, cust_since, last_order

Options passed to oaselect:

Criteria passed to oaselect:

Result file name (optional):

Scratch file name (optional):

Estimated cardinality: 10

Join type (I)nner/(O)uter: I

Snowflake table #1: /

Dimension table #2: products

Fact link columns: product_no

Dimension link columns: product_no

Columns to include in view: product_no, division, dept, category, mfr

Options passed to oaselect:

Criteria passed to oaselect:

Result file name (optional):

Scratch file name (optional):

Estimated cardinality: 100

Join type (I)nner/(O)uter: I

Snowflake table #1: /

Dimension table #3: dates

Fact link columns: order_date

Dimension link columns: dt

Columns to include in view: dt, yr, mo, dy_of_mo, dy_of_yr, dy_of_wk, wk, qtr, fqtr, fyr

Options passed to oaselect:

Criteria passed to oaselect:

Result file name (optional):

Scratch file name (optional):

Estimated cardinality: 4383

Join type (I)nner/(O)uter: I

Snowflake table #1: /

Dimension table #4: /

Rows to process (CR for all):

Number of output files: 1

Filename for view file 1: osv.dat

File 1 limit (# MB or 'none'): none

Print status messages? D1

svw.debug: 1

Creating super-view ...

Loading dimension table prospects ...

Loaded 10 rows from dimension table: prospects

Loading dimension table products ...

Loaded 100 rows from dimension table: products

Loading dimension table dates ...

Loaded 4,383 rows from dimension table: dates

Beginning scan of fact table orders

Processed 200 rows in 00:00:00

Wrote 200 rows to output file osv.dat

Rejected 0 rows due to inner join failures.

Super-view produced successfully.

Number of rows: 200

Inner join rejections: 0

Time required: 1.242 CPU sec. 3.295 Elapsed sec.

Load of dimensions: 1.202 CPU sec. 2.884 Elapsed sec.

Processing fact: 0.030 CPU sec. 0.190 Elapsed sec.

Fact rows per hour: 249,653

Number of columns: 41

View record length: 80

Number of files: 1

Disk space: 0.01 MB

Max malloc'd memory: 0.05 MB

Max mapped memory: 0.19 MB

Max combined memory: 0.25 MB

Max heap size: 0.29 MB

Top