




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
任務1大數據基礎認知任務2數據庫基礎認知項目一大數據基礎什么是大數據/video/BV17P4y157Ke任務1大數據基礎知識01一、數據庫、數據庫系統及數據庫管理系統的基本概念數據庫(DataBase,簡稱DB):就是數據的倉庫,是長期儲存在計算機內的、有組織的、可共享的數據集合。數據庫中的數據按一定的數據模型組織、描述和儲存,具有較小的冗余度、較高的數據獨立性和易擴展性,并可被各種用戶共享。
數據庫系統(DataBaseSystem,簡稱DBS):是指在計算機系統中引入數據庫后的系統,一般由數據庫、數據庫管理系統(及其開發工具)、應用系統、數據庫管理員構成。解析數據庫系統和數據庫是兩個概念。數據庫系統是一個人一機系統,數據庫是數據庫系統的一個組成部分。但是在日常工作中人們常常把數據庫系統簡稱為數據庫。
數據庫管理系統(DataBaseManagementSystem,簡稱DBMS):是位于用戶與操作系統之間的一層數據管理軟件,用于科學地組織和存儲數據、高效地獲取和維護數據。數據庫管理系統是用來對數據進行存儲、管理等操作的軟件。數據庫管理系統的主要功能包括數據定義、數據操縱、數據庫的運行管理、數據庫的建立和維護。(一)大數據的起源二、數據庫分類數據庫通常分為層次式數據庫、網絡式數據庫和關系式數據庫三種。而不同的數據庫是按不同的數據結構來聯系和組織的。而在當今的互聯網中,最常見的數據庫模型主要是兩種,即關系型數據庫(SQL)和非關系型數據庫(NoSQL,NotOnlySQL)。(一)大數據的起源
(一)關系型數據庫1.關系型數據庫的基本概念關系型數據庫是指采用了關系模型來組織數據的數據庫,其以行和列的形式存儲數據,以便用戶理解。關系型數據庫這一系列的行和列被稱為表,一組表組成了數據庫。關系模型可以簡單理解為二維表格模型,而一個關系型數據庫就是由二維表及其之間的關系組成的一個數據組織。二維表格模型見表1-1。
表1-1二維表格模型
關系型數據庫的最大特點就是事務的一致性。傳統的關系型數據庫讀寫操作都是事務的,具有ACID,即Atomic(原子性)、Consistency(一致性)、Isolation(隔離性)和Durability(持久性)的特點,這個特性使得關系型數據庫可以用于幾乎所有對一致性有要求的系統中,如典型的銀行系統。常見的關系型數據庫有以下幾種,見表1-2。
表1-2關系型數據庫類型2.關系型數據庫的特性關系型數據庫以其強大的功能備受業界青睞,并應用廣泛。其具有以下特性:(1)關系型數據庫,是指采用了關系模型來組織數據的數據庫。(2)關系型數據庫的最大特點就是事務的一致性。(3)關系模型指的就是二維表格模型,而一個關系型數據庫就是由二維表及其之間的聯系所組成的一個數據組織。03
關系型數據庫有以下優點:(1)容易理解:二維表結構是非常貼近邏輯世界的一個概念,關系模型相對網狀、層次等其他模型來說更容易理解。(2)使用方便:通用的SQL語言使得操作關系型數據庫非常方便。(3)易于維護:豐富的完整性(實體完整性、參照完整性和用戶定義的完整性)大大降低了數據冗余和數據不一致的概率。04關系型數據庫有以下缺點:(1)數據讀寫必須經過sql解析,大量數據、高并發下讀寫性能不足。對于傳統關系型數據庫來說,硬盤I/O是一個很大的瓶頸。(2)具有固定的表結構,因此擴展困難。(3)多表的關聯查詢導致性能欠佳。3.MySQL概述MySQL本質上是一個數據庫管理系統,最初是由“MySQLAB公司”開發的一套關系型數據庫管理系統(RDBMS-RelationDataBaseManagementSystem)。MySQL不僅是最流行的開源數據庫,而且是業界成長最快的數據庫,每天有超過7萬次的下載量,其應用范圍從大型企業到專有的嵌入應用系統。在MySQL服務器中,可以創建很多數據庫(database)。
MySQLAB是由:兩個瑞典人DavidAxmark、AllanLarsson和一個荷蘭人Michael“Monty”Widenius在瑞典創辦的。2008年年初,SunMicrosystems收購了MySQLAB公司。2009年,Oracle收購了Sun公司,使MySQL并入Oracle的數據庫產品線。MySQL是開放源碼的小型關系型數據庫管理系統,廣泛應用在中小型網站中,總體擁有成本低,規模較Oracle和DB2小。其具有以下優點:(1)體積小、速度快、總體擁有成本低,開源,提供的接口支持多種語言連接操作,支持多種操作系統。(2)MySQL的核心程序采用完全的多線程編程。線程是輕量級的進程,它可以靈活地為用戶提供服務,而不過多的系統資源。用多線程和C語言實現的MySQL能很容易充分利用CPU。(3)MySQL有一個非常靈活而且安全的權限和口令系統。當客戶與MySQL服務器連接時,它們之間所有的口令傳送被加密,而且MySQL支持主機認證。
(4)MySQL能夠提供很多不同的使用者界面,包括命令行客戶端操作、網頁瀏覽器,以及各式各樣的程序語言界面,如C++、Perl、Java、PHP,以及Python。用戶可以使用事先包裝好的客戶端,或者干脆自己寫一個合適的應用程序。MySQL可用于Unix、Windows,以及OS/2等平臺,因此它可以用在個人電腦或者服務器上。在使用過程中,MySQL的某些特性也限制了其進一步發展,其缺點如下:(1)不支持熱備份。(2)MySQL不支持自定義數據類型。(3)MySQL最大的缺點是其安全系統,主要是復雜而非標準,另外只有到調用mysqladmin來重讀用戶權限時才發生改變。(4)MySQL對存儲過程和觸發器支持不夠良好。(5)盡管MySQL理論上仍是開源產品,也有人抱怨它誕生之后更新緩慢,但是應該注意到有一些基于MySQL并完整集成的數據庫(如MariaDB)在標準的MySQL基礎上帶來了額外價值。(6)MySQL對XML支持不夠良好。
(二)非關系型數據庫1.非關系型數據庫的基本概念非關系型數據庫,也叫Nosql數據庫,全稱是notnolysql。非關系型數據庫提出另一種理念,例如,以鍵值對存儲,且結構不固定,每一個元組可以有不一樣的字段,每個元組可以根據需要增加一些自己的鍵值對,這樣就不會局限于固定的結構,可以減少一些時間和空間的開銷。使用這種方式,用戶可以根據需要去添加自己需要的字段,這樣,為了獲取用戶的不同信息,不需要像關系型數據庫中要對多表進行關聯查詢,僅需要根據id取出相應的value就可以完成查詢。NoSQL數據存儲不需要固定的表結構,通常也不存在連接操作,就是表與表之間沒有直接關系,創建的話也不用遵循三大范式,并且是以鍵值對存儲。它的結構不固定,每一個元組可以有不一樣的字段,每個元組可以根據需要增加一些自己的鍵值對,這樣就不會局限于固定的結構,可以減少一些時間和空間的開銷,可以處理超大量的數據,運行在便宜的PC服務器集群上,能很大程度上節省開銷。常見的非關系型數據庫有:MongoDB、NoSql、Redis、Memcached、HBase等。2.非關系型數據庫的特性非關系型數據庫主要是為了解決復雜、海量數據的存儲問題,具有較高水平的橫向拓展水平。其有以下特性:(1)模式自由:不需要定義表結構,數據表中的每條記錄都可能有不同的屬性和格式。(2)逆規范化:不遵循范式要求,去掉完整性約束,減少表之間的依賴。(3)彈性可擴展:可在系統運行的過程中動態地刪除和增加節點。(4)多副本異步復制:數據快速寫入一個節點,其余節點通過讀取寫入的日志來實現異步復制。(5)弱事務:不能完全滿足事務的ACID特性,但是可以保證事務的最終一致性。非關系型數據庫為非結構化的存儲方式,基于多維關系模型,而且具有特有的使用場景。其優點有以下幾點:(1)高并發,大數據下讀寫能力較強。(2)基于鍵值對的,數據之間沒有耦合性,可以想象成表中的主鍵和值的對應關系,而且不需要經過SQL層的解析,所以讀寫性能非常高。(3)基本支持分布式,易于擴展,可伸縮。(4)簡單,弱結構化存儲。非關系型數據庫的缺點如下:(1)不提供SQL支持,學習和使用成本較高;(2)無事務處理,附加功能bi和報表等支持也不好。
三、SQL概述SQL(StructuredQueryLanguage)全稱為結構化查詢語言,是一種特殊目的的編程語言,是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統。通俗來講,SQL就是用來和數據庫打交道,用SQL語言完成和數據庫的通信,SQL也是一套標準。結構化查詢語言是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的數據庫系統可以使用相同的結構化查詢語言作為數據輸入與管理的接口。結構化查詢語言語句可以嵌套,這使它具有極大的靈活性和強大的功能。
1.SQL語言的特點(1)綜合統一。SQL語言集數據定義語言(DDL)、數據操縱語言(DML)、數據控制語言(DCL)功能于一體,可以獨立完成數據庫生命周期中的全部活動。(2)高度非過程化。非關系型數據模型的數據操縱語言“面向過程”,必須指定存取路徑,而SQL只要提出“做什么”,無須了解存取路徑。存取路徑的選擇以及SQL的操作過程由系統自動完成。(3)面向集合的操作方式。SQL采用集合操作方式,操作對象、查找結果可以是元組的集合,一次插入、刪除、更新操作的對象也可以是元組的集合。(4)以同一種語法結構提供多種使用方式。SQL是獨立的語言,能夠獨立地用于聯機交互的使用方式。SQL又是嵌入式語言,能夠嵌入高級語言(如C、C++、Java)程序中,供程序員設計程序時使用。(5)語言簡單,易學易用。盡管SQL的功能很強,但語言十分簡潔,核心功能只用了9個動詞。SQL的語法接近英語口語,所以用戶很容易學習和使用。2.結構化查詢語言包含的6個部分(1)數據查詢語言(DataQueryLanguage,DQL):也稱為“數據檢索語句”,用以從表中獲得數據,確定數據怎樣在應用程序給出。保留字SELECT是DQL(也是所有SQL)用得最多的動詞,其他DQL常用的保留字有WHERE、ORDERBY、GROUPBY和HAVING。這些DQL保留字常與其他類型的SQL語句一起使用。(2)數據操作語言(DataManipulationLanguage,DML):其語句包括動詞INSERT、UPDATE和DELETE,它們分別用于添加、修改和刪除。(3)事務控制語言(TCL):其語句能確保被DML語句影響的表的所有行及時得以更新,包括COMMIT(提交)命令、SAVEPOINT(保存點)命令、ROLLBACK(回滾)命令。(4)數據控制語言(DCL):其語句通過GRANT或REVOKE實現權限控制,確定單個用戶和用戶組對數據庫對象的訪問。某些RDBMS可用GRANT或REVOKE控制對表單個列的訪問。(5)數據定義語言(DDL):其語句包括動詞CREATE、ALTER和DROP。在數據庫中創建新表或修改、刪除表(CREATTABLE或DROPTABLE),為表加入索引等。(6)指針控制語言(CCL):其語句像DECLARECURSOR、FETCH
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 海洋能與可再生能源的協同開發研究-洞察闡釋
- 樂理卷子試題及答案高中
- 跨境金融服務創新-第2篇-洞察闡釋
- 2025農產品種子繁育及購銷合同模板
- 車輛借用合同車輛使用期間車輛使用記錄協議
- 成品柴油銷售區域保護與競爭限制合同
- 餐飲企業員工宿舍租賃及服務合同模板
- 2025年短期工《勞動合同》模板
- 江蘇發改委工作報告
- 國企崗位應聘筆試題目及答案
- 2024年度危廢培訓完整課件
- 結婚函調報告表
- 四年級數學下冊期末考試卷及答案1套
- 建筑工程技術專業實習總結
- HG∕T 4712-2014 甲氧胺鹽酸鹽
- 小學必背古詩練習題(四年級下冊)(含答案)
- 湘教版小學科學復習總結資料三到六年級
- 圖書批發業的存貨管理與成本控制
- 女裝專業知識
- 鐵路隧道掘進機法技術規程
- 二年級語文下冊第一至八單元復習教案
評論
0/150
提交評論