官术网_书友最值得收藏!

Built for graphs from the ground up

Like many open source projects and open source NoSQL database management systems, Neo4j came into existence for very specific reasons. Scratching the itch, as this is sometimes called. Grassroots developers who want to solve a problem and are struggling to do so with traditional technology stacks decide to take a radical, new-found approach. That's what the Neo4j founders did early in the 21st century--they built something to solve a problem for a particular media company in order to better manage media assets.

In the early days, Neo4j was not a full-on graph database management system; it was more like a graph library that people could use in their code to deal with connected data structures in an easier way. It was sitting on top of traditional, MySQL, and other relational database management systems, and was much more focused on creating a graph abstraction layer for developers than anything else. Clearly, this was not enough. After a while, the open source project took the radical decision to move away from the MySQL infrastructure and build a graph store from the ground up. The key thing here is from the ground up. The entire infrastructure, including low-level components such as the binary file layout of the graph database store files, is optimized to deal with graph data. This is important in many ways, as it will be the basis for many of the speed and other improvements that Neo4j will display versus other database management systems.

We don't need to understand the details of this file structure for the basis of this book, but suffice it to say that it is a native, graph-oriented storage format that is tuned for this particular workload. This makes a big difference.

主站蜘蛛池模板: 石阡县| 石景山区| 石渠县| 威宁| 泾源县| 监利县| 醴陵市| 沛县| 甘肃省| 太白县| 赤城县| 万宁市| 额济纳旗| 社会| 宁津县| 疏勒县| 稷山县| 翁牛特旗| 济源市| 水富县| 赣榆县| 肇源县| 张家川| 兴海县| 民勤县| 新化县| 集贤县| 麻阳| 奉节县| 汉沽区| 迭部县| 泽库县| 太仓市| 松原市| 济阳县| 正蓝旗| 太湖县| 柳州市| 米泉市| 宁阳县| 阳朔县|