描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302563518丛书名: 大数据技术与应用丛书
1.案例真实,开发过程完整。
2.理论与实践相结合,助你快速掌握操作NoSQL数据库。
3.符合高校需求,提供配套资源服务。
本书围绕NoSQL数据库技术与应用进行详细讲解,全书共10章,第1章简单介绍NoSQL数据库;第2章讲解文档存储数据库MongoDB;第3章讲解MongoDB数据库的操作;第4章讲解MongoDB副本集相关的知识;第5章讲解MongoDB分片相关的知识;第6章讲解MongoDB存储大文件系统GridFS相关的知识;第7章讲解键值对存储数据库Redis的相关知识;第8章讲解列族存储数据库HBase的相关知识;第9章讲解图形存储数据库Neo4j相关的知识;第10章讲解一个综合案例。本书适合作为高等院校计算机相关专业的教材,也可作为广大编程爱好者的实践图书。
第1章初识NoSQL1
1.1大数据时代对数据存储的挑战1
1.2认识NoSQL2
1.2.1NoSQL简介2
1.2.2NoSQL特点2
1.2.3关系数据库与非关系数据库
的区别3
1.3NoSQL基础理论5
1.3.1CAP原则5
1.3.2BASE理论6
1.3.3终一致性7
1.4NoSQL数据库分类8
1.4.1键值对存储数据库8
1.4.2文档存储数据库9
1.4.3列式存储数据库9
1.4.4图形存储数据库10
1.4.5NoSQL数据库的比较10
1.5本章小结11
1.6课后习题11
第2章文档存储数据库MongoDB13
2.1MongoDB概述13
2.1.1MongoDB的发展历程13
2.1.2MongoDB的简介14
2.1.3MongoDB的优势14
2.2MongoDB体系结构15
2.3MongoDB数据类型17
2.4MongoDB的使用规范21
2.5本章小结23
2.6课后习题23目录NoSQL数据库技术与应用第3章MongoDB数据库操作24
3.1MongoDB部署24
3.1.1基于Windows平台24
3.1.2基于Linux平台29
3.2数据库操作38
3.2.1新建数据库38
3.2.2查看数据库39
3.2.3删除数据库39
3.3集合操作40
3.3.1创建集合40
3.3.2删除集合40
3.4文档的插入、更新与删除操作41
3.4.1文档插入41
3.4.2文档更新43
3.4.3文档删除44
3.5文档简单查询45
3.5.1查询所有文档46
3.5.2按条件查询文档47
3.5.3按特定类型查询文档52
3.6聚合操作53
3.6.1聚合管道操作54
3.6.2MapReduce操作61
3.7使用索引优化查询63
3.7.1索引概述63
3.7.2索引操作66
3.8使用Java操作MongoDB71
3.8.1搭建Java环境71
3.8.2基于Java API操作MongoDB73
3.9使用Python操作MongoDB85
3.9.1搭建Python环境85
3.9.2基于Python API操作MongoDB86
3.10使用Robo 3T操作MongoDB95
3.10.1Robo 3T工具的下载安装96
3.10.2基于Robo 3T操作MongoDB96
3.11安全与访问控制104
3.11.1用户访问控制105
3.11.2用户管理操作109
3.12本章小结113
3.13课后习题113
第4章MongoDB副本集115
4.1副本集概述115
4.2副本集成员116
4.3部署副本集117
4.3.1环境准备117
4.3.2副本集的安装与启动119
4.3.3副本集的初始化121
4.4副本集操作124
4.4.1查看副本集成员状态124
4.4.2同步副本文档127
4.4.3故障转移129
4.4.4配置副本集成员130
4.4.5安全认证135
4.5副本集机制140
4.5.1同步机制140
4.5.2选举机制140
4.5.3心跳检测机制141
4.6本章小结141
4.7课后习题141
第5章MongoDB分片143
5.1分片概述143
5.2分片策略144
5.3分片集群架构145
5.4部署分片集群147
5.4.1环境准备147
5.4.2部署MongoDB149
5.4.3部署Config Server151
5.4.4部署Shard154
5.4.5部署mongos161
5.4.6启动分片功能163
5.5分片的基本操作165
5.6本章小结177
5.7课后习题177
第6章MongoDB GridFS179
6.1GridFS概述179
6.2GridFS存储结构180
6.3GridFS基本操作181
6.3.1使用Shell操作MongoDB GridFS181
6.3.2使用Java操作MongoDB GridFS189
6.3.3使用Python操作MongoDB GridFS198
6.4本章小结203
6.5课后习题203
第7章键值对存储数据库Redis205
7.1Redis概述205
7.1.1Redis简介205
7.1.2Redis特点206
7.1.3Redis应用场景206
7.2Redis支持的数据结构207
7.3Redis部署210
7.3.1基于Windows平台210
7.3.2基于Linux平台213
7.4使用rediscli操作Redis220
7.4.1操作键220
7.4.2操作字符串226
7.4.3操作列表230
7.4.4操作集合235
7.4.5操作散列237
7.4.6操作有序集合241
7.5使用Java操作Redis244
7.5.1环境搭建244
7.5.2操作键246
7.5.3操作字符串252
7.5.4操作列表255
7.5.5操作集合259
7.5.6操作散列263
7.5.7操作有序集合267
7.6本章小结271
7.7课后习题271
第8章列式存储数据库HBase273
8.1HBase概述273
8.2HBase的数据模型275
8.3HBase的架构276
8.4HBase的部署277
8.5HBase的操作281
8.5.1HBase的Shell操作281
8.5.2HBase的Java API操作288
8.6本章小结296
8.7课后习题296
第9章图形存储数据库Neo4j298
9.1Neo4j概述298
9.1.1Neo4j简介298
9.1.2Neo4j特点298
9.1.3Neo4j应用场景299
9.2Neo4j的数据模型300
9.3Neo4j的部署302
9.3.1基于Windows平台302
9.3.2基于Linux平台307
9.4Neo4j的操作311
9.4.1Neo4j的Cypher操作312
9.4.2Neo4j的Java API操作317
9.5本章小结324
9.6课后习题324
第10章综合案例——二手房交易数据分析系统326
10.1系统概述326
10.1.1系统背景介绍326
10.1.2系统架构设计326
10.1.3系统预览327
10.2Spark计算框架327
10.2.1Spark简介328
10.2.2Spark部署与启动328
10.3模块开发——构建项目结构345
10.4模块开发——数据采集353
10.4.1WebMagic简介353
10.4.2分析网页数据结构353
10.4.3实现网络数据采集355
10.4.4存储网络采集数据361
10.5模块开发——数据分析368
10.6模块开发——数据展示 375
10.6.1实现数据展示功能376
10.6.2系统功能模块展示385
10.7本章小结385
江苏传智播客教育科技股份有限公司(简称“传智播客”)是一家致力于培养高素质软件开发人才的科技公司。经过多年探索,传智播客的战略逐步完善,从IT教育培训发展到高等教育,从根本上解决以人为单位的系统教育培训问题,实现新的系统教育形态,构建出前后衔接、相互呼应的分层次教育培训模式。
一、 “黑马程序员”——高端IT教育品牌
“黑马程序员”的学员多为大学毕业后,想从事IT行业,但各方面条件还不成熟的年轻人。“黑马程序员”的学员筛选制度非常严格,包括了严格的技术测试、自学能力测试,以及性格测试、压力测试、品德测试等。百里挑一的残酷筛选制度确保学员质量,并降低企业的用人风险。
自“黑马程序员”成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研3个层面创新自己的执教理念与教学方针,并集中“黑马程序员”的优势力量,有针对性地出版了计算机系列教材90多种,制作教学视频数十套,发表各类技术文章数百篇。
“黑马程序员”不仅斥资研发IT系列教材,还为高校师生提供以下配套学习资源与服务。
1. 为大学生提供的配套服务
(1) 请同学们登录http://yx.ityxb.com,进入“高校学习平台”,免费获取海量学习资源。平台可以帮助高“播妞学姐”微信公众号
校学生解决各类学习问题。
(2) 针对高校学生在学习过程中存在的压力大等问题,我们还面向大学生量身打造了IT技术女神——“播妞学姐”,可提供教材配套源码、习题答案及更多学习资源。同学们快来关注“播妞学姐”的微信公众号boniu1024。
2. 为教师提供的配套服务
针对高校教学,“黑马程序员”为IT系列教材精心设计了“教案 授课资源 考试系统 题库 教学辅助案例”的系列教学资源。高校老师请登录http://yx.ityxb.com,进入“高校教辅平台”,也可关注“码大牛”老师微信/QQ: 2011168841,获取配套资源,还可以扫描下方二维码,关注专为IT教师打造的师资服务平台——“教学好助手”,获取的教学辅助资源。
“教学好助手”微信公众号
二、 “传智专修学院”——高等教育机构
传智专修学院是一所由江苏省宿迁市教育局批准、江苏传智播客教育科技股份有限公司投资创办的四年制应用型院校。学校致力于为互联网、智能制造等新兴行业培养高精尖科技人才,聚焦人工智能、大数据、机器人、物联网等前沿技术,开设软件工程专业,招收的学生入校后将接受系统化培养,毕业时学生的专业水平和技术能力可满足大型互联网企业的用人要求。
传智专修学院借鉴卡内基·梅隆大学、斯坦福大学等世界著名大学的办学模式,采用“申请入学,自主选拔”的招生方式,通过深入调研企业需求,以校企合作、专业共建等方式构建专业的课程体系。传智专修学院拥有的教研团队、完善的班级管理体系、匠人精神的现代学徒制和敢为人先的质保服务。
传智专修学院突出的办学特色如下。
(1) 立足“高精尖”人才培养。传智专修学院以国家重大战略和国际科学技术前沿为导向,致力于为社会培养具有创新精神和实践能力的应用型人才。
(2) 项目式教学,培养学生自主学习能力。传智专修学院打破传统高校理论式教学模式,将项目实战式教学模式融入课堂,通过分组实战,模拟企业项目开发过程,让学生拥有真实的工作能力,并持续培养学生的自主学习能力。
(3) 创新模式,就业无忧。学校为学生提供“一年工作式学习”,学生能够进入企业边工作边学习。与此同时,我们还提供专业老师指导学生参加企业面试,并且开设了技术服务窗口给学生解答工作中遇到的各种问题,帮助学生顺利就业。
如果想了解传智专修学院更多的精彩内容,请关注微信公众号“传智专修学院”。
传智专修学院
传智播客2020年2月NoSQL数据库技术与应用
21世纪有价值的资产是数据,它比黄金和石油更有价值。随着大数据时代的到来,待处理的数据量越来越大,传统的关系型数据库在可扩展性、数据模型和可用性等方面都遇到了难以克服的障碍。此时各种NoSQL数据库都应运而生,它们的特点各不相同,分别应用于不同的场景,因此得到了企业和编程者的青睐,主要用于解决大规模数据集合多重数据种类挑战,尤其是大数据应用难题。
本书分为10章,各章内容如下。
第1章主要是带领大家简单认识大数据时代对数据存储的挑战、NoSQL基本理论(CAP原则、BASE理论、终一致性)以及NoSQL数据库分类(键值对存储数据库、文档存储数据库、列式存储数据库、图形存储数据库以及NoSQL数据库的比较),通过本章的学习,读者可以对NoSQL数据库有了基本的认识,便于后续章节的学习。
第2章主要讲解文档存储数据库MongoDB相关知识,包括MongoDB概述、MongoDB体系结构、MongoDB数据类型以及MongoDB的使用规范。通过本章的学习,读者可以认识文档存储数据库MongoDB,并熟悉MongoDB的体系结构、数据类型和使用规范。
第3章主要讲解MongoDB数据库操作相关知识,包括MongoDB部署、数据库操作、集合操作、文档操作(插入、更新、删除、查询、聚合、索引)、使用Java操作MongoDB、使用Python操作MongoDB、使用Robo 3T操作MongoDB以及安全与访问控制。通过本章的学习,读者可以掌握MongoDB的部署、基本操作以及安全与访问控制,从而提高MongoDB数据库中数据的安全。
第4章主要讲解MongoDB副本集,包括副本集概述、副本集成员、部署副本集、副本集操作以及副本集机制相关知识。通过本章的学习,读者可以掌握副本集的部署与操作。
第5章主要讲解MongoDB分片相关的知识,即分片概述、分片策略、分片集群架构、部署分片集群以及分片的基本操作相关知识。通过本章的学习,读者可以掌握分片集群的部署与操作。
第6章主要讲解MongoDB GridFS相关的知识,包括GridFS概述、GridFS存储结构和GridFS基本操作。通过本章的学习,读者可以掌握使用Shell、Java、Python操作GridFS。
第7章主要讲解键值对存储数据库Redis相关知识,包括Redis概述、Redis支持的数据结构、Redis的部署、使用rediscli操作Redis和使用Java操作Redis。通过阅读本章,读者可以快速、有效地了解Redis,从而更好、更高效地使用Redis。
第8章主要讲解列式存储数据库HBase相关知识,包括HBase概述、HBase的数据模型、HBase的架构、HBase的部署、HBase的操作。通过阅读本章,读者可以快速、有效地了解HBase,从而更好、更高效地使用HBase。
第9章主要讲解图形存储数据库Neo4j相关知识,包括Neo4j概述、Neo4j的数据模型、Neo4j的部署、Neo4j的操作。通过阅读本章,读者可以快速、有效地了解Neo4j,从而更好、更高效地使用Neo4j。
第10章是利用前面章节介绍的知识构建一个二手房交易数据分析系统,即通过Spark、MongoDB以及WebMagic等技术开发二手房交易数据分析系统。通过本章的学习,读者能够熟悉MongoDB在大数据及Java Web方面的实际应用,并了解爬虫程序的开发与使用。
致谢
本书的编写和整理工作由传智播客教育科技股份有限公司完成,主要参与人员有高美云、文燕、张明强等,全体人员在这近一年的编写过程中付出了许多辛勤的汗水。除此之外,还有传智播客的600多名学员也参与到了教材的试读工作中,他们站在初学者的角度对教材提供了许多宝贵的修改意见,在此一并表示衷心的感谢。
意见反馈
尽管我们尽了的努力,但书中难免会有不妥之处,欢迎各界专家和读者朋友来函给予宝贵意见,我们将不胜感激。您在阅读本书时,如果发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。
请发送电子邮件至: [email protected]。
黑马程序员2020年6月于北京
评论
还没有评论。