Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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 BernersLee, 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 text/html text/plain image/gif ... Name File Extension Hypertext .htm, html Text .txt 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 (filesharing 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 publishing example Form ASP Request Network database applications The continuum between thin and thick clients Thin 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> [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 machineindependent (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 Java database applications: thin and thick clients 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