19
DB2 UDB Enterprise Server Edition New Features Overview Landon DelSordo Brad McNeely [email protected] [email protected] 804-327-4860 301-803-6778

DB2 UDB Enterprise Server Edition New Features Overview

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

DB2 UDB Enterprise Server EditionNew Features Overview

Landon DelSordo Brad [email protected] [email protected] 301-803-6778

Disclaimers and trademarksThe information in this presentation concerns new products that IBM may or may not announce. Any discussion of OEM products is based upon information which has been publicly available and is subject to change. The specification of some of the features described in this presentation may change before the General Availability date of these products.

REFERENCES IN THIS PUBLICATION TO IBM PRODUCTS, PROGRAMS, OR SERVICES DO NOT IMPLY THAT IBM INTENDS TO MAKE THESE AVAILABLE IN ALL COUNTRIES IN WHICH IBM OPERATES.

IBM MAY HAVE PATENTS OR PENDING PATENT APPLICATIONS COVERING SUBJECT MATTER IN THIS DOCUMENT. THE FURNISHING OF THIS DOCUMENT DOES NOT IMPLY GIVING LICENSE TO THESE PATENTS.

TRADEMARKS

THE FOLLOWING TERMS ARE TRADEMARKS OR REGISTERED TRADEMARKS OF THE IBM CORPORATION IN THE UNITED STATES AND/OR OTHER COUNTRIES:AIX, AS/400, DB2, DB2 CONNECT, DB2 UNIVERSAL DATABASE, OPERATING SYSTEM/2, OS/400, ES/9000, OS/390, OS/2, RISC SYSTEM/6000, SQL/DS, VM/ESA, and IBM.

APPROACH, and LOTUS NOTES are registered trademarks of Lotus Development Corporation.

THE FOLLOWING TERMS ARE TRADEMARKS OR REGISTERED TRADEMARKS OF THE MICROSOFT CORPORATION IN THE UNITED STATES AND/OR OTHER COUNTRIES: MICROSOFT, WINDOWS, and WINDOWS NT.

UNIX is a registered trademark of The Open Group in the United States and other countries.

Fully Exploit All Resources

PC Server320

PC Server320

PC Server320

PC Server320

SymmetricSymmetricMultiprocessorMultiprocessor

(SMP)(SMP)

ClusterCluster

UniprocessorUniprocessor

Massively ParallelMassively ParallelProcessor (MPP) Processor (MPP)

and NUMAand NUMA

Parallel TransactionParallel Transaction

CPUCPUCPUCPU

CPUCPUCPUCPU

SQLSQLSQLSQL

SQLSQLSQLSQL

Parallel SQLParallel SQL

CPUCPUCPUCPU

CPUCPUCPUCPUSQLSQL

Full exploitation of ALL available resourcesWithin a single queryAcross separate queries

Regardless of resource class/amountI/O bandwidth, Main memory, Cache, CPUs, Comm. bandwidth

All through a single common codebase

Common Client SupportNew Client

Can connect to all versions of new servers (32-bit/64-bit)Restrictions on downlevel feature support (to V7 servers)Can also connect to all other members of DB2 family without additional codeFast performing

Reduced code path lengthsReduced memory transfers

Unicode to non-Unicode database connections now supported

Client UNIX 32 UNIX 64 Windows 32 Windows 64V7 32-bit Client Windows yes no yes yesV7 32-bit Client UNIX yes no yes noV8 Client yes yes yes yes

Connection ConcentratorConnection Concentrator

Support for a large number of concurrently connected usersNew concept of connection and coordinator agentsN:M architecture is very efficient and supports 1000s of concurrent connectionsFast performance, less memory utilization, and total cost of ownership savings

N Client Connections

Page Cleaners and Prefetchers

Tablespaces

Bufferpool(s)

N Coordinator Agents

N Client Connections

f(N) Subagents

Page Cleaners and Prefetchers

Bufferpool(s)

K Coordinator Agents

f(K) Subagents

Tablespaces

Enable by setting MAX_CONNECTIONS > MAX_COORDAGENTS, e.g.: UPDATE DBM CFG USING MAX_CONNECTIONS 5000 MAX_COORDAGENTS 500

Online ReorganizationFeature

Enhances database availability by allowing reorganization of tables while permitting read and write (online) table accessProvides the capability for monitoring the status and progress of a table REORG

Can start, stop, resume, and pauseMechanism

Table is reorganized in a piece-wise fashion and remains available to all users in either a readable or readable and writeableIncremental processing affords 'break points' such that the online REORG could be paused and then later resumed from the point of interruptionNode level reorganization for online table REORG can be resumed from the point where it was interrupted or paused instead of ALL nodes being restartedREORG will reorganize table data objects only and notindexes, long fields or LOBsOptionally, online REORG will allow a table to betruncated (i.e. free-up reclaimed table space) at the end of online processingDone fully "in-place", works on regular tables

No requirement for large temp space

VACATE PAGE RANGE: MOVE & CLEAN to make space

FILL PAGE RANGE: MOVE & CLEAN to fill space

freespace

TIME

Online Index Creation and MaintenanceNew REORG INDEX commandOnline index maintenance

Full R/W access to tables during index creationFull R/W access to table & index during index REORG

MechanismGhost (or shadow) index created during normal transaction processingWhen index creation is complete, old index is swapped out for the new, or the additional index is made available to applications and usersSufficient temporary space needs to be available to build or reorganize the new index

Can now create indexes in large table spaces

Online LoadPurpose of online load is to:

Remove the concurrent tablespace access restrictions while still preventing full concurrent access to the table being loadedAllow read access (but no updates) to the existing portion of a table during a load insert (append) operation

Two modes of operation.Tablespace online, but table off-lineTablespace online, table online for read

Snapshot table functionsCommon DB2 API commands are implemented through UDT (Table functions)Sample Table Functions

SNAPSHOT_AGENT(<dbname>, <partition>)Returns agent information from application snapshot

SELECT AGENT_ID FROM TABLE(SNAPSHOT_AGENT('MYDB', 0)) AS S;

SNAPSHOT_APPL(<dbname>,<partition>)Returns general information from application snapshot

SELECT APPLNAME FROM TABLE(SNAPSHOT_APPL('MYDB', 0)) AS S;

SNAPSHOT_BP(<dbname>, <partition>)Returns bufferpool information

SELECT DIRECT_READS FROM TABLE(SNAPSHOT_BP('MYDB', 0)) AS S;

SNAPSHOT_CONTAINER(<dbname>, <partition>)Returns container configuration information from a tablespace snapshot

SELECT TABLESPACE_ID, CONTAINER_NAME FROM TABLE(SNAPSHOT_CONTAINER('MYDB', 1)) AS S;

Three new container operations are being introducedDropping existing containers from a DMS tablespaceReducing the size of existing containers in a DMS tablespace in addition to being able to extend them.Adding new containers to a DMS tablespace such that a rebalance does not occur

Database Container Operation

ALTER TABLESPACE myts REDUCE (FILE 'cont1' 500, FILE 'cont2' 500)

ALTER TABLESPACE myts DROP (FILE 'cont2')

ALTER TABLESPACE myts BEGIN NEW STRIPE SET (FILE 'cont1' 2500, FILE 'cont2' 2500)

no rebalancing

Multi-FixPak Install for UNIX

DB2 V8 introduces an enhanced Fixpak structure for DB2 ESERegular Fixpak (aka Delta FixPak)

Will install on top of the existing code, and behave exactly as Fixpaks current doAlternate Path FixPak

Fixpak is similar to a fully installable image and installed in its own directory pathSame level of code as the regular FixPakUtilities will be provided to install this as a "FixPak" - but it is command line only

DB2 instance utilities are integrated with this feature

db2ilist -adb2inst1 32 /usr/opt/db2_08_01db2inst2 32 /usr/opt/db2_08_FP1

-ROLLFORWARD----+-DATABASE-+---database-alias----------------->'-DB-------'

>-----+--------------------------------------------------------+------->+-TO----isotime--+------------------+-+------------+-----+

'-USING LOCAL TIME-' '-NORETRIEVE-'

Rollforward to LocaltimeAllows the user to rollforward to a point in time (PIT) that is the user’s local time rather than GMT time

Makes it easier for users to rollforward to a specific point in time on their local machines, and eliminates potential user errors due to the translation of local to GMT time

Allows the user to control which log files to be rolled forward on a standby machine by allowing the user to disable the retrieval of archived logs

By controlling the logfiles to be rolled forward, one can ensure that the standby machine is X hours behind the production machineIf the standby system does not have access to the archives (for example, Tivoli Storage Manager only allows the original machine to retrieve the files)It might also be possible that while the production system is archiving a file, the standby system is retrieving the same file, and it might then get an incomplete log file.

Complete Split of db2diag.log into 2 separate logs: db2diag.log - intended for IBM customer service and L3 Administration notification log (admin log) - intended for end users (DBAs and sysadmins)

One stop shopping for all administration information - user friendly messages!Location of Notify file depends on operating system:

On a Windows-based server, the Windows Event log facility is usedOn UNIX-based servers, a text file called /sqllib/db2dump/<instance_name>.nfy is used

Administration notification log is NLS-enabled and translated into installation languageUse NOTIFYLEVEL database manager configuration parameter for granularity control of administration information that is logged (like DIAGLEVEL for db2diag.log)

Diagnostic Logging Enhancements

NOTIFYLEVEL Description0 Disables admin notification logging.1 IT'S TOO LATE - This level is reserved for logging fatal and/or

unrecoverable errors. It is possible that some of these conditions would require assistance from DB2 service.

2 IMMEDIATE ACTION REQUIRED...OR IT COULD GET WORSE - This level is for those conditions that require immediate attention from the SYSADM or /DBA.

3 IMPORTANT INFORMATION, BUT NO IMMEDIATE ACTION IS REQUIRED -This level is for non-threatening conditions that do not mandate immediate action, but may indicate a sub-optimal system

4 FOR YOUR INFORMATION - Routine information that can often be safely ignored.

Multidimensional ClusteringMultidimensional Clustering

Provides range partitioning on multiple dimensionsReduces need for indexing (including clustered indexes), reorgainzations, and index maintenanceRoll-in / roll-out improvementsCan be used for query or transaction workloads

Prior to MDCClustering in one dimension onlyclustering NOT guaranteed (degrades once page free space is exhausted)

Region

Year

Region

Year

East97

East NorthSouthWest98 99 99 00

All records in this block are from the East region and from the year 97

With MDCClustering guaranteed !

Smaller indexesFaster query response

Simple definition syntaxFast roll-in & roll-out

MDC

CREATE TABLE MDC1 (Date DATE, Province CHAR(2), Color VARCHAR(10), YearAndMonth generated as INTEGER(Date)/100, ... )

ORGANIZE BY DIMENSIONS (

YearAndMonth, Province, Color)

MERGE SQL - "UPSERT"Common database design:

Transaction table containing a set of changes to be applied to the master tableTransaction table can contain:

Updates to objects existing in the master table aNew objects that should be inserted into the master table

To apply the changes from the transaction table to the master table requires two separate operations:

An UPDATE operation for those rows already existing in the master tableAn INSERT operation for those rows that do not exist in the master table

New single SQL statement that makes processing of these separate operations more efficient as well as easier for the user to specify

MERGE INTO account AS aUSING (SELECT id, sum(balance) sum_balance FROM transaction

GROUP BY id) AS tON a.id = t.idWHEN MATCHED THEN

UPDATE SETbalance = a.balance + t.sum_balance

WHEN NOT MATCHED THENINSERT (id, balance) =

(t.id, t.sum_balance);

Application Development

DB2 Development CenterStored Procedure builder development

SQL, Java2, Linux, feature exploitationUser Defined Functions (UDFs) development

Scalar and table SQL UDFs, MQSeries, XML, and OLE-DB table UDFs, WebService table UDFs

DC supports both OS/390 and workstation Visual ExplainSQL in UDFs

Control Center EnhancementsNew Wizards - know what environment you are running

create tablespace wizard for ESEperformance configuration wizard for ESEMultipartition controlRedistributeEnhanced Details ViewAdd/Drop NodeSet IntegrityPrivilege Support Version BindDB2LOOKOnline Table Reorganization, Index Build, Rename Index, RUNSTATSDynamic Configuration ParametersContainer Operations, Log MirroringMultidimensional partitioning

Regular updates to documentation:Use new Document Updater wizard to get latest updates to HTML documentation over the WebEntire HTML library updated between releases to reflect new and changed function and to add samples

Enhancements to InformationMore granular access to information and sub-topicsMore detailed Quick Tour of new features in DB2 Version 8 and new tutorialsInfopops for all DB2 Java-based GUI tools

Information and Documentation

Health Center/Memory Visualizer