We say that the block chain is not mature, there are a variety of problems, such as slow speed, high fees, there are security risks and so on, these are the most intuitive user experience, experience is not very good. Block chain there is a problem, that is the high concurrency problems.
High concurrency problem is how it happened, we simply talk about. High concurrency is a problem in the field of computer, in simple terms, high concurrency problem that the system cannot be simultaneously run multiple tasks. Many tasks run at the same time, a lot of users come in, the system can not bear the task of so much, there will be a high concurrency problem, your system is stuck, like the Spring Festival, the 12306 systems have always stuck, may cause is high concurrency problems.
The traditional Internet still has high concurrency problems, block chain network also has this problem, after all, the degree of maturity of the blockchain than the traditional Internet, there is a big gap. However, if the public is not safe, reliable and efficient chain of the development of the whole industry chain block will seriously restrict the application of the floor is empty. In this context, DAG technology has been put out, the full name of DAG is “Directed Acyclic Graph”, translated as “Chinese directed acyclic graph”.
DAG directed acyclic graph is how it happened, it really can play what role? We explain below.
A: DAG, a new data structure
DAG, Chinese name “DAG”, literal meaning, “to” that is to say it is the direction of the “ring”, that is to say it is not, can not form a closed loop. So, DAG is a new data structure, the data structure is a direction, but also can not form a closed loop.
The traditional block chain structure (Figure 1):
DAG directed acyclic graph structure (Figure 2):
The traditional block, we always take “block” as a unit, a block often contains multiple transaction information. In DAG, there is no concept of the block, but by the “unit” as a unit, each unit is a record of a single user transaction, which is not a unit block, but Bibi, in this way, can save a packaged piece of time.
In simple terms, block chain and DAG directed acyclic graph is the biggest difference: the blockchain is distributed the books one by one block to store and verify the transaction, and DAG is the transaction as a block, each transaction can be linked to more than one previous transaction to verify.
The working principle of two and DAG
The traditional block chain, it Nabite currency, it is a single chain type structure, between the block and block according to the time stamp order from (Figure 1), data recorded in a chain. Using inappropriate analogy, this “chain type” structure is a chain of word order. Only a single chain block, a package cannot be executed concurrently. The new block will be added to the top of the long chain of the original, all nodes in the long chain continue to prevail, according to the time stamp order infinite spread down.
But for DAG, each new unit, not only added to a unit of the longest chain, even before added to all units (Figure two). For example: suppose I released a new deal, the DAG structure has 2 effective trading unit, then the transaction unit I will take the initiative to link to the front of the 2, to verify and confirm, until the link to the creation unit, and a hash unit are included your unit inside.
In other words, if you want to make a deal, you must validate the previous transaction, the specific verification of several transactions, according to different rules of. This kind of verification, so that DAG can write many transaction concurrent and asynchronous, and eventually form a tree structure topology, greatly improve the scalability.
On the basis of DAG directed acyclic graph, each transaction is directly involved in the maintenance of the whole network. When the transaction is initiated, direct broadcast network, skip the miners block packing stage, thus eliminating the package block time, enhance the blockchain transaction efficiency.
With the time increasing, all transactions block chains are connected to each other to form map structure, if you want to change the data, it is not only a few blocks of the problem, the whole block diagram of data but change. The DAG model compared to, the complexity of the higher, more difficult to change.
In summary, DAG is a decentralized data structure model, which is a generalized block chain, have the attribute to the center, but the difference between the two is:
Qu Kuai chain unit is the Block (Qu Kuai), the DAG unit is the TX (transaction).
Block chain is single threaded, multi thread is DAG.
The blockchain records of all transactions recorded in the same block, the DAG of each transaction are recorded separately in each transaction.
Block chain to miners, DAG does not require the miners.
Three, DAG: IOTA
The current DAG on behalf of the project, the most famous is IOTA. It can be said that it is because of the currency into the market value of IOTA ranked fourth in the second half of 2017, to make people realize the importance of the underlying technology of it: DAG directed acyclic graph.
IOTA based acyclic graph is proposed on the concept of “tangles” in DAG, in IOTA, there is no concept of the block, the smallest unit is a consensus transaction. Each transaction will quote two transaction records hash past, such a transaction will prove the past two the legality of the transaction, indirectly prove the validity of all transactions before. As a result, we no longer need the traditional block in the chain of miners such a small number of nodes to validate transactions and packing blocks, so as to enhance the efficiency and save the transaction costs.
In four, DAG
Although in theory, DAG has some drawbacks of acyclic graph can make up the traditional block chain, but is not mature, applied to the field of digital currency time is relatively short, relatively young. It is not like bitcoin like that after 10 years of time to verify the safety of the whole system, also not like the square like that achieved Ethernet wide range of application scenarios. But now some voice put forward data structure with traditional block chain +DAG “, but it is not very prominent case, there is not much to say.
In summary, today we introduced the blockchain derivative technology: DAG directed acyclic graph, which is a new data structure, can block chain efficiency, transaction and force reached significantly improved, DAG technology is currently represents the currency: IOTA, IOTA on the basis of the “entanglement” concept and it is a scalable, lightweight, but also value transfer technology in the premise of no charge under the.