数据库原理与应用第十一章——大数据应用背景下的数据管理技术本章课程的背景1. 大数据时代已经来临。数据量急剧扩充的时代。对数据管理技术提出 更高的要求。2. 传统封的关系型数据库面临挑战。 在扩展性、实时响应等方面难以满足用户的需求。3. NoSQL与传统关系型数据 库的部分不同。非关系型数据库结构往往不固定,每个元组可有不一样的结构字段;每个元组可根据需要增加一些特定的键值对,不局限于固定结构 ,可减少一些时间和空间开销。课程难点与学习目的1. 课程难点:为什么会提出NoSQL?NoSQL会取代传统的关系型数据库吗?2. 学习目的:了解几种常见的NoSQL数据库的简单使用。给出Elasticsearch的示例本章主要内容1. 大数据及其主要特点2. 传统数据处理方式面临的挑战3. 大数据应用背景下的数据管理特点及部分数据管理产品数据库原理与应用第十一章——11.1 大数据及其 主要特点1 数据量巨大1. 伴随着数据规模的剧增,数据的价值密度在减小,从大数据中挖掘有价值的知识,是有现实意义的。2. Web 应用、电信、金融、保险、公共安全、医疗、气象、教育、地理等其它行业每天也都产生着难以估计的海量数据。2 结构多样化1. 传统的数据 挖掘主要是以结构化数据为主。2. 大数据时代,结构化、半结构化、非结构化数据融合,且数据来源多样、质量良莠不齐。3. 对大数据的处 理来说,更大意义上是对非结构化大数据的处理和挖掘。3 处理速度更快1. 大数据时代之前处理的数据一般都是静态的数据,或者数据的产生 与变化速度较低,采用批处理的方式即可解决。2. 微博等社交网络数据以及电子商务等交易数据是以实时数据流的方式出现的,要求对数据处理 速度更快。4 应用价值高 感知现在、发现规律、预测未来、决策调控知识发现测与决策等四维透视大数据数据体量大数据类型多产生速度快理念 数据特征处理方式从单一源到多元关联分析从开环应用到闭环应用分布式处理水平扩展人工智能技术从因果到相关关系从采样到全集分析处理要求高 效率数据库原理与应用第十一章——11.2传统数据处理方式面临的挑战1 在对数据的高并发读写方面1. 大数据的并发负载高。2. 对关 系型数据库来说,通过传统的SQL方式进行查询,效率是不高的。2 数据库高可扩展性和高可用性方面1. 传统的关系型数据库是较难进行 横向扩展的。2. 对数据的高可扩展性和高可用性需求,催生了NoSQL、分布式技术的应用和发展。总结大数据的特点NoSQL从Goog le的 BigTable、Amazon 的Dynamo,到内存型数据库MemCached、文档型数据库MongoDB、键值对数据库 Redis、搜索类数据库ElasticSearch等,NoSQL技术得到广泛应用。数据库原理与应用第十一章——11.3 大数据应用 背景下的 数据管理特点及部分数据管理产品 11.3.1 大数据应用背景下的 数据管理特点1. 简单的数据类型系统往往只需支持单记录 级别的原子性,不必过多考虑外键和跨记录的关联,这样就增加了系统的可扩展性。2. 元数据和应用数据的分离元数据一般要求满足一致性和实 时性,而应用数据的一致性需求往往因不同的应用而不同,故常将它们分离。3. 弱一致性通过复制应用数据来达到一致性。为减少不必要的开销 ,弱一致性模型得到应用。11.3.2 基于文档数据模型的 数据管理产品1. 文档数据库不必像关系数据库一样高度结构化数据2. 允 许创建许多不同类型的非结构化的或任意格式的字段。3. 它不提供对数据完整性支持,但它和传统的关系型数据库也不互相排斥,而是相互补充 。11.3.3 基于键-值对数据模型的 数据管理产品1. 没有传统的关系型数据模型中对数据的各种约束(如完整性约束、数据类型约束 等)。2. 对于某个键Key,其对应的值Value可以是任意的数据类型(如string、list、set、sorted set、h ash等)。3. 基于键-值对的数据存储的应用场景有:高速缓存、队列、分布式任务处理等。Redis1. 为了保证对数据的灵活性和高 效访问,Redis可将所有数据加载到内存中,处理速度快。2. 由于所有数据保持在内存中,Redis会周期性地把更新的数据写入磁盘或 把修改操作写入追加的记录文件,并且在此基础上实现主-从同步(数据可以从主服务器向任意数量的从服务器上同步)。3.在大数据应用方面, Redis可以作为Cache层,也可以作为多个模块的消息传递窗口。11.3.4 分布式缓存数据管理产品Memcached1. 是 一个开源的、高性能的、分布式的缓存数据管理系统,可用来在内存中保存一些经常存取的数据以便加快存取速度。2. 其保存的数据像一张巨大 的哈希表,该表以键-值对的方式存在内存中。11.3.5 基于倒排索引的 数据管理产品及ELK架构1. Elasticsearch 是一个开源的分布式信息检索框架,具备高可靠性。2. Logstash可以对相关的网络日志进行收集、分析、转换等处理工作并将其存储供 以后使用。3. Kibana可以帮助汇总、分析和搜索重要数据日志,并提供友好的可视化界面。10.4 小结1. 传统的关系数据库在应 付超大规模和高并发的数据类型和动态网站时,暴露了一些问题。2. 大数据时代,非关系型数据库得到迅速发展。3. 当需处理的大容量数据 集在持续快速增长时,来自NoSQL家族的数据管理系统更容易实现持续扩容。4. 在“互联网+”和大数据时代,掌握传统的关系型数据库,以及大数据应用背景下的数据管理技术,具有十分重要的实际应用价值。 |
|