【Introduction】 In just a few years of the big data explosion, NoSQL has become one of the popular core technologies that must be mastered to process big data. "NoSQL Database Introduction and Practice (Based on MongoDB, Redis)" came into being in this situation, which combines MongoDB, Redis and testing tools to comprehensively introduce NoSQL database technology and the essence of NoSQL, and is an introductory book for NoSQL databases, and it is also a book for NoSQL beginners to understand the full picture of NoSQL technology. The book includes 3 parts, of which the basic parts of NoSQL include: first understanding NoSQL, technical comparison between TRDB and NoSQL, and NoSQL data storage mode. The NoSQL practice part introduces the introduction and knowledge improvement of the document database MongoDB and the key-value database Redis respectively, and introduces the specific applications of MongoDB and Redis in the development process of functional modules for different services (such as log storage, product reviews, order information records, click volume storage, product recommendations, shopping carts, recording browsing product behavior, etc.) through comprehensive cases of two e-commerce platforms. The NoSQL improvement section introduces the optimization methods and processing technologies of MongoDB and Redis in terms of operation speed and data storage in the big data environment, as well as the selection and deployment of practical business applications of NoSQL products and the application of NoSQL auxiliary tools. It can not only allow readers to learn the basic knowledge of NoSQL, master NoSQL database technology, have a practical level of code, but also cultivate readers' ability to systematically consider problems, and also give in-depth learning directions and core content to readers with high requirements. In addition to the paper introduction, the first 8 chapters of the book "Introduction and Practice of NoSQL Databases (Based on MongoDB and Redis)" also provide video explanations, which can be viewed by scanning the QR code with a mobile phone, and provide the source code of the whole book to facilitate readers to learn quickly. The book "Introduction and Practice of NoSQL Database (Based on MongoDB, Redis)" is easy to understand, and the content is very suitable for college students, teachers and related IT engineers who want to fully understand NoSQL knowledge, and it is also suitable for all technical personnel who are interested in NoSQL databases. 【Table of Contents】 Chapter 1 Introduction to NoSQL
1.1 What is NoSQL?
1.1.1 Introduction
[Application case 1.1] 12306 online train ticket booking system
Application case 1.2: The generation of Hadoop
1.1.2 NoSQL related concepts
1.2 Database classification
1.2.1 TRDB database
1.2.2 NoSQL database
1.2.3 NewSQL database
1.3 Learning help
1.3.1 Learning materials
1.3.2 Learning suggestions
1.4 Summary
1.5 Exercises
Chapter 2 Technical Comparison of TRDB and NoSQL
2.1 Hardware operation principle
2.1.1 Limitations of stand-alone machines
2.1.2 Server expansion
2.2 Comparison of software implementation technologies
2.2.1 The data storage structure is simpler
2.2.2 Introduce distributed technology architecture
Application case 2.1: Three situations in CAP failure mode
2.2.3 Affairs
Application Case 2.2: Application of BASE in e-commerce
2.2.4 SQL technical standards
2.2.5 Analytical techniques
2.3 Summary
2.4 Exercises
Chapter 3 NoSQL Data Storage Patterns
3.1 Key-value data storage mode
3.1.1 Key-value storage implementation
3.1.2 Key-value storage characteristics
3.1.3 Application examples
Application case 3.1: Amazon Simple Storage Service, S
Application case 3.2: Redis domestic application
3.2 Document data storage mode
3.2.1 Document storage implementation
3.2.2 Document storage characteristics
3.2.3 Application examples
【Application Case 3.3】Successfully applied by MetLife Insurance Company
【Application Case 3.4】List of some successful cases at home and abroad
3.3 Column family data storage mode
3.3.1 Column family storage implementation
3.3.2 Column family storage characteristics
3.3.3 Application examples
Application Case 3.5: Cassandra's successful application at Netflix
3.4 Graph data storage mode
3.4.1 Graph storage implementation
3.4.2 Graph storage characteristics
3.4.3 Application examples
【Application Case 3.6】Successful application of Neo4j on eBay
3.5 Other data storage modes
3.5.1 Multimodal database
3.5.2 Object database
3.5.3 Grid and Tenscent Database
3.5.4 XML database
3.5.5 Multidimensional database
3.5.6 Multi-value database
3.5.7 Event-driven databases
3.5.8 Time Series/Stream Databases
3.5.9 Other NoSQL-related databases
3.5.10 Scientific and professional databases
3.5.11 Unresolved and Categorized Databases
3.6 Summary
3.7 Exercises
NoSQL Practical Part (E-commerce Big Data)
Chapter 4 Getting Started with MongoDB Document Database
4.1 Preparing for MongoDB usage
4.1.1 Understanding MongoDB
4.1.2 MongoDB installation
4.1.3 Basic rules for database establishment
4.1.4 Database establishment
4.2 Basic MongoDB Operations
4.2.1 Inserting documents
4.2.2 Query documents
4.2.3 Updating documentation
4.2.4 Delete documents
4.2.5 Index
4.2.6 Aggregation
4.2.7 Copying
4.2.8 Sharding
4.2.9 Writing error mechanism
4.3 Common MongoDB configuration parameters
4.3.1 Network configuration
4.3.2 Storage configuration
4.4 The first simple case
4.4.1 Connect to MongoDB with Java
4.4.2 Production-level Java connection to the MongoDB public architecture
4.4.3 High concurrency simulation
4.5 Summary
4.6 Experiment
Chapter 5 Document Database MongoDB Improvement
5.1 BASE operation
5.1.1 Atomic operation of a single document
5.1.2 Multi-document isolation operation
5.2 Advanced indexing and index limits
5.2.1 Advanced indexing
5.2.2 Index Limits
5.3 Query advanced analytics
5.3.1 Large-scale recording data preparation
5.3.2 Explain() analysis
5.3.3 Hint() analysis
5.4 Visual management tools
5.4.1 RoboMongo Admin Tools
5.4.2 Other visual management tools
5.5 Summary
5.6 Experiment
Chapter 6 MongoDB Case Practice (E-commerce Big Data)
6.1 Log storage
6.1.1 Log usage requirements
6.1.2 Establish a dataset
6.1.3 A new log has been added
6.1.4 Query log information
6.1.5 Query result display
6.2 Product reviews
6.2.1 Product evaluation and use requirements
6.2.2 Establish a dataset
6.2.3 New evaluation
6.2.4 Pagination query evaluation
6.2.5 Execution result display
6.3 User Extension Information Management
6.3.1 Users expand their information use needs
6.3.2 Establish a dataset
6.3.3 Add user extension information
6.3.4 Multi-conditional query of user extension information
6.3.5 Execution result display
6.4 Order information records
6.4.1 Order usage requirements
6.4.2 Establish a dataset
6.4.3 New orders
6.4.4 Aggregate query order quantity
6.4.5 Execution result display
6.5 Product information management
6.5.1 Requirements for the use of product information
6.5.2 Establish a dataset
6.5.3 New products
6.5.4 Query and modify the product
6.5.5 Execution result display
6.6 Historical orders
6.6.1 Historical order usage requirements
6.6.2 Establish a dataset
6.6.3 Add historical orders in batches
6.6.4 Query historical orders
6.6.5 Execution result display
6.7 Click Storage
6.7.1 Description of click requirements
6.7.2 Establish a dataset
6.7.3 Added hit log
6.7.4 Query statistics clicks
6.7.5 Query result display
6.8 Summary
6.9 Experiments
Chapter 7 Introduction to Key-Value Database Redis
7.1 Preparation for use
7.1.1 Understanding Redis
7.1.2 Redis Installation
7.1.3Redis-cli
7.1.4 Redis Storage Mode
7.2 Redis Commands
7.2.1 String commands
7.2.2 List commands
7.2.3 Collection Commands
7.2.4 Hash list commands
7.2.5 Ordered Collection Command
7.2.6 Publishing Subscription Commands
7.2.7 Connection Commands
7.2.8 Server operation command
7.2.9 Script Commands
7.2.10 Key Commands
7.2.11 HyperLogLog command
7.2.12 Geospatial commands
7.2.13 Transaction Orders
7.2.14 Cluster Commands
7.3 Redis Configuration and Parameters
7.3.1 Config Configuration File
7.3.2 Configuration File Parameters
7.4 Java connection to Redis database
7.4.1 Redis Connection Configuration
7.4.2 Redis initialization tool class
7.5 Summary
7.6 Experiment
Chapter 8 Key-value database Redis improvement
8.1 Pipelines
8.1.1 Principle of pipeline technology
8.1.2 Java-based pipeline technology use
8.2 Distributed clusters
8.2.1 Cluster installation
8.2.2 Simulate node failure
8.2.3 Add and subtract nodes
8.3 Lua scripting application
8.3.1 Basic knowledge of Lua script use
8.3.2 Lua implementation case
8.4 Visual management tools
8.4.1Redis Desktop Manager
8.4.2Redis Client
8.4.3RedisStudio
8.4.4Redsmin/proxy
8.5 Summary
8.6 Experiment
Chapter 9 Redis Case Practice (E-commerce Big Data)
9.1 Ad Access
9.1.1 Advertising function usage requirements
9.1.2 Establish a dataset
9.1.3 New advertisements
9.1.4 Inquiry Advertisements
9.2 Product recommendation
9.2.1 Requirements for the use of the product recommendation function
9.2.2 Establish a dataset
9.2.3 New product recommendation content
9.2.4 Query commodity records
9.3 Shopping cart
9.3.1 Shopping cart function usage requirements
9.3.2 Establish a dataset
9.3.3 Add to cart
9.3.4 Inquiry shopping cart
9.4 Record the behavior of browsing goods
9.4.1 Requirements for the use of product browsing records
9.4.2 Establish a dataset
9.4.3 Add product click records
9.4.4 Query product click records
9.5 Replace Session
9.5.1 Session usage requirements
9.5.2 Establish a dataset
9.5.3 Added Session
9.5.4 Querying Sessions
9.6 Pagination caching
9.6.1 Requirements for the use of pagination cache
9.6.2 Establish a dataset
9.6.3 Added pagination data
9.6.4 Query paginated data
9.7 Summary
9.8 Experiment
NoSQL Improvement Part (E-commerce Big Data)
Chapter 10 Speed Problems
10.1 MongoDB operation speed optimization
10.1.1 Common optimization methods
10.1.2 Index query and optimization
10.1.3 Data design and optimization
10.1.4 MongoDB read/write separation
10.2 Redis operation speed optimization
10.2.1 Redis read/write separation
10.2.2 Memory configuration optimization
10.3 Supporting hardware optimization
10.4 Summary
10.5 Experiment
Chapter 11 Data Storage Issues
11.1 Mongodb data storage issues
11.1.1 Data backup and recovery
11.1.2 Storage Balancing Optimization
11.2 Redis Data Storage Technology
11.2.1 Persistence issues
11.2.2 Data backup issues
11.3 Summary
11.4 Experiment
Chapter 12 NoSQL Selection and Deployment
12.1 NoSQL Product Selection
12.2 Case analysis of complex deployments
12.2.1 High-availability NoSQL deployment
12.2.2 TRDB+NoSQL comprehensive deployment
12.3 Summary
12.4 Experiments
Chapter 13 Practical Aids for NoSQL
13.1 Test Tools
13.1.1 YCSB Test Tool
13.1.2Redis-benchmark
13.2 Monitoring tools
13.2.1 MongoDB monitoring tools and problems
13.2.2Mongostat
13.2.3Mongotop
13.2.4Mtools
13.2.5Cloudinsight
13.2.6 Redis Monitoring Tool
13.2.7Redislive
13.2.8Sentinel
13.3 Summary
13.4 Experiments
Appendix 1: MongoDB Command Usage Checklist
Appendix 2 Detailed list of Redis commands
Appendix 3 List of Instance Codes
Main references and sources
Postscript [Download address] link:https://pan.baidu.com/s/1rfl5IjY77emDQqNlhZ6KJQExtraction code:Tourists, if you want to see the hidden content of this post, please Reply
|