Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/baidu/shuttle
A fast computing framework based on Galaxy
https://github.com/baidu/shuttle
Last synced: 3 months ago
JSON representation
A fast computing framework based on Galaxy
- Host: GitHub
- URL: https://github.com/baidu/shuttle
- Owner: baidu
- License: bsd-3-clause
- Created: 2015-09-15T10:29:32.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2018-07-29T22:20:07.000Z (over 6 years ago)
- Last Synced: 2024-07-01T09:36:52.086Z (4 months ago)
- Language: C++
- Size: 1.1 MB
- Stars: 64
- Watchers: 12
- Forks: 24
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[shuttle - Galaxy上的Map Reduce计算框架](https://github.com/baidu/shuttle)
====Copyright 2015, Baidu, Inc.
## 概述
shuttle是一个基于[Galaxy分布式集群管理系统](https://github.com/baidu/galaxy)的Map Reduce计算框架。其底层采用分布式文件系统保存中间数据,具有较好的稳定性和速度。shuttle提供类似Hadoop的用户界面,能够方便的递交不同种类的任务及监视其状态。
shuttle目前仍在不断完善和发展,致力于提供更好的用户体验、更丰富的配置与功能以及更快的运算速度。
## 系统架构
shuttle与经典的Map Reduce架构类似,其利用Galaxy进行资源管理及任务调度,并从HDFS上获取输入并将输出存储在HDFS上,中间数据保存于HDFS或NFS上。shuttle由client/sdk、Master、Minion三者组成。Master将地址写入[iNexus](https://github.com/baidu/ins),方便client/sdk以及Minion进行寻址和通信。
* Master负责接受并处理client/sdk发来的请求,管理元数据,利用Galaxy部署Minion并划分输入,并接受Minion的请求分配和管理运算的任务。
* Minion从Master获取任务,进行包管理并准备好用户程序运行的环境,处理输入并递交给用户程序,并获取用户程序的输出进行处理,将用户程序的状态回报Master。
* client/sdk和用户进行交互,获取用户任务的各项信息并提交给Master,也可以从Master处获得任务的数据反馈给用户。![架构图](https://github.com/baidu/shuttle/blob/master/doc/shuttle.png?raw=true)
## 系统依赖
* 使用[Galaxy](https://github.com/baidu/galaxy)进行资源管理与任务调度
* 使用[iNexus](https://github.com/baidu/ins)进行寻址(同时被Galaxy依赖)
* 使用[sofa-pbrpc](https://github.com/baidu/sofa-pbrpc)进行通信
* 使用分布式文件系统(HDFS/NFS)进行输入输出及中间数据的存储## 系统构建
** 正在构建 **目前shuttle暂无Makefile进行构建。我们会尽快完善。