Database Reference
In-Depth Information
Isolation : This requires that multiple transactions that are executed in
parallel on the same database instance would not impact each other. The
transactions need to take their due course, irrespective of what is happening
in the system at the same time. One of the important ways that this is used is
in the example where one transaction is writing to the database and another
is reading from it. In an isolated database, the read transaction cannot know
about the write that is occurring "next to" it until the transaction of the write
operation is complete and fully committed. As long as the write operation is
not committed, the read operation will have to work with the "old" data.
Durability : This basically means that committed transactions cannot just
disappear and be lost. Persisted storage and transaction commit logs that
are forced to be written to disk—even when the actual data structures have
not been updated yet—ensure this quality in most database systems and
also in Neo4j.
The summary of all this is probably that Neo4j, really, has been designed from the
ground up to be a true multipurpose database-style solution. It shares many of the
qualities of a traditional relational database management system that we know
today—it just uses a radically different data model that is well suited for densely
connected use cases.
Made for Online Transaction Processing
The mentioned characteristics help with systems where you really need to
be returning data from the database management system in an online system
environment. This means that the queries that you want to ask the database
management system would need to be answered in the timespan between a
web request and a web response. In other words, in milliseconds—not seconds,
let alone minutes.
This characteristic is not required of every database management system. Many
systemsactuallyonlyneedtoreplytorequeststhatareirstiredoffandthen
require an answer many hours later. In the world of relational database systems,
we call these analytical systems. We refer to the difference between the two types
of systems as the difference between Online Transaction Processing ( OLTP ) and
Online Analytical Processing ( OLAP ).There'sasigniicantdifferencebetween
the two—from a conceptual as well as from a technical perspective. So let's
compare the two in the following table:
 
Search WWH ::




Custom Search