Transactional Updates to Enterprise GIS data sets. Presented by: Kelly Ratchinsky PBC Countywide GIS Coordinator



Similar documents
Geodatabase Programming with SQL

Supported DBMS platforms DB2. Informix. Enterprise ArcSDE Technology. Oracle. GIS data. GIS clients DB2. SQL Server. Enterprise Geodatabase 9.

Oracle Database 10g Express

Database Design Concepts and Data Integration

Spatial Database Support

A basic create statement for a simple student table would look like the following.

AUTHENTICATION... 2 Step 1:Set up your LDAP server... 2 Step 2: Set up your username... 4 WRITEBACK REPORT... 8 Step 1: Table structures...

GIS Databases With focused on ArcSDE

Working with the Geodatabase Using SQL

ADVANCED DATA STRUCTURES FOR SURFACE STORAGE

Introduction to Triggers using SQL

ArcGIS 10.1 Geodatabase Administration. Gordon Sumerling & Christopher Brown

Spatial data models (types) Not taught yet

GIS and Document Management Integration

Oracle 10g PL/SQL Training

Introduction This document s purpose is to define Microsoft SQL server database design standards.

ORACLE 9I / 10G / 11G / PL/SQL COURSE CONTENT

SQL. Short introduction

ArcSDE Configuration and Tuning Guide for Oracle. ArcGIS 8.3

Mul$media im Netz (Online Mul$media) Wintersemester 2014/15. Übung 03 (Nebenfach)

types, but key declarations and constraints Similar CREATE X commands for other schema ëdrop X name" deletes the created element of beer VARCHARè20è,

ICAB4136B Use structured query language to create database structures and manipulate data


ArcGIS for Server: Reference Implementations Sharon Gin

Programming with SQL

Vehicle Tracking Using ArcIMS and Geocortex IMF: A Winning Combination. Combination

SQL Databases Course. by Applied Technology Research Center. This course provides training for MySQL, Oracle, SQL Server and PostgreSQL databases.

INTRODUCING ORACLE APPLICATION EXPRESS. Keywords: database, Oracle, web application, forms, reports

How To Create A Table In Sql (Ahem)

ArcGIS Server Implementation HIGHS and lows

CSC 443 Database Management Systems. The SQL Programming Language

Extracting META information from Interbase/Firebird SQL (INFORMATION_SCHEMA)

Managing Objects with Data Dictionary Views. Copyright 2006, Oracle. All rights reserved.

Objectives. Oracle SQL and SQL*PLus. Database Objects. What is a Sequence?

Oracle Database 10g: Introduction to SQL

MySQL for Beginners Ed 3

White Paper. Freeance Mobile for Cityworks

Bidirectional replication for InterBase and Firebird

New Features in MySQL 5.0, 5.1, and Beyond

SQL Server for developers. murach's TRAINING & REFERENCE. Bryan Syverson. Mike Murach & Associates, Inc. Joel Murach

SQL DATA DEFINITION: KEY CONSTRAINTS. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 7

14 Triggers / Embedded SQL

MARICOPA COUNTY ASSESSOR S OFFICE

Scaling Database Performance in Azure

GoldenGate and ODI - A Perfect Match for Real-Time Data Warehousing

In This Lecture. Security and Integrity. Database Security. DBMS Security Support. Privileges in SQL. Permissions and Privilege.

SQL Server to Oracle A Database Migration Roadmap

Customer Bank Account Management System Technical Specification Document

SQL Object Level Recovery Native 1.1

Abstract. Introduction

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification

Daniel Millls Senior GIS Consultant Liberation of spatial data within NI Water

Emerging Applications at Seattle Public Utilities

Administering your Oracle Geodatabase

Eurobackup PRO: Configuration Best Practices

NatureServe s Environmental Review Tool

Oracle to MySQL Migration

D61830GC30. MySQL for Developers. Summary. Introduction. Prerequisites. At Course completion After completing this course, students will be able to:

Database-driven web mapping using jquery, PHP, PostgreSQL & SDE

SQL NULL s, Constraints, Triggers

Database Architecture and Administration

Data Validation Online References

Triggers & Packages. {INSERT [OR] UPDATE [OR] DELETE}: This specifies the DML operation.

UK Location Programme

A Java Tool for Creating ISO/FGDC Geographic Metadata

CSI 2132 Lab 3. Outline 09/02/2012. More on SQL. Destroying and Altering Relations. Exercise: DROP TABLE ALTER TABLE SELECT

Software. PowerExplorer. Information Management and Platform DATA SHEET

ArcSDE Spatial Data Management Roles and Responsibilities

Testing of the data access layer and the database itself

Real World Enterprise SQL Server Replication Implementations. Presented by Kun Lee

An Esri White Paper February 2011 Best Practices for Storing the ArcGIS Data Reviewer Workspace in an Enterprise Geodatabase for Oracle

DEVELOPING AND IMPLEMENTING MULTIUSER, FULLY RELATIONAL GIS DATABASE FOR DESKTOP SYSTEMS USING OPEN SOURCE TECHNOLOGIES

Best Practices for Storing the ArcGIS Data Reviewer Workspace in an Enterprise Geodatabase for Oracle. An Esri White Paper October 2013

A Brief Introduction to MySQL

SQL. by Steven Holzner, Ph.D. ALPHA. A member of Penguin Group (USA) Inc.

Bruce Momjian June, Postgres Plus Technical Overview

Demystified CONTENTS Acknowledgments xvii Introduction xix CHAPTER 1 Database Fundamentals CHAPTER 2 Exploring Relational Database Components

In This Lecture. SQL Data Definition SQL SQL. Notes. Non-Procedural Programming. Database Systems Lecture 5 Natasha Alechina

Database Administration with MySQL

Chapter 9 Java and SQL. Wang Yang wyang@njnet.edu.cn

Integrating Document Management & GIS

Using SQL Server Management Studio

How to connect to ArcSDE spatial database using OpenOffice and Microsoft Office suites

Choosing the right GIS framework for an informed Enterprise Web GIS Solution

RESEARCH ON SPATIAL DATABASE DESIGN AND TUNING BASED ON ORACLE AND ARCSDE

Informatica Data Replication FAQs

Migrate Topaz databases from One Server to Another

Database Design and Programming

Topics Advanced PL/SQL, Integration with PROIV SuperLayer and use within Glovia

Migration to SQL Server With Ispirer SQLWays 6.0

Oracle Database: SQL and PL/SQL Fundamentals

10. Creating and Maintaining Geographic Databases. Learning objectives. Keywords and concepts. Overview. Definitions

Relational databases and SQL

Transcription:

Transactional Updates to Enterprise GIS data sets Presented by: Kelly Ratchinsky PBC Countywide GIS Coordinator

The Enterprise Environment Countywide GIS Centralized GIS Data Repository Departmental GIS De-centralized GIS Data Maintenance

GIS Layer Ownership Each Department maintains their GIS layers Updates are provided to Countywide GIS for posting to Enterprise GIS Manual posting imposes time constraint Automated method is instant

PZB Example Owners of too many layers to count City Boundary - Annexations Changes to a City Boundary affect FLU, Zoning, etc. Changes must be reflected in epzb applications as soon as possible epzb applications use Enterprise GIS Data repository

Technical Considerations SDE Versioned GIS Layer Oracle Spatial GIS data model Oracle Triggers & Procedures

SDE Versioned GIS Layer SDE Layer (Oracle Spatial) GIS Layer table Geometry & Attribute table, Oracle stores spatial indexes SDObinary will have Layer, F & S tables which store the Layer attributes,feature geometry and Spatial indexes Versioned SDE Layer has 2 more tables A table Adds table (identical to GIS Layer table) D table Deletes table (stores deleted objectid)

Oracle Spatial GIS Data Model Oracle Stores data in sdo_geometry data type ESRI stores as BLOB in F table Oracle creates Spatial Indexes ESRI creates S table for spatial index Use Oracle SQL operators, packages and procedures Use SDE Versioning process to initiate change to Enterprise GIS data repository

Oracle Triggers & Procedures Maintenance Database Create dblink to production database Create Oracle Synonym to update_triggers package Create Oracle triggers on GIS Layer table Production Database Create update_triggers package Create dblink to maintenance database

GIS Layer Edits Sharon at PZB edits the the City_Bndry layer for new annexations. Oracle trigger adds record to production Matt runs the weekly SDE Triggers on the PZB GIS Compress. This Initiates Layer table send all adds CWGIS Oracle the adding & deleting of PZB Oracle and deletes to the CWGIS data to the GIS Layer table production server. on PZB Server. The A & D tables are compressed into Oracle trigger deletes record from production the GIS Layer table.

Questions? Kelly Ratchinsky kratchin@pbcgov.com 561.681.3958

Maintenance Server Create dblink to production database Create database link pzb_egis connect to pzb identified by password using pzb/password@egis Create Oracle Synonym to update_triggers package Create synonym update_triggers for pzb.update_triggers@pzb_egis Go Back

Maintenance Server (cont.) Delete Trigger CREATE OR REPLACE TRIGGER "PAO".PARCEL_PY_DELETES BEFORE DELETE ON PAO.PARCEL_PY REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW DECLARE BEGIN update_triggers.delete_trigger(:old.objectid,'parcel_py'); END; ADD Trigger CREATE OR REPLACE TRIGGER "PAO".PARCEL_PY_ADDS AFTER INSERT ON PAO.PARCEL_PY REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW DECLARE BEGIN update_triggers.add_trigger(:new.objectid, 'PARCEL_PY','OBJECTID,PCN,CTY,RNG,TWP,SEC,SUBD,BLK,LOT,CREATEDATE,GEOMETRY'); END; Go Back

Production Server Create dblink to maintenance database Create database link egis_pzb connect to pzb identified by password Go Back

Production Server Create update_triggers package CREATE OR REPLACE PACKAGE UPDATE_TRIGGERS as PROCEDURE DELETE_TRIGGER(i_objectid IN number,i_table IN varchar2); PROCEDURE ADD_TRIGGER(i_objectid IN number,i_table IN varchar2,i_flds IN varchar2); END UPDATE_TRIGGERS; CREATE OR REPLACE PACKAGE BODY UPDATE_TRIGGERS as PROCEDURE DELETE_TRIGGER(i_objectid IN number,i_table IN varchar2) AS mysql varchar2(2000); BEGIN mysql := DELETE FROM ' i_table ' WHERE OBJECTID = ' i_objectid; execute immediate mysql; END DELETE_TRIGGER; PROCEDURE ADD_TRIGGER(i_objectid IN number,i_table IN varchar2,i_flds IN varchar2) AS mysql varchar2(2000); BEGIN mysql := INSERT INTO ' i_table ' (' i_flds ') SELECT ' i_flds ' FROM PAO.' i_table '@ODMDEV WHERE OBJECTID = ' i_objectid; execute immediate mysql; mysql := DELETE FROM ' i_table ' where geometry is null'; execute immediate mysql; END ADD_TRIGGER; END; / Go Back