Welcome to the

neo search

We provide better search function

ABOUT

Neo Search is a search engine based on the graph database—Neo4j. An API is used to get the keywords of clients and then search the results from all registered stores.

  • galleryitem
  • galleryitem


Find our project from: http://52.0.74.69/


DetailedDescription

The data can be gotten from the MetaStore. Tuples can be transmitted in the format of JSON.
Our first task is to deal with the data we got and store them in our database.
Secondly, we can search the keywords got from users in our database and return the result also in JSON format.
Finally, the result will be presented as a table to the users.

STEPS

webicon
Store

After gotten the data, we need to analyze it for the format of it is JSON. This means each tuple will have a key and a value, and we store the key and value in the node in our database. Every JSON object will be stored as a node.

webicon
Search

There are two difficulties in the step. First we need to search the keyword while the property is unknown of the node. Second, it is hard to deal with multiple key words at a time.
To deal with the first problem, we store the properties in a file and store the file in the memory. Each time we read the file in the memory, so that a continuous search can be achieve. As to the second problem, we deal with multiple key words as a string and split the string by space to get every key word.

webicon
Return

The result will be returned to the front end in JSON format, just like the first step. Then we need to analyze the JSON format data and present it as a table to the user.

How to install

Step 1 install

sudo apt-get install maven
sudo apt-get install mysql-server
sudo apt-get install nginx
sudo apt-get install openjdk-7-jdk

Step 2 folders and environments

cd /opt
sudo mkdir project
cd project

Step 3 clone project

sudo git clone
https://github.com/infsci2711/MultiDBs-KeywordSearchG-WebCleint2.git
sudo git clone
https://github.com/infsci2711/MultiDBs-KeywordSearchG-Server2.git
sudo git clone
https://github.com/infsci2711/MultiDBs-Utils.git

Step 4 set client

cd /usr/share/nginx
sudo rm -R html
sudo ln -sv /opt/project/MultiDBs-KeywordSearchG-WebCleint2 html

Portfolio Item
Setp 5 install maven

cd /opt/project/MultiDBs-Utils
mvn install
cd /opt/project/MultiDBs-KeywordSearchG-Server2
mvn install
cd /opt/project/MultiDBs-KeywordSearchG-Server2/MultiDBsKeywordSearchGServerAPI
mvn install

Step 6 cd /opt

sudo chown -R student:student project
kill -9 $(ps aux | grep java | grep multidbskeywordsearchgserverapi-0.1-SNAPSHOT.jar | awk '{print $2}')
cd /opt/project/MultiDBs-KeywordSearchG-Server2/MultiDBsKeywordSearchGServerAPI

Step 7 result view

Go to ~/GitHub/MultiDBs-KeywordSearchG-WebCleint2
and change the /MultiDBs-KeywordSearchG-WebCleint2/javascripts/knockout_models/ResultsView.js set the restBaseUrl to the address for your lacal machine.

Step 8 Rest Api

Go to MultiDBsKeywordSearchGServerAPI/src/main/
resources/config.properties, Set the properties of REST API to your own setting.

Step 8 Get Start

Then start service by: Start_service.sh
Open browser, enter “*/Generate/data”, which * means your own server address.
Then, you can use “*” to search.

If you like what we do, and think we could work together, then get in touch!

CONTACT US

API Documentation




What it does

REST API is a method to connect back end and front end, which can transmit JSON formatted data to a certain URL.

Input params

Keywords

Path

NeoSearch/{keywords}

Out params

JSON formatted data
For example:
{"Gender":"Male","name":"Napoleon","School":"IS"}

Method

GET: a method used to retrieve and read a representation of a resource. We get the keywords from webpage and send back the result in JSON format.

The Team

Get to know our team members!


Portrait Keran Zhao
Leader

Back end, neo4j

Portrait Jun Fu
Team Member

Back end, neo4j

Portrait Liyue Yu
Team Member

Front end, neo4j

Portrait Si Yang
Team Member

Front end

Portrait Mo Chen
Team Member

Front end and report