Anatomy Of A Modern Clientserverdb

  • Uploaded by: Viji
  • 0
  • 0
  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Anatomy Of A Modern Clientserverdb as PDF for free.

More details

  • Words: 914
  • Pages: 3
Anatomy of a modern Client-Server Database Modern Client-Server (CS) Databases, such as Oracle and MS SQL Server, share various design elements. At the core of it all, Databases manage large amount of data stored in one or more disk files. They also facilitate ad hoc querying of such data. The following are the common design elements of a modern Client-Server Database. Data Files CS Databases use one or more physical data files on disk to store information in a manner optimized for updates and lookups. For example, a database may store raw data in one disk file location and an index to the data into another file location to optimize access. The raw data may be stored sequentially whereas the indexed data may be stored in a sorted fashion to optimize access speed. CS Databases also utilize low-level, raw disk IO instead of OS provided IO functions to further enhance performance. Oracle stores its data in files with an extension .DBF whereas MS SQL Server uses .MDF and .LDF extensions for its data files. Databases also use log files to provide transactional capabilities. Managing Process Oracle refers to the Manage Process as the Service or the Instance. Oracle also identifies this process with a unique identifier called the System Identifier (SID). MS SQL Server refers to the Managing Process as an Instance. We think of this Managing Process as the Database Server. CS Databases usually run on a machine other than the client machine. It follows then a separate, stand-alone process must manage the data files. A separate process provides isolation for database operations immunizing it from a misbehaving Client Application and vice versa. On Windows platform, the Managing Process is implemented as a Windows Service. Specific to a Managing Process are in-memory data structures used to cache recently or commonly used data. Oracle calls this memory area, System Global Area (SGA). An important sub-subsystem of the Managing Process is the SQL Query Processor and Optimizer. The objective of this subsystem is to understand and process data definition and data manipulation requests by the Client Application in an efficient manner. The Managing Process also enforces ACID qualities of a database: Atomicity - Either all or none of the tasks in a transaction are performed Consistency - The database remains in a consistent regardless of successful or unsuccessful transactions Isolation - Results of operations during a transaction must remain invisible to other transactions and queries Durability - Once a transaction is completed, the resultant changes persist Communication Channel

The Client Application communicates with a CS database over a network. The CS Database provides a communication channel over which it can exchange data with a Client Application. A Client Application needs the following information to connect to an MS SQL database: Name of the Host (IP address or Name of the Server hosting the Managing Process) Network Protocol used by the Database for communication such as TCP/IP Port number used by the Managing Process (defaults to 1433 in case of TCP/IP) Instance name. An Initial Catalog may be specified. A Catalog can be thought of a Logical Database or Schema. A Catalog is a container for SQL Database objects such as Tables, Views and Stored Procedures. If not specified, the Master database is the default Initial Catalog. The Catalog dictates what Database objects are initially visible to the Client Application. Database objects in other Catalogs may be accessed, subject to object permissions available to the Client Application. A Client Application needs the following information to connect to an Oracle database: Name of the Host (IP address or Name of the Server hosting the Managing Process) Network Protocol used by the Database for communication such as TCP/IP Port number used by the Managing Process (defaults to 1521 in case of TCP/IP) Service Name or SID (System ID). In Oracle there is no Initial Catalog per se as is the case with the MS SQL Server. In Oracle, the set of SQL Database objects visible to a Client Application correspond to the SQL objects owned by the authenticated User of the Client Application. In other words, for Oracle, User and Schema are synonymous. Oracle Schemas loosely correspond to MS SQL Catalogs. In case of both databases, however, user permissions determine what is accessible to the authenticated user. Authentication The Database either uses the authentication services provided by the Operating System (Windows Authentication) or maintains its own list of usernames (login)/passwords in its System tables for authentication purposes. The latter is called SQL Server Authentication mode in MS SQL Server and OS Authentication in Oracle. Before the Database allows a Client Application to connect to it, it authenticates the identity of the party using the Client Application. The Client Application presents username (login) and/or password to the Database to prove its identity. Alternatively, depending upon the Database authentication scheme in effect, the identity of the Client Application is deciphered from the Network identity of the party using the Client Application (Windows Authentication). Authorization Before a database responds to any data queries or updates, the Database determines the permissions granted to the party using the Client Application. The Database stores such

permissions its System tables. An example of permission is a permission to SELECT rows from a certain TABLE. A Database allows permissions to be aggregated into Roles that can be granted to Users of a Database. The Managing Process is responsible for limiting operations of the Client Application to permissions granted to the authenticated User of the Client Application.

Related Documents

Anatomy Of A Province
May 2020 14
Anatomy Of A Crisis
May 2020 18
Anatomy Of A Microscope
November 2019 29
Anatomy Of A Report
November 2019 25
Anatomy Of A Revolution
November 2019 26

More Documents from "ralzinho"

Pns_turmeric.pdf
November 2019 5
15421246361.pdf
December 2019 2
White_pepper.pdf
December 2019 1
Fig.pdf
April 2020 2