Briefly:
MongoDB is a database based on distributed file storage. Written by the C + + language. Designed to provide scalable, high-performance data storage solutions for Web applications.
MongoDB is a product between a relational database and a non-relational database, and is the most versatile and most like relational database in a non-relational database.
The data structure he supports is very loose and is a JSON-like Bson format, so you can store more complex data types.
MONGO's biggest feature is that the query language he supports is very powerful, and its syntax is a bit like an object-oriented query language that almost implements most of the functionality of a relational database single-table query, and also supports indexing of data.
In the case of high load, adding more nodes can guarantee the performance of the server.
MongoDB is designed to provide scalable, high-performance data storage solutions for Web applications.
MongoDB stores the data as a document. MongoDB is a database based on distributed file storage.
Characteristics:
It is characterized by high performance, easy to deploy, easy to use, and easy to store data. The main features are:
* For collection storage, easy to store object type data.
* Free mode.
* Support Dynamic Query.
* Full index support, including internal objects.
* Support Query.
* Supports replication and recovery.
* Use efficient binary data storage, including large objects (such as video, etc.).
* Automatically handles fragmentation to support scalability at the cloud level.
* Support multiple languages such as ruby,python,java,c++,php,c#.
* File storage format is Bson (an extension of JSON).
* Can be accessed via the Internet.
Principle of Use:
The so-called "set-oriented" (collection-oriented), meaning that data is grouped in a dataset, is called a collection (Collection). Each collection has a unique identifying name in the database and can contain an unlimited number of documents. The concept of a collection is similar to a table in a relational database (RDBMS), unlike it does not need to define any schema (schema).
Mode Freedom (schema-free) means that for files stored in a MongoDB database, we do not need to know any of its structure definitions. If necessary, you can store files of different structures in the same database.
The documents stored in the collection are stored in the form of key-value pairs. The key is used to uniquely identify a document as a string type, whereas a value can be a variety of complex file types. We call this storage form Bson (Binary serialized Document Format).
Distributed File System:
Distributed File System (distributed) means that the physical storage resources managed by the file system are not necessarily directly connected to the local nodes, but are connected to the nodes through the computer network.
The design of a distributed file system is based on client/server mode. A typical network might include multiple servers for multiple users to access. In addition, the peer-to feature allows some systems to play the dual role of the client and server.
HBase is a distributed, column-oriented, open-source database that comes from the Google paper "Bigtable: A distributed storage system of structured data" written by Fay Chang.
The Yonghong Data mart is a software that is based on proprietary technology developed for the storage and processing of information. Yonghong Data Mart's Distributed File Storage System (ZDFS) is a transformation and extension of Hadoop HDFs to manage and store files stored on all nodes in a server cluster.
Practical application:
The MongoDB server can run on Linux, Windows or Mac OS X platforms, supports 32-bit and 64-bit applications, and the default port is 27017. It is recommended to run on a 64-bit platform because MongoDB supports a maximum file size of 2GB when running in 32-bit mode.
Data Logical Structure:
The logical structure of the MongoDB architecture. The logical structure of MongoDB is a hierarchical structure. Mainly by:
document, Collection (collection), database , which are composed of three parts. The logical structure is user-oriented, and the logical structure is used by users to develop applications using MONGODB.
_ MongoDB document, which is equivalent to a row of records in a relational database.
_ Multiple Documents form a collection (collection), which is equivalent to a table of relational databases.
_ Multiple Collections (collection), logically organized together, is the database.
_ One MongoDB instance supports multiple databases (database).
Mongodb |
relational database |
Documents (document) |
Rows (Row) |
Collection (collection) |
Tables (table) |
Databases (database) |
Databases (database) |
_id Key:
In the data types that MongoDB supports, _id is its own product, and the following is a brief introduction to it.
Each document stored in the MongoDB collection has a default primary key _id, which is fixed and can be any data type supported by MongoDB, which is objectid by default. In relational database schema design, the primary key is mostly numeric, such as the commonly used int and long, and more commonly, the value of the primary key is obtained from the database, and the order of the primary key value sometimes indicates some logic. In contrast to MongoDB, it is located in the distributed storage system at the beginning of the design, so it does not support the self-increment primary key.
MongoDB Distributed Document Store database