[ 
https://issues.apache.org/jira/browse/S2GRAPH-125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15654006#comment-15654006
 ] 

DOYUNG YOON commented on S2GRAPH-125:
-------------------------------------

So far I added following advanced options on Label.

# skipVertex: when single edge entered into system, we automatically store 
source vertex and target vertex. set this true skip this implicit vertex 
updates.

# skipReverse: when {{a->out->101}} edge inserted, skip automatic reverse edge 
{{101<-in<-a}} edge creation.

# walLog: control how to publish {{WALLOG}} into kafka.

ex)

1. not storing reverse edge, vertices, but only publish request edge itself.

{noformat}
{
    "skipReverse": true,
    "skipVertex": true,
    "walLog": {
        "method": "default"
    }
}
{noformat}

2. drop {{WALLOG}}

{noformat}
{
    "walLog": {
        "method": "drop"    
    }    
}
{noformat}

3. sampling {{WALLOG}} 50%.

{noformat}
{
    "walLog": {
        "method": "sample",        
        "rate": 0.5
    }    
}
{noformat}

Please review PR at https://github.com/apache/incubator-s2graph/pull/94.

> Add options field on Label model for controlling advanced options.
> ------------------------------------------------------------------
>
>                 Key: S2GRAPH-125
>                 URL: https://issues.apache.org/jira/browse/S2GRAPH-125
>             Project: S2Graph
>          Issue Type: New Feature
>    Affects Versions: 0.2.0
>            Reporter: DOYUNG YOON
>            Assignee: DOYUNG YOON
>            Priority: Minor
>              Labels: options
>             Fix For: 0.2.0
>
>   Original Estimate: 168h
>  Remaining Estimate: 168h
>
> Suggestion to add place holder for options per {{Label}}.
> While I was using S2Graph in production, there were many cases to control 
> whether publishing or not publishing input request to Kafka({{WALLOG}}).
> For more detail, let me share my case.
> When I insert bulk data(or immutable data that is produced by batch 
> processing, for example similarity matrix), I do not want to publish inserted 
> {{Edge}} into {{WALLOG}}, since all data is duplicate from original bulk data.
> Maybe options to control publishing all/sampling/drop {{WALLOG}} per each 
> {{EDGE}} can be helpful.
> Also the benefit of automatically(implicitly) create reverse direction index 
> can be problematic in some case like S2GRAPH-123.
> For example, user insert edge {{a->out->101}}, then {{101<-in<-a}} also 
> automatically created and some case, especially 101 has lots of incoming 
> edges which means 101 is super-node, user may want to skip implicit reverse 
> direction edge.
> I think we have no idea what other options may be necessary, so I am 
> suggesting add {{options}} field on {{Label}} to hold advanced options. 
> In my opinion, storing {{JSON}} string(kind like config) as {{options}} make 
> sense since it is easy to implement, but I am open to any other suggestions.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to