Mešap (hibrid web aplikacija)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/4e/Mashup.svg/220px-Mashup.svg.png)
Mešap u web development-u može biti web stranica ili web aplikacija koja koristi sadržaj više od jednog izvora da bi stvorila nov servis koji je prikazan u jednom grafičkom interfejsu. Na primer, možemo kombinovati adrese sa fotografijama iz vaših izvora sa Google mapom da bi napravili mešap mapu.[1] Mešap podrazumeva jedinstvenu, brzu integraciju često koristeći programske interfejse aplikacija slobodnog koda (open API) i različite izvore podataka sa ciljem da proizvedu obogaćene rezultate koji nisu bili nužno originalni razlog za obradu sirovih izvornih podataka. Termin mašup prvobitno potiče od slenga sa značenjem biti pijan, ili kao opis za nekoga ili nešto što ne funkcioniše pravilno. U skorašnjem engleskom žargonu se može odnositi na muziku, gde ljudi lako kombinuju zvuk jedne pesme sa vokalima druge i time stvaraju nešto novo.
Glavne karakteristike mešapa su kombinacija, vizuelizacija i agregacija. Veoma je važno da postojeći podaci budu što korisniji. Da bi pristup podacima drugih servisa stalno bio dostupan, mešap aplikacije su uglavnom klijentske aplikacije ili su hostovane preko interneta.
Nekoliko godina unazad , sve više web aplikacija objavljuju APIje koji omogućavaju programerima da jednostavno integrišu podatke i funkcije umesto da ih sami pišu. Za mešape se može reći da imaju aktivnu ulogu u evoluciji Web 2.0. Mešap alati su uglavnom jednostavni za korišćenje od strane krajnjih korisnika. Uglavnom ne zahtevaju poznavanje programiranja i pružaju podršku vizuelnim komponentama GUIa tj. dodacima, uslugama i komponentama. Shodno tome ovi alati doprinose novoj viziji Weba gde korisnici mogu dati svoj doprinos.
Istorija
[уреди | уреди извор]Istorija mešapa se može povezati sa prvim razumevanjem šireg konteksta istorije Weba. Za poslovni model Weba 1.0 kompanije su skladištile korisničke podatke na portalima i redovno su ih osvežavali. Oni su kontrolisali sve korisničke podatke, a korisnici su morali da koriste njihove proizvode i usluge da bi dobili informacije.
Sa razvojem Weba 2.0 stovrena su nova pravila koja su koristila Web standarde koji su bili najčešće korišćeni od tradicionalnih konkurenata koji su otključali korisničke podatke. U isto vreme nastali su mešapi koji su omogućili mešanje i slaganja konkurencijskih APIja i time su stvorili nove mogućnosti.
Termin mešap nije formalno definisan bilo kojim standardom.[2]
Prvi mešapi su koristili usluge mapiranja ili usluga fotografija za kombinovanje ove usluge sa podacima bilo koje vrste i stoga stvaraju vizuelizacije tih podataka..[3] U početku većina mešapa su bili potrošački nastrojeni ali u skorije vreme mešapi se smatraju kao interesantan koncept koji je koristan i firmama. Poslovni mešapi mogu kombinovati postojeće unutrašnje podatke sa spoljnim servisima stvarajući nove poglede na podatke.
Vrste mešapa
[уреди | уреди извор]Postoji mnogo tipova mešapa kao što su poslovni mešapi, korisnički mešapi i mešapi podataka.[4] Najčešći tip mešapa je korisnički mešap.
- Poslovni mešapi definišu aplikacije koje kombinuju sopstvene resurse, aplikacije i podatke sa spoljnim Web servisima. Oni fokusiraju podatke u jednostavnu prezentaciju dozvoljavajući saradnju kroz posao i razvoj. Ovo dobro radi za brze razvojne projekte koji zahtevaju saradnju između programera i mušterije (ili zastupnika, često menadžerom proizvoda) za definisanje i sprovođenje poslovnih zahteva. Poslovni mešapi su sigurni, vizuelno bogate Web aplikacije koje izlažu delotvorne informacije iz raznovrsnih unutrašnjih i spoljašnjih izvora informacija.
- Korisnički mešapi kombinuju podatke iz mnogobrojnih javnih izvora u pretraživaču i organizuju ih kroz jednostavan pretraživački interfejs.[2]
- Mešapi podataka su potpuna suprotnost korisničkih mešapa, oni kombinuju slične tipove medija i informacija iz više izvora u jednom prikazu. Kombinacija svih resursa stvara nov i poseban Web servis koji u originalu nije obezbeđen bilo kojim izvorom.
Po tipu API-ja
[уреди | уреди извор]Mešapi se mogu svrstati po osnovnom tipu APIja koji koriste, ali neki od njih se mogu kombinovati jedni sa drugima ili mogu biti ugrađeni u druge aplikacije.
Po tipu podataka
[уреди | уреди извор]- Indeksirane podatke (dokumenta, web blogovi, slike, video ...) koriste meta pretraživači
- Kartografske i geografski podaci: geolokacijski softver, geovizuelizacija
- Fidovi, podkastovi: sakupljači vesti
Funkcije
[уреди | уреди извор]- Konvertori podataka: prevodioci jezika, obrada govora, smanjenje URL adresa ...
- Komunikacija: e-mail, ćaskanja, obaveštenja ...
- Vizuelni podaci sa prikazom: vizuelizacije informacija, dijagrami
- Bezbednost: elektronski sistemi plaćanja, ID identifikacija ...
- Editori
Mešap enabler
[уреди | уреди извор]U tehnologiji, mešap enabler je alat koji transformiše nekompatibilne IT resurse u formu koja omogućava da se ti resursi lako kombinuju u cilju stvaranja mešapa. Mešap enableri dozvoljavaju moćnim tehnikama i alatima (npr. mešap platforme) da kombinuju podatke i usluge koje će se odnositi na novu vrstu izvora. Primer mešap enablera je alat za pravljenje RSS vesti iz tabele (koje se ne mogu lako koristiti za kreiranje mešapa). Mnogi mešap editori uključuju mešap enablere kao na primer Presto Mashup Connector , Convertigo Web Integrato] ili Caspio Bridge. Mešap enableri se takođe mogu opisati kao "provajderi alata i servisa, koji čine mešap mogućim".
Istorija
[уреди | уреди извор]Raniji mešapi su bili ručno razvijani od strane oduševljenih programera. Međutim kako je mešap postajao sve popularniji kompanije su počele stvaranje platformi za pravljenje mešapa, koje dozvoljavaju dizajnerima da vizuelno konstruišu mešap povezivajući komponente mešapa.
Mešap editori su uprostili stvaranje mešapa, značajno uvećavajući produktivnost mešap programera i na kraju omogućujući mešap razvoj od strane krajnjih korisnika i ne IT eksperata. Standardne komponente i konektori omogućavaju dizajnerima da sa lakoćom kombinuju mešap resurse u sve složenije sisteme. Međutim mešap platforme nisu mnogo učinile da se proširi obim sredstava dostupnih mašapima i nisu oslobodili mešape od njihovog oslanjanja na dobro struktuirane podatke i otvorene biblioteke (RSS fidovi i javni APIji).
Mešap enableri su nastavili da rešavaju ovaj problem pružajući mogućnost konvertovanja drugih tipova podataka i usluga u mešapove resurse.
Web resursi
[уреди | уреди извор]Naravno nisu svi vredni podaci smešteni u okviru organizacija. U stvari najvredniji podaci za poslovnu inteligenciju i donošenje odluka su često izvan organizacije. Sa pojavom bogatih internet aplikacija i onlajn Web portala širok spektar kritičnih poslovnih procesa (npr. naručivanje preko interneta) postaju dostupni na internetu. Nažalost, veoma mali broj izvora ovih podataka se nalazi u RSS formatu i veoma mali broj usluga je omogućen putem javnih APIja. Stoga mešap editori rešavaju ovaj problem obezbeđujući enajblere ili konektore.
Izazovi integracije podataka
[уреди | уреди извор]Postoji nekoliko izazova kod integracije adresa sa podacima iz drugih izvora. Ti izazovi se mogu klasifikovati u četiri grupe: neusklađenost teksta i podataka, neusklađenost indetifikatora objekta i šema, neusklađenost nivoa apstrakcija i tačnost podataka.
Neusklađenost teksta i podataka
[уреди | уреди извор]Veliki deo podataka je opisaan tekstom. Ljudski jezici su često nejasani - ime jedne kompanije može imati nekoliko varijanti. Dvosmislenost čini teškim unakrsno povezivanje sa struktuiranim podacima. Pored toga podatke izražene u ljudskom jeziku je teško obraditi preko programa. Jedna od funkcija sistema integracije podataka je da se pevaziđe neusklađenost između dokumenata i podataka.
Identited objekata i posebne šeme
[уреди | уреди извор]Struktuirani podaci su dostupni u mnogo formata. Podizanje podataka do zajedničkog formata podataka je prvi korak. Ali, čak i ako su svi podaci dostupni u zajedničkom formatu, u praksi se ista faza razlikuje u različitim izvorima podataka. Razlike postoje i na nivoima pojedinih objekata kao i na nivoima šema. Kao primer za neusklađenost na nivou objekta razmotrite sledeće: SEC koristi takozvani centralni ideks ključa (CIK) da identifikuje ljude, kompanije i finansijske instrumente dok drugi izvori, kao što je DBpedija, koristi URL adrese da bi identifikovala entitete. Pored toga svaki izvor obično koristi sopstvene šeme i specifikacije za utvrđivanje istih činjenica. Ove metode moraju da se nalaze na mestu za povezivanju različitih prikaza objekata i šema.
Nivoi apstrakcije
[уреди | уреди извор]Izvori podataka obezbeđuju podatke na nekompatibilnim nivoima apstrakcije ili klasifikuje njihove podatke u skladu sa odgovarajućim klasama u sektoru. Pošto se podaci objavljuju na različitim nivoima apstrakcije ( npr. osoba, kompanija, zemlja ili sektor), sažeti podaci za različitih aspekata mogu biti nekompatibilni sa podacima npr. iz statističkih zavoda. Takođe postoje razlike u sažetku geografskih podataka (npr. podaci o regionu iz jednog izvora podataka i podaci na nivou zemlje iz drugog izvora). Slično pitanje jeste upotreba lokalnih valuta koje moraju da se konvertuju kako bi podaci iz različitih izvora bili uporedivi i pogodniji za analizu.
Kvalitet podataka
[уреди | уреди извор]Kvalitet podataka je izazov kada se automatski integrišu podaci iz samostalnih izvora podataka. U otvorenom okruženju sažeti podaci mogu ili ne moraju uticati na izdavača podataka. Podaci su često pogrešni i kombinovanje podataka često pogoršava problem. Naročito kad se obavlja rezonovanje (automatski izvođenje novih podataka iz postojećih), pogrešni podaci imaju potencionalno razarajući uticaj na ukupan kvalitet dobijenog podatka. Samim tim izazov je kako izdavači podataka moraju koordinirati kako bi rešili probleme u podacima ili crnoj listi sajtova koji ne pružaju pouzdane podatke. Metode i tehnike su potrebne da: proverite integritet i tačnost, suštinu, identifikaciju i potkrepljivanje dokazima, procenite verovatnoću da li je data izjava tačna, izjednačavaju težinu razlike između tržnišnih sektora ili preduzeća, uspostavljanje čišćenja kuća za podizanje i rešavanje nesuglasica između konkurentskih (i eventualno konfliktnih) provajdera podataka, i interakciju sa neurednim pogrešnih podataka sa Weba, potencionalno sumnjivog porekla i kvaliteta. Ukratko, greške u signalizaciji, količinama, obeležavanju i klasifikaciji mogu ozbiljno ugroziti korisnost sistema koji koriste te podatke.
Mešapi naspram portala
[уреди | уреди извор]Mešapi i portali su tehnologije zasnovane na sažetku sadržaja. Portali su starija tehnologija, dizajnirana kao nastavak tradicionalnih dinamičkih Web aplikacija u kojima je proces konvertovanja sadržaja podataka u označene Web strane podeljen u dve faze: stvaranje oznake "fragmenti" i agregaciju fragmenata u stranice. Svaki označeni fragment je generisan od strane "portleta", a portal ih kombinuje u jednu Web stranicu. Portleti mogu biti lokalno hostovani na portalu servera ili daljinski na posebnom serveru.
Tehnologija portala definiše kompletan događaj modela pokriva čitanje i ažuriranje. Zahtev za agregatnu stranicu na portalu je preveden na pojedinačne operacije čitanja na svim portletima koji čine stranicu ("renderovati" operacije na lokalnim JSR 168 portletima ili na "getMarkup" operacijama na udaljenim WSRP portletima). Ako je pritisunto dugme za prosleđivanje podataka na bilo kom prtletu na portalovoj strani, to će biti prevedeno kao operacija ažuriranja samo na tom portletu (processAction na lokalnom portletu ili performBlockingInteraction na udaljenom WSRP portletu). Onda se ažuriranje odmah prati čitanjem svih portleta na stranici.
Tehnologija portala je na serverskoj strani, prezentacija nivoa agregacije. Ne može se koristiti kao pogon više jaćih formi integracije aplikacija, koje imaju dve faze izvršenja.
Mešapi se razlikuju od portala u sledećim aspektima:
Portal | Mešap | |
---|---|---|
Klasifikacija | Starija tehnologija, Nastavak tradicionalnog Web server modela koristeći dobro definisan pristup | Koristi nove, slabo definisane "Web 2.0" tehnike |
Pristup | Pristupa agregaciji deljenjem uloga Web servera u dve faze: označavanje generacija i agregacija označavanja fragmenata | Koristi APIje obezbeđene preko različitih sajtova za skupljanje i ponovno koriščenje sadržaja na neki drugi način |
U zavisnosti od sadržaja | Spaja prezentaciono orijentisane označene fragmente (HTML, WML, VoiceXML, itd.) | Može da radi sa čistim XML sadržajem kao i sa prezentaciono orijentisanim sadržajem (npr. HTML) |
U zavisnosti od lokacije | Tradicionalno, agregacija sadržaja se odvija na serveru | Agregacija sadržaja se može odvijati i na serveru i na klijentu |
Stil agregacije | Stil "Salad bar": Spojeni sadržaj se prezentuje jedan pored drugog bez preklapanja | Stil "Melting Pot" : Pojedinačni sadržaj se može kombinovati a bilo koji način, što kao rezultat daje proizvoljno struktuirani hibridni sadržaj |
Model događaja | Model događaja čitanja i ažuriranja je definisan kroz specijalni portlet APIja | Operacije pravljenja, čitanja, ažuriranja i brisanja su bazirane na REST aritekturalnim principima ali ne postoji formalni API |
Bitni standardi | Ponašanje portleta je definisano standardima JSR 168, JSR 286 i Web servisima za daljinske portlete (WSRP), iako su izgled i funkcionalnost stranica portala nedefinisani | Osnovni standardi su XML koji rade kao REST ili Web servisi. RSS i Atom (standardi) se takođe koriste. Pojavljuje se više specifičnih mešap standarda poput EMLa. |
Model portala je duže u upotrebi i dosta je u njega ulagano i istraživano. Stoga je tehnologija portala standardizovana i ozbiljnija. Vremenom, povećavajući ozbiljnost i standardizaciju mešap tehnologije će verovatno biti popularnije nego tehnologija portala zato što je bliže povezana sa Webom 2.0 i skorijim servisno orijentisanim arhitekturama (SOA).
Poslovni mešapi
[уреди | уреди извор]Mešapi koje danas koristimo se sve više šire u poslovnom okruženju. Poslovni mešapi su korisniji za integraciju poslovnih podataka i usluga, a mešap tehnologije pružaju mogućnost za razvoj novih integrisanih usluga brzo, mogućnost kombinovanja internih usluga sa eksternim ili presonalizovanim informacijama, a da ove usluge budu što jednostavnije za poslovanje kroz user-friendly interfejs Web pregledača.
Poslovni mešapi se razlikuju od potrošačkih mešapa po nivou integracije sa poslovnim računarskim okruženjima, bezbednosnim i pristupnim kontrolnim specifikacijama, upravljanju i sofisticiranosti programskih alata (mešap editori) koji se koriste. Još jedna razlika između poslovnog i potrošačkog mešapa je rastući trend korišćenja poslovnih mešapa u komercijalnom softveru kao usluga koju nudi SaaS.
Mnogi od provajdera poslovnih mešap tehnologija su dodali SOA karakteristike.
Arhitektonski aspekti mešapa
[уреди | уреди извор]Arhitektur amešapa je podeljena na tri sloja:
- Prezentacija/ korisnička interakcija: ovo je korisnički interfejs mešapa. Tehnologije koje se koriste su HTML/XHTML, CSS, Javascript, Asynchronous Javascript i Xml (Ajax).
- Web servisi: funkcionalnosti proizvoda se može pristupiti preko API usluga. Tehnologije koje se koriste su XMLHTTPRequest, XML-RPC, JSON-RPC, SOAP, REST.
- Podaci: operacije sa podacima kao što su slanje, skladištenje i primanje. Tehnologije koje se koriste su XML, JSON, KML.
Po arhitekturi postoje dva stila mešapa: Web-based i server-based. Dok Web-based mešapi uglavnom koriste korisnikov web pretraživač da kombinuju i formatiraju podatke, server-based mešapi analiziraju i formatiraju podatke na udaljenom serveru i prenos podataka dobija korisnik u konačnom obliku na svom Web pretraživaču.
Mešapi počinju da budu varijacije fasadnog obrazca. To je softverski dizajniran obrazac koji omogućava lakši interfejs za veći kod (u ovom slučaju kod da bi objedinili različite feedove sa različitim APIjima).
Mešapi se mogu koristiti sa softverom koji je obezbeđen kao usluga (SaaS).
Nakon nekoliko godina razvoja standarda, uglavnom preduzeća počinju da usvajaju servisno orijentisanu arhitekturu (SOA) za integraciju različitih podataka, tako što ih čine dostupnim kao diskretne Web servere. Web serveri omogućavaju otvorene, standardizovane protokole koji omogućavaju ujedinjen način pristupa podacima sa različitih skupa platformi (operativni sistemi, programski jezici, aplikacije). Ovi Web serveri se mogu ponovo koristiti za pružanje potpuno novih usluga i aplikacija unutar i širom organizacija, omogućavajući poslovnu fleksibilnost.
Vidi još
[уреди | уреди извор]Literatura
[уреди | уреди извор]Reference
[уреди | уреди извор]- ^ Fichter Darlene, Šta je mešap? http://books.infotoday.com/books/Engard/Engard-Sample-Chapter.pdf
- ^ а б „Enterprise Mashups: The New Face of Your SOA”. http://soa.sys-con.com/: SOA WORLD MAGAZINE. Архивирано из оригинала 05. 06. 2009. г. Приступљено 3. 3. 2010.
- ^ Clarkin, Larry; Holmes, Josh. „Enterprise Mashups”. MSDN Architecture Journal. MSDN Architecture Center.
- ^ Sunilkumar Peenikal (2009). „Mashups and the enterprise” (PDF). MphasiS - HP. Архивирано из оригинала (PDF) 02. 06. 2013. г. Приступљено 04. 06. 2014.