Week 6 - Discussion Forum HSIN
Heathersimf
Database Systems: Design, Implementation, and
Management Tenth Edition
Chapter 14 Database Connectivity and Web
Technologies
Objectives
In this chapter, you will learn: • About various database connectivity
technologies • How Web-to-database middleware is used to
integrate databases with the Internet • About Web browser plug-ins and extensions • What services are provided by Web application
servers
Database Systems, 10th Edition 2
Objectives (cont’d.)
• What Extensible Markup Language (XML) is and why it is important for Web database development
• About cloud computing and how it enables the database-as-a-service model
Database Systems, 10th Edition 3
Database Connectivity
• Mechanisms by which application programs connect and communicate with data sources – Also known as database middleware
• Data repository: – Also known as a data source
– Represents the data management application • Used to store data generated by an application
program
• ODBC, OLE-DB, ADO.NET: the backbone of MS Universal Data Access (UDA) architecture
Database Systems, 10th Edition 4
Native SQL Connectivity
• Connection interface provided by database vendors – Unique to each vendor
• Example: Oracle RDBMS – Must install and configure Oracle’s SQL*Net
interface in client computer
• Interfaces optimized for particular vendor’s DBMS – Maintenance is a burden for the programmer
Database Systems, 10th Edition 5
Database Systems, 10th Edition 6
ODBC, DAO, and RDO
• Open Database Connectivity (ODBC) – Microsoft’s implementation of a superset of SQL
Access Group Call Level Interface (CLI)
– Widely supported database connectivity interface
– Any Windows application can access relational data sources
– Uses SQL via standard application programming interface (API)
Database Systems, 10th Edition 7
ODBC, DAO, and RDO (cont’d.)
• Data Access Objects (DAO) – Object-oriented API
• Accesses MS Access, MS FoxPro, and dBase databases from Visual Basic programs
– Provided an optimized interface that exposed functionality of Jet data engine to programmers
– DAO interface can also be used to access other relational style data sources
Database Systems, 10th Edition 8
ODBC, DAO, and RDO (cont’d.)
• Remote Data Objects (RDO) – Higher-level object-oriented application interface
used to access remote database servers
– Uses lower-level DAO and ODBC for direct access to databases
– Optimized to deal with server-based databases, such as MS SQL Server, Oracle, and DB2
• Implemented as shared code dynamically linked to Windows via dynamic-link libraries
Database Systems, 10th Edition 9
Database Systems, 10th Edition 10
ODBC, DAO, and RDO (cont’d.)
• Basic ODBC architecture has three main components: – High-level ODBC API through which application
programs access ODBC functionality
– Driver manager that is in charge of managing all database connections
– ODBC driver that communicates directly to DBMS
Database Systems, 10th Edition 11
Database Systems, 10th Edition 12
OLE-DB
• Object Linking and Embedding for Database • Database middleware that adds object-oriented
functionality for access to data • Series of COM objects provides low-level
database connectivity for applications • Functionality divided into two types of objects:
– Consumers – Providers
Database Systems, 10th Edition 13
OLE-DB (cont’d.)
• OLE-DB did not provide support for scripting languages
• ActiveX Data Objects (ADO) provides high-level application-oriented interface to interact with OLE-DB, DAO, and RDO
• ADO provides unified interface to access data from any programming language that uses the underlying OLE-DB objects
Database Systems, 10th Edition 14
Database Systems, 10th Edition 15
ADO.NET
• Data access component of Microsoft’s .NET application development framework
• Two new features for development of distributed applications: – DataSet is disconnected memory-resident
representation of database
– DataSet is internally stored in XML format • Data in DataSet made persistent as XML
documents
Database Systems, 10th Edition 16
Database Systems, 10th Edition 17
ADO.NET (cont’d.)
• Specific objects manipulate data in data source – Connection
– Command
– DataReader
– DataAdapter – DataSet
– DataTable
Database Systems, 10th Edition 18
Java Database Connectivity (JDBC)
• Java is an object-oriented programming language – Runs on top of Web browser software
• Advantages of JDBC: – Company can leverage existing technology and
personnel training
– Allows direct access to database server or access via database middleware
– Provides a way to connect to databases through an ODBC driver
Database Systems, 10th Edition 19
Database Systems, 10th Edition 20
Database Internet Connectivity
• Web database connectivity allows new innovative services that: – Permit rapid response by bringing new services
and products to market quickly
– Increase customer satisfaction through creation of Web-based support services
– Allow anywhere, anytime data access using mobile smart devices via the Internet
– Yield fast and effective information dissemination through universal access
Database Systems, 10th Edition 21
Database Systems, 10th Edition 22
Web-to-Database Middleware: Server-Side Extensions
• Web server is the main hub through which Internet services are accessed
• Dynamic Web pages are at the heart of current generation Web sites
• Server-side extension: a program that interacts directly with the Web server – Also known as Web-to-database middleware
• Middleware must be well integrated
Database Systems, 10th Edition 23
Database Systems, 10th Edition 24
Web Server Interfaces
• Two well-defined Web server interfaces: – Common Gateway Interface (CGI)
– Application Programming Interface (API)
• Disadvantage of CGI scripts: – Loading external script decreases system
performance – Language and method used to create script also
decrease performance
• API is more efficient than CGI – API is treated as part of Web server program
Database Systems, 10th Edition 25
Database Systems, 10th Edition 26
The Web Browser
• Software that lets users navigate the Web • Located in client computer • Interprets HTML code received from Web
server • Presents different page components in
standard way • Web is a stateless system: Web server does
not know the status of any clients
Database Systems, 10th Edition 27
Client-Side Extensions
• Add functionality to Web browser • Three general types:
– Plug-ins
– Java and JavaScript
– ActiveX and VBScript
Database Systems, 10th Edition 28
Client-Side Extensions (cont’d.)
• Plug-in: an external application automatically invoked by the browser when needed
• Java and JavaScript: embedded in Web page – Downloaded with the Web page and activated
by an event
• ActiveX and VBScript: embedded in Web page – Downloaded with page and activated by event
– Oriented to Windows applications
Database Systems, 10th Edition 29
Web Application Servers
• Middleware application that expands the functionality of Web servers – Links them to a wide range of services
• Some uses of Web application servers: – Connect to and query database from Web page
– Create dynamic Web search pages
– Enforce referential integrity
• Some features of Web application servers: – Security and user authentication
– Access to multiple services
Database Systems, 10th Edition 30
Web Database Development
• Process of interfacing databases with the Web browser
• Code examples – ColdFusion
– PHP
Database Systems, 10th Edition 31
Database Systems, 10th Edition 32
Database Systems, 10th Edition 33
Extensible Markup Language (XML)
• Companies use Internet to create new systems that integrate their data – Increase efficiency and reduce costs
• Electronic commerce enables organizations to market to millions of users
• Most e-commerce transactions take place between businesses
• HTML Web pages display in the browser – Tags describe how something looks on the page
Database Systems, 10th Edition 34
Extensible Markup Language (XML) (cont’d.)
• Extensible Markup Language (XML) – Metalanguage to represent and manipulate data
elements
– Facilitates exchange of structured documents over the Web
– Allows definition of new tags • Case sensitive • Must be well-formed and properly nested • Comments indicated with <- and ->
• XML and xml prefixes reserved for XML tags only
Database Systems, 10th Edition 35
Database Systems, 10th Edition 36
Document Type Definitions (DTD) and XML Schemas
• Document Type Definition (DTD) – File with .dtd extension that describes elements
– Provides composition of database’s logical model
– Defines the syntax rules or valid tags for each type of XML document
• Companies engaging in e-commerce transaction must develop and share DTDs
• DTD referenced from inside XML document
Database Systems, 10th Edition 37
Database Systems, 10th Edition 38
Document Type Definitions (DTD) and XML Schemas (cont’d.)
• XML schema – Advanced data definition language
– Describes the structure of XML data documents
• Advantage of XML schema: – More closely maps to database terminology and
features
• XML schema definition (XSD) file uses syntax similar to XML document
Database Systems, 10th Edition 39
XML Presentation
• XML separates data structure from presentation and processing
• Extensible Style Language (XSL) displays XML data – Defines the rules by which XML data are
formatted and displayed
– Two parts: • Extensible Style Language Transformations
(XSLT) • XSL style sheets
Database Systems, 10th Edition 40
Database Systems, 10th Edition 41
Database Systems, 10th Edition 42
Database Systems, 10th Edition 43
XML Applications
• B2B exchanges • Legacy systems integration • Web page development • Database support • Database meta-dictionaries • XML databases • XML services
Database Systems, 10th Edition 44
Cloud Computing Services
• Cloud computing – “A computing model for enabling ubiquitous,
convenient, on-demand network access to a shared pool of configurable computer resources that can be rapidly provisioned and released with minimal management effort or service provider interaction.”
– Potential to become a “game changer”
Database Systems, 10th Edition 45
Database Systems, 10th Edition 46
Cloud Implementation Types
• Public cloud • Private cloud • Community cloud
Database Systems, 10th Edition 47
Characteristics of Cloud Services
• Ubiquitous access via Internet technologies. • Shared infrastructure • Lower costs and variable pricing • Flexible and scalable services • Dynamic provisioning • Service orientation • Managed operations
Database Systems, 10th Edition 48
Types of Cloud Services
• Software as a Service (SaaS) • Platform as a Service (PaaS) • Infrastructure as a Service (IaaS)
Database Systems, 10th Edition 49
Cloud Services: Advantages and Disadvantages
Database Systems, 10th Edition 50
SQL Data Services
• Cloud computing data management service • Provides relational data management to
companies of any size • Avoids high cost of personnel/maintenance • Leverages Internet to provide:
– Hosted data management – Standard protocols – A common programming interface
• Could assist businesses with limited information technology resources
Database Systems, 10th Edition 51
Summary
• Database connectivity: – Ways in which programs connect and
communicate with data repositories
• Database connectivity software known as database middleware
• Database repository also known as data source – Represents data management application used to
store data generated by the program
• Microsoft interfaces are dominant players – ODBC, OLE-DB, ADO.NET
Database Systems, 10th Edition 52
Summary (cont’d.)
• Microsoft’s Universal Data Access (UDA) architecture – Collection of technologies to access any type of
data source using common interface
• Native database connectivity: interface provided by database vendor – ODBC is Microsoft's implementation of SQL
Access Group Call Level Interface • Allows any Windows application to access
relational data sources using SQL
Database Systems, 10th Edition 53
Summary (cont’d.)
• OLE-DB adds object-oriented functionality for access to data
• ActiveX Data Objects provide interface with OLE-DB, DAO, and RDO
• ADO.NET is data access component of Microsoft .NET framework
• Java Database Connectivity (JDBC) interfaces with Java applications with data sources
Database Systems, 10th Edition 54
Summary (cont’d.)
• Database access through the Web uses middleware
• On client side of Web browser, use plug-ins, Java and JavaScript, ActiveX, and VBScript
• On server side, middleware expands functionality of Web servers – Links them to wide range of services
• XML provides semantics to share structured documents across the Web – Produces description and representation of data
Database Systems, 10th Edition 55
Summary (cont’d.)
• Cloud computing – Computing model that provides ubiquitous, on-
demand access to a shared pool of configurable resources that can be rapidly provisioned
• SQL data services (SDS) – Cloud computing-based data management
service that provides relational data storage, ubiquitous access, and local management to companies of all sizes
Database Systems, 10th Edition 56
- Database Systems: Design, Implementation, and Management Tenth Edition
- Objectives
- Objectives (cont’d.)
- Database Connectivity
- Native SQL Connectivity
- PowerPoint Presentation
- ODBC, DAO, and RDO
- ODBC, DAO, and RDO (cont’d.)
- Slide 9
- Slide 10
- Slide 11
- Slide 12
- OLE-DB
- OLE-DB (cont’d.)
- Slide 15
- ADO.NET
- Slide 17
- ADO.NET (cont’d.)
- Java Database Connectivity (JDBC)
- Slide 20
- Database Internet Connectivity
- Slide 22
- Web-to-Database Middleware: Server-Side Extensions
- Slide 24
- Web Server Interfaces
- Slide 26
- The Web Browser
- Client-Side Extensions
- Client-Side Extensions (cont’d.)
- Web Application Servers
- Web Database Development
- Slide 32
- Slide 33
- Extensible Markup Language (XML)
- Extensible Markup Language (XML) (cont’d.)
- Slide 36
- Document Type Definitions (DTD) and XML Schemas
- Slide 38
- Document Type Definitions (DTD) and XML Schemas (cont’d.)
- XML Presentation
- Slide 41
- Slide 42
- Slide 43
- XML Applications
- Cloud Computing Services
- Slide 46
- Cloud Implementation Types
- Characteristics of Cloud Services
- Types of Cloud Services
- Cloud Services: Advantages and Disadvantages
- SQL Data Services
- Summary
- Summary (cont’d.)
- Slide 54
- Slide 55
- Slide 56