190 likes | 360 Views
Internet, intranet, and multimedia database processing. Database processing across local and wide area networks Alternative architectures for distributing application logic to network clients. Databases and networks. Synergy between database and network (Internet, intranets) technologies
E N D
Internet, intranet, and multimedia database processing Database processing across local and wide area networks Alternative architectures for distributing application logic to network clients
Databases and networks • Synergy between database and network (Internet, intranets) technologies • Examples? • Distance learning • Online testing • Electronic commerce • Planning (e.g., travel agents) • Banking • Voting, polling • …?
Terminology • Network: collection of computers communicating via a standard protocol • Public (Internet) • Private (intranets) • Internet: network of public networks (started by military to avoid single point of failure – ARPANET, 1960’s) • TCP/IP: Transmission Control Protocol / Internet Protocol
Internet applications/services • Email (messages) • FTP (file transfer) • Telnet (remote terminals) • Usenet (newsgroups) • IRC (chat) • WAIS (wide area information service) • HTTP (hypertext transfer) • ...
World Wide Web • All of the Internet services, with a standard hypertext interface accessible via client browsers from servers (HTTP) • HTML: Hypertext Markup Language • SGML: Standard Generalized Markup Language • Started to organize and exchange Physics data at CERN (Tim Berners-Lee, 1989)
More on the Web • HTML: text, tags, and anchors • <html><head><title>TWI</title></head><body>Welcome to <a href=“logo.gif”> Time-Wasting, Inc.</a></body></html> • URL: Uniform Resource Locator • protocol://servername[:port]/filepath • MIME: Multipurpose Internet Mail code • MIME Type Name File Extensiontext/html Hypertext .htm, htmltext/plain Text .txtimage/gif Graphics I.F. .gif...
Databases and the Internet • Can extend MIME types with application-specific files • Pro or con? Why? • Request oriented protocols • Pro or con? Why? • Stateless transactions • Pro or con? Why? True or false? • Insecure transactions • Pro or con? Why? True or false?
Intranets • Private LAN or WAN • Security • Disconnected from Internet • Firewall • Controlled data access, authentication... • Speed • 100Mbs (versus 28.8kbs) • Multimedia applications become feasible
Network database applications • Users execute applications on the client via a browser • The database resides on the server, together with the web server • The DBMS can reside at either end (file-sharing versus client-server)
Database publishing • Static report publishing: the report is created off-line, saved in HTML format, and posted on the Web • Query publishing: the client uses a form to issue a query as part of an HTTP request, the server creates the report in HTML format and sends it back as a response to the client • Application publishing: application code transfers to the client and executes locally
DB query publishingexample ASP Request Form
Network database applications • The continuum between thin and thick clients
<HTML> <HEAD><TITLE>SPAM site</TITLE></HEAD> <BODY> <FORM METHOD=“POST” ACTION=“/cgi_spam.pl”> Your email please: <INPUT TYPE=text NAME=“address”><P> <INPUT TYPE=submit> <INPUT TYPE=reset VALUE=“Cancel”> </FORM> </BODY> </HTML> Thin clients • [Client]form.html sends: • “execute cgi_spam.pl with argument address” • [Server]cgi_spam.pl responds: • “<HTML><HEAD><TITLE>Ack</TITLE></HEAD><BODY>You are done for.</BODY></HTML>”
Java database applications • Java is an OOPL (developed by Sun) • Java is compiled into machine-independent (portable) “bytecode” • Java bytecode is loaded from server to client, where it is interpreted and executed as a normal program • Java code can access the database via an ODBC interface or DBMS library
Microsoft Active Platform • Microsoft’s open architecture to deliver applications over the network • Various tools, services, and technologies • HTML and extensions • Scripting (JScript, VBScript, etc.) • Components (Java, ActiveX) • ActiveX controls • Based on OLE, COM, DCOM (Distributed Component Object Model) • Binary-level dynamic interface for Windows application (IUnknown, Query Interface) • Can be embedded into HTX documents
Support for network applications • Hyperlink (URL, UNC) data types • Application publishing (Java, ActiveX) • Tables, queries, and forms publishing • Static HTML (reports, too) • Dynamic HTML via ActiveX or 3rd-party ODBC “application servers” interacting with Microsoft internet servers • Need IDC and HTX or ASP files on server • What’s an example of an application server?
Multimedia database applications • Not necessarily related to networks • Can embed multimedia objects as links in databases: • Images • Sounds • Video • Large binary files: network bandwidth becomes a central issue
The future • Impact of databases on networks • Speed • Security • Electronic payment schemes • Agents to deal with dynamic pages (XML) • Impact of networks on databases • Huge new markets • New impetus for database research • Standardize interfaces • Simplify development