internet與資料庫
最後更新:2017-02-28
來源:互聯網
上載者:User
資料|資料庫 internet與資料庫
http://tech.sina.com.cn 2000/04/14 軟體世界 中國科學院軟體研究所李春曉
時代變了,問候語也變了。朋友見面,一句“吃了嗎?”,別
人准以為你剛從曆史中鑽出來,改問“上網了嗎?”說不定一聊就刹不住車。
而“Internet”、“資料庫”,恐怕早已是電腦業內人士及廣大愛好者們津津樂道的詞彙了,足見Int ernet和資料庫發展的如火如荼、勢不可擋。
走進Internet
彈指一揮間,Internet發展至今,正當而立之年的它,像一個龐大的蜘蛛網覆蓋著我們的星球。
究其本源,Internet的名字來源於美國國防部的一個名為“The Internetting Proj ect”網路項目,即ARPAnet。後來,由於美國國家基金會NSF(National Science Foun dation)的巨資投入,使得NSFnet在80年代後期成為Internet的主幹網。到了90年代,ANS公司 (Advanced Network& Service INC.)組建了新的高速主幹網ANSNET,並迅速與NS Fnet的全部主幹網點連通,從而成為目前的Internet主幹網。隨即Internet呈燎原之勢,遍及全球。
當我們用一台步入Internet時,我們已在面對整個世界。
那麼,Internet都能幹些什嗎?
Internet的服務
細說Internet的服務,數以萬計,但歸結起來大致可以分為三類:基本服務、資訊服務和新聞公告類服務,見表1。
在Internet的各類服務中,發展最快、最深入人心的當數WWW(World Wide Web)。它使用的技術主要是超文本標誌語言HTML(Hyper Text Markup Language)和全球資源定位器U RL(Universal Resource locator),其精彩之處在於,只需手握滑鼠輕輕一點便能“漫遊” 全球,漫遊過程恰與人腦的發散思維合拍。
WWW呼喚資料庫
WWW網上最基本的傳輸單位是頁面,一個預先寫好的頁面(靜態頁面)總是被儲存在WWW伺服器的檔案系統中。
起初,WWW只支援較簡單的文檔,隨著應用需求的不斷提高和技術的發展,它不僅可以支援文字、圖形、映像、聲音等多媒體資訊,還可以支援一些較為複雜的對象,比如試算表對象。Web頁面中的精華是被稱為“超連結”的特殊本文,使用者使用瀏覽器從WWW伺服器上讀取頁面,而超連結能夠使使用者在不同的頁面之間自由轉移,即所謂的“漫遊”。
一個WWW的資訊提供者在資訊量及變動較少的情況下,可以不辭辛苦,一個一個寫頁面,然後存放在WWW伺服器中守株待兔。一旦資料量大到一定程度,顯然只靠靜態頁面就捉襟見肘了。讓頁面動起來的想法由此應運而生,這時只好請資料庫粉墨登場,在“動態網頁面”中扮演主角。
資料庫的登場,不僅解決了動態性,同時也讓那些有即時性、互動性要求的使用者滿意而歸。
走進資料庫
相對於Internet來說,“資料庫”的名詞在50年代就已出現,可謂老資格了。為了管理複雜而龐大的資料,人們研究了各種組織、使用資料的方法,於是乎就有了各種資料庫的結構模型,總括起來,不外乎層次型、網路型、關係型和物件導向型。但四個兄弟中,還是關係型算老大,應用得最多。看來搞好關係並不是人的專利。
較大型的資料庫,比如Oracle、IBM、Informix、Sybase等,都可以有效地組織和管理大批量資料,並且進行快速的查詢。這正是Web資料庫應用的基礎。
Web與資料庫的結合
將Web與資料庫相結合,開發動態Web資料庫應用,已成為一門新技術。要瞭解資料庫所處的位置,通過動靜頁面處理上的比較就不言自明了。
除了通用閘道介面(CGI)之外,還可以用API(API)實現與資料庫的互動。CGI提供了一種與資料庫連接的簡單方法,但它的局限性也是明顯的,對於每次請求都要重新啟動CGI程式,既影響速度又浪費資源,導致效能降低和等待時間增加。與CGI相比,API應用程式與Web伺服器結合更緊密,佔用系統的資源也要少得多,運行效率大大提高。但API也不全是優點,因為開發API應用程式要比開發CGI應用程式複雜得多,而且各種API之間相容性較差。
除了在Web伺服器端採用上述方法之外,還可以通過Web瀏覽器把應用下載到用戶端運行,在用戶端直接存取資料庫。用戶端應用程式套件括:Java Applet、ActiveX、Plug-in等,其中最典型的是Java App let。
在Java Applet中訪問資料庫,可以使用JDBC(Java Database Connectiv ity)技術,通過JDBC提供的API來實現對分布在網上的不同資料庫的各種操作,還可以把對資料庫的訪問交給專用伺服器來完成,而Java Applet通過與專用的伺服器的Socket通訊來傳遞資料庫操作的請求和結果。
流行的Web資料庫產品
1.Microsoft
Microsoft的Web伺服器產品為Internet Information Server(IIS) ,它提供ISAPI(Intranet Server API)作為擴充Web伺服器功能的編程介面;同時,它還提供一個Internet資料庫連接器(IDC),可以實現對資料庫的查詢和更新。Microsoft的另一個產品是Mi crosoft Visual InterDev,又提出了ASP(Active Server Pages)作為實現動態Web應用的解決方案。Microsoft Visual InterDev是一個Web應用快速開發環境,它提供了伺服器和客戶機端的編程工具、資料庫工具和內容編輯工具,還提供整合化的網站管理功能。
2.Netscape
為了提高效能,Netscape在它的Web伺服器中引進了APINSAPI(Netscape Server API)。利用NSAPI,開發人員可以擴充伺服器的功能,包括對外部資料庫的訪問。NSAPI可支援 Windows NT、Solaris和HP/UX等平台,但目前還缺少較好的開發工具來進行NSAPI的直接編程。
3.Oracle
Oracle WebServer不僅僅是一個Web伺服器產品,通過其高效率、多線程的可伸縮體繫結構,O racle WebServer能與Oracle資料庫有效結合,並提供相應的開發環境,因而也是開發Web資料庫應用的工具。
4.Informix
IUWA與其他Web解決方案不同,它在Informix資料庫中智能化地管理全部Web應用程式,包括HT ML文檔、應用程式模板及各種多媒體內容。主要有IUWC、IUServer、資料刀片等工具和服務。
5.Borland
Borland在開發工具方面一直居領先地位,特別表現在它基於DBE(Borland Databa En gine)的開放資料庫連接技術及Delphi的可視化快速應用程式開發(RAD)工具等方面。Delphi的客戶/ 伺服器版本不僅是一種高效的客戶/伺服器快速應用開發工具,更提供了面向Web應用的新技術。
6.Sybase
Sybase提出了串連Web伺服器和Sybase資料庫伺服器的一個中介軟體Web.sql,可運行於Win dows NT、SUN Solaris等平台;它支援CGI和NSAPI兩種介面。Sybase的PB(Power Builder)從5.0起也增加了許多對Internet的支援,使得開發人員可以快速地建立、動態Web伺服器的應用。
總之,以上產品和技術各有特色,但還沒有一種能夠同時相容不同的作業系統、Web伺服器和資料庫系統,並且具有較好的開發和運行效率。因此在設計系統時要各種因素綜合考慮。
表1
服務類別服務名稱簡述
基本類電子郵件(E_mail)通過網路實現Internet使用者之間的快速、低廉的通訊。
基本類遠程登入(Telnet) Internet使用者通過Telnet協議,用模擬終端方式遠程登入到In ternet主機。
基本類檔案傳送服務(FTP) Internet使用者通過FTP協議,將檔案在電腦間傳送。
資訊類 Gopher意為“go for”,通過Gopher協議,使用多級菜單介面為Internet使用者提供資訊查詢功能。
資訊類 WAIS為Internet使用者提供自動查詢分布在網上的各類資料庫的功能。
資訊類 WWW(World Wide Web)基於超文本的資訊查詢工具,可實現全球範圍的各類資訊的檢索。
新聞公告類網路新聞(Usenet)利用網路進行討論的國際論壇。
新聞公告類電子公告板(BBS)發布公告資訊。