In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-02-23 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >
Share
Shulou(Shulou.com)05/31 Report--
This article introduces the relevant knowledge of "what are the open source databases?". Many people will encounter such a dilemma in the operation of actual cases, so let the editor lead you to learn how to deal with these situations. I hope you can read it carefully and be able to achieve something!
Literally, the database is the data warehouse. In fact, the database we usually talk about refers to the database management system (Database Management System), which is a large-scale software that manipulates and manages the database, which is used to establish, use and maintain the database, referred to as DBMS. Strictly speaking, a database is an instance of a database management system, and a database management system can have multiple database instances.
There are many kinds of databases, and the one we usually contact most is Oracle database, or MySQL data. The two are the most widely used relational data. As shown in figure 1, the ranking of usage in December 2018 shows that the above two databases are ranked * and second, respectively.
Figure 1 Database ranking
Classification of databases
If you take a closer look at the ranking in figure 1, you can see that there are not only relational databases that we usually learn, but also Key-Value databases, column storage databases, document databases and search engines. The following article will briefly introduce various types of data.
Relational database: this type of database is the oldest database type. the relational database model boils down complex data structures to simple binary relationships (that is, two-dimensional table forms). Figure 2 is an example of a two-dimensional table. Usually the table * behavior field name, describes the role of the field, the following is the specific data. You need to specify the name and type of the field when defining the table.
Figure 2 example of database table
In a relational database, almost all operations on data are based on one or more relational tables. In large systems, there are usually multiple tables, and there are various relationships between tables. The actual use is to realize the management of the database by classifying, merging, connecting or selecting these related tables.
Key-value storage database: a key-value database is a non-relational database that uses a simple key-value method to store data. The key-value database stores data as a collection of key-value pairs, where the key is the unique identifier.
Fig. 2 basic principles of key-value database
Figure 2 is a schematic diagram of the key value storage of a public cloud, where the key contains the partition key and the sort key, and the value contains more actual information. For example, the actual use can be with the student number as the key, name, gender, age and class and other information as the value for storage. The actual storage form is very flexible, and the business requirements can be defined by themselves.
Column storage database: column storage (column-based) is relative to the row storage (Row-basedstorage) of traditional relational databases. To put it simply, the difference between the two is the difference in the storage form of the data in the table.
Figure 3 column stores data
Figure 3 is a comparison of the way data is stored on disk in traditional row database and column database tables. For row storage databases, the data in the table is stored on disk row by row in behavioral units, while for column storage databases, the data in the table is stored on disk column by column.
The main problem solved by column storage is data query. We know that most of the usual queries are conditional queries, usually returning data from certain fields (columns). For row storage data, a row of data is usually read out completely when the data is read. If only a few columns of data are needed, there will be redundant columns. In order to shorten the processing time, the process of eliminating redundant columns is usually carried out in memory. In column storage, the data read each time is a segment or all of the collection, and there is no redundancy problem. In this way, through the adjustment of this storage mode, the query performance has been greatly improved.
Document-oriented database: this kind of database can store and obtain documents, which can be in XML, JSON, BSON and other formats. These documents have self-describing, hierarchical tree structure (hierarchical tree data structure), and can contain mapping tables, collections and scalar values. The documents in the database are similar to each other, but do not have to be identical. The document stored in the document database is equivalent to the "value" stored in the key-value database. The document database can be regarded as a key-value database whose value can be checked.
Graphic database: as its name implies, graphic database is a database that stores graphic relationships. Graphic database is a type of NoSQL database, which applies graphics theory to store the relationship information between entities. Relational data is used to store data with clear relationships, but it is somewhat inadequate for data storage with complex relationships. The relationship between characters such as figure 4 is very complex if you use a relational database, and it will be very easy to use a graphical database.
Figure 4 example of a graphical database
Search engine storage: search engine database is a form of data storage used in the field of search engines, because search engines crawl a large amount of data and store it in a specific format, so that the performance can be guaranteed during retrieval.
Different types of database software
Relational database: the most classic open source software of relational database is MySQL, which is an open source relational database management system. In WEB applications, MySQL is one of the RDBMS (Relational Database Management System: relational database management system) applications.
After SUN was acquired by Oracle, MySQL's creators pulled out another branch, named MariaDB. The database is used by technology giants such as Wikipedia, Facebook and even Google. MariaDB is a database server that provides plug-in replacement capabilities for MySQL. The developer's primary concern is security, and when each release is released, the developer incorporates all MySQL security patches and enhances them as needed.
In addition, there are many open source relational databases, such as the classic file database SQLite and CUBRID optimized for Web services.
Key-value storage database: at present, the most widely used key-value database is Redis,Redis, which is an open source log database written in ANSI C language, supports the network, can be based on memory and can be persisted, Key-Value database, and provides API in multiple languages. Redis is usually the cache layer of the most common relational database, which is used to reduce the access pressure of the database and improve system performance.
Column storage database: the most famous column storage database is probably HBase, the open source java version of BigTable. It is a database system based on HDFS, which provides high reliability, high performance, column storage, scalability, real-time read and write NoSQL.
Document-oriented databases: there are many kinds of document databases, including MongoDB, CouchDB, Terrastore, RavenDB, OrientDB and so on. Among them, MongoDB is the most popular document database at present, and its product between relational database and non-relational database is the most functional and most like relational database in non-relational database. Its * * is characterized by distributed deployment, which can dynamically expand with the increase of load, so as to meet the needs of enterprise business growth.
Graphic database: there are many kinds of graphics, such as Neo4J, ArangoDB, OrientDB, FlockDB, GraphDB, InfiniteGraph, Titan, Cayley and so on. Neo4j is the current * graphic database, which supports complete transactions. in the attribute graph, the graph is composed of Vertex, Edge and Property, vertices and edges can be set attributes, vertices are also called nodes, edges are also called relationships, and each node and relationship can be composed of one or more attributes. The graph created by Neo4j is to build a directed graph with vertices and edges, and its query language cypher has become the de facto standard.
Search engine storage: search engine databases have been popular recently, including Solr and Elasticsearch. Solr is an open source project of Apache, based on the industry's famous java open source search engine Lucene. In the past decade, solr has grown and has a wide range of users. Solr provides distributed indexing, sharding, replica sets, load balancing and automatic failover and recovery functions. If properly deployed and well managed, solr can become a highly reliable, scalable and fault-tolerant search engine.
Elasticsearch is built on top of the Apache Lucene library and is an open source search engine. Elasticsearch was not available until a few years after the launch of Solr, providing a distributed, multi-tenant full-text search engine through JSON documents from REST and schema-free. And officially provide Java,Groovy,PHP,Ruby,Perl,Python,.NET and Javascript clients. At present, Elasticsearch, in cooperation with Logstash and Kibana, is deployed as log collection and analysis, referred to as ELK, which are open source software. Recently, a new FileBeat has been added, which is a lightweight log collection and processing tool (Agent). Filebeat takes up less resources and is suitable for collecting logs on various servers and transferring them to Logstash.
This is the end of the content of "what are the open source databases"? thank you for reading. If you want to know more about the industry, you can follow the website, the editor will output more high-quality practical articles for you!
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.