OpenEdge Standard Storage Areas

Slides:



Advertisements
Similar presentations
B3: Putting OpenEdge Auditing to Work: Dump and Load with (Almost) No Downtime David EDDY Senior Solution Consultant.
Advertisements

Chapter 9. Performance Management Enterprise wide endeavor Research and ascertain all performance problems – not just DBMS Five factors influence DB performance.
Database Planning, Design, and Administration
DB-03: A Tour of the OpenEdge™ RDBMS Storage Architecture Richard Banville Technical Fellow.
Some More Database Performance Knobs North American PUG Challenge
ProTop version 3 – An open source Progress database performance monitor ProTop is a free, Open Source database monitor for Progress OpenEdge databases.
ProTop version 3 – An open source Progress database performance monitor ProTop is a free, Open Source database monitor for Progress OpenEdge databases.
Numbers, We don’t need no stinkin’ numbers Adam Backman Vice President DBAppraise, Llc.
Storage Optimization Strategies Techniques for configuring your Progress OpenEdge Database in order to minimize IO operations Tom Bascom, White Star Software.
Physical Design CS 543 – Data Warehousing. CS Data Warehousing (Sp ) - Asim LUMS2 Physical Design Steps 1. Develop standards 2.
Harvard University Oracle Database Administration Session 5 Data Storage.
Lecture Nine Database Planning, Design, and Administration
MOVE-4: Upgrading Your Database to OpenEdge® 10 Gus Björklund Wizard, Vice President Technology.
Building Highly Available Systems with SQL Server™ 2005 Robert Rea Brandon Consulting.
Oracle Database Administration Database files Logical database structures.
Database Storage Considerations Adam Backman White Star Software DB-05:
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
ITEC224 Database Programming
Segregation of Duties for Infor-Lawson Software 1.
Sofia, Bulgaria | 9-10 October SQL Server 2005 High Availability for developers Vladimir Tchalkov Crossroad Ltd. Vladimir Tchalkov Crossroad Ltd.
1 Growth: It's a Good Problem To Have! But what are you going to do about it? Abstract: Many partners start out with a great idea, create a fantastic product,
Extents, segments and blocks in detail. Database structure Database Table spaces Segment Extent Oracle block O/S block Data file logical physical.
TEMPDB Capacity Planning. Indexing Advantages – Increases performance – SQL server do not have to search all the rows. – Performance, Concurrency, Required.
A first look at table partitioning PUG Challenge Americas Richard Banville & Havard Danielsen OpenEdge Development June 9, 2014.
Architecture Rajesh. Components of Database Engine.
ZLOT Prototype Assessment John Carlo Bertot Associate Professor School of Information Studies Florida State University.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
 Three-Schema Architecture Three-Schema Architecture  Internal Level Internal Level  Conceptual Level Conceptual Level  External Level External Level.
File Storage Organization The majority of space on a device is reserved for the storage of files. When files are created and modified physical blocks are.
1 Oracle Enterprise Manager Slides from Dominic Gélinas CIS
Integrated Monitoring Dashboard SEAP/BTIS/DB&I/Mar Integrated Monitoring Dashboard An Innovative Monitoring Approach Proposal by BTIS/DB&I.
Chapter 4 Logical & Physical Database Design
Using Progress® Analytical Tools Adam Backman White Star Software DONE-05:
for all Hyperion video tutorial/Training/Certification/Material Essbase Optimization Techniques by Amit.
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
October 15-18, 2013 Charlotte, NC Accelerating Database Performance Using Compression Joseph D’Antoni, Solutions Architect Anexinet.
3 Copyright © 2006, Oracle. All rights reserved. Designing and Developing for Performance.
Chapter 9 Database Planning, Design, and Administration Transparencies © Pearson Education Limited 1995, 2005.
9 Copyright © 2004, Oracle. All rights reserved. Getting Started with Oracle Migration Workbench.
Tales of the Secret Bunker 2016 (231) Dump and Load Edition Mike Furgal – Director MDBA and Pro2 Services Gus Bjorklund - Lackey.
SQL IMPLEMENTATION & ADMINISTRATION Indexing & Views.
Advanced Higher Computing Science
Platform and Data Migration With Little Downtime
Smarter Technology for Better Business
Business System Development
Chapter 5 UNDERSTANDING AND DESIGNING ACCOUNTING DATA
Place Standard How Good is Our Place?
Learning Management System
OpenEdge Standard Storage Areas
Dockerize OpenEdge Srinivasa Rao Nalla.
SAP SuccessFactors extension with SAP HANA Cloud Platform Innovation Use Case SAP & Partner Confidential
Database System Concepts and Architecture
Planning an Effective Upgrade from SQL Server 2008
Business Process Applications: The Future of Business Applications
Chapter 4 Relational Databases
Get Oracle 8i Running on Your Linux Server Straight Away!
Decorator Design Pattern
Introduction of Week 3 Assignment Discussion
VENDORS, CONSULTANTS AND USERS
SQL Server May Let You Do It, But it Doesn’t Mean You Should
Automation in IMS Can it help the shrinking talent pool
Database Applications (15-415) DBMS Internals- Part III Lecture 15, March 11, 2018 Mohammad Hammoud.
Place Standard How Good is Our Place?
GCSE Computing Databases.
OPS-8: Effective OpenEdge® Database Configuration
OPS-14: Effective OpenEdge® Database Configuration
Database System Architecture
The Database Environment
WHAT ARE THE ADVANTAGES AND CHALLENGES OF MICROSOFT SQL SERVER.
Lecture 20: Representing Data Elements
Presentation transcript:

OpenEdge Standard Storage Areas Standards are like toothbrushes – everybody agrees you should have one, but no one wants to use yours. -- unknown

A Few Words about the Speaker Tom Bascom; Progress user & roaming DBA since 1987 Partner, White Star Software, LLC Expert consulting services related to all aspects of Progress and OpenEdge. tom@wss.com Partner, DBAppraise, LLC Remote database management service for OpenEdge. Simplifying the job of managing and monitoring the world’s best business applications. tom@dbappraise.com I have been working with Progress since 1987 … and today I am both President of DBAppraise; The remote database management service… where we simplify the job of managing and monitoring the worlds best business applications; and Vice President of White Star Software; where we offer expert consulting services covering all aspects of Progress and OpenEdge.

Who is White Star Software? The oldest and most respected independent OpenEdge DBA consulting firm in the world! The world’s top independent OpenEdge DBAs! Author of ProTop, the #1 FREE OpenEdge Database Monitoring Tool: http://dbappraise.com/protop.html

Standards ISO Standard “Standards” Comic http://xkcd.com/927

Progress’ CCS Common Component Specification: https://community.progress.com/products/directions/common_component/f/208 Key Point: These are community driven efforts! Progress participates and supports but does not dictate. Last night…

The Schema Area Thou Shalt Not Put User Data In The Schema Area! BEST PRACTICES INVOLVING THE SCHEMA AREA http://knowledgebase.progress.com/articles/Article/P106007

The Problem The default Storage Area for tables, indexes and LOBs is the Schema Area. It is also the ONLY area available in a default, empty database. Progress advises that the Schema Area not be used to store user tables, indexes and LOBs. It should only contain system data! All of the advanced features of the OpenEdge database rely upon type 2 storage areas. Without specific guidance nearly all new applications, conversions, upgrades and migrations leave the user objects in the schema area. The only advice from Progress is that no user objects (tables, indexes or large objects) should be assigned to the schema area. Yet, by default, the only area available is the schema area and, by default, the schema area is the area that newly created objects are assigned to. As a result, nearly all new applications, conversions, upgrades and migrations leave the user objects in the schema area. All of the advanced features of the OpenEdge database rely upon type 2 storage areas. The schema area is always a type 1 area and objects in the schema area are, therefore, unable to participate in these advanced features.

Great! Now what? Currently application partners and other developers have no guidance to help them determine an appropriate set of storage areas for their applications. An explicit set of recommended minimum storage areas will help partners and developers to easily assign their storage objects to appropriate storage areas. This, in turn, will position their applications to be able to immediately leverage advanced features of the database without painful post-deployment maintenance (such as dumping and re-loading). A side effect is that revenue opportunities for Progress and partners will thus be more easily realized because a barrier to adoption has been removed!

Kbase Articles, PUG Talks, Videos, Forums… There are dozens – maybe even hundreds of excellent sources for great advice on how to create good type 2 storage areas! Programmers, architects and part-time DBAs are overwhelmed So decisions don’t get made, nothing is done and yet another database gets created with everything in the schema area 

Kbase Articles, PUG Talks, Videos, Forums… There are dozens – maybe even hundreds of excellent sources for great advice on how to create good type 2 storage areas! Programmers, architects and part-time DBAs are overwhelmed So decisions don’t get made, nothing is done and yet another database gets created with everything in the schema area  Which is an excellent source of consulting opportunities!

Type 2 Storage Areas Always use Type 2 storage areas (areas with 8, 64 or 512 blocks per cluster are Type 2 areas). Never put any objects (tables, indexes, or LOBs) in the Schema Area. Do not mix objects of different types (e.g. tables and indexes) in the same storage area: Create a storage area for tables. Create a storage area for indexes. Create a separate storage areas for LOBs, if any. Create a storage area for the data of tables with word indexes, if any. Create a storage area for each very large table. For each of those, create a storage area for the indexes of that table.

That’s Nice But… It still requires users to act!

We Need A There should be a Standard for This! Currently application partners and other developers have no guidance to help them determine an appropriate set of storage areas for their applications. An explicit set of recommended minimum storage areas will help partners and developers to easily assign their storage objects to appropriate storage areas. This, in turn, will position their applications to be able to immediately leverage advanced features of the database without painful post-deployment maintenance (such as dumping and re-loading). A side effect is that revenue opportunities for Progress and partners will thus be more easily realized because a barrier to adoption has been removed!

Project Proposal Define a minimum collection of Storage Areas for an application using an OpenEdge database

The Solution An explicit set of recommended minimum storage areas. That will help partners and developers to easily assign their storage objects to appropriate storage areas. While remaining flexible and extensible for more advanced customers.

Solution Constraints The “out of the box” solution MUST NOT: require coding changes! degrade performance significantly increase disk space usage require other parameter or tuning changes require end user decision making prevent end users from adding their own storage areas

Solution Benefits Greatly increases db scalability at no cost Will position applications to be able to immediately leverage advanced features of the database Without painful post-deployment maintenance (such as dumping and re-loading) While remaining flexible and extensible for more advanced customers

Deliverables Structure file defining the recommended Storage Areas White paper describing: the areas and how they should be used how to safely extend the areas for advanced users scripts for converting existing schema-only database definitions to the new spec

Option 1 A “one size fits all” storage area: d "data":10,128;8 .

Option 2 Discrete data and index storage areas: d "data":10,128;8 . d "indexes":11,128;8 .

Option 3 Discrete data, index and LOB storage areas: d "data":10,128;8 . d "indexes":11,128;8 . d "largeObjects":12,128;512 .

Option 4 Discrete data, index, LOB and word-index data storage areas: d "data":10,128;8 . d "indexes":11,128;8 . d "largeObjects":12,128;512 . d "wordIndexData":13,128;8 . http://knowledgebase.progress.com/articles/Article/000030594 -datascanthreads <n>: the number of concurrent threads used to scan table data associated with the indexes being rebuilt. When specified, -datascanthreads invokes a multi-threaded data scan that spawns <n> threads for the data scan phase. The data being scanned, must meet all of the following criteria for a multi-threaded data scan to occur: - The data area being scanned must be a Type II area - No index within the data area being scanned is also being rebuilt - No index associated with the data area being scanned is a word index - Index rebuild must be run with the "sort" option, that is answering "y" when asked if you have enough room for sorting. If any requirement is not met, the data scan is performed using the original single threaded mechanism. If not specified, the –datascanthreads value defaults to 0, also indicating the original single threaded mechanism.

Option 5 (“gilding the lily”) Discrete data, index, LOB, word-index data and “B2” storage areas: d "data":10,128;8 . d "indexes":11,128;8 . d "largeObjects":12,128;512 . d "wordIndexData":13,128;8 . d "b2Data":14,128;8 . d "b2Indexes":15,128;8 . http://knowledgebase.progress.com/articles/Article/000030594 -datascanthreads <n>: the number of concurrent threads used to scan table data associated with the indexes being rebuilt. When specified, -datascanthreads invokes a multi-threaded data scan that spawns <n> threads for the data scan phase. The data being scanned, must meet all of the following criteria for a multi-threaded data scan to occur: - The data area being scanned must be a Type II area - No index within the data area being scanned is also being rebuilt - No index associated with the data area being scanned is a word index - Index rebuild must be run with the "sort" option, that is answering "y" when asked if you have enough room for sorting. If any requirement is not met, the data scan is performed using the original single threaded mechanism. If not specified, the –datascanthreads value defaults to 0, also indicating the original single threaded mechanism.

Cluster Size (CSZ) CSZ must be at least 8 in order to be a type 2 storage area Disk allocation of different CSZ for empty objects (8KB db blocks): CSZ 8 = 64KB CSZ 64 = 512KB CSZ 512 = 4096KB or 4MB CSZ 8 minimizes the growth of empty databases If an area is designated for LARGE objects then CSZ 512 makes sense

Rows Per Block 8KB block, 256 rows per block = 30 bytes of user data per record: http://knowledgebase.progress.com/articles/Article/P81745 LOB areas: RPB = 1? http://knowledgebase.progress.com/articles/Article/P88663 Advantage to RPB = 1 is with growing LOBS

Fixed Length or Variable Extents? All variable is very simple Fixed length will require decision making and management

After-image extents? Creating them does not result in AI being enabled But it does move you one step closer # add_ai.st – add 8 variable ai extents a .

Other Guidelines and Considerations?

Questions? And now we have some time for questions…

Thank You!

Parking lot http://standardsinsight.com/ieee_company_detail/what-are-standards-why-are-they-important http://www.etsi.org/standards/why-we-need-standards http://www.bsigroup.com/en-GB/standards/benefits-of-using-standards/