August 2016 Summaries
14 posts from Neo4j
Filter
Month:
Year:
Post Summaries
Back to Blog
The Neo4j APOC procedure library has been updated to version 3.0.4.1, with notable changes including the addition of random graph generators, improved error messages, and support for leading wildcards in the `apoc.index.search` procedure. New database integrations include MongoDB, Elasticsearch, and Couchbase, allowing users to import data from these sources into Neo4j. The library also includes procedures for exporting data from Neo4j in various formats, including Cypher scripts, CSV, GraphML, and binary (Kryo). Additionally, the APOC team has made significant updates to the documentation, with contributions from active contributors such as Dana, Chris, Kevin, and Viksit. With over 200 procedures available, APOC continues to provide a powerful toolset for Neo4j developers, enabling them to perform complex tasks and unlock the full potential of their graph databases.
Aug 31, 2016
2,400 words in the original blog post.
Structr is a graph application platform that enables the creation of interactive web pages and connect them to web applications, using Neo4j as its underlying database. Structr was developed by Axel Morgner, who chose Neo4j due to its suitability for hierarchical data and embeddability in Java applications. The platform has been used for content management, enterprise data management, and other use cases, offering a flexible graph data model that can store structured and unstructured data. Structr's implementation of the agile-development approach allows for rapid development and testing, with features being implemented within a day. The community and official Neo4j team have been supportive, making it possible for Structr to grow with the market and community.
Aug 26, 2016
877 words in the original blog post.
### Cypher is a query language for Neo4j graph databases that can be used to declare what kind of projection of your domain data you need for a certain UI component, similar to GraphQL. It allows for returning complex JSON documents and supports literal maps and collections, as well as powerful aggregation functions like COLLECT. New features in Neo4j 3.1 include map projections, which apply a map-like property-selector to entities, and pattern comprehensions, which allow for list comprehensions with graph patterns. These new features enable more syntactic sugar and flexibility in Cypher queries, making it easier to work with complex data structures and related entities.
Aug 24, 2016
931 words in the original blog post.
Spring Data Neo4j (SDN) is a framework that allows developers to map their domain objects to a graph, focusing on business logic rather than low-level interactions with the graph. This separation of core object-graph mapping library from Spring has made SDN more accessible to users who don't want to use the full Spring framework. SDN 4.x was rewritten from scratch to support high-performance object-graph mapping over HTTP and via a Cypher transactional endpoint, addressing performance issues in earlier versions. The latest version, SDN 4.1, introduces two new drivers: an embedded driver for embedded databases and a Bolt driver for remote Neo4j servers. Originally, the author was drawn to Neo4j through its ability to model complex data structures, such as employee profiles with varying data points, and has since seen the potential of graph databases in addressing organizational talent management and retention challenges. The development team is open to feedback and plans to add more features to Spring Data Neo4j in future releases.
Aug 19, 2016
753 words in the original blog post.
In Neo4j, user-defined procedures are used to provide better performance, scalability, productivity, ease of use and security. These procedures can be created using the @Procedure annotation, which takes any Cypher type as parameters and returns a stream of Data Transfer Objects (DTO). When procedures write to the database, the @PerformWrites annotation should also be used. User-defined procedures are best suited for common tasks or frequently used tasks, and not for every single purpose.
Aug 18, 2016
254 words in the original blog post.
Neo4j, a graph database, has been used for two years and was discovered three years ago while studying statistics with a focus on social networks. It's powerful and easy to use, especially for real-time recommendation engines. The text explains how to incorporate statistical methods into these recommendations using Cypher queries. Three types of recommendations are explored: simple graph-powered recommendations, social recommendations, and similarity recommendations. The first type recommends food places based on location, while the second type recommends places liked by friends of a logged-in user. The third type uses Euclidean distance to find similar users based on their ratings. Finally, a clustering recommendation engine is introduced, which involves using statistical software like R or Python to run an algorithm and then persisting the results in Neo4j for real-time querying. This allows for complex patterns to be expressed in just a few lines of Cypher code.
Aug 17, 2016
2,147 words in the original blog post.
The author, who is a Neo4j user, was looking for an easy way to install Neo4j on their Windows system. They discovered Chocolatey, a popular package manager for Windows, which allows users to easily install software applications with just a single command line. The author converted their existing installation script from PowerShell to a Chocolatey-based installation and shared it with the community, resulting in over 1,000 downloads of the Neo4j package. The author explains how to install Neo4j using Chocolatey, including the use of package parameters to customize the installation process. They also discuss common failures that may occur during installation and plan for future updates to the Neo4j Chocolatey packages, including automating the packaging process and adding support for the Enterprise Edition. Overall, the author finds Chocolatey to be an easy and convenient method for installing Neo4j on Windows.
Aug 16, 2016
1,427 words in the original blog post.
In this interview, Paul Jongsma from Neo4j discusses their experience with building web solutions using the graph database Neo4j. He explains that they initially used relational databases but found them to be slow and unresponsive for certain use cases. Graph databases emerged as a solution, and Neo4j was chosen due to its accessibility and ease of use. Paul shares interesting results from using Neo4j, such as being able to model data in a more flexible way, which allowed him to design web pages with complex relationships between entities. He also mentions that he would tell himself to stop using relational databases if he could go back to his first project. Overall, Paul expresses his positive experience with Neo4j and looks forward to new features and optimizations in the upcoming version 3.0.
Aug 12, 2016
557 words in the original blog post.
The author reflects on their first encounter with Neo4j in 2011, learning about its simplicity and query language Cypher, which allows for easy data querying. They highlight the benefits of using a graph database like Neo4j, particularly when dealing with highly interconnected data, and share their personal experience of getting started with the technology through various tutorials and resources. The author concludes that Neo4j is a great tool for creating innovative solutions in modern applications such as virtual assistants, recommendation engines, and social networks, and encourages readers to try it out, even offering a 40% discount on a Udemy course.
Aug 11, 2016
1,002 words in the original blog post.
The European Institute for Systems Biology and Medicine (EISBM) is utilizing Neo4j, a graph database, to manage data in systems biology and medicine. The focus is on personalized medicine, which involves participatory, predictive, personalized, and preventative approaches. EISBM's work includes projects such as the Coordinating Action Systems Medicine (CASYM) project, Unbiased Biomarkers in Predication of Respiratory Diseases Outcomes (U BIOPRED), and European Translational Information and Knowledge Management Services (eTRIKS). The organization is integrating data from various sources, including genomics, clinical, and epigenetics data, to facilitate the discovery of disease subtypes. Neo4j is used for data storage, mining, analysis, visualization, and exploration due to its ability to handle complex relationships between entities. The graph database approach enables the representation of protein-protein interactions, metabolic pathways, and epigenetic modifications in a scalable and accessible manner. EISBM's work aims to provide a platform for data integration, sharing, and discovery, ultimately contributing to the development of personalized medicine and improved patient outcomes.
Aug 10, 2016
2,011 words in the original blog post.
The Neo4j community has published a wide range of content, including articles, blog posts, podcasts, videos, slides, presentations, libraries, and code repositories. These resources cover various topics related to graph databases, data storage, and Neo4j-specific technologies such as Cypher and Bolt. The content is geared towards developers and users looking to learn more about graph technology and its applications in different domains. Some of the articles focus on use cases like analyzing Pokémon relationships or detecting duplicates in financial transactions. Others explore the differences between relational and graph databases, or provide tutorials for getting started with Neo4j. Additionally, there are resources available for integrating Neo4j with other technologies, such as Node.js or Spring Data Neo4j, and libraries for working with Neo4j from various programming languages. The community is also promoting GraphConnect San Francisco, an event where attendees can meet the creators of these resources in person.
Aug 09, 2016
768 words in the original blog post.
The text discusses loading and cleaning CSV files for a healthcare data project using Neo4j, a graph database. The author starts by displaying the characteristics of the data, including its size, structure, and content. They then remove the header from the file and load it into Neo4j, creating nodes with specific properties such as NPI, address, city, state, zip, country, and more. However, they encounter an issue with fields containing delimiters, which are replaced by a forward slash to resolve the problem. The author uses Python to load the CSV file again, utilizing periodic commits to prevent memory issues when loading large files. They successfully load the healthcare provider data into Neo4j, creating relationships between nodes and demonstrating how to link data in graph technology.
Aug 08, 2016
1,232 words in the original blog post.
Schleich, a company that produces toys and models, uses Neo4j as the basis for its product data management system. The company collects all data produced during manufacturing in factories around the world and answers questions about products using a framework called Structr to build the user interface. Schleich chose Neo4j due to its flexibility and ability to provide a platform that was previously impossible with their previous software. The transition to Neo4j was successful, allowing for stable and fast data management across departments. Andreas, Dr. Weber from Schleich, recommends starting from scratch and remodeling the data entirely when switching to Neo4j, as this provides the best results. He also highlights the importance of considering customer-specific data models and language in the transition process.
Aug 05, 2016
517 words in the original blog post.
Stack Overflow's Neo4j data is being imported into a graph database. The process involves using the Stack Exchange API to fetch data, converting it from JSON to CSV, and then importing it into Neo4j using the LOAD CSV tool. The data model was determined before import, and the data was filtered to exclude irrelevant information such as question bodies and comments. The LOAD CSV tool is used to create nodes and relationships in the graph database, with tips such as merging on a key, using constraints and indexes, and applying periodic commits to improve performance. Additionally, scripting import commands can be used to automate the process. A bulk data import tool was also utilized to ingest the CSV files into Neo4j, allowing for faster import times and improved disk I/O performance. The final product includes 30 million nodes, 78 million relationships, and 280 million properties in a Neo4j database.
Aug 03, 2016
2,556 words in the original blog post.