Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cloud computing Enn Õunapuu

Similar presentations


Presentation on theme: "Cloud computing Enn Õunapuu"— Presentation transcript:

1

2 Cloud computing Enn Õunapuu enn@cc.ttu.ee enn@cc.ttu.ee

3 Cloud computing “The rise of the cloud is more than just another platform shift that gets geeks excited. It will undoubtedly transform the IT industry, but it will also profoundly change the way people work and companies operate.” —The Economist, “Let it Rise,” 10/23/08

4 Clouds: Much More Than Cheap Computing Cloud computing is a convergence of two major interdependent IT trends: IT Efficiency — Minimize costs where companies are converting their IT costs from capital expenses to operating expenses through technologies such as virtualization. Business Agility — Maximize return using IT as a competitive weapon through rapid time to market, integrated application stacks, instant machine image deployment, and petascale parallel programming.

5 Cloud Computing and App Engine A lot of vendors are staking claims to platform offerings “in the cloud.” Currently, it’s our opinion that Google, Amazon.com, and Salesforce.com are leading the charge in both the development community and the enterprise-computing space. There are three main, accepted levels of cloud- computing offerings. They are: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (Saas).

6 Multitenancy A key component of a true cloud-computing platform, multitenancy is a type of software architecture where one instance of the offering is used to serve multiple tenants. The alternative, single tenancy, is how you’re probably designing solutions today. Each customer (or business group, or client) gets her own server, database, application layer, and interface. In contrast, a multitenant application would have a single instance of all these layers and would partition the client’s data programmatically. Multitenancy is a shared trait among offerings at the IaaS, PaaS, and SaaS layers.

7 IaaS At the lowest level, IaaS offers the physical infrastructure (or virtualized physical infrastructure) to tenants with the ability to pay for what they need in terms of computing power. Instead of purchasing servers, software, and physical location, a tenant of an IaaS offering can pay for these components as needed in a more subscription- based fashion. Leading IaaS vendors like Amazon.com offer “pay per CPU hour” pricing for Linux and Windows platforms. The servers are immediately available and you can spin up dozens of servers in a matter of minutes.

8 SaaS At the highest level, SaaS, offers solutions to the customer on a per-usage model. The major difference is that SaaS offerings completely abstract the physical and application layers from the end user or developer. For example, Salesforce.com (widely consider the best example of a SaaS offering) provides its own customizable user interface and proprietary programming language (Apex) but doesn’t expose to the end user the hardware or software layers that power the application. SaaS offerings have an important characteristic when it comes to application upgrades and maintenance: everything is centrally updated. So, when a new feature is released or a patch or upgrade is provided, it’s immediately available to all customers.

9 PaaS In between IaaS and SaaS is the PaaS market. PaaS offers a bit more than IaaS, without providing an actual end-user product. PaaS components are typically building blocks or solution stacks that you can use to build your own applications. This is where Google App Engine fits in your cloud-computing portfolio. App Engine is a PaaS offering, currently supporting a Java and a Python runtime to build your scalable web applications without the need for complex underlying hardware and software layers. Google abstracts those layers and lets you concentrate fully on your application.

10

11

12

13 Andmekeskused

14 The State in the Cloud Application State Separated from the Machine Per-User Per-App State Safety and Sand- Boxing Controlled and Safe Sharing across Apps Controlled and Safe Sharing across Users

15 Kõikehõlmav intellekt Praeguseks oleme jõudnud kõikjaloleva intellekti ajajärku (Ambient Intelligence - AmI). Nimetatud suund on Euroopa Liidus võetud info- ja kommunikatsioonitehnoloogia (IKT) arengu aluseks.

16 Uurimissuund Vastavalt nimetatud visioonile sulandub inimene intelligentse liidese kaudu arvutustehnikaga toetatud globaalsesse võrgustikku. Arvutustehnika on integreeritud kõigesse, mis meid ümbritseb, nagu näiteks mööbel, riided, liikumisvahendid, teed, kodutehnika, töökeskkond. Selline keskkond eeldab väikesi, odavaid arvuteid, personaalseid digitaalseid assistente (PDA) ja veebi lülitatud mobiile, kaabliga ja kaablivabu sensoreid, mis koos suurte arvutitega moodustab kõikehõlmava arvutuskeskkonna. Keskkond peab olema kontekstiteadlik - häälestuma inimese vajadustele ja eesmärkidele, keskkonnale jne.

17 Kontekstitundlikkus Kontekstiteadlike süsteemide all mõistetakse seega süsteeme, mis häälestuvad mingil moel kasutuskontekstile. Olulisemad nendest on järgmised. Kasutaja identiteet. Ruumiline informatsioon: asukoht, suund, kiirus, kiirendus, objekti suhted füüsilises ruumis. Ajaline informatsioon: ajaline järgnevus, ajaline tundlikus, päevaaeg, kuupäev, aastaaeg aasta. Keskkonna informatsioon: temperatuur, niiskus, õhu saastatus, valgus, müra tase jne. Sotsiaalne situatsioon: kasutaja sotsiaalne kuuluvus, lähedalasuvad isikud, perekondlikud suhted, kättesaadavad isikud jne.

18 Kontekstitundlikkus järg Kasutatavad ressursid: käsitletavad seadmed, serverid jne. Ressursside kasutatavus: kuvari resolutsioon, võrgu laius jne. Füüsilised karakteristikud: vererõhk, pulsi sagedus, hingamissagedus, hääle toon, lihase toonus. Kasutaja füüsiline tegevus: rääkimine, lugemine, jalutamine, jooksmine, auto juhtimine. Kasutaja emotsionaalne seisund: tähelepanu kontsentratsioon, häälestatus jne. Ärireeglid, töögraafikud jne

19 Gartner Group Future Worker 2015 will individualize his or her work environment by assembling personally selected tools, information and learning resources, and by tapping into wide-ranging social networks to enhance performance, productivity and trust.

20 Ettevõtte teenuste siin

21 Tarkvara kui teenus näited http://sites.google.com/ http://www.logoogle.com/google-links.htm Kasutajad saavad luua oma veebi lehe ja teha koostööd kasutades Google rakendusi (Google Docs, Google Calendar, YouTube ja Picasa). Veebi lehe loomine on väga lihtne ja sarnane teksti redaktori käsitlemisega. Saab määrata erinevate kasutajate õigusi ja seda, mis on neile nähtav. Iga Google rakendus saab 10GB mälu.

22 Tarkvara, kui teenus – ERP ja CRM Ettevõtte ressursside haldamine (ERP) Ettevõtte kliendihaldus (CRM) SaaS (tarkvara kui teenus) võib tulla kliendile kuni 100 korda odavam traditsioonilisest lahendusest.

23 Riskianalüüs Riskianalüüsi teostamiseks on lisaks töötervishoiu- ja tööohutusalastele teadmistele vaja koguda hulgaliselt informatsiooni (see on väga ressursimahukas protsess) kogutud informatsiooni on vaja summeerida, süstematiseerida, teha kokkuvõtteid saadud tulemuste alusel selgitada välja ohutegurid ning hinnata riske

24 Ülesande püstitus 1. Ohutegurid, millega kokkupuutel tervisekahjustuse tõenäosust riskianalüüsiga hinnatakse on: Füüsikalised, keemilised, füsioloogilised ja psühholoogilised ohutegurid, bioloogilised ohutegurid. Nende olemasolu töökeskkonas hindame oma küsitluse teel. Kogu informatsiooni kogumine küsitluse teel ei ole mõttekas, selle kaal peaks olema kusagil 50% riskihindest (see annab ohuteguri olemasolu kohta hinnangu ja kokkupuutuvate inimeste arvu)

25 Ülesande püstitus 2. Ohuteguriga kokkupuute korral tõenäolise tervisekahjustuse ulatus: Võimalik kerge kahjustus-kriimustus, kerge ehmatus. Kerge tervisekahjustus, lihashaavad, stress, luu- ja lihaskonna haigused, vajavad ennetustegevust. Keskmine tervisekahjustus, võib olla pikaaegne haigus ja kutsehaigestumise põhjustajaks võib põhjustada tööõnnetust. Raske tervisekahjustus, nt jäseme amputatsioon, pöördumatu tervisekahjsutus, kutsehaigestumine Talumatu kahjustus -surm,

26 Ülesande püstitus 3. Kas on teostatud töökeskkonnalased mõõtmised (valgus, müra, mikrokliima jm) ja nende tulemused 4. Subjektiivsed hinnangud riskianalüüsi koostaja poolt, mille arvestatakse olemasoelvat töökeskkonda, töötajate teadlikkust, tegevusvaldkonda, töökeskonnalaast tegevus ettevõttes, olemasolevaid ennetusmeetmeid jpm.

27 Projekti tehniline lahendus Projekt lahendatakse veebi ja lokaalse programmi segalahendusena. Veebilahenduses kasutame sisuhaldussüsteemi DOTNETNUKE http://www.dotnetnuke.com/ http://www.dotnetnuke.com/ Küsitluste haldamiseks ja salvestamiseks on parim Google dokumendi tööleht https://www.google.com/accounts/ https://www.google.com/accounts/ Seega on selles osas tegu pilve lahendusega, kus kasutatakse google töölehe teenust.

28 Aruannete moodustamine Peale veebilahenduse on veel programm - riskman, mis võimaldab hallata küsitlusi: Moodustada aruandeid Kustutada üleliigseid küsitlusi Parandada küsitlusi. Süsteem on tehtud ülimalt häälestuvaks. On võimalik muuta küsimustikke, lisada uusi, moodustada erinevaid aruandeid. Aruanded genereeritakse Exceli keskonda ja seega tekivad piiramatud võimalused tulemuste töötluseks. Küsitluste põhiinfo salvestatakse SQL andmebaasi.

29 Veebi ja Google spreadsheet integratsioon Google Docs is a free, Web-based word processor, spreadsheet, presentation, form, and data storage service offered by Google. It allows users to create and edit documents online while collaborating in real-time with other users. Google Docs combines the features of two services, Writely and Spreadsheets, which were merged into a single product on October 10, 2006. A third product for presentations, incorporating technology designed by Tonic Systems, was released on September 17, 2007. Data storage of any files up to 1GB each in size was introduced on January 13, 2010.word processor spreadsheetpresentationformGooglepresentations

30 Google Data APIs The Google Data APIs (GData) provide a simple protocol for reading and writing data on the web. Each of the following Google services provides a Google data API: Base Blogger Calendar Spreadsheets Google Apps Provisioning Code Search Notebook Picasa Web Albums Document Feed Contacts You Tube Google Health

31 Tools used Google Data APIs.NET client library that can interact with Google Spreadsheets.

32 Single-user "installed" client authentication SpreadsheetsService myService = new SpreadsheetsService("exampleCo-exampleApp-1"); myService.setUserCredentials("jo@gmail.com", "mypassword");

33 Get a list of spreadsheets You can get a feed containing a list of the currently authenticated user's spreadsheets by sending an authenticated GET request to the following URL: http://spreadsheets.google.com/feeds/spreadsheets/private/full SpreadsheetQuery query = new SpreadsheetQuery(); SpreadsheetFeed feed = service.Query(query); Console.WriteLine("Your spreadsheets:"); foreach (SpreadsheetEntry entry in feed.Entries) { Console.WriteLine(entry.Title.Text); }

34 Get a worksheet-based feed Given a SpreadsheetEntry you've already retrieved, you can print a list of all worksheets in this spreadsheet as follows: AtomLink link = entry.Links.FindService(GDataSpreadsheetsNameTable.WorksheetRel, null); WorksheetQuery query = new WorksheetQuery(link.HRef.ToString()); WorksheetFeed feed = service.Query(query); foreach (WorksheetEntry worksheet in feed.Entries) { Console.WriteLine(worksheet.Title.Text); }

35 This code is equivalent to sending an authenticated GET request to the URL: http://spreadsheets.google.com/feeds/workshe ets/key/private/full

36 Add a worksheet You can add a new worksheet by constructing a WorksheetEntry object and inserting it to the feed: WorksheetEntry newWorksheet = new WorksheetEntry(10, 15, "new worksheet"); WorksheetEntry createdWorksheet = (WorksheetEntry) feed.Insert(newWorksheet); Console.WriteLine(createdWorksheet.Id.AbsoluteUri); This code creates a worksheet called "new worksheet" with 10 rows and 15 columns and then print the URI of the newly created worksheet.

37 Update a worksheet's metada Existing worksheets can be updated by changing their properties and invoking the Update method: myWorksheet.Cols = 50; myWorksheet.Rows = 50; myWorksheet.Title = "New Title"; myWorksheet.Update(); Remove a worksheet Worksheets can be easily deleted using the Delete method of a WorksheetEntry : myWorksheet.Delete();

38 Get a list-based feed AtomLink listFeedLink = entry.Links.FindService(GDataSpreadsheetsNameTable.ListRel, null); ListQuery query = new ListQuery(listFeedLink.HRef.ToString()); ListFeed feed = service.Query(query); Console.WriteLine("Worksheet has {0} rows:", feed.Entries.Count); foreach (ListEntry worksheetRow in feed.Entries) { ListEntry.CustomElementCollection elements = worksheetRow.Elements; foreach (ListEntry.Custom element in elements) { Console.Write(element.Value + "\t"); } Console.WriteLine(); } Code is equivalent http://spreadsheets.google.com/feeds/list/key/worksheetId/private/full

39 Edit a row ListEntry.Custom firstColumn = entry.Elements[0]; firstColumn.Value = "John"; ListEntry.Custom secondColumn = entry.Elements[1]; secondColumn.Value = "Doe";

40 Tulemus http://cloud.ld.ttu.ee/riskman/

41 Küsimused??


Download ppt "Cloud computing Enn Õunapuu"

Similar presentations


Ads by Google