《如何學習及選擇大數據非關系型數據庫NoSQL》要點:
本文介紹了如何學習及選擇大數據非關系型數據庫NoSQL,希望對您有用。如果有疑問,可以聯系我們。
大數據技術在近幾年發展十分迅速,在互聯網公司以及傳統公司都得到了廣泛的應用.傳統的關系數據庫在應付web2.0網站,特別是超大規模和高并發的SNS類型的web2.0純動態網站已經顯得力不從心,暴露了很多難以克服的問題,而非關系型的數據庫NoSQL則由于其本身的特點得到了非常迅速的發展,NoSQL數據庫的產生就是為了辦理大規模數據集合多重數據種類帶來的挑戰,尤其是大數據應用難題NoSQL一直伴隨著大數據技術的發展,各種NoSQL層出不窮,應該如何學習及選擇NoSQL?我們通過幾個問題來讓大家全面了解NoSql,以便更好的學習.
489034603
一、大數據技術有哪些?它們和NoSQL的關系是什么?
大數據技術很多,占據主流地位的大數據技術有:Hadoop、Storm、Spark等,它們又是由很多更具體的技術所組成.好比組成Hadoop大數據平臺的技術有:HDFS、YARN、MapReduce、Ambari、Avro、Cassandra、Chukwa、HBase、Hive、Mahout、Pig、Tez、ZooKeeper等.
大數據技術是對海量的結構化和非結構化的數據進行提取、管理、處理、分析、存儲等的技術,所以大數據技術和NoSQL的關系是包括關系.NoSQL技術主要是面向結構化數據和非結構化數據進行存儲和管理的技術.所以NoSQL只是大數據的一個方面,大數據技術中,涉及存儲的還可以是關系數據庫,以及分布式文件系統等.
二、NoSQL興起的原因是什么?有哪些主要的類型?這些類型NoSQL的特點是什么?
主要是因為Web 2.0時代的到來,關系數據庫越來越不能滿足互聯網應用的需求,導致了NoSQL的興起.這些需求包含:
1)數據的高并發讀寫 2)數據的高可用性 3)海量數據存儲 4)海量數據的實時分析
NoSQL的主要類型包含:
1)文檔型數據庫 特點:面向集合存儲,模式自由,使用高效的二進制數據存儲等.
2)鍵值存儲數據庫 特點:以鍵為索引的存儲方式,拜訪速度極快.
3)圖數據庫 特點:以節點/關系/屬性為基礎存儲數據,善于處理大量復雜、互連接、低結構化的數據.
4)列式數據庫 特點:以列相關存儲架構進行數據存儲,適合于批量數據處理和即席查詢.
5)內存數據庫 特點:將數據放在內存中直接操作,數據處理速度比傳統數據庫的數據處理速度要快很多.
6)XML數據庫 特點:高效存儲XML數據,并支持XML內部查詢語法.
489034603
三、每種NoSQL有什么代表性的開源系統?其主要適合什么樣的場景?
1)文檔型數據庫
代表:MongoDB、CouchDB、CouchBase、MarkLogic、Clusterpoint
應用場景:適用于數據變化較少,執行預定義查詢,進行數據統計的應用程序.適用于必要提供數據版本支持的應用程序.
2)鍵值存儲數據庫
代表:Dynamo、FoundationDB、MemcacheDB、Redis、Riak、Aerospike
應用場景:高讀取、快速檢索.
3)圖數據庫
代表:Neo4j、OrientDB、ArangoDB、MapGraph
應用場景:社會關系,公共交通網絡,地圖及網絡拓譜.
4)列式數據庫
代表:Cassandra、HBase、Accumulo、Druid、Vertica
應用場景:適合于批量數據處理和即席查詢.
5)內存數據庫
代表:Redis、Membase
應用場景:適用于數據變化快且數據庫大小可遇見(適合內存容量)的應用程序.
四、如果需要本身構建一個NoSQL系統,主要需要考慮哪些核心問題?
首先確定適用的應用場景,功能大而全是不現實的.
其次根據應用場景確定存儲方式.
選擇存儲引擎,是自行開發還是借用開源引擎.
再次是設計拜訪協議,一般是基于TCP基礎上的自定義協議.
接著是開發管理系統,提供NoSQL數據庫的基本管理功能.
再次是編寫各種語言的驅動包.
最后是提供客戶端GUI工具.
489034603
讀完這篇文章,我相信大家對NoSQL應該有了一個全面的了解,NoSQL運用越來越普通,正在學習的小伙伴抓緊了,如果小伙伴想學習大數據技術,可以加下圖片下面的交流群,群里有很多學習視頻都可以下載,并且每天大數據架構師馬士兵老師都會在群里分享大數據的技術..
《如何學習及選擇大數據非關系型數據庫NoSQL》是否對您有啟發,歡迎查看更多與《如何學習及選擇大數據非關系型數據庫NoSQL》相關教程,學精學透。維易PHP學院為您提供精彩教程。