GithubHelp home page GithubHelp logo

affinity-graph-comparison's Introduction

Affinity Graph Comparison Code

This project contains the code we used to benchmark the various datastores we were considering for an affinity graph system. The actual benchmarking project is graphstore-load-test. The other five graphstore projects are the drivers used to interface with the datastores. The last project is a bulk loader for Elasticsearch, which we used to more efficiently load large datasets.

In our affinity graph system you have three entities; products, users and affinities, where affinities relate a user to a product. For example; user A likes product B. User A and Product B are the entities, and 'like' is the affinity.

While this sounds like an easy relational problem, the twist is that we want to support arbitrary key/value pairs associated with both products and users, and query on those key/value pairs. For example the system should be able to satisfy a query looking for any red haired users that like blu-ray products. Where red hair is an attribute of user, and blu-ray is an attribute on product.

Each sub-project in this folder contains a different 'driver' for each particular storage technology. In addition there is the graphstore-load-test directory which contains our testing system that we used to run queries against each driver to gauge their efficiency.

affinity-graph-comparison's People

Contributors

jexp avatar

Watchers

 avatar  avatar  avatar

Forkers

mdkmongo

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.