SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
.

.

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

Más contenido relacionado

Destacado

Zeptolab - NOAH13 London
Zeptolab - NOAH13 LondonZeptolab - NOAH13 London
Zeptolab - NOAH13 LondonNOAH Advisors
 
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 2012Amazon Web Services
 
Introduction to Container Management on AWS
Introduction to Container Management on AWSIntroduction to Container Management on AWS
Introduction to Container Management on AWSAmazon Web Services
 
Why APIs are Different Than Integration
Why APIs are Different Than IntegrationWhy APIs are Different Than Integration
Why APIs are Different Than IntegrationApigee | Google Cloud
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetesrajdeep
 
An Introduction to Kubernetes
An Introduction to KubernetesAn Introduction to Kubernetes
An Introduction to KubernetesImesh Gunaratne
 
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)jaxLondonConference
 

Destacado (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)
 

Similar a YALMS Basics: A Group Drive API for Cloud-Based Classrooms

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...Tokyo University of Science
 
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...Tokyo University of Science
 
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...Tokyo University of Science
 
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 AIAlluxio, 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 CaseKalman Graffi
 
Nosql-columbia-feb2011
Nosql-columbia-feb2011Nosql-columbia-feb2011
Nosql-columbia-feb2011siculars
 
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 TechnologyTokyo University of Science
 
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 SpacesTokyo University of Science
 
Scaleable PHP Applications in Kubernetes
Scaleable PHP Applications in KubernetesScaleable PHP Applications in Kubernetes
Scaleable PHP Applications in KubernetesRobert Lemke
 
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...Artefactual Systems - AtoM
 
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 CloudsAlluxio, Inc.
 
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 CouchbaseTugdual Grall
 

Similar a YALMS Basics: 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
 

Más de Tokyo University of Science

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...Tokyo University of Science
 
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 SpacesTokyo University of Science
 
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...Tokyo University of Science
 
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?Tokyo University of Science
 
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...Tokyo University of Science
 
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 PlatformsTokyo University of Science
 
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 ...Tokyo University of Science
 
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...Tokyo University of Science
 
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 NetworkingTokyo University of Science
 
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 ...Tokyo University of Science
 
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 SpacesTokyo University of Science
 
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 LogicTokyo University of Science
 
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 BeaconsTokyo University of Science
 
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 MetromapsTokyo University of Science
 
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 NetworksTokyo University of Science
 
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 CloudsTokyo University of Science
 
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 CodeTokyo University of Science
 
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 FeedbackTokyo University of Science
 
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...Tokyo University of Science
 
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 MulticoreTokyo University of Science
 

Más de 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
 

Último

Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Último (20)

Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

YALMS Basics: 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