04.07.2013 Views

Thèse de doctorat: Algorithmes de classification répartis sur le cloud

Thèse de doctorat: Algorithmes de classification répartis sur le cloud

Thèse de doctorat: Algorithmes de classification répartis sur le cloud

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

tel-00744768, version 1 - 23 Oct 2012<br />

26 CHAPTER 2. PRESENTATION OF CLOUD COMPUTING<br />

given ratio. Other techniques of automation can be found in [72] or [79].<br />

A key factor in <strong>cloud</strong> performance bandwidth (whether intra or inter data centers<br />

bandwidth) is the spatial disposition of the hardware in the data center, as well<br />

as the network topology between the different no<strong>de</strong>s <strong>de</strong>dicated to data storage<br />

and computing. Whi<strong>le</strong> a lot of research has been ma<strong>de</strong> on this subject, major<br />

<strong>cloud</strong> companies have not been disclosing much about this major technological<br />

chal<strong>le</strong>nge and their own imp<strong>le</strong>mentation. According to [59], Microsoft plans to<br />

upgra<strong>de</strong> some of its data centers following the networking architecture studied in<br />

[18].<br />

Software technologies<br />

Several software technology stacks have been <strong>de</strong>veloped to make the access to<br />

CPU and storage easier. They split into three abstraction <strong>le</strong>vel : the storage <strong>le</strong>vel,<br />

the execution <strong>le</strong>vel, and the DSL (domain-specific language) <strong>le</strong>vel.<br />

– The storage <strong>le</strong>vel is responsib<strong>le</strong> for preserving the data into the physical storage.<br />

It hand<strong>le</strong>s all the issues of distributed storage management, of data contention<br />

and provi<strong>de</strong>s the data with a structured access. It can be SQL or No-SQL<br />

storage, as <strong>de</strong>scribed in Section 2.4. This storage can also be used as a means<br />

of communication between machines. Other types of storage are availab<strong>le</strong><br />

in IaaS solutions such as Amazon Elastic Block Store that provi<strong>de</strong>s storage<br />

volumes that can be attached as a <strong>de</strong>vice to a running Amazon EC2 instance<br />

and that persist in<strong>de</strong>pen<strong>de</strong>ntly from the life of this instance.<br />

– The execution <strong>le</strong>vel <strong>de</strong>fines the general execution framework. It specifies how<br />

the machines are supposed to organize themselves, it monitors the workers and<br />

restarts the failing machines. Depending on the type of Cloud Computing offers<br />

(IaaS, PaaS, etc.), the execution <strong>le</strong>vel can provi<strong>de</strong> each computing <strong>de</strong>vice with<br />

anything a standard OS could achieve, or it can give a much more constrainted<br />

execution framework where the execution flow must be <strong>de</strong>signed in a specific<br />

way (the most famous examp<strong>le</strong> of such a constrained execution framework is<br />

MapReduce, <strong>de</strong>scribed in Subsection 2.5.1).<br />

– The DSL <strong>le</strong>vel is a higher <strong>le</strong>vel execution framework than the execution <strong>le</strong>vel.<br />

It often provi<strong>de</strong>s a <strong>de</strong>clarative language instead of the procedural approach<br />

provi<strong>de</strong>d by the execution <strong>le</strong>vel, therefore saving the users from specifying how<br />

the work is supposed to be paral<strong>le</strong>lized. It provi<strong>de</strong>s automated and un<strong>de</strong>r the<br />

hood paral<strong>le</strong>lization, scheduling and inter-machines communications. Therefore,<br />

the DSL <strong>le</strong>vel helps users focus only on <strong>de</strong>fining the result they want,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!