WHITE PAPER SEPTEMBER Reactive Rules for Database Logic. Agility, Re-Use and Performance
|
|
- Fay Armstrong
- 5 years ago
- Views:
Transcription
1 WHITE PAPER SEPTEMBER 2018 Reactive Rules for Database Logic Agility, Re-Use and Performance
2 2 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Executive Summary Introduction Since the advent of relational databases, enterprises have been devising methods for extracting data in a useful fashion for application development. However, traditional data-driven app dev has been relatively unchanged since the first application of object-oriented functional programming to these systems. Even with the recent popularity of API-driven interfaces, much of the development burden has involved back-end effort. Creating application back-ends involves interacting with databases to retrieve data through getters and setters that map to SQL statements on single tables, writing more complex SQL to do manual JOINs across database tables, and defining database triggers or client-side logic to manage relationships between fields and maintain data consistency. While some progress has been made using code generation techniques to automate single-table API creation, the results are complex, hard to maintain and inadequate for real-world use cases that require application logic. At the same time, the need for agile app development in the application economy has made the ability to rapidly deliver robust data-driven APIs more important than ever. These initiatives are also being driven by lines of business rather than IT organizations, meaning the API owners are likely to be more familiar with a spreadsheet than with server-side programming languages. The way we build application back-ends, interact with data sources and define logic needs to evolve to keep up with these ever-changing requirements. This white paper takes a fresh look at defining application logic and interacting with databases using Reactive Logic rather than traditional functional code-based approaches. It explores the concept of reactive programming and how this paradigm can be applied to declarative rules for maintaining relationships across data tables. It demonstrates the power of Reactive Logic to simplify database interaction and logic definition for business users while maintaining robust performance and optimization characteristics. And it shows how CA Technologies will forever change the way you look at application creation.
3 3 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com What is Reactive Programming? Reactive programming is a declarative approach where variables defined by expressions automatically react to changes in referenced values. As well-explained in this Wikipedia entry, reactive programming is a declarative not imperative (aka procedural) approach for automatic propagation of changes: In computing, reactive programming is a programming paradigm oriented around data flows and the propagation of change. This means that it should be possible to express static or dynamic data flows with ease in the programming languages used and that the underlying execution model will automatically propagate changes through the data flow. For example, in an imperative programming setting, a: b + c would mean that a is being assigned the result of b + c in the instant the expression is evaluated. Later, the values of b and c can be changed with no effect on the value of a. In reactive programming, the value of a would be automatically updated based on the new values This is an abstract definition that can be adapted to various disciplines as described below. Regardless, the system needs to establish watches on the referenced values and react when changes are observed. The watch mechanism may be automatic or manual wherein you must explicitly invoke operations to establish watches. Current industrial use Various vendors have been active in the field of reactive programming and it remains a popular topic on developer sites such as Stack Overflow, but by far the most famous commercial application is the spreadsheet. Your cells are defined by values referencing other cells the referencing cell reacts to changes in the referenced cells by re-computing its value. This process can of course chain, enabling quite complex computational systems to be defined. Reactive Rules for Database Logic The powerful reactive programming model is perfectly suited to address the change propagation required for transaction processing, that is, when the server receives change (Insert, Update, or Delete) requests. This results in reactive rules that can express business logic within an application without writing functional code. The key approach borrows heavily from domain-driven design to provide declarative domain logic and is described below.
4 4 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com 1. Base tables/columns/roles are variables. The relational database schema is the object model used to define the variables that can be referenced in reactive programming. So, you can refer to customer.balance. This can be extended to provide for attributes not defined in the schema but that is beyond the scope of this article. Real-world complexity requires that expressions be able refer to data in other tables, so you can refer to purchaseorder.customer. balance, or purchaseorder.lineitems. These could potentially represent one-to-many relationships across tables. For example: Parent role we use the foreign key constraint name for references to the one side (as in purchaseorder.customer). Child role the table name is for the many side (as in purchaseorder.lineitems). Actual support provides customized child role names but that is beyond the scope of this document. 2. Define multi-table expressions for database columns. These can be simple expressions, like this, to compute the amount for a Lineitem row : return row.price * row.quantity. Expressions might be conditional, like: if (row.qty_ordered <= 6) return row.product_price * row.qty_ordered; else return row.product_price * row.qty_ordered * 0.8. Support is also provided for multi-table expressions (crucial for multi-table transactions), such as: customer.balance = sum(purchaseorder.amount_total where paid = false). 3. Establish automatic watches on dependent data. This requires the system parse the expressions to determine the referenced data, which is then watched. 4. Recalculate multi-table. The system must recalculate the referencing data when the watched data changes. Note that changes must be interpreted broadly: not just updates but also inserts and deletes. The real power occurs when you consider multi-table derivations. For true declarative/reactive support, you should not need to code SQL commands to access the data this should be fully automated. So, deleting a purchaseorder should adjust the balance. 5. Automate SQL. SQLs required for multi-table recalculation should be automated. 6. Optimize SQL handling. Which brings us to optimization. The agility/clarity advantages of reactive logic provide little value if there is a performance penalty. SQL statements are far more expensive than arithmetic, so for enterprise performance; the system needs to optimize update processing in much the same manner as we rely on relational database to optimize retrievals. The system must eliminate and optimize SQL with techniques such as:
5 5 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Pruning no SQL should occur if the watched data is not altered (e.g., changing an order s date should not require access to the customer). Adjustment SQLs are expensive but aggregate SQLs are even more so. Accordingly, recalculations of aggregates (e.g., sums) should be done with one row updates. Observe that aggregates can nest. So, a simple non-optimized transaction to pay an order would require a select sum of all the orders and items. Optimized adjustment logic can reduce these SQLs by orders of magnitude. This is very important since it provides the basis for real-time analytics, such as real-time accounting (instant posting of new transactions) and real-time medical records. Caching an order transaction with several line items should issue one adjustment to the order, not one per item. 7. View/resource mapping to objects. Critical view/resource mapping to objects is required so you can define views (or RESTful resources) optimized for program use and reuse the reactive logic associated with the basic table. 8. Chain with automatic ordering. The power of spreadsheets is that derived cells can be referenced in other cells, one change can naturally propagate through the data. The same is required for database logic. Of course, more complex dependencies require ordering. For example: a = b+c; b = c+d requires that, on a change to c, b be calculated before a. 9. Determine imperative escapes. A good question is, How much of my database logic can be addressed with reactive programming? The real-world answer is more than you think (in excess of 95 percent) but not 100 percent. So we need an imperative escape. This is best provided by a familiar event model, where you define table events that are called on inserts, updates and deletes. You might use events to send messages/ , start a business process, etc. The real power is that these events are typically predicated on the reactive derivations. The language used for event logic is of course critical. The consensus choice here is JavaScript the one language you ll probably need to use no matter what other choices you make. 10. Determine transactional support. Basic database integrity requires that multi-updates are atomic they are rolled back if errors occur. This applies to imperative multi-table transactions as well as those designed with reactive programming. 11. Determine validation support. Define a list of expressions for a table which must be true for a transaction to succeed (e.g., balance <= credit_limit), else an exception is raised.
6 6 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Architecture While this paper is primarily focused on concepts, reactive database logic is only interesting if it actually runs. It can do so in a number of ways: Database support Native database support could be provided through DDL extensions with corresponding runtime support. Many advantages but a long process to add to the SQL standard and it would still not provide natural support for remote data. Code generation of triggers and stored procedures This is, after all, what triggers do, so it would clearly be possible to generate these. This provides excellent active enforcement but does not deal well with integrating multiple databases. App servers Traditional app servers also enforce business logic with support for integrating multiple databases. The language-specific interfaces, however, are not architecture independent and the solution would be burdened by a significant coding overhead and low re-use. API Servers A more recent approach is to build API servers that provide REST-based interfaces around these reactive logic rules, typically with JavaScript support for accessing multiple databases and external services. Reactive logic example This sample problem illustrates the use and operation of reactive programming. Logic is expressed as a set of spreadsheet-like expressions that define what your data means. Consider the use case, place order, with the requirement that a customer s balance may not exceed their credit limit. The cocktail napkin requirements are illustrated above. The following logic, which looks rather like a requirements document, should be fully executable: Validation logic: Validations are expressions that must be satisfied to commit transactions (else an exception is thrown). Far beyond simple single-attribute validations, the requirement is multi-attribute validations, such as this Customer Validation: balance < credit_limit.
7 7 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Derivation logic: Validations are the most familiar form of business logic, but derivations and events are the most valuable for dependency management and re-use, as noted below. Derivations here include multi-table derivation rules such as in this rule which defines the balance as the sum of the unpaid order totals: balance is sum(purchaseorder.amount_total where paid = false). Derivations are conceptually similar to spreadsheet cell formulas. Note that: Derivations are multi-table, as in the example above. Derivations can chain, both to validations and other derivations: Purchaseorder.amount_total = sum(lineitem.amount) Lineitem.amount = qty_ordered * product_price Lineitem.product_price = copy(product.price) Chaining, ordering and dependencies are automatically handled (further described below). Derivations can include if/else logic, state transition logic and reference related data. Derivations are highly optimized to eliminate/optimize SQLs. For example, changing an order s date does not retrieve the customer and paying an order adjusts the customer with a one row update not an aggregate query. Declaring Logic You declare the logic in a browser-based IDE as shown below. Dialogs are provided to make it simple to define (point and click) and the system produces this documentation automatically.
8 8 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Reactive in action Dependency management means that when the client submits some altered data, the server detects all changes and adjusts any dependent data including related tables. This incurs ordering and requires optimization. The diagram below illustrates the server processing for the change in line item quantity (represented by the green circle at the bottom): The amount is dependent on the quantity, so it is recomputed. The amounttotal is dependent on the amount, so it is adjusted. Note this may require a SQL lookup (though the data might be in the cache) and SQL operations are pruned if the amount is not changed. The balance is dependent on the amounttotal, so it is adjusted. The result balance is credit checked. If an error is detected, the transaction is rolled back and an exception is returned. The same processing is automatically applied to all use cases, as described below in the reactive reuse section. Reactive agility By the time you boil off change detection and change propagation and SQL, you have eliminated all the noise. What is revealed is the pure, crystallized logic. As it turns out, this noise is most of the code of a traditional program. The five lines of reactive rules require literally 500 lines of imperative code. This proportion holds in fact improves as system size increases. You are operating at a two orders of magnitude higher level of abstraction.
9 9 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Active integrity Imperative code runs when you call it. Code for integrity may exist but it is of no value unless it s called in every required circumstance. So, verifying compliance entails checking all the paths of all the existing code. By contrast, you don t call reactive logic. You just state it. It is the system s job to react as required in all required circumstances. So, if you want to verify compliance, just scan the logic. If it s there, you can be certain it is being applied. Reactive reuse The customer.balance rule, perhaps declared for place order, simply states that its value is the sum of the unpaid orders. This design intent is encapsulated into purchaseorder and then automatically re-used over all related transactions. So, the balance is increased if an order is added, decreased when it is deleted or paid and so forth. Put another way, logic is associated with your tables, not with a specific transaction, request type or method. This is what enables logic re-use. So our logic above, perhaps conceived for place order, is automatically re-used for all these related transactions: Place order the balance is increased. Change customer credit limit. Delete order the balance is reduced. Pay order the balance is reduced. Un-pay order the balance is increased. Reassign order to a new customer new customer balance is increased, old balance is decreased (for unpaid orders). Reassign a line item to a different product. Add a line item. Delete a line item. Change line item quantity. Change line item price. This design one/solve many applies to maintenance as well; when you change your logic, the system automatically reflects it in all the relevant transactions. Reactive objects factor logic from the methods (still clumsy imperative code) into declarative reactive expressions: Maintenance Imperative programming is distinguished by ordering your code must be executed in a correct order. The pain of this is most evident in the archaeology of maintenance, where most of the time is spent studying existing code to determine where to insert a few new lines. This entire process is eliminated by automatic ordering. You just alter the logic and the system computes a new execution order (and optimization strategy) based on the new dependencies.
10 10 WHITE PAPER REACTIVE RULES FOR DATABASE LOGIC ca.com Automatic documentation As shown in the earlier screenshot, this logic is virtually a direct entry of the cocktail napkin spec. So logic is not only executable; it is transparent documentation that enables business users and IT to partner and find missing/incorrect elements. Reactive performance The optimizations discussed above pruning, caching and adjustment are applied to every maintenance change. So, unlike conventional systems that slow down over time due to maintenance patches, reactive systems sustain a consistently high level of performance. Conclusion Reactive programming concepts have been around for a long time and were first applied to the spreadsheet dependency management done right by computers automatically rather than by programmers who don t appreciate doing the repetitive coding again and again. CA Technologies was the first to apply reactive programming techniques to databases and bring simplicity of the spreadsheet to API development with specs that can almost be executed as-is, live APIs that can be understood by business and programming staff alike and an easier maintenance process and automatic documentation. In addition, JavaScript is provided to enhance and complement reactive rules to ensure 100 percent coverage of application requirements. Connect with CA Technologies CA Technologies (NASDAQ: CA) creates software that fuels transformation for companies and enables them to seize the opportunities of the application economy. Software is at the heart of every business, in every industry. From planning to development to management and security, CA is working with companies worldwide to change the way we live, transact and communicate across mobile, private and public cloud, distributed and mainframe environments. Learn more at ca.com. Copyright 2018 CA. All rights reserved. All trademarks referenced herein belong to their respective companies. This document does not contain any warranties and is provided for informational purposes only. Any functionality descriptions may be unique to the customers depicted herein and actual product performance may vary. CS _0918
Agile Testing: Your Key to Better Software
Agile Testing: Your Key to Better Software What s in the Way of Testing at the Speed of Agile? Testing at the speed of agile drives quality at speed. But the question is, When do you think the testing
More informationModel-Based Testing: Your Key to Better Software
Model-Based Testing: Your Key to Better Software The Testing Dilemma: Speed vs. Quality There s no question that when it comes to software development, speed to market is essential. But without quality,
More informationRigorously Test Composite Applications Faster With CA Test Data Manager and CA Agile Requirements Designer
SOLUTION BRIEF CA TEST DATA MANAGER AND CA AGILE REQUIREMENTS DESIGNER Rigorously Test Composite Applications Faster With CA Test Data Manager and CA Agile Requirements Designer Generate rich virtual data
More informationUsing Threat Analytics to Protect Privileged Access and Prevent Breaches
Using Threat Analytics to Protect Privileged Access and Prevent Breaches Under Attack Protecting privileged access and preventing breaches remains an urgent concern for companies of all sizes. Attackers
More informationCA Test Data Manager Key Scenarios
WHITE PAPER APRIL 2016 CA Test Data Manager Key Scenarios Generate and secure all the data needed for rigorous testing, and provision it to highly distributed teams on demand. Muhammad Arif Application
More informationSOLUTION BRIEF NETWORK OPERATIONS AND ANALYTICS. How Can I Predict Network Behavior to Provide for an Exceptional Customer Experience?
SOLUTION BRIEF NETWORK OPERATIONS AND ANALYTICS How Can I Predict Network Behavior to Provide for an Exceptional Customer Experience? SOLUTION BRIEF CA DATABASE MANAGEMENT FOR DB2 FOR z/os DRAFT When used
More information5 OAuth Essentials for API Access Control
5 OAuth Essentials for API Access Control Introduction: How a Web Standard Enters the Enterprise OAuth s Roots in the Social Web OAuth puts the user in control of delegating access to an API. This allows
More informationWHITE PAPER MARCH Automating Data Masking and Reduction for SAP System Copy
WHITE PAPER MARCH 2018 Automating Data Masking and Reduction for SAP System Copy 2 WHITE PAPER AUTOMATING DATA MASKING AND REDUCTION FOR SAP SYSTEM COPY ca.com Table of Contents Executive Summary 3 Section
More informationWHITE PAPER JANUARY Creating REST APIs to Enable Your Connected World
WHITE PAPER JANUARY 2017 Creating REST APIs to Enable Your Connected World 2 WHITE PAPER: CREATING REST APIS TO ENABLE YOUR CONNECTED WORLD ca.com Table of Contents Section 1 The World is Getting Connected
More informationEfficiency Gains in Inbound Data Warehouse Feed Implementation
Efficiency Gains in Inbound Data Warehouse Feed Implementation Simon Eligulashvili simon.e@gamma-sys.com Introduction The task of building a data warehouse with the objective of making it a long-term strategic
More informationSOLUTION BRIEF CA API MANAGEMENT. Enable and Protect Your Web Applications From OWASP Top Ten With CA API Management
SOLUTION BRIEF CA API MANAGEMENT Enable and Protect Your Web Applications From OWASP Top Ten With CA API Management 2 SOLUTION BRIEF ENABLE AND PROTECT YOUR WEB APPLICATIONS WITH CA API MANAGEMENT ca.com
More informationThis module presents the star schema, an alternative to 3NF schemas intended for analytical databases.
Topic 3.3: Star Schema Design This module presents the star schema, an alternative to 3NF schemas intended for analytical databases. Star Schema Overview The star schema is a simple database architecture
More informationMicrosoft Developing SQL Databases
1800 ULEARN (853 276) www.ddls.com.au Length 5 days Microsoft 20762 - Developing SQL Databases Price $4290.00 (inc GST) Version C Overview This five-day instructor-led course provides students with the
More informationSQL Server 2008 Consolidation
Technology Concepts and Business Considerations Abstract The white paper describes how SQL Server 2008 consolidation provides solutions to basic business problems pertaining to the usage of multiple SQL
More informationSage Estimating (SQL) v17.12
Sage Estimating (SQL) v17.12 Release Notes October 2017 This is a publication of Sage Software, Inc. 2017 The Sage Group plc or its licensors. All rights reserved. Sage, Sage logos, and Sage product and
More informationMicrosoft. [MS20762]: Developing SQL Databases
[MS20762]: Developing SQL Databases Length : 5 Days Audience(s) : IT Professionals Level : 300 Technology : Microsoft SQL Server Delivery Method : Instructor-led (Classroom) Course Overview This five-day
More informationProtect Your Data the Way Banks Protect Your Money
Protect Your Data the Way Banks Protect Your Money A New Security Model Worth Understanding and Emulating Enterprise security traditionally relied on a fortress strategy that locked down user endpoints
More informationKeep the Door Open for Users and Closed to Hackers
Keep the Door Open for Users and Closed to Hackers A Shift in Criminal Your Web site serves as the front door to your enterprise for many customers, but it has also become a back door for fraudsters. According
More informationDeveloping SQL Databases
Course 20762B: Developing SQL Databases Page 1 of 9 Developing SQL Databases Course 20762B: 4 days; Instructor-Led Introduction This four-day instructor-led course provides students with the knowledge
More informationMoving From Reactive to Proactive Storage Management with an On-demand Cloud Solution
Moving From Reactive to Proactive Storage Management with an On-demand Cloud Solution The Ever-Present Storage Management Conundrum In the modern IT landscape, the storage management conundrum is as familiar
More informationSOLUTION BRIEF CA TEST DATA MANAGER AND CA SERVICE VIRTUALIZATION. CA Test Data Manager and CA Service Virtualization
SOLUTION BRIEF CA TEST DATA MANAGER AND CA SERVICE VIRTUALIZATION CA Test Data Manager and CA Service Virtualization Provide the on demand access to secure environments needed to deliver fully tested software
More informationCOP 5725 Fall Hospital System Database and Data Interface. Term Project
COP 5725 Fall 2016 Hospital System Database and Data Interface Term Project Due date: Nov. 3, 2016 (THU) Database The database contains most of the information used by the web application. A database is
More information20762B: DEVELOPING SQL DATABASES
ABOUT THIS COURSE This five day instructor-led course provides students with the knowledge and skills to develop a Microsoft SQL Server 2016 database. The course focuses on teaching individuals how to
More information2012 Microsoft Corporation. All rights reserved. Microsoft, Active Directory, Excel, Lync, Outlook, SharePoint, Silverlight, SQL Server, Windows,
2012 Microsoft Corporation. All rights reserved. Microsoft, Active Directory, Excel, Lync, Outlook, SharePoint, Silverlight, SQL Server, Windows, Windows Server, and other product names are or may be registered
More informationComprehensive Guide to Evaluating Event Stream Processing Engines
Comprehensive Guide to Evaluating Event Stream Processing Engines i Copyright 2006 Coral8, Inc. All rights reserved worldwide. Worldwide Headquarters: Coral8, Inc. 82 Pioneer Way, Suite 106 Mountain View,
More informationSOLUTION BRIEF CA TEST DATA MANAGER FOR HPE ALM. CA Test Data Manager for HPE ALM
SOLUTION BRIEF CA TEST DATA MANAGER FOR HPE ALM CA Test Data Manager for HPE ALM Generate all the data needed to deliver fully tested software, and export it directly into Hewlett Packard Enterprise Application
More informationDisaster Recovery as a Service
Disaster Recovery as a Service Heart-stopping IT failure. At least your business won t skip a beat. 02 delivering business agility 03 Flexible, cost-effective DRaaS made simple Enjoy rapid recovery following
More informationSTARCOUNTER. Technical Overview
STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation
More informationSQL Server Development 20762: Developing SQL Databases in Microsoft SQL Server Upcoming Dates. Course Description.
SQL Server Development 20762: Developing SQL Databases in Microsoft SQL Server 2016 Learn how to design and Implement advanced SQL Server 2016 databases including working with tables, create optimized
More informationThe Seven Steps to Implement DataOps
The Seven Steps to Implement Ops ABSTRACT analytics teams challenged by inflexibility and poor quality have found that Ops can address these and many other obstacles. Ops includes tools and process improvements
More informationThe Salesforce Migration Playbook
The Salesforce Migration Playbook By Capstorm Table of Contents Salesforce Migration Overview...1 Step 1: Extract Data Into A Staging Environment...3 Step 2: Transform Data Into the Target Salesforce Schema...5
More informationGET CLOUD EMPOWERED. SEE HOW THE CLOUD CAN TRANSFORM YOUR BUSINESS.
GET CLOUD EMPOWERED. SEE HOW THE CLOUD CAN TRANSFORM YOUR BUSINESS. Cloud computing is as much a paradigm shift in data center and IT management as it is a culmination of IT s capacity to drive business
More informationGoldSim: Using Simulation to Move Beyond the Limitations of Spreadsheet Models
GoldSim: Using Simulation to Move Beyond the Limitations of Spreadsheet Models White Paper Abstract While spreadsheets are appropriate for many types of applications, due to a number of inherent limitations
More information"Charting the Course... MOC C: Developing SQL Databases. Course Summary
Course Summary Description This five-day instructor-led course provides students with the knowledge and skills to develop a Microsoft SQL database. The course focuses on teaching individuals how to use
More informationOracle Warehouse Builder 10g Runtime Environment, an Update. An Oracle White Paper February 2004
Oracle Warehouse Builder 10g Runtime Environment, an Update An Oracle White Paper February 2004 Runtime Environment, an Update Executive Overview... 3 Introduction... 3 Runtime in warehouse builder 9.0.3...
More informationBMC Remedyforce Troubleshooting Document
Troubleshooting Document BMC Remedyforce Troubleshooting Document September 2015 Table of Contents 1.0 Salesforce Apex Governor Limits Overview 2 2.0 SOQL Queries Limits 3 3.0 Triggers and Order of Execution
More informationEMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH
White Paper EMC GREENPLUM MANAGEMENT ENABLED BY AGINITY WORKBENCH A Detailed Review EMC SOLUTIONS GROUP Abstract This white paper discusses the features, benefits, and use of Aginity Workbench for EMC
More informationPegasystems PEGACSA71V1 Exam
Pegasystems PEGACSA71V1 Exam Number: PEGACSA71V1 Passing Score: 800 Time Limit: 120 min File Version: 4.0 http://www.gratisexam.com/ PEGACSA71V1 Certified System Architect (CSA) 71V1 Version 4.0 Exam A
More informationA Better Approach to Leveraging an OpenStack Private Cloud. David Linthicum
A Better Approach to Leveraging an OpenStack Private Cloud David Linthicum A Better Approach to Leveraging an OpenStack Private Cloud 1 Executive Summary The latest bi-annual survey data of OpenStack users
More informationQlik s Associative Model
White Paper Qlik s Associative Model See the Whole Story that Lives Within Your Data August, 2015 qlik.com Table of Contents Introduction 3 Qlik s associative model 3 Query-based visualization tools only
More informationAn Oracle Technical White Paper September Oracle VM Templates for PeopleSoft
An Oracle Technical White Paper September 2010 Oracle VM Templates for PeopleSoft 1 Disclaimer The following is intended to outline our general product direction. It is intended for information purposes
More informationIntel Authoring Tools for UPnP* Technologies
Intel Authoring Tools for UPnP* Technologies (Version 1.00, 05-07-2003) INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE,
More informationDatabase Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No.
Database Management System Dr. S. Srinath Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. # 13 Constraints & Triggers Hello and welcome to another session
More informationAssorted Topics Stored Procedures and Triggers Pg 1
Assorted Topics Stored Procedures and Triggers Pg 1 Stored Procedures and Triggers Ray Lockwood Points: A Stored Procedure is a user-written program stored in the database. A Trigger is a stored procedure
More informationAccounts Payable MODULE USER S GUIDE
Accounts Payable MODULE USER S GUIDE INTEGRATED SOFTWARE SERIES Accounts Payable MODULE USER S GUIDE Version 3.1 Copyright 2005 2009, Interactive Financial Solutions, Inc. All Rights Reserved. Integrated
More informationNoSQL systems: introduction and data models. Riccardo Torlone Università Roma Tre
NoSQL systems: introduction and data models Riccardo Torlone Università Roma Tre Leveraging the NoSQL boom 2 Why NoSQL? In the last fourty years relational databases have been the default choice for serious
More informationWhy you should design your data hub top-down vs. bottom-up
Why you should design your data hub top-down vs. bottom-up 1 Why you should design your data hub top-down vs. bottom-up Why are central repositories of data more necessary now than ever? E very business
More informationPRIVACY AND ONLINE DATA: CAN WE HAVE BOTH?
PAPER PRIVACY AND ONLINE DATA: CAN WE HAVE BOTH? By Peter Varhol www.actian.com ignificant change has arrived in how computing and storage consumes data concerning individuals. Merchants, data collection
More informationAchieving Digital Transformation: FOUR MUST-HAVES FOR A MODERN VIRTUALIZATION PLATFORM WHITE PAPER
Achieving Digital Transformation: FOUR MUST-HAVES FOR A MODERN VIRTUALIZATION PLATFORM WHITE PAPER Table of Contents The Digital Transformation 3 Four Must-Haves for a Modern Virtualization Platform 3
More informationAGENDA. DEX450: Programmatic Development Using Apex and Visualforce. Day One
Day One 15 minutes Introductions 60 minutes Welcome to AW Computing Watch Me 1-1 (5 min): Explore the Certification App Join Me 1-2 (5 min): Prepare Your Training Org Join Me 1-3 (5 min): Create a Sandbox
More informationFive Common Myths About Scaling MySQL
WHITE PAPER Five Common Myths About Scaling MySQL Five Common Myths About Scaling MySQL In this age of data driven applications, the ability to rapidly store, retrieve and process data is incredibly important.
More informationUXD. using the elements: structure
using the elements: structure defining structure you are here structure essentially defines how users get to a given screen and where they can go when they re done. structure also defines categories of
More informationA Practical Approach to Balancing Application Performance and Instrumentation Information Using Symantec i 3 for J2EE
WHITE PAPER: APPLICATION CUSTOMIZE PERFORMANCE MANAGEMENT Confidence in a connected world. A Practical Approach to Balancing Application Performance and Instrumentation Information Using Symantec i 3 for
More informationEnabling Innovation in the Digital Economy
White Paper Business Agility Enabling Innovation in the Digital Economy Business Agility White Paper Enabling Innovation in the Digital Economy Five Steps to Implementing a Software-defined Infrastructure
More informationMicrosoft Dynamics AX This document describes the concept of events and how they can be used in Microsoft Dynamics AX.
Microsoft Dynamics AX 2012 Eventing White Paper This document describes the concept of events and how they can be used in Microsoft Dynamics AX. Date: January 2011 http://microsoft.com/dynamics/ax Author:
More informationRelational Theory and Data Independence: Unfinished Business. Logical Data Independence and the CREATE VIEW Statement.
Relational Theory and Data Independence: Unfinished Business. Dr. Tom Johnston Much has been made of the data independence that relational technology is said to provide. And indeed, much has been accomplished
More informationIntroduction to Computer Science and Business
Introduction to Computer Science and Business The Database Programming with PL/SQL course introduces students to the procedural language used to extend SQL in a programatic manner. This course outline
More informationPrinciples of Data Management
Principles of Data Management Alvin Lin August 2018 - December 2018 Structured Query Language Structured Query Language (SQL) was created at IBM in the 80s: SQL-86 (first standard) SQL-89 SQL-92 (what
More informationTeiid Designer User Guide 7.5.0
Teiid Designer User Guide 1 7.5.0 1. Introduction... 1 1.1. What is Teiid Designer?... 1 1.2. Why Use Teiid Designer?... 2 1.3. Metadata Overview... 2 1.3.1. What is Metadata... 2 1.3.2. Editing Metadata
More informationSAPtips. Journal. Creating a Well-Developed Master Data Management Solution in BW. August/September 2005 Volume III Issue 4. SAPtips.
Page 1 Creating a Well-Developed Master Data Management Solution in BW By Arthur Pat Pesa, arthurpesa, inc Editor Note: Pat Pesa delivers another one-two-three punch with his discussion of developing,
More informationEktron to EPiServer Digital Experience Cloud Content Transfer Guide
Ektron to EPiServer Digital Experience Cloud Content Transfer Guide This document is intended for review and use by Sr. Developers, CMS Architects, and other senior development staff to aide in the process
More informationProject # 1: Database Programming
Project # 1: Database Programming CSE462 Database Concepts Demian Lessa Department of Computer Science and Engineering State University of New York, Buffalo February 21, 2011 Outline 1 Database Programming
More informationDatabase Management Concepts I
Database Management Concepts I Instructor: Dmitri A. Gusev Fall 2007 CS 502: Computers and Communications Technology Lecture 21, November 19, 2007 Basic Definitions An information system is software that
More informationCrystal Report Parameter Default Value Current Date
Crystal Report Parameter Default Value Current Date 3.2.1 Crystal Reports - Excel 2007 Data Centric, 3.2.2 Content Grouping - Customize SSRS report parameters with 'Default' values are now supported. If
More informationCA Performance Center
CA Performance Center CA Report Information Base API Guide 2.4.1 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the Documentation
More informationEcocion Facility Management System Alex Anderson Niles Hacking Ryan Shipp June 16, 2015
Ecocion Facility Management System Alex Anderson Niles Hacking Ryan Shipp June 16, 2015 1 Table of Contents 1. Introduction 2 1.1. Client Description 1.2. Product Vision 2. Requirements. 2 2.1. Functional
More informationDQpowersuite. Superior Architecture. A Complete Data Integration Package
DQpowersuite Superior Architecture Since its first release in 1995, DQpowersuite has made it easy to access and join distributed enterprise data. DQpowersuite provides an easy-toimplement architecture
More informationOracle Application Development Framework Overview
An Oracle White Paper July 2009 Oracle Application Development Framework Overview Introduction... 1 Oracle ADF Making Java EE Development Simpler... 2 THE ORACLE ADF ARCHITECTURE... 3 The Business Services
More informationDOWNLOAD PDF TELEPHONE BILLING SYSTEM PROJECT
Chapter 1 : Telephone Billing System In VB Project Report Projects The project thus calculates the t elephone bills automatically. It does almost every work which is related to automatic telephone billing
More informationPart (04) Introduction to Programming
Part (04) Introduction to Programming Dr. Ahmed M. ElShafee 1 Dr. Ahmed ElShafee, ACU : Summer 2014, Introduction to CS 1 EVOLUTION To write a program for a computer, we must use a computer language. A
More informationBUSTED! 5 COMMON MYTHS OF MODERN INFRASTRUCTURE. These Common Misconceptions Could Be Holding You Back
BUSTED! 5 COMMON MYTHS OF MODERN INFRASTRUCTURE These Common Misconceptions Could Be Holding You Back 2 IT Is Facing a New Set of Challenges As technology continues to evolve, IT must adjust to changing
More informationHow to integrate data into Tableau
1 How to integrate data into Tableau a comparison of 3 approaches: ETL, Tableau self-service and WHITE PAPER WHITE PAPER 2 data How to integrate data into Tableau a comparison of 3 es: ETL, Tableau self-service
More informationPerformance Innovations with Oracle Database In-Memory
Performance Innovations with Oracle Database In-Memory Eric Cohen Solution Architect Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information
More informationIn examining performance Interested in several things Exact times if computable Bounded times if exact not computable Can be measured
System Performance Analysis Introduction Performance Means many things to many people Important in any design Critical in real time systems 1 ns can mean the difference between system Doing job expected
More informationCS317 File and Database Systems
CS317 File and Database Systems http://dilbert.com/strips/comic/1995-10-11/ Lecture 5 More SQL and Intro to Stored Procedures September 24, 2017 Sam Siewert SQL Theory and Standards Completion of SQL in
More informationB.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1
Basic Concepts :- 1. What is Data? Data is a collection of facts from which conclusion may be drawn. In computer science, data is anything in a form suitable for use with a computer. Data is often distinguished
More informationCloud Computing and Its Impact on Software Licensing
Cloud Computing and Its Impact on Software Licensing By Gretchen Kwashnik & Jim Cecil January 25, 2012 What is Cloud Computing? Cloud computing is a model for enabling: on-demand network access to a shared
More informationarxiv: v1 [cs.se] 17 Aug 2016
Introduction to the Case Management Model and Notation (CMMN) arxiv:1608.05011v1 [cs.se] 17 Aug 2016 Mike A. Marin University of South Africa IBM Analytics Group mmarin@acm.org August 18, 2016 Abstract
More informationOracle Warehouse Builder 10g Release 2 What is an Expert?
Oracle Warehouse Builder 10g Release 2 What is an Expert? May 2006 Note: This document is for informational purposes. It is not a commitment to deliver any material, code, or functionality, and should
More informationPaper. Delivering Strong Security in a Hyperconverged Data Center Environment
Paper Delivering Strong Security in a Hyperconverged Data Center Environment Introduction A new trend is emerging in data center technology that could dramatically change the way enterprises manage and
More informationVERINT EFM 8.0 Release Overview
VERINT EFM 8.0 Release Overview In January of 2015 Verint will release version 8.0 of the Enterprise Feedback Management (EFM) solution. Verint hosted SaaS customers will receive this update as part of
More informationWHAT CIOs NEED TO KNOW TO CAPITALIZE ON HYBRID CLOUD
WHAT CIOs NEED TO KNOW TO CAPITALIZE ON HYBRID CLOUD 2 A CONVERSATION WITH DAVID GOULDEN Hybrid clouds are rapidly coming of age as the platforms for managing the extended computing environments of innovative
More informationQuickBooks 2008 Software Installation Guide
12/11/07; Ver. APD-1.2 Welcome This guide is designed to support users installing QuickBooks: Pro or Premier 2008 financial accounting software, especially in a networked environment. The guide also covers
More informationCrash Course in Modernization. A whitepaper from mrc
Crash Course in Modernization A whitepaper from mrc Introduction Modernization is a confusing subject for one main reason: It isn t the same across the board. Different vendors sell different forms of
More informationData Modeling in Looker
paper Data Modeling in Looker Quick iteration of metric calculations for powerful data exploration By Joshua Moskovitz The Reusability Paradigm of LookML At Looker, we want to make it easier for data analysts
More informationChapter 1: Distributed Information Systems
Chapter 1: Distributed Information Systems Contents - Chapter 1 Design of an information system Layers and tiers Bottom up design Top down design Architecture of an information system One tier Two tier
More informationChapter 4. Fundamental Concepts and Models
Chapter 4. Fundamental Concepts and Models 4.1 Roles and Boundaries 4.2 Cloud Characteristics 4.3 Cloud Delivery Models 4.4 Cloud Deployment Models The upcoming sections cover introductory topic areas
More informationOracle Java CAPS Database Binding Component User's Guide
Oracle Java CAPS Database Binding Component User's Guide Part No: 821 2620 March 2011 Copyright 2009, 2011, Oracle and/or its affiliates. All rights reserved. License Restrictions Warranty/Consequential
More informationChapter 2. DB2 concepts
4960ch02qxd 10/6/2000 7:20 AM Page 37 DB2 concepts Chapter 2 Structured query language 38 DB2 data structures 40 Enforcing business rules 49 DB2 system structures 52 Application processes and transactions
More informationInformation Lifecycle Management for Business Data. An Oracle White Paper September 2005
Information Lifecycle Management for Business Data An Oracle White Paper September 2005 Information Lifecycle Management for Business Data Introduction... 3 Regulatory Requirements... 3 What is ILM?...
More informationBackup and Recovery for Smalland Medium-Sized Businesses
White Paper Business Continuity Backup and Recovery for Smalland Medium-Sized Businesses How Micro Focus VM Explorer helps small- and mediumsized businesses protect critical virtual servers and data. Results
More informationSnapshot Best Practices: Continuous Integration
Snapshot Best Practices: Continuous Integration Snapshot provides sophisticated and flexible tools for continuously keeping Salesforce accounts, developer projects, and content repositories synchronized.
More informationSalesforce Enterprise Edition Upgrade Guide
Salesforce Enterprise Edition Upgrade Guide Salesforce, Spring 16 @salesforcedocs Last updated: February 11, 2016 Copyright 2000 2016 salesforce.com, inc. All rights reserved. Salesforce is a registered
More informationOverview. Data Integrity. Three basic types of data integrity. Integrity implementation and enforcement. Database constraints Transaction Trigger
Data Integrity IT 4153 Advanced Database J.G. Zheng Spring 2012 Overview Three basic types of data integrity Integrity implementation and enforcement Database constraints Transaction Trigger 2 1 Data Integrity
More informationForeScout ControlFabric TM Architecture
ForeScout ControlFabric TM Architecture IMPROVE MULTI-VENDOR SOLUTION EFFECTIVENESS, RESPONSE AND WORKFLOW AUTOMATION THROUGH COLLABORATION WITH INDUSTRY-LEADING TECHNOLOGY PARTNERS. The Challenge 50%
More informationTutorial 9. Review. Data Tables and Scenario Management. Data Validation. Protecting Worksheet. Range Names. Macros
Tutorial 9 Data Tables and Scenario Management Review Data Validation Protecting Worksheet Range Names Macros 1 Examine cost-volume-profit relationships Suppose you were the owner of a water store. An
More informationInformatica Data Explorer Performance Tuning
Informatica Data Explorer Performance Tuning 2011 Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise)
More informationTeiid - Scalable Information Integration. Teiid Caching Guide 7.6
Teiid - Scalable Information Integration 1 Teiid Caching Guide 7.6 1. Overview... 1 2. Results Caching... 3 2.1. Support Summary... 3 2.2. User Interaction... 3 2.2.1. User Query Cache... 3 2.2.2. Procedure
More informationBusiness Process Testing
Business Process Testing Software Version: 12.55 User Guide Go to HELP CENTER ONLINE http://admhelp.microfocus.com/alm/ Document Release Date: August 2017 Software Release Date: August 2017 Legal Notices
More informationCHAPTER 6 DATABASE MANAGEMENT SYSTEMS
CHAPTER 6 DATABASE MANAGEMENT SYSTEMS Management Information Systems, 10 th edition, By Raymond McLeod, Jr. and George P. Schell 2007, Prentice Hall, Inc. 1 Learning Objectives Understand the hierarchy
More information