A Case Study CSCI397c OODBMS Fall ’99 by William Yeo.

Slides:



Advertisements
Similar presentations
Distributed Data Processing
Advertisements

Introduction to Database Management  Department of Computer Science Northern Illinois University January 2001.
1 Pertemuan 02 Database environment Matakuliah: >/ > Tahun: > Versi: >
Chapter 2 Database Environment.
MS DB Proposal Scott Canaan B. Thomas Golisano College of Computing & Information Sciences.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Data Management I DBMS Relational Systems. Overview u Introduction u DBMS –components –types u Relational Model –characteristics –implementation u Physical.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
Introduction to Databases Transparencies
Lecture Two Database Environment Based on Chapter Two of this book:
Dr. Kalpakis CMSC 461, Database Management Systems Introduction.
Chapter 4 Database Management Systems. Chapter 4Slide 2 What is a Database Management System (DBMS)?  Database An organized collection of related data.
Database Management Systems (DBMS)
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
Chapter One Overview of Database Objectives: -Introduction -DBMS architecture -Definitions -Data models -DB lifecycle.
Introduction to DBMS Purpose of Database Systems View of Data
Database Management System Lecture 2 Introduction to Database management.
Database Environment 1.  Purpose of three-level database architecture.  Contents of external, conceptual, and internal levels.  Purpose of external/conceptual.
Introduction Chapter 1. Reference Book  Database Systems Thomas Connolly, Carolyn Begg, Anne Strachan Addison-Wesley 1999 ISBN:
The Design Discipline.
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Module Title? DBMS Introduction to Database Management System.
Functions of a Database Management System
Chapter 2 CIS Sungchul Hong
Database Architecture Introduction to Databases. The Nature of Data Un-structured Semi-structured Structured.
CSC271 Database Systems Lecture # 4.
AL-MAAREFA COLLEGE FOR SCIENCE AND TECHNOLOGY INFO 232: DATABASE SYSTEMS CHAPTER 1 DATABASE SYSTEMS (Cont’d) Instructor Ms. Arwa Binsaleh.
Database System Concepts and Architecture Lecture # 2 21 June 2012 National University of Computer and Emerging Sciences.
1 Introduction to Database Systems. 2 Database and Database System / A database is a shared collection of logically related data designed to meet the.
1 Welcome: To the second learning sequence “ Data Base (DB) and Data Base Management System (DBMS) “ Recap : In the previous learning sequence, we discussed.
Databases and Database Management Systems
Lecture On Introduction (DBMS) By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Databases and Statistical Databases Session 4 Mark Viney Australian Bureau of Statistics 5 June 2007.
Chapter 1 : Introduction §Purpose of Database Systems §View of Data §Data Models §Data Definition Language §Data Manipulation Language §Transaction Management.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
Intro – Part 2 Introduction to Database Management: Ch 1 & 2.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
Distributed System Concepts and Architectures 2.3 Services Fall 2011 Student: Fan Bai
1 Database Management Systems (DBMS). 2 Database Management Systems (DBMS) n Overview of: ä Database Management Components ä Database Systems Architecture.
Netprog: Corba Object Services1 CORBA 2.0 Object Services Ref: The Essential Distributed Objects Survival Guide: Orfali, Harky & Edwards.
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
DATABASE MANAGEMENT SYSTEM ARCHITECTURE
CIS/SUSL1 Fundamentals of DBMS S.V. Priyan Head/Department of Computing & Information Systems.
1 Chapter 1 Introduction to Databases Transparencies.
Why do we need a database?
Introduction to Active Directory
Copyright (c) 2014 Pearson Education, Inc. Introduction to DBMS.
E.Bertino, L.Matino Object-Oriented Database Systems 1 Chapter 9. Systems Seoul National University Department of Computer Engineering OOPSLA Lab.
Chapter 2 Database Environment.
1 Database Environment. 2 Objectives of Three-Level Architecture u All users should be able to access same data. u A user’s view is immune to changes.
Lecture On Introduction (DBMS) By- Jesmin Akhter Assistant Professor, IIT, Jahangirnagar University.
Database Environment Chapter 2. The Three-Level ANSI-SPARC Architecture External Level Conceptual Level Internal Level Physical Data.
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
Active Directory Domain Services (AD DS). Identity and Access (IDA) – An IDA infrastructure should: Store information about users, groups, computers and.
IIS 645 Database Management Systems DDr. Khorsheed Today’s Topics 1. Course Overview 22. Introduction to Database management 33. Components of Database.
IT 5433 LM1. Learning Objectives Understand key terms in database Explain file processing systems List parts of a database environment Explain types of.
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
Introduction  Model contains different kinds of elements (such as hosts, databases, web servers, applications, etc)  Relations between these elements.
Introduction to DBMS Purpose of Database Systems View of Data
Databases and DBMSs Todd S. Bacastow January 2005.
Introduction To DBMS.
“ Database (DB) and Database Management System (DBMS) “
Chapter 2 Database System Concepts and Architecture
Database Management:.
Database Management System
Introduction to Database Management System
Introduction to Database Systems
Database Systems Instructor Name: Lecture-2.
Introduction to DBMS Purpose of Database Systems View of Data
Database (DB) and Database Management System (DBMS)
Presentation transcript:

A Case Study CSCI397c OODBMS Fall ’99 by William Yeo

Outline Introduction GemStone Overview GemStone Data Model References

Introduction Modern application needs modern architecture.

GemStone Overview Multi-User Object Server Programmable Object Server Programmable Object Server Partitioning of Applications Between Client and Server Partitioning of Applications Between Client and Server Large-Scale Repository Queries and Indexes Transactions and Concurrency Control Transactions and Concurrency Control Connections to Outside Data Sources Connections to Outside Data Sources Object Security and Account Management Object Security and Account Management Services to Manage the GemStone Repository Services to Manage the GemStone Repository

Multi-User Object Server Supports over 1000 concurrent users, Repositories of up to 100 gigabytes, Transaction rates of over 100 transactions/sec Server processes manage the system User sessions support individual user activities Distributed repository and server processes Shared memory fully leveraged.

Programmable Object Server Data definition, manipulation, & query in GemStone Smalltalk Classes, operators, & control structures comparable to C, C++, or Pascal Transaction control, user authorization, etc accessible from GemStone Smalltalk. Built-in multi-user concurrency and repository management services

Application Partitioning Applications written in other languages can access GemStone object methods Done via use of GemBuilder Maintains relationships and propagates changes

Large-Scale Repository Can contain over a billion objects Distributed among many different machines and files Unique identifier enables location transparency

Queries and Indexes Indexable objects Nestable objects Regular and associative access queries against very large collections

Transactions and Concurrency Controls Session defines and maintains a consistent working environment Presents user with a consistent view of the object User changes are kept private Visible to all only when committed Effects of multiple updates minimized Checks for consistency with other users’ changes before committing the transaction

Connections to Outside Data Sources Provides a way to attach external code, called userActions, to a GemStone session Developer can access or generate external information and bring it into GemStone as objects Objects can then be committed and made available to other users.

Security and Account Management Authentication and authorization part of system security supports its own authentication protocol, as well as the Kerberos scheme

Management Services  Flexible backup and restore  Hardware and network failure recovery  Object recovery, when needed  Object server tuning  Accommodate the addition of new machines and processors without recoding the system  Controlled changes to the definition of the business and application objects in the system

GemStone Data Model Basic Storage Formats Class Hierarchy and Definition Methods Persistence

Basic Data Formats Atomic Named instance variables Indexable instance variables Anonymous instance variables

Class Hierarchy & Definition A portion of the class hierarchy.

Class Definition Syntax Name_class_receiving subclass: ‘Name-subclass’ instVarNames: ListofInstanceVariables classVars: ListofClassVariables poolDictionaries: ListofCommonVariables inDictionary: DictionaryName constraints: ListofDomainConstraints instancesInvariant: False/True isModifiable: False/True

Methods Consists of 2 parts: Method signature Method body e.g is receiving object + is the method 8 is the argument

Persistence Is property of objects How do we do that? Associate an external name Make “reachable” by a persistent object e.g. Set

References GemStone Programming Guide Version 5.0 GemStone – The Power to Develop and Deploy Enterprise Applications in Java The GemStone Data Model, Object-Oriented Data Models The Most Secure, Integrated Business-to-Business Application Platform, GemStone/J3.0 DataSheet