Skip to content

Change of Graph Database for Sunbird Knowlg #939

@pallakartheekreddy

Description

@pallakartheekreddy

Project Details

What is Sunbird Knowlg?

Sunbird Knowlg (pronounced as the word "knowledge") consists of a set of tools and services that enable you to organise, curate, create, and discover millions of assets.

For example, organizations across multiple domains such as e-Commerce, OTT, Education etc can leverage Sunbird Knowlg building block to organise their content and knowledge assets as per their domain, create targeted collections, courses, programs, projects, video repository, etc.

More details are here

Features to be implemented

Change of Graph Database for Sunbird Knowlg

Current Scenario:
We are using Neo4J 3.3 with HA Cluster setup. Neo4j Stopped releasing open-source versions after Neo4J 3.3 version.

The Neo4j 3.3 version is outdated and there is no customer support for this version. Also, it runs with only Java 8. So, We need to have an alternative open-source graph database for Sunbird Knowlg.

Janus Graph will be the right fit for Sunbird Knowlg to proceed further.

Acceptance Criteria:

  • The Database layer in the Ontology engine module should implement DAC interfaces for Janus Graph.
  • Graph DB transaction events generator should be implemented for Janus Graph.
    • It should follow the existing transaction events format to avoid compatibility issues.
    • Transaction events should be generated only for successful transactions.
  • Cluster setup of Janus Graph should be tested with Ontology engine.
  • Neo4j to Janus Graph data migration script.

Learning Path

Complexity
Complex

Skills Required
Java, Graph DB Concepts, Neo4j, Neo4j Cypher, Janus

Name of Mentors
@maheshkumargangula @pallakartheekreddy

Project size
8 Weeks

Product Set Up

https://github.com/Sunbird-Knowlg/knowledge-platform/blob/release-5.5.0/README.md

Milestones

  • Understanding of the existing neo4j Ontology engine implementation
  • Interface the Graph APIs Implementation.
  • Exploring and setup of Janus Graph cluster
  • Using Janus Graph and deprecating Neo4J.
  • Neo4J to Janus Graph Migration Script.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions