Firefox OS/Cloud Storage: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 25: Line 25:
[[File:Cloud Storage FUSE solution.png|550px]]<br />
[[File:Cloud Storage FUSE solution.png|550px]]<br />
==== Benefits ====
==== Benefits ====
*DeviceStorageAPI
*DeviceStorageAPI provides well defined filesystem based API to access files/directories on internal storage and SD card. Once FUSE based solution supported, Web app can used DeviceStorageAPI directly to access cloud storage without any modification.
DeviceStorageAPI provides well defined filesystem based API to access files/directories of internal storage and SD card. Once FUSE based solution supported, DeviceStorageAPI can be used directly to access cloud storage without any modification.
*FUSE interface is a good reference for Virtual Storage Interface. By propagating FUSE interface to FirefoxOS, FirefoxOS can easy connect to many kinds of storage, such as cloud storage, NAS, etc. [http://en.wikipedia.org/wiki/ExpanDrive Here is an commercial example].
*FUSE interface
FUSE interface is a good reference for Virtual Storage Interface. By propagating FUSE interface to FirefoxOS, FirefoxOS can easy connect to many kinds of storage, such as cloud storage, NAS, etc.
==== Drawbacks ====
==== Drawbacks ====
*Cross platform/browser issue
*DeviceStorageAPI is not a standard API for all browser.
#DeviceStorageAPI is not a standard API for all browser
*FUSE is not supported in all platform.
#FUSE is a special kernel module of Unix-like OS.
   
   
=== JS library solution ===
=== JS library solution ===
[[File:Cloud Storage JS solution.png]]<br />
[[File:Cloud Storage JS solution.png]]<br />
 
==== Benefits ====
==== Drawbacks ====
== Framework Issues ==  
== Framework Issues ==  
*Cloud Storage Account management and Authentication
*Cloud Storage Account management and Authentication

Revision as of 05:17, 29 April 2015

Overview

This project aims at to support a framework for web apps to interact with cloud storage.
Cloud Storage Support Overview.png
Cloud Storage framework wants to support following features

  • Universal Storage API

Universal Storage API is a general API for web apps to access all kinds of cloud storage.

  • Virtual Storage Interface

Virtual Storage Interface is plugin system for cloud storage framework to extend cloud storage option.

Cloud Storage Framework

Universal Storage API

Universal Storage API is a general API for web apps to access all kinds of storage.
According to different purposes, Universal Storage API can be separated into following two categories

  • Document based API

Document based API is used to help web apps save/operate their application data, such as indexedDB, on the cloud storage.

  • Filesystem based API

Filesystem based API supports web apps to access cloud storage with filesystem operations, such as file create, delete, open, read, write, close, etc.

Virtual Storage Interface

Virtual Storage Interface is plugin system for cloud storage framework to cooperate with different cloud storage.

Proposed Solution(s)

FUSE based solution

Mounting Cloud Storage to device filesystem through the FUSE mechanism.
Cloud Storage FUSE solution.png

Benefits

  • DeviceStorageAPI provides well defined filesystem based API to access files/directories on internal storage and SD card. Once FUSE based solution supported, Web app can used DeviceStorageAPI directly to access cloud storage without any modification.
  • FUSE interface is a good reference for Virtual Storage Interface. By propagating FUSE interface to FirefoxOS, FirefoxOS can easy connect to many kinds of storage, such as cloud storage, NAS, etc. Here is an commercial example.

Drawbacks

  • DeviceStorageAPI is not a standard API for all browser.
  • FUSE is not supported in all platform.

JS library solution

File:Cloud Storage JS solution.png

Benefits

Drawbacks

Framework Issues

  • Cloud Storage Account management and Authentication
  • Data cache/buffering
  • Offline accessing support
  • Security issues

Related links

Related Bugzilla