Skip to content
This repository has been archived by the owner on Jan 5, 2024. It is now read-only.
/ Maple-Juice Public archive

MapleJuice is a distributed computing framework designed for the efficient execution of Maple (Map) and Juice (Reduce) jobs in a parallel and fault-tolerant manner.

Notifications You must be signed in to change notification settings

alexbadia1/Maple-Juice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MapleJuice Project

Welcome to the MapleJuice Project!

Please see the report.pdf for background information.

The hadoop folder contains map-reduce that we benchmarked MapleJuice against.

Quickstart

# 0. Ensure you have python 3.6.8 or higher
python3 --version

# 1. Clone
git clone https://github.com/your-username/MapleJuice.git
cd MapleJuice

# 2. Setup
pip install .

# 3. Activate MapleJuice
maplejuice

# Simple Distributed File System (SDFS) Command Cheatsheet
#
# Create and update files (base_dir is a relative directory the script was invoked in)
sdfs put -local_filename bible.txt -sdfs_filename foo.txt -base_dir ../large.txt

# List all files the Name Node knows about (defaults to fa23-cs425-7810.cs.illinois.edu)
#
sdfs ls

# List files stored on a data node (choices=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
#
sdfs store -dn 1

# Retrieve a file from the SDFS
#
sdfs get -sdfs_filename illiad.txt -local_filename result.txt
#
# Delete the file from the SDFS
#
sdfs delete -sdfs_filename foo.txt
#
# Membership Failure Detection Command Cheatsheet
#
# Activates a CLI menu program to send admin commands to the underlying membership detection service
membership

Demo Script Cheatsheet

A cheatsheet of anticipated commands for demo to the teaching assistants.

# 0. Load data
sdfs put-dir -dir demo

# 1. Percent Composition
maple -maple_exe maple1.py -num_maples 10 -sdfs_intermediate_filename_prefix fiber-int1 -sdfs_src_directory demo -partition_type r -maple_cmd_args '-interconne Fiber'
juice -juice_exe juice1.py -num_juices 10 -sdfs_intermediate_filename_prefix fiber-int1 -sdfs_dest_filename fiber-out1 -partition_type r --delete_input
maple -maple_exe maple2.py -num_maples 10 -sdfs_intermediate_filename_prefix fiber-int2 -sdfs_src_directory fiber-out1 -partition_type r
juice -juice_exe juice2.py -num_juices 10 -sdfs_intermediate_filename_prefix fiber-int2 -sdfs_dest_filename fiber-out2 -partition_type r --delete_input

maple -maple_exe maple1.py -num_maples 10 -sdfs_intermediate_filename_prefix fiber_radio-int1 -sdfs_src_directory demo -partition_type r -maple_cmd_args '-interconne Fiber/Radio'
juice -juice_exe juice1.py -num_juices 10 -sdfs_intermediate_filename_prefix fiber_radio-int1 -sdfs_dest_filename fiber_radio-out1 -partition_type r --delete_input
maple -maple_exe maple2.py -num_maples 10 -sdfs_intermediate_filename_prefix fiber_radio-int2 -sdfs_src_directory fiber_radio-out1 -partition_type r
juice -juice_exe juice2.py -num_juices 10 -sdfs_intermediate_filename_prefix fiber_radio-int2 -sdfs_dest_filename fiber_radio-out2 -partition_type r --delete_input

maple -maple_exe maple1.py -num_maples 10 -sdfs_intermediate_filename_prefix radio-int1 -sdfs_src_directory demo -partition_type r -maple_cmd_args '-interconne Radio'
juice -juice_exe juice1.py -num_juices 10 -sdfs_intermediate_filename_prefix radio-int1 -sdfs_dest_filename radio-out1 -partition_type r --delete_input
maple -maple_exe maple2.py -num_maples 10 -sdfs_intermediate_filename_prefix radio-int2 -sdfs_src_directory radio-out1 -partition_type r
juice -juice_exe juice2.py -num_juices 10 -sdfs_intermediate_filename_prefix radio-int2 -sdfs_dest_filename radio-out2 -partition_type r --delete_input

maple -maple_exe maple1.py -num_maples 10 -sdfs_intermediate_filename_prefix None-int1 -sdfs_src_directory demo -partition_type r -maple_cmd_args '-interconne None'
juice -juice_exe juice1.py -num_juices 10 -sdfs_intermediate_filename_prefix None-int1 -sdfs_dest_filename None-out1 -partition_type r --delete_input
maple -maple_exe maple2.py -num_maples 10 -sdfs_intermediate_filename_prefix None-int2 -sdfs_src_directory None-out1 -partition_type r
juice -juice_exe juice2.py -num_juices 10 -sdfs_intermediate_filename_prefix None-int2 -sdfs_dest_filename None-out2 -partition_type r --delete_input

maple -maple_exe maple1.py -num_maples 10 -sdfs_intermediate_filename_prefix BLANK-int1 -sdfs_src_directory demo -partition_type r -maple_cmd_args '-interconne (BLANK)'
juice -juice_exe juice1.py -num_juices 10 -sdfs_intermediate_filename_prefix BLANK-int1 -sdfs_dest_filename BLANK-out1 -partition_type r --delete_input
maple -maple_exe maple2.py -num_maples 10 -sdfs_intermediate_filename_prefix BLANK-int2 -sdfs_src_directory BLANK-out1 -partition_type r
juice -juice_exe juice2.py -num_juices 10 -sdfs_intermediate_filename_prefix BLANK-int2 -sdfs_dest_filename BLANK-out2 -partition_type r --delete_input

maple -maple_exe maple1.py -num_maples 10 -sdfs_intermediate_filename_prefix SPACE-int1 -sdfs_src_directory demo -partition_type r -maple_cmd_args '-interconne " "'
juice -juice_exe juice1.py -num_juices 10 -sdfs_intermediate_filename_prefix SPACE-int1 -sdfs_dest_filename SPACE-out1 -partition_type r --delete_input
maple -maple_exe maple2.py -num_maples 10 -sdfs_intermediate_filename_prefix SPACE-int2 -sdfs_src_directory SPACE-out1 -partition_type r
juice -juice_exe juice2.py -num_juices 10 -sdfs_intermediate_filename_prefix SPACE-int2 -sdfs_dest_filename SPACE-out2 -partition_type r --delete_input


# Get results
sdfs get -sdfs_filename fiber-out2 -local_filename fiber-out2-result.txt
sdfs get -sdfs_filename fiber_radio-out2 -local_filename fiber_radio-out2.txt
sdfs get -sdfs_filename radio-out2 -local_filename radio-out2-result.txt
sdfs get -sdfs_filename None-out2 -local_filename None-out2-result.txt
sdfs get -sdfs_filename BLANK-out2 -local_filename BLANK-out2-result.txt


# 2. SQL Filter (Keyword Search)
sql sql/filter.sqlx -sdfs_dest_filename filter-result.txt -partition_type r
sdfs get -sdfs_filename champaign.txt -local_filename filter-result.txt

About

MapleJuice is a distributed computing framework designed for the efficient execution of Maple (Map) and Juice (Reduce) jobs in a parallel and fault-tolerant manner.

Resources

Stars

Watchers

Forks