Interface LineageGraph

    • Method Detail

      • storeToGraph

        void storeToGraph​(Set<GraphContext> graphContext)
        Stores a lineage event into the lineage graph database
        Parameters:
        graphContext - graph Collection
      • updateNeighbours

        void updateNeighbours​(String nodeGUID,
                              Set<String> neighboursGUIDS)
        Updates the neighbours of a node by removing all the relationships that no longer have a direct link to the entity.
        Parameters:
        nodeGUID - - the identifier of the entity that was updated
        neighboursGUIDS - - the identifiers of the nodes that have a direct relationship to the entity
      • updateEntity

        void updateEntity​(LineageEntity lineageEntity)
        Updates a vertex in the Graph
        Parameters:
        lineageEntity - entity to be updated
      • upsertRelationship

        void upsertRelationship​(LineageRelationship lineageRelationship)
        Create or update the relationship between two edges In case the vertexes are not created, they are firstly created
        Parameters:
        lineageRelationship - relationship to be updated or created
      • updateRelationship

        void updateRelationship​(LineageRelationship lineageRelationship)
        Updates a vertex in the Graph
        Parameters:
        lineageRelationship - relationship to be updated
      • updateClassification

        void updateClassification​(Set<GraphContext> classificationContext)
        Updates an entity's classification in the Graph
        Parameters:
        classificationContext - classification context
      • deleteClassification

        void deleteClassification​(Set<GraphContext> classificationContext)
        Deletes an entity's classification in the Graph
        Parameters:
        classificationContext - classification context
      • deleteRelationship

        void deleteRelationship​(String guid)
        Deletes a relationship in the graph
        Parameters:
        guid - unique identifier of the entity to be deleted
      • deleteEntity

        void deleteEntity​(String guid,
                          Object version)
        /** Deletes a vertex in the graph
        Parameters:
        guid - unique identifier of the entity to be deleted
        version - version of the entity to be deleted
      • performLineageGraphJob

        void performLineageGraphJob()
        Task that the scheduler performs based on the interval
      • saveAssetLineageUpdateTime

        void saveAssetLineageUpdateTime​(Long timestamp)
        Save last asset lineage update time in the graph
        Parameters:
        timestamp - the standard epoch time in milliseconds
      • getAssetLineageUpdateTime

        Optional<Long> getAssetLineageUpdateTime()
        Gets last asset lineage update time from the graph
        Returns:
        last update time represented as epoch time milliseconds
      • isEntityInGraph

        boolean isEntityInGraph​(String guid)
        Returns whether an entity exists in the graph or not
        Parameters:
        guid - the lineage entity guid
        Returns:
        the boolean