《大數據存儲技術與應用》 課件 項目五 深入半結構化數據存儲_第1頁
《大數據存儲技術與應用》 課件 項目五 深入半結構化數據存儲_第2頁
《大數據存儲技術與應用》 課件 項目五 深入半結構化數據存儲_第3頁
《大數據存儲技術與應用》 課件 項目五 深入半結構化數據存儲_第4頁
《大數據存儲技術與應用》 課件 項目五 深入半結構化數據存儲_第5頁
已閱讀5頁,還剩75頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《大數據存儲技術與應用》大數據存儲技術與應用項目五深入半結構化存儲任務一走進半結構化存儲技術什么是結構化數據?什么是MPP?結構化數據存儲的技術路線?Hadoop?回顧任務引入-云數據庫TencentDBforRedis騰訊云數據庫Redis(TencentDBforRedis)是騰訊云打造的兼容Redis協(xié)議的緩存和存儲服務。豐富的數據結構能幫助您完成不同類型的業(yè)務場景開發(fā)。支持主從熱備,提供自動容災切換、數據備份、故障遷移、實例監(jiān)控、在線擴容、數據回檔等全套的數據庫服務。任務描述:本節(jié)從半結構化數據入手,闡述了半結構化數據存儲技術和NoSQL技術,最后對NoSQL的典型代表Redis和MongoDB數據庫進行了簡單的描述。任務教學目標:了解NoSQL數據存儲。掌握Redis內存數據庫技術。掌握Elasticsearch存儲技術。任務概要教學內容半結構化數據概述半結構化數據存儲技術一二NoSQL概述NoSQL代表三四半結構化數據概述知識點一半結構化數據存儲概述半結構化數據具有一定的結構,但不如結構化數據那樣完整、規(guī)則和固定。半結構化數據具備如下特點:一是隱含的模式信息;二是不規(guī)則的結構;三是沒有嚴格的類型約束。半結構化數據存儲概述大數據半結構化數據存儲對數據存儲技術提出了新的需求:一是存儲容量的可擴展性和易擴展性;二是存儲技術應用場景的多樣性;三是存儲數據的快速訪問能力;四是存儲技術處理半結構化數據的能力。半結構化數據存儲技術知識點二

安裝依賴(53&54)本項目從半結構化數據存儲技術的特征和需求出發(fā),概括性地闡述了半結構化數據存儲技術,然后詳細介紹了典型的半結構化大數據存儲技術,即NoSQL存儲技術和ElasticSearch存儲技術,著重講解了存儲技術的概念、特點、安裝部署與基本操作,并通過應用實例詮釋了大數據半結構化數據存儲技術的應用實踐。通過本項目的學習,幫助讀者掌握大數據半結構化數據存儲技術及其應用的技能。半結構化數據存儲技術NoSQL概述知識點三

安裝依賴(53&54)NoSQL是一種不同于關系數據庫的數據庫管理系統(tǒng)設計方式,是對非關系型數據庫的統(tǒng)稱,它所采用的數據模型并非傳統(tǒng)關系數據庫的關系模型,而是類似鍵/值、列族、文檔等非關系模型。NoSQL數據庫沒有固定的表結構,通常也不存在連接操作,也沒有嚴格遵守ACID約束。(一)NoSQL概述

安裝依賴(53&54)(二)NoSQL的四大類型

安裝依賴(53&54)(三)NoSQL的三個基石

安裝依賴(53&54)(四)數據庫產品演變

安裝依賴(53&54)(五)數據庫產品分類NoSQL代表知識點四

安裝依賴(53&54)NoSQL代表任務小結本任務介紹了NoSQL數據庫的相關知識。NoSQL數據庫較好地滿足了大數據時代的各種非結構化數據的存儲需求,開始得到越來越廣泛的應用。但是,傳統(tǒng)的關系數據庫和NoSQL數據庫各有所長,彼此都有各自的市場空間,不存在一方完全取代另一方的問題,在很長的一段時期內,二者都會共同存在,滿足不同應用的差異化需求。NoSQL數據庫主要包括鍵值數據庫、列族數據庫、文檔數據庫和圖數據庫4種類型,不同產品都有各自的應用場合。CAP、BASE和最終一致性是NoSQL數據庫的三大理論基石,是理解NoSQL數據庫的基礎。擴展訓練Redis獨立學習Redis是一個開源(BSD許可)的,內存中的數據結構存儲系統(tǒng),它可以用作數據庫、緩存和消息中間件。它支持多種類型的數據結構,如:字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sortedsets)與范圍查詢,bitmaps,hyperloglogs和地理空間(geospatial)索引半徑查詢。Redis內置了復制(replication),LUA腳本(Luascripting),LRU驅動事件(LRUeviction),事務(transactions)和不同級別的磁盤持久化(persistence),并通過Redis哨兵(Sentinel)和自動分區(qū)(Cluster)提供高可用性(highavailability)。閱讀:/1.什么是半結構化數據?2.半結構化數據存儲的技術構成?作業(yè)謝謝!THANKS!《大數據存儲技術與應用》大數據存儲技術與應用項目五深入半結構化存儲任務二解析Redis內存數據庫技術什么是半結構化數據?什么是NoSQL?半結構化數據存儲技術的構成?Hadoop?回顧任務引入-云數據庫TencentDBforRedis騰訊云數據庫Redis(TencentDBforRedis)是騰訊云打造的兼容Redis協(xié)議的緩存和存儲服務。豐富的數據結構能幫助您完成不同類型的業(yè)務場景開發(fā)。支持主從熱備,提供自動容災切換、數據備份、故障遷移、實例監(jiān)控、在線擴容、數據回檔等全套的數據庫服務。任務描述:本節(jié)將系統(tǒng)的學習Redis內存數據庫技術。任務教學目標:了解Redis。掌握Redis安裝部署。掌握Redis數據類型、Redis數據操作。任務概要教學內容Redis概述數據類型一二Redis數據操作Redis應用場景三四Redis概述知識點一

安裝依賴(53&54)Redis使用內存中的數據集。根據實際應用場景,Redis可以將內存中的數據保存在磁盤中,系統(tǒng)重啟的時候可以再次加載;如果只需要一個功能豐富、聯(lián)網的內存緩存,還可以禁用持久性;Redis不僅支持簡單的鍵-值類型的數據,還支持列表、集合、哈希等數據結構;Redis支持主-從模式的數據備份。(一)Redis概述

安裝依賴(53&54)(二)Redis安裝配置[root@zte~]#cd/usr/local/[root@ztelocal]#lsbingamesliblibexecsbinsrcetcincludelib64redis-3.2.7.tar.gzshare[root@ztelocal]#tar-zxfredis-3.2.7.tar.gz[root@ztelocal]#mvredis-3.2.7redis[root@ztelocal]#lsbingamesliblibexecredis-3.2.7.tar.gzshareetcincludelib64redissbinsrc

安裝依賴(53&54)(二)Redis安裝配置[root@zteredis]#makecdsrc&&makeallmake[1]:Enteringdirectory`/usr/local/redis/src'CCadlist.o/bin/sh:cc:commandnotfoundmake[1]:***[adlist.o]Error127make[1]:Leavingdirectory`/usr/local/redis/src'make:***[all]Error2

安裝依賴(53&54)(二)Redis安裝配置[root@zteredis]#yum-yinstallgcc

安裝依賴(53&54)(二)Redis安裝配置[root@zteredis]#makecdsrc&&makeallmake[1]:Enteringdirectory`/usr/local/redis/src'CCadlist.oInfileincludedfromadlist.c:34:0:zmalloc.h:50:31:fatalerror:jemalloc/jemalloc.h:Nosuchfileordirectory#include<jemalloc/jemalloc.h>^compilationterminated.make[1]:***[adlist.o]Error1make[1]:Leavingdirectory`/usr/local/redis/src'make:***[all]Error2

安裝依賴(53&54)(二)Redis安裝配置[root@zteredis]#makeMALLOC=libccdsrc&&makeallmake[1]:Enteringdirectory`/usr/local/redis/src'rm-rfredis-serverredis-sentinelredis-cliredis-benchmarkredis-check-rdbredis-check-aof*.o*.gcda*.gcno*.gcovlcov-html(cd../deps&&makedistclean)make[2]:Enteringdirectory`/usr/local/redis/deps'(cdhiredis&&makeclean)>/dev/null||true(cdlinenoise&&makeclean)>/dev/null||true(cdlua&&makeclean)>/dev/null||true(cdgeohash-int&&makeclean)>/dev/null||true(cdjemalloc&&[-fMakefile]&&makedistclean)>/dev/null||true(rm-f.make-*)make[2]:Leavingdirectory`/usr/local/redis/deps'(rm-f.make-*)echoSTD=-std=c99-pedantic-DREDIS_STATIC=>>.make-settingsechoWARN=-Wall-W>>.make-settingsechoOPT=-O2>>.make-settingsechoMALLOC=libc>>.make-settingsechoCFLAGS=>>.make-settingsechoLDFLAGS=>>.make-settingsechoREDIS_CFLAGS=>>.make-settingsechoREDIS_LDFLAGS=>>.make-settingsechoPREV_FINAL_CFLAGS=-std=c99-pedantic-DREDIS_STATIC=-Wall-W-O2-g-ggdb-I../deps/geohash-int-I../deps/hiredis-I../deps/linenoise-I../deps/lua/src>>.make-settingsechoPREV_FINAL_LDFLAGS=-g-ggdb-rdynamic>>.make-settings(cd../deps&&makehiredislinenoiseluageohash-int)………..[省略]Hint:It'sagoodideatorun'maketest';)make[1]:Leavingdirectory`/usr/local/redis/src'

安裝依賴(53&54)(二)Redis安裝配置[root@zteredis]#makeinstallcdsrc&&makeinstallmake[1]:Enteringdirectory`/usr/local/redis/src'Hint:It'sagoodideatorun'maketest';)INSTALLinstallINSTALLinstallINSTALLinstallINSTALLinstallINSTALLinstallmake[1]:Leavingdirectory`/usr/local/redis/src'

安裝依賴(53&54)(二)Redis安裝配置[root@zteredis]#src/redis-server2763:C29Aug14:47:01.143#Warning:noconfigfilespecified,usingthedefaultconfig.Inordertospecifyaconfigfileusesrc/redis-server/path/to/redis.conf2763:M29Aug14:47:01.143*Increasedmaximumnumberofopenfilesto10032(itwasoriginallysetto1024)._.__.-``__''-.__.-```.`_.''-._Redis3.2.7(00000000/0)64bit.-``.-```.```\/_.,_''-._(',.-`|`,)Runninginstandalonemode|`-._`-...-`__...-.``-._|'`_.-'|Port:6379|`-._`._/_.-'|PID:2763`-._`-._`-./_.-'_.-'|`-._`-._`-.__.-'_.-'_.-'||`-._`-.__.-'_.-'|http://redis.io`-._`-._`-.__.-'_.-'_.-'|`-._`-._`-.__.-'_.-'_.-'||`-._`-.__.-'_.-'|`-._`-._`-.__.-'_.-'_.-'`-._`-.__.-'_.-'`-.__.-'`-.__.-'2763:M29Aug14:47:01.145#WARNING:TheTCPbacklogsettingof511cannotbeenforcedbecause/proc/sys/net/core/somaxconnissettothelowervalueof128.2763:M29Aug14:47:01.145#Serverstarted,Redisversion3.2.72763:M29Aug14:47:01.145#WARNINGovercommit_memoryissetto0!Backgroundsavemayfailunderlowmemorycondition.Tofixthisissueadd'vm.overcommit_memory=1'to/etc/sysctl.confandthenrebootorrunthecommand'sysctlvm.overcommit_memory=1'forthistotakeeffect.2763:M29Aug14:47:01.146#WARNINGyouhaveTransparentHugePages(THP)supportenabledinyourkernel.ThiswillcreatelatencyandmemoryusageissueswithRedis.Tofixthisissuerunthecommand'echonever>/sys/kernel/mm/transparent_hugepage/enabled'asroot,andaddittoyour/etc/rc.localinordertoretainthesettingafterareboot.RedismustberestartedafterTHPisdisabled.2763:M29Aug14:47:01.146*Theserverisnowreadytoacceptconnectionsonport6379數據類型知識點二

安裝依賴(53&54)(一)Redis數據類型Redis支持五種數據類型:string(字符串)hash(哈希)list(列表)set(集合)zset(sortedset:有序集合)。

安裝依賴(53&54)(二)stringstring是redis最基本的類型,string可以存儲任何數據。如圖片或者序列化的對象。該類型的值最大能存儲512MB。redis:6379>SETstr"您好!"OKredis:6379>GETstr"您好!"

安裝依賴(53&54)(二)RedishashRedishash是一個鍵值(key=>value)對集合。Redishash是一個string類型的field和value的映射表,hash特別適合用于存儲對象。

安裝依賴(53&54)(三)Redis列表Redis列表是簡單的字符串列表,按照插入順序排序??梢蕴砑右粋€元素到列表的頭部(左邊)或者尾部(右邊)。

安裝依賴(53&54)(四)SetRedis的Set是string類型的無序集合。

安裝依賴(53&54)(五)Rediszset和setRediszset和set一樣也是string類型元素的集合,且不允許重復的成員。不同的是每個元素都會關聯(lián)一個double類型的分數。redis正是通過分數來為集合中的成員進行從小到大的排序。zset的成員是唯一的,但分數(score)卻可以重復。

安裝依賴(53&54)(六)RedisGeo存儲地理位置信息RedisGeo存儲地理位置信息,該功能從Redis3.2版本新增。RedisGeo操作方法有:geoadd:增加地理位置坐標;geopos:獲取地理位置坐標;geodist:計算兩個點之間的距離;georadius:根據指定的經緯度坐標來獲取指定范圍內的地理位置集合;georadiusbymember:根據儲存在位置集合里的某個點獲取指定范圍內的地理位置集合;geohash:返回一個或多個位置對象的geohash值,見圖geoadd添加地理位置信息。RedisGeoAPI可以直接實現(xiàn)檢索附近的車輛、附近的酒店等功能。

安裝依賴(53&54)(六)RedisGeo存儲地理位置信息Redis數據操作知識點三

安裝依賴(53&54)Redis數據操作:6379>setCourse:1000000002:CNameLinux系統(tǒng)管理OK:6379>getCourse:1000000002:CNameLinux系統(tǒng)管理:6379>delCourse:1000000002:CName1:6379>getCourse:1000000002:CName:6379>Redis應用場景知識點四))

安裝依賴(53&54)(一)熱點數據緩存由于redis訪問速度塊、支持的數據類型比較豐富,所以redis很適合用來存儲熱點數據,另外結合expire,我們可以設置過期時間然后再進行緩存更新操作,這個功能最為常見,我們幾乎所有的項目都有所運用。

安裝依賴(53&54)(二)限時業(yè)務的運用redis中可以使用expire命令設置一個鍵的生存時間,到時間后redis會刪除它。利用這一特性可以運用在限時的優(yōu)惠活動信息、手機驗證碼等業(yè)務場景。

安裝依賴(53&54)(三)計數器相關問題redis由于incrby命令可以實現(xiàn)原子性的遞增,所以可以運用于高并發(fā)的秒殺活動、分布式序列號的生成、具體業(yè)務還體現(xiàn)在比如限制一個手機號發(fā)多少條短信、一個接口一分鐘限制多少請求、一個接口一天限制調用多少次等。

安裝依賴(53&54)(四)排行榜相關問題關系型數據庫在排行榜方面查詢速度普遍偏慢,所以可以借助redis的SortedSet進行熱點數據的排序。任務小結本節(jié)系統(tǒng)學習了Redis內存數據庫技術,Redis是一個由ANSIC語言編寫開源的非關系型數據庫,遵守BSD開源協(xié)議。Redis性能極高、豐富的數據類型、有豐富的特性。Redis有非常廣泛的應用場景。如:應用RedisGeo查找附近的車輛、附近的酒店等。擴展訓練Redis獨立學習Redis是一個開源(BSD許可)的,內存中的數據結構存儲系統(tǒng),它可以用作數據庫、緩存和消息中間件。它支持多種類型的數據結構,如:字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sortedsets)與范圍查詢,bitmaps,hyperloglogs和地理空間(geospatial)索引半徑查詢。Redis內置了復制(replication),LUA腳本(Luascripting),LRU驅動事件(LRUeviction),事務(transactions)和不同級別的磁盤持久化(persistence),并通過Redis哨兵(Sentinel)和自動分區(qū)(Cluster)提供高可用性(highavailability)。閱讀:/1.什么是Redis?2.Redis的安裝和部署?3.Redis的數據類型?4.Redis的典型應用場景有哪些?作業(yè)謝謝!THANKS!《大數據存儲技術與應用》大數據存儲技術與應用項目五深入半結構化存儲任務三解析ElasticSearch存儲技術什么是Redis?Redis的數據類型有哪些?Redis的get和set操作?Redis的應用場景?回顧任務引入-Elasticsearch原型環(huán)境和生產環(huán)境可無縫切換;無論Elasticsearch是在一個節(jié)點上運行,還是在一個包含300個節(jié)點的集群上運行,您都能夠以相同的方式與Elasticsearch進行通信。它能夠水平擴展,每秒鐘可處理海量事件,同時能夠自動管理索引和查詢在集群中的分布方式,以實現(xiàn)極其流暢的操作。任務描述:本節(jié)主要講解ElasticSearch存儲技術,包括:ElasticSearch存儲的概念、特點;安裝配置與操作,并結合實際案例詮釋ElasticSearch技術在半結構化大數據方面的應用。任務教學目標:理解Elasticsearch概念、特點。掌握Elasticsearch安裝部署。掌握Elasticsearch操作、應用。任務概要教學內容Elasticsearch概述Elasticsearch安裝部署一二Elasticsearch應用案例三ElasticSearch概述知識點一ElasticSearch概述ElasticSearch是一個基于Lucene的搜索服務器,Elasticsearch是一個分布式、可擴展、實時的搜索與數據分析引擎?;贘ava程序語言開發(fā),并作為Apache許可條款下的開放源碼發(fā)布,是當前流行的企業(yè)級搜索引擎,能夠在不同的平臺上運行。

安裝依賴(53&54)ElasticSearch支持RESTfulWeb接口,應用系統(tǒng)可以通過Java、.NET(C#)、PHP、Python、ApacheGroovy、Ruby等程序語言訪問ElasticSearch服務。ElasticSearch概述

安裝依賴(53&54)ElasticSearch典型應用場景包括:全文檢索、結構化搜索、數據分析以及這三個功能應用的組合。維基百科使用ElasticSearch提供帶有高亮片段的全文搜索;GitHub使用E

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論