分布式计算系统:Go Glow

jopen 9年前

Glow 是使用 Go 编写的易用分布式计算系统,是 Hadoop Map Reduce,Spark,Flint,Samza 等等的替代品。

Glow 的目标是提供一个库,可以在并行线程或者分布式集群机器中进行更简单计算。

安装:

go get github.com/chrislusf/glow  go get github.com/chrislusf/glow/flow

简单示例:

package main  import (      "flag"      "strings"      "github.com/chrislusf/glow/flow"  )  func main() {      flag.Parse()      flow.New().TextFile(          "/etc/passwd", 3,      ).Filter(func(line string) bool {          return !strings.HasPrefix(line, "#")      }).Map(func(line string, ch chan string) {          for _, token := range strings.Split(line, ":") {              ch <- token          }      }).Map(func(key string) int {          return 1      }).Reduce(func(x int, y int) int {          return x + y      }).Map(func(x int) {          println("count:", x)      }).Run()  }

分布式计算系统:Go Glow

项目主页:http://www.open-open.com/lib/view/home/1446216690898