Holistic Application Analysis for Update-Independence

Size: px
Start display at page:

Download "Holistic Application Analysis for Update-Independence"

Transcription

1 Holistic Application Analysis for Update-Independence Charlie Garrod with Amit Manjhi, Bruce M. Maggs, Todd Mowry, Anthony Tomasic School of Computer Science Carnegie Mellon University

2 Scaling Web applications with DB cache App server Web server database caches Users Home DB server Proxy servers mimic 3-tier architecture Use DB cache at proxy nodes Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 2

3 Scaling Web applications with DB cache database caches App server Web server?? U? Users?? Home DB server Proxy servers mimic 3-tier architecture Use DB cache at proxy nodes Problem: On update U, where to send U? Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 3

4 One solution: publish / subscribe for cache consistency management On caching a query Q: Subscribe to messages for updates that affect Q On an update U: Publish U to notify all affected query caches The challenge: Relate (current) query to (future) possible updates that affect it Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 4

5 Our previous work: Analyze the Web application s DB requests Determine which updates affect each query Create subscription for any query-update pairs which cannot be ruled independent Query and update templates e.g. SELECT name FROM emp WHERE salary >? UPDATE emp SET dept =? WHERE id =? value set at run-time Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 5

6 This talk: Holistic analysis Compiler-like analysis of how the Web application uses the DB data e.g.: emp: id name dept salary try { ResultSet r = connection.executequery( SELECT * FROM emp WHERE salary > 40 ); while (r.next()) System.out.println(r.getString( name )); } Update: UPDATE emp SET dept =? WHERE id =? Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 6

7 Talk outline The DB cache update problem and holistic application analysis Implementing holistic analysis Existing-primary-key optimization Evaluating holistic analysis Related work and closing remarks Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 7

8 Implementing holistic analysis 1. Associate application data with DB data where possible 2. Apply basic control-flow and data-flow compiler algorithms 3. Use data dependence analysis to prove application not affected by updates Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 8

9 1. Associating app and DB data emp: id name dept salary try { } ResultSet r = connection.executequery( SELECT * FROM emp WHERE salary > rname: 40 ); emp.name while (r.next()) String rname = r.getstring( name ); int rsalary = r.getint(4); rsalary: emp.salary Simple table/column associations only Rely on statically-declared access into the ResultSet Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 9

10 2. Compiler-like analysis DB-app annotations are static compiletime constants Propagate annotations to where the data is used Break program into basic blocks Propagate annotations as constants Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 10

11 3. Data dependence analysis [Blakeley+ 89, Elkan 90] If an update does not write any data read by a query, then the update cannot affect the query [Olston+ 05, Garrod+ 08] Extended to DB templates Extending to apps: data-use analysis Can take advantage of propagated annotations Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 11

12 Two optimizations we implemented: 1. Unused-data optimization Application does not use affected DB data 2. Existing-primary-key optimization Constrain run-time template parameters Application does not execute the template instantiations affected by an update Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 12

13 Constraining parameter values emp: id name dept salary try { } int x = 4; PreparedStatement t = connection.preparestatement( SELECT dept FROM emp WHERE id =? ); t.setint(1, x); ResultSet r = t.executequery(); Update: UPDATE emp SET dept =? WHERE id = 2 Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 13

14 Constraining parameter values 1: X result of Query 1 2: X used as parameter in Query 2 Known constraints from Query 1 may aid analysis for Query 2 Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 14

15 id is emp s primary key A quiz for you: emp: id name dept salary Query: SELECT * FROM emp WHERE id =? Update: INSERT INTO emp VALUES(NULL,?,?,?) id is auto-assigned to be unique Does this update template ever affect a result of the query template? Answer: Yes, but only for a query on a non-existent id Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 15

16 Existing-primary-key constraint id is emp s primary key emp: id name dept salary Query 1: SELECT id FROM emp WHERE name =? Query 2: SELECT * FROM emp WHERE id =? Update: INSERT INTO emp VALUES(NULL,?,?,?) id is auto-assigned to be unique If Query 2 always uses id from Query 1, then Query 2 is unaffected by Update Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 16

17 Talk outline The DB cache update problem and holistic application analysis Implementing holistic analysis Unused-data optimization Existing-primary-key optimization Evaluating holistic analysis Related work and closing remarks Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 17

18 Evaluating holistic analysis Applied both template-only analysis and holistic analysis by hand to three Web benchmark applications Conservatively applied compiler analyses Well-suited to Java (no pointers) 1. Statically count # of possibly-dependent query-update template pairs 2. Measure consistency traffic for a scalable query-caching system Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 18

19 The Ferdinand query cache system Each proxy server has both a local cache and part of a distributed cache Distributed DB cache Local DB cache App server Web server Users Home DB server Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 19

20 Up to 40% static improvement over template-only analysis no analysis template only template + holistic possibly-dependent template pairs bookstore auction bulletin board Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 20

21 Holistic analysis eliminates up to 15% of consistency messages 7 6 template only Notifications per update template + holistic 1 0 bookstore auction bulletin board 8 nodes 8 nodes 12 nodes Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 21

22 Most improvement due to existing- primary-key optimization Notifications per update template only unused-data existing-primary-key both holistic 1 0 bookstore auction bulletin board bookstore 8 nodes auction 8 nodes bulletin board 12 nodes Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 22

23 Scalable consistency matters Broadcast Ferdinand Throughput (WIPS) bookstore browsing mix bookstore shopping mix auction bulletin board Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 23

24 Talk outline The DB cache update problem and holistic application analysis Implementing holistic analysis Unused-data optimization Existing-primary-key optimization Evaluating holistic analysis Related work and closing remarks Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 24

25 Related work Data dependence analysis Object-oriented DB, persistent programming languages [many] Object-relation mapping tools [Hibernate, TopLink] Programmer-specified data mapping [Mehlnik+ SIGMOD 07] Holistic analysis for latency reduction [Manjhi 08] Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 25

26 Holistic analysis conclusions Significant extension over traditional database-only techniques Reduces consistency traffic over those techniques Limited implementation and evaluation here Generalizes to other languages Generalizes to other problems? Charlie Garrod "Holistic Application Analysis for Update-Indepedence" 26

Scalable Query Result Caching for Web Applications

Scalable Query Result Caching for Web Applications Scalable Query Result Caching for Web Applications Anastasia Ailamaki natassa@cs.cmu.edu Carnegie Mellon University EPFL Charles Garrod charlie@cs.cmu.edu Computer Science Dept. Carnegie Mellon University

More information

scalability services for dynamic Web applications

scalability services for dynamic Web applications A Scalability Service for Dynamic Web Applications Christopher Olston, Amit Manjhi, Charles Garrod, Anastassia Ailamaki, Bruce M. Maggs, Todd C. Mowry School of Computer Science Carnegie Mellon University

More information

Analysis of Caching and Replication Strategies for Web Applications

Analysis of Caching and Replication Strategies for Web Applications Analysis of Caching and Replication Strategies for Web Applications Swaminathan Sivasubramanian 1 Guillaume Pierre 1 Maarten van Steen 1 Gustavo Alonso 2 Abstract Replication and caching mechanisms are

More information

Security and Scalability in a Biomunicipal Network - Part 1

Security and Scalability in a Biomunicipal Network - Part 1 Simultaneous Scalability and Security for Data-Intensive Web Applications Amit Manjhi, Anastassia Ailamaki, Bruce M. Maggs, Todd C. Mowry, Christopher Olston, Anthony Tomasic Carnegie Mellon University

More information

Object Oriented Database Management System for Decision Support System.

Object Oriented Database Management System for Decision Support System. International Refereed Journal of Engineering and Science (IRJES) ISSN (Online) 2319-183X, (Print) 2319-1821 Volume 3, Issue 6 (June 2014), PP.55-59 Object Oriented Database Management System for Decision

More information

Evidence based performance tuning of

Evidence based performance tuning of Evidence based performance tuning of enterprise Java applications By Jeroen Borgers jborgers@xebia.com Evidence based performance tuning of enterprise Java applications By Jeroen Borgers jborgers@xebia.com

More information

Invalidation Clues for Database Scalability Services

Invalidation Clues for Database Scalability Services Invalidation Clues for Database Scalability Services Amit Manjhi, Phillip B. Gibbons, Anastassia Ailamaki, Charles Garrod, Bruce M. Maggs, Todd C. Mowry, Christopher Olston, Anthony Tomasic, Haifeng Yu

More information

Java DB Performance. Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860

Java DB Performance. Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860 Java DB Performance Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860 AGENDA > Java DB introduction > Configuring Java DB for performance > Programming tips > Understanding Java DB performance

More information

Development of a Scalable Architecture for Dynamic Web-Based Applications

Development of a Scalable Architecture for Dynamic Web-Based Applications Development of a Scalable Architecture for Dynamic Web-Based Applications Oluwagbemi Oluwatolani 1, Afolabi Babajide 2, Achimugu Philip 3 1,3 Department.of Computer and Information Science, Lead City University,

More information

Simultaneous Scalability and Security for Data-Intensive Web Applications

Simultaneous Scalability and Security for Data-Intensive Web Applications Simultaneous Scalability and Security for Data-Intensive Web Applications Amit Manjhi Anastassia Ailamaki Bruce M. Maggs Todd C. Mowry Christopher Olston Anthony Tomasic March 2006 CMU-CS-06-116 School

More information

Web Application Hosting Cloud Architecture

Web Application Hosting Cloud Architecture Web Application Hosting Cloud Architecture Executive Overview This paper describes vendor neutral best practices for hosting web applications using cloud computing. The architectural elements described

More information

Event-based middleware services

Event-based middleware services 3 Event-based middleware services The term event service has different definitions. In general, an event service connects producers of information and interested consumers. The service acquires events

More information

STEP 1: TRACKING USERS AND CONTENT

STEP 1: TRACKING USERS AND CONTENT Welcome to Boomtrain for Marketo! Boomtrain allows you to serve dynamic content, personalized for each recipient, in every Marketo email campaign. This document outlines easy implementation of Boomtrain

More information

<Insert Picture Here> Oracle In-Memory Database Cache Overview

<Insert Picture Here> Oracle In-Memory Database Cache Overview Oracle In-Memory Database Cache Overview Simon Law Product Manager The following is intended to outline our general product direction. It is intended for information purposes only,

More information

Lecture 9. Semantic Analysis Scoping and Symbol Table

Lecture 9. Semantic Analysis Scoping and Symbol Table Lecture 9. Semantic Analysis Scoping and Symbol Table Wei Le 2015.10 Outline Semantic analysis Scoping The Role of Symbol Table Implementing a Symbol Table Semantic Analysis Parser builds abstract syntax

More information

sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases

sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases Hagen Schink Institute of Technical and Business Information Systems Otto-von-Guericke-University Magdeburg, Germany

More information

Resource Utilization of Middleware Components in Embedded Systems

Resource Utilization of Middleware Components in Embedded Systems Resource Utilization of Middleware Components in Embedded Systems 3 Introduction System memory, CPU, and network resources are critical to the operation and performance of any software system. These system

More information

BENCHMARKING CLOUD DATABASES CASE STUDY on HBASE, HADOOP and CASSANDRA USING YCSB

BENCHMARKING CLOUD DATABASES CASE STUDY on HBASE, HADOOP and CASSANDRA USING YCSB BENCHMARKING CLOUD DATABASES CASE STUDY on HBASE, HADOOP and CASSANDRA USING YCSB Planet Size Data!? Gartner s 10 key IT trends for 2012 unstructured data will grow some 80% over the course of the next

More information

WSO2 Message Broker. Scalable persistent Messaging System

WSO2 Message Broker. Scalable persistent Messaging System WSO2 Message Broker Scalable persistent Messaging System Outline Messaging Scalable Messaging Distributed Message Brokers WSO2 MB Architecture o Distributed Pub/sub architecture o Distributed Queues architecture

More information

An Oracle Technical White Paper July 2009. Using Oracle In-Memory Database Cache to Accelerate the Oracle Database

An Oracle Technical White Paper July 2009. Using Oracle In-Memory Database Cache to Accelerate the Oracle Database An Oracle Technical White Paper July 2009 Using Oracle In-Memory Database Cache to Accelerate the Oracle Database 1. Introduction... 2 2. Application-Tier Caching... 4 3. The Oracle TimesTen In-Memory

More information

Performance Evaluation of Java Object Relational Mapping Tools

Performance Evaluation of Java Object Relational Mapping Tools Performance Evaluation of Java Object Relational Mapping Tools Jayasree Dasari Student(M.Tech), CSE, Gokul Institue of Technology and Science, Visakhapatnam, India. Abstract: In the modern era of enterprise

More information

Cloud Computing: Meet the Players. Performance Analysis of Cloud Providers

Cloud Computing: Meet the Players. Performance Analysis of Cloud Providers BASEL UNIVERSITY COMPUTER SCIENCE DEPARTMENT Cloud Computing: Meet the Players. Performance Analysis of Cloud Providers Distributed Information Systems (CS341/HS2010) Report based on D.Kassman, T.Kraska,

More information

From Object-Oriented Programming to Component Software

From Object-Oriented Programming to Component Software From Object-Oriented Programming to Component Software OO Languages: Ada, Smalltalk, Java, C++ Class versus Object: Express existence of objects directly in code Code is more expressive, easier to develop,

More information

Oracle Database Cloud

Oracle Database Cloud Oracle Database Cloud Shakeeb Rahman Database Cloud Service Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may

More information

Oracle to MySQL Migration

Oracle to MySQL Migration to Migration Stored Procedures, Packages, Triggers, Scripts and Applications White Paper March 2009, Ispirer Systems Ltd. Copyright 1999-2012. Ispirer Systems Ltd. All Rights Reserved. 1 Introduction The

More information

The Different Types of Search and Execution Systems

The Different Types of Search and Execution Systems Query Engine A Pattern for Performing Dynamic Searches in Information Systems Tim Wellhausen kontakt@tim-wellhausen.de http://www.tim-wellhausen.de Jan 24, 2006 Abstract: This paper presents an architecture

More information

Client-server 3-tier N-tier

Client-server 3-tier N-tier Web Application Design Notes Jeff Offutt http://www.cs.gmu.edu/~offutt/ SWE 642 Software Engineering for the World Wide Web N-Tier Architecture network middleware middleware Client Web Server Application

More information

Performance Tuning for the JDBC TM API

Performance Tuning for the JDBC TM API Performance Tuning for the JDBC TM API What Works, What Doesn't, and Why. Mark Chamness Sr. Java Engineer Cacheware Beginning Overall Presentation Goal Illustrate techniques for optimizing JDBC API-based

More information

Using Oracle TimesTen Application-Tier Database Cache to Accelerate the Oracle Database O R A C L E W H I T E P A P E R O C T O B E R 2 0 1 4

Using Oracle TimesTen Application-Tier Database Cache to Accelerate the Oracle Database O R A C L E W H I T E P A P E R O C T O B E R 2 0 1 4 Using Oracle TimesTen Application-Tier Database Cache to Accelerate the Oracle Database O R A C L E W H I T E P A P E R O C T O B E R 2 0 1 4 Table of Contents 1. Introduction 2 2. Application-Tier Caching

More information

Scaling Database Performance in Azure

Scaling Database Performance in Azure Scaling Database Performance in Azure Results of Microsoft-funded Testing Q1 2015 2015 2014 ScaleArc. All Rights Reserved. 1 Test Goals and Background Info Test Goals and Setup Test goals Microsoft commissioned

More information

GlobeTP: Template-Based Database Replication for Scalable Web Applications

GlobeTP: Template-Based Database Replication for Scalable Web Applications GlobeTP: Template-Based Database Replication for Scalable Web Applications Swaminathan Tobias Groothuyse Sivasubramanian Vrije Universiteit Vrije Universiteit De Boelelaan 08a De Boelelaan 08a Amsterdam,

More information

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the following requirements (SLAs). Scalability and High Availability Modularity and Maintainability Extensibility

More information

DEPLOYMENT GUIDE Version 1.2. Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5

DEPLOYMENT GUIDE Version 1.2. Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5 DEPLOYMENT GUIDE Version 1.2 Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Microsoft IIS Prerequisites and configuration

More information

Online Database Management System

Online Database Management System CPSC 624 Project Online Database Management System Bo Li / Runzhen Wang Introduction This is an online Database Management System that provide a friendly user interface to users to use the database. Users

More information

Removing Failure Points and Increasing Scalability for the Engine that Drives webmd.com

Removing Failure Points and Increasing Scalability for the Engine that Drives webmd.com Removing Failure Points and Increasing Scalability for the Engine that Drives webmd.com Matt Wilson Director, Consumer Web Operations, WebMD @mattwilsoninc 9/12/2013 About this talk Go over original site

More information

Database Application Developer Tools Using Static Analysis and Dynamic Profiling

Database Application Developer Tools Using Static Analysis and Dynamic Profiling Database Application Developer Tools Using Static Analysis and Dynamic Profiling Surajit Chaudhuri, Vivek Narasayya, Manoj Syamala Microsoft Research {surajitc,viveknar,manojsy}@microsoft.com Abstract

More information

Customer Bank Account Management System Technical Specification Document

Customer Bank Account Management System Technical Specification Document Customer Bank Account Management System Technical Specification Document Technical Specification Document Page 1 of 15 Table of Contents Contents 1 Introduction 3 2 Design Overview 4 3 Topology Diagram.6

More information

Chapter -5 SCALABILITY AND AVAILABILITY

Chapter -5 SCALABILITY AND AVAILABILITY Chapter -5 SCALABILITY AND AVAILABILITY 78 CHAPTER 5 Chapter - 5. Scalability and Availability S.No. Name of the Sub-Title Page No. 5.1 The importance of Scalability and Availability 79 5.2. Design Patterns

More information

SharePoint 2010 Interview Questions-Architect

SharePoint 2010 Interview Questions-Architect Basic Intro SharePoint Architecture Questions 1) What are Web Applications in SharePoint? An IIS Web site created and used by SharePoint 2010. Saying an IIS virtual server is also an acceptable answer.

More information

Tracking Load-time Configuration Options

Tracking Load-time Configuration Options FOSD Meeting 2014 Tracking Load-time Configuration Options Max Lillack 1 SPL or one App to rule them all? Institut für Wirtschaftsinformatik Max Lillack 2 Challenge Apps must handle variability regarding

More information

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications Single Pass Load Balancing with Session Persistence in IPv6 Network C. J. (Charlie) Liu Network Operations Charter Communications Load Balancer Today o Load balancing is still in use today. It is now considered

More information

SECURING SAP NETWEAVER DEPLOYMENTS WITH SAFE-T RSACCESS

SECURING SAP NETWEAVER DEPLOYMENTS WITH SAFE-T RSACCESS SECURING NETWEAVER DEPLOYMENTS A RSACCESS WHITE PAPER SECURING NETWEAVER DEPLOYMENTS 1 Introduction 2 NetWeaver Deployments 3 Safe-T RSAccess Overview 4 Securing NetWeaver Deployments with Safe-T RSAccess

More information

MapReduce. MapReduce and SQL Injections. CS 3200 Final Lecture. Introduction. MapReduce. Programming Model. Example

MapReduce. MapReduce and SQL Injections. CS 3200 Final Lecture. Introduction. MapReduce. Programming Model. Example MapReduce MapReduce and SQL Injections CS 3200 Final Lecture Jeffrey Dean and Sanjay Ghemawat. MapReduce: Simplified Data Processing on Large Clusters. OSDI'04: Sixth Symposium on Operating System Design

More information

Content Delivery Networks

Content Delivery Networks Content Delivery Networks Silvano Gai Cisco Systems, USA Politecnico di Torino, IT sgai@cisco.com 1 Agenda What are Content Delivery Networks? DNS based routing Server Load Balancing Content Routers Ethical

More information

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

Chapter 9 Java and SQL. Wang Yang wyang@njnet.edu.cn Chapter 9 Java and SQL Wang Yang wyang@njnet.edu.cn Outline Concern Data - File & IO vs. Database &SQL Database & SQL How Connect Java to SQL - Java Model for Database Java Database Connectivity (JDBC)

More information

Specification and Implementation of Dynamic Web Site Benchmarks. Sameh Elnikety Department of Computer Science Rice University

Specification and Implementation of Dynamic Web Site Benchmarks. Sameh Elnikety Department of Computer Science Rice University Specification and Implementation of Dynamic Web Site Benchmarks Sameh Elnikety Department of Computer Science Rice University 1 Dynamic Content Is Common 1 2 3 2 Generating Dynamic Content http Web Server

More information

S y s t e m A r c h i t e c t u r e

S y s t e m A r c h i t e c t u r e S y s t e m A r c h i t e c t u r e V e r s i o n 5. 0 Page 1 Enterprise etime automates and streamlines the management, collection, and distribution of employee hours, and eliminates the use of manual

More information

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence

Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence Exploring Oracle E-Business Suite Load Balancing Options Venkat Perumal IT Convergence Objectives Overview of 11i load balancing techniques Load balancing architecture Scenarios to implement Load Balancing

More information

emontage: An Architecture for Rapid Integration of Situational Awareness Data at the Edge

emontage: An Architecture for Rapid Integration of Situational Awareness Data at the Edge emontage: An Architecture for Rapid Integration of Situational Awareness Data at the Edge Soumya Simanta Gene Cahill Ed Morris Motivation Situational Awareness First responders and others operating in

More information

Databases Lesson 04 Client Server Computing and Adaptation

Databases Lesson 04 Client Server Computing and Adaptation Databases Lesson 04 Client Server Computing and Adaptation Oxford University Press 2007. All rights reserved. 1 Two Network Based Computing Architectures Distributed Peer-to-Peer designed each node distributed

More information

Visualizing Information Flow through C Programs

Visualizing Information Flow through C Programs Visualizing Information Flow through C Programs Joe Hurd, Aaron Tomb and David Burke Galois, Inc. {joe,atomb,davidb}@galois.com Systems Software Verification Workshop 7 October 2010 Joe Hurd, Aaron Tomb

More information

extensible record stores document stores key-value stores Rick Cattel s clustering from Scalable SQL and NoSQL Data Stores SIGMOD Record, 2010

extensible record stores document stores key-value stores Rick Cattel s clustering from Scalable SQL and NoSQL Data Stores SIGMOD Record, 2010 System/ Scale to Primary Secondary Joins/ Integrity Language/ Data Year Paper 1000s Index Indexes Transactions Analytics Constraints Views Algebra model my label 1971 RDBMS O tables sql-like 2003 memcached

More information

What is ODBC? Database Connectivity ODBC, JDBC and SQLJ. ODBC Architecture. More on ODBC. JDBC vs ODBC. What is JDBC?

What is ODBC? Database Connectivity ODBC, JDBC and SQLJ. ODBC Architecture. More on ODBC. JDBC vs ODBC. What is JDBC? What is ODBC? Database Connectivity ODBC, JDBC and SQLJ CS2312 ODBC is (Open Database Connectivity): A standard or open application programming interface (API) for accessing a database. SQL Access Group,

More information

CSE 233. Database System Overview

CSE 233. Database System Overview CSE 233 Database System Overview 1 Data Management An evolving, expanding field: Classical stand-alone databases (Oracle, DB2, SQL Server) Computer science is becoming data-centric: web knowledge harvesting,

More information

Database Access from a Programming Language: Database Access from a Programming Language

Database Access from a Programming Language: Database Access from a Programming Language Database Access from a Programming Language: Java s JDBC Werner Nutt Introduction to Databases Free University of Bozen-Bolzano 2 Database Access from a Programming Language Two Approaches 1. Embedding

More information

Database Access from a Programming Language:

Database Access from a Programming Language: Database Access from a Programming Language: Java s JDBC Werner Nutt Introduction to Databases Free University of Bozen-Bolzano 2 Database Access from a Programming Language Two Approaches 1. Embedding

More information

Configuring Apache Derby for Performance and Durability Olav Sandstå

Configuring Apache Derby for Performance and Durability Olav Sandstå Configuring Apache Derby for Performance and Durability Olav Sandstå Sun Microsystems Trondheim, Norway Agenda Apache Derby introduction Performance and durability Performance tips Open source database

More information

Understanding the Behavior of Database Operations under Program Control

Understanding the Behavior of Database Operations under Program Control Understanding the Behavior of Database Operations under Program Control Juan M. Tamayo Alex Aiken Nathan Bronson Stanford University {jtamayo,aiken,nbronson}@cs.stanford.edu Mooly Sagiv Tel-Aviv University

More information

Web Architecture I 03.12.2014. u www.tugraz.at

Web Architecture I 03.12.2014. u www.tugraz.at 1 Web Architecture I Web Architecture I u www.tugraz.at 2 Outline Development of the Web Quality Requirements HTTP Protocol Web Architecture A Changing Web Web Applications and State Management Web n-tier

More information

DEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5

DEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 DEPLOYMENT GUIDE Version 1.1 Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Citrix Presentation Server Prerequisites

More information

Hypertable Architecture Overview

Hypertable Architecture Overview WHITE PAPER - MARCH 2012 Hypertable Architecture Overview Hypertable is an open source, scalable NoSQL database modeled after Bigtable, Google s proprietary scalable database. It is written in C++ for

More information

Enterprise Edition Scalability. ecommerce Framework Built to Scale Reading Time: 10 minutes

Enterprise Edition Scalability. ecommerce Framework Built to Scale Reading Time: 10 minutes Enterprise Edition Scalability ecommerce Framework Built to Scale Reading Time: 10 minutes Broadleaf Commerce Scalability About the Broadleaf Commerce Framework Test Methodology Test Results Test 1: High

More information

MTCache: Mid-Tier Database Caching for SQL Server

MTCache: Mid-Tier Database Caching for SQL Server MTCache: Mid-Tier Database Caching for SQL Server Per-Åke Larson Jonathan Goldstein Microsoft {palarson,jongold}@microsoft.com Hongfei Guo University of Wisconsin guo@cs.wisc.edu Jingren Zhou Columbia

More information

Enterprise Application Development In Java with AJAX and ORM

Enterprise Application Development In Java with AJAX and ORM Enterprise Application Development In Java with AJAX and ORM ACCU London March 2010 ACCU Conference April 2010 Paul Grenyer Head of Software Engineering p.grenyer@validus-ivc.co.uk http://paulgrenyer.blogspot.com

More information

Performance Testing. Checklist Packet. Everything you need to trigger thoughts, discussions and actions in the projects you are working on

Performance Testing. Checklist Packet. Everything you need to trigger thoughts, discussions and actions in the projects you are working on Performance Testing Checklist Packet Everything you need to trigger thoughts, discussions and actions in the projects you are working on Performance Testing Checklist: People & Processes within Performance

More information

Requirements Design Implementation. Software Architectures. Components Software Component Architecture. DSSA: Domain-Specific Software Architectures

Requirements Design Implementation. Software Architectures. Components Software Component Architecture. DSSA: Domain-Specific Software Architectures Frameworks 1. Objectives... 2 2. Frameworks... 3 3. Classification... 3 4. Example: Components for Java (BC4J)... 6 5. Existing Frameworks... 9 6. Presistence Frameworks... 11 7. Content Management System

More information

Cassandra A Decentralized, Structured Storage System

Cassandra A Decentralized, Structured Storage System Cassandra A Decentralized, Structured Storage System Avinash Lakshman and Prashant Malik Facebook Published: April 2010, Volume 44, Issue 2 Communications of the ACM http://dl.acm.org/citation.cfm?id=1773922

More information

Lag Sucks! R.J. Lorimer Director of Platform Engineering Electrotank, Inc. Robert Greene Vice President of Technology Versant Corporation

Lag Sucks! R.J. Lorimer Director of Platform Engineering Electrotank, Inc. Robert Greene Vice President of Technology Versant Corporation Lag Sucks! Making Online Gaming Faster with NoSQL (and without Breaking the Bank) R.J. Lorimer Director of Platform Engineering Electrotank, Inc. Robert Greene Vice President of Technology Versant Corporation

More information

The ObjectStore Database System. Charles Lamb Gordon Landis Jack Orenstein Dan Weinreb Slides based on those by Clint Morgan

The ObjectStore Database System. Charles Lamb Gordon Landis Jack Orenstein Dan Weinreb Slides based on those by Clint Morgan The ObjectStore Database System Charles Lamb Gordon Landis Jack Orenstein Dan Weinreb Slides based on those by Clint Morgan Overall Problem Impedance mismatch between application code and database code

More information

Logitoring : log driven monitroing. the Rocket science. and. Eugene Istomin. IT Architect. e.istomin@edss.ee. Cone Center,Tallinn

Logitoring : log driven monitroing. the Rocket science. and. Eugene Istomin. IT Architect. e.istomin@edss.ee. Cone Center,Tallinn Logitoring : log driven monitroing and the Rocket science Eugene Istomin IT Architect e.istomin@edss.ee Cone Center,Tallinn Topic goal: talking about a common way of delivering, storing and analyzing monitoring/log/trace

More information

Using Oracle TimesTen to Deploy Low Latency VOIP Applications in Remote Sites

Using Oracle TimesTen to Deploy Low Latency VOIP Applications in Remote Sites Using Oracle TimesTen to Deploy Low Latency VOIP Applications in Remote Sites Thomas Lynn Comcast National Engineering & Technical Operations October 009 Comcast Digital Voice (CDV) Comcast Digital Voice

More information

CHAPTER 5 INTELLIGENT TECHNIQUES TO PREVENT SQL INJECTION ATTACKS

CHAPTER 5 INTELLIGENT TECHNIQUES TO PREVENT SQL INJECTION ATTACKS 66 CHAPTER 5 INTELLIGENT TECHNIQUES TO PREVENT SQL INJECTION ATTACKS 5.1 INTRODUCTION In this research work, two new techniques have been proposed for addressing the problem of SQL injection attacks, one

More information

Java EE Web Development Course Program

Java EE Web Development Course Program Java EE Web Development Course Program Part I Introduction to Programming 1. Introduction to programming. Compilers, interpreters, virtual machines. Primitive types, variables, basic operators, expressions,

More information

Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

More information

Conflict-Aware Scheduling for Dynamic Content Applications

Conflict-Aware Scheduling for Dynamic Content Applications Conflict-Aware Scheduling for Dynamic Content Applications Cristiana Amza Ý, Alan L. Cox Ý, Willy Zwaenepoel Þ Ý Department of Computer Science, Rice University, Houston, TX, USA Þ School of Computer and

More information

Evaluating and Comparing the Impact of Software Faults on Web Servers

Evaluating and Comparing the Impact of Software Faults on Web Servers Evaluating and Comparing the Impact of Software Faults on Web Servers April 2010, João Durães, Henrique Madeira CISUC, Department of Informatics Engineering University of Coimbra {naaliel, jduraes, henrique}@dei.uc.pt

More information

Chapter 9, More SQL: Assertions, Views, and Programming Techniques

Chapter 9, More SQL: Assertions, Views, and Programming Techniques Chapter 9, More SQL: Assertions, Views, and Programming Techniques 9.2 Embedded SQL SQL statements can be embedded in a general purpose programming language, such as C, C++, COBOL,... 9.2.1 Retrieving

More information

OBJECTS AND DATABASES. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 21

OBJECTS AND DATABASES. CS121: Introduction to Relational Database Systems Fall 2015 Lecture 21 OBJECTS AND DATABASES CS121: Introduction to Relational Database Systems Fall 2015 Lecture 21 Relational Model and 1NF 2 Relational model specifies that all attribute domains must be atomic A database

More information

www.novell.com/documentation Jobs Guide Identity Manager 4.0.1 February 10, 2012

www.novell.com/documentation Jobs Guide Identity Manager 4.0.1 February 10, 2012 www.novell.com/documentation Jobs Guide Identity Manager 4.0.1 February 10, 2012 Legal Notices Novell, Inc. makes no representations or warranties with respect to the contents or use of this documentation,

More information

Building a Mobile App Security Risk Management Program. Copyright 2012, Security Risk Advisors, Inc. All Rights Reserved

Building a Mobile App Security Risk Management Program. Copyright 2012, Security Risk Advisors, Inc. All Rights Reserved Building a Mobile App Security Risk Management Program Your Presenters Who Are We? Chris Salerno, Consultant, Security Risk Advisors Lead consultant for mobile, network, web application penetration testing

More information

CloudCERT (Testbed framework to exercise critical infrastructure protection)

CloudCERT (Testbed framework to exercise critical infrastructure protection) WP2. CONCEPTUAL MODELLING AND ARCHITECTURE CloudCERT (Testbed framework to exercise critical infrastructure protection) With the financial support of the Prevention, Preparedness and Consequence Management

More information

<Insert Picture Here> Oracle NoSQL Database A Distributed Key-Value Store

<Insert Picture Here> Oracle NoSQL Database A Distributed Key-Value Store Oracle NoSQL Database A Distributed Key-Value Store Charles Lamb, Consulting MTS The following is intended to outline our general product direction. It is intended for information

More information

Data sharing in the Big Data era

Data sharing in the Big Data era www.bsc.es Data sharing in the Big Data era Anna Queralt and Toni Cortes Storage System Research Group Introduction What ignited our research Different data models: persistent vs. non persistent New storage

More information

Deploying the BIG-IP System v10 with Oracle Application Server 10g R2

Deploying the BIG-IP System v10 with Oracle Application Server 10g R2 DEPLOYMENT GUIDE Deploying the BIG-IP System v10 with Oracle Application Server 10g R2 Version 1.1 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Oracle s Application Server 10g

More information

Eliminate SQL Server Downtime Even for maintenance

Eliminate SQL Server Downtime Even for maintenance Eliminate SQL Server Downtime Even for maintenance Eliminate Outages Enable Continuous Availability of Data (zero downtime) Enable Geographic Disaster Recovery - NO crash recovery 2009 xkoto, Inc. All

More information

Web Caching With Dynamic Content Abstract When caching is a good idea

Web Caching With Dynamic Content Abstract When caching is a good idea Web Caching With Dynamic Content (only first 5 pages included for abstract submission) George Copeland - copeland@austin.ibm.com - (512) 838-0267 Matt McClain - mmcclain@austin.ibm.com - (512) 838-3675

More information

Database Monitoring Requirements. Salvatore Di Guida (CERN) On behalf of the CMS DB group

Database Monitoring Requirements. Salvatore Di Guida (CERN) On behalf of the CMS DB group Database Monitoring Requirements Salvatore Di Guida (CERN) On behalf of the CMS DB group Outline CMS Database infrastructure and data flow. Data access patterns. Requirements coming from the hardware and

More information

Asynchronous Provisioning Platform (APP)

Asynchronous Provisioning Platform (APP) Service Catalog Manager - IaaS Integration Asynchronous Provisioning Platform (APP) 0 Overview Implementing an asynchronous provisioning service (e.g. for IaaS) most often requires complex implementation

More information

<Insert Picture Here> Oracle Web Cache 11g Overview

<Insert Picture Here> Oracle Web Cache 11g Overview Oracle Web Cache 11g Overview Oracle Web Cache Oracle Web Cache is a secure reverse proxy cache and a compression engine deployed between Browser and HTTP server Browser and Content

More information

Siebel & Portal Performance Testing and Tuning GCP - IT Performance Practice

Siebel & Portal Performance Testing and Tuning GCP - IT Performance Practice & Portal Performance Testing and Tuning GCP - IT Performance Practice By Zubair Syed (zubair.syed@tcs.com) April 2014 Copyright 2012 Tata Consultancy Services Limited Overview A large insurance company

More information

Object-Oriented Databases db4o: Part 2

Object-Oriented Databases db4o: Part 2 Object-Oriented Databases db4o: Part 2 Configuration and Tuning Distribution and Replication Callbacks and Translators 1 Summary: db4o Part 1 Managing databases with an object container Retrieving objects

More information

Tushar Joshi Turtle Networks Ltd

Tushar Joshi Turtle Networks Ltd MySQL Database for High Availability Web Applications Tushar Joshi Turtle Networks Ltd www.turtle.net Overview What is High Availability? Web/Network Architecture Applications MySQL Replication MySQL Clustering

More information

Common Server Setups For Your Web Application - Part II

Common Server Setups For Your Web Application - Part II Common Server Setups For Your Web Application - Part II Introduction When deciding which server architecture to use for your environment, there are many factors to consider, such as performance, scalability,

More information

Building a Continuous Integration Pipeline with Docker

Building a Continuous Integration Pipeline with Docker Building a Continuous Integration Pipeline with Docker August 2015 Table of Contents Overview 3 Architectural Overview and Required Components 3 Architectural Components 3 Workflow 4 Environment Prerequisites

More information

Caching Dynamic Content with Automatic Fragmentation. Ikram Chabbouh and Mesaac Makpangou

Caching Dynamic Content with Automatic Fragmentation. Ikram Chabbouh and Mesaac Makpangou Caching Dynamic Content with Automatic Fragmentation Ikram Chabbouh and Mesaac Makpangou Abstract. In this paper we propose a fragment-based caching system that aims at improving the performance of Webbased

More information

Aerospace Software Engineering

Aerospace Software Engineering 16.35 Aerospace Software Engineering Software Architecture The 4+1 view Patterns Prof. Kristina Lundqvist Dept. of Aero/Astro, MIT Why Care About Software Architecture? An architecture provides a vehicle

More information

MySQL és Hadoop mint Big Data platform (SQL + NoSQL = MySQL Cluster?!)

MySQL és Hadoop mint Big Data platform (SQL + NoSQL = MySQL Cluster?!) MySQL és Hadoop mint Big Data platform (SQL + NoSQL = MySQL Cluster?!) Erdélyi Ernő, Component Soft Kft. erno@component.hu www.component.hu 2013 (c) Component Soft Ltd Leading Hadoop Vendor Copyright 2013,

More information

Extreme Java G22.3033-007

Extreme Java G22.3033-007 Extreme Java G22.3033-007 Session 13 - Sub-Topic 1 Designing Databases for ebusiness Solutions Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical

More information

DEPLOYMENT GUIDE Version 1.1. Deploying F5 with IBM WebSphere 7

DEPLOYMENT GUIDE Version 1.1. Deploying F5 with IBM WebSphere 7 DEPLOYMENT GUIDE Version 1.1 Deploying F5 with IBM WebSphere 7 Table of Contents Table of Contents Deploying the BIG-IP LTM system and IBM WebSphere Servers Prerequisites and configuration notes...1-1

More information

A Fully Standards-Based Approach to Logging High-Throughput Distributed Real-Time Data. Leveraging the DDS and SQL Standards

A Fully Standards-Based Approach to Logging High-Throughput Distributed Real-Time Data. Leveraging the DDS and SQL Standards A Fully Standards-Based Approach to Logging High-Throughput Distributed Real-Time Data Leveraging the and SQL Standards Mark A. Hamilton And Edwin de Jong Real-Time Innovations 3975 Freedom Circle Santa

More information