master

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 3, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	InputFiles = []string{
		"/Users/mac/GolandProjects/Go-SearchEngine/app/mapreduce/input_data/other_input_data/movies_data.csv",
		"/Users/mac/GolandProjects/Go-SearchEngine/app/mapreduce/input_data/other_input_data/movies_data1.csv",
		"/Users/mac/GolandProjects/Go-SearchEngine/app/mapreduce/input_data/other_input_data/movies_data2.csv",
	}
	MapReduceSrvIns  *MasterSrv
	MapReduceSrvOnce sync.Once
)

Functions

This section is empty.

Types

type MasterSrv

type MasterSrv struct {
	TaskQueue     chan *types.MapReduceTask // 等待执行的task
	TaskMeta      map[int]*types.MasterTask // 当前所有task的信息
	MasterPhase   types.State               // Master的阶段
	NReduce       int                       // Reduce的数量
	InputFiles    []string                  // 输入的文件
	Intermediates [][]string                // Map任务产生的R个中间文件的信息

	mapreduce.UnimplementedMapReduceServiceServer
}

func GetMapReduceSrv

func GetMapReduceSrv() *MasterSrv

func NewMaster

func NewMaster(files []string, nReduce int) *MasterSrv

func (*MasterSrv) Done

func (m *MasterSrv) Done() bool

func (*MasterSrv) MasterAssignTask

func (m *MasterSrv) MasterAssignTask(ctx context.Context, req *mapreduce.MapReduceTask) (reply *mapreduce.MapReduceTask, err error)

MasterAssignTask master 等待worker调用

func (*MasterSrv) MasterTaskCompleted

func (m *MasterSrv) MasterTaskCompleted(ctx context.Context, req *mapreduce.MapReduceTask) (resp *mapreduce.MasterTaskCompletedResp, err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL