《大数据存储技术与应用》 课件 项目五 深入半结构化数据存储_第1页
《大数据存储技术与应用》 课件 项目五 深入半结构化数据存储_第2页
《大数据存储技术与应用》 课件 项目五 深入半结构化数据存储_第3页
《大数据存储技术与应用》 课件 项目五 深入半结构化数据存储_第4页
《大数据存储技术与应用》 课件 项目五 深入半结构化数据存储_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《大数据存储技术与应用》大数据存储技术与应用项目五深入半结构化存储任务一走进半结构化存储技术什么是结构化数据?什么是MPP?结构化数据存储的技术路线?Hadoop?回顾任务引入-云数据库TencentDBforRedis腾讯云数据库Redis(TencentDBforRedis)是腾讯云打造的兼容Redis协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。任务描述:本节从半结构化数据入手,阐述了半结构化数据存储技术和NoSQL技术,最后对NoSQL的典型代表Redis和MongoDB数据库进行了简单的描述。任务教学目标:了解NoSQL数据存储。掌握Redis内存数据库技术。掌握Elasticsearch存储技术。任务概要教学内容半结构化数据概述半结构化数据存储技术一二NoSQL概述NoSQL代表三四半结构化数据概述知识点一半结构化数据存储概述半结构化数据具有一定的结构,但不如结构化数据那样完整、规则和固定。半结构化数据具备如下特点:一是隐含的模式信息;二是不规则的结构;三是没有严格的类型约束。半结构化数据存储概述大数据半结构化数据存储对数据存储技术提出了新的需求:一是存储容量的可扩展性和易扩展性;二是存储技术应用场景的多样性;三是存储数据的快速访问能力;四是存储技术处理半结构化数据的能力。半结构化数据存储技术知识点二

安装依赖(53&54)本项目从半结构化数据存储技术的特征和需求出发,概括性地阐述了半结构化数据存储技术,然后详细介绍了典型的半结构化大数据存储技术,即NoSQL存储技术和ElasticSearch存储技术,着重讲解了存储技术的概念、特点、安装部署与基本操作,并通过应用实例诠释了大数据半结构化数据存储技术的应用实践。通过本项目的学习,帮助读者掌握大数据半结构化数据存储技术及其应用的技能。半结构化数据存储技术NoSQL概述知识点三

安装依赖(53&54)NoSQL是一种不同于关系数据库的数据库管理系统设计方式,是对非关系型数据库的统称,它所采用的数据模型并非传统关系数据库的关系模型,而是类似键/值、列族、文档等非关系模型。NoSQL数据库没有固定的表结构,通常也不存在连接操作,也没有严格遵守ACID约束。(一)NoSQL概述

安装依赖(53&54)(二)NoSQL的四大类型

安装依赖(53&54)(三)NoSQL的三个基石

安装依赖(53&54)(四)数据库产品演变

安装依赖(53&54)(五)数据库产品分类NoSQL代表知识点四

安装依赖(53&54)NoSQL代表任务小结本任务介绍了NoSQL数据库的相关知识。NoSQL数据库较好地满足了大数据时代的各种非结构化数据的存储需求,开始得到越来越广泛的应用。但是,传统的关系数据库和NoSQL数据库各有所长,彼此都有各自的市场空间,不存在一方完全取代另一方的问题,在很长的一段时期内,二者都会共同存在,满足不同应用的差异化需求。NoSQL数据库主要包括键值数据库、列族数据库、文档数据库和图数据库4种类型,不同产品都有各自的应用场合。CAP、BASE和最终一致性是NoSQL数据库的三大理论基石,是理解NoSQL数据库的基础。扩展训练Redis独立学习Redis是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,如:字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sortedsets)与范围查询,bitmaps,hyperloglogs和地理空间(geospatial)索引半径查询。Redis内置了复制(replication),LUA脚本(Luascripting),LRU驱动事件(LRUeviction),事务(transactions)和不同级别的磁盘持久化(persistence),并通过Redis哨兵(Sentinel)和自动分区(Cluster)提供高可用性(highavailability)。阅读:/1.什么是半结构化数据?2.半结构化数据存储的技术构成?作业谢谢!THANKS!《大数据存储技术与应用》大数据存储技术与应用项目五深入半结构化存储任务二解析Redis内存数据库技术什么是半结构化数据?什么是NoSQL?半结构化数据存储技术的构成?Hadoop?回顾任务引入-云数据库TencentDBforRedis腾讯云数据库Redis(TencentDBforRedis)是腾讯云打造的兼容Redis协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。任务描述:本节将系统的学习Redis内存数据库技术。任务教学目标:了解Redis。掌握Redis安装部署。掌握Redis数据类型、Redis数据操作。任务概要教学内容Redis概述数据类型一二Redis数据操作Redis应用场景三四Redis概述知识点一

安装依赖(53&54)Redis使用内存中的数据集。根据实际应用场景,Redis可以将内存中的数据保存在磁盘中,系统重启的时候可以再次加载;如果只需要一个功能丰富、联网的内存缓存,还可以禁用持久性;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类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。

安装依赖(53&54)(六)RedisGeo存储地理位置信息RedisGeo存储地理位置信息,该功能从Redis3.2版本新增。RedisGeo操作方法有:geoadd:增加地理位置坐标;geopos:获取地理位置坐标;geodist:计算两个点之间的距离;georadius:根据指定的经纬度坐标来获取指定范围内的地理位置集合;georadiusbymember:根据储存在位置集合里的某个点获取指定范围内的地理位置集合;geohash:返回一个或多个位置对象的geohash值,见图geoadd添加地理位置信息。RedisGeoAPI可以直接实现检索附近的车辆、附近的酒店等功能。

安装依赖(53&54)(六)RedisGeo存储地理位置信息Redis数据操作知识点三

安装依赖(53&54)Redis数据操作:6379>setCourse:1000000002:CNameLinux系统管理OK:6379>getCourse:1000000002:CNameLinux系统管理:6379>delCourse:1000000002:CName1:6379>getCourse:1000000002:CName:6379>Redis应用场景知识点四))

安装依赖(53&54)(一)热点数据缓存由于redis访问速度块、支持的数据类型比较丰富,所以redis很适合用来存储热点数据,另外结合expire,我们可以设置过期时间然后再进行缓存更新操作,这个功能最为常见,我们几乎所有的项目都有所运用。

安装依赖(53&54)(二)限时业务的运用redis中可以使用expire命令设置一个键的生存时间,到时间后redis会删除它。利用这一特性可以运用在限时的优惠活动信息、手机验证码等业务场景。

安装依赖(53&54)(三)计数器相关问题redis由于incrby命令可以实现原子性的递增,所以可以运用于高并发的秒杀活动、分布式序列号的生成、具体业务还体现在比如限制一个手机号发多少条短信、一个接口一分钟限制多少请求、一个接口一天限制调用多少次等。

安装依赖(53&54)(四)排行榜相关问题关系型数据库在排行榜方面查询速度普遍偏慢,所以可以借助redis的SortedSet进行热点数据的排序。任务小结本节系统学习了Redis内存数据库技术,Redis是一个由ANSIC语言编写开源的非关系型数据库,遵守BSD开源协议。Redis性能极高、丰富的数据类型、有丰富的特性。Redis有非常广泛的应用场景。如:应用RedisGeo查找附近的车辆、附近的酒店等。扩展训练Redis独立学习Redis是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,如:字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sortedsets)与范围查询,bitmaps,hyperloglogs和地理空间(geospatial)索引半径查询。Redis内置了复制(replication),LUA脚本(Luascripting),LRU驱动事件(LRUeviction),事务(transactions)和不同级别的磁盘持久化(persistence),并通过Redis哨兵(Sentinel)和自动分区(Cluster)提供高可用性(highavailability)。阅读:/1.什么是Redis?2.Redis的安装和部署?3.Redis的数据类型?4.Redis的典型应用场景有哪些?作业谢谢!THANKS!《大数据存储技术与应用》大数据存储技术与应用项目五深入半结构化存储任务三解析ElasticSearch存储技术什么是Redis?Redis的数据类型有哪些?Redis的get和set操作?Redis的应用场景?回顾任务引入-Elasticsearch原型环境和生产环境可无缝切换;无论Elasticsearch是在一个节点上运行,还是在一个包含300个节点的集群上运行,您都能够以相同的方式与Elasticsearch进行通信。它能够水平扩展,每秒钟可处理海量事件,同时能够自动管理索引和查询在集群中的分布方式,以实现极其流畅的操作。任务描述:本节主要讲解ElasticSearch存储技术,包括:ElasticSearch存储的概念、特点;安装配置与操作,并结合实际案例诠释ElasticSearch技术在半结构化大数据方面的应用。任务教学目标:理解Elasticsearch概念、特点。掌握Elasticsearch安装部署。掌握Elasticsearch操作、应用。任务概要教学内容Elasticsearch概述Elasticsearch安装部署一二Elasticsearch应用案例三ElasticSearch概述知识点一ElasticSearch概述ElasticSearch是一个基于Lucene的搜索服务器,Elasticsearch是一个分布式、可扩展、实时的搜索与数据分析引擎。基于Java程序语言开发,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎,能够在不同的平台上运行。

安装依赖(53&54)ElasticSearch支持RESTfulWeb接口,应用系统可以通过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. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论