SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
.

.

YALMS Basics

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

2 /26
2/26
.

.

YALMS Basics
.
YALMS stands for ...
.
nother ecture
. et

Y A
•

L

Management System

next generation digital classroom 02

robots

• several
: video annotation, content packing, multimedia storage, etc.
• can run in clouds and cloud-based classrooms
◦ specifically, in VM-per-student environments
• knowledge extraction and social components

02 "Homepage of the YALMS software presented in this paper" https://github.com/maratishe/yalms (2013)
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

3 /26
3/26
.

.

YALMS : The Big Picture
2013.07・ET研

YALMS: Intro

2013.11・IN研

YALMS.cloud
VM sync groupdrive
content
2013.09・ET研

YALMS.annotation
PDF

video

2014.01・LOIS研

slices

YALMS.format

2014.01・ET研

stream record
replay storage

YALMS.streaming
DASH Adaptive

HTML5

2013.10・ITE-MMS研

YALMS.hiperf
SSD
multicore

YALMS.done!
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

4 /26
4/26
.

.

YALMS.groupdrive : The Specs

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

5 /26
5/26
.

.

YALMS.groupdrive : Overall Idea
Master
Copy

Slave
Copy

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

Slave
Copy

Slave
Copy

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

6 /26
6/26
.

.

YALMS.groupdrive : The Specs
1.

realtime async. asymm. P2P sync -- but not
distributed storage

fully distributed, can work without a master
3. smart and adaptive, fit for any environment
2.

◦ remote master, fully distributed, throughput-limited, clouds, etc.

4. efficient with
5. API with

large files -- a sub-file data grain

cross-platform implementation

◦ Linux, Windows, VMs

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

7 /26
7/26
.

.

YALMS.groupdrive : Existing (bad)
Solutions

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

8 /26
8/26
.

.

Bad Solution : BitTorrent
bad solution
needs central registry -- Tracker
good only with many peers, too much overhead with few
◦ rarest-first policy is not fit for the problem
good for download, but what about upload?

• a very
•
•
•

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

9 /26
9/26
.

.

Bad Solution : DSync
• a paper in 05 -- the closest rival
• aggregation from

multiple sources while optimizing load

• not really distributed -•

single point prospective -- o2m or o2o

no practical considerations -- no measurement, ordered lists, etc.

05 H.Pucha+3 "Adaptive File Transfers for Diverse Environments" USENIX Annual Technical Conference (2008)
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

10 /26
10/26
.

.

Bad Solution : P2P Streaming
…
Share

video
streaming 04

• good for
06

• again, bad for

bi-directional

Content
Provider
(origin)

syncs
P2P Network

04 myself+0 "Multi-Source Stream Aggregation in the Cloud" Wiley Book on Content Delivery (ACDN) (2013)
06 myself+0 "Extremely Scalable and Low Demand Live P2P Streaming based on Variable Bitrate" CANDAR (2013)
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

11 /26
11/26
.

.

Bad Solution : Group Virtualization
Service
traffic

Service

Application

• specific to

remote
services 07

Service
Provider

Virtual
Wireless
User

Wireless
User

Wireless
User

Wireless
User

• does not work

fully
local syncs
not specific to
well with

•

syncs

07 myself "Virtual Wireless User: A Practical Design for Parallel MultiConnect Using WiFi Direct..." Mobiquitous (2013)
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

12 /26
12/26
.

.

Proposal and Design

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

13 /26
13/26
.

.

Proposal : Fundamentals
.
Objective
.
+
.

API Implementation of the proposed group drive
• standard

RESTful API

• implemented in PHP
• cross-platform

e2e throughput -- response time
avoid congesting the master

• adaptive to
•

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

14 /26
14/26
.

.

Design : PUSH/PULL Basics
• simple: 1 PULL and

.
The PULL
.
• regularly

X PUSH rounds, X peers in each round -- X is scale

ask peers for changes, new content comes in replies

• do not push the newly recieved content
.
.
The PUSH
.
• push to
for quick distribution
.
.
Conflicts
.
... ignored for now, treat like in GoogleDrive, etc.

X peers in X rounds

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

15 /26
15/26
.

.

Design : The MFFxR Unit
• basic
•
•

list unit for PUSHes and PULLs -- ordered by decreasing

throughput
Random Peer is basically for measurement/discovery
scale is a global parameter

Self

List:M

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

List:MF

List:MFF

List:MFF+R

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

16 /26
16/26
.

.

Design : Peer Discovery Roadmap
• dynamically incorporate

new peers
Master
REP( peers)

REQ()

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

Update
peers

Done

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

17 /26
17/26
.

.

Design : PULL Roadmap
• a

roadmap rather than state machine
Error,
failure,
timeout

REP( null)
REP( block, epoch)

REQ( state)
Scale (s)

Align
peers
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

MFFF…
+R

Notify

Replace

(if new block)

Done

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

18 /26
18/26
.

.

Design : PUSH Roadmap
REP( OK)
REP( Collision)

REQ(block)
Scale (s)

Align
peers

MFFF…
+R

Pick next
from MFFF…
for 2nd round

I already
have it!

(double up)

Done
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

Notify

If M or R

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

19 /26
19/26
.

.

Experiments

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

20 /26
20/26
.

.

Experiments
Traditional (10 clients)
Traditional (1 client)
YALMS.groupdrive Remote Master (10 peers and scale 2)
YALMS.groupdrive Local Only (10 peers and scale 2)
1

•

has the file
• try various

environments

0.8
Peer completion ratio

10Gb file
initial state: only master

• one

0.6

0.4

0.2

0
0
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

0.5

1

1.5

2
2.5
log( time)

3

3.5

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

4

4.5

21 /26
21/26
.

.

Implementation and API

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

22 /26
22/26
.

.

Implementation : Basic Unit of Info.
Exchange
• standard unit of data exchange -- JSON -- part of API 03
• some parts are not used -- blob only used for PUSHes/PULLs
Datatype

Parameter
Comments
name

string relpath

Relative to top folder

string filename
long blockpos
int blocksize
double mtime
string abspath
blob content

Position of the head byte of the block in file
Fixed for each session
Epoch time of last update for that block at Master
Path for this block at Master. Not used by Slave Copies.
Blob: binary string. Used when needed.

03 "Homepage of the YALMS.groupdrive project" https://github.com/maratishe/yalms.groupdrive (2013)
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

23 /26
23/26
.

.

Implementation : Actual API
MFFxR is outside of the API (part of implementation)
state is a flat JSON of items (keys) and MD5 digests (values) 03
APIs are standard RESTfull HTTP request/reply routines

• per-peer,
•
•

API1: pull(state) − −reply(dataunit)
• API2: push(dataunit) − −reply(status)
•

03 "Homepage of the YALMS.groupdrive project" https://github.com/maratishe/yalms.groupdrive (2013)
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

24 /26
24/26
.

.

Implementation : Software Design
Linux but will work on Windows using portable TinyWeb 03
Web
Server

Web
Server

OS, System

Reps

Reqs

OS, System

• prefers

wget

wget

Reps

Reqs

03 "Homepage of the YALMS.groupdrive project" https://github.com/maratishe/yalms.groupdrive (2013)
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

25 /26
25/26
.

.

That’s all, thank you ...

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

26 /26
26/26
.

.

[01]

(2013)
The enPiT Project
http://www.enpit.jp

[02]

(2013)
Homepage of the YALMS software presented in this paper
https://github.com/maratishe/yalms

[03]

(2013)
Homepage of the YALMS.groupdrive project
https://github.com/maratishe/yalms.groupdrive

[04] myself+0 (2013)
Multi-Source Stream Aggregation in the Cloud
Wiley Book on Content Delivery (ACDN)
[05] H.Pucha+3 (2008)
Adaptive File Transfers for Diverse Environments
USENIX Annual Technical Conference
M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

26 /26
26/26
.

.

[06] myself+0 (2013)
Extremely Scalable and Low Demand Live P2P Streaming based on Variable Bitrate
CANDAR
[07] myself (2013)
Virtual Wireless User: A Practical Design for Parallel MultiConnect Using WiFi
Direct...
Mobiquitous
[08]

(2013)
Dropbox Core API
https://www.dropbox.com/developers/core

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 ---

26 /26
26/26

Weitere ähnliche Inhalte

Andere mochten auch

Andere mochten auch (8)

Zeptolab - NOAH13 London
Zeptolab - NOAH13 LondonZeptolab - NOAH13 London
Zeptolab - NOAH13 London
 
Cloud Design Patterns
Cloud Design PatternsCloud Design Patterns
Cloud Design Patterns
 
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
ARC302 AWS Cloud Design Patterns - AWS re: Invent 2012
 
Introduction to Container Management on AWS
Introduction to Container Management on AWSIntroduction to Container Management on AWS
Introduction to Container Management on AWS
 
Why APIs are Different Than Integration
Why APIs are Different Than IntegrationWhy APIs are Different Than Integration
Why APIs are Different Than Integration
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
An Introduction to Kubernetes
An Introduction to KubernetesAn Introduction to Kubernetes
An Introduction to Kubernetes
 
Real-world polyglot programming on the JVM - Ben Summers (ONEIS)
Real-world polyglot programming on the JVM  - Ben Summers (ONEIS)Real-world polyglot programming on the JVM  - Ben Summers (ONEIS)
Real-world polyglot programming on the JVM - Ben Summers (ONEIS)
 

Ähnlich wie YALMS: A Group Drive API for Cloud-Based Classrooms

Unified Data API for Distributed Cloud Analytics and AI
Unified Data API for Distributed Cloud Analytics and AIUnified Data API for Distributed Cloud Analytics and AI
Unified Data API for Distributed Cloud Analytics and AI
Alluxio, Inc.
 
IEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia Case
IEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia CaseIEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia Case
IEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia Case
Kalman Graffi
 
Nosql-columbia-feb2011
Nosql-columbia-feb2011Nosql-columbia-feb2011
Nosql-columbia-feb2011
siculars
 
Population Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself TechnologyPopulation Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself Technology
Tokyo University of Science
 

Ähnlich wie YALMS: A Group Drive API for Cloud-Based Classrooms (20)

YALMS: A Data Structure for Storage and Replay of Multimedia Content in Digit...
YALMS: A Data Structure for Storage and Replay of Multimedia Content in Digit...YALMS: A Data Structure for Storage and Replay of Multimedia Content in Digit...
YALMS: A Data Structure for Storage and Replay of Multimedia Content in Digit...
 
NicerCover v2: A Serverless Webapp for Social Networking on Top of Scientific...
NicerCover v2: A Serverless Webapp for Social Networking on Top of Scientific...NicerCover v2: A Serverless Webapp for Social Networking on Top of Scientific...
NicerCover v2: A Serverless Webapp for Social Networking on Top of Scientific...
 
NiceCover: A Serverless Webapp for Crowdsourcing Data Extraction and Knowledg...
NiceCover: A Serverless Webapp for Crowdsourcing Data Extraction and Knowledg...NiceCover: A Serverless Webapp for Crowdsourcing Data Extraction and Knowledg...
NiceCover: A Serverless Webapp for Crowdsourcing Data Extraction and Knowledg...
 
How to Build a Generic Fog Cloud Box
How to Build a Generic Fog Cloud BoxHow to Build a Generic Fog Cloud Box
How to Build a Generic Fog Cloud Box
 
Shawn-Averkamp-feb25
Shawn-Averkamp-feb25Shawn-Averkamp-feb25
Shawn-Averkamp-feb25
 
Unified Data API for Distributed Cloud Analytics and AI
Unified Data API for Distributed Cloud Analytics and AIUnified Data API for Distributed Cloud Analytics and AI
Unified Data API for Distributed Cloud Analytics and AI
 
Tutorial Haddop 2.3
Tutorial Haddop 2.3Tutorial Haddop 2.3
Tutorial Haddop 2.3
 
E2E Services using Cloud Visitation Platforms
E2E Services using Cloud Visitation PlatformsE2E Services using Cloud Visitation Platforms
E2E Services using Cloud Visitation Platforms
 
Cloudmesh feb-2016 2 (1)
Cloudmesh feb-2016 2 (1)Cloudmesh feb-2016 2 (1)
Cloudmesh feb-2016 2 (1)
 
Cloud Probing
Cloud ProbingCloud Probing
Cloud Probing
 
IEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia Case
IEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia CaseIEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia Case
IEEE ICC 2013 - Symbiotic Coupling of P2P and Cloud Systems: The Wikipedia Case
 
Hadoop pycon2011uk
Hadoop pycon2011ukHadoop pycon2011uk
Hadoop pycon2011uk
 
Nosql-columbia-feb2011
Nosql-columbia-feb2011Nosql-columbia-feb2011
Nosql-columbia-feb2011
 
Population Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself TechnologyPopulation Management in Clouds is a Do-It-Yourself Technology
Population Management in Clouds is a Do-It-Yourself Technology
 
Fog Cloud Caching at Network Edge via Local Hardware Awareness Spaces
Fog Cloud Caching at Network Edge via Local Hardware Awareness SpacesFog Cloud Caching at Network Edge via Local Hardware Awareness Spaces
Fog Cloud Caching at Network Edge via Local Hardware Awareness Spaces
 
Scaleable PHP Applications in Kubernetes
Scaleable PHP Applications in KubernetesScaleable PHP Applications in Kubernetes
Scaleable PHP Applications in Kubernetes
 
Cloud Optimized Big Data
Cloud Optimized Big DataCloud Optimized Big Data
Cloud Optimized Big Data
 
Technologie Proche: Imagining the Archival Systems of Tomorrow With the Tools...
Technologie Proche: Imagining the Archival Systems of Tomorrow With the Tools...Technologie Proche: Imagining the Archival Systems of Tomorrow With the Tools...
Technologie Proche: Imagining the Archival Systems of Tomorrow With the Tools...
 
Architecting a Heterogeneous Data Platform Across Clusters, Regions, and Clouds
Architecting a Heterogeneous Data Platform Across Clusters, Regions, and CloudsArchitecting a Heterogeneous Data Platform Across Clusters, Regions, and Clouds
Architecting a Heterogeneous Data Platform Across Clusters, Regions, and Clouds
 
Softshake 2013: Introduction to NoSQL with Couchbase
Softshake 2013: Introduction to NoSQL with CouchbaseSoftshake 2013: Introduction to NoSQL with Couchbase
Softshake 2013: Introduction to NoSQL with Couchbase
 

Mehr von Tokyo University of Science

Mehr von Tokyo University of Science (20)

A Method for Cloud-Assisted Secure Wireless Grouping of Client Devices at Net...
A Method for Cloud-Assisted Secure Wireless Grouping of Client Devices at Net...A Method for Cloud-Assisted Secure Wireless Grouping of Client Devices at Net...
A Method for Cloud-Assisted Secure Wireless Grouping of Client Devices at Net...
 
Ultrasound Relative Positioning for IoT Devices in Dense Wireless Spaces
Ultrasound Relative Positioning for IoT Devices in Dense Wireless SpacesUltrasound Relative Positioning for IoT Devices in Dense Wireless Spaces
Ultrasound Relative Positioning for IoT Devices in Dense Wireless Spaces
 
Towards a Packet Traffic Genome Project as a Method for Realtime Sub-Flow Tra...
Towards a Packet Traffic Genome Project as a Method for Realtime Sub-Flow Tra...Towards a Packet Traffic Genome Project as a Method for Realtime Sub-Flow Tra...
Towards a Packet Traffic Genome Project as a Method for Realtime Sub-Flow Tra...
 
What if We Atomize Student Data and Apps and Put Them on Docker Containers?
What if We Atomize Student Data and Apps and Put Them on Docker Containers?What if We Atomize Student Data and Apps and Put Them on Docker Containers?
What if We Atomize Student Data and Apps and Put Them on Docker Containers?
 
Large-Scale Crowdsourcing by Vehicular Data Packets in a Sparse Roadside Infr...
Large-Scale Crowdsourcing by Vehicular Data Packets in a Sparse Roadside Infr...Large-Scale Crowdsourcing by Vehicular Data Packets in a Sparse Roadside Infr...
Large-Scale Crowdsourcing by Vehicular Data Packets in a Sparse Roadside Infr...
 
On Performance Under Hotspots in Hadoop versus Bigdata Replay Platforms
On Performance Under Hotspots in Hadoop versus Bigdata Replay PlatformsOn Performance Under Hotspots in Hadoop versus Bigdata Replay Platforms
On Performance Under Hotspots in Hadoop versus Bigdata Replay Platforms
 
Taking the Step from Software to Product Development \\ when teaching PBL at ...
Taking the Step from Software to Product Development \\ when teaching PBL at ...Taking the Step from Software to Product Development \\ when teaching PBL at ...
Taking the Step from Software to Product Development \\ when teaching PBL at ...
 
Design and Implementation of a 3-Party Cloud-Backed Handshake for Secure Grou...
Design and Implementation of a 3-Party Cloud-Backed Handshake for Secure Grou...Design and Implementation of a 3-Party Cloud-Backed Handshake for Secure Grou...
Design and Implementation of a 3-Party Cloud-Backed Handshake for Secure Grou...
 
The Switchboard Optimization Problem and Heuristics for Cut-Through Networking
The Switchboard Optimization Problem and Heuristics for Cut-Through NetworkingThe Switchboard Optimization Problem and Heuristics for Cut-Through Networking
The Switchboard Optimization Problem and Heuristics for Cut-Through Networking
 
The Switchboard Traffic Engineering Problem for Mixed Contention/Cut-Through ...
The Switchboard Traffic Engineering Problem for Mixed Contention/Cut-Through ...The Switchboard Traffic Engineering Problem for Mixed Contention/Cut-Through ...
The Switchboard Traffic Engineering Problem for Mixed Contention/Cut-Through ...
 
Bulk-n-Pick Method for One-to-Many Data Transfer in Dense Wireless Spaces
Bulk-n-Pick Method for One-to-Many Data Transfer in Dense Wireless SpacesBulk-n-Pick Method for One-to-Many Data Transfer in Dense Wireless Spaces
Bulk-n-Pick Method for One-to-Many Data Transfer in Dense Wireless Spaces
 
On a Hybrid Packets-and-Circuits Switching Logic
On a Hybrid Packets-and-Circuits Switching LogicOn a Hybrid Packets-and-Circuits Switching Logic
On a Hybrid Packets-and-Circuits Switching Logic
 
Image-Related Uses for Roadside Infrastructure \\ based on Wireless Beacons
Image-Related Uses for Roadside Infrastructure \\ based on Wireless BeaconsImage-Related Uses for Roadside Infrastructure \\ based on Wireless Beacons
Image-Related Uses for Roadside Infrastructure \\ based on Wireless Beacons
 
Complexity Resolution Control for Context Based on Metromaps
Complexity Resolution Control for Context Based on MetromapsComplexity Resolution Control for Context Based on Metromaps
Complexity Resolution Control for Context Based on Metromaps
 
The Declarative-Coordinated Model for Self-Optimization of Service Networks
The Declarative-Coordinated Model for Self-Optimization of Service NetworksThe Declarative-Coordinated Model for Self-Optimization of Service Networks
The Declarative-Coordinated Model for Self-Optimization of Service Networks
 
3-Way Scripts as a Practical Platform for Secure Distributed Code in Clouds
3-Way Scripts as a Practical Platform for Secure Distributed Code in Clouds3-Way Scripts as a Practical Platform for Secure Distributed Code in Clouds
3-Way Scripts as a Practical Platform for Secure Distributed Code in Clouds
 
3-Way Scripts as a Base Unit for Flexible Scale-Out Code
3-Way Scripts as a Base Unit for Flexible Scale-Out Code3-Way Scripts as a Base Unit for Flexible Scale-Out Code
3-Way Scripts as a Base Unit for Flexible Scale-Out Code
 
Towards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
Towards Social Robotics on Smartphones with Simple XYZV Sensor FeedbackTowards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
Towards Social Robotics on Smartphones with Simple XYZV Sensor Feedback
 
Back to Rings but not Tokens: Physical and Logical Designs for Distributed Fi...
Back to Rings but not Tokens: Physical and Logical Designs for Distributed Fi...Back to Rings but not Tokens: Physical and Logical Designs for Distributed Fi...
Back to Rings but not Tokens: Physical and Logical Designs for Distributed Fi...
 
Browser Visualization using PNGs Generated by HTML5 Workers on Multicore
Browser Visualization using PNGs Generated by HTML5 Workers on MulticoreBrowser Visualization using PNGs Generated by HTML5 Workers on Multicore
Browser Visualization using PNGs Generated by HTML5 Workers on Multicore
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

YALMS: A Group Drive API for Cloud-Based Classrooms

  • 1.
  • 2. . . YALMS Basics M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 2 /26 2/26
  • 3. . . YALMS Basics . YALMS stands for ... . nother ecture . et Y A • L Management System next generation digital classroom 02 robots • several : video annotation, content packing, multimedia storage, etc. • can run in clouds and cloud-based classrooms ◦ specifically, in VM-per-student environments • knowledge extraction and social components 02 "Homepage of the YALMS software presented in this paper" https://github.com/maratishe/yalms (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 3 /26 3/26
  • 4. . . YALMS : The Big Picture 2013.07・ET研 YALMS: Intro 2013.11・IN研 YALMS.cloud VM sync groupdrive content 2013.09・ET研 YALMS.annotation PDF video 2014.01・LOIS研 slices YALMS.format 2014.01・ET研 stream record replay storage YALMS.streaming DASH Adaptive HTML5 2013.10・ITE-MMS研 YALMS.hiperf SSD multicore YALMS.done! M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 4 /26 4/26
  • 5. . . YALMS.groupdrive : The Specs M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 5 /26 5/26
  • 6. . . YALMS.groupdrive : Overall Idea Master Copy Slave Copy M.Zhanikeev, H.Koide -- maratishe@gmail.com -- Slave Copy Slave Copy YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 6 /26 6/26
  • 7. . . YALMS.groupdrive : The Specs 1. realtime async. asymm. P2P sync -- but not distributed storage fully distributed, can work without a master 3. smart and adaptive, fit for any environment 2. ◦ remote master, fully distributed, throughput-limited, clouds, etc. 4. efficient with 5. API with large files -- a sub-file data grain cross-platform implementation ◦ Linux, Windows, VMs M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 7 /26 7/26
  • 8. . . YALMS.groupdrive : Existing (bad) Solutions M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 8 /26 8/26
  • 9. . . Bad Solution : BitTorrent bad solution needs central registry -- Tracker good only with many peers, too much overhead with few ◦ rarest-first policy is not fit for the problem good for download, but what about upload? • a very • • • M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 9 /26 9/26
  • 10. . . Bad Solution : DSync • a paper in 05 -- the closest rival • aggregation from multiple sources while optimizing load • not really distributed -• single point prospective -- o2m or o2o no practical considerations -- no measurement, ordered lists, etc. 05 H.Pucha+3 "Adaptive File Transfers for Diverse Environments" USENIX Annual Technical Conference (2008) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 10 /26 10/26
  • 11. . . Bad Solution : P2P Streaming … Share video streaming 04 • good for 06 • again, bad for bi-directional Content Provider (origin) syncs P2P Network 04 myself+0 "Multi-Source Stream Aggregation in the Cloud" Wiley Book on Content Delivery (ACDN) (2013) 06 myself+0 "Extremely Scalable and Low Demand Live P2P Streaming based on Variable Bitrate" CANDAR (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 11 /26 11/26
  • 12. . . Bad Solution : Group Virtualization Service traffic Service Application • specific to remote services 07 Service Provider Virtual Wireless User Wireless User Wireless User Wireless User • does not work fully local syncs not specific to well with • syncs 07 myself "Virtual Wireless User: A Practical Design for Parallel MultiConnect Using WiFi Direct..." Mobiquitous (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 12 /26 12/26
  • 13. . . Proposal and Design M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 13 /26 13/26
  • 14. . . Proposal : Fundamentals . Objective . + . API Implementation of the proposed group drive • standard RESTful API • implemented in PHP • cross-platform e2e throughput -- response time avoid congesting the master • adaptive to • M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 14 /26 14/26
  • 15. . . Design : PUSH/PULL Basics • simple: 1 PULL and . The PULL . • regularly X PUSH rounds, X peers in each round -- X is scale ask peers for changes, new content comes in replies • do not push the newly recieved content . . The PUSH . • push to for quick distribution . . Conflicts . ... ignored for now, treat like in GoogleDrive, etc. X peers in X rounds M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 15 /26 15/26
  • 16. . . Design : The MFFxR Unit • basic • • list unit for PUSHes and PULLs -- ordered by decreasing throughput Random Peer is basically for measurement/discovery scale is a global parameter Self List:M M.Zhanikeev, H.Koide -- maratishe@gmail.com -- List:MF List:MFF List:MFF+R YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 16 /26 16/26
  • 17. . . Design : Peer Discovery Roadmap • dynamically incorporate new peers Master REP( peers) REQ() M.Zhanikeev, H.Koide -- maratishe@gmail.com -- Update peers Done YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 17 /26 17/26
  • 18. . . Design : PULL Roadmap • a roadmap rather than state machine Error, failure, timeout REP( null) REP( block, epoch) REQ( state) Scale (s) Align peers M.Zhanikeev, H.Koide -- maratishe@gmail.com -- MFFF… +R Notify Replace (if new block) Done YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 18 /26 18/26
  • 19. . . Design : PUSH Roadmap REP( OK) REP( Collision) REQ(block) Scale (s) Align peers MFFF… +R Pick next from MFFF… for 2nd round I already have it! (double up) Done M.Zhanikeev, H.Koide -- maratishe@gmail.com -- Notify If M or R YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 19 /26 19/26
  • 20. . . Experiments M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 20 /26 20/26
  • 21. . . Experiments Traditional (10 clients) Traditional (1 client) YALMS.groupdrive Remote Master (10 peers and scale 2) YALMS.groupdrive Local Only (10 peers and scale 2) 1 • has the file • try various environments 0.8 Peer completion ratio 10Gb file initial state: only master • one 0.6 0.4 0.2 0 0 M.Zhanikeev, H.Koide -- maratishe@gmail.com -- 0.5 1 1.5 2 2.5 log( time) 3 3.5 YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 4 4.5 21 /26 21/26
  • 22. . . Implementation and API M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 22 /26 22/26
  • 23. . . Implementation : Basic Unit of Info. Exchange • standard unit of data exchange -- JSON -- part of API 03 • some parts are not used -- blob only used for PUSHes/PULLs Datatype Parameter Comments name string relpath Relative to top folder string filename long blockpos int blocksize double mtime string abspath blob content Position of the head byte of the block in file Fixed for each session Epoch time of last update for that block at Master Path for this block at Master. Not used by Slave Copies. Blob: binary string. Used when needed. 03 "Homepage of the YALMS.groupdrive project" https://github.com/maratishe/yalms.groupdrive (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 23 /26 23/26
  • 24. . . Implementation : Actual API MFFxR is outside of the API (part of implementation) state is a flat JSON of items (keys) and MD5 digests (values) 03 APIs are standard RESTfull HTTP request/reply routines • per-peer, • • API1: pull(state) − −reply(dataunit) • API2: push(dataunit) − −reply(status) • 03 "Homepage of the YALMS.groupdrive project" https://github.com/maratishe/yalms.groupdrive (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 24 /26 24/26
  • 25. . . Implementation : Software Design Linux but will work on Windows using portable TinyWeb 03 Web Server Web Server OS, System Reps Reqs OS, System • prefers wget wget Reps Reqs 03 "Homepage of the YALMS.groupdrive project" https://github.com/maratishe/yalms.groupdrive (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 25 /26 25/26
  • 26. . . That’s all, thank you ... M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 26 /26 26/26
  • 27. . . [01] (2013) The enPiT Project http://www.enpit.jp [02] (2013) Homepage of the YALMS software presented in this paper https://github.com/maratishe/yalms [03] (2013) Homepage of the YALMS.groupdrive project https://github.com/maratishe/yalms.groupdrive [04] myself+0 (2013) Multi-Source Stream Aggregation in the Cloud Wiley Book on Content Delivery (ACDN) [05] H.Pucha+3 (2008) Adaptive File Transfers for Diverse Environments USENIX Annual Technical Conference M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 26 /26 26/26
  • 28. . . [06] myself+0 (2013) Extremely Scalable and Low Demand Live P2P Streaming based on Variable Bitrate CANDAR [07] myself (2013) Virtual Wireless User: A Practical Design for Parallel MultiConnect Using WiFi Direct... Mobiquitous [08] (2013) Dropbox Core API https://www.dropbox.com/developers/core M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Group Drive API for Cloud-Based Classrooms -- http://tinyurl.com/kyutech131121 --- 26 /26 26/26