Scott Meder Senior Regional Sales Manager

Similar documents
ITTIA DB SQL Em bedded Dat abase and VxWorks

EMPRESS Embedded RDBMS. Telecommunications and Networking

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution:

It also performs many parallelization operations like, data loading and query processing.

Introduction. Example Databases

Guide to Mitigating Risk in Industrial Automation with Database

Enea Polyhedra Polyhedra Database Management Systems (DBMS)

Datacenter replication solution with quasardb

Introduction to MySQL Cluster: Architecture and Use

Jargons, Concepts, Scope and Systems. Key Value Stores, Document Stores, Extensible Record Stores. Overview of different scalable relational systems

Announcements. SQL: Part IV. Transactions. Summary of SQL features covered so far. Fine prints. SQL transactions. Reading assignments for this week

Distributed KIDS Labs 1

MySQL Database Administrator Training NIIT, Gurgaon India 31 August-10 September 2015

<Insert Picture Here> Value of TimesTen Oracle TimesTen Product Overview

OBJECT-RELATIONAL COMPONENT APPROACHES: A COMPARISON

Raima Database Manager 12.0 Architecture and Features

Transaction Management

Provide Real-Time Data To Financial Applications

What are Transactions? Transaction Management: Introduction (Chap. 16) Major Example: the web app. Concurrent Execution. Web app in execution (CS636)

Trafodion Enterprise-Class Transactional SQL-on-HBase

User Perspective. Module III: System Perspective. Module III: Topics Covered. Module III Overview of Storage Structures, QP, and TM

Chapter 18: Database System Architectures.! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems!

Chapter 20: Database System Architectures

Transaction Management: Introduction (Chap. 16)

Analysis of Derby Performance

Page 1. Quiz 18.1: Flow-Control" Goals for Today" Quiz 18.1: Flow-Control" CS162 Operating Systems and Systems Programming Lecture 18 Transactions"

Creating Enterprise and WorkGroup Applications with 4D ODBC

Distributed Data Management Transactions

Understanding Impact of J2EE Applications On Relational Databases. Dennis Leung, VP Development Oracle9iAS TopLink Oracle Corporation

Page 1. Goals for Today" What is a Database " Key Concept: Structured Data" CS162 Operating Systems and Systems Programming Lecture 13.

HIGH PERFORMANCE SANLESS CLUSTERING THE POWER OF FUSION-IO THE PROTECTION OF SIOS

Lecture 23 Database System Architectures

Overview. Introduction to Transaction Management ACID. Transactions

Accelerate MySQL for Demanding OLAP and OLTP Use Cases with Apache Ignite. Peter Zaitsev, Denis Magda Santa Clara, California April 25th, 2017

Lecture 21: Logging Schemes /645 Database Systems (Fall 2017) Carnegie Mellon University Prof. Andy Pavlo

Distributed Computing

1.264 Lecture 8. SQL continued Connecting to database servers

Database Assessment for PDMS

Integrity in Distributed Databases

Recoverability. Kathleen Durant PhD CS3200

Data Modeling and Databases Ch 14: Data Replication. Gustavo Alonso, Ce Zhang Systems Group Department of Computer Science ETH Zürich

ITS. MySQL for Database Administrators (40 Hours) (Exam code 1z0-883) (OCP My SQL DBA)

Microsoft SQL Server on Stratus ftserver Systems

TRANSACTION PROPERTIES

CISC 7610 Lecture 5 Distributed multimedia databases. Topics: Scaling up vs out Replication Partitioning CAP Theorem NoSQL NewSQL

Rajiv GandhiCollegeof Engineering& Technology, Kirumampakkam.Page 1 of 10

Database Architectures

CLIENT SERVER ARCHITECTURE:

Efficient Object-Relational Mapping for JAVA and J2EE Applications or the impact of J2EE on RDB. Marc Stampfli Oracle Software (Switzerland) Ltd.

One Size Fits All: An Idea Whose Time Has Come and Gone

CSE 530A ACID. Washington University Fall 2013

Introduction. Performance

<Insert Picture Here> MySQL Cluster What are we working on

Scalability of web applications

Mastering SOA Challenges more cost-effectively. Bodo Bergmann Senior Software Engineer Ingres Corp.

Introduction to Databases

CMP-3440 Database Systems

CA464 Distributed Programming

ITTIA DB SQL Relational Embedded Database

Database Systems. Announcement

NFSv4 as the Building Block for Fault Tolerant Applications

Building Consistent Transactions with Inconsistent Replication

Massive Scalability With InterSystems IRIS Data Platform

Administration Naive DBMS CMPT 454 Topics. John Edgar 2

Avoiding the Cost of Confusion: SQL Server Failover Cluster Instances versus Basic Availability Group on Standard Edition

Database Applications (15-415)

SQL: Transactions. Announcements (October 2) Transactions. CPS 116 Introduction to Database Systems. Project milestone #1 due in 1½ weeks

Chapter 7 (Cont.) Transaction Management and Concurrency Control

HYBRID TRANSACTION/ANALYTICAL PROCESSING COLIN MACNAUGHTON

Oracle and Tangosol Acquisition Announcement

Distributed Systems Principles and Paradigms. Chapter 01: Introduction

Database Technology. Topic 8: Introduction to Transaction Processing

Overview of Transaction Management

Distributed Systems Principles and Paradigms. Chapter 01: Introduction. Contents. Distributed System: Definition.

Transaction Management: Concurrency Control, part 2

Locking for B+ Trees. Transaction Management: Concurrency Control, part 2. Locking for B+ Trees (contd.) Locking vs. Latching

A transaction is a sequence of one or more processing steps. It refers to database objects such as tables, views, joins and so forth.

MySQL for Database Administrators Ed 3.1

CMPT 354 Database Systems I

Oracle TimesTen In-Memory Database 18.1

TRANSACTION MANAGEMENT

DATABASE TRANSACTIONS. CS121: Relational Databases Fall 2017 Lecture 25

Mobile and Heterogeneous databases Distributed Database System Transaction Management. A.R. Hurson Computer Science Missouri Science & Technology

Advantage. Advantage. Database Server 8.0

John Edgar 2

Distributed Systems Principles and Paradigms

Fault Tolerance. Goals: transparent: mask (i.e., completely recover from) all failures, or predictable: exhibit a well defined failure behavior

MySQL Group Replication. Bogdan Kecman MySQL Principal Technical Engineer

1

Introduction to Database Services

Senior Director of Engineering

Microsoft Azure Storage

Bipul Sinha, Amit Ganesh, Lilian Hobbs, Oracle Corp. Dingbo Zhou, Basavaraj Hubli, Manohar Malayanur, Fannie Mae

Database Management Systems

Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition. Chapter 13 Managing Transactions and Concurrency

SQL Server SQL Server 2008 and 2008 R2. SQL Server SQL Server 2014 Currently supporting all versions July 9, 2019 July 9, 2024

COURSE 1. Database Management Systems

CSE 544 Principles of Database Management Systems. Alvin Cheung Fall 2015 Lecture 14 Distributed Transactions

Migrating Oracle Databases To Cassandra

DQpowersuite. Superior Architecture. A Complete Data Integration Package

Transcription:

www.raima.com Scott Meder Senior Regional Sales Manager scott.meder@raima.com

Short Introduction to Raima What is Data Management What are your requirements? How do I make the right decision? - Architecture - Database - Operation - Project Conclusion 2

Privately Owned Company Headquartered in Seattle, WA Long-standing embedded database market leader 20,000 SDK/more than 20 million deployments Management Team background with many Fortune 100 companies including Adobe, Boeing, CA IBM, Microsoft, and Oracle/SUN. 3

Business Automation Telecom Industrial automation Aerospace & Defense Medical 2010 Copyright Raima Inc. All rights reserved. www.raima.com

Software that implements a data store (may be volatile) At a minimum, stores and retrieves data May have various levels of sophistication: Enforce data integrity rules Manage concurrency (multiple processes/threads/tasks) Manage transactions (commit/rollback) Manage relationships between data entities Perform database recovery Perform hot online backup Perform data replication/mirroring/ synchronization Can be home grown, a commercial offering, public domain or open source The landscape is changing Hardware Advances WEB and Connectivity Increased Application Complexity

Requirements are application specific and usually diverse and conflicting: Fast and predictable performance High reliability and availability Manage complex data in tiny footprints Interact with external systems Use flash memory I can t loose data if my user pulls the plug Basically there are two options: Home Grown ( for the brave) Commercial, Public Domain and Open Source Offerings

Architecture Database Project Standalone Client/Server In-Memory/hybrid Distributed Footprint Interfaces Extensibility Administration Variables Data Model Data Types Storage Partitioning Data Integrity Concurrency Transactions Performance Scalability Operation

Standalone Process links directly to DB manager Each process has exclusive access to database Very fast no conflicts with other processes Client/Server Code can be partitioned on client and server Concurrency/locking managed centrally by server Clients can be local or connected through network Network performance affects client In-Memory Can be stand-alone or client-server Is my complete schema/database in-memory? Can I configure in-memory data and in-memory indexes? What about fault tolerance? Distributed Mirroring for remote read-only access? Replication for aggregation or to 3 rd party server Control of transaction traffic

Architecture Database Variables Data Model Data Types Storage Partitioning Project Operation

Data Model The model determines how precisely you can represent your realworld data structures in a database. Relational Network (Hierarchical, subset of the network model) With some solutions, like Raima Database Manager (RDM), can mix different data models within the same design. Don t confuse SQL with the Relational Model SQL is a procedural language not a data model An SQL engine will return data as rows/columns, regardless of the underlying data model

Data types can affect performance, storage and ease of data modeling. Not all DBs are equal - choose carefully! Simple data types (single-valued) C-types: integer, long, float, etc. SQL-types: number, date, time, etc. Complex data types (multi-valued) C types: arrays and structures SQL (post 99): arrays and row (structures) Bulk data types Text: Varchar Binary: BLOB

You need fine control, but control is DB dependent Table space control Map Logical table to physical file (1:1 or 1:many?) Page size (record clustering affects performance) Device control Device types (disk, flash, CD/DVD, memory) Location of physical files (local drive, network, WAN) Read-only attributes (e.g. for look-up only data) Partitioning a DB for LAN and WAN access and scalability Localize transactions Unified queries Dynamically add partitions

Architecture Database Variables Data Integrity Concurrency Transactions Performance Scalability Project Operation

If the Database (DB) does not enforce integrity you have to do it! Data consistency Schema defined referential integrity Data recovery Automatic crash recovery Data mirroring, replication and fail-over

Concurrency provides the ability to share data. Just about all DBs provide this. Things to look out for: Locking levels (granularity): Database Table Page Record/Row Field (Enterprise Systems) Each level of granularity increases concurrency but creates processing overhead.

Transaction management is needed to safeguard data integrity when data is shared. If the DB does not provide it, you have to! ACID Properties: Atomicity refers to the ability of the DBMS to guarantee that either all of the changes in a transaction are performed or none of them are. Consistency refers to the database being in a legal state when the transaction begins and when it ends. This means that a transaction can't break the rules, or integrity constraints, of the database. Isolation refers to the protection each user-process of the same database has from changes made by other user-processes. A process will see a Consistent database, and other processes will not see changes until a transaction is committed. Durability refers to the guarantee that once the user has been notified of a successful commit, the transaction will persist, and not be undone. This means it will survive system failure, and that the database system has checked the integrity constraints and won't need to abort the transaction.

Excluding hardware, the main performance factors are: Architecture and Configuration: In-memory fastest, stand-alone next fastest Client-server (as fast as stand-alone if code on server) Data model and DB features Pointer-based joins faster than index-based Asynchronous transactions and file I/O Interfaces Navigational APIs are fastest for transaction processing SQL - impedance mismatch, query preparation/execution Excluding hardware, the main scalability factors are: Multi-threading Multi-core support Cache and file I/O efficiency Granularity of locks

Architecture Database Variables Footprint Interfaces Extensibility Administration Project Operation

Footprint and features go hand in hand Deeply Embedded Systems Non-server systems, 0.5 1.5 MB executable size Lightly Embedded Systems client/server systems, 1.6 2.0 MB executable size Enterprise Systems client/server systems, +80MB executable size Standard or non-standard interface? Standard high-level interfaces ADO.Net, ODBC, JDBC SQL C API Non-standard interfaces Low-level navigational APIs Administrative APIs Languages C/C++, JAVA

Client-Server DBs typically support: Server managed application code Stored procedures (look like virtual tables) User-defined functions (scalar or aggregate) Non-server DBs are typically customized at the source level You don t want to sell your application with a database administrator!

With the increasing sophistication and complexity of embedded systems, the decision to buy a DBMS is gaining favor over building a homegrown solution. Build: If you are brave If you have a lot of time to spare If you can commit to maintaining internal support expertise Buy: If you want to avoid unnecessary development risks If you want to leverage the expertise of a DB vendor If you want to minimize reliability and support problems For more information and whitepapers visit us at: www.raima.com

Raima s mission is to provide the best technology and competence to developers of embedded systems for collecting, storing, managing and moving information while providing exceptional return on investment to our customers and shareholders.