DOYUNG YOON created S2GRAPH-226: ----------------------------------- Summary: Provide example spark jobs to explain how to utilize WAL log. Key: S2GRAPH-226 URL: https://issues.apache.org/jira/browse/S2GRAPH-226 Project: S2Graph Issue Type: New Feature Components: s2core, s2jobs Reporter: DOYUNG YOON
Even though s2graph publish all incoming vertex/edge into Kafka, there is no example showing how to use this WAL log. I suggest adding a simple example showing how to process WAL and let me explain what use cases this example can benefit. At kakao, s2graph have been used as the fact storage, which store all user's activities such as click content, buy a product, search query. {noformat} [{ "timestamp": 1, "elem": "e", "from": "steamshon", "to": "s2graph", "label": "search_query", "props": {} }, { "timestamp": 10, "elem": "e", "from": "steamshon", "to": "github.com/apache/incubator-s2graph", "label": "content_click", "props": {} }, { "timestamp": 12, "elem": "v", "id": "steamshon", "serviceName": "s2graph", "columnName": "user", "props": { "gender": "M" } }] {noformat} Each activity, label in s2graph words, consisting of their own graph, but when they are all connected together, then it gives much more information. Above edges can be aggregated as Vertex. It is up to users how to connect each graph, but in our case, we used `user` to merge multiple graphs. for example, we made each activity such as click content, buy a product, search query all use the same `userId` for the same `user`. Below is simple example data. {noformat} { "timestamp": 10, "elem": "v", "id": "steamshon", "serviceName": "s2graph", "columnName": "user", "props": { "gender": "M", "agg": [{ "timestamp": 1, "to": "s2graph", "label": "search_query", "props": {} }, { "timestamp": 10, "to": "github.com/apache/incubator-s2graph", "label": "content_click", "props": {} }] } } {noformat} This connected graph can be used not only for OLTP but also OLAP. I believe s2graph WAL log is good way to integrate OLTP and OLAP, and adding this example can help for user to understand how to leverage it. -- This message was sent by Atlassian JIRA (v7.6.3#76005)