Giter Club home page Giter Club logo

nemrod-demo's Introduction

Nemrod demo project

This project is based on a Symfony Standard Edition and allows to quickly set a demonstration environment for the Nemrod framework

  1. Requirements

  • PHP > 5.3 with php-curl extension enabled
  • Java Runtime Environment (JRE) 7
  1. Installing the project

Cloning the project

git clone http://github.com/conjecto/nemrod-demo

Installing Composer

Composer is a tool for dependency management in PHP, used by Symfony and Nemrod. If you don't have Composer yet, download it following the instructions on http://getcomposer.org/ or just run the following command:

curl -s http://getcomposer.org/installer | php

Installing the project

Then in the project directory, run

php composer.phar install

Composer will install Nemrod, Symfony and all their dependencies into the directory.

Running a web server

Run a web server allowing to access the symfony project with the following command:

php app/console server:run

The command will tell you te project's url. This is where the demo will be available at the end of the setup

Setting up a triple store and put data into it

We recommend Blazegraph, a full open-source high-performance graph database. You first need to download a bundled version of Blazegraph. It can be done here, or using curl with the following command:

curl -L https://sourceforge.net/projects/bigdata/files/bigdata/2.0.0/bigdata.jar/download > blazegraph.jar

You can then launch it with the following command:

java -server -Xmx4g -jar blazegraph.jar

You will probably need to adjust the maximm allocation pool parameter. Try for example -Xmx2g or -Xmx1g if you get an error with -Xmx4g.

The demo project is built over a set of data describing Nobel Prize laureates. Load it into Blazegraph using:

curl -X POST --data-binary "uri=http://data.nobelprize.org/dump.nt" http://localhost:9999/bigdata/sparql

If this dump doest not work because of error "org.openrdf.rio.RDFParseException: Barack Obama [line 27058]", you should download locally this dump and remove the line 27058 "http://data.nobelprize.org/resource/laureate/845 http://www.w3.org/2002/07/owl#sameAs Barack Obama". Then go on http://localhost:9999/bigdata/#update and upload this file. Then choose options Rdf Data type and N-Triples format. Click on update.

(optionnal) setting an Elasticsearch server

Elasticsearch is a search engine based on Lucene. Nemrod is able to populate an Elasticsearch index in order to make searches and list displays way faster. Follow these few steps if you want to try it on the demo.

You first need to download the current version of ElasticSearch. It can be done here. You just have to follow the installation steps. Once the server is running, populate the Elasticsearch engine with the Nobel Prize data:

php app/console nemrod:elastica:populate --index=nobel

(this operation may take a couple of minutes depending on your computer). Now the Elasticsearch section is available.

If you don't want to test elasticsearch, please comment the line "new Conjecto\Nemrod\Bundle\ElasticaBundle\ElasticaBundle()" of you AppKernel and all the elastica configuration in config.yml.

The project is ready to be tested now !

Try it at the url that was given when launching the server. For now, you can

  • browse the nobel prize by years / categories
  • add a new nobel prize and edit one
  • make a text search from elasticsearch

nemrod-demo's People

Contributors

hmaxs avatar bdecarne avatar conjectwan avatar serwan avatar

Stargazers

 avatar Adam Sanchez avatar Brad Jones avatar

Watchers

Brad Jones avatar James Cloos avatar  avatar  avatar  avatar  avatar  avatar Olivier Valette avatar

nemrod-demo's Issues

optional elastica configuration

Doc says "If you don't want to test elasticsearch, please comment the line "new Conjecto\Nemrod\Bundle\ElasticaBundle\ElasticaBundle()" of you AppKernel and all the elastica configuration in config.yml"

If you remove the elastica configuration, you get the following:
[Symfony\Component\Config\Definition\Exception\InvalidConfigurationException]
The child node "clients" at path "elastica" must be configured.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.