




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
NoSQL基本原理及常用開(kāi)源實(shí)現(xiàn)培訓(xùn)PPT周凱
二〇一四年一月二十七日課程內(nèi)容NoSQL介紹NoSQL在系統(tǒng)架構(gòu)中的應(yīng)用NoSQL產(chǎn)品介紹及對(duì)比NoSQL安裝應(yīng)用演示課程內(nèi)容NoSQL介紹NoSQL在系統(tǒng)架構(gòu)中的應(yīng)用NoSQL產(chǎn)品介紹及對(duì)比NoSQL安裝應(yīng)用演示NoSQL介紹NoSQL基本概念NoSQL數(shù)據(jù)庫(kù)分類(lèi)NoSQL是什么?NoSQL概念在2009年被提了出來(lái)NoSQL最常見(jiàn)的解釋是“non-relational”,“NotOnlySQL”也被很多人接受NoSQL被我們用得最多的當(dāng)數(shù)key-value存儲(chǔ),當(dāng)然還有其他的文檔型的、列存儲(chǔ)、圖型數(shù)據(jù)庫(kù)、xml數(shù)據(jù)庫(kù)等。在NoSQL概念提出之前,這些數(shù)據(jù)庫(kù)就被用于各種系統(tǒng)當(dāng)中,但是卻很少用于web互聯(lián)網(wǎng)應(yīng)用。比方cdb、qdbm、bdb數(shù)據(jù)庫(kù)。傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)的瓶頸傳統(tǒng)的關(guān)系數(shù)據(jù)庫(kù)具有不錯(cuò)的性能,高穩(wěn)定型,久經(jīng)歷史考驗(yàn),而且使用簡(jiǎn)單,功能強(qiáng)大,同時(shí)也積累了大量的成功案例。在互聯(lián)網(wǎng)領(lǐng)域,MySQL成為了絕對(duì)靠前的王者,毫不夸張的說(shuō),MySQL為互聯(lián)網(wǎng)的開(kāi)展做出了卓越的奉獻(xiàn)。在90年代,一個(gè)網(wǎng)站的訪問(wèn)量一般都不大,用單個(gè)數(shù)據(jù)庫(kù)完全可以輕松應(yīng)付。在那個(gè)時(shí)候,更多的都是靜態(tài)網(wǎng)頁(yè),動(dòng)態(tài)交互類(lèi)型的網(wǎng)站不多。到了最近10年,網(wǎng)站開(kāi)始快速開(kāi)展?;鸨恼搲⒉┛?、sns、微博逐漸引領(lǐng)web領(lǐng)域的潮流。在初期,論壇的流量其實(shí)也不大,如果你接觸網(wǎng)絡(luò)比較早,你可能還記得那個(gè)時(shí)候還有文本型存儲(chǔ)的論壇程序,可以想象一般的論壇的流量有多大。Memcached+MySQL后來(lái),隨著訪問(wèn)量的上升,幾乎大局部使用MySQL架構(gòu)的網(wǎng)站在數(shù)據(jù)庫(kù)上都開(kāi)始出現(xiàn)了性能問(wèn)題,web程序不再僅僅專(zhuān)注在功能上,同時(shí)也在追求性能。程序員們開(kāi)始大量的使用緩存技術(shù)來(lái)緩解數(shù)據(jù)庫(kù)的壓力,優(yōu)化數(shù)據(jù)庫(kù)的結(jié)構(gòu)和索引。開(kāi)始比較流行的是通過(guò)文件緩存來(lái)緩解數(shù)據(jù)庫(kù)壓力,但是當(dāng)訪問(wèn)量繼續(xù)增大的時(shí)候,多臺(tái)web機(jī)器通過(guò)文件緩存不能共享,大量的小文件緩存也帶了了比較高的IO壓力。在這個(gè)時(shí)候,Memcached就自然的成為一個(gè)非常時(shí)尚的技術(shù)產(chǎn)品。Memcached作為一個(gè)獨(dú)立的分布式的緩存效勞器,為多個(gè)web效勞器提供了一個(gè)共享的高性能緩存效勞,在Memcached效勞器上,又開(kāi)展了根據(jù)hash算法來(lái)進(jìn)行多臺(tái)Memcached緩存效勞的擴(kuò)展,然后又出現(xiàn)了一致性hash來(lái)解決增加或減少緩存效勞器導(dǎo)致重新hash帶來(lái)的大量緩存失效的弊端。當(dāng)時(shí),如果你去面試,你說(shuō)你有Memcached經(jīng)驗(yàn),肯定會(huì)加分的。性能優(yōu)化方向Mysql主從讀寫(xiě)別離由于數(shù)據(jù)庫(kù)的寫(xiě)入壓力增加,Memcached只能緩解數(shù)據(jù)庫(kù)的讀取壓力。讀寫(xiě)集中在一個(gè)數(shù)據(jù)庫(kù)上讓數(shù)據(jù)庫(kù)不堪重負(fù),大局部網(wǎng)站開(kāi)始使用主從復(fù)制技術(shù)來(lái)到達(dá)讀寫(xiě)別離,以提高讀寫(xiě)性能和讀庫(kù)的可擴(kuò)展性。Mysql的master-slave模式成為這個(gè)時(shí)候的網(wǎng)站標(biāo)配了。分表分庫(kù)隨著web2.0的繼續(xù)高速開(kāi)展,在Memcached的高速緩存,MySQL的主從復(fù)制,讀寫(xiě)別離的根底之上,這時(shí)MySQL主庫(kù)的寫(xiě)壓力開(kāi)始出現(xiàn)瓶頸,而數(shù)據(jù)量的持續(xù)猛增,由于MyISAM使用表鎖,在高并發(fā)下會(huì)出現(xiàn)嚴(yán)重的鎖問(wèn)題,大量的高并發(fā)MySQL應(yīng)用開(kāi)始使用InnoDB引擎代替MyISAM。同時(shí),開(kāi)始流行使用分表分庫(kù)來(lái)緩解寫(xiě)壓力和數(shù)據(jù)增長(zhǎng)的擴(kuò)展問(wèn)題。這個(gè)時(shí)候,分表分庫(kù)成了一個(gè)熱門(mén)技術(shù),是業(yè)界討論的熱門(mén)技術(shù)問(wèn)題。也就在這個(gè)時(shí)候,MySQL推出了還不太穩(wěn)定的表分區(qū),這也給技術(shù)實(shí)力一般的公司帶來(lái)了希望。雖然MySQL推出了MySQLCluster集群,但是由于在互聯(lián)網(wǎng)幾乎沒(méi)有成功案例,性能也不能滿(mǎn)足互聯(lián)網(wǎng)的要求,只是在高可靠性上提供了非常大的保證。MySQL的擴(kuò)展性瓶頸在互聯(lián)網(wǎng),大局部的MySQL都應(yīng)該是IO密集型的,事實(shí)上,如果你的MySQL是個(gè)CPU密集型的話(huà),那么很可能你的MySQL設(shè)計(jì)得有性能問(wèn)題,需要優(yōu)化了。大數(shù)據(jù)量高并發(fā)環(huán)境下的MySQL應(yīng)用開(kāi)發(fā)越來(lái)越復(fù)雜,也越來(lái)越具有技術(shù)挑戰(zhàn)性。分表分庫(kù)的規(guī)那么把握都是需要經(jīng)驗(yàn)的。雖然有像淘寶這樣技術(shù)實(shí)力強(qiáng)大的公司開(kāi)發(fā)了透明的中間件層來(lái)屏蔽開(kāi)發(fā)者的復(fù)雜性,但是防止不了整個(gè)架構(gòu)的復(fù)雜性。分庫(kù)分表的子庫(kù)到一定階段又面臨擴(kuò)展問(wèn)題。還有就是需求的變更,可能又需要一種新的分庫(kù)方式。MySQL數(shù)據(jù)庫(kù)也經(jīng)常存儲(chǔ)一些大文本字段,導(dǎo)致數(shù)據(jù)庫(kù)表非常的大,在做數(shù)據(jù)庫(kù)恢復(fù)的時(shí)候就導(dǎo)致非常的慢,不容易快速恢復(fù)數(shù)據(jù)庫(kù)。比方1000萬(wàn)4KB大小的文本就接近40GB的大小,如果能把這些數(shù)據(jù)從MySQL省去,MySQL將變得非常的小。關(guān)系數(shù)據(jù)庫(kù)很強(qiáng)大,但是它并不能很好的應(yīng)付所有的應(yīng)用場(chǎng)景。MySQL的擴(kuò)展性差〔需要復(fù)雜的技術(shù)來(lái)實(shí)現(xiàn)〕,大數(shù)據(jù)下IO壓力大,表結(jié)構(gòu)更改困難,正是當(dāng)前使用MySQL的開(kāi)發(fā)人員面臨的問(wèn)題。NoSQL誕生的原因關(guān)系型數(shù)據(jù)庫(kù)面臨的問(wèn)題擴(kuò)展困難:由于存在類(lèi)似Join這樣多表查詢(xún)機(jī)制,使得數(shù)據(jù)庫(kù)在擴(kuò)展方面很艱難;讀寫(xiě)慢:這種情況主要發(fā)生在數(shù)據(jù)量到達(dá)一定規(guī)模時(shí)由于關(guān)系型數(shù)據(jù)庫(kù)的系統(tǒng)邏輯非常復(fù)雜,使得其非常容易發(fā)生死鎖等的并發(fā)問(wèn)題,所以導(dǎo)致其讀寫(xiě)速度下滑非常嚴(yán)重;本錢(qián)高:企業(yè)級(jí)數(shù)據(jù)庫(kù)的License價(jià)格很驚人,并且隨著系統(tǒng)的規(guī)模,而不斷上升;有限的支撐容量:現(xiàn)有關(guān)系型解決方案還無(wú)法支撐Google這樣海量的數(shù)據(jù)存儲(chǔ);數(shù)據(jù)庫(kù)訪問(wèn)的新需求低延遲的讀寫(xiě)速度:應(yīng)用快速地反響能極大地提升用戶(hù)的滿(mǎn)意度;支撐海量的數(shù)據(jù)和流量:對(duì)于搜索這樣大型應(yīng)用而言,需要利用PB級(jí)別的數(shù)據(jù)和能應(yīng)對(duì)百萬(wàn)級(jí)的流量;大規(guī)模集群的管理:系統(tǒng)管理員希望分布式應(yīng)用能更簡(jiǎn)單的部署和管理;龐大運(yùn)營(yíng)本錢(qián)的考量:IT經(jīng)理們希望在硬件本錢(qián)、軟件本錢(qián)和人力本錢(qián)能夠有大幅度地降低;NoSQL數(shù)據(jù)庫(kù)的共有原那么假設(shè)失效是必然發(fā)生的NOSQL實(shí)現(xiàn)都建立在硬盤(pán)、機(jī)器和網(wǎng)絡(luò)都會(huì)失效這些假設(shè)之上。我們不能徹底阻止這些時(shí)效,我們需要讓我們的系統(tǒng)能夠在即使非常極端的條件下也能應(yīng)付這些失效。對(duì)數(shù)據(jù)進(jìn)行分區(qū)最小化了失效帶來(lái)的影響,也將讀寫(xiě)操作的負(fù)載分布到了不同的機(jī)器上。保存同一數(shù)據(jù)的多個(gè)副本大局部NOSQL實(shí)現(xiàn)都基于數(shù)據(jù)副本的熱備份來(lái)保證連續(xù)的高可用性。一些實(shí)現(xiàn)提供了API,可以控制副本的復(fù)制,也就是說(shuō),當(dāng)你存儲(chǔ)一個(gè)對(duì)象的時(shí)候,你可以在對(duì)象級(jí)指定你希望保存的副本數(shù)。查詢(xún)支持在這個(gè)方面,不同的實(shí)現(xiàn)有相當(dāng)本質(zhì)的區(qū)別。不同實(shí)現(xiàn)的一個(gè)共性在于哈希表中的key/value匹配。關(guān)系數(shù)據(jù)庫(kù)VSNoSQL關(guān)系數(shù)據(jù)庫(kù)表都是存儲(chǔ)一些格式化的數(shù)據(jù)結(jié)構(gòu)每個(gè)元組字段的組成都一樣即使不是每個(gè)元組都需要所有的字段,但數(shù)據(jù)庫(kù)會(huì)為每個(gè)元組分配所有的字段這樣的結(jié)構(gòu)可以便于表與表之間進(jìn)行連接等操作NoSQL以鍵值對(duì)存儲(chǔ),它的結(jié)構(gòu)不固定每一個(gè)元組可以有不一樣的字段每個(gè)元組可以根據(jù)需要增加一些自己的鍵值對(duì)不會(huì)局限于固定的結(jié)構(gòu),可以減少一些時(shí)間和空間的開(kāi)銷(xiāo)關(guān)系數(shù)據(jù)庫(kù)VSNoSQL關(guān)系數(shù)據(jù)庫(kù)分布式關(guān)系型數(shù)據(jù)庫(kù)中強(qiáng)調(diào)的ACID分別是:原子性〔Atomicity〕、一致性〔Consistency〕、隔離性〔Isolation〕、持久性〔Durability〕。ACID的目的就是通過(guò)事務(wù)支持,保證數(shù)據(jù)的完整性和正確性NoSQL對(duì)于許多互聯(lián)網(wǎng)應(yīng)用來(lái)說(shuō),對(duì)于一致性要求可以降低,而可用性(Availability)的要求那么更為明顯,從而產(chǎn)生了弱一致性的理論BASE。BASE分別是英文:Basically,Available,Soft-state,EventualConsistency的縮寫(xiě),這個(gè)模型是反ACID模型。NoSQL和關(guān)系數(shù)據(jù)庫(kù)NoSQL數(shù)據(jù)庫(kù)僅僅是關(guān)系數(shù)據(jù)庫(kù)在某些方面〔性能、擴(kuò)展〕的一個(gè)彌補(bǔ)單從功能上講,NoSQL的幾乎所有的功能,在關(guān)系數(shù)據(jù)庫(kù)上都能夠滿(mǎn)足。一般會(huì)把NoSQL和關(guān)系數(shù)據(jù)庫(kù)進(jìn)行結(jié)合使用,各取所長(zhǎng),各得其所。在某些應(yīng)用場(chǎng)合,比方一些配置的關(guān)系鍵值映射存儲(chǔ)、用戶(hù)名和密碼的存儲(chǔ)、Session會(huì)話(huà)存儲(chǔ)等等用NoSQL完全可以替代關(guān)系數(shù)據(jù)庫(kù)(如:MySQL)存儲(chǔ)。不但具有更高的性能,而且開(kāi)發(fā)也更加方便NoSQL的優(yōu)缺點(diǎn)優(yōu)點(diǎn)簡(jiǎn)單的擴(kuò)展 典型例子是Cassandra,由于其架構(gòu)是類(lèi)似于經(jīng)典的P2P,所以能通過(guò)輕松地添加新的節(jié)點(diǎn)來(lái)擴(kuò)展這個(gè)集群;快速的讀寫(xiě) 主要例子有Redis,由于其邏輯簡(jiǎn)單,而且純內(nèi)存操作,使得其性能非常出色,單節(jié)點(diǎn)每秒可以處理超過(guò)10萬(wàn)次讀寫(xiě)操作;低廉的本錢(qián) 這是大多數(shù)分布式數(shù)據(jù)庫(kù)共有的特點(diǎn),因?yàn)橹饕际情_(kāi)源軟件,沒(méi)有昂貴的License本錢(qián);缺乏不提供對(duì)SQL的支持 如果不支持SQL這樣的工業(yè)標(biāo)準(zhǔn),將會(huì)對(duì)用戶(hù)產(chǎn)生一定的學(xué)習(xí)和應(yīng)用遷移本錢(qián);支持的特性不夠豐富 現(xiàn)有產(chǎn)品所提供的功能都比較有限,大多數(shù)NoSQL數(shù)據(jù)庫(kù)都不支持事務(wù),也不像MSSQLServer和Oracle那樣能提供各種附加功能,比方BI和報(bào)表等;現(xiàn)有產(chǎn)品的不夠成熟 大多數(shù)產(chǎn)品都還處于初創(chuàng)期,和關(guān)系型數(shù)據(jù)庫(kù)幾十年的完善不可同日而語(yǔ);總結(jié)NoSQL數(shù)據(jù)庫(kù)的出現(xiàn),彌補(bǔ)了關(guān)系數(shù)據(jù)〔比方MySQL〕在某些方面的缺乏,在某些方面能極大的節(jié)省開(kāi)發(fā)本錢(qián)和維護(hù)本錢(qián)。MySQL和NoSQL都有各自的特點(diǎn)和使用的應(yīng)用場(chǎng)景,兩者的緊密結(jié)合將會(huì)給web2.0的數(shù)據(jù)庫(kù)開(kāi)展帶來(lái)新的思路。讓關(guān)系數(shù)據(jù)庫(kù)關(guān)注在關(guān)系上,NoSQL關(guān)注在存儲(chǔ)上。NoSQL介紹NoSQL基本概念NoSQL數(shù)據(jù)庫(kù)分類(lèi)按CAP分類(lèi)一致性〔Consistency〕任何一個(gè)讀操作總是能讀取到之前完成的寫(xiě)操作結(jié)果,也就是在分布式環(huán)境中,多點(diǎn)的數(shù)據(jù)是一致的;可用性〔Availability〕每一個(gè)操作總是能夠在確定的時(shí)間內(nèi)返回,也就是系統(tǒng)隨時(shí)都是可用的。分區(qū)容忍性〔PartitionTolerance〕在出現(xiàn)網(wǎng)絡(luò)分區(qū)〔比方斷網(wǎng)〕的情況下,別離的系統(tǒng)也能正常運(yùn)行。一個(gè)分布式系統(tǒng)不能同時(shí)滿(mǎn)足一致性,可用性和分區(qū)容錯(cuò)性這三個(gè)需求,最多只能同時(shí)滿(mǎn)足兩個(gè)。CAP理論標(biāo)題關(guān)注一致性和可用性的(CA)這些數(shù)據(jù)庫(kù)對(duì)于分區(qū)容忍性方面比較不感冒,主要采用復(fù)制〔Replication〕這種方式來(lái)保證數(shù)據(jù)的平安性,常見(jiàn)的CA系統(tǒng)有:傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù),比方Postgres和MySQL等(Relational)Vertica(Column-oriented)AsterData(Relational)Greenplum(Relational)按CAP分類(lèi)關(guān)注一致性和分區(qū)容忍性的(CP)這種系統(tǒng)將數(shù)據(jù)分布在多個(gè)網(wǎng)絡(luò)分區(qū)的節(jié)點(diǎn)上,并保證這些數(shù)據(jù)的一致性,但是對(duì)于可用性的支持方面有問(wèn)題,比方當(dāng)集群出現(xiàn)問(wèn)題的話(huà),節(jié)點(diǎn)有可能因無(wú)法確保數(shù)據(jù)是一致性的而拒絕提供效勞,主要的CP系統(tǒng)有:BigTable(Column-oriented)Hypertable(Column-oriented)HBase(Column-oriented)MongoDB(Document)Terrastore(Document)Redis(Key-value)Scalaris(Key-value)MemcacheDB(Key-value)BerkeleyDB(Key-value)按CAP分類(lèi)關(guān)于可用性和分區(qū)容忍性的(AP)這類(lèi)系統(tǒng)主要以實(shí)現(xiàn)“最終一致性〔EventualConsistency〕”來(lái)確??捎眯院头謪^(qū)容忍性,AP的系統(tǒng)有:Dynamo(Key-value)Voldemort(Key-value)TokyoCabinet(Key-value)KAI(Key-value)Cassandra(Column-oriented)CouchDB(Document-oriented)SimpleDB(Document-oriented)Riak(Document-oriented)按CAP分類(lèi)按數(shù)據(jù)模型分類(lèi)NoSQL-三種主流的數(shù)據(jù)模型Column-oriented〔列式〕主要圍繞著“列〔Column〕”,而非“行〔Row〕”進(jìn)行數(shù)據(jù)存儲(chǔ)屬于同一列的數(shù)據(jù)會(huì)盡可能地存儲(chǔ)在硬盤(pán)同一個(gè)頁(yè)〔Page〕中大多數(shù)列式數(shù)據(jù)庫(kù)都支持ColumnFamily這個(gè)特性〔很多類(lèi)似數(shù)據(jù)倉(cāng)庫(kù)〔DataWarehouse〕的應(yīng)用,雖然每次查詢(xún)都會(huì)處理很多數(shù)據(jù),但是每次所涉及的列并沒(méi)有很多〕特點(diǎn):比較適合匯總〔Aggregation〕和數(shù)據(jù)倉(cāng)庫(kù)這類(lèi)應(yīng)用。Key-value類(lèi)似常見(jiàn)的HashTable,一個(gè)Key對(duì)應(yīng)一個(gè)Value,但是其能提供非常快的查詢(xún)速度、大的數(shù)據(jù)存放量和高并發(fā)操作,非常適合通過(guò)主鍵對(duì)數(shù)據(jù)進(jìn)行查詢(xún)和修改等操作,雖然不支持復(fù)雜的操作,但可通過(guò)上層的開(kāi)發(fā)來(lái)彌補(bǔ)這個(gè)缺陷。Document〔文檔〕類(lèi)似常見(jiàn)的HashTable,一個(gè)Key對(duì)應(yīng)一個(gè)Value,其能提供非??斓牟樵?xún)速度、大的數(shù)據(jù)存放量和高并發(fā)操作,非常適合通過(guò)主鍵對(duì)數(shù)據(jù)進(jìn)行查詢(xún)和修改等操作,雖然不支持復(fù)雜的操作,但是可以通過(guò)上層的開(kāi)發(fā)來(lái)彌補(bǔ)這個(gè)缺陷。NoSQL按數(shù)據(jù)模型分類(lèi)選擇適宜的NoSQLNoSQL數(shù)據(jù)庫(kù)的出現(xiàn),彌補(bǔ)了關(guān)系數(shù)據(jù)〔比方MySQL〕在某些方面的缺乏,在某些方面能極大的節(jié)省開(kāi)發(fā)本錢(qián)和維護(hù)本錢(qián)。MySQL和NoSQL都有各自的特點(diǎn)和使用的應(yīng)用場(chǎng)景,兩者的緊密結(jié)合將會(huì)給web2.0的數(shù)據(jù)庫(kù)開(kāi)展帶來(lái)新的思路。讓關(guān)系數(shù)據(jù)庫(kù)關(guān)注在關(guān)系上,NoSQL關(guān)注在存儲(chǔ)上。課程內(nèi)容NoSQL介紹NoSQL在系統(tǒng)架構(gòu)中的應(yīng)用NoSQL產(chǎn)品介紹及對(duì)比NoSQL安裝應(yīng)用演示NoSQL在系統(tǒng)架構(gòu)中的應(yīng)用以NoSQL為輔以NoSQL為主以NoSQL為緩存以NoSQL為輔NoSQL作為鏡像不改變?cè)械囊訫ySQL作為存儲(chǔ)的架構(gòu),使用NoSQL作為輔助鏡像存儲(chǔ),用NoSQL的優(yōu)勢(shì)輔助提升性能。在原有基于MySQL數(shù)據(jù)庫(kù)的架構(gòu)上增加了一層輔助的NoSQL存儲(chǔ),在寫(xiě)入MySQL數(shù)據(jù)庫(kù)后,同時(shí)寫(xiě)入到NoSQL數(shù)據(jù)庫(kù),讓MySQL和NoSQL擁有相同的鏡像數(shù)據(jù)在某些可以根據(jù)主鍵查詢(xún)的地方,使用高效的NoSQL數(shù)據(jù)庫(kù)查詢(xún)NoSQL為鏡像〔同步模式〕通過(guò)MySQL把數(shù)據(jù)同步到NoSQL中,,是一種對(duì)寫(xiě)入透明但是具有更高技術(shù)難度一種模式適用于現(xiàn)有的比較復(fù)雜的老系統(tǒng),通過(guò)修改代碼不易實(shí)現(xiàn),可能引起新的問(wèn)題。同時(shí)也適用于需要把數(shù)據(jù)同步到多種類(lèi)型的存儲(chǔ)中。以NoSQL為輔MySQL和NoSQL組合MySQL中只存儲(chǔ)需要查詢(xún)的小字段,NoSQL存儲(chǔ)所有數(shù)據(jù)。把需要查詢(xún)的字段,一般都是數(shù)字,時(shí)間等類(lèi)型的小字段存儲(chǔ)于MySQL中,根據(jù)查詢(xún)建立相應(yīng)的索引,其他不需要的字段,包括大文本字段都存儲(chǔ)在NoSQL中。在查詢(xún)的時(shí)候,我們先從MySQL中查詢(xún)出數(shù)據(jù)的主鍵,然后從NoSQL中直接取出對(duì)應(yīng)的數(shù)據(jù)即可。以NoSQL為輔NoSQL在系統(tǒng)架構(gòu)中的應(yīng)用以NoSQL為輔以NoSQL為主以NoSQL為緩存純NoSQL架構(gòu)在一些數(shù)據(jù)結(jié)構(gòu)、查詢(xún)關(guān)系非常簡(jiǎn)單的系統(tǒng)中,我們可以只使用NoSQL即可以解決存儲(chǔ)問(wèn)題。在一些數(shù)據(jù)庫(kù)結(jié)構(gòu)經(jīng)常變化,數(shù)據(jù)結(jié)構(gòu)不定的系統(tǒng)中,就非常適合使用NoSQL來(lái)存儲(chǔ)。比方監(jiān)控系統(tǒng)中的監(jiān)控信息的存儲(chǔ),可能每種類(lèi)型的監(jiān)控信息都不太一樣。有些NoSQL數(shù)據(jù)庫(kù)已經(jīng)具有局部關(guān)系數(shù)據(jù)庫(kù)的關(guān)系查詢(xún)特性,他們的功能介于key-value和關(guān)系數(shù)據(jù)庫(kù)之間,卻具有key-value數(shù)據(jù)庫(kù)的性能,根本能滿(mǎn)足絕大局部web2.0網(wǎng)站的查詢(xún)需求。以NoSQL為主以NoSQL為數(shù)據(jù)源的架構(gòu)數(shù)據(jù)直接寫(xiě)入NoSQL,再通過(guò)NoSQL同步協(xié)議復(fù)制到其他存儲(chǔ)。根據(jù)應(yīng)用的邏輯來(lái)決定去相應(yīng)的存儲(chǔ)獲取數(shù)據(jù)。應(yīng)用程序只負(fù)責(zé)把數(shù)據(jù)直接寫(xiě)入到NoSQL數(shù)據(jù)庫(kù),然后通過(guò)NoSQL的復(fù)制協(xié)議,把NoSQL數(shù)據(jù)的每次寫(xiě)入,更新,刪除操作都復(fù)制到MySQL數(shù)據(jù)庫(kù)中。同時(shí),也可以通過(guò)復(fù)制協(xié)議把數(shù)據(jù)同步復(fù)制到全文檢索實(shí)現(xiàn)強(qiáng)大的檢索功能。這種架構(gòu)需要考慮數(shù)據(jù)復(fù)制的延遲問(wèn)題,這跟使用MySQL的master-salve模式的延遲問(wèn)題是一樣的,解決方法也一樣。以NoSQL為主NoSQL在系統(tǒng)架構(gòu)中的應(yīng)用以NoSQL為輔以NoSQL為主以NoSQL為緩存內(nèi)存模式Memcached提供了相當(dāng)高的讀寫(xiě)性能,在互聯(lián)網(wǎng)開(kāi)展過(guò)程中,一直是緩存效勞器的首選。NoSQL數(shù)據(jù)庫(kù)Redis又為我們提供了功能更加強(qiáng)大的內(nèi)存存儲(chǔ)功能。跟Memcached比,Redis的一個(gè)key的可以存儲(chǔ)多種數(shù)據(jù)結(jié)構(gòu)Strings、Hashes、Lists、Sets、Sortedsets。Redis不但功能強(qiáng)大,而且它的性能完全超越大名鼎鼎的Memcached。Redis支持List、hashes等多種數(shù)據(jù)結(jié)構(gòu)的功能,提供了更加易于使用的api和操作性能,比方對(duì)緩存的list數(shù)據(jù)的修改。以NoSQL為緩存由于NoSQL數(shù)據(jù)庫(kù)天生具有高性能、易擴(kuò)展的特點(diǎn),所以我們常常結(jié)合關(guān)系數(shù)據(jù)庫(kù),存儲(chǔ)一些高性能的、海量的數(shù)據(jù)。從另外一個(gè)角度看,根據(jù)NoSQL的高性能特點(diǎn),它同樣適合用于緩存數(shù)據(jù)。用NoSQL緩存數(shù)據(jù)可以分為內(nèi)存模式和磁盤(pán)持久化模式。持久化模式雖然基于內(nèi)存的緩存效勞器具有高性能,低延遲的特點(diǎn),但是內(nèi)存本錢(qián)高、內(nèi)存數(shù)據(jù)易失卻不容無(wú)視。大局部互聯(lián)網(wǎng)應(yīng)用的特點(diǎn)都是數(shù)據(jù)訪問(wèn)有熱點(diǎn),也就是說(shuō),只有一局部數(shù)據(jù)是被頻繁訪問(wèn)的。其實(shí)NoSQL數(shù)據(jù)庫(kù)內(nèi)部也是通過(guò)內(nèi)存緩存來(lái)提高性能的,通過(guò)一些比較好的算法把熱點(diǎn)數(shù)據(jù)進(jìn)行內(nèi)存cache非熱點(diǎn)數(shù)據(jù)存儲(chǔ)到磁盤(pán)以節(jié)省內(nèi)存占用使用NoSQL來(lái)做緩存,由于其不受內(nèi)存大小的限制,我們可以把一些不常訪問(wèn)、不怎么更新的數(shù)據(jù)也緩存起來(lái)。以NoSQL為緩存課程內(nèi)容NoSQL介紹NoSQL在系統(tǒng)架構(gòu)中的應(yīng)用NoSQL產(chǎn)品介紹及對(duì)比NoSQL安裝應(yīng)用演示NoSQL產(chǎn)品介紹及比照Memcache Redis MongoDB OracleTimesTenHbase Memcache是什么?Memcache有什么特點(diǎn)?Memcache在什么場(chǎng)景下適用?Memcache具體怎么用?在用Memcache中碰到的問(wèn)題?NoSQL-MemcacheMemcache是什么Memcache是個(gè)高性能的基于內(nèi)存的分布式緩存系統(tǒng),Memcache的分布式是基于客戶(hù)端的Key的hash來(lái)做均衡,是個(gè)偽分布式的系統(tǒng)。Memcache有2個(gè)組件,一個(gè)客戶(hù)端〔java〕,一個(gè)效勞器端c編寫(xiě)。NoSQL-MemcacheMemcache的特點(diǎn)基于內(nèi)存〔但是重啟了后,數(shù)據(jù)喪失〕。提供簡(jiǎn)單的get,set方法。緩存對(duì)象只能小于1M。安裝,使用比較簡(jiǎn)單。NoSQL-MemcacheMemcache的使用場(chǎng)景中小型網(wǎng)站應(yīng)用中來(lái)存放非可靠性的只讀數(shù)據(jù)。例如存放用戶(hù)的信息。網(wǎng)站的計(jì)數(shù)。數(shù)據(jù)庫(kù)DAO前的行記錄緩存。全局的代碼參數(shù)。NoSQL-MemcacheMemcache具體怎么用安裝libevent安裝./configure-prefix=/usrmakemakeinstallNoSQL-MemcacheMemcache具體怎么用memcache安裝./configure-with-libevent=/usrmakemakeinstallNoSQL-MemcacheMemcache的啟動(dòng)參數(shù)啟動(dòng)./memcached-d-m10240-p11211-uroot啟動(dòng)參數(shù)啟動(dòng)參數(shù)說(shuō)明-d選項(xiàng)是啟動(dòng)一個(gè)守護(hù)進(jìn)程,后臺(tái)掛起跑-m是分配給Memcache使用的內(nèi)存數(shù)量,單位是MB-u是運(yùn)行Memcache的用戶(hù)-l是監(jiān)聽(tīng)的效勞器IP地址,如果有多個(gè)地址的話(huà),-p是設(shè)置Memcache監(jiān)聽(tīng)的端口-c選項(xiàng)是最大運(yùn)行的并發(fā)連接數(shù),默認(rèn)是1024,-P是設(shè)置保存Memcache的pid文件關(guān)閉killallmemcachedNoSQL-MemcacheMemcache-Java客戶(hù)端spymemcached官方,單線(xiàn)程
Javamemcachedclient
memcache-client-forjavaNoSQL-MemcacheJava客戶(hù)端操作MemcacheNoSQL-MemcacheMemcache中碰到的問(wèn)題Memcache無(wú)文件備份機(jī)制,機(jī)器重啟,數(shù)據(jù)掉失。只能存放1M的內(nèi)容,有一定的局限性。偽分布式存儲(chǔ),JAVA客戶(hù)端做HASH的路由,節(jié)點(diǎn)的增加和宕機(jī)都是會(huì)造成數(shù)據(jù)的掉失。只提供了核心的2個(gè)get/set命令,無(wú)其他豐富的API節(jié)點(diǎn)的增加和減少導(dǎo)致的數(shù)據(jù)問(wèn)題NoSQL-MemcacheHash一致性問(wèn)題解決方案1主從模式,主從模式之間保持?jǐn)?shù)據(jù)同步.2一致性Hash算法.3Redis來(lái)代替Memcache.NoSQL-MemcacheHash一致性NoSQL-MemcacheHash一致性NoSQL-MemcacheNoSQL產(chǎn)品介紹及比照Memcache Redis MongoDB OracleTimesTenHbase NoSQL-RedisRedis是什么?Redis能干嗎?Redis有什么特點(diǎn)?Redis在什么場(chǎng)景下適用?Redis具體怎么用?在用Redis中碰到的問(wèn)題?Redis是什么?Redis是一個(gè)用c語(yǔ)言寫(xiě)的類(lèi)似Memcache的key-value的存儲(chǔ)系統(tǒng),它比Memcache提供了更多的API接口和更好的并發(fā)性能,可以支持10萬(wàn)并發(fā)的讀寫(xiě),建議用Redis代替Memcahe。Redis是基于內(nèi)存的,因此部署Redis的機(jī)器對(duì)于內(nèi)存是非常有高的要求的,Redis是會(huì)把數(shù)據(jù)實(shí)時(shí)寫(xiě)到內(nèi)存中,再定時(shí)同步到文件。NoSQL-RedisRedis能干嘛?Redis可以當(dāng)作數(shù)據(jù)庫(kù)來(lái)用,但是有缺陷,在可靠性上,沒(méi)有Oracle關(guān)系型數(shù)據(jù)庫(kù)來(lái)的穩(wěn)定??梢宰鳛槌志脤拥腃ache層。可以緩存下面的數(shù)據(jù)庫(kù)結(jié)構(gòu)。計(jì)數(shù)排行典范,最新瀏覽的數(shù)據(jù)隊(duì)列〔訂閱關(guān)系〕NoSQL-RedisRedis特點(diǎn)?完全居于內(nèi)存,數(shù)據(jù)實(shí)時(shí)的讀寫(xiě)內(nèi)存,定時(shí)閃回到文件中讀寫(xiě)速度快支持高并發(fā)量,官方宣傳支持10萬(wàn)級(jí)別的并發(fā)讀寫(xiě)支持機(jī)器重啟后的,重新加載模式,不會(huì)掉數(shù)據(jù)NoSQL-RedisRedis適用場(chǎng)景?在非可靠數(shù)據(jù)存儲(chǔ)中,可以作為數(shù)據(jù)持久層或者是數(shù)據(jù)緩存區(qū)。對(duì)于讀寫(xiě)壓力比較大,實(shí)時(shí)性要求比較高的場(chǎng)景下。關(guān)系型數(shù)據(jù)庫(kù)不能勝任的模型下的場(chǎng)景。例如在SNS中訂閱關(guān)系。NoSQL-RedisRedis具體用法?安裝,啟動(dòng),關(guān)閉,配置,Java訪問(wèn)操作安裝$makeinstallNoSQL-RedisRedis–啟動(dòng)&關(guān)閉啟動(dòng)./src/redis-server/etc/redis.conf&關(guān)閉./src/redis-clishutdownNoSQL-RedisRedis的配置-根本配置Redis的核心配置文件,只有一個(gè),就是redis.conf文件,下面是列舉了核心的配置項(xiàng)。
配置項(xiàng)
值字段意義daemonizeno或者yes是不是需要在后臺(tái)運(yùn)行pidfile/var/run/redis.pidpid文件port6379啟動(dòng)端口bind127.0.0.1綁定IP,只有制定的IP地址才能夠訪問(wèn)redis實(shí)例timeout0一個(gè)客戶(hù)端空閑多少秒后關(guān)閉連接databases16數(shù)據(jù)庫(kù)數(shù)loglevelDebugVerboseNoticewarningdebug開(kāi)發(fā)和測(cè)試的時(shí)候配置verbose比debug信息少點(diǎn)notice基本信息,生產(chǎn)環(huán)境建議配置這個(gè)warning嚴(yán)重錯(cuò)誤的時(shí)候Redis的配置-快照配置
配置項(xiàng)
值字段意義save9001指出在多長(zhǎng)時(shí)間內(nèi),有多少次更新操作,就將數(shù)據(jù)同步到數(shù)據(jù)文件rdb,在15分鐘內(nèi),有1個(gè)key被改變就同步到文件中去rdbcompressionyes當(dāng)導(dǎo)出到.rdb數(shù)據(jù)庫(kù)時(shí)是否用LZF壓縮字符串對(duì)象rdbchecksumyes存儲(chǔ)和加載rdb文件時(shí)校驗(yàn)dbfilenamedump.rdb數(shù)據(jù)庫(kù)的文件名dir./工作目錄Redis的配置-同步配置
配置項(xiàng)
值字段意義slaveof127.0.0.16379主服務(wù)器地址masterauth<master-password>從服務(wù)器連接主服務(wù)器的時(shí)候的密碼slave-serve-stale-dataYes/no當(dāng)從庫(kù)正在做復(fù)制的同步工作的時(shí)候,從庫(kù)的工作模式,配置成yes了后繼續(xù)相應(yīng)客戶(hù)的請(qǐng)求,配置成no了后,不相應(yīng)客戶(hù)的請(qǐng)求。slave-read-onlyyes配置從庫(kù)為只讀模式,這個(gè)屬性只需要在主庫(kù)上配置,在從庫(kù)上配置沒(méi)什么意義的repl-ping-slave-period10從庫(kù)定時(shí)向主庫(kù)發(fā)送Ping的命令repl-timeout60從庫(kù)定時(shí)向主庫(kù)發(fā)送Ping的命令的超時(shí)時(shí)間slave-priority100如果主庫(kù)掛了的,會(huì)尋找找一個(gè)slave-priority最小的一個(gè),來(lái)變成主庫(kù)。Redis的配置-平安配置
配置項(xiàng)
值字段意義requirepassfoobaredredis的密碼,可以理解成Oracle數(shù)據(jù)庫(kù)的連接密碼一樣的。maxclients10000最大連接數(shù)maxmemory<bytes>最大內(nèi)存數(shù),給Redis使用的最大內(nèi)存數(shù)。maxmemory-policyvolatile-lruvolatile-randomallkeys->randomvolatile-ttlnoeviction當(dāng)Redis已經(jīng)存到最大內(nèi)存數(shù)的時(shí)候,這個(gè)時(shí)候 Redis使用的策略,下面是5個(gè)策略。volatile-lru->根據(jù)LRU算法生成的過(guò)期時(shí)間來(lái)刪除。allkeys-lru->根據(jù)LRU算法刪除任何key。volatile-random->根據(jù)過(guò)期設(shè)置來(lái)隨機(jī)刪除key。allkeys->random->無(wú)差別隨機(jī)刪。volatile-ttl->根據(jù)最近過(guò)期時(shí)間來(lái)刪除(輔以TTL)noeviction->誰(shuí)也不刪,直接在寫(xiě)操作時(shí)返回錯(cuò)誤Redis的配置-數(shù)據(jù)追加配置
配置項(xiàng)
值字段意義appendonlynoRedis是異步的把數(shù)據(jù)寫(xiě)到文件中去的,有時(shí)候機(jī)器重啟會(huì)導(dǎo)致正在寫(xiě)入的數(shù)據(jù)丟失掉的,如果appendonly屬性配置成yes了后,Redis會(huì)把數(shù)據(jù)實(shí)時(shí)的寫(xiě)到appendonly.aof文件中去,一旦Redis重啟的時(shí)候,就會(huì)加載這個(gè)文件的,那樣的話(huà),數(shù)據(jù)就不會(huì)丟掉了的.appendfilenameappendonly.aof累加文件名字appendfsyncNoAlwayseverysecalways馬上立即寫(xiě)到操作系統(tǒng)的文件中去,準(zhǔn)確性最高,但是代價(jià)也是最高的,速度比較慢了的,并且是IO開(kāi)銷(xiāo)是非常高的,配置成no不是立刻寫(xiě),everysec每秒寫(xiě)一次no-appendfsync-on-rewriteno當(dāng)Aoflog進(jìn)行重寫(xiě)時(shí),是否寫(xiě)日志時(shí)fsyncauto-aof-rewrite-percentage100當(dāng)日志文件超過(guò)原始的日志文件的多少的時(shí)候,就開(kāi)啟重寫(xiě)機(jī)制auto-aof-rewrite-min-size64M這次寫(xiě)入大小,超過(guò)多少大小了后,就開(kāi)啟重寫(xiě)機(jī)制Java操作RedisJava客戶(hù)端別表Jedis官方推薦Jredis推薦JDBC-Jredis不推薦RJC不推薦Redis-protocol不推薦NoSQL-RedisJava操作RedisRedis高級(jí)特性主從模式復(fù)制Redis支持主從同步。數(shù)據(jù)可以從主效勞器向任意數(shù)量的從效勞器上同步,從效勞器可以是關(guān)聯(lián)其他從效勞器的主效勞器。這使得Redis可執(zhí)行單層樹(shù)復(fù)制。從盤(pán)可以有意無(wú)意的對(duì)數(shù)據(jù)進(jìn)行寫(xiě)操作。發(fā)布訂閱模式由于完全實(shí)現(xiàn)了發(fā)布/訂閱機(jī)制,使得從數(shù)據(jù)庫(kù)在任何地方同步樹(shù)時(shí),可訂閱一個(gè)頻道并接收主效勞器完整的消息發(fā)布記錄。同步對(duì)讀取操作的可擴(kuò)展性和數(shù)據(jù)冗余很有幫助。NoSQL-RedisNoSQL產(chǎn)品介紹及比照Memcache Redis MongoDB OracleTimesTenHbase Mongdb是什么?Mongodb是一個(gè)底層用C++語(yǔ)言編寫(xiě)的一個(gè)分布式文件存儲(chǔ)系統(tǒng),可以簡(jiǎn)單的理解成一個(gè)類(lèi)Mysql數(shù)據(jù)庫(kù)的分布式文件系統(tǒng)。Mongodb底層是用C++語(yǔ)言編寫(xiě)的。一個(gè)分布式的文件存儲(chǔ)系統(tǒng)NoSQL-MongdbMongdb能干嘛?作為MySQL的代替品,存儲(chǔ)海量的相對(duì)非可靠的數(shù)據(jù),例如群眾點(diǎn)評(píng)的評(píng)論.淘寶網(wǎng)
NoSQL-MongdbMongdb特點(diǎn)?天生有分布式的優(yōu)點(diǎn)〔最強(qiáng)的一個(gè)優(yōu)點(diǎn)〕。海量文件,文本類(lèi)型數(shù)據(jù)的存儲(chǔ)。性能卓越的海量數(shù)據(jù)的存儲(chǔ)情況下的讀寫(xiě)性能。NoSQL-MongdbMongdb的數(shù)據(jù)模型Mongodb適用場(chǎng)景?MySQL的代替品或者是半代替品〔對(duì)復(fù)雜查詢(xún)要求不高的情況下〕讀壓力比寫(xiě)的壓力大的情況下的文件和文本類(lèi)型的數(shù)據(jù),并且數(shù)據(jù)量比較大。NoSQL-MongdbMongdb具體用法?安裝,啟動(dòng),關(guān)閉,配置,Java訪問(wèn)操作安裝解壓縮tar–xzvfmongodb-linux-i686-2.2.2.tgz新建數(shù)據(jù)庫(kù)目錄mkdir–p/data/dbNoSQL-MongdbMongdb–啟動(dòng)&關(guān)閉啟動(dòng)./mongod&關(guān)閉效勞端關(guān)閉 沒(méi)有掛起跑的話(huà)直接ctrl+c 掛起跑的話(huà)的話(huà)直接kill進(jìn)程號(hào) 客戶(hù)端關(guān)閉db.shutdownerver()
NoSQL-MongdbJava操作MongodbJava客戶(hù)端列表mongo-java-drivers://github/mongodb/mongo-java-driverNoSQL-MongdbJava操作MongodbNoSQL-MongdbNoSQL產(chǎn)品介紹及比照Memcache Redis MongoDB OracleTimesTenHbase NoSQL-OracleTimesTenTimesTen是什么?TimesTen能干嗎?TimesTen有什么特點(diǎn)?TimesTen在什么場(chǎng)景下適用?TimesTen具體怎么用?在用TimesTen中碰到的問(wèn)題?OracleTimesTen是什么OracleTimesTen是HP實(shí)驗(yàn)室人員在1992年做的一個(gè)內(nèi)存數(shù)據(jù)庫(kù)產(chǎn)品,后來(lái)惠普實(shí)驗(yàn)室的人成立了TimesTen公司,Oracle在2005年的時(shí)候把TimesTen收購(gòu)了的。NoSQL-OracleTimesTenOracleTimesTen特點(diǎn)及時(shí)響應(yīng)完全居于內(nèi)存,對(duì)于CPU,磁盤(pán)的IO壓力非常低。支持事物兼容標(biāo)準(zhǔn)SQL高性能高可用性
主從模式NoSQL-OracleTimesTenTT的物理組成NoSQL-OracleTimesTenTT物理結(jié)構(gòu)Sharedlibraries:共享庫(kù):可以理解為訪問(wèn)數(shù)據(jù)的驅(qū)動(dòng)程序內(nèi)存中的數(shù)據(jù)結(jié)構(gòu):表,索引在內(nèi)存的數(shù)據(jù)系統(tǒng)進(jìn)程:管理程序:備份程序磁盤(pán)上的檢查點(diǎn)和日志文件:數(shù)據(jù)和日志存入到磁盤(pán)文件上。NoSQL-OracleTimesTenTT的特性復(fù)制負(fù)載均衡可以作為Oracle數(shù)據(jù)庫(kù)的前端Cache,不支持其他數(shù)據(jù)庫(kù)支持本地的高速訪問(wèn)和網(wǎng)絡(luò)訪問(wèn)方式可靠性高。支持完整日志,支持鏡像復(fù)制功能。不是開(kāi)源代碼,需要較高費(fèi)用不支持存儲(chǔ)過(guò)程和觸發(fā)器NoSQL-OracleTimesTenTimesTen復(fù)制NoSQL-OracleTimesTenOracleTimesTen適用場(chǎng)景實(shí)時(shí)計(jì)費(fèi)系統(tǒng)(移動(dòng),聯(lián)通)基金,股票實(shí)時(shí)撮合交易系統(tǒng)網(wǎng)站Cache層或者是持久層
CCTV/
把用戶(hù)的信息存儲(chǔ)在TT中而不是關(guān)系數(shù)據(jù)庫(kù)中NoSQL-OracleTimesTenNoSQL-OracleTimesTenRDBMS特點(diǎn)1.數(shù)據(jù)以表格的形式出現(xiàn)2.每行為各種記錄名稱(chēng)3.每列為記錄名稱(chēng)所對(duì)應(yīng)的數(shù)據(jù)域4.許多的行和列組成一張表單5.假設(shè)干的表單組成databaseRDBMS指的就是關(guān)系型
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國(guó)8寸袖珍折疊自行車(chē)數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2019-2025年軍隊(duì)文職人員招聘之軍隊(duì)文職管理學(xué)自我檢測(cè)試卷B卷附答案
- 2019-2025年軍隊(duì)文職人員招聘之軍隊(duì)文職管理學(xué)與服務(wù)過(guò)關(guān)檢測(cè)試卷A卷附答案
- 康德三診物理試題及答案
- 保安文化測(cè)試試題及答案
- 小學(xué)生人際交往故事征文
- 企業(yè)虛擬專(zhuān)用網(wǎng)絡(luò)服務(wù)協(xié)議
- 《統(tǒng)計(jì)學(xué)的數(shù)據(jù)處理基礎(chǔ):初三數(shù)學(xué)教案》
- 產(chǎn)品銷(xiāo)量排行表-電商銷(xiāo)售統(tǒng)計(jì)
- 遼寧省朝陽(yáng)市建平縣2024-2025學(xué)年八年級(jí)上學(xué)期期末生物學(xué)試題(含答案)
- YJ-T 27-2024 應(yīng)急指揮通信保障能力建設(shè)規(guī)范
- 往年專(zhuān)業(yè)知識(shí)(水利水電)相關(guān)題目及答案
- 乳突根治護(hù)理查房
- 駱駝祥子選擇題100道及答案
- 2024年株洲師范高等專(zhuān)科學(xué)校高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 審計(jì)學(xué)知識(shí)點(diǎn)歸納總結(jié)
- 2024釔-90微球選擇性?xún)?nèi)放射治療肝臟惡性腫瘤規(guī)范化操作專(zhuān)家共識(shí)
- 2024年中郵保險(xiǎn)公司招聘筆試參考題庫(kù)含答案解析
- 浙江省杭州市2023年中考英語(yǔ)真題
- 浙教版科學(xué)七年級(jí)上冊(cè)全冊(cè)課件
- (中級(jí))心理治療師歷年考試真題匯總整理(含答案)
評(píng)論
0/150
提交評(píng)論