E-Com Notes (Chapters 6-9)
E-Com Notes (Chapters 6-9)
e-Commerce Notes
102
Part Two of Two
Contents
E-B siness Intro! ction .................................................................................................................................................... 2 E-B siness Strate"ies ...................................................................................................................................................... 1# Inte"ration of $%%&ications ............................................................................................................................... .............. 2' E-Commerce Infrastr ct re ............................................................................................................................... ............. '(
EBusiness Introduction
EBusiness vs. Ecommerce
*hi&e some se e-commerce an! e-+ siness interchan"ea+&), the) are !istinct conce%ts. E&ectronic + siness, common&) referre! to as -e-B siness- or -e-+ siness-, ma) +e !efine! as the a%%&ication of information an! comm nication techno&o"ies .ICT/ in s %%ort of a&& the acti0ities of + siness. Commerce constit tes the e1chan"e of %ro! cts an! ser0ices +etween + sinesses, "ro %s an! in!i0i! a&s an! can +e seen as one of the essentia& acti0ities of an) + siness. E&ectronic commerce foc ses on the se of ICT to ena+&e the e1terna& acti0ities an! re&ationshi%s of the + siness with in!i0i! a&s, "ro %s an! other + sinesses. E-Commerce Is a %artic &ar form of e-B siness. E&ectronic + siness metho!s ena+&e com%anies to &ink their interna& an! e1terna& !ata %rocessin" s)stems more efficient&) an! f&e1i+&), to work more c&ose&) with s %%&iers an! %artners, an! to +etter satisf) the nee!s an! e1%ectations of their c stomers. Com%are! to e-Commerce, e-B siness is a more "eneric term +eca se it refers not on&) to information e1chan"es re&ate! to + )in" an! se&&in" + t a&so ser0icin" c stomers an! co&&a+oratin" with + siness %artners, !istri+ tors an! s %%&iers. E-B siness encom%asses so%histicate! + siness-to-+ siness interactions an! co&&a+oration acti0ities at a &e0e& of enter%rise a%%&ications an! + siness %rocesses, ena+&in" + siness %artners to share in-!e%th + siness inte&&i"ence, which &ea!s, in t rn, to the mana"ement an! o%timi2ation of inter-enter%rise %rocesses s ch as s %%&) chain mana"ement. 3ore s%ecifica&&), e-B siness ena+&es com%anies to &ink their interna& an! e1terna& %rocesses more efficient&) an! f&e1i+&), work more c&ose&) with s %%&iers an! +etter satisf) the nee!s an! e1%ectations of their c stomers. In %ractice, e-+ siness is more than 4 st e-commerce. *hi&e e-+ siness refers to more strate"ic foc s with an em%hasis on the f nctions that occ r when sin" e&ectronic ca%a+i&ities, e-commerce is a s +set of an o0era&& e+ siness strate"). E-commerce seeks to a!! re0en e streams sin" the *or&! *i!e *e+ or the Internet to + i&! an! enhance re&ationshi%s with c&ients an! %artners an! to im%ro0e efficienc) sin" the Em%t) Vesse& strate"). 5ften, ecommerce in0o&0es the a%%&ication of know&e!"e mana"ement s)stems. E-+ siness in0o&0es + siness %rocesses s%annin" the entire 0a& e chain6 e&ectronic % rchasin" an! s %%&) chain mana"ement, %rocessin" or!ers e&ectronica&&), han!&in" c stomer ser0ice, an! coo%eratin" with + siness %artners. S%ecia& technica& stan!ar!s for e-+ siness faci&itate the e1chan"e of !ata +etween com%anies. E-+ siness software so& tions a&&ow the inte"ration of intra an! inter firm + siness %rocesses. E-+ siness can +e con! cte! sin" the *e+, the Internet, intranets, e1tranets, or some com+ination of these. Basica&&), e&ectronic commerce .EC/ is the %rocess of + )in", transferrin", or e1chan"in" %ro! cts, ser0ices, an!/or information 0ia com% ter networks, inc& !in" the internet. EC can a&so +e +enefite! from man) %ers%ecti0e
inc& !in" + siness %rocess, ser0ice, &earnin", co&&a+orati0e, comm nit). EC is often conf se! with e-+ siness.
In e-commerce, information an! comm nications techno&o") .ICT/ is se! in inter-+ siness or inter-or"ani2ationa& transactions .transactions +etween an! amon" firms/or"ani2ations/ an! in + siness-to-cons mer transactions .transactions +etween firms/or"ani2ations an! in!i0i! a&s/. In e-+ siness, on the other han!, ICT is se! to enhance one7s + siness. It inc& !es an) %rocess that a + siness or"ani2ation .either a for-%rofit, "o0ernmenta& or non-%rofit entit)/ con! cts o0er a com% ter-me!iate! network. $ more com%rehensi0e !efinition of e-+ siness is6 8The transformation of an or"ani2ation7s %rocesses to !e&i0er additional customer value through the application of technologies, philosophies and computing paradigm of the new economy.
Three %rimar) %rocesses are enhance! in e-+ siness6 9 Pro! ction %rocesses, which inc& !e %roc rement, or!erin" an! re%&enishment of stocks: %rocessin" of %a)ments: e&ectronic &inks with s %%&iers: an! %ro! ction contro& %rocesses, amon" others: 9 C stomer-foc se! %rocesses, which inc& !e %romotiona& an! marketin" efforts, se&&in" o0er the Internet, %rocessin" of c stomers7 % rchase or!ers an! %a)ments, an! c stomer s %%ort, amon" others 9 Interna& mana"ement %rocesses, which inc& !e em%&o)ee ser0ices, trainin", interna& information-sharin", 0i!eo-conferencin", an! recr itin". E&ectronic a%%&ications enhance information f&ow +etween %ro! ction an! sa&es forces to im%ro0e sa&es force %ro! cti0it). *ork"ro % comm nications an! e&ectronic % +&ishin" of interna& + siness information are &ikewise ma!e more efficient. E-B siness "oes far +e)on! e-commerce or + )in" an! se&&in" o0er the Internet, an! !ee% into the %rocesses an! c &t res of an enter%rise. It is the %owerf & + siness en0ironment that is create! when )o connect critica& + siness s)stems !irect&) to c stomers, em%&o)ees, 0en!ors, an! + siness %artners, sin" Intranets, E1tranets, ecommerce techno&o"ies, co&&a+orati0e a%%&ications, an! the *e+. E-+ siness is a more strate"ic foc s with an em%hasis on the f nctions that occ r when sin" e&ectronic ca%a+i&ities whi&e E-commerce is a s +set of an o0era&& e-+ siness strate"). E-commerce seeks to a!! re0en e streams sin" the *or&! *i!e *e+ or the Internet to + i&! an! enhance re&ationshi%s with c&ients an! %artners an! to im%ro0e efficienc) whi&e E&ectronic + siness metho!s ena+&e com%anies to &ink their interna& an! e1terna& !ata %rocessin" s)stems more efficient&) an! f&e1i+&), to work more c&ose&) with s %%&iers an! %artners, an! to +etter satisf) the nee!s an! e1%ectations of their c stomers. E-B siness is at the enter%rise a%%&ication &e0e& an! encom%asses so%histicate! +2+ interaction an! co&&a+oration acti0ities. Enter%rise $%%&ication S)stems s ch as E;P, C;3, SC3 form an inte"ra& %art of e-B siness strate") an! foc s.
To s ccee! in e-B siness it is cr cia& to com+ine techno&o"ica& !e0 e&o%ments with cor%orate strate") that re!ifines a com%an)7s ro&e in the !i"ita& econom) whi&e takin" into acco nt its 0ario s stakeho&!ers. It is im%erati0e to n!erstan! the iss es, e0a& ate the o%tions, an! !e0e&o% techno&o") orientation %&ans. $n e-B siness strate") he&%s or"ani2ations i!entif) their e-B siness concerns, assess their information nee!s, ana&)2e to what !e"ree e1istin" s)stems ser0e these o+4ecti0es, %in%oint s%ecific im%ro0ements, !etermine the !e0e&o%ment sta"es of e-B siness so& tions an! attain concrete an! meas ra+&e res &ts. Th s, it is c&ear that e-B siness so& tions are not on&) a+o t techno&o"). $ c&assic e1am%&e is S$P s)stems inte"rations for an) or"ani2ation. This itse&f is taken % as a %ro4ect an! e1ec te! with "reat attention to !etai&. $ min te &o"ica& error in inter%retation of the firm7s o+4ecti0es co &! res &t in the entire s)stem +ein" re-worke! from scratch. Vi!)a&ankar Instit te of Techno&o") Pa"e =
E-B siness a&&ows for re!efinition of 0a& e, com%etiti0eness an! the 0er) nat re of transactions an! it affects a&& areas of an or"ani2ation. It is cr cia& to com+ine techno&o") an! + siness strate") whi&e takin" into acco nt 0ario s stakeho&!ers $n E-+ siness Strate") he&%s to 9 9 9 9 9 9 I!entif) e-+ siness concerns $ssess info nee!s $na&)2e e1istin" s)stems Im%ro0ements re> ire! in e1istin" s)stems ?etermine the sta"es of !e0e&o%ment of so& tions $ttain concrete an! meas ra+&e res &ts.
Characteristics of eBusiness
To em%hasi2e, e-B siness is not sim%&) + )in" an! se&&in" + t encom%asses the e1chan"e of man) kin!s of information, inc& !e on&ine commercia& transactions. E-B siness is a+o t inte"ratin" e1terna& com%an) %rocesses with an or"ani2ation7s interna& + siness %rocesses: as s ch, a 0ariet) of core + siness %rocesses co &! e1%&oit an eB siness infrastr ct re. These inc& !e amon" others6 9 9 9 9 Co&&a+orati0e Pro! ct ?e0e&o%ment Co&&a+orati0e P&annin", @orecastin" an! ;e%&enishment Proc rement an! 5r!er mana"ement 5%erations an! Ao"istics
Collaborative Product Development This is one of the fastest "rowin" techno&o"ies in en"ineerin" with some form of so& tions +ein" im%&emente! in a ran"e of in! stries s ch as a tomoti0e, aeros%ace, a"ric &t ra& machiner) etc. It contri+ tes towar!s makin" %ro! cts in a short time s%an whi&e maintainin" > a&it) an! re! cin" cost. It a&so ai!s in ma1imi2in" time-to-market +enefits whi&e maintainin" contro& o0er %ro! ct !e0e&o%ment information. B) inte"ratin" !esi"n an! testin" c)c&es of %ro! cts with those of s %%&iers, a firm can shorten the com%&ete c)c&e of its %ro! cts. This c&ear&), re! ces the tota& cost of the %ro! ct c)c&e, < e0en more im%ortant&), it re! ces the time that is nee!e! to +rin" %ro! cts to the market%&ace. Co&&a+orati0e %ro! ct !e0e&o%ment so& tions offer E;P inte"ration an! SC3. Collaborative Planning, Forecasting and Replenishment This is a %rocess in which 3an fact rers, ?istri+ tors an! ;etai&ers work to"ether to %&an, forecast an! re%&enish %ro! cts. In e-B siness re&ationshi%s co&&a+oration takes the form of sharin" information that im%acts in0entor) &e0e&s an! merchan!ise f&ow. Collaboration points sales forecasts, inventor! re"uirements, manufacturing and logistic lead times, seasonal set sche! &es, new/remo!e& stora"e %&ans, %romotiona& %&ans etc #oal $o get the partners to wor% together to improve lower suppl! c!cle times, improve customer service, lower in0entor) costs, im%ro0e in0entor) &e0e&s an! achie0e +etter contro& of %&annin" acti0ities Procurement and &rder management E&ectronic %roc rement or E-Proc rement can achie0e si"nificant sa0in"s an! other +enefits that im%act the c stomer. To s %%ort %roc rement an! or!er mana"ement %rocesses, com%anies se an inte"rate! e&ectronic or!erin" %rocess an! other on&ine reso rces to increase efficienc) in % rchasin" o%erations. Vi!)a&ankar Instit te of Techno&o") Pa"e '
Benefits cost savings, better customer service b! controlling the suppl! base, negotiating effective bu!ing %references, an! stream&inin" the o0era&& %roc rement %rocess. &perations ' (ogistics Ao"istics is that %art of the s %%&) chain %rocess that %&ans, im%&ements an! contro&s the efficient, effecti0e f&ow an! stora"e of "oo!s, ser0ices an! re&ate! information from the %oint of ori"in to %oint of cons m%tion in or!er to meet c stomer re> irements. To make this ha%%en, trans%ortation, !istri+ tion, wareho sin", % rchasin" < or!er mana"ement f nctions m st work to"ether. Ao"istics in the e-B siness era is a&& a+o t Co&&a+oration - the sharin" of critica& an! time&) !ata on the mo0ement of "oo!s as the) f&ow from raw materia&, a&& the wa) to the en!- ser. 5%erations an! Ao"istics %rocesses are +ase! on o%en comm nication +etween networks of tra!in" %artners where inte"rate! %rocesses an! techno&o") are essentia& for hi"h %erformance &o"istics o%erations. These so& tions he&% mana"e the &o"istics %rocess +etween + )ers an! s %%&iers, whi&e e&iminatin" cost&) !iscre%ancies +etween % rchase or!er, sa&es or!er an! shi%%in" information. B) era!ications these 0ariances an! inconsistencies im%ro0ements in the s %%&) chain ma) res &t from the e&imination of mi1e! shi%ments an! shi%ment !iscre%ancies, an! the re! ction of in0entor) carr)in" costs for the c stomer. $t the same time this increases c stomer satisfaction thro "h im%ro0e! !e&i0er) re&ia+i&it) an! im%ro0e! efficiencies in recei0in" o%erations. @ rthermore, there are critica& e&ements to e-+ siness mo!e&s as we&&. The) are as fo&&ows6 9 $ share! !i"ita& + siness infrastr ct re, inc& !in" !i"ita& %ro! ction an! !istri+ tion techno&o"ies .+roa!+an!/wire&ess networks, content creation techno&o"ies an! information mana"ement s)stems/, which wi&& a&&ow + siness %artici%ants to create an! ti&i2e network economies of sca&e an! sco%e. 9 $ so%histicate! mo!e& for o%erations, inc& !in" inte"rate! 0a& e chains-+oth s %%&) chains an! + ) chains. 9 $n e-+ siness mana"ement mo!e&, consistin" of + siness teams an!/or %artnershi%s: 9 Po&ic), re" &ator) an! socia& s)stems - i.e., + siness %o&icies consistent with e-commerce &aws, te&eworkin"/0irt a& work, !istances &earnin", incenti0e schemes, amon" others. 9 Ease of $ tomate! Processin" - $ %a)er can now chea%&) an! easi&) a tomate the "eneration an! %rocessin" of m &ti%&e %a)ments with minima& effort. Pre0io s&), the !e%en!enc) %on +anks to han!&e most %a)ments an! the &ack of a chea%, +i> ito s comm nications techno&o") ma!e a tomation of %a)ment %rocesses e1%ensi0e an! !iffic &t to esta+&ish. 9 Imme!iac) of res &t - Pa)ment imme!iac) occ rs +eca se a tomation an! the a+i&it) for the interme!iate s)stems an! %ro0i!ers to %rocess %a)ments in rea&-time. *ith the more man a&, %a%er-+ase! s)stems there was a&wa)s a time !e&a) ! e to the re> irement for h man inter0ention in the %rocess. 9 5%enness an! accessi+i&it) - The a0ai&a+i&it) of chea% com% tin" an! comm nications techno&o") an! the a%%ro%riate software ena+&es sma&& enter%rises an! in!i0i! a&s to access or %ro0i!e a ran"e of %a)ment ser0ices that were %re0io s&) on&) a0ai&a+&e to &ar"e or"ani2ations 0ia !e!icate! networks or the transactiona& %rocessin" nits of +anks. 9 Aoss of co&&atera& information - The new techno&o") !is%enses with, or a&ters, co&&atera& information accom%an)in" transactions. This information has tra!itiona&&) +een %art of the transaction, an! has +een re&ie! %on +) the transactin" %arties to 0a&i!ate in!i0i! a& %a)ments. 9 Co&&atera& information can +e !efine! as information6 9 *hich is not essentia& to the meanin" an! intent of a transaction: 9 *hich is t)%ica&&) inci!enta& to the nat re of the comm nications channe& o0er which the transaction is con! cte!: + t ne0erthe&ess %ro0i!es sef & conte1t a& information for one or more of the %arties to the transactionB 9 Co&&atera& information can inc& !e man) thin"s ran"in" from tone of 0oice in a te&e%hone ca&& to the + siness car!s an! &etterhea!s an! a%%arent a thorit) of the %erson with whom )o are !ea&in".
9 C&o+a&i2 2ation - C&o+ +a&i2ation, or r the minimi 2ation of "e o"ra%hica& f actors in ma akin" %a)me nts, has +ee en an o+0io s as%ect of the new %a a)ments s)s stems. Its af ffect is %o n areas s c ch as si2e o of the %a)m ments market% %&ace, ncer rtaint) as to o &e"a& 4 ris s!iction in t the e0ent o of !is% tes, &ocation an n! a0ai&a+i&it t) of transact tion trai&s, an n! the a+i&it t) of a %a)m ment scheme e to ra%i!&) a a!a%t to re" " &ator) re"i mes im%ose e! +) one co ntr) +) mo0 in" to anoth er. 9 New + siness mode els ) *ew bus siness mode ls are being developed t o e+ploit the e new pa!me ent technolo ogies, in %artic c &ar to a!!r ress or take a!0anta"e o of the !isint terme!iation n of c stome ers from tra! !itiona& %a)m ment %ro0i!er rs s ch as +a anks. In this conte1t, !is sinterme!iat ion is where e the techno o&o") ena+&es s a thir! %ar rt) to inter0en ne +etween the c stom er an! the +ankin" s)st tem, effecti0 0e&) transfer rrin" the c stomer7s tr ste! re&ations shi% with the e +ank to the e new %art).
Customer relationship management /CR- 0 C;3 s)stems are 8front-officeE s)stems which he&% the enter%rise !ea& !irect&) with its c stomers. C;3 .!efinition/ is the %rocess of creatin" re&ationshi%s with c stomers thro "h re&ia+&e ser0ice a tomate! %rocesses, %ersona& information "atherin", %rocessin" an! se&f-ser0ice thro "h the enter%rise in or!er to create 0a& e for c stomers. There are = cate"ories of ser a%%&ications n!er C;3s6 9 C stomer-facin" a%%&ications6 $%%&ications which ena+&e c stomers to or!er %ro! cts an! ser0ices 9 Sa&es-force facin" a%%&ications6 $%%&ications that a tomate some of the sa&es an! sa&es-force mana"ement f nctions, an! s %%ort !is%atch an! &o"istic f nctions. 9 3ana"ement-facin" a%%&ications6 $%%&ications which "ather !ata from %re0io s a%%s an! %ro0i!e mana"ement re%orts an! com% te ;et rn on re&ationshi%s.;o;/ as %er com%an)7s + siness mo!e&
Enterprise Resource Planning /ERP0 E;Ps are often ca&&e! 8+ack-officeE s)stems. E;P s)stems are mana"ement information s)stems that inte"rate an! a tomate man) of the + siness %ractices associate! with o%erations or %ro! ction as%ects of a com%an). E;P software can ai! in contro& of man) + siness acti0ities s ch as sa&es, !e&i0er), %ro! ction, +i&&in", %ro! ction, in0entor), shi%%in", in0oicin" an! acco ntin". $ t)%ica& E;P s)stem is !esi"ne! aro n! these ' %rimar) + siness %roce! res6 9 Pro! ction6 man fact rin", reso rce %&annin" an! e1ec tion %rocess 9 B )in" a %ro! ct6 %roc rement %rocess 9 Sa&es of a %ro! ct an! ser0ices6 c stomer or!er mana"ement %rocess 9 Costin", %a)in" +i&&s, an! co&&ectin"6 financia&/mana"ement acco ntin" an! re%ortin" %rocess. .uppl! Chain -anagement /.C-0 S %%&) chain .!efinition/ is a network of faci&ities an! !istri+ tion o%tions that %erform the f nctions of %roc rement of materia&s, transformation of these materia&s into interme!iate an! finishe! %ro! cts, an! !istri+ tion of these finishe! %ro! cts to c stomers. SC3 !ea&s with the %&annin" an! e1ec tion iss es in0o&0e! in mana"in" a s %%&) chain.
S %%&) chain has = main %arts 9 S %%&) si!e6 concentrates on how, where from, an! when raw materia&s are %roc re! an! s %%&ie! to man fact rin". 9 3an fact rin" si!e6 con0 erts raw materia&s to finishe! %ro! cts. 9 ?istri+ tion si!e6 ens res that finishe! %ro! cts reach the fina& c stomers thro "h a network of !istri+ tors, wareho ses an! retai&ers. 1nowledge -anagement This re&ates to the i!entification an! ana&)sis of a0ai&a+&e an! re> ire! know&e!"e assets an! re&ate! %rocesses. Know&e!"e assets encom%ass two thin"s Information an! E1%erience. Know&e!"e assets com%rise of a&& know&e!"e that a + siness has or nee!s to ha0e in or!er to "enerate %rofits an! a!! 0a& e. Know&e!"e mana"ement inc& !es the s +se> ent %&annin" an! contro& of actions to !e0e&o% +oth the know&e!"e assets an! the %rocesses to f &fi&& or"ani2ationa& o+4ecti0es. Know&e!"e is a stron" !enominator of a + siness mo!e& an! !etermines + siness com%etencies es%ecia&&) when ni> e to the + siness an! so m st +e ke%t in-ho se. E-ar%ets E-3arket is an e&ectronic meetin" %&ace for m &ti%&e + )ers an! se&&ers %ro0i!in" man) %artici%ants with a nifie! 0iew of sets of "oo!s an! ser0ices, ena+&in" them to transact sin" man) !ifferent mechanisms. $n e-3arket ses Internet techno&o") to connect m &ti%&e + )ers an! s %%&iers.
o $n! swee%in" chan"es in the + siness %rocess, or ra!ica& new in0estments. 9 To meet the nee!s of + )ers an! s %%&iers, e-B siness strate") an! so& tions m st +e + i&t on the fo&&owin" +asic %rinci%&es6 o Em%owerin" s %%&iers < + )ers6 ?ifferent channe&s. o Ena+&in" s %%&iers of a&& si2es6
EBusiness Re"uirements
9 I!entif)/meas re > antifia+&e + siness o+4ecti0es6 com%anies m st acc rate&) meas re the im%act an eB siness initiati0e has on their + siness %rocesses an! !eci!e whether this initiati0e is worth % rs in" an! has s staina+&e &on"-term effects 9 Ens re or"ani2ationa&/o%erationa& f&e1i+i&it)6 Enter%rises m st re%osition themse&0es in their mission, str ct re an! e1ec tion to %ros%er in a s +stantia&&) more !)namic en0ironment. 9 ;ethink entire com%an) s %%&) chains6 com%anies m st rethink their entire s %%&) chains in or!er to o%timi2e %erformance an! 0a& e as the) seek to +etter inte"rate with s %%&iers an! c stomers, share information, inter-&ink %rocesses, an! o tso rce man fact rin" &o"istics s)stems an! maintenance acti0ities. 9 Transform the com%an) to a %rocess-centric form6 Com%anies m st +e conce%t a&i2e! as a set of + siness %rocesses with more em%hasis on ma1imi2in" the efficienc) of %rocesses rather than !e%artmenta& or f nctiona& nits. 9 ?efine B siness %rocesses6 com%anies m st create mo!e&s of e1istin" %rocesses an! interactions !eterminin" the re&e0ant e0ents, time frames, reso rces an! costs associate! with + siness %rocesses, hence makin" them we&&-!efine! an! meas ra+&e 9 In!erstan! Sec rit) re> irements6 the +rea!th of access an! interaction re> irements of a e-B siness so& tion re> ires the a+i&it) to %ro0i!e contro&&e! an! foc se! access +) a&& the sers. 9 $&i"n + siness or"ani2ations with a f&e1i+&e IT architect re6 in res%onse to !eman!s for en! to en! eB siness so& tions, com%anies are e1%an!in" their a%%&ications to inc& !e enhance! inte"ration ca%a+i&ities. This inc& !es inte"ration of + siness %rocesses at 0arie! &e0e&s from a%%&ications an! !ata across.an! within/ or"ani2ations. 9 Esta+&ish +i> it) within stan!ar!s6 None of the man) inte"ration techno&o"ies a0ai&a+&e from 0ario s IT 0en!ors has achie0e! com%&ete co0era"e. These !o work within or"ani2ations + t not across "&o+a& enter%rises an! +etween se%arate enter%rises. $ttem%ts are ma!e to esta+&ish o%en stan!ar!s for intero%era+i&it). 9 $ n m+er of + siness an! tech. !ri0en re> irements are com%e&&in" forces that ena+&e s ccessf & !e0e&o%ment < !e%&o)ment of inte"rate! en!-to-en! e-B siness a%%&ications. Some of these are6 o Efficient + siness %rocess mana"ement techno&o") o Efficient +2+ comm nication o Efficient enter%rise a%%&ication inte"ration techno&o") o &ther categori2ations view the problem differentl!. $ more +asic a%%roach to 0iewin" e-B siness re> irements is as fo&&ows6 9 Tr st - The +i""est re> irement for r nnin" a s ccessf & e-+ siness is tr st. In this a"e of @ace+ook an! 3)S%ace, on&ine merchants ma) think that %ri0ac) of a c stomerJs information isnJt im%ortant, + t the
o%%osite is tr e.
o Th s, + sinesses m st +e tr stworth) to o%erate on&ine. Cons mers wi&& not sim%&) "i0e their financia& information to 4 st an)one, so a site wi&& &ose + siness if cons mers !o not fee& comforta+&e
o Com%anies m st ha0e com%rehensi0e %ri0ac) %o&icies an! stick with them. $nother "oo! i!ea is to "et !i"ita& certificates an! T;ISTe sea&s, which are awar!e! +) thir!-%art) or"ani2ations after the)
!e&i0er) times.
9 Pri0ac) %o&ic) - In a!!ition to the wa) %ri0ac) &aws a%%&) in the -rea&- wor&!, there are some s%ecia& thin"s to think a+o t when !ea&in" with the Internet an! e-+ siness. Lo sho &! f &&) n!erstan! how )o r we+site fits into %ri0ac) &aw re> irements. If )o r we+site co&&ects %ersona& information, )o sho &! !e0e&o% a %ro%er an! &e"a&&) com%&iant %ri0ac) %o&ic) an! %ost it in a rea!i&) 0isi+&e &ocation on )o r we+site. If )o se cookies or simi&ar means to track 0isitors, !e%en!in" on how )o !o that, )o ma) sti&& nee! to !e0e&o% an! %ost a %o&ic). 5n&ine %rofi&in" ma) re> ire the consent of the in!i0i! a& !e%en!in" on the circ mstances. Kee% in min! that %eo%&e !o &ook for %ri0ac) %o&icies so, witho t a %o&ic), )o ma) &ose %ros%ecti0e c stomers. $ %ro%er&) !rafte! %ri0ac) %o&ic) or statement wi&& not on&) minimi2e )o r &e"a& e1%os re, it can ser0e a marketin" f nction as we&&, a&&owin" )o to attract an! retain c stomers who otherwise mi"ht not +e as inc&ine! to !ea& with )o . ?o not create a %o&ic) an! then fai& to fo&&ow it %recise&). This is an in0itation for !isaster, inc& !in" not on&) %ossi+&e &e"a& %ro+&ems, + t a&so in4 r) to )o r re% tation an! "oo!wi&&. o It is im%ortant to not 4 st &et the %o&ic) sit once it has +een %oste!. It sho &! +e re0isite! re" &ar&) to !etermine whether or not it is sti&& acc rate an! to e0a& ate whether or not it sho &! +e re0ise! to assist )o in )o r + siness "oa&s an! o+4ecti0es. 9 Strate") - E-commerce merchants m st a&so ha0e a strate") to s ccee! in the on&ine market%&ace. 3an) %eo%&e start we+sites +eca se the) think it is a > ick an! eas) wa) to make cash, + t in fact it takes a m ch "reater in0estment than most %eo%&e e1%ect. 9 Therefore, +efore &a nchin" a site, + sinesses m st ha0e strate"ies to han!&e iss es &ar"e an! sma&&6 o Dow cons mers wi&& %&ace or!ers, o Dow !e&i0eries wi&& +e ma!e, o Dow c stomer ser0ice iss es wi&& +e han!&e!B o 3ore +roa!&), how m ch !o owners e1%ect to earn o0er a certain %erio!, how wi&& cons mers fin! the site, an! how wi&& s ccess +e 4 !"e!. o 5n&ine merchants witho t strate"ies wi&& soon +e o0erwhe&me! +) s ch iss es. 9 S ita+i&it) - @ina&&), merchants m st !eci!e if their %ro! cts are s ita+&e for the we+. ;e> irements for s ccessf & e-+ sinesses concern the "oo!s an! ser0ices themse&0es6 o Can the) +e !e&i0ere! > ick&) an! chea%&)B o ?o the) a%%ea& to %eo%&e o tsi!e a sma&& "eo"ra%hic areaB o *i&& "oin" on&ine sa0e mone)B o *i&& the +enefits o twei"h the costsB
9 o n theor to cha is
Techno&o"ica& ;e> irements6 $chie0in" ;ea& - Time @&e1i+i&it)6 I ), !i"ita& thin"s are easier n"e than %h)sica& thin"s. It faster to e!it a memo sin" a wor! %rocessor than a t)%ewriter .an! )o !on7t "et ink on )o r fin"ers/. B t when %ro"rammin" is re> ire! n"e content or access %o&icies, maint a com%&e1 *e+ site can ran"e from onero s to im%ossi+&e. 3arket factors chan"e i ea& time, an! so m st the &o"ic an! content of an e-B siness site. achie0e this 0ision, the ne1t "eneration of e-B siness s)stems %ro0i!e a framework for
o to cha ainin" nr o To
o o o o
m st a tomate! information e1chan"e +etween a&& the stakeho&!ers in a + siness. These new frameworks are !esi"ne! for f&e1i+i&it) so com%anies can chan"e content an! + siness &o"ic in rea&-time to meet chan"in" + siness nee!s an! market con!itions. This a!a%ta+i&it) comes from a set of core ser0ices, common to a&& a%%&ications, which ena+&e ra%i! !e%&o)ment of new a%%&ications an! new information an! which work to"ether to create a com%e&&in", nifie! e-B siness en0ironment. $n e-B siness framework m st inc& !e %acka"e!, rea!)-to-!e%&o) ser0ices for6 $n $rchitect re @or e-B siness - $s e-B siness mo0es +e)on! sim%&e transactions to encom%ass a&& the com%&e1 %rocesses thro "h which a com%an) %ro0i!es 0a& e, information s)stems m st orchestrate the f nction of enter%rise a%%&ications an! information reso rces for tota& information f&ow. $n! the) m st em%ower + siness %eo%&e with the too&s to mana"e content % +&ishin", !e&i0er), an! access, so that + siness res &ts !on7t !e%en! on the IT !e%artment7s %ro"rammin" +ack&o". Three - Tier 5+4ect - Centere! ?esi"n - To achie0e tr e, rea&-time e-Commerce, ne1t-"eneration eB siness s)stems m st +e + i&t aro n! a =-tier a%%&ication %ara!i"m with a c&ear a+straction an! tr e se%aration of ser interface %resentation, + siness &o"ic, an! content. Se%aration an! a+straction of these &a)ers is achie0e! thro "h the se of + siness o+4ects, %artic &ar&) in the mi!!&e &a)er. *hen se%aratin" %resentation, a%%&ication, an! ?ata Ao"ic three thin"s m st +e consi!ere!6
9 Iser Interface - The ser interface m st s %%ort a 0ariet) of interface mechanisms, inc& !in" *e+ +rowsers for sers, + siness mana"ers, !esi"ners an! !eskto% a%%&ications for !e0e&o%ers. 9 B siness Ao"ic - The mi!!&e tier m st not on&) im%&ement an! e1ec te + siness &o"ic, it m st a&so %ro0i!e the framework of ser0ices that ena+&e e-B siness, inc& !in" sec rit) ser0ices,
transaction ser0ices, an! cachin", %oo&in", an! other &oa! +a&ancin" ser0ices to im%ro0e o0era&& s)stem %erformance. 9 Content - The content &a)er inc& !es cor%orate !ata+ases, !oc ment stores an! other know&e!"e re%ositories
o $&& 5+4ects $re Not Create! E> a& - The architect re of an e-B siness s)stem is im%ortant, + t %ro%er a+stractions achie0e! thro "h o+4ect techno&o") are the fo n!ation of a f&e1i+&e e-B siness s)stem. Correct se%aration of %resentation, + siness &o"ic, sec rit) f nctions, an! content !etermines the f&e1i+i&it) of the s)stem an! the %ace an! effecti0eness of e-B siness %rocesses. To !e&i0er tr &) !)namic, rea&-time comm nication, these re&ationshi%s m st +e esta+&ishe! on a %er-transaction +asis, as each %a"e is assem+&e! for !e&i0er) to a ser e-B siness %rocesses &en! themse&0es to this kin! of a+straction. o Brin"in" 5r!er To Content 3ana"ement - $s com%anies mo0e more of their + siness %rocesses onto the *e+ in search of "reater sa&es or efficienc), *e+ sites are "rowin" in si2e an! com%&e1it). Static *e+ sites often consist of h n!re!s or e0en tho san!s of *e+ %a"es, an! tens of tho san!s of &ines of co!e. 3 &ti-me!ia sites are +ecomin" the stan!ar!, with e0er)thin" from so%histicate! "ra%hics an! animation to a !io an! 0i!eo. Enter%rise *e+ sites m st inte"rate m &ti%&e a%%&ications from the +ackoffice to the s %%&) an! sa&es chain, whi&e maintainin" sec rit) an! the inte"rit) of + siness information. $s sites +ecome &ar"er an! more com%&e1, tra!itiona& *e+ % +&ishin" s)stems, with their har!-co!e! *e+ %a"e content, +ecome nmana"ea+&e. Content creators swam% %ro"rammers with re> ests for new *e+ %a"es, the a%%ro0a& %rocess +o"s !own, an! sers no &on"er ha0e access to c rrent content.
o0era&&
Vi!)a&ankar Instit
te of Techno&o") Pa"e 12
o ?)namic *e+ En0ironment - The "ra%hica& &a)o ts se! in ne1t-"eneration e-B siness s)stems are more 8inte&&i"entE an! mana"ea+&e than the tem%&ates se! in tra!itiona& *e+ % +&ishin". *hi&e +oth contro& %&acement of "ra%hic e&ements, st)&e, etc., tem%&ates access content thro "h + siness &o"ic har!-co!e! into the +o!) of the %a"e. Pa"es with !ifferent content, howe0er simi&ar, re> ire !ifferent so rce fi&es. (a!outs, on the other hand, are a ne+t)generation approach that does not embed business logic in the %resentation o+4ects. $ &a)o t contro&s on&) st)&e an! %&acement of e&ements on the %a"e. The &o"ic that !etermines content is se%arate from the &a)o t, an! can +e chan"e! an! maintaine! in!e%en!ent&). o Content 3ana"ement Too&s - Content 3ana"ement too&s m st ena+&e content to "row an! chan"e at *e+ s%ee!. o Team Content ?e0e&o%ment - P +&ishin" content to the *e+ an! e1ten!in" the f nctiona&it) of a site takes a who&e team6 !e0e&o%ers to + i&! site str ct re an! im%&ement + siness r &es, !esi"ners to create %a"e &a)o ts an! !efine a consistent &ook an! fee&, an! + siness mana"ers to !efine + siness r &es an! contri+ te content. o Co&&a+oration $cross The E1ten!e! Enter%rise - P +&ishin" an! mana"in" *e+ content t)%ica&&) in0o&0es an a%%ro0a& %rocess an! some a!ministrati0e work. o Centra&i2e! ; &es - Base! Content 3ana"ement6 $n)one sho &! +e a+&e to mana"e site content sim%&) +) !efinin" a few !oc ment characteristics when a !oc ment is % +&ishe!. *ith characteristics s ch as a !oc ment7s t)%e .for e1am%&e, 8!ata sheetE/, format, an! acti0ation/e1%iration !ates in %&ace, &inks to the !oc ment can +e a tomatica&&) %o% &ate! thro "ho t the site, an! !oc ment 0isi+i&it) an! 8!oc ment mi"rationE can +e a tomate!. o C stomi2e! Content ?e&i0er) o Per0asi0e Persona&i2ation o Know&e!"e-Base! Persona&i2ation - Effecti0e %ersona&i2ation !e%en!s on the a+i&it) to c stomi2e a ser7s e1%erience +ase! on a rich, centra&&) store! ser %rofi&e6 in essence, a know&e!"e +ase that consists of ser information an! e1%ertise on how to a%%&) that information. This kin! of know&e!"e +ase cannot +e +o&te! onto a +roch re ware *e+ site. The a+i&it) to "ather an! a%%&) ser-re&ate! know&e!"e m st +e inte"rate! into the e-B siness s)stem from !a) one, so that information can +e contri+ te!, share!, an! &e0era"e! +) a&& the a%%&ications in the s)stem. o Iser %rofi&es are the crown 4ewe&s of an e-B siness strate"). The > a&it) of %rofi&es !etermines the !e"ree to which the ser e1%erience can +e %ersona&i2e!. Profi&es can an! sho &! +e + i&t thro "h +oth e1%&icit an! im%&icit mechanisms. o Inc& si0e Sec rit) o Sca&a+i&it) To Com%ete - $s more an! more %rocesses are a!a%te! to e-B siness, a *e+ site ma) "row to s %%ort tho san!s of sers, mi&&ions of !oc ments an! mi&&ions of transactions each !a). $n eB siness s)stem m st ha0e the %ower to %erform fast an! re&ia+&), as a + siness "rows, whi&e !e&i0erin" the !)namic, %ersona&i2e! content necessar) to achie0e + siness "oa&s. o Enter%rise Inte"ration an! Transaction 3onitors - $n) + siness %rocess can +e 8*e+-ifie!E with a CCI interface or a few ser0er %a"es. B t iso&ate!, e-B siness is a+o t %ro0i!in" new 0a& e +) !oin" + siness in a f n!amenta&&) new wa). Inte"ration is the "oa& an! the heart of e-B siness6 inte"ratin" an! e1%osin" a%%&ications an! content in a %ersona&i2e! wa) to s%ee!, sca&e an! im%ro0e + siness %rocesses an! to en"a"e, in0o&0e, an! + i&! &astin" re&ationshi%s with c stomers an! + siness %artners. o Transaction mana"ement " arantees that sers ha0e a consistent 0iew of + siness information. @or e1am%&e, the e-B siness s)stem sho &! %re0ent the c stomer from com%&etin" an or!er +ase! on one %rice, then +ein" char"e! +ase! on the new %rice. Transaction mana"ement a&so %re0ents inacc rate res &ts +ase! on s)stem fai& res .e."., the s)stem "oes !own an! &oses an or!er + t contin es to %rocess the +i&&in" sin" a&rea!)-transmitte! cre!it car! information/. ;o+ st s)stem &o"s can he&% coor!inate %!ates across m &ti%&e !ata so rces from m &ti%&e 0en!ors or ro&& +ack chan"es in case of s)stem fai& re. Vi!)a&ankar Instit te of Techno&o") Pa"e 1=
o ?e&e"ate! S)stem 3ana"ement - e-B siness s)stems are !istri+ te! +) their 0er) nat re, coor!inatin" information sharin" amon" a%%&ications, + siness f nctions an! !e%artments, an! %artners % an! !own the s %%&) chain. Brin"in" + siness %rocesses to the *e+ increases the com%&e1it) of the e-B siness site, an! "rowin" an! chan"in" n m+ers of sers an! a%%&ications increase the com%&e1it) of mana"in" a site. No centra&i2e! IT !e%artment co &! effecti0e&) maintain c rrent acco nts or access %ri0i&e"es for a&& sers, insi!e an! o tsi!e the com%an). 3ost *e+ sites to!a) are not so%histicate! eno "h to reach this roa!+&ock, + t as + sinesses o%en an! e1ten! their %rocesses 0ia the *e+, s)stem mana"ea+i&it) wi&& +ecome an increasin"&) serio s iss e. o Time to 3arket GTime to market m st +e minima& as !e&a)s ma) res &t in &osin" the +enefit of eB siness inte"ration.
Impacts of eBusiness
9 Im%ro0e! o%erationa& efficienc) an! %ro! cti0it)6 +) e&iminatin" o%erationa& waste an! a tomation of inefficient + siness %ractices, or"ani2ations can rea&i2e %ro! cti0it) "ains 9 ;e! ction in o%eratin" costs an! costs of "oo!s an! ser0ices6 +) connectin" !irect&) with s %%&iers an! !istri+ tors, or"ani2ations can rea&i2e more efficient %rocesses that res &t in re! ce! nits of cost for %ro! cts or ser0ices an! &ower %rices to c stomers whi&e achie0in" economies of sca&e. 9 Im%ro0e! com%etiti0e %osition6 "&o+a& reach, ra%i! "rowth, efficient re! ction of %ro! ct time to market an! o%timi2ation of %ro! ct !istri+ tion channe&s a&& contri+ te to s %erior com%etiti0e %osition. 9 Penetration into new markets thro "h new channe&s6 with e-B siness &ocation is of no conse> ence when it comes to reachin" c stomers. 9 Im%ro0e! comm nication, information an! know&e!"e sharin"6 a&i"nment of ke) s %%&) chain %artners with an or"ani2ation7s interna& strate"ies he&%s e1%&oit their e1%ertise an! know&e!"e, hence creatin" o%%ort nit) to sec re &on"-term + siness +) em+e!!in" their %rocess an! %roce! res in those of their c stomers7 s %%&) chains. 9 Darmoni2ation an! stan!ar!i2ation of %rocess 9 Im%ro0e! interna& information access 9 Im%ro0e! re&ationshi%s with s %%&iers an! im%ro0e! c stomer ser0ice Inhi+itors of e-B siness 9 3ana"ement/Strate") iss es o e-+ siness strate") o 5r"ani2ationa& chan"es re> ire! +) e-+ siness o 3ana"ement attit !es an! or"ani2ationa& inf&e1i+i&it) 9 Cost/financin" iss es o Costs of im%&ementation o Ca&c &atin" the ;et rn on In0estment .;5I/ 9 Sec rit) an! Tr st Iss es 9 Ae"a& Iss es o @ew com%anies are fami&iar with the r &es an! re" &ations that a%%&) to an on&ine en0ironment. This &ea!s to Incertaint). o ?ifferent strokes for !ifferent fo&ksM 9 Techno&o"ica& Concerns o Inte"ration Iss es 9 $r" ments a"ainst In0estment o Incertaint) < @ear
EBusiness .trategies
3hat is an EBusiness .trateg!4
9 E-B siness has tri""ere! new + siness mo!e&s, strate"ies an! tactics that are ma!e %ossi+&e +) the internet an! other re&ate! techno&o"ies. 9 In or!er to com%ete in the market%&ace, it is essentia& for or"ani2ations to esta+&ish strate"ies for the !e0e&o%ment of an e-+ siness. 9 E-B siness strate") can +e 0iewe! 0ia two !ifferent 0iew%oints, which are e1%&aine! +e&ow. 9 5ne 0iew !efines strate") as %&ans an! o+4ecti0es a!o%te! to achie0e hi"her-&e0e& "oa&s. 9 In that sense, a strate") is !e0e&o%e! to achie0e a "oa& &ike im%&ementin" or"ani2ationa& chan"e, or a &ar"e software %acka"e s ch as an E;P-s)stem. 9 Strate") ma) a&so re&ate to %&ans concernin" the &on"-term %osition of the firm in its + siness en0ironment to achie0e its or"ani2ationa& "oa&s. 9 Base! on the a+o0e, we arri0e at a common !efinition for an e-B siness Strate"). 9 $n e-B siness strate") is the set of %&ans an! o+4ecti0es +) which a%%&ications of interna& an! e1terna& e&ectronica&&) me!iate! comm nication contri+ te to the cor%orate strate"). 9 Strate"ic %&annin" com%rises a !istinct c&ass of !ecisions .a %&an is a set of !ecisions ma!e for the f t re/ an! o+4ecti0es, an! has to +e %ositione! ne1t to tactica& %&annin" .str ct rin" the reso rces of the firm/ an! o%erationa& %&annin" .ma1imi2in" the %rofita+i&it) of the c rrent o%erations/. 9 Strate") is concerne! with chan"es in the com%etiti0e en0ironment that ma) tri""er strate"ic chan"es for the in!i0i! a& firm an! so affect its ro&es an! f nctions in the market. 9 ;eassessment of strate") ma) occ r ! e to6 o New Pro! cts o Chan"in" c stomer %references @&owers6 ;oses / Carnations -N 5rchi!s $ few )ears +ack when %eo%&e went to the f&orist, the) "enera&&) %icke! % ;oses or Carnations etc. Now, the) %refer 5rchi!s. This is an e1am%&e of chan"in" c stomer %references. $ "&o+a& notion is that a c stomer !oes not rea&i2e the ti&it) of fee& the nee! for a %ro! ct nti& it is offere! to him / her. o Chan"in" !eman! %atterns o New com%etitors 9 The fre> enc), !)namics an! %re!icta+i&it) of the a+o0e chan"es !ictate the intensit) of the strate"ic %&annin" acti0it) of the firm. 9 So, e-B siness strate") .re0ise!/ is6 o The set of %&ans an! o+4ecti0es +) which a%%&ications of interna& an! e1terna& e&ectronica&&) me!iate! comm nication contri+ te to the cor%orate strate"). 9 E-B siness strate") ma) +e im%&emente! for6 o Tactica& % r%oses6 3ai& -N E?I -NO3A-@?I o $chie0in" cor%orate strate") o+4ecti0es 9 E-B siness is strate"ic in nat re. o The i!ea is to create a %refera+&) s staina+&e < com%etiti0e %osition for the com%an). This is achie0e! +) inte"ration of the Internet an! re&ate! techno&o"ies in its %rimar) %rocesses. 9 E-B siness m st not on&) s %%ort cor%orate strate") o+4ecti0es + t a&so f nctiona& strate"ies .SC3, 3arketin"/ 9 S %%&) Chain 3ana"ement Strate")
o Base! on 0a& e chain ana&)sis for !ecom%osin" an or"ani2ation into its in!i0i! a& acti0ities an! !eterminin" 0a& e a!!e! at each sta"e. o Ca "e efficienc) in se of reso rces at each sta"e. 9 3arketin" Strate") o Is a concerne! %attern of actions taken in the market en0ironment to create 0a& e for the firm +) im%ro0in" its economic %erformance. o @oc se! on ca%t rin" market share or im%ro0in" %rofita+i&it) 0ia +ran!-+ i&!in" etc. o 5%erates on CI;;ENT $S *EAA $S @ITI;E %ro4ections of c stomer !eman!. 9 Information S)stems Strate") o Dow to &e0era"e information s)stems in an or"ani2ation to s %%ort the o+4ecti0es of an or"ani2ation in the &on" r n. 9 E-B siness strate") is +ase! on cor%orate o+4ecti0es.
.trategic Positioning
Strate"ic %ositionin" means that a firm is !oin" thin"s !ifferent&) from its com%etitors in a wa) that !e&i0ers a ni> e 0a& e to its c stomers. There are ( f n!amenta& %rinci%&es a firm m st fo&&ow to esta+&ish an! maintain a !istincti0e strate"ic %osition6 1. 2. =. '. #. (. Start with the ri"ht "oa&6 s %erior &on" term ;5I. Strate") m st ena+&e it to !e&i0er a 0a& e %ro%osition !ifferent from com%etitors. Strate") m st +e ref&ecte! in a !istincti0e 0a& e chain. $cce%t tra!eoffs for a ro+ st strate"). Strate") m st !efine how a&& e&ements of what a firm !oes fit to"ether. Strate") m st in0o&0e contin it) of !irection.
9 There are fo r "eneric strate"ies for achie0in" a %rofita+&e + siness6 i. Differentiation $his strateg! refers to all the wa!s producers can ma%e their product uni"ue an! !istin" ish them from those of their com%etitors. ii. Cost ,dopting a strateg! for cost competition means that the compan! primaril! competes with &ow cost: c stomers are intereste! in + )in" a %ro! ct as ine1%ensi0e&) as %ossi+&e. S ccess in s ch a market im%&ies that the com%an) has !isco0ere! a ni> e + siness mo!e& which makes it %ossi+&e to !e&i0er the %ro! ct or ser0ice at the &owest %ossi+&e cost. iii. .cope , scope strateg! is a strateg! to compete in mar%ets worldwide, rather than merel! in &oca& or re"iona& markets. iv. Focus , focus strateg! is a strateg! to compete within a narrow mar%et segment or product se"ment. 50 $he Corporate or Enterprise level 9 This &e0e& com%rises a co&&ection of .strate"ic/ + siness nits. 9 This &e0e& a!!resses the %ro+&em of s)ner") thro "h a firm-wi!e, a0ai&a+&e IT infrastr ct re. 9 Common e-B siness a%%&ications thro "ho t the or"ani2ation are nee!e! for two +asic reasons. 9 @rom efficienc) %oint of 0iew, ha0in" !ifferent a%%&ications for the same f nctiona&it) in !ifferent areas of + siness is nee!&ess&) cost&). 9 @rom an effecti0eness %oint of 0iew, there is the nee! for cross Aine of B siness comm nication an! share-a+i&it) of !ata. 9 The em%hasis in the + siness %&ans is on the c stomer, not the fina& %ro! ct. 9 These a&& +ecome s +4ects of an enter%rise-wi!e e-B siness %o&ic).
o It wi&& inc& !e En0ironmenta& Scannin" In! str) or market research Com%etitor $na&)sis $na&)sis of 3arket%&ace Str ct re ;e&ationshi%s with tra!in" %artners an! s %%&iers C stomer 3arketin" ;esearch o Information is !eri0e! from the ana&)sis of +oth interna& an! e1terna& factors. o Interna& @actors6 D man reso rces 3ateria& reso rces Informationa& reso rces @inancia& reso rces Str ct re 5%erationa& St)&e C &t re o E1terna& @actors6 Socio-c &t ra& forces Techno&o"ica& forces Ae"a& an! re" &ator) forces Po&itica& forces Economic forces Com%etiti0e forces o $n) rea&istic new %&an wi&& ha0e to ref&ect the rea&it) of +oth the e1terna& wor&! an! the interna& !)namics of the cor%oration. 9 Strate"ic Choice o It is +ase! on the strate"ic ana&)sis an! consists of fo r %arts6 Ceneration of strate"ic o%tions Di"h&i"htin" %ossi+&e co rses of action E0a& ation of strate"ic o%tions on their re&ati0e merits Se&ection of strate") o Strate"ic choice res &ts in Strate"ic P&annin", which is concerne! with the or"ani2in" an! !etai&in" of a&& the strate"ies that wi&& +e n!ertaken thro "ho t the or"ani2ation. o P&annin" inc& !es strate") s%ecification an! reso rce a&&ocation. o It commences with cor%orate-&e0e& %&annin" that !etermines the o0era&& !irection for the or"ani2ation. o This !ri0es ?i0ision .or Strate"ic B siness Init/ &e0e& %&annin" which !ea&s with "ro %s of re&ate! %ro! cts offere! +) the or"ani2ation. o These %&ans in t rn +ecome the startin" %oint for o%eratin" .or f nctiona&/ &e0e& %&annin", which in0o&0es more &oca& %&ans within s%ecific !e%artments of the or"ani2ation. 9 Im%&ementation o This re&ates to the act a& tasks that m st +e e1ec te! in or!er to rea&i2e a %&an an! trans&ates strate") into action. o It inc& !es monitorin", a!4 stment, contro& as we&& as fee!+ack.
.trategic ,lignment
9 In the 1KH0s the conce%t of a&i"nment +etween + siness an! IT was !e0e&o%e!. 9 $ccor!in" to this conce%t it is not on&) feasi+&e to !esi"n an! + i&! a technica&&) so%histicate! infrastr ct re for e-B siness, + t a&so to form &ate + siness strate"ies that com%&ement an! s %%ort this infrastr ct re. 9 5ne of the ma4or iss es re"ar!in" an enter%rises in0estment in IT is whether this is in harmon) with its strate"ic o+4ecti0es. 9 This state of harmon) is referre! to as a&i"nment. 9 $&i"nment is com%&e1, m &tifacete! an! a&most ne0er com%&ete&) achie0e!. It is a+o t contin in" to mo0e in the ri"ht !irection an! +etter a&i"ne! than the com%etitors. 9 $n) e-B siness strate") sho &! artic &ate an enter%rise7s intention to se information techno&o") +ase! on + siness re> irements. 9 *hen form &atin" the IT strate"), the enter%rise m st consi!er6 o B siness o+4ecti0es an! the com%etiti0e en0ironment o C rrent an! f t re techno&o"ies an! the costs, risks, an! +enefits the) can +rin" to the + siness. o The ca%a+i&it) of the IT or"ani2ation an! techno&o") to !e&i0er c rrent an! f t re &e0e&s of ser0ice to the + siness. o Cost of c rrent IT, an! whether this %ro0i!es s fficient 0a& e to the + siness. o Aessons &earne! from %ast fai& res an! s ccesses.
of e)
9 $s einformation
Conse"uences Business
B siness is techno&o")-ena+&e! or"ani2ationa& an
%henomenon with economic conse> ences, economic theories a%%ear to +e %artic &ar&) sef & for ana&)2in" the + siness effects. 9 Strate") is a+o t fin!in" the ri"ht .e1terna&/ fit +etween or"ani2ation an! en0ironment. ?ifferent schoo&s of tho "ht ha0e a%%roache! this %ro+&em from !ifferent an"&es. 9 *hen ana&)2in" the + siness effects of an e-B siness, we wi&& consi!er the fo&&owin" a%%roaches6 o The Theor) of Com%etiti0e Strate") o The reso rce-+ase 0iew o The theor) of transaction costs 9 Theor) of Com%etiti0e Strate") o The str ct ra& attracti0eness of a firm is !etermine! +) fi0e n!er&)in" forces of com%etition6 The +ar"ainin" %ower of the c stomers The +ar"ainin" %ower of the s %%&iers The +arriers to entr) for new com%etitors The threat of new s +stit te %ro! cts or ser0ices The com%etition amon" e1istin" firms in the in! str)
o In com+ination, these forces !etermine how the economic 0a& e create! +) an) %ro! ct, ser0ice techno&o") or wa) of com%etin" is !i0i!e! +etween com%anies in an in! str). o The +ar"ainin" %ower of c stomers for a firm co &!, for instance, !e%en! on the !e"ree of %ro! ct !ifferentiation, an! the si2e of !eman! an! s %%&). Switchin" costs are a&so 0er) im%ortant6 the) answer the > estion of how m ch wi&& it cost the c stomer to chan"e to another s %%&ier. o The +ar"ainin" %ower of s %%&iers is !e%en!ent on a 0ariet) of factors, s ch as re&ati0e si2e, n m+er of s %%&iers, that can !e&i0er a critica& reso rce, an! so on. The Internet ca ses another s%ecific threat from the %ers%ecti0e of IT s %%&iers: the) ma) +)%ass their c stomers an! !irect&) a%%roach the en!- ser. o The +arriers to entr) for new com%etitors !e%en! on how !iffic &t it is to 4oin the in! str). Economic an! techno&o"ica& thresho&!s ma) %re0ent o tsi!e %otentia& com%etitors to come in . Economies of sca&e, necessar) ca%ita&, an! s%ecia&i2e! e1%ertise are im%ortant factors in this res%ect. o The threat of s +stit te %ro! cts !e%en!s on the > estion of whether other %ro! cts can !e&i0er a!!e! 0a& e for cons mers instea! of c rrent %ro! cts in the a+sence of switchin" costs. e.". G The Internet is a serio s threat to the Post 5ffice. o The &e0e& of com%etition amon" e1istin" firms in the in! str) wi&& !e%en! on 0ario s factors &ike t)%e of market, e1istin" com%etiti0e +eha0ior, an! so on. 9 The ;eso rce-Base! View o $ccor!in" to this theor) of economic !e0e&o%ment, inno0ation is the so rce of 0a& e creation. o Se0era& so rces of inno0ation .hence, 0a& e creation/ are i!entifie!6 The intro! ction of new "oo!s or new %ro! ction metho!s, The creation of new markets, The !isco0er) of new s %%&) so rces, $n! the reor"ani2ation of in! stries. o The reso rce-+ase! 0iew .;BV/, which + i&!s on the theor) of economic !e0e&o%ment7s %ers%ecti0e on 0a& e creation, re"ar!s a firm as a co&&ection of reso rces an! ca%a+i&ities. o The ;BV &ooks at a0ai&a+&e reso rces first to see how a %osition in the + siness en0ironment can +e ac> ire! with them. o $ccor!in" to this 0iew, a firm can + i&! a strate"ic %osition +) %ickin" the ri"ht reso rces an! + i&!in" com%etencies that are ni> e an! !iffic &t to imitate. o ;eso rces are consi!ere! the raw materia& for + i&!in" com%etencies. o The ;BV states that marsha&&in" an! ni> e&) com+in" a set of com%&ementar) an! s%ecia&i2e! reso rces an! ca%a+i&ities ma) &ea! to 0a& e creation. o $ firm7s reso rces an! com%etencies are 0a& a+&e if, an! on&) if, the) re! ce a firm7s costs or im%ro0e its re0en es. o Core com%etencies of an or"ani2ation encom%ass know&e!"e +ases, ski&& sets, an! ser0ice acti0ities that can create a contin in" com%etiti0e a!0anta"e. 9 Transaction Cost Economics o Transaction Cost Economics attem%t to e1%&ain firms7 choices +etween interna&i2in" an! + )in" "oo!s an! ser0ices from the market. o $ccor!in" to transaction cost theor), e1chan"es with e1terna& firms entai& a 0ariet) of co-or!ination costs associate! with 0ario s as%ects of inter-firm transactions. o The centra& > estion a!!resse! +) transaction cost economics is wh) firms interna&i2e transactions that mi"ht otherwise +e con! cte! in markets. Th s, two ke) iss es concernin" firms are6 *hich acti0ities sho &! a firm mana"e within its +o n!aries, an! which acti0ities sho &! it o tso rceB In which wa) sho &! a firm mana"e its re&ationshi% with its c stomers, s %%&iers an! other + siness %artnersB Vi!)a&ankar Instit te of Techno&o") Pa"e 20
o $ccor!in" to transaction cost economics, a firm has two o%tions for or"ani2in" its economic acti0ities6 an interna& hierarchica& str ct re where it inte"rates the acti0it) into its mana"ement str ct re, or a market-&ike re&ationshi% with e1terna& firms. o Critica& !imensions of transactions inf& encin" the choice of the most effecti0e "o0ernance form are6 Incertaint) E1chan"e @re> enc) S%ecificit) of $ssets ena+&in" the e1chan"e o Transaction costs inc& !e the costs of %&annin", a!a%tin", e1ec tin" an! monitorin" task com%&etion. o Transaction cost Theor) ass mes that markets are not %erfect, so &ea! to costs, &ike search an! monitorin" costs. o $s internet techno&o") is e1%ecte! to si"nificant&) re! ce transaction costs, this theor) %ro0i!es a +asis for assessin" the effects of the Internet on new an! e1istin" + siness mo!e&s.
o $!0ocate6 In this ro&e, chan"e a"ents foc s on ins%irin" %eo%&e to a!o%t the chan"e. In&ike the faci&itator, he !oes not remain ne tra&, + t ses an) tactic .%ers asion, mani% &ation, %ower etc/ to make the chan"es acce%te!. 9 Es%ecia&&) in the case of e-B siness transformation, where or"ani2ationa& an! IT chan"es re&ate to infrastr ct re an! iss es of commona&it) an! intero%era+i&it), the a!0ocate mo!e& seems to +e a%%ro%riate.
Business -odels
There are 0ario s !efinitions for B siness 3o!e&s. The !efinitions chan"e +ase! on the %ara!i"m an! the conte1t +ein" a%%&ie!. Aet7s &ook at each !efinition6 9 Partici%ants in a 4oint + siness 0ent re6 o S%ecif) the re&ationshi%s +etween !ifferent %artici%ants in a commercia& 0ent re, the +enefits < costs to each an! the f&ows of re0en es. It a!!resses a sim%&e e> ation .%rofitR re0en e-cost/ irres%ecti0e of the mo!e&. o ?escri+es how the enter%rise %ro! ces, !e&i0ers an! se&&s its %ro! cts or ser0ices, th s showin" how it !e&i0ers 0a& e to the c stomer an! how it create! wea&th. 9 Process < str ct re of a + siness or"ani2ation6 o ;efers to the str ct res < %rocesses in %&ace to o%erationa&i2e the strate") of + siness6 o Can +e !escri+e! as6 $n architect re for the %ro! ct, ser0ice < information f&ows: $ !escri%tion of the 0ario s + siness actors < their ro&es: $ !escri%tion of the %otentia& + siness +enefits for the 0ario s actors: $ !escri%tion of the so rces of re0en es. 9 Pers%ecti0e of a market%&ace. o ?efinition can +e ana&)2e! from 0ario s %ers%ecti0es6 B2B, B2C acti0ities or +othB Position in the 0a& e chainB Va& e %ro%osition < tar"et c stomersB S%ecific re0en e mo!e&s for "eneration of it s income streamsB ;e%resentationB Ph)sica& or Virt a& or com+inationB 9 Pers%ecti0e of e-B siness o $ !escri%ti0e re%resentation of the %&anne! acti0ities of an enter%rise that in0o&0es = inte"ra& com%onents which s%ecif)6 Interna& as%ects of a + siness 0ent re T)%e of re&ationshi%s of the enter%rise with its e1terna& + siness en0ironment an! its effecti0e know&e!"e re"ar!in" these re&ationshi%s Dow the information assets are em+e!!e! in the + siness 0ent re. 9 $ + siness mo!e& can +e 0iewe! as an e1terna&i2ation of a firms interna& + siness %rocesses o ?oes not in0o&0e interna& + siness %rocess com%&e1it). 9 *hen takin" the interna& as%ects of a + siness into acco nt the fo&&owin" e&ements nee! to +e !efine!6 Vi!)a&ankar Instit te of Techno&o") Pa"e 22
EBusiness -odels
E-B siness mo!e&s are c&assifie! as fo&&ows6 9 Internet Ena+&e! o Cate"ori2e! +ase! on increasin" f nctiona&it), inno0ation, inte"ration an! 0a& e. 9 Va& e *e+ o $ss re!&) not a reci%e for s ccess + t %re&iminar) conce%tions of an emer"in" form of a f& i! an! f&e1i+&e or"ani2ation. o 3o0e from we-!o-e0er)thin"-o rse&0es n&ess .0a& e "enerate! +) sin"&e or"ani2ation/ to we-!onothin"-o rse&0es- n&ess .0a& e "enerate! +) the network/. 9 E-B siness Ena+&e! o Es%ecia&&) 0a&i! for B2B conte1ts o # ;e%resentati0e B siness mo!e&s o Te&e-workin" 3o!e&6 Co&&a+oration sin" comm nication techno&o"ies C&assic e1am%&e is E&ectronic 3an fact rin" Ser0ices .So&ectron/ o Virt a& 5r"ani2ation 3o!e&6 Co&&ection of "eo"ra%hica&&) !is%erse! in!i0i! a&s, "ro %s an! or"ani2ationa& nits. E1am%&e6 CeneraA ife .Ins rance/ o Process 5 tso rcin" 3o!e&6 E1am%&e6 BP5s, IB3 o Co&&a+orati0e Pro! ct ?e0e&o%ment 3o!e& E1am%&e6 $ tomo+i&e 3an fact re -N @5;? o Va& e Chain Inte"ration 3o!e&6 Ise! to im%ro0e comm nication < co&&a+oration +etween a&& s %%&) chain %arties. 9 3arket Partici%ants o 3ore "eneric c&assification of Internet Base! B siness 3o!e&s 9 C)+er-me!iaries o In !isa"reement with the wi!e&) acce%te! i!ea that e-B siness wi&& ca se in! str) 0a& e chains to +e restr ct re! to s ch an e1tent that interme!iation wi&& no &on"er +e a %rominent feat re. o The rea& tren! mi"ht 4 st +e towar!s an increase in interme!iation +) c)+er-me!iaries. 5r"ani2ations which o%erate in e&ectronic markets to faci&itate e1chan"es +etween %ro! cers an! cons mers +) meetin" the nee!s of +oth. ?irectories of ?irector) Ser0ices Interme!iaries Virt a& 3a&&s *e+site E0a& ators $ !itors S%ot 3arket 3akers @inancia& Interme!iaries .ESC;5* Ser0ice for 5n&ine % rchases/. *ote For details on all e)Business models, Refer -ichael Papa2oglou, 6e)Business 7 &rgani2ational ' $echnical Foundations8
Integration of ,pplications
eBusiness Integration /Patterns0
e-B siness Inte"ration occ rs in as man) forms as there are e-B sinesses. $t first "&ance, inte"ration %ro+&ems an! the corres%on!in" so& tions are se&!om i!entica&. Let, %on c&oser e1amination, )o !isco0er that inte"ration so& tions can act a&&) +e c&assifie! into common cate"ories. Each of these cate"ories !escri+es +oth a -t)%e- of inte"ration %ro+&em as we&& as a so& tion metho!. These cate"ories are ca&&e! inte"ration %atterns. Inte"ration %atterns he&% )o n!erstan! the !ifferent metho!s a0ai&a+&e to )o for a "i0en t)%e of inte"ration %ro+&em. The) a&&ow )o to take a ste% +ack an! n!erstan! the !ifferences in the 0ario s scenarios an! a%%reciate the !ifferent a%%roaches to inte"ration. @ina&&), the) a&&ow )o to 0iew -inte"ration in the +i" %ict re.- Lo can &earn to +reak !own what ma) +e a com%&e1 inte"ration into conce%t a& cate"ories an! n!erstan! which techno&o"ies to a%%&). 3hat ,re Integration Patterns4 $ %attern is common&) !efine! as a re&ia+&e sam%&e of traits, acts, ten!encies, or other o+ser0a+&e characteristics. In software !e0e&o%ment, )o ma) +e fami&iar with the i!ea of !esi"n %atterns or %rocess %atterns. ?esi"n %atterns s)stematica&&) !escri+e o+4ect !esi"ns that can +e em%&o)e! for a common set of %ro+&ems. Simi&ar&), %rocess %atterns !escri+e %ro0en metho!s an! %rocesses se! in software !e0e&o%ment. In %ractice, %atterns are sim%&) a &o"ica& c&assification of common&) rec rrin" actions, techni> es, !esi"ns, or or"ani2ations. *hat are inte"ration %atternsB Inte"ration %atterns emer"e from c&assification of stan!ar! so& tions for inte"ration scenarios. The) are not %atterns of !esi"n or co!e. Nor are the) %atterns of o%erationa& %rocesses for an inte"ration %ro4ect. Instea!, each inte"ration %attern !efines a t)%e of inte"ration %ro+&em, a so& tion techni> e, as we&& as %arameters a%%&ie! for e-B siness Inte"ration. @o&&owin" are se0en common e-B siness Inte"ration %atterns. The) are not meant to +e com%rehensi0e, + t the) co0er most of the common inte"ration scenarios im%&emente! to!a). The) encom%ass +oth E$I scenarios as we&& as B2Bi scenarios6 9 E$I .intra-enter%rise/ Patterns 1. ?ata+ase ;e%&ication 2. Sin"&e-Ste% $%%&ication Inte"ration =. 3 &ti-Ste% $%%&ication Inte"ration '. Brokerin" $%%&ication 9 B2Bi .inter-enter%rise/ Patterns #. $%%&ication-to-$%%&ication B2Bi (. ?ata E1chan"e B2Bi F. B2B Process Inte"ration The E$I Patterns re%resent %atterns common&) a%%&ie! within a cor%orate enter%rise, whereas the B2Bi Patterns re%resent the !ifferent metho!s in con! ctin" inte"rate! B2B transactions. The fo&&owin" sections %ro0i!e a c&oser &ook at each of these %atterns an! !isc ss some of the !etai&s. Database Replication The ?ata+ase ;e%&ication %attern ma) +e the most %re0a&ent %attern of E$I inte"ration to!a). ?ata+ase re%&ication in0o&0es mana"in" co%ies of !ata o0er two or more !ata+ases, res &tin" in re! n!ant !ata. Com%anies en"a"e in !ata+ase re%&ication for n mero s reasons. 5ne reason is that man) or"ani2ations are +ecomin" more !istri+ te! in their o%erations, re> irin" m &ti%&e co%ies of the same !ata o0er se0era& %h)sica& &ocations. ;e%&ication is a&so a means of !ata reco0er). In man) or"ani2ations, an acti0e secon!ar) !ata+ase is maintaine! for !ata reco0er) % r%oses. In the e0ent that the %ro! ction !ata+ase nee!s to +e reco0ere!, the secon!ar) re%&icate! !ata+ase can +e se!. This a&so a%%&ies for -hi"h a0ai&a+i&it)- s)stems. In these sit ations, a re! n!ant co%) of -&i0e- !ata is
maintaine! to ens re that if the first s)stem is not a0ai&a+&e, the re! n!ant !ata+ase s)stem is acti0ate!. The two "enera& cate"ories for !ata+ase re%&ication are s)nchrono s an! as)nchrono s re%&ication. .ingle.tep ,pplication Integration The Sin"&e-Ste% $%%&ication Inte"ration .SS$I/ %attern e1ten!s the as)nchrono s !ata+ase re%&ication %attern. Instea! of foc sin" on !ata consistenc) +etween two !ata+ases, the SS$I %attern inte"rates !ata +etween a%%&ications, mo0in" !ata from one conte1t to another. It !oes so +) trans&atin" !ata s)nta1 of the so rce messa"e an! reformattin" !ata e&ements into a new tar"et messa"e. It is -sin"&e ste%- +eca se it re> ires an interme!iar) +roker to ma% so rce messa"es to tar"et messa"es. T)%ica&&), it is an e1tension of the as)nchrono s re%&ication techno&o"), in that it ti&i2es 3essa"e S e in" 3i!!&eware s ch as 3S Series. It is 4 st as &ike&) to +e im%&emente! with the &ess so%histicate! @TP in a +atch mo!e. In either case, the %oint is that it !oes more than sim%&) mo0e !ata from %oint $ to %oint B for consistenc)7s sake. *hereas, in the re%&ication %attern +oth the so rce an! tar"et !ata mo!e&s are &ike&) simi&ar, if not i!entica& at times, this is not necessari&) the case for the SS$I %attern. The o+4ecti0e here is not !ata consistenc), + t a%%&ication !ata inte"ration. -ulti .tep ,pplication Integration The 3 &ti-Ste% $%%&ication Inte"ration .3S$I/ %attern is an e1tension of the SS$I %attern. 3S$I ena+&es the inte"ration of n .so rce/ to m .tar"et/ a%%&ications. It a!!resses man)-to-man) inte"ration, which SS$I cannot, +) %ro0i!in" what is known as se> entia& &o"ica& %rocessin". In other wor!s, ste%s in this %attern are %rocesse! se> entia&&), an! r &es a%%&ie! are Boo&ean &o"ica& in nat re. Aike the sin"&e-ste% %attern, 3S$I re> ires an interme!iar) to +roker the transaction of !ata +etween a%%&ications. It is often + i&t aro n! an as)nchrono s e0ent+ase! s)stem an! t)%ica&&) is im%&emente! thro "h the se of 3essa"e S e in" 3i!!&eware as we&&. The as)nchrono s e0ent+ase! a%%roach creates &oose co %&in". $&tho "h each s)stem is %h)sica&&) in!e%en!ent, the) are &o"ica&&) !e%en!ent. In other wor!s, inter!e%en!encies e1ist +etween the a%%&ication e0ents that can +e e1%resse! in terms of transformations an! !ata inte"ration r &es. ?ata e&ements from one a%%&ication can !ri0e the retrie0a& or %rocessin" of messa"es in another a%%&ication. The sim%&est m &ti-ste% e1am%&e in @i" re =.= in0o&0es three a%%&ications in which a messa"e from a%%&ication $ is com+ine! with a messa"e from a%%&ication B that is reformatte! for a tar"et a%%&ication C. It is common for a !ata e&ement from a%%&ication $ to act as a ke) to !ri0e the re> est for information from a%%&ication B. Bro%ering ,pplication $t times inte"ratin" two a%%&ications is not %rinci%a&&) a matter of inte"ratin" !ata, + t inte"ratin" + siness &o"ic. The Brokerin" $%%&ication %attern a!!resses the se of interme!iar) a%%&ication &o"ic to &ink to"ether two or more a%%&ications. In %&ain terms, it means that c stom a%%&ication co!e is written containin" &o"ic to +roker interactions +etween the !is%arate a%%&ications. This c stom +rokerin" a%%&ication sits in the mi!!&e as an interme!iar) for %rocessin" re> ests from !ifferent a%%&ications The se of this so& tion %attern is %artic &ar&) a%%&ica+&e in the scenarios +e&ow6 9 $%%&ications Nee! to ;e se Ao"ic 9 $%%&ications Ainke! +) Com%&e1 Ao"ic 9 $%%&ications Inifie! Thro "h Iser Interface ,pplication to ,pplication B9Bi Now )o Jre rea!) to mo0e +e)on! E$I to &earn a+o t $%%&ication-to-$%%&ication B2Bi, e1ten!in" inte"ration +e)on! the cor%orate enter%rise. I wi&& !escri+e fo r a!!itiona& %atterns re&ate! s%ecifica&&) to B2B inte"ration, +e"innin" first with the $%%&ication-to-$%%&ication B2Bi %attern. The $%%&ication-to-$%%&ication %attern is the &o"ica& e1tension of what occ rs in E$I. *hen E$I 0en!ors to t their %ro! cts as +ein" B2Bi, this s%ecific %attern is what the) ha0e in min!. Dowe0er, as )o wi&& !isco0er, this is not the on&) %attern an! 0er) &ike&) not e0en the %rimar) %attern for B2Bi. $%%&ication-to-$%%&ication B2Bi, which is often referre! to as inter-enter%rise inte"ration, in0o&0es cor%orate Vi!)a&ankar Instit te of Techno&o") Pa"e 2#
entities &inkin" their a%%&ications !irect&) to the a%%&ications of their %artners or c stomers. In %ractice, this t)%e of inte"ration is often im%&emente! as %art of a s %%&) chain of "oo!s an! ser0ices to the c stomer. This e1tension for interenter%rise inte"ration means that a n m+er of a!!itiona& iss es nee! to +e acco nte! for6 9 Sec rit) 9 @e!erate! Contro& 9 S)stems 3ana"ement Data E+change B9Bi The &imitation of the $%%&ication-to-$%%&ication B2Bi %attern is that it can +e more !eman!in" to im%&ement. It necessitates that each %artici%ant han!&es an! e1terna&i2es a%%&ication nati0e !ata !irect&). This makes it !iffic &t to sca&e the B2B interaction mo!e& ra%i!&) when s ch a !eman! is %&ace! on the %artici%ants. The o%tima& so& tion is to %ro0i!e a ra%i!&) sca&a+&e B2Bi mo!e& in which %artici%ants can e1chan"e !ata free&) with minima& e1%ectation on their infrastr ct re. The ?ata E1chan"e B2Bi %attern ena+&es B2B transactions %re!icate! on a common !ata e1chan"e format. It is the most wi!e&) a%%&ie! %attern for B2B commerce to!a). ?ata E1chan"e B2Bi is effecti0e +eca se it is sim%&e in conce%t an! has +een in se since the !a)s of E&ectronic ?ata Interchan"e .E?I/, the forer nner to to!a)7s B2B o0er the Internet. $&tho "h there is a si"nificant inc m+enc) of &e"ac) E?I transactions, the O3A-+ase! B2B wi&& &timate&) !is%&ace E?I as the %rimar) mechanism for e-B siness transactions. O3A-+ase! !ata %ackets are transmitte! +etween two + siness entities thro "h the se of a !ata e1chan"e "atewa) ser0ice on +oth en!s. 5ne of the %rimar) res%onsi+i&ities of the "atewa) ser0ice is to %re%are the !ata %ackets +) %&acin" them within a sec rit) en0e&o%e. The B2B "atewa) ser0ice s %%orts sec rit) stan!ar!s s ch as 3I3E, O.#0K, an! S/Ke). It is a&so res%onsi+&e for ro tin" !ata thro "h a stan!ar! trans%ort. 3ost B2B "atewa) ser0ices %ro0i!e n mero s trans%ort o%tions inc& !in" DTTPS, @TP, an! TCP/IP Sockets. Dowe0er, %on e1amination, )o wi&& fin! that most B2Bi transactions sti&& !e&i0er O3A !oc ments o0er an DTTPS %i%e. B9B Process Integration E0en with in! str)wi!e initiati0es s ch as ;osettaNet, a %oint-to-%oint !ata e1chan"e that mana"es static interactions has some &imitations. If Cor%oration $ wants to % rchase office s %%&ies from ?e%ot O, it m st a"ree ahea! of time on the content of the !oc ments e1chan"e! an! + )in" %rocess. This is, of co rse, to +e e1%ecte!. Dowe0er, what if the sit ation in0o&0es mana"in" m &ti%&e s %%&iers or if the interactions +ecome more com%&e1B @or instance, a scenario in which s %%&iers o%en&) +i! to com%ete on %ricin" wi&& increase the !imensions of %rocess interactions. In that case, mana"in" the B2B transaction is no &on"er an acti0it) of mana"in" a sin"&e %oint-to-%oint interaction. Instea!, it +ecomes a cha&&en"e of mana"in" + siness %rocesses that are !)namic rather than static. The B2B Process Inte"ration %attern takes the &imitations raise! +) the ?ata E1chan"e %attern an! a!!resses them +) %ro0i!in" B siness Process Inte"ration .BPI/ ser0ices. T st as the ?ata E1chan"e %attern a&&ows %artici%ants to mana"e !ata e1chan"es !)namica&&) thro "h O3A-+ase! !oc ments, the B2B Process Inte"ration %attern a&&ows the %artici%ants to mana"e %rocesses in the same wa). Therefore, richer, more com%&e1 re&ationshi%s can occ r +etween tra!in" %artners. B2B Process Inte"ration %attern can +e im%&emente! as one of two 0ariations6 C&ose! Process B2Bi or 5%en Process B2Bi. Lo mi"ht ar" e that each of these 0ariations constit tes an in!i0i! a& %attern, + t +eca se the) share the common attri+ te of +ein" %rocess foc se!, I ha0e !eci!e! to treat them as 0ariations to the B2B Process Inte"ration %attern.
,pproaches to -iddleware
3i!!&eware is com% ter software that connects software com%onents or some %eo%&e an! their a%%&ications. The software consists of a set of ser0ices that a&&ows m &ti%&e %rocesses r nnin" on one or more machines to interact. This techno&o") e0o&0e! to %ro0i!e for intero%era+i&it) in s %%ort of the mo0e to coherent !istri+ te! architect res, Vi!)a&ankar Instit te of Techno&o") Pa"e 2(
which are most often se! to s %%ort an! sim%&if) com%&e1 !istri+ te! a%%&ications. It inc& !es we+ ser0ers, a%%&ication ser0ers, an! simi&ar too&s that s %%ort a%%&ication !e0e&o%ment an! !e&i0er). 3i!!&eware is es%ecia&&) inte"ra& to mo!ern information techno&o") +ase! on O3A, S5$P, *e+ ser0ices, an! ser0ice-oriente! architect re. 3i!!&eware sits -in the mi!!&e- +etween a%%&ication software that ma) +e workin" on !ifferent o%eratin" s)stems. It is simi&ar to the mi!!&e &a)er of a three-tier sin"&e s)stem architect re, e1ce%t that it is stretche! across m &ti%&e s)stems or a%%&ications. E1am%&es inc& !e E$I software, te&ecomm nications software, transaction monitors, an! messa"in"-an!-> e ein" software. The !istinction +etween o%eratin" s)stem an! mi!!&eware f nctiona&it) is, to some e1tent, ar+itrar). *hi&e core kerne& f nctiona&it) can on&) +e %ro0i!e! +) the o%eratin" s)stem itse&f, some f nctiona&it) %re0io s&) %ro0i!e! +) se%arate&) so&! mi!!&eware is now inte"rate! in o%eratin" s)stems. $ t)%ica& e1am%&e is the TCP/IP stack for te&ecomm nications, nowa!a)s inc& !e! in 0irt a&&) e0er) o%eratin" s)stem. In sim &ation techno&o"), mi!!&eware is "enera&&) se! in the conte1t of the hi"h &e0e& architect re .DA$/ that a%%&ies to man) !istri+ te! sim &ations. It is a &a)er of software that &ies +etween the a%%&ication co!e an! the r n-time infrastr ct re. 3i!!&eware "enera&&) consists of a &i+rar) of f nctions, an! ena+&es a n m+er of a%%&icationsP sim &ations or fe!erates in DA$ termino&o")Pto %a"e these f nctions from the common &i+rar) rather than re-create them for each a%%&ication Definition of -iddleware Software that %ro0i!es a &ink +etween se%arate software a%%&ications. 3i!!&eware is sometimes ca&&e! %& m+in" +eca se it connects two a%%&ications an! %asses !ata +etween them. 3i!!&eware a&&ows !ata containe! in one !ata+ase to +e accesse! thro "h another. This !efinition wo &! fit enter%rise a%%&ication inte"ration an! !ata inte"ration software. 5+4ect*e+ !efines mi!!&eware as6 -The software &a)er that &ies +etween the o%eratin" s)stem an! a%%&ications on each si!e of a !istri+ te! com% tin" s)stem in a network.3i!!&eware is com% ter software that connects software com%onents or a%%&ications. The software consists of a set of ser0ices that a&&ows m &ti%&e %rocesses r nnin" on one or more machines to interact. This techno&o") e0o&0e! to %ro0i!e for intero%era+i&it) in s %%ort of the mo0e to coherent !istri+ te! architect res, which are most often se! to s %%ort an! sim%&if) com%&e1, !istri+ te! a%%&ications. It inc& !es we+ ser0ers, a%%&ication ser0ers, an! simi&ar too&s that s %%ort a%%&ication !e0e&o%ment an! !e&i0er). 3i!!&eware is es%ecia&&) inte"ra& to mo!ern information techno&o") +ase! on O3A, S5$P, *e+ ser0ices, an! ser0iceoriente! architect re. In sim &ation techno&o"), mi!!&eware is "enera&&) se! in the conte1t of the hi"h &e0e& architect re .DA$/ that a%%&ies to man) !istri+ te! sim &ations. It is a &a)er of software that &ies +etween the a%%&ication co!e an! the r n-time infrastr ct re. 3i!!&eware "enera&&) consists of a &i+rar) of f nctions, an! ena+&es a n m+er of a%%&icationsP sim &ations or fe!erates in DA$ termino&o")Pto %a"e these f nctions from the common &i+rar) rather than re-create them for each a%%&ication. &rigin of -iddleware 3i!!&eware is a re&ati0e&) new a!!ition to the com% tin" &an!sca%e. It "aine! %o% &arit) in the 1KH0s as a so& tion to the %ro+&em of how to &ink newer a%%&ications to o&!er &e"ac) s)stems, a&tho "h the term ha! +een in se since 1K(H. It a&so faci&itate! !istri+ te! %rocessin", the connection of m &ti%&e a%%&ications to create a &ar"er a%%&ication, s a&&) o0er a network.
:se of middleware 3i!!&eware ser0ices %ro0i!e a more f nctiona& set of a%%&ication %ro"rammin" interfaces to a&&ow an a%%&ication to .when com%are! to the o%eratin" s)stem an! network ser0ices./6 9 Aocate trans%arent&) across the network, th s %ro0i!in" interaction with another ser0ice or a%%&ication 9 @i&ter !ata to make them frien!&) sa+&e or % +&ic 0ia anon)mi2ation %rocess for %ri0ac) %rotection .for e1am%&e/ 9 Be in!e%en!ent from network ser0ices 9 Be re&ia+&e an! a&wa)s a0ai&a+&e 9 $!! com%&ementar) attri+ tes &ike semantics 3i!!&eware offers some ni> e techno&o"ica& a!0anta"es for + siness an! in! str). @or e1am%&e, tra!itiona& !ata+ase s)stems are s a&&) !e%&o)e! in c&ose! en0ironments where sers access the s)stem on&) 0ia a restricte! network or intranet .e."., an enter%riseJs interna& network/. *ith the %henomena& "rowth of the *or&! *i!e *e+, sers can access 0irt a&&) an) !ata+ase for which the) ha0e %ro%er access ri"hts from an)where in the wor&!. 3i!!&eware a!!resses the %ro+&em of 0ar)in" &e0e&s of intero%era+i&it) amon" !ifferent !ata+ase str ct res. 3i!!&eware faci&itates trans%arent access to &e"ac) !ata+ase mana"ement s)stems .?B3Ss/ or a%%&ications 0ia a we+ ser0er witho t re"ar! to !ata+ase-s%ecific characteristics . B sinesses fre> ent&) se mi!!&eware a%%&ications to &ink information from !e%artmenta& !ata+ases, s ch as %a)ro&&, sa&es, an! acco ntin", or !ata+ases ho se! in m &ti%&e "eo"ra%hic &ocations. In the hi"h&) com%etiti0e hea&thcare comm nit), &a+oratories make e1tensi0e se of mi!!&eware a%%&ications for !ata minin", &a+orator) information s)stem .AIS/ +ack %, an! to com+ine s)stems ! rin" hos%ita& mer"ers. 3i!!&eware he&%s +ri!"e the "a% +etween se%arate AISs in a new&) forme! hea&thcare network fo&&owin" a hos%ita& + )o t. *ire&ess networkin" !e0e&o%ers can se mi!!&eware to meet the cha&&en"es associate! with wire&ess sensor network .*SN/, or *SN techno&o"ies. Im%&ementin" a mi!!&eware a%%&ication a&&ows *SN !e0e&o%ers to inte"rate o%eratin" s)stems an! har!ware with the wi!e 0ariet) of 0ario s a%%&ications that are c rrent&) a0ai&a+&e. 3i!!&eware can he&% software !e0e&o%ers a0oi! ha0in" to write a%%&ication %ro"rammin" interfaces .$PI/ for e0er) contro& %ro"ram, +) ser0in" as an in!e%en!ent %ro"rammin" interface for their a%%&ications. @or @ t re Internet network o%eration thro "h traffic monitorin" in m &ti-!omain scenarios, sin" me!iator too&s .mi!!&eware/ is a %owerf & he&% since the) a&&ow o%erators, searchers an! ser0ice %ro0i!ers to s %er0ise S a&it) of ser0ice an! ana&)se e0ent a& fai& res in te&ecomm nication ser0ices. @ina&&), e-commerce ses mi!!&eware to assist in han!&in" ra%i! an! sec re transactions o0er man) !ifferent t)%es of com% ter en0ironments. In short, mi!!&eware has +ecome a critica& e&ement across a +roa! ran"e of in! stries, thanks to its a+i&it) to +rin" to"ether reso rces across !issimi&ar networks or com% tin" %&atforms. $!pes of middleware D rwit2Js c&assification s)stem or"ani2es the man) t)%es of mi!!&eware that are c rrent&) a0ai&a+&e. These c&assifications are +ase! on sca&a+i&it) an! reco0era+i&it)6 9 ;emote Proce! re Ca&& P C&ient makes ca&&s to %roce! res r nnin" on remote s)stems. Can +e as)nchrono s or s)nchrono s. 9 3essa"e 5riente! 3i!!&eware P 3essa"es sent to the c&ient are co&&ecte! an! store! nti& the) are acte! %on, whi&e the c&ient contin es with other %rocessin". 9 5+4ect ;e> est Broker P This t)%e of mi!!&eware makes it %ossi+&e for a%%&ications to sen! o+4ects an! re> est ser0ices in an o+4ect-oriente! s)stem. 9 SSA-oriente! ?ata $ccess P mi!!&eware +etween a%%&ications an! !ata+ase ser0ers.
9 Em+e!!e! 3i!!&eware P comm nication ser0ices an! inte"ration interface software/firmware that o%erates +etween em+e!!e! a%%&ications an! the rea& time o%eratin" s)stem. 9 5ther so rces inc& !e these a!!itiona& c&assifications6 9 Transaction %rocessin" monitors P Pro0i!es too&s an! an en0ironment to !e0e&o% an! !e%&o) !istri+ te! a%%&ications. 9 $%%&ication ser0ers P software insta&&e! on a com% ter to faci&itate the ser0in" .r nnin"/ of other a%%&ications. 9 Enter%rise Ser0ice B s P $n a+straction &a)er on to% of an Enter%rise 3essa"in" S)stem.
RPC
In com% ter science, a remote %roce! re ca&& .;PC/ is an inter-%rocess comm nication that a&&ows a com% ter %ro"ram to ca se a s +ro tine or %roce! re to e1ec te in another a!!ress s%ace .common&) on another com% ter on a share! network/ witho t the %ro"rammer e1%&icit&) co!in" the !etai&s for this remote interaction. That is, the %ro"rammer writes essentia&&) the same co!e whether the s +ro tine is &oca& to the e1ec tin" %ro"ram, or remote. *hen the software in > estion ses o+4ect-oriente! %rinci%&es, ;PC is ca&&e! remote in0ocation or remote metho! in0ocation. Note that there are man) !ifferent .often incom%ati+&e/ techno&o"ies common&) se! to accom%&ish this. ;istor! and origins The i!ea of ;PC .;emote Proce! re Ca&&/ "oes +ack at &east as far as 1KF(, when it was !escri+e! in ;@C F0F. 5ne of the first + siness ses of ;PC was +) Oero1 n!er the name -Co rier- in 1KH1. The first %o% &ar im%&ementation of ;PC on Ini1 was S nJs ;PC .now ca&&e! 5NC ;PC/, se! as the +asis for N@S .S n/. $nother ear&) Ini1 im%&ementation was $%o&&o Com% terJs Network Com% tin" S)stem .NCS/. NCS &ater was se! as the fo n!ation of ?CE/;PC in the 5S@Js ?istri+ te! Com% tin" En0ironment .?CE/. $ !eca!e &ater 3icrosoft a!o%te! ?CE/;PC as the +asis of the 3icrosoft ;PC .3S;PC/ mechanism, an! im%&emente! ?C53 on to% of it. $ro n! the same time .mi!K0Js/, Oero1 P$;CJs IAI, an! the 5+4ect 3ana"ement Cro %Js C5;B$, offere! another ;PC %ara!i"m +ase! on !istri+ te! o+4ects with an inheritance mechanism. -essage passing $n ;PC is initiate! +) the c&ient, which sen!s a re> est messa"e to a known remote ser0er to e1ec te a s%ecifie! %roce! re with s %%&ie! %arameters. The remote ser0er sen!s a res%onse to the c&ient, an! the a%%&ication contin es its %rocess. There are man) 0ariations an! s +t&eties in 0ario s im%&ementations, res &tin" in a 0ariet) of !ifferent .incom%ati+&e/ ;PC %rotoco&s. *hi&e the ser0er is %rocessin" the ca&&, the c&ient is +&ocke! .it waits nti& the ser0er has finishe! %rocessin" +efore res min" e1ec tion/. $n im%ortant !ifference +etween remote %roce! re ca&&s an! &oca& ca&&s is that remote ca&&s can fai& +eca se of n%re!icta+&e network %ro+&ems. $&so, ca&&ers "enera&&) m st !ea& with s ch fai& res witho t knowin" whether the remote %roce! re was act a&&) in0oke!. I!em%otent %roce! res .those that ha0e no a!!itiona& effects if ca&&e! more than once/ are easi&) han!&e!, + t eno "h !iffic &ties remain that co!e to ca&& remote %roce! res is often confine! to caref &&) written &ow-&e0e& s +s)stems. $he steps in ma%ing a RPC 1. The c&ient ca&&in" the C&ient st +. The ca&& is a &oca& %roce! re ca&&, with %arameters % she! on to the stack in the norma& wa). 2. The c&ient st + %ackin" the %arameters into a messa"e an! makin" a s)stem ca&& to sen! the messa"e. Packin" the %arameters is ca&&e! marsha&in". =. The kerne& sen!in" the messa"e from the c&ient machine to the ser0er machine. '. The kerne& %assin" the incomin" %ackets to the ser0er st +. #. @ina&&), the ser0er st + ca&&in" the ser0er %roce! re. The re%&) traces the same in other !irection.
.tandard contact mechanisms To &et !ifferent c&ients access ser0ers, a n m+er of stan!ar!i2e! ;PC s)stems ha0e +een create!. 3ost of these se an interface !escri%tion &an" a"e .I?A/ to &et 0ario s %&atforms ca&& the ;PC. The I?A fi&es can then +e se! to "enerate co!e to interface +etween the c&ient an! ser0er. The most common too& se! for this is ;PCCEN. &ther RPC analogues ;PC ana&o" es fo n! e&sewhere6 9 Ta0aJs Ta0a ;emote 3etho! In0ocation .Ta0a ;3I/ $PI %ro0i!es simi&ar f nctiona&it) to stan!ar! INIO ;PC 9 metho!s. 9 3o! &a-=Js Network 5+4ects, which were the +asis for Ta0aJs ;3I 9 O3A-;PC is an ;PC %rotoco& that ses O3A to enco!e its ca&&s an! DTTP as a trans%ort mechanism. 9 3icrosoft .NET ;emotin" offers ;PC faci&ities for !istri+ te! s)stems im%&emente! on the *in!ows %&atform. 9 ;P)C im%&ements ;PC mechanisms in P)thon, with s %%ort for as)nchrono s ca&&s. 9 P)ro 5+4ect 5riente! form of ;PC for P)thon. 9 Etch .%rotoco&/ framework for + i&!in" network ser0ices. 9 @ace+ookJs Thrift %rotoco& an! framework. 9 C5;B$ %ro0i!es remote %roce! re in0ocation thro "h an interme!iate &a)er ca&&e! the -5+4ect ;e> est Broker9 ?;+ a&&ows ; +) %ro"rams to comm nicate with each other on the same machine or o0er a network. ?;+ ses 9 remote metho! in0ocation .;3I/ to %ass comman!s an! !ata +etween %rocesses. 9 $3@ a&&ows @&e1 a%%&ications to comm nicate with +ack-en!s or other a%%&ications that s %%ort $3@. 9 Ai+e0ent %ro0i!es a framework for creatin" ;PC ser0ers an! c&ients. 9 *in!ows Comm nication @o n!ation is an a%%&ication
R-I
The Ta0a ;emote 3etho! In0ocation $%%&ication Pro"rammin" Interface .$PI/, or Ta0a ;3I, is a Ta0a a%%&ication %ro"rammin" interface that %erforms the o+4ect-oriente! e> i0a&ent of remote %roce! re ca&&s .;PC/. 1. The ori"ina& im%&ementation !e%en!s on Ta0a Virt a& 3achine .TV3/ c&ass re%resentation mechanisms an! it th s on&) s %%orts makin" ca&&s from one TV3 to another. The %rotoco& n!er&)in" this Ta0a-on&) im%&ementation is known as Ta0a ;emote 3etho! Protoco& .T;3P/. 2. In or!er to s %%ort co!e r nnin" in a non-TV3 conte1t, a C5;B$ 0ersion was &ater !e0e&o%e!.
Techno&
Isa"e of the term ;3I ma) !enote so&e&) the %ro"rammin" interface or ma) si"nif) +oth the $PI an! T;3P, whereas the term ;3I-II5P .rea!6 ;3I o0er II5P/ !enotes the ;3I interface !e&e"atin" most of the f nctiona&it) to the s %%ortin" C5;B$ im%&ementation. The %ro"rammers of the ori"ina& ;3I $PI "enera&i2e! the co!e somewhat to s %%ort !ifferent im%&ementations, s ch as a DTTP trans%ort. $!!itiona&&), the a+i&it) to %ass ar" ments -+) 0a& e- was a!!e! to C5;B$ in or!er to s %%ort the ;3I interface. Sti&&, the ;3I-II5P an! T;3P im%&ementations !o not ha0e f &&) i!entica& interfaces. ;3I f nctiona&it) comes in the %acka"e 4a0a.rmi, whi&e most of S nJs im%&ementation is &ocate! in the s n.rmi %acka"e. Note that with Ta0a 0ersions +efore Ta0a #.0 !e0e&o%ers ha! to com%i&e ;3I st +s in a se%arate com%i&ation ste% sin" rmic. Version #.0 of Ta0a an! +e)on! no &on"er re> ire this ste%. Tini offers a more a!0ance! 0ersion of ;3I in Ta0a. It f nctions simi&ar&) + t %ro0i!es more a!0ance! searchin" ca%a+i&ities an! mechanisms for !istri+ te! o+4ect a%%&ications. E+ample The fo&&owin" c&asses im%&ement a sim%&e c&ient-ser0er %ro"ram sin" ;3I that !is%&a)s a messa"e. ;miSer0er class<(istens to R-I re"uests and implements the interface which is used b! the client to invo%e remote methods. import =ava.rmi.*aming> import =ava.rmi.RemoteE+ception> import =ava.rmi.R-I.ecurit!-anager> import =ava.rmi.server.:nicastRemote&b=ect> import =ava.rmi.registr!.?> public class Rmi.erver e+tends :nicastRemote&b=ect implements Rmi.erverIntf U static public final .tring -E..,#E @ A;ello worldA> public Rmi.erver/0 throws RemoteE+ception U super/0> V public .tring get-essage/0 U return -E..,#E> V public static void main/.tring argsBC0 U S)stem.o t.%rint&n.-;3I ser0er starte!-/: // Create and install a security manager if /.!stem.get.ecurit!-anager/0 @@ null0 U S)stem.setSec rit)3ana"er.new ;3ISec rit)3ana"er.//: S)stem.o t.%rint&n.-Sec rit) mana"er insta&&e!.-/: V else S)stem.o t.%rint&n.-Sec rit) mana"er a&rea!) e1ists.-/: tr! DDspecial e+ception handler for registr! creation U Aocate;e"istr).create;e"istr).10KK/: S)stem.o t.%rint&n.-4a0a ;3I re"istr) create!.-/: V catch /RemoteE+ception e0 U //do nothing, error means registry already exists S)stem.o t.%rint&n.-4a0a ;3I re"istr) a&rea!) e1ists.-/: V tr! U Vi!)a&ankar Instit te of Techno&o") Pa"e =1
//Instantiate RmiServer ;miSer0er o+4 R new ;miSer0er./: // Bind this o !ect instance to the name "RmiServer" Namin".re+in!.-//&oca&host/;miSer0er-, o+4/: S)stem.o t.%rint&n.-PeerSer0er +o n! in re"istr)-/: V catch /E+ception e0 U S)stem.err.%rint&n.-;3I ser0er e1ce%tion6-/: e.%rintStackTrace./: V V V Rmi.erverIntf class<Defines the interface that is used b! the client and implemented b! the server. import =ava.rmi.Remote> import =ava.rmi.RemoteE+ception> public interface Rmi.erverIntf e+tends Remote U public .tring get-essage/0 throws RemoteE+ception> V RmiClient class<$his is the client which gets the reference to the remote ob=ect and invo%es its method to get a message. import =ava.rmi.*aming> import =ava.rmi.RemoteE+ception> import =ava.rmi.R-I.ecurit!-anager> public class RmiClient U // "o !" is the reference of the remote o !ect ;miSer0erIntf o+4 R n &&: public .tring get-essage/0 U tr! U o+4 R .;miSer0erIntf/Namin".&ook %.-//&oca&host/;miSer0er-/: return ob=.get-essage/0> V catch /E+ception e0 U S)stem.err.%rint&n.-;miC&ient e1ce%tion6 - W e."et3essa"e.//: e.%rintStackTrace./: return e.get-essage/0> V V public static void main/.tring argsBC0 U // Create and install a security manager if /.!stem.get.ecurit!-anager/0 @@ null0 U S)stem.setSec rit)3ana"er.new ;3ISec rit)3ana"er.//: V ;miC&ient c&i R new ;miC&ient./: S)stem.o t.%rint&n.c&i."et3essa"e.//: V V Before running this sub=, we need to ma%e E.tubE file of interface we used. For this tas% we have R-I compiller ) ErmicE 9 Note6 we make st + fi&e from X.c&ass with im%&ementation remote interface, not JX.4a0aJX Vi!)a&ankar Instit te of Techno&o") Pa"e =2
rmic ;miSer0er server.polic!<$his file is re"uired on the server to allow $CPDIP communication for the remote registr! and for the R-I server. "rant U %ermission 4a0a.net.SocketPermission -12F.0.0.16X-, -connect,reso&0e-: %ermission 4a0a.net.SocketPermission -12F.0.0.16X-, -acce%t-: V: $he server.polic! file should be used using the D switch of Fava R$E, e.g. 4a0a.e1e -?4a0a.sec rit).%o&ic)Rser0er.%o&ic) ;miSer0er client.polic!<$his file is re"uired on the client to connect to R-I .erver using $CPDIP. "rant U %ermission 4a0a.net.SocketPermission -12F.0.0.16X-, -connect,reso&0e-: V: no.polic!<,lso if !ou have a troubles with connecting, tr! this file for server or client. "rant U %ermission 4a0a.sec rit).$&&Permission: V:
Both %atterns are often se! conc rrent&). The same E$I s)stem co &! +e kee%in" m &ti%&e a%%&ications in s)nc .me!iation/, whi&e ser0icin" re> ests from e1terna& sers a"ainst these a%%&ications .fe!eration/. Access patterns E$I s %%orts +oth as)nchrono s an! s)nchrono s access %atterns, the former +ein" t)%ica& in the me!iation case an! the &atter in the fe!eration case. Lifetime patterns $n inte"ration o%eration co &! +e short-&i0e! .e. "., kee%in" !ata in s)nc across two a%%&ications co &! +e com%&ete! within a secon!/ or &on"-&i0e! .e. "., one of the ste%s co &! in0o&0e the E$I s)stem interactin" with a h man work f&ow a%%&ication for a%%ro0a& of a &oan that takes ho rs or !a)s to com%&ete/. E,I topologies There are two ma4or to%o&o"ies6 h +-an!-s%oke, an! + s. Each has its own a!0anta"es an! !isa!0anta"es. In the h +-an!-s%oke mo!e&, the E$I s)stem is at the center .the h +/, an! interacts with the a%%&ications 0ia the s%okes. In the + s mo!e&, the E$I s)stem is the + s .or is im%&emente! as a resi!ent mo! &e in an a&rea!) e1istin" messa"e + s or messa"e-oriente! mi!!&eware/. $echnologies 3 &ti%&e techno&o"ies are se! in im%&ementin" each of the com%onents of the E$I s)stem6 BusDhub This is s a&&) im%&emente! +) enhancin" stan!ar! mi!!&eware %ro! cts .a%%&ication ser0er, messa"e + s/ or im%&emente! as a stan!-a&one %ro"ram .i. e., !oes not se an) mi!!&eware/, actin" as its own mi!!&eware. ,pplication connectivit! The + s/h + connects to a%%&ications thro "h a set of a!a%ters .a&so referre! to as connectors/. These are %ro"rams that know how to interact with an n!er&)in" + siness a%%&ication. The a!a%ter %erforms two-wa) comm nication, %erformin" re> ests from the h + a"ainst the a%%&ication, an! notif)in" the h + when an e0ent of interest occ rs in the a%%&ication .a new recor! inserte!, a transaction com%&ete!, etc./. $!a%ters can +e s%ecific to an a%%&ication .e. "., + i&t a"ainst the a%%&ication 0en!orJs c&ient &i+raries/ or s%ecific to a c&ass of a%%&ications .e. "., can interact with an) a%%&ication thro "h a stan!ar! comm nication %rotoco&, s ch as S5$P or S3TP/. The a!a%ter co &! resi!e in the same %rocess s%ace as the + s/h + or e1ec te in a remote &ocation an! interact with the h +/+ s thro "h in! str) stan!ar! %rotoco&s s ch as messa"e > e es, we+ ser0ices, or e0en se a %ro%rietar) %rotoco&. In the Ta0a wor&!, stan!ar!s s ch as TC$ a&&ow a!a%ters to +e create! in a 0en!or-ne tra& manner. Data format and transformation To a0oi! e0er) a!a%ter ha0in" to con0ert !ata to/from e0er) other a%%&icationsJ formats, E$I s)stems s a&&) sti% &ate an a%%&ication-in!e%en!ent .or common/ !ata format. The E$I s)stem s a&&) %ro0i!es a !ata transformation ser0ice as we&& to he&% con0ert +etween a%%&ication-s%ecific an! common formats. This is !one in two ste%s6 the a!a%ter con0erts information from the a%%&icationJs format to the + sJs common format. Then, semantic transformations are a%%&ie! on this .con0ertin" 2i% co!es to cit) names, s%&ittin"/mer"in" o+4ects from one a%%&ication into o+4ects in the other a%%&ications, an! so on/. Integration modules $n E$I s)stem co &! +e %artici%atin" in m &ti%&e conc rrent inte"ration o%erations at an) "i0en time, each t)%e of inte"ration +ein" %rocesse! +) a !ifferent inte"ration mo! &e. Inte"ration mo! &es s +scri+e to Vi!)a&ankar Instit te of Techno&o") Pa"e =#
e0ents of s%ecific t)%es an! %rocess notifications that the) recei0 e when these e0ents occ r. These mo! &es co &! +e im%&emente! in !ifferent wa)s6 on Ta0a-+ase! E$I s)stems, these co &! +e we+ a%%&ications or ETBs or e0en P5T5s that conform to the E$I s)stemJs s%ecifications. .upport for transactions *hen se! for %rocess inte"ration, the E$I s)stem a&so %ro0i!es transactiona& consistenc) across a%%&ications +) e1ec tin" a&& inte"ration o%erations across a&& a%%&ications in a sin"&e o0erarchin" !istri+ te! transaction . sin" two-%hase commit %rotoco&s or com%ensatin" transactions/. Communication architectures C rrent&), there are man) 0ariations of tho "ht on what constit tes the +est infrastr ct re, com%onent mo!e&, an! stan!ar!s str ct re for Enter%rise $%%&ication Inte"ration. There seems to +e consens s that fo r com%onents are essentia& for mo!ern enter%rise a%%&ication inte"ration architect re6 1. $ centra&i2e! +roker that han!&es sec rit), access, an! comm nication. This can +e accom%&ishe! thro "h inte"ration ser0ers .&ike the Schoo& Intero%era+i&it) @ramework .SI@/ Yone Inte"ration Ser0ers/ or thro "h simi&ar software &ike the Enter%rise ser0ice + s .ESB/ mo!e& that acts as a S5$P-oriente! ser0ices mana"er. 2. $n in!e%en!ent !ata mo!e& +ase! on a stan!ar! !ata str ct re, a&so known as a Canonica& !ata mo!e&. It a%%ears that O3A an! the se of O3A st)&e sheets has +ecome the !e facto an! in some cases !e 4 re stan!ar! for this niform + siness &an" a"e. =. $ connector or a"ent mo!e& where each 0en!or, a%%&ication, or interface can + i&! a sin"&e com%onent that can s%eak nati0e&) to that a%%&ication an! comm nicate with the centra&i2e! +roker. '. $ s)stem mo!e& that !efines the $PIs, !ata f&ow an! r &es of en"a"ement to the s)stem s ch that com%onents can +e + i&t to interface with it in a stan!ar!i2e! wa). $&tho "h other a%%roaches &ike connectin" at the !ata+ase or ser-interface &e0e& ha0e +een e1%&ore!, the) ha0e not +een fo n! to sca&e or +e a+&e to a!4 st. In!i0i! a& a%%&ications can % +&ish messa"es to the centra&i2e! +roker an! s +scri+e to recei0e certain messa"es from that +roker. Each a%%&ication on&) re> ires one connection to the +roker. This centra& contro& a%%roach can +e e1treme&) sca&a+&e an! hi"h&) e0o&0a+&e. Enter%rise $%%&ication Inte"ration is re&ate! to mi!!&eware techno&o"ies s ch as messa"e-oriente! mi!!&eware .353/, an! !ata re%resentation techno&o"ies s ch as O3A. 5ther E$I techno&o"ies in0o&0e sin" we+ ser0ices as %art of ser0ice-oriente! architect re as a means of inte"ration. Enter%rise $%%&ication Inte"ration ten!s to +e !ata centric. In the near f t re, it wi&& come to inc& !e content inte"ration an! + siness %rocesses. E,I Implementation Pitfalls In 200= it was re%orte! that F0Z of a&& E$I %ro4ects fai&. 3ost of these fai& res are not ! e to the software itse&f or technica& !iffic &ties, + t ! e to mana"ement iss es. Inte"ration Consorti m E ro%ean Chairman Ste0e Cra""s has o t&ine! the se0en main %itfa&&s n!ertaken +) com%anies sin" E$I s)stems an! e1%&ains so& tions to these %ro+&ems. G Constant change The 0er) nat re of E$I is !)namic an! re> ires !)namic %ro4ect mana"ers to mana"e their im%&ementation. G .hortage of E,I e+perts E$I re> ires know&e!"e of man) iss es an! technica& as%ects. G Competing standards *ithin the E$I fie&!, the %ara!o1 is that E$I stan!ar!s themse&0es are not ni0ersa&. Vi!)a&ankar Instit te of Techno&o") Pa"e =(
9 E,I is a tool paradigm E$I is not a too&, + t rather a s)stem an! sho &! +e im%&emente! as s ch. G Building interfaces is an art En"ineerin" the so& tion is not s fficient. So& tions nee! to +e ne"otiate! with ser !e%artments to reach a common consens s on the fina& o tcome. $ &ack of consens s on interface !esi"ns &ea!s to e1cessi0e effort to ma% +etween 0ario s s)stems !ata re> irements. G (oss of detail Information that seeme! nim%ortant at an ear&ier sta"e ma) +ecome cr cia& &ater. G ,ccountabilit! Since so man) !e%artments ha0e man) conf&ictin" re> irements, there sho &! +e c&ear acco nta+i&it) for the s)stemJs fina& str ct re. #ther potential pro lems may arise in these areas$ G Emerging Re"uirements E$I im%&ementations sho &! +e e1tensi+&e an! mo! &ar to a&&ow for f t re chan"es. G Protectionism The a%%&ications whose !ata is +ein" inte"rate! often +e&on" to !ifferent !e%artments that ha0e technica&, c &t ra&, an! %o&itica& reasons for not wantin" to share their !ata with other !e%artments ,dvantages and Disadvantages 9 $!0anta"es o ;ea& time information access amon" s)stems o Stream&ines + siness %rocesses an! he&%s raise or"ani2ationa& efficienc) o 3aintains information inte"rit) across m &ti%&e s)stems o Ease of !e0e&o%ment an! maintenance 9 ?isa!0anta"es o Di"h initia& !e0e&o%ment costs, es%ecia&&) for sma&& an! mi!-si2e! + sinesses .S3Bs/ o ;e> ire a fair amo nt of % front + siness !esi"n, which man) mana"ers are not a+&e to en0ision or not wi&&in" to in0est in. 3ost E$I %ro4ects s a&&) start off as %oint-to-%oint efforts, 0er) soon +ecomin" nmana"ea+&e as the n m+er of a%%&ications increase
.&,
Ser0ice-oriente! architect re .S5$/ is a hot to%ic in enter%rise com% tin" +eca se man) IT %rofessiona&s see the %otentia& of an S5$ -- es%ecia&&) a we+ ser0ices-+ase! S5$ -- in !ramatica&&) s%ee!in" % the a%%&ication !e0e&o%ment %rocess. The) a&so see it as a wa) to + i&! a%%&ications an! s)stems that are more a!a%ta+&e, an! in !oin" so, the) see IT +ecomin" more a"i&e in res%on!in" to chan"in" + siness nee!s. Not on&) is S5$ a hot to%ic, + t itJs c&ear&) the wa0e of the f t re. Cartner re%orts that -B) 200H, S5$ wi&& +e a %re0ai&in" software en"ineerin" %ractice, en!in" the '0-)ear !omination of mono&ithic software architect re- an! that -Thro "h 200H, S5$ an! we+ ser0ices wi&& +e im%&emente! to"ether in more than F# %ercent of new S5$ or we+ ser0ices %ro4ects.B t !es%ite this stron" tren!, some in the IT comm nit) !onJt fee& that the we+ ser0ices n!er%innin" for an S5$ is mat re eno "h for their enter%rise to consi!er mi"ration to a ser0ice-oriente! architect re. @or others, the terms ser0ice-oriente! architect re an! we+ ser0ices !raw a +&ank stare. $n ear&ier artic&e, %resente! a +rief o0er0iew of S5$ an! the ro&e of we+ ser0ices in rea&i2in" it. This artic&e s %%&ements that ear&ier artic&e. If )o Jre not fami&iar with S5$ an! we+ ser0ices, this artic&e aims to fami&iari2e )o with them. It !efines some of the ke) terms an! conce%ts re&ate! to S5$ an! we+ ser0ices. $ critica& mass of wi!e&)-a!o%te! techno&o"ies is a0ai&a+&e now to im%&ement an! se a we+ ser0ices-+ase! S5$, an! more techno&o"ies, as we&& as too&s, are on the wa). @i" re 1 i!entifies some of these techno&o"ies an! too&s. Each &a)er of the fi" re shows techno&o"ies or too&s that &e0era"e techno&o"ies in the s rro n!in" &a)ers.
$ ser0iceoriente! architect re i s an information techno&o") a%%roac h or strate") in which a%%&ications make se of .%erha%s more acc rate&), re&) on/ ser0ices a0ai&a+&e in a network s ch as the *or&! *i!e *e+. Im%&ementin" a ser0ice-oriente! architect re can in0o&0e !e0e&o%in" a%%&ications that se ser0ices, makin" a%%&ications a0ai&a+&e as ser0ices so that other a%%&ications can se those ser0ices, or +oth. $ ser0ice %ro0i!es a s%ecific f nction, t)%ica&&) a + siness f nction, s ch as ana&)2in" an in!i0i! a&Js cre!it histor) or %rocessin" a % rchase or!er. $ ser0ice can %ro0i!e a sin"&e !iscrete f nction, s ch as con0ertin" one t)%e of c rrenc) into another, or it can %erform a set of re&ate! + siness f nctions, s ch as han!&in" the 0ario s o%erations in an air&ine reser0ations s)stem. Ser0ices that %erform a re&ate! set of + siness f nctions, as o%%ose! to a sin"&e f nction, are sai! to +e -coarse "raine!.- 3 &ti%&e ser0ices can +e se! to"ether in a coor!inate! wa). The a""re"ate!, or com%osite, ser0ice can +e se! to satisf) a more com%&e1 + siness re> irement. In fact, one wa) of &ookin" at an S5$ is as an a%%roach to connectin" a%%&ications .e1%ose! as ser0ices/ so that the) can comm nicate with .an! take a!0anta"e of/ each other. In other wor!s, a ser0iceoriente! architect re is a wa) of sharin" f nctions .t)%ica&&) + siness f nctions/ in a wi!es%rea! an! f&e1i+&e wa). Vi!)a&ankar Instit te of Techno&o") Pa"e =H
The conce%t of an S5$ is not new. Ser0ice-oriente! architect res ha0e +een se! for )ears. *hat !istin" ishes an S5$ from other architect res is &oose co %&in". Aoose co %&in" means that the c&ient of a ser0ice is essentia&&) in!e%en!ent of the ser0ice. The wa) a c&ient .which can +e another ser0ice/ comm nicates with the ser0ice !oesnJt !e%en! on the im%&ementation of the ser0ice. Si"nificant&), this means that the c&ient !oesnJt ha0e to know 0er) m ch a+o t the ser0ice to se it. @or instance, the c&ient !oesnJt nee! to know what &an" a"e the ser0ice is co!e! in or what %&atform the ser0ice r ns on. The c&ient comm nicates with the ser0ice accor!in" to a s%ecifie!, we&&-!efine! interface, an! then &ea0es it % to the ser0ice im%&ementation to %erform the necessar) %rocessin". If the im%&ementation of the ser0ice chan"es, for instance, the air&ine reser0ations a%%&ication is re0ise!, the c&ient comm nicates with it in the same wa) as +efore, %ro0i!e! that the interface remains the same. Aoose co %&in" ena+&es ser0ices to +e !oc mentoriente! .or !oc ment-centric/. $ !oc ment-oriente! ser0ice acce%ts a !oc ment as in% t, as o%%ose! to somethin" more "ran &ar &ike a n meric 0a& e or Ta0a o+4ect. The c&ient !oes not know or care what + siness f nction in the ser0ice wi&& %rocess the !oc ment. ItJs % to the ser0ice to !etermine what + siness f nction .or f nctions/ to a%%&) +ase! on the content of the !oc ment. Dowe0er what is re&ati0e&) new is the emer"ence of we+ ser0ices-+ase! S5$s. $ we+ ser0ice is a ser0ice that comm nicates with c&ients thro "h a set of stan!ar! %rotoco&s an! techno&o"ies. These we+ ser0ices stan!ar!s are im%&emente! in %&atforms an! %ro! cts from a&& the ma4or software 0en!ors, makin" it %ossi+&e for c&ients an! ser0ices to comm nicate in a consistent wa) across a wi!e s%ectr m of %&atforms an! o%eratin" en0ironments. This ni0ersa&it) has ma!e we+ ser0ices the most %re0a&ent a%%roach to im%&ementin" an S5$. 5%tiona&&), an S5$ can a&so inc& !e a ser0ice that %ro0i!es a !irector) or re"istr) of ser0ices. The re"istr) contains information a+o t the ser0ice s ch as itJs interface. $ c&ient can !isco0er ser0ices +) e1aminin" the re"istr). $ re"istr) can a&so +e co %&e! with a re%ositor) com%onent that stores a!!itiona& information a+o t each ser0ice. This a!!itiona& -meta!ata- can inc& !e + siness %rocess information s ch as %o&ic) statements. 3h! .&, There are man) reasons for an enter%rise to take an S5$ a%%roach, an! more s%ecifica&&), a we+ ser0ices+ase! S5$ a%%roach. Some of the %rimar) reasons are6 Reusabilit! 3hat drives the move to .&, is reuse of business services. Developers within an enterprise and across enter%rises .%artic &ar&), in + siness %artnershi%s/ can take the co!e !e0e&o%e! for e1istin" + siness a%%&ications, e1%ose it as we+ ser0ices, an! then re se it to meet new + siness re> irements. ;e sin" f nctiona&it) that a&rea!) e1ists o tsi!e or insi!e an enter%rise instea! of !e0e&o%in" co!e that re%ro! ces those f nctions can res &t in a h "e sa0in"s in a%%&ication !e0e&o%ment cost an! time. The +enefit of re se "rows !ramatica&&) as more an! more + siness ser0ices "et + i&t, an! incor%orate! into !ifferent a%%&ications. $ ma4or o+stac&e in takin" a!0anta"e of e1istin" co!e is the ni> eness of s%ecific a%%&ications an! s)stems. T)%ica&&), so& tions !e0e&o%e! in !ifferent enter%rises, e0en !ifferent !e%artments within the same enter%rise, ha0e ni> e characteristics. The) r n in !ifferent o%eratin" en0ironments, the)Jre co!e! in !ifferent &an" a"es, the) se !ifferent %ro"rammin" interfaces an! %rotoco&s. Lo nee! to n!erstan! how an! where these a%%&ications an! s)stems r n to comm nicate with them. The work in0o&0e! in !oin" this ana&)sis an! the !e0e&o%ment effort in t)in" these %ieces to"ether can +e 0er) time cons min". *itness the %ain IT or"ani2ations "enera&&) enco nter when the) tr) to inte"rate their a%%&ications with s)stems from + siness %artners .or e0en with &e"ac) s)stems from other %arts of their own com%an)/. In an S5$, the on&) characteristic of a ser0ice that a re> estin" a%%&ication nee!s to know a+o t is the % +&ic interface. The f nctions of an a%%&ication or s)stem .inc& !in" &e"ac) s)stems/ can +e !ramatica&&) easier to access as a ser0ice in an S5$ than in some other architect re. So inte"ratin" a%%&ications an! s)stems can +e m ch sim%&er. Interoperabilit! $he .&, vision of interaction between clients and loosel!)coupled services means widespread intero%era+i&it). In other wor!s, the o+4ecti0e is for c&ients an! ser0ices to comm nicate an! n!erstan! each other no matter what %&atform the) r n on. This o+4ecti0e can +e met on&) if c&ients an! ser0ices ha0e a stan!ar! wa) of comm nicatin" with each other -- a wa) thatJs consistent across %&atforms, s)stems, an! &an" a"es. In fact, we+ ser0ices %ro0i!e e1act&) that. *e+ ser0ices com%rise a mat rin" set of %rotoco&s an! techno&o"ies that are wi!e&) Vi!)a&ankar Instit te of Techno&o") Pa"e =K
acce%te! an! se!, an! that are %&atform, s)stem, an! &an" a"e in!e%en!ent. In a!!ition, these %rotoco&s an! techno&o"ies work across firewa&&s, makin" it easier for + siness %artners to share 0ita& ser0ices. Promisin" to make thin"s e0en more consistent is the *S-I +asic %rofi&e, intro! ce! +) the *e+ Ser0ices Intero%era+i&it) 5r"ani2ation .an or"ani2ation chartere! to %romote we+ ser0ices intero%era+i&it)/. The *S-I +asic %rofi&e i!entifies a core set of we+ ser0ices techno&o"ies that when im%&emente! in !ifferent %&atforms an! s)stems, he&%s ens re that ser0ices on these !ifferent %&atforms an! s)stems, an! written in !ifferent &an" a"es, can comm nicate with each other. The *S-I +asic %rofi&e has wi!es%rea! +ackin" in the com% ter in! str), 0irt a&&) " aranteein" intero%era+i&it) of ser0ices that conform to the %rofi&e. .calabilit! Because services in an .&, are loosel! coupled, applications that use these services tend to scale easil! )) certain&) more easi&) than a%%&ications in a more ti"ht&)-co %&e! en0ironment. ThatJs +eca se there are few !e%en!encies +etween the re> estin" a%%&ication an! the ser0ices it ses. The !e%en!encies +etween c&ient an! ser0ice in a ti"ht&)-co %&e! en0ironment are com%o n!e! .an! the !e0e&o%ment effort ma!e si"nificant&) more com%&e1/ as an a%%&ication that ses these ser0ices sca&es % to han!&e more sers. Ser0ices in a we+ ser0ices-+ase! S5$ ten! to +e coarse-"raine!, !oc ment-oriente!, an! as)nchrono s. $s mentione! ear&ier, coarse-"raine! ser0ices offer a set of re&ate! + siness f nctions rather than a sin"&e f nction. @or e1am%&e, a coarse-"raine! ser0ice mi"ht han!&e the %rocessin" of a com%&ete % rchase or!er. B) com%arison, a fine-"raine! ser0ice mi"ht han!&e on&) one o%eration in the % rchase or!er %rocess. $"ain, as mentione! ear&ier, a !oc ment-oriente! ser0ice acce%ts a !oc ment as in% t, as o%%ose! to somethin" more "ran &ar &ike a n meric 0a& e or Ta0a o+4ect. $n e1am%&e of a !oc ment-oriente! ser0ice mi"ht +e a tra0e& a"enc) ser0ice that acce%ts as in% t a !oc ment that contains tra0e& information for a s%ecific tri% re> est. $n as)nchrono s ser0ice %erforms its %rocessin" witho t forcin" the c&ient to wait for the %rocessin" to finish. $ s)nchrono s ser0ice forces the c&ient to wait. The re&ati0e&) &imite! interaction re> ire! for a c&ient to comm nicate with a coarse-"raine!, as)nchrono s ser0ice, es%ecia&&) a ser0ice that han!&es a !oc ment s ch as a % rchase or!er, a&&ows a%%&ications that se these ser0ices to sca&e witho t % ttin" a hea0) comm nication &oa! on the network. Fle+ibilit! (oosel!)coupled services are t!picall! more fle+ible than more tightl!)coupled applications. In a tightl!) co %&e! architect re, the !ifferent com%onents of an a%%&ication are ti"ht&) +o n! to each other, sharin" semantics, &i+raries, an! often sharin" state. This makes it !iffic &t to e0o&0e the a%%&ication to kee% % with chan"in" + siness re> irements. The &oose&)-co %&e!, !oc ment-+ase!, as)nchrono s nat re of ser0ices in an S5$ a&&ows a%%&ications to +e f&e1i+&e, an! eas) to e0o&0e with chan"in" re> irements. Cost Efficienc! &ther approaches that integrate disparate business resources such as legac! s!stems, business %artner a%%&ications, an! !e%artment-s%ecific so& tions are e1%ensi0e +eca se the) ten! to tie these com%onents to"ether in a c stomi2e! wa). C stomi2e! so& tions are cost&) to + i&! +eca se the) re> ire e1tensi0e ana&)sis, !e0e&o%ment time, an! effort. The)Jre a&so cost&) to maintain an! e1ten! +eca se the)Jre t)%ica&&) ti"ht&)-co %&e!, so that chan"es in one com%onent of the inte"rate! so& tion re> ire chan"es in other com%onents. $ stan!ar!s+ase! a%%roach s ch as a we+ ser0ices-+ase! S5$ sho &! res &t in &ess cost&) so& tions +eca se the inte"ration of c&ients an! ser0ices !oesnJt re> ire the in-!e%th ana&)sis an! ni> e co!e of c stomi2e! so& tions. $&so, +eca se ser0ices in an S5$ are &oose&)-co %&e!, a%%&ications that se these ser0ices sho &! +e &ess cost&) to maintain an! easier to e1ten! than c stomi2e! so& tions. In a!!ition, a &ot of the *e+-+ase! infrastr ct re for a we+ ser0ices+ase! S5$ is a&rea!) in %&ace in man) enter%rises, f rther &imitin" the cost. Aast, + t not &east, S5$ is a+o t re se of + siness f nctions e1%ose! as coarse-"raine! ser0ices. This is %otentia&&) the +i""est cost sa0in" of a&&. .&,P 3ost %eo%&e ten! to think of S5$P as nothin" more than a %rotoco& for ;emote Proce! re Ca&&s .;PC/ o0er D)%erte1t Transfer Protoco& .DTTP/. Dowe0er, this is on&) one im%&ementation of S5$P, which is !efine! as a &i"htwei"ht %rotoco& for %assin" str ct re! an! t)%e! !ata +etween two %eers sin" O3A. The s%ecification !oesn7t re> ire the se of DTTP or e0en a re> est/res%onse t)%e of con0ersation. Instea!, S5$P can +e se! with an) %rotoco& that
s %%orts the transmission of O3A !ata from a sen!er to a recei0er. In fact, +oth 3icrosoft an! IB3 ha0e im%&emente! S5$P messa"es o0er S3TP, which means S5$P messa"es can +e ro te! thro "h e-mai& ser0ers. The +ottom &ine is S5$P is nothin" more than a &i"htwei"ht messa"in" %rotoco&, which can +e se! to sen! messa"es +etween %eers. The main "oa&s of S5$P are foc se! on %ro0i!in" a common wa) to %acka"e messa"e !ata an! !efine enco!in" r &es se! to seria&i2e an! !eseria&i2e the !ata ! rin" transmission. $nother "oa& was to %ro0i!e a mo!e& that can +e se! to im%&ement ;PC o%erations sin" S5$P. $&& these "oa&s are consi!ere! 8ortho"ona&E in the s%ecification, which means the) are in!e%en!ent, + t re&ate!. @or e1am%&e6 $ S5$P messa"e sho &! !efine enco!in" r &es, + t these r &es nee!n7t +e the same r &es !efine! in the s%ecification. E1am%&e6 [S5$P-ENV6 En0e&o%e 1m&ns6S5$P-ENVR -htt%6//schemas.1m&soa%.or"/soa%/en0e&o%e/S5$P-ENV6 enco!in"St)&eR -htt%6//schemas.1m&soa%.or"/soa%/enco!in"/-N [S5$P-ENV6Dea!erN [t6Transaction 1m&ns6tR-some-I;I-N S5$P-ENV6m stIn!erstan!R-1-N [/t6TransactionN [/S5$P-ENV6Dea!erN [S5$P-ENV6Bo!)N [m6CetBookPrice 1m&ns6mR-some-I;I-N [tit&eN3) Aife an! Times[/tit&eN [a thorN@e&i1 Darrison[/a thorN [/m6 CetBookPriceN [/S5$P-ENV6Bo!)N [/S5$P-En0e&o%eN
$ re&ate! stan!ar!, S5$P 3essa"es *ith $ttachments, s%ecifies the format of a S5$P messa"e that inc& !es attachments .s ch as, ima"es/. S5$P messa"es .with or witho t attachments/ are in!e%en!ent of an) o%eratin" s)stem or %&atform an! can +e trans%orte! sin" a 0ariet) of comm nication %rotoco&s, s ch as DTTP or S3TP. *S-I Basic Profi&e 1.0 references S5$P 1.1.
3.D( Dow !oes a c&ient know what format to se in makin" a re> est to a ser0iceB @or that matter, how !o the c&ient an! the ser0ice know what the re> est meansB The answers to these > estions are %ro0i!e! +) information in an O3A Vi!)a&ankar Instit te of Techno&o") Pa"e '1
!oc ment, ca&&e! a *S?A !oc ment, that contains a !escri%tion of the we+ ser0iceJs interface. $ *S?A !oc ment contains information s%ecifie! in *e+ Ser0ice ?escri%tion Aan" a"e .*S?A/, as !efine! in the *S?A s%ecification. *S?A !efines an O3A schema for !escri+in" a we+ ser0ice. To nco0er the !escri%tion for a *e+ ser0ice, a c&ient nee!s to fin! the ser0iceJs *S?A !oc ment. 5ne wa), %erha%s the most t)%ica& wa), to !o this is for the c&ient to fin! a %ointer to the *S?A !oc ment in the we+ ser0iceJs re"istration, which can +e in a I??I re"istr) or an e+O3A re"istr)/re%ositor). $ t)%ica& scenario is that a + siness re"isters its ser0ice. The re"istr) entr) inc& !es a %ointer to a *S?A fi&e that contains the *S?A !oc ment for the ser0ice. $nother + siness searches the re"istr) an! fin!s the ser0ice. $ %ro"rammer ses the interface information in the *S?A !oc ment to constr ct the a%%ro%riate ca&&s to the ser0ice. $ *S?A !oc ment !escri+es a we+ ser0ice as a co&&ection of a+stract items ca&&e! -%orts- or -en!%oints.$ *S?A !oc ment a&so !efines the actions %erforme! +) a we+ ser0ice an! the !ata transmitte! to these actions in an a+stract wa). $ctions are re%resente! +) -o%erations,- an! !ata is re%resente! +) -messa"es.- $ co&&ection of re&ate! o%erations is known as a -%ort t)%e.- $ %ort t)%e constit tes the co&&ection of actions offere! +) a we+ ser0ice. *hat t rns a *S?A !escri%tion from a+stract to concrete is a -+in!in".- $ +in!in" s%ecifies the network %rotoco& an! messa"e format s%ecifications for a %artic &ar %ort t)%e. $ %ort is !efine! +) associatin" a network a!!ress with a +in!in". If a c&ient &ocates a *S?A !oc ment an! fin!s the +in!in" an! network a!!ress for each %ort, it can ca&& the ser0iceJs o%erations accor!in" to the s%ecifie! %rotoco& an! messa"e format. Dere, for e1am%&e, is a *S?A !oc ment for an on&ine +ook search ser0ice. Notice in the e1am%&e that the *S?A !oc ment s%ecifies one o%eration for the ser0ice6 "etBooks6 [o%eration nameR-"etBooks- ... The in% t messa"e for the o%eration, BookSearchIn% t contains a strin" 0a& e name! is+n6 [com%&e1T)%eN [a&&N [e&ement nameR-is+nt)%eR-strin"-/N [/a&&N The o t% t messa"e for the o%eration, BookSearch5 t% t ret rns a strin" 0a& e name! tit&e6 [com%&e1T)%eN [a&&N [e&ement nameR-tit&et)%eR-strin"-/N [/a&&N Notice too that the *S?A !oc ment s%ecifies a S5$P %rotoco& +in!in". The st)&e attri+ te in the +in!in" e&ement s%ecifies that the recei0er sho &! inter%ret the %a)&oa! in the S5$P messa"e as an ;PC metho! ca&&6 [soa%6+in!in" trans%ortR-trans%ortRhtt%6//schemas.1m&soa%.or"/soa%/htt%st)&eR-r%c-/N $&ternati0e&), the st)&e attri+ te in a +in!in" e&ement co &! s%ecif) -!oc ment-. In that case, a com%&ete !oc ment .t)%ica&&) an O3A !oc ment/ wo &! +e e1chan"e! in the ca&&. In fact, the !oc ment st)&e of +in!in" is more t)%ica& of ser0ices in an S5$. 5ne of the a!0anta"es of %assin" an O3A !oc ment to a ser0ice instea! of an ;PC-st)&e messa"e is that it ten!s to +e easier to 0a&i!ate an! to a%%&) + siness r &es. The *S-I Basic Profi&e 1.0 s%ecifies the constr cts in *S?A 1.1 that +e can +e se! to ens re intero%era+i&it). It a&so c&arifies some of the constr ct !escri%tions in the *S?A 1.1 s%ecification. :DDI and ebH-( $s mentione! ear&ier, an S5$ can a&so inc& !e a ser0ice that %ro0i!es a !irector) or re"istr) of ser0ices. B t how can a ser0ice +e !escri+e! in a re"istr) so that a %ro"ram &ookin" for that ser0ice can easi&) fin! it an! n!erstan! what it Vi!)a&ankar Instit te of Techno&o") Pa"e '2
!oesB The Ini0ersa& ?escri%tion, ?isco0er), an! Inte"ration .I??I/ s%ecifications !efine how to % +&ish an! !isco0er information a+o t ser0ices in a I??I-conformin" re"istr). 3ore s%ecifica&&), the s%ecifications !efine a I??I schema an! a I??I $PI. The I??I schema i!entifies the t)%es of O3A !ata str ct res that com%rise an entr) in the re"istr) for a ser0ice. Think of a I??I re"istr) as a -Le&&ow Pa"es- for we+ ser0ices. Aike the Le&&ow Pa"es !irector) for %hone n m+ers, a I??I re"istr) %ro0i!es information a+o t a ser0ice s ch as the name of the ser0ice, a +rief !escri%tion of what it !oes, an a!!ress where the ser0ice can +e accesse!, an! a !escri%tion of the interface for accessin" the ser0ice. The accom%an)in" fi" re i&& strates the schema. It shows the fi0e t)%es of O3A !ata str ct res that com%rise a re"istration. Dere is an e1am%&e that shows %art of a com%&ete B sinessEntit) str ct re for a h)%othetica& com%an) name! BooksToCo. The com%an) %ro0i!es 0ario s we+ ser0ices, inc& !in" an on&ine +ook or!erin" ser0ice. [+ sinessEntit) + sinessKe)R-=#$@F@00-1'1K-11?(-$0?C-000C0E00$C??a thori2e!NameR-0100002C$Ao%eratorR-www-=.i+m.com/ser0ices/ !!i-N [nameNBooksToCo[/nameN [!escri%tion 1m&6&an"R-en-N The so rce for a&& %rofessiona& +ooks [/!escri%tionN [contactsN [contactN [%ersonNameNBen4amin Boss[/%ersonNameN [%honeN .HFF/1111111 [/%honeN [/contactN [/contactsN The $PI !escri+es the S5$P messa"es that are se! to % +&ish an entr) in a re"istr), or !isco0er an entr) in a re"istr). Dere, for e1am%&e, is a messa"e that searches for a&& + siness entities in a re"istr) whose name +e"ins with the characters -Books-6 [fin!\+ siness "enericR-2.0- 1m&nsR m6 !!i-or"6a%i-02-N [nameNBooksZ[/nameN [/fin!\+ sinessN I??I 2.0 is %art of the *S-I Basic Profi&e 1.1
3..ecurit!
*S-Sec rit) is a stan!ar! re&ease! +) 5$SIS in 3arch 200'. It !escri+es sec rit)-re&ate! enhancements to S5$P messa"in" that %ro0i!e for messa"e inte"rit) an! confi!entia&it). Inte"rit) means that a S5$P messa"e is not tam%ere! with as it tra0e&s from a c&ient to its fina& !estination. Confi!entia&it) means that a S5$P messa"e is on&) seen +) inten!e! reci%ients. *S-Sec rit) ses sec rit) tokens to ena+&e S5$P messa"e sec rit) an! inte"rit). $ sec rit) token is a co&&ection of c&aims ma!e +) the sen!er of a S5$P messa"e .s ch as the sen!erJs i!entit)/. $ sen!er is a thenticate! +) com+inin" a sec rit) token with a !i"ita& si"nat re G the si"nat re is se! as %roof that the sen!er is in!ee! associate! with the sec rit) token. The stan!ar! a&so %ro0i!es a "enera&-% r%ose mechanism for associatin" sec rit) tokens with messa"es, an! !escri+es how to enco!e +inar) sec rit) tokens. *S-Sec rit) is > ite f&e1i+&e an! can +e se! with a wi!e 0ariet) of sec rit) mo!e&s an! encr)%tion techno&o"ies, s ch as P +&ic-ke) infrastr ct re .PKI/ an! Ker+eros, as we&& as the Sec re Socket Aa)er .SSA// Trans%ort Aa)er Sec rit) .TAS/ %rotoco& that %ro0i!es +asic en!-to-en! sec rit) comm nication on the Internet. E+ample .001/ [B1m& 0ersionR-1.0- enco!in"R- tf-H-BN .002/ [S6En0e&o%e 1m&ns6SR-htt%6//www.w=.or"/2001/12/soa%-en0e&o%e1m&ns6!sR-htt%6//www.w=.or"/2000/0K/1m&!si"]-N .00=/ [S6Dea!erN Vi!)a&ankar Instit te of Techno&o") Pa"e '=
[m6%ath 1m&ns6mR-htt%6//schemas.1m&soa%.or"/r%/-N [m6actionNhtt%6//fa+rikam12=.com/"etS ote[/m6actionN [m6toNhtt%6//fa+rikam12=.com/stocks[/m6toN [m6i!N i!6H'+Kf#!0-==f+-'aH1-+02+-#+F(0('1c1!([/m6i!N [/m6%athN [wsse6Sec rit) 1m&ns6wsseR-htt%6//schemas.1m&soa%.or"/ws/2002/0'/sece1t-N .010/ wsse6IsernameToken I!R-3)I?-N .011/ [wsse6IsernameNYoe[/wsse6IsernameN .012/ [/wsse6IsernameTokenN .01=/ [!s6Si"nat reN .01'/ [!s6Si"ne!InfoN .01#/ [!s6Canonica&i2ation3etho! $&"orithmR -htt%6//www.w=.or"/2001/10/1m&-e1c-c1'n]-/N .01(/ [!s6Si"nat re3etho! $&"orithmR -htt%6//www.w=.or"/2000/0K/1m&!si"]hmac-sha1-/N .01F/ [!s6;eference I;IR-]3s"Bo!)-N .01H/ [!s6?i"est3etho! $&"orithmR -htt%6//www.w=.or"/2000/0K/1m&!si"]sha1-/N .01K/ [!s6?i"estVa& eNA)As@0Pi'wPI...[/!s6?i"estVa& eN .020/ [/!s6;eferenceN .021/ [/!s6Si"ne!InfoN .022/ [!s6Si"nat reVa& eN?T+chm#"K...[/!s6Si"nat reVa& eN .02=/ [!s6Ke)InfoN .02'/ [wsse6Sec rit)Token;eferenceN .02#/ [wsse6;eference I;IR-]3)I?-/N .02(/ [/wsse6Sec rit)Token;eferenceN .02F/ [/!s6Ke)InfoN .02H/ [/!s6Si"nat reN .02K/ [/wsse6Sec rit)N .0=0/ [/S6Dea!erN .0=1/ [S6Bo!) I!R-3s"Bo!)-N .0=2/ [tr 6StockS)m+o& 1m&ns6tr R-htt%6//fa+rikam12=.com/%a)&oa!s-N SSS [/tr 6StockS)m+o&N .0==/ [/S6Bo!)N .0='/ [/S6En0e&o%eN The &ines in the e1am%&e that i&& strate *S-Sec rit) enhancements are6 9 Aine .00K/. This s%ecifies a [Sec rit)N hea!er that contains sec rit) information for an inten!e! recei0er. This e&ement contin es nti& &ine .02K/. 9 Aines .010/ to .012/. These &ines s%ecif) a sec rit) token that is associate! with the messa"e. In this case, it !efines the sername of the c&ient sin" the [IsernameTokenN e&ement. The sec rit) token can a&so +e se! to s%ecif) a %asswor!. Dowe0er in this e1am%&e itJs ass me! that the recei0er knows the %asswor! - in other wor!s, it is a share! secret. 9 Aines .01=/ to .02H/ s%ecif) a !i"ita& si"nat re. This si"nat re ens res the inte"rit) of the si"ne! e&ements .that the) arenJt mo!ifie!/. The si"nat re fo&&ows the O3A Si"nat re s%ecification. In this e1am%&e, the si"nat re is +ase! on a ke) "enerate! from the serJs %asswor!. T)%ica&&), stron"er si"nin" mechanisms wo &! +e se!. 9 Aines .01'/ to .021/ !escri+e the !i"ita& si"nat re. Aine .01#/ s%ecifies how to canonica&i2e .norma&i2e/ the !ata that is +ein" si"ne!. 9 Aines .01F/ to .020/ se&ect the e&ements that are si"ne!. S%ecifica&&), &ine .01F/ in!icates that the [S6Bo!)N e&ement is si"ne!. In this e1am%&e, on&) the messa"e +o!) is si"ne!. T)%ica&&), a!!itiona& e&ements of the messa"e, s ch as %arts of the ro tin" hea!er, sho &! +e inc& !e! in the si"nat re.
9 Aine .022/ s%ecifies the si"nat re 0a& e of the canonica&i2e! form of the !ata that is +ein" si"ne! as !efine! in the O3A Si"nat re s%ecification. 9 Aines .02=/ to .02F/ %ro0i!e a hint as to where to fin! the sec rit) token associate! with this si"nat re. S%ecifica&&), &ines .02'/ to .02#/ in!icate that the sec rit) token can +e fo n! at .% &&e! from/ the s%ecifie! I;A.
ECommerce Infrastructure
Cluster of .ervers
$ com% ter c& ster is a "ro % of &inke! com% ters, workin" to"ether c&ose&) th s in man) res%ects formin" a sin"&e com% ter. The com%onents of a c& ster are common&), + t not a&wa)s, connecte! to each other thro "h fast &oca& area networks. C& sters are s a&&) !e%&o)e! to im%ro0e %erformance an!/or a0ai&a+i&it) o0er that of a sin"&e com% ter, whi&e t)%ica&&) +ein" m ch more cost-effecti0e than sin"&e com% ters of com%ara+&e s%ee! or a0ai&a+i&it). Cluster Categori2ations 9 Di"h-a0ai&a+i&it) .D$/ c& sters o Di"h-a0ai&a+i&it) c& sters .a&so known as @ai&o0er C& sters/ are im%&emente! %rimari&) for the % r%ose of im%ro0in" the a0ai&a+i&it) of ser0ices that the c& ster %ro0i!es. o The) o%erate +) ha0in" re! n!ant no!es, which are then se! to %ro0i!e ser0ice when s)stem com%onents fai&. o The most common si2e for an D$ c& ster is two no!es, which is the minim m re> irement to %ro0i!e re! n!anc). o D$ c& ster im%&ementations attem%t to se re! n!anc) of c& ster com%onents to e&iminate sin"&e %oints of fai& re. o There are commercia& im%&ementations of Di"h$0ai&a+i&it) c& sters for man) o%eratin" s)stems. o 5ne s ch im%&ementation is the Cri!&ock %&atform from htt%6//www.o+si!ian!)namics.com. o The Ain 1-D$ %ro4ect is one common&) se! free software D$ %acka"e for the Ain 1 o%eratin" s)stem. o The Aan!erC& ster from Aan!er Software can r n on *in !ows, Ain 1, an! INIO %&atforms. 9 Aoa!-+a&ancin" c& sters o Aoa!-+a&ancin" is when m &ti%&e com% ters are &inke! to"ether to share com% tationa& work&oa! or f nction as a sin"&e 0irt a& com% ter. o Ao"ica&&), from the ser si!e, the) are m &ti%&e machines, + t f nction as a sin"&e 0irt a& machine. o ;e> ests initiate! from the ser are mana"e! +), an! !istri+ te! amon", a&& the stan!a&one com% ters to form a c& ster. o This res &ts in +a&ance! com% tationa& work amon" !ifferent machines, im%ro0in" the %erformance of the c& ster s)stems. 9 Com% te C& sters o 5ften c& sters are se! %rimari&) for com% tationa& % r%oses, rather than han!&in" I5-oriente! o%erations s ch as we+ ser0ice or !ata+ases. o @or instance, a c& ster mi"ht s %%ort com% tationa& sim &ations of weather or 0ehic&e crashes. o The %rimar) !istinction within com% te c& sters is how ti"ht&)-co %&e! the in!i0i! a& no!es are. o @or instance, a sin"&e com% te 4o+ ma) re> ire fre> ent comm nication amon" no!es - this im%&ies that the c& ster shares a !e!icate! network, is !ense&) &ocate!, an! %ro+a+&) has homo"eno s no!es. Vi!)a&ankar Instit te of Techno&o") Pa"e '(
o This c& ster !esi"n is s a&&) referre! to as Beow &f C& ster. o The other e1treme is where a com% te 4o+ ses one or few no!es, an! nee!s &itt&e or no inter-no!e comm nication. o This &atter cate"or) is sometimes ca&&e! -Cri!- com% tin". o Ti"ht&)-co %&e! com% te c& sters are !esi"ne! for work that mi"ht tra!itiona&&) ha0e +een ca&&e! -s %ercom% tin"-. o 3i!!&eware s ch as 3PI .3essa"e Passin" Interface/ or PV3 .Para&&e& Virt a& 3achine/ %ermits com% te c& sterin" %ro"rams to +e %orta+&e to a wi!e 0ariet) of c& sters. 9 Cri! Com% tin" o Cri!s are s a&&) com% ter c& sters, + t more foc se! on thro "h% t &ike a com% tin" ti&it) rather than r nnin" fewer, ti"ht&)-co %&e! 4o+s. o 5ften, "ri!s wi&& incor%orate hetero"eneo s co&&ections of com% ters, %ossi+&) !istri+ te! "eo"ra%hica&&), sometimes a!ministere! +) nre&ate! or"ani2ations. o Cri! com% tin" is o%timi2e! for work&oa!s which consist of man) in!e%en!ent 4o+s or %ackets of work, which !o not ha0e to share !ata +etween the 4o+s ! rin" the com% tation %rocess. o Cri!s ser0e to mana"e the a&&ocation of 4o+s to com% ters which wi&& %erform the work in!e%en!ent&) of the rest of the "ri! c& ster. o ;eso rces s ch as stora"e ma) +e share! +) a&& the no!es, + t interme!iate res &ts of one 4o+ !o not affect other 4o+s in %ro"ress on other no!es of the "ri!. o $n e1am%&e of a 0er) &ar"e "ri! is the @o&!in"^home %ro4ect. o It is ana&)2in" !ata that is se! +) researchers to fin! c res for !iseases s ch as $&2heimerJs an! cancer. o $nother &ar"e %ro4ect is the SETI^home %ro4ect, which ma) +e the &ar"est !istri+ te! "ri! in e1istence. o It ses a%%ro1imate&) three mi&&ion home com% ters a&& o0er the wor&! to ana&)2e !ata from the $reci+o 5+ser0ator) ra!iote&esco%e, searchin" for e0i!ence of e1traterrestria& inte&&i"ence. o In +oth of these cases, there is no inter-no!e comm nication or share! stora"e. o In!i0i! a& no!es connect to a main, centra& &ocation to retrie0e a sma&& %rocessin" 4o+. o The) then %erform the com% tation an! ret rn the res &t to the centra& ser0er. o In the case of the ^home %ro4ects, the software is "enera&&) r n when the com% ter is otherwise i!&e. , cluster of servers allows servers to wor% together as computer cluster, to provide failover and increased availabilit! of applications, or parallel calculating power in case of high)performance computing /;PC0 clusters /as in supercomputing0. $ ser0er c& ster is a "ro % of in!e%en!ent ser0ers workin" to"ether as a sin"&e s)stem to %ro0i!e hi"h a0ai&a+i&it) of ser0ices for c&ients. *hen a fai& re occ rs on one com% ter in a c& ster, reso rces are re!irecte! an! the work&oa! is re!istri+ te! to another com% ter in the c& ster. Lo can se ser0er c& sters to ens re that sers ha0e constant access to im%ortant ser0er-+ase! reso rces. Ser0er c& sters are !esi"ne! for a%%&ications that ha0e &on"-r nnin" in-memor) state or fre> ent&) %!ate! !ata. T)%ica& ses for ser0er c& sters inc& !e fi&e ser0ers, %rint ser0ers, !ata+ase ser0ers, an! messa"in" ser0ers. $ c& ster consists of two or more com% ters workin" to"ether to %ro0i!e a hi"her &e0e& of a0ai&a+i&it), re&ia+i&it), an! sca&a+i&it) than can +e o+taine! +) sin" a sin"&e com% ter. 3icrosoft c& ster techno&o"ies " ar! a"ainst three s%ecific t)%es of fai& re6 9 $%%&ication an! ser0ice fai& res, which affect a%%&ication software an! essentia& ser0ices.
9 S)stem an! har!ware fai& res, which affect har!ware com%onents s ch as CPIs, !ri0es, memor), network a!a%ters, an! %ower s %%&ies. 9 Site fai& res in m &tisite or"ani2ations, which can +e ca se! +) nat ra& !isasters, %ower o ta"es, or connecti0it) o ta"es. The a+i&it) to han!&e fai& re a&&ows ser0er c& sters to meet re> irements for hi"h a0ai&a+i&it), which is the a+i&it) to %ro0i!e sers with access to a ser0ice for a hi"h %ercenta"e of time whi&e re! cin" nsche! &e! o ta"es. In a ser0er c& ster, each ser0er owns an! mana"es its &oca& !e0ices an! has a co%) of the o%eratin" s)stem an! the a%%&ications or ser0ices that the c& ster is mana"in". ?e0ices common to the c& ster, s ch as !isks in common !isk arra)s an! the connection me!ia for accessin" those !isks, are owne! an! mana"e! +) on&) one ser0er at a time. @or most ser0er c& sters, the a%%&ication !ata is store! on !isks in one of the common !isk arra)s, an! this !ata is accessi+&e on&) to the ser0er that c rrent&) owns the corres%on!in" a%%&ication or ser0ice. Ser0er c& sters are !esi"ne! so that the ser0ers in the c& ster work to"ether to %rotect !ata, kee% a%%&ications an! ser0ices r nnin" after fai& re on one of the ser0ers, an! maintain consistenc) of the c& ster confi" ration o0er time. $!pes of .erver Clusters Single Quorum Device Cluster The most wi!e&) se! c& ster t)%e is the sin"&e > or m !e0ice c& ster, a&so ca&&e! the stan!ar! > or m c& ster. In this t)%e of c& ster there are m &ti%&e no!es with one or more c& ster !isk arra)s, a&so ca&&e! the c& ster stora"e, an! a connection !e0ice, that is, a + s. Each !isk in arra) is owne! an! mana"e! +) on&) one at a time. The !isk arra) a&so contains the > or m reso rce. The fo&&owin" fi" re i&& strates a sin"&e > or m !e0ice c& ster with one c& ster !isk arra). Beca se sin"&e > or m !e0ice c& sters are the most wi!e&) se! c& ster, this Technica& ;eference foc ses on this t)%e of c& ster. Majority Node Set Cluster *in!ows Ser0er 200= s %%orts another t)%e of ma4orit) no!e set c& ster. In a ma4orit) no!e set c& ster, each no!e maintains its own co%) of the c& ster confi" ration !ata. The > or m reso rce kee%s confi" ration !ata consistent across the no!es. @or this reason, ma4orit) no!e set c& sters can +e se! for "eo"ra%hica&&) !is%erse! c& sters. $nother a!0anta"e of ma4orit) no!e set c& sters is that a > or m !isk can +e taken off&ine for maintenance an! the c& ster as a who&e wi&& contin e to o%erate. The ma4or !ifference +etween ma4orit) no!e set c& sters an! > or m !e0ice c& sters is that sin"&e > or m !e0ice c& sters can o%erate with 4 st one no!e, + t ma4orit) no!e set c& sters nee! to ha0e a ma4orit) of the c& ster no!es a0ai&a+&e for the ser0er c& ster to o%erate. The fo&&owin" fi" re i&& strates a ma4orit) no!e set c& ster. @or the c& ster in the fi" re to contin e to o%erate, two of the three c& ster no!es .a ma4orit)/ m st +e a0ai&a+&e.
the ser0er
sin"&e
Local Quorum Cluster $ &oca& > or m c& ster, a&so ca&&e! a sin"&e no!e c& ster, has a sin"&e no!e an! is often se! for testin". The fo&&owin" fi" re i&& strates a &oca& > or m c& ster.
Iirtuali2ation
Ser0er 0irt a&i2ation is the maskin" of ser0er reso rces, inc& !in" the n m+er an! i!entit) of in!i0i! a& %h)sica& ser0ers, %rocessors, an! o%eratin" s)stems, from ser0er sers. The ser0er a!ministrator ses a software a%%&ication to !i0i!e one %h)sica& ser0er into m &ti%&e iso&ate! 0irt a& en0ironments. The 0irt a& en0ironments are sometimes ca&&e! 0irt a& %ri0ate ser0ers, + t the) are a&so known as " ests, instances, containers or em &ations. Virt a&i2ation was in0ente! more than thirt) )ears a"o to a&&ow &ar"e e1%ensi0e mainframes to +e easi&) share! amon" !ifferent a%%&ication en0ironments. $s har!ware %rices went !own, the nee! for 0irt a&i2ation fa!e! awa). 3ore recent&), 0irt a&i2ation at a&& &e0e&s .s)stem, stora"e, an! network/ +ecame im%ortant a"ain as a wa) to im%ro0e s)stem sec rit), re&ia+i&it) an! a0ai&a+i&it), re! ce costs, an! %ro0i!e "reater f&e1i+i&it). ,pproaches to Iirtuali2ation There are three %o% &ar a%%roaches to ser0er 0irt a&i2ation6 1. The 0irt a& machine mo!e&, 2. The %ara0irt a& machine mo!e&, =. Virt a&i2ation at the o%eratin" s)stem .5S/ &a)er. Virtual Machines Virt a& machines are +ase! on the host/" est %ara!i"m. Each " est r ns on a 0irt a& imitation of the har!ware &a)er. This a%%roach a&&ows the " est o%eratin" s)stem to r n witho t mo!ifications. It a&so a&&ows the a!ministrator to create " ests that se !ifferent o%eratin" s)stems. The " est has no k now&e!"e of the hostJs o%eratin" s)stem +eca se it is not aware that itJs not r nnin" on rea& har!ware. It !oes, howe0er, re> ire rea& com% tin" reso rces from the host -- so it ses a h)%er0isor to coor!inate instr ctions to the CPI. The h)%er0isor is ca&&e! a 0irt a& machine monitor .V33/. It 0a&i!ates a&& the " est-iss e! CPI instr ctions an! mana"es an) e1ec te! co!e that re> ires a!!ition %ri0i&e"es. V3ware an! 3icrosoft Virt a& Ser0er +oth se the 0irt a& machine mo!e&.
aravirtual Machine The %ara0irt a& machine .PV3/ mo!e& is a&so +ase! on the host/" est %ara!i"m -- an! it ses a 0irt a& machine monitor too. In the %ara0irt a& machine mo!e&, howe0er, The V33 act a&&) mo!ifies the " est o%eratin" s)stemJs co!e. This mo!ification is ca&&e! %ortin". Portin" s %%orts the V33 so it can ti&i2e %ri0i&e"e! s)stems ca&&s s%arin"&). Aike 0irt a& machines, %ara0irt a& machines are ca%a+&e of r nnin" m &ti%&e o%eratin" s)stems. Virtuali!ation " #S Level Virt a&i2ation at the 5S &e0e& works a &itt&e !ifferent&). It isnJt +ase! on the host/" est %ara!i"m. In the 5S &e0e& mo!e&, the host r ns a sin"&e 5S kerne& as its core an! e1%orts o%eratin" s)stem f nctiona&it) to each of the " ests. C ests m st se the same o%eratin" s)stem as the host, a&tho "h !ifferent !istri+ tions of the same s)stem are a&&owe!. This !istri+ te! architect re e&iminates s)stem ca&&s +etween &a)ers, which re! ces CPI sa"e o0erhea!. It a&so re> ires that each %artition remain strict&) iso&ate! from its nei"h+ors so that a fai& re or sec rit) +reach in one %artition isnJt a+&e to affect an) of the other %artitions. In this mo!e&, common +inaries an! &i+raries on the same %h)sica& machine can +e share!, a&&owin" an 5S &e0e& 0irt a& ser0er to host tho san!s of " ests at the same time. Iirtuali2ation $echni"ues #uest &perating .!stem Iirtuali2ation In this scenario the %h)sica& host com% ter s)stem r ns a stan!ar! nmo!ifie! o%eratin" s)stem s ch as *in!ows, Ain 1, Ini1 or 3ac5S O. ; nnin" on this o%eratin" s)stem is a 0irt a&i2ation a%%&ication which e1ec tes in m ch the same wa) as an) other a%%&ication s ch as a wor! %rocessor or s%rea!sheet wo &! r n on the s)stem. It is within this 0irt a&i2ation a%%&ication that one or more 0irt a& machines are create! to r n the " est o%eratin" s)stems on the host com% ter. The 0irt a&i2ation a%%&ication is res%onsi+&e for startin", sto%%in" an! mana"in" each 0irt a& machine an! essentia&&) contro&&in" access to %h)sica& har!ware reso rces on +eha&f of the in!i0i! a& 0irt a& machines. The 0irt a&i2ation a%%&ication a&so en"a"es in a %rocess known as +inar) rewritin" which in0o&0es scannin" the instr ction stream of the e1ec tin" " est s)stem an! re%&acin" an) %ri0i&e"e! instr ctions with safe em &ations. This has the effect of makin" the " est s)stem think it is r nnin" !irect&) on the s)stem har!ware, rather than in a 0irt a& machine within an a%%&ication. $s o t&ine! in the a+o0e !ia"ram, the " est s)stems o%erate in 0irt a& machines within the a%%&ication which, in t rn, r ns on to% of the host s)stem in the same wa) as an) other a%%&ication. C&ear&), the m &ti%&e &a)ers of a+straction +etween o%eratin" s)stems an! the n!er&)in" host are not con! ci0e to hi"h &e0e&s of 0irt a& machine %erf This techni> e !oes, howe0er, ha0e the a!0anta"e that no chan"es are necessar) to either host or " est o%eratin" s)stems an! no s%ecia& CPI har!ware 0irt a&i2ation s %%ort is re> ire!. o%eratin" 0irt a&i2ation o%eratin" the " est har!ware ormance.
Shared $ernel Virtuali!ation Share! kerne& 0irt a&i2ation .a&so known as s)stem &e0e& or o%eratin" s)stem 0irt a&i2ation/ takes a!0anta"e of the architect ra& !esi"n of Ain 1 an! INIO +ase! o%eratin" s)stems. In or!er to n!erstan! how share! kerne& 0irt a&i2ation works it he&%s to first n!erstan! the two main com%onents of Ain 1 or INIO o%eratin" s)stems. $t the core of the o%eratin" s)stem is the kerne&. The kerne&, in sim%&e terms, han!&es a&& the interactions +etween the o%eratin" s)stem an! the %h)sica& har!ware. The secon! ke) com%onent is the root fi&e s)stem which contains a&& the &i+raries, fi&es an! ti&ities necessar) for the o%eratin" s)stem to f nction. In!er share! kerne& 0irt a&i2ation the 0irt a& " est s)stems each ha0e their own root fi&e s)stem + t share the kerne& of the host o%eratin" s)stem. This str ct re is i&& strate! in the fo&&owin" architect ra& !ia"ram. This t)%e of 0irt a&i2ation is ma!e %ossi+&e +) the kerne& to !)namica&&) chan"e the c rrent root fi&e s)stem .a conce%t known as chroot/ to a !ifferent s)stem witho t ha0in" to re+oot the entire s)stem. Essentia&&), share! kerne& 0irt a&i2ation is an e1tension of . a+i&it) of the root fi&e
this ca%a+i&it)
Perha%s the +i""est sin"&e !raw+ack of this form of 0irt a&i2ation is the fact that the " est o%eratin" s)stems m st +e com%ati+&e with the 0ersion of the kerne& which is +ein" share!. It is not, for e1am%&e, %ossi+&e to r n 3icrosoft *in!ows as a " est on a Ain 1 s)stem sin" the share! kerne& a%%roach. Nor is it %ossi+&e for a Ain 1 " est s)stem !esi"ne! for the 2.( 0ersion of the kerne& to share a 2.' 0ersion kerne&. $ernel Level Virtuali!ation In!er kerne& &e0e& 0irt a&i2ation the host o%eratin" s)stem r ns on a s%ecia&&) mo!ifie! kerne& which contains e1tensions !esi"ne! to mana"e an! contro& m &ti%&e 0irt a& machines each containin" a " est o%eratin" s)stem. In&ike share! kerne& 0irt a&i2ation each " est r ns its own kerne&, a&tho "h simi&ar restrictions a%%&) in that the " est o%eratin" s)stems m st ha0e +een com%i&e! for the same har!ware as the kerne& in which the) are r nnin". E1am%&es of kerne& &e0e& 0irt a&i2ation techno&o"ies inc& !e Iser 3o!e Ain 1 .I3A/ an! Kerne&-+ase! Virt a& 3achine The fo&&owin" !ia"ram %ro0i!es an o0er0iew of the kerne& &e0e& 0irt a&i2ation architect re6
.KV3/.
Cl o ud Computing
C&o ! com% tin" " is Internet- -+ase! com% % tin", wher re+) share! r reso rces, so oftware, an! ! information n are %ro0i!e e! to com m% ters an! o other !e0ice es on !eman n!, &ike the e e&ectricit) "ri !. C&o ! com m% tin" is a %ara!i"m sh hift fo&&owin" " the shift t from mainf frame to c&ie entGser0er in n the ear&) 1 KH0s. ?etai&s s are a+strac cte! from th he sers, who o no &on"er ha0e nee! ! for e1%erti se in, or con ntro& o0er, th e techno&o") ) infrastr ct re -in the c c&o !- that s %%orts them m. C&o ! com% tin n" !escri+es s a new s % %%&ement, co ons m%tion, , an! !e&i0e er) mo!e& fo or IT ser0ice es +ase! on n the Inte rnet, an! it t t)%ica&&) in0o o&0es o0er-th he-Internet % %ro0ision of !)namica&&) sca&a+&e an! ! often 0irt a&i2e! reso rces. This It is a +)%ro! c t an! conse > ence of th he ease-of-a access to rem mote com% tin" sites %r ro0i!e! +) t he Internet. fre> ent&) takes s the form o f we+-+ase! ! too&s or a% %&ications th hat sers can n access an! ! se thro "h h a we+ +ro wser as if f it were a %r o"ram insta &&e! &oca&&) o on their own com% ter. NIST T %ro0i!es a a somewhat more o+4ect ti0e an! s%e cific !efinitio on here. The e term -c&o !- is se! as s a meta%ho or for the Internet, +as se! on the c &o ! !rawin" " se! in the e %ast to re% resent the te e&e%hone ne etwork an! &a ater to !e%ic ct the Inte rnet in com% % ter netwo rk !ia"rams as an a+stra ction of the n!er&)in" i nfrastr ct re e it re%resen nts. T)%i ica& c&o ! co m% tin" %ro o0i!ers !e&i0e er common + + siness a%% %&ications on &ine that are e accesse! fro om another *e+ ser0 0ice or softw ware &ike a * *e+ +rowser, , whi&e the s software an! ! !ata are st tore! on ser0 0ers. $ ke) e e&ement of c c&o ! com m% tin" is c s stomi2ation an! the crea ation of a se er-!efine! e1 1%erience. 3os st c&o ! co m% tin" inf frastr ct res s consist of f ser0 0ices !e&i0er re! thro "h h common centers an! ! + i&t t on ser0ers. C&o !s often a% %%ear as sin "&e %oints o of access for cons s mersJ com m% tin" nee! !s. Commerc cia& are "enera&&) e1 1%ecte! to meet > a&it t) of ser0ice e .SoS S/ re> irem ments of c stomers, a n! inc& !e ser0ice &e0e& a"ree ments .SA$s s/.The c&o ! ser0ice %r ro0i!ers inc& !e Sa&esfo rce, an! Coo"&e. So ome of the &ar"er IT fir rms that are e acti0 0e&) in0o&0e! ! in c&o ! co om% tin" ar re Dew w&ett Packar! ! an! IB3. r offerin"s s t)%ica&&) ) ma4or r $ma2on n 3icrosoft ,
C&o
conf se! w ! com% tin" " !eri0es cha aracteristics from, + t sh ho &! not +e ith6 1. $ tonom mic com% ti n" P -com% % ter s)stem s ca%a+&e of se&f-mana"e ement2. C&ientGs er0er mo!e e& G c&ientG Gser0er com m% tin" ref fers +roa!&) ) to an) ! !istri+ te! a%%&ication that !istin" ishes +etwee en ser0ice %r ro0i!ers .ser r0ers/ an! se er0ice re> es sters .c&ients /. =. Cri! com m% tin" P - -a form of ! !istri+ te! c om% tin" an n! %ara&&e& c com% tin", w where+) a Js s %er an! 0i rt a& com% te erJ is com%o ose! of a c& ster of netw worke!, &oos e&) co %&e! com% ters actin" in con ncert to %er form 0er) &ar" "e tasks'. 3ainfra me com% te er P %ower rf & com% te ers se! ma ain&) +) &ar" "e or"ani2ati ions for crit ica& a%%&icat tions, t)%ica&&) ) + &k !ata-% %rocessin" s ch as cens s s, in! str) a n! cons me er statistics, e enter%rise re eso rce %&an nin", an! fina ncia& transac ction %rocess sin". #. Iti&it) co om% tin" P P the -%acka" "in" of com% % tin" reso rces, s ch as s com% tatio on an! stora "e, as a met tere! ser0ice s simi&ar to a t ra!itiona& % +&ic ti&it), s s ch as e&ect tricit)-: (. Peer-to- -%eer G a !is stri+ te! arc chitect re wi itho t the ne ee! for cent tra& coor!ina ation, with % artici%ants + +ein" at the s same time + +oth s %%&ier rs an! cons mers of re so rces .in contrast to the tra!itio na& c&ientGse er0er mo!e&/
Cha racteristics In "e enera&, c&o ! ! com% tin" " c stomers !o not own the %h)sica & infrastr ct
re, instea! a0oi!in" ca% %ita& e1%en! it re that +) r entin" sa"e e from a thi r!-%art) %ro o0i!er. The) cons me re so rces as a a ser0ice an! ! %a) on&) fo or reso rces the) ) se. 3an) ) c&o !-com m% tin" offe erin"s em%&o o) the ti&it t) com% tin n" mo!e&, w which is an a&o"o s to how tra! !itiona& ti&it) ) ser0ices .s ch as e&ectr ricit)/ are con ns me!, whe ereas others s +i&& on a s + +scri%tion +a asis.
Shar rin" -%erisha a+&e an! int tan"i+&e- co om% tin" %o ower amon" m &ti%&e te enants can i im%ro0e ti& &i2ation rate s, as ser0 0ers are not nnecessari& &) &eft i!&e .w which can re ! ce costs s si"nificant&) w whi&e increas sin" the s%e e! of a%%&ica ation !e0e e&o%ment/. $ si! !e-effect of t this a%%roac ch is that o0e era&& com% te er sa"e rise es !ramatica &&), as c stom mers !o not ha0e to en"i ineer recei0e the for % %eak &oa! &im mits. In a!!it tion, -increas se! hi"h-s%e ee! +an!wi! !th- makes it t %ossi+&e to same. The c c&o ! is +e ecomin" incr reasin"&) ass sociate! with h sma&& an! me!i m ent ter%rises .S3 3Es/ as in ma an) cases th e) cannot 4 stif) or af ffor! the &ar" "e ca%ita& e1 1%en!it re o f tra!itiona& IT.
S3E Es a&so t)%ica a&&) ha0e &ess s e1istin" infr rastr ct re, &ess + rea c crac), more f f&e1i+i&it), an n! sma&&er ca a%ita& + !"et ts for % rc chasin" in-ho o se techno& &o"). Simi&ar &), S3Es in e emer"in" ma arkets are t)% %ica&&) n+ r!ene! +) es sta+&ishe! &e e"ac) infra astr ct res, th s re! cin n" the com%& &e1it) of !e% &o)in" c&o ! so& tions. ,rch hitecture C&o ! architect re, the s)st tems archite ect re of the e software s) )stems in0o &0e! in the ! !e&i0er) of c c&o ! com% tin", t)%ic ca&&) in0o&0e es m &ti%&e c&o ! com %onents com mm nicatin" " with each h other o0e er a%%&icatio on %ro"ram min" inte rfaces, s a &&) we+ ser0i ices. resem+&es This the Ini1 %h hi&oso%h) of f ha0in" m &t ti%&e %ro"ra ms each !o oin" one thi n" we&& an! workin" to" "ether o0er ni0ersa& inte erfaces. Com m%&e1it) is contro&&e! an! the re es &tin" s)st ems are m more mana" "ea+&e than n their mon no&ithic co n nter%arts. The two most s i"nificant co om%onents o of c&o ! com m% tin" archi itect re are known as th he front en! an! the +ac ck en!. The f front en! is t the %art seen n +) the c&ie nt, i.e. the c com% ter s ser. This inc& !es the c&ie nt7s network k .or com% t ter/ an! the a%%&ications s se! to acc cess the c&o ! 0ia a ser r interface s ch as a we+ + +rowser. The +ack en! o f the c&o ! com% tin" a architect re is the Qc&o !7 itse&f, com m%risin" 0ar io s com% t ters, ser0ers s an! !ata a stora"e !e0 0ices. 1e! ! Features 9 $"i&it) i m%ro0es wi ith sersJ a+ +i&it) to ra%i i!&) an! ine e1%ensi0e&) r re-%ro0ision techno&o"ic ca& infrastr c ct re reso rce es. 9 Cost is c c&aime! to + e "reat&) re! ! ce! an! c ca%ita& e1%en n!it re is con n0erte! to o o%erationa& e e1%en!it re. This ostensi+ +&) &owers +a arriers to ent tr), as infras str ct re is t )%ica&&) %ro0 0i!e! +) a th hir!-%art) an n! !oes not nee! to +e % rchase! for one-time or r infre> ent intensi0e co om% tin" tas sks. Pricin" o on a ti&it) co om% tin" +a asis is fine-"rai ine! with s a"e-+ase! o %tions an! f ewer IT ski&&s s are re> ire e! for im%&em mentation .in n-ho se/.
9 ?e0ice an! &ocation in!e%en!ence ena+&e sers to access s)stems sin" a we+ +rowser re"ar!&ess of their &ocation or what !e0ice the) are sin" .e."., PC, mo+i&e/. $s infrastr ct re is off-site .t)%ica&&) %ro0i!e! +) a thir!-%art)/ an! accesse! 0ia the Internet, sers can connect from an)where. 9 3 &ti-tenanc) ena+&es sharin" of reso rces an! costs across a &ar"e %oo& of sers th s a&&owin" for6 o Centra&i2ation of infrastr ct re in &ocations with &ower costs .s ch as rea& estate, e&ectricit), etc./ o Peak-&oa! ca%acit) increases . sers nee! not en"ineer for hi"hest %ossi+&e &oa!-&e0e&s/ o Iti&i2ation an! efficienc) im%ro0ements for s)stems that are often on&) 10G20Z ti&i2e!. 9 ;e&ia+i&it) is im%ro0e! if m &ti%&e re! n!ant sites are se!, which makes we&& !esi"ne! c&o ! com% tin" s ita+&e for + siness contin it) an! !isaster reco0er)._=H` Nonethe&ess, man) ma4or c&o ! com% tin" ser0ices ha0e s ffere! o ta"es, an! IT an! + siness mana"ers can at times !o &itt&e when the) are affecte!. 9 Sca&a+i&it) 0ia !)namic .-on-!eman!-/ %ro0isionin" of reso rces on a fine-"raine!, se&f-ser0ice +asis near rea&-time, witho t sers ha0in" to en"ineer for %eak &oa!s. Performance is monitore!, an! consistent an! &oose&) co %&e! architect res are constr cte! sin" we+ ser0ices as the s)stem interface. 5ne of the most im%ortant new metho!s for o0ercomin" %erformance +ott&enecks for a &ar"e c&ass of a%%&ications is !ata %ara&&e& %ro"rammin" on a !istri+ te! !ata "ri!. 9 Sec rit) co &! im%ro0e ! e to centra&i2ation of !ata, increase! sec rit)-foc se! reso rces, etc., + t concerns can %ersist a+o t &oss of contro& o0er certain sensiti0e !ata, an! the &ack of sec rit) for store! kerne&s. Sec rit) is often as "oo! as or +etter than n!er tra!itiona& s)stems, in %art +eca se %ro0i!ers are a+&e to !e0ote reso rces to so&0in" sec rit) iss es that man) c stomers cannot affor!. Pro0i!ers t)%ica&&) &o" accesses, + t accessin" the a !it &o"s themse&0es can +e !iffic &t or im%ossi+&e. @ rthermore, the com%&e1it) of sec rit) is "reat&) increase! when !ata is !istri+ te! o0er a wi!er area an! / or n m+er of !e0ices. 9 3aintenance of c&o ! com% tin" a%%&ications is easier, since the) !onJt ha0e to +e insta&&e! on each serJs com% ter. The) are easier to s %%ort an! to im%ro0e since the chan"es reach the c&ients instant&). 9 3eterin" means that c&o ! com% tin" reso rces sa"e sho &! +e meas ra+&e an! sho &! +e metere! %er c&ient an! a%%&ication on a !ai&), week&), month&), an! )ear&) +asis. Cloud computing provides the means through which ever!thing < from computing power to computing infrastr ct re, a%%&ications, + siness %rocesses to %ersona& co&&a+oration P can +e !e&i0ere! to )o as a ser0ice where0er an! whene0er )o nee!.
Deplo!ment -odels C&o ! com% tin" is offere! in !ifferent forms6 9 P +&ic c&o !s o P +&ic c&o ! or e1terna& c&o ! !escri+es c&o ! com% tin" in the tra!itiona& mainstream sense, where+) reso rces are !)namica&&) %ro0isione! on a fine-"raine!, se&f-ser0ice +asis o0er the Internet, 0ia we+ a%%&ications/we+ ser0ices, from an off-site thir!-%art) %ro0i!er who +i&&s on a fine"raine! ti&it) com% tin" +asis. 9 Comm nit) C&o !s o $ comm nit) c&o ! ma) +e esta+&ishe! where se0era& or"ani2ations ha0e simi&ar re> irements an! seek to share infrastr ct re so as to rea&i2e some of the +enefits of c&o ! com% tin". *ith the costs s%rea! o0er fewer sers than a % +&ic c&o ! .+ t more than a sin"&e tenant/ this o%tion is more e1%ensi0e + t ma) offer a hi"her &e0e& of %ri0ac), sec rit) an!/or %o&ic) com%&iance. 9 Pri0ate c&o !s 9 D)+ri! c&o !s o $ h)+ri! c&o ! en0ironment consistin" of m &ti%&e interna& an!/or e1terna& %ro0i!ers -wi&& +e t)%ica& for most enter%rises-. B) inte"ratin" m &ti%&e c&o ! ser0ices sers ma) +e a+&e to ease the transition to % +&ic c&o ! ser0ices.
Infrastructure As A Service %IAAS& IaaS is the !e&i0er) of com% ter har!ware .ser0ers, networkin" techno&o"), stora"e, an! !ata centre s%ace/ as a ser0ice. Lo a&so can e1%ect it to inc& !e the !e&i0er) of o%eratin" s)stems an! 0irt a&i2ation techno&o") to mana"e the reso rces. The IaaS c stomers rent com% tin" reso rces instea! of + )in" an! insta&&in" them in their own !ata centre. Cons mers contro& an! mana"e the s)stems in terms of the o%eratin" s)stems, a%%&ications, stora"e, an! network connecti0it), + t !o not themse&0es contro& the c&o ! infrastr ct re. 9 3 ch of the IaaS market wi&& &ike&) fo&&ow in the %ath of the ISP market. The ISP mo!e& has +een %ro0en an! some &ar"e ISPs .Co?a!!) at www."o!a!!). com an! in3otion hostin" at www.inmotionhostin".com/ r n mi&&ions of *e+ sites. 9 The ISP ser0ice is t)%ica&&) %ai! for +ase! on the amo nt of reso rces se! o0er time. This can inc& !e !)namic sca&in" so that if more reso rces are re> ire! than e1%ecte!, the) wi&& +e %ro0i!e! imme!iate&) . % to a "i0en &imit/. 9 The arran"ement in0o&0es an a"ree!- %on ser0ice &e0e& P norma&&) KK.K %ercent a0ai&a+i&it) or +etter, with &imits set on CPI sa"e, memor), !isk s%ace, an! Internet +an!wi!th. No one wi&& o+4ect if )o want to rent a ser0er or a 0irt a& ser0er from an ISP an! )o r n a !ata mart .instea! of r nnin" a *e+ site/. 9 Nothin" in the c stomer a"reement sto%s )o from sin" the reso rces in that wa). It wo &!n7t make m ch sense, howe0er, +eca se )o %ro+a+&) wo &!n7t "et the ser0ice &e0e& a"reement )o wante! or the s %%ort )o nee!e!. IaaS takes the ISP mo!e& to a new &e0e&.
latform As A Service % AAS& PaaS has man) !efinitions, we7! &ike )o to think a+o t it as a com% tin" %&atform that inc& !es a set of !e0e&o%ment, mi!!&eware, an! !e%&o)ment ca%a+i&ities. $ ke) 0en!or characteristic is creatin" an! enco ra"in" a !ee% ecos)stem of %artners who a&& commit to this en0ironment for the f t re. *hen or"ani2ations are &ookin" for ca%acit) on !eman!, the) often &ook to Infrastr ct re as a Ser0ice .IaaS/. Dowe0er, when an or"ani2ation is &ookin" for a !ee%er set of ca%a+i&ities, the) &ook at P&atform as a Ser0ice .PaaS/. 9 PaaS has to &e0era"e the Internet. 9 PaaS m st offer some t)%e of !e0e&o%ment &an" a"e so %rofessiona& !e0e&o%ers .an! in some cases sers/ can a!! 0a& e.
9 These en0ironments nee! a wa) to monitor an! meas re reso rce se an! to track o0era&& %erformance of the 0en!or7s %&atform. 9 $&most a&& PaaS %&atforms are +ase! on a m &ti-tenanc) architect re .which &ets m &ti%&e c&ients r n their co%) se%arate&) from each other thro "h 0irt a&i2ation/ so that each c stomer7s co!e or !ata is iso&ate! from others. 9 $ PaaS en0ironment nee!s to s %%ort the !e0e&o%ment &ifec)c&e an! the team !e0e&o%ment %rocess, inc& !in" testin". 9 $ PaaS %&atform nee!s to inc& !e ser0ices interfaces s ch as S5$P .Sim%&e 5+4ect $ccess Protoco&/ an! O3A .eOtensi+&e 3ark % Aan" a"e/, amon" others. 9 $ PaaS %&atform m st +e a+&e to !e%&o), mana"e, test, an! maintain the !e0e&o%e! a%%&ications. 9 $ PaaS %&atform m st s %%ort we&&-!efine! an! we&&-!oc mente! interfaces so e&ements an! com%onents can +e se! in the fo&&owin"6 o Com%osite a%%&ications are create! +) com+inin" ser0ices to create an enter%rise a%%&ication +ase! on orchestration of + siness &o"ic an! r &es. o Porta&s, which are an or"ani2e! en0ironment that or"ani2es a%%&ication com%onents for the c stomer. o 3ash %s, which &et en! sers easi&) +rin" to"ether two or more + siness ser0ices that can comm nicate an! e1chan"e !ata. Soft'are As A Service %SAAS& 3ainframe s)stems were sim%&) too e1%ensi0e for most com%anies to + ) their own s)stems. $ co %&e of !eca!es &ater, minicom% ters, ser0ers, an! %ersona& com% ters chan"e! the !)namics of the market. Economica&&), it was feasi+&e for an) Tom, ?ick, an! Darriet to own their own s)stems an! the software. Not a&& software mo0e! to an interna& mo!e& howe0er. .Software s ch as $?P7s %a)ro&& s)stem, for e1am%&e, remaine! Software as a Ser0ice./ Two ke) e0ents con0er"e! to create the mo!e& that we now ca&& Software as a Ser0ice .SaaS/6 9 @irst, the Internet +ecame a commercia& %&atform. 9 Secon!, software costs an! com%&e1ities +ecame so !iffic &t that r nnin", %"ra!in", an! mana"in" software +ecome too com%&e1 for man) com%anies to mana"e. o This was es%ecia&&) tr e for sma&&- an! me!i m si2e! com%anies that !i!n7t want the e1%enses of mana"in" a&& the com%onents. These com%anies were the first to em+race this new "eneration of SaaS. Characteri2in" Software as a Ser0ice6 *hat characteristics ha0e to +e in %&ace for a SaaS to +e commercia&&) 0ia+&eB Dere7s what we think is necessar)6 9 The SaaS a%%&ication nee!s to +e "enera&i2e! eno "h so that &ots of c stomers wi&& +e intereste! in the service. ;ere are some e+amples of these t!pes of applications accounting, collaboration, pro=ect mana"ement, testin", ana&)tics, content mana"ement, Internet marketin", risk mana"ement an! of co rse, C;3. *hat !oesn7t work as SaaSB $ s%ecia&i2e! one of- a-kin! a%%&ication with a sma&& n m+er of %otentia& c stomers. 9 SaaS a%%&ications nee! so%histicate! na0i"ation an! ease of se. If an SaaS a%%&ication isn7t eas) to se, c stomers wi&& sim%&) sto% s +scri+in". 3ost SaaS 0en!ors offer %ros%ecti0e c stomers a free tria& for a month or so. If the c stomer !oesn7t start sin" the a%%&ication ! rin" that first month, it7s &ike&) that the c stomer won7t si"n a contract. This is rea&&) im%ortant +eca se it has +een re%orte! that &ess than 20 %ercent of sers remain c stomers after the first month or so. 9 The SaaS a%%&ication nee!s +e mo! &ar an! ser0ice oriente!. *itho t this mo! &ar a%%roach, it wi&& +e har! to chan"e an! !iffic &t to ha0e thir!-%art) in!e%en!ent com%anies 4oin the ecos)stem. 9 $n SaaS a%%&ication nee!s to inc& !e meas rin" an! monitorin" so c stomers can +e char"e! act a& sa"e. Vi!)a&ankar Instit te of Techno&o") Pa"e #(
9 $n SaaS a%%&ication m st ha0e a + i&t-in +i&&in" ser0ice. 9 SaaS a%%&ications nee! % +&ishe! interfaces an! an ecos)stem of %artners who can e1%an! the com%an)7s customer base and mar%et reach. 9 SaaS a%%&ications ha0e to ens re that each c stomer7s !ata an! s%ecia&i2e! confi" rations are se%arate and secure from other customersJ data and configurations. 9 SaaS a%%&ications nee! to %ro0i!e so%histicate! + siness %rocess confi" rators for c stomers. Each c stomer can chan"e the %rocess within the stan!ar!i2e! SaaS a%%&ication. @or e1am%&e, a com%an) mi"ht want to a!! a %rocess so a mana"er has to a%%ro0e the %rice +ein" offere! to a new c stomer. $ + i&t-in confi" ration too& ena+&es this to +e !one on an a! hoc +asis witho t %ro"rammin". 9 SaaS a%%&ications nee! to constant&) %ro0i!e fast re&eases of new feat res an! new ca%a+i&ities. This m st +e !one witho t im%actin" the c stomer7s a+i&it) to contin e + siness as s a&. 9 SaaS a%%&ications ha0e to %rotect the inte"rit) of c stomer !ata. 9 That inc& !es %ro0i!in" techni> es for a&&owin" !ata to mi"rate either to a %ri0ate !ata+ase insi!e the firewa&& or to a thir!-%art) stora"e ca%a+i&it).
*ote Relate all the cloud la!ers and deplo!ment models to server consolidation and e+plain the applications that can be housed remotel! on a cloud to minimi2e the number, redundanc! and underutili2ation of servers. @or man) com%anies, the conce%t of ser0er conso&i!ation connotes swee%in" %ro4ects that re%&ace n mero s sma&&er ser0ers with %owerf &, e1%ensi0e workhorses. 3an) or"ani2ations ha0e % rs e! this a%%roach an! rea&i2e! si"nificant cost sa0in"s an! im%ro0e! efficienc). $chie0in" the +enefits of ser0er conso&i!ation, howe0er, !oes not necessari&) re> ire a &ar"e-sca&e effort that is +oth e1tensi0e an! e1%ensi0e in terms of a &en"th) %&annin" c)c&e an! %-front in0estment. 3an) or"ani2ations conso&i!ate as %art of the nat ra& refresh c)c&e of their techno&o") infrastr ct res. These efforts are more iterati0e %rocesses, rather than one-time %ro4ects, that foc s on re! cin" the n m+er of !atacenters as the techno&o") infrastr ct re is %!ate! an! a "mente!. The res &ts are sti&& si"nificant. B) conso&i!atin", or"ani2ations are a+&e to +oost efficienc) an! im%ro0e their ser0ice ca%a+i&ities whi&e maintainin" an infrastr ct re that is +oth ro+ st, hi"h&) a0ai&a+&e, an! a!a%ti0e to chan"in" + siness re> irements. ?e&& is intro! cin" an e1%an!e! %ro"ram aime! at conso&i!atin" 3icrosoft-+ase! en0ironments to he&% c stomers re! ce their tota& costs an! "ain "reater contro& o0er their IT infrastr ct re. The com%an) ho%es to se its new Ser0er Conso&i!ation ;5I $na&)st Too&, &atest-"eneration enter%rise ser0ers, s)stems mana"ement software, an! ser0ices to he&% or"ani2ations rea&i2e the +enefits of conso&i!ation as the) renew their techno&o") infrastr ct res. Drivers ' Benefits of .erver Consolidation $ "oo! !ea& of the im%et s for conso&i!ation stems from the %ro&iferation of !istri+ te! s)stems that occ rre! ! rin" the 1KH0s an! 1KK0s. $s the %rice/%erformance an! f nctiona&it) of sma&& an! mi!ran"e s)stems im%ro0e! !ramatica&&), man) or"ani2ations mo0e! towar! a mo!e& of !e%&o)in" !istri+ te! ser0ers to s %%ort !e%artmenta& %rocesses.
*hi&e s ch s)stems a&&owe! or"ani2ations re&ati0e&) chea% an! eas) access to %owerf & !e%artmenta& a%%&ications, the) e0ent a&&) &e! to a > a"mire of s)stems that were incom%ati+&e, na+&e to share information, an! !iffic &t or im%ossi+&e to mana"e consistent&). 5r"ani2ations a&so face! the cha&&en"e of meetin" increase! &e0e&s of a0ai&a+i&it) an! sec rit). $t the same time, man) com%anies &ooke! to stan!ar!i2e their en0ironments on a conso&i!ate! set of %ro! cts from a more &imite! n m+er of 0en!ors in or!er to rea&i2e not on&) cost sa0in"s + t a&so %roc rement, ser0ice, an! mana"ement efficiencies. $t the same time, man) IT or"ani2ations +ecame more ser0ice oriente!. Their foc s shifte! from mana"in" %rocesses an! techno&o") to %ro0i!in" information access to a +roa! set of ser constit encies. Isers +e"an to e1%ect ni0ersa& access to a%%&ications an! information. Com%anies fo n! that the ! %&ication of ser0ers, a%%&ications, an! !ata+ases not on&) was e1%ensi0e to maintain + t a&so ke%t them from ti&i2in" their reso rces an! information to the ma1im m e1tent. The res%onse has +een a tren! towar! recentra&i2ation an! conso&i!ation of IT reso rces in the !atacenter. Conso&i!ation a&&ows com%anies to im%ro0e o0era&& + siness %rocessin" thro "h three %rimar) IT o+4ecti0es6 a hi"her an! more consistent &e0e& of ser0ice, "reater efficienc) an! contro& o0er o%erations, an! the f&e1i+i&it) to res%on! to constant&) chan"in" + siness re> irements .see @i" re 1/.
$CDIEVINC DICDE; AEVEAS 5@ SE;VICE Pro0i!in" hi"h &e0e&s of ser0ice is on e0er) IT mana"erJs min! as the ser +ase e1%an!s +e)on! interna& c stomers, s %%&iers, st !ents, %atients, other "o0ernment a"encies, an! + siness %artners.
sers to
E0er)one e1%ects hi"h &e0e&s of a%%&ication an! information a0ai&a+i&it) an! consistent res%onse times. Conso&i!ation ent framework, which can &ea! to a more %re!icta+&e an! consistent &e0e& of ser0ice. %ro0i!es a consistent mana"em E@@ICIENCL $N? C5NT;5A The ke) to "ainin" efficienc) is in +etter ti&i2in" the a0ai&a+&e IT reso rces. Conso&i!atin" the ser0er en0ironment can &ea! to a more !isci%&ine! a%%roach to mana"ement. $s m ch as ##Z of IT costs are associate! with %ersonne&, an!, in a conso&i!ate! en0ironment, the %ro! cti0it) of a!ministrati0e %ersonne& increases "reat&).
Some or"ani2ations ma) rea&i2e the +enefit in re! ce! o%erationa& costs. I?C st !ies ha0e shown a F61 cost sa0in"s in %eo%&e mana"ement reso rces when %rocesses an! reso rces are conso&i!ate!. 5thers wi&& +enefit from the a+i&it) to foc s hi"h&) ski&&e! reso rces on hi"her-0a& e tasks. Ti"hter mana"ement contro& wi&& a&so enhance a0ai&a+i&it), sec rit), an! the a+i&it) to a !it the cons m%tion of ser0ices an! char"e +ack a%%ro%riate&). @or IT mana"ers who consistent&) cite f&oor s%ace an! %ower cons m%tion as ke) iss es, the +enefits of conso&i!ation are o+0io s. 3an) or"ani2ations are &ookin" to re! ce not on&) the n m+er of ser0ers + t the n m+er of !atacenters. Beca se the cost of network +an!wi!th has !ro%%e! !ramatica&&), com%anies no &on"er nee! to !e%&o) ser0ers as c&ose as %ossi+&e to the sers the) s %%ort. Therefore, man) or"ani2ations can im%&ement sma&&er, re"iona& !atacenters, instea! of a !atacenter at each &ocation. $s ser0er architect res "row increasin"&) mo! &ar, with the !e%&o)ment of &tra-!ense so& tions s ch as ser0er , coo&in", an! ca+&in" wi&& contin e to !ro%. +&a!es, the costs associate! with %ower, s%ace C;E$TE; 5;C$NIY$TI5N$A @AEOIBIAITL The "reatest strate"ic 0a& e that com%anies "ain from conso&i!ation is an im%ro0e! a+i&it) to efficient&) a!a%t the infrastr ct re to incor%orate new techno&o"ies an! res%on! to new + siness re> irements. $&& t)%es of or"ani2ations P + siness, "o0ernment, me!ica& %ro0i!ers, an! e! cationa& instit tions P are !ri0en +) the nee! for hi"h &e0e&s of ser0ices an! information a0ai&a+i&it). *ith a consistent framework for mana"in" !ata, IT s%en!s &ess time mo0in" !ata an! transformin" it into a sa+&e form an!, therefore, can res%on! more > ick&) to !eman!s for !ata a0ai&a+i&it). The infrastr ct re is then +etter a+&e to a!a%t as the or"ani2ation mo0es forwar!. 5nce the IT center has com%&ete! the conso&i!ation %rocess an! achie0e! the !esire! en0ironment, sers can e1%ect more ra%i! !e%&o)ment of new a%%&ications an! feat res, &ea!in" to "reater f&e1i+i&it) to res%on! to chan"in" !eman!s. $KPE. &F C&*.&(ID,$I&* Conso&i!ation of the ser0er en0ironment can occ r at man) !ifferent &e0e&s. 3ost or"ani2ations % rs e !ifferent &e0e&s of conso&i!ation at !ifferent times, !e%en!in" on their %artic &ar re> irements. Conso&i!ation a&so ten!s to occ r o0er time, as an iterati0e %rocess, mo0in" thro "h the !ifferent t)%es of conso&i!ation. The 0ario s t)%es of conso&i!ation sho &! +e 0iewe! as ste%s a&on" a contin +e !escri+e! in fo r "enera& cate"ories .see @i" re 2/6 m. The !e"rees of conso&i!ation can
Ao"ica& conso&i!ation re! ces the n m+er of %oints of contro& in the en0ironment to a sin"&e a!ministrati0e stream an! re! ces the n m+er of conso&es. The ser0ers remain !is%erse!, whi&e &oca& o%erations are re! ce! or e&iminate! an! mana"ement f nctions s ch as +ack %, restore, reco0er), maintenance, an! ser s %%ort are %erforme! remote&). $ ma4or +enefit of &o"ica& conso&i!ation is a re! ction in o%erationa& hea!co nt, or more efficient se of the ski&&s a&rea!) on han!. Isin" fewer %eo%&e an! a consistent set of %ro! cts an! %rocesses can he&% re! ce +oth the !i& tion of ski&&s across the or"ani2ation an! the o%%ort nit) for errors. This a%%roach re! ces the cost of maintainin" the en0ironment an! im%ro0es ser0ice to sers. Ph)sica& conso&i!ation in0o&0es conso&i!atin" com%onents of the IT en0ironment in one %h)sica& &ocation. This co&ocation &ea!s to "reater efficienc) +) e&iminatin" the re%&ication of ski&& sets across !ifferent &ocations. *hen s)stems are in a centra& &ocation, networkin" +ecomes m ch easier an! more efficient, %ower costs are re! ce!, +ack % can +e %erforme! more efficient&), an! sec rit) can +e increase!. There are a&so s +se> ent sa0in"s in f&oor s%ace costs. Conso&i!atin" &ocations a&so %ro0i!es o%%ort nit) for confi" rin" s)stems for hi"her a0ai&a+i&it). *ork&oa! conso&i!ation re! ces the n m+er an! 0ariet) of com%onents in the en0ironment. It in0o&0es not on&) ser0ers + t a&so other %h)sica& e&ements s ch as ta%es, !isks, network !e0ices an! connections, software, o%eratin" s)stems, an! %eri%hera&s. The n m+er of %rocesses an! %roce! res are a&so re! ce!. *ith fewer har!ware an! software stan!ar!s to mana"e, IT !e%artments can more easi&) mo0e an! chan"e s)stems, a%%&ications, an! %eri%hera&s. Network %erformance is enhance! e0en f rther, as are sec rit) an! a0ai&a+i&it). Common o%eratin" Vi!)a&ankar Instit te of Techno&o") Pa"e (0
s)stem en0ironments a&&ow more a%%&ications to share the same ser0er, takin" a!0anta"e of faster %rocessors. *ork&oa! conso&i!ation can +e or"ani2e! +) a%%&ication t)%e, +) o%eratin" s)stem t)%e, or +) &ine of + siness. Trans%arent conso&i!ation .inc& !in" stora"e/ in0o&0es % &&in" to"ether a n m+er of IT centers across a cam% s or network an! im%&ementin" stora"e area networks to create a sin"&e set of reso rces. These en0ironments wi&& +e hi"h&) a tomate!, an! their "rowth wi&& +e !ri0en +) the a0ai&a+i&it) of hi"h-s%ee!, &ow-cost !ata networks.
a&so a&&ows $%% En"ine to r n m &ti%&e a%%&ications on the same ser0er witho t the +eha0io r of one a%%&ication affectin" another. In a!!ition to &imitin" access to the o%eratin" s)stem, the r ntime en0ironment a&so &imits the amo nt of c&ock time, CPI se, an! memor) a sin"&e re> est can take. $%% En"ine kee%s these &imits f&e1i+&e, an! a%%&ies stricter &imits to a%%&ications that se % more reso rces to %rotect share! reso rces from 8r nawa)E a%%&ications. $ re> est has % to =0 secon!s to ret rn a res%onse to the c&ient. *hi&e that ma) seem &ike a comforta+&) &ar"e amo nt for a we+ a%%, $%% En"ine is o%timi2e! for a%%&ications that res%on! in &ess than a secon!. $&so, if an a%%&ication ses man) CPI c)c&es, $%% En"ine ma) s&ow it !own so the a%% isn7t ho""in" the %rocessor on a machine ser0in" m &ti%&e a%%s. $ CPI-intensi0e re> est han!&er ma) take more c&ock time to com%&ete. $he Datastore 3ost sef & we+ a%%&ications nee! to store information ! rin" the han!&in" of a re> est for retrie0a& ! rin" a &ater re> est. $ t)%ica& arran"ement for a sma&& we+site in0o&0es a sin"&e !ata+ase ser0er for the entire site, an! one or more we+ ser0ers that connect to the !ata+ase to store or retrie0e !ata. Isin" a sin"&e centra& !ata+ase ser0er makes it eas) to ha0e one canonica& re%resentation of the !ata, so m &ti%&e sers accessin" m &ti%&e we+ ser0ers a&& see the same an! most recent information. B t a centra& ser0er is !iffic &t to sca&e once it reaches its ca%acit) for sim &taneo s connections. B) far the most %o% &ar kin! of !ata stora"e s)stem for we+ a%%&ications in the %ast !eca!e has +een the re&ationa& !ata+ase, with ta+&es of rows an! co& mns arran"e! for s%ace efficienc) an! concision, an! with in!e1es an! raw com% tin" %ower for %erformin" > eries, es%ecia&&) 84oinE > eries that can treat m &ti%&e re&ate! recor!s as a > er)a+&e nit. 5ther kin!s of !ata stora"e s)stems inc& !e hierarchica& !atastores .fi&e s)stems, O3A !ata+ases/ an! o+4ect !ata+ases. Each kin! of !ata+ase has %ros an! cons, an! which t)%e is +est s ite! for an a%%&ication !e%en!s on the nat re of the a%%&ication7s !ata an! how it is accesse!. $n! each kin! of !ata+ase has its own techni> es for "rowin" %ast the first ser0er. Coo"&e $%% En"ine7s !ata+ase s)stem most c&ose&) resem+&es an o+4ect !ata+ase. It is not a 4oin-> er) re&ationa& !ata+ase, an! if )o come from the wor&! of re&ationa&-!ata+ase-+acke! we+ a%%&ications .as I !i!/, this wi&& %ro+a+&) re> ire chan"in" the wa) )o think a+o t )o r a%%&ication7s !ata. $s with the r ntime en0ironment, the !esi"n of the $%% En"ine !atastore is an a+straction that a&&ows $%% En"ine to han!&e the !etai&s of !istri+ tin" an! sca&in" the a%%&ication, so )o r co!e can foc s on other thin"s. $he .ervices The !atastore7s re&ationshi% with the r ntime en0ironment is that of a ser0ice6 the a%%&ication ses an $PI to access a se%arate s)stem that mana"es a&& of its own sca&in" nee!s se%arate&) from the r ntime en0ironment. Coo"&e $%% En"ine inc& !es se0era& other se&f-sca&in" ser0ices sef & for we+ a%%&ications. The memor) cache .or memcache/ ser0ice is a short-term ke)-0a& e stora"e ser0ice. Its main a!0anta"e o0er the !atastore is that it is fast, m ch faster than the !atastore for sim%&e stora"e an! retrie0a&. The memcache stores 0a& es in memor) instea! of on !isk for faster access. It is !istri+ te! &ike the !atastore, so e0er) re> est sees the same set of ke)s an! 0a& es. Dowe0er, it is not %ersistent &ike the !atastore6 if a ser0er "oes !own, s ch as ! rin" a %ower fai& re, memor) is erase!. It a&so has a more &imite! sense of atomicit) an! transactiona&it) than the !atastore. $s the name im%&ies, the memcache ser0ice is +est se! as a cache for the res &ts of fre> ent&) %erforme! > eries or ca&c &ations. The a%%&ication checks for a cache! 0a& e, an! if the 0a& e isn7t there, it %erforms the > er) or ca&c &ation an! stores the 0a& e in the cache for f t re se. $%% En"ine a%%&ications can access other we+ reso rces sin" the I;A @etch ser0ice. Vi!)a&ankar Instit te of Techno&o") Pa"e (=
The ser0ice makes DTTP re> ests to other ser0ers on the Internet, s ch as to retrie0e %a"es or interact with we+ ser0ices. Since remote ser0ers can +e s&ow to res%on!, the I;A @etch $PI s %%orts fetchin" I;As in the +ack"ro n! whi&e a re> est han!&er !oes other thin"s, + t in a&& cases the fetch m st start an! finish within the re> est han!&er7s &ifetime. The a%%&ication can a&so set a !ea!&ine, after which the ca&& is cance&&e! if the remote host hasn7t res%on!e!. $%% En"ine a%%&ications can sen! messa"es sin" the 3ai& ser0ice. 3essa"es can +e sent on +eha&f of the a%%&ication or on +eha&f of the ser who ma!e the re> est that is sen!in" the emai& .if the messa"e is from the ser/. 3an) we+ a%%&ications se emai& to notif) sers, confirm ser actions, an! 0a&i!ate contact information. $n a%%&ication can a&so recei0e emai& messa"es. If an a%% is confi" re! to recei0e emai&, a messa"e sent to the a%%7s a!!ress is ro te! to the 3ai& ser0ice, which !e&i0ers the messa"e to the a%% in the form of an DTTP re> est to a re> est han!&er. $%% En"ine a%%&ications can sen! an! recei0e instant messa"es to an! from chat ser0ices that s %%ort the O3PP %rotoco&, inc& !in" Coo"&e Ta&k. $n a%% sen!s an O3PP chat messa"e +) ca&&in" the O3PP ser0ice. $s with incomin" emai&, when someone sen!s a messa"e to the a%%7s a!!ress, the O3PP ser0ice !e&i0ers it to the a%% +) ca&&in" a re> est han!&er.
;,D&&P
?ataM *e &i0e in the !ata a"e. ItJs not eas) to meas re the tota& 0o& me of !ata store! e&ectronica&&), + t an I?C estimate % t the si2e of the -!i"ita& ni0erse- at 0.1H 2etta+)tes in 200(, an! is forecastin" a tenfo&! "rowth +) 2011 to 1.H
2etta+)tes.X $ 2etta+)te is 1021 +)tes, or e> i0a&ent&) one tho san! e1a+) tes, one mi&&ion %eta+)tes, or one +i&&ion
tera+)tes. ThatJs ro "h&) the same or!er of ma"nit !e as one !isk !ri0e for e0er) %erson in the wor&!. This f&oo! of !ata is comin" from man) so rces. Consi!er the fo&&owin"6 9 9 9 9 9 The New Lork Stock E1chan"e "enerates a+o t one tera+)te of new tra!e !ata %er !a). @ace+ook hosts a%%ro1imate&) 10 +i&&ion %hotos, takin" % one %eta+)te of stora"e. $ncestr).com, the "enea&o") site, stores aro n! 2.# %eta+)tes of !ata. The Internet $rchi0e stores aro n! 2 %eta+)tes of !ata, an! is "rowin" at a rate of 20 tera+)tes %er month. The Aar"e Da!ron Co&&i!er near Cene0a, Swit2er&an!, wi&& %ro! ce a+o t 1# %eta+)tes of !ata %er )ear.
So thereJs a &ot of !ata o t there. B t )o are %ro+a+&) won!erin" how it affects )o . 3ost of the !ata is &ocke! % in the &ar"est we+ %ro%erties .&ike search en"ines/, or scientific or financia& instit tions, isnJt itB ?oes the a!0ent of -Bi" ?ata,- as it is +ein" ca&&e!, affect sma&&er or"ani2ations or in!i0i! a&sB $r" a+&) it !oes. Take %hotos, for e1am%&e. 3) wifeJs "ran!father was an a0i! %hoto"ra%her, an! took %hoto"ra%hs thro "ho t his a! &t &ife. Dis entire cor% s of me!i m format, s&i!e, an! =#mm fi&m, when scanne! in at hi"hreso& tion, occ %ies aro n! 10 "i"a+)tes. Com%are this to the !i"ita& %hotos that m) fami&) took &ast )ear, which take % a+o t # "i"a+)tes of s%ace. 3) fami&) is %ro! cin" %hoto"ra%hic !ata at =# times the rate m) wifeJs "ran!fatherJs !i!, an! the rate is increasin" e0er) )ear as it +ecomes easier to take more an! more %hotos. 3ore "enera&&), the !i"ita& streams that in!i0i! a&s are %ro! cin" are "rowin" a%ace. 3icrosoft ;esearchJs 3)AifeBits %ro4ect "i0es a "&im%se of archi0in" of %ersona& information that ma) +ecome common%&ace in the near f t re. 3)AifeBits was an e1%eriment where an in!i0i! a&Js interactionsP%hone ca&&s, emai&s, !oc mentsPwere ca%t re! e&ectronica&&) an! store! for &ater access. The !ata "athere! inc& !e! a %hoto taken e0er) min te, which res &te! in an o0era&& !ata 0o& me of one "i"a+)te a month. *hen stora"e costs come !own eno "h to make it feasi+&e to store contin o s a !io an! 0i!eo, the !ata 0o& me for a f t re 3)AifeBits ser0ice wi&& +e man) times that. The tren! is for e0er) in!i0i! a&Js !ata foot%rint to "row, + t %erha%s more im%ortant&) the amo nt of !ata "enerate! +) machines wi&& +e e0en "reater than that "enerate! +) %eo%&e. 3achine &o"s, ;@I? rea!ers, sensor networks, 0ehic&e CPS traces, retai& transactionsPa&& of these contri+ te to the "rowin" mo ntain of !ata. The 0o& me of !ata +ein" ma!e % +&ic&) a0ai&a+&e increases e0er) )ear too. 5r"ani2ations no &on"er ha0 e to mere&) mana"e their own !ata6 s ccess in the f t re wi&& +e !ictate! to a &ar"e e1tent +) their a+i&it) to e1tract 0a& e from other or"ani2ationsJ !ata. Initiati0es s ch as P +&ic ?ata Sets on $ma2on *e+ Ser0ices, Infochim%s.or", an! theinfo.or" e1ist to foster the -information commons,- where !ata can +e free&) .or in the case of $*S, for a mo!est %rice/ share! for an)one to !own&oa! an! ana&)2e. 3ash %s +etween !ifferent information so rces make for ne1%ecte! an! hitherto nima"ina+&e a%%&ications. ake, for e1am%&e, the $strometr).net %ro4ect, which watches the $strometr) "ro % on @&ickr for new %hotos of the
TT
ni"ht sk). It ana&)2es each ima"e, an! i!entifies which %art of the sk) it is from, an! an) interestin" ce&estia& +o!ies, s ch as stars or "a&a1ies. $&tho "h itJs sti&& a new an! e1%erimenta& ser0ice, it shows the kin! of thin"s that are %ossi+&e when !ata .in this case, ta""e! %hoto"ra%hic ima"es/ is ma!e a0ai&a+&e an! se! for somethin" .ima"e ana&)sis/ that was not antici%ate! +) the creator. Vi!)a&ankar Instit te of Techno&o") Pa"e (#
It has +een sai! that -3ore !ata s a&&) +eats +etter a&"orithms,- which is to sa) that for some %ro+&ems .s ch as recommen!in" mo0ies or m sic +ase! on %ast %references/, howe0er fien!ish )o r a&"orithms are, the) can often +e +eaten sim%&) +) ha0in" more !ata .an! a &ess so%histicate! a&"orithm/. The "oo! news is that Bi" ?ata is here. The +a! news is that we are str ""&in" to store an! ana&)2e it. Data .torage and ,nal!sis The %ro+&em is sim%&e6 whi&e the stora"e ca%acities of har! !ri0es ha0e increase! massi0e&) o0er the )ears, access s%ee!sPthe rate at which !ata can +e rea! from !ri0esP ha0e not ke%t %. 5ne t)%ica& !ri0e from 1KK0 co &! store 1=F0 3B of !ata an! ha! a transfer s%ee! of '.' 3B/s,a so )o co &! rea! a&& the !ata from a f && !ri0e in aro n! fi0e min tes. $&most 20 )ears &ater one tera+)te !ri0es are the norm, + t the transfer s%ee! is aro n! 100 3B/s, so it takes more than two an! a ha&f ho rs to rea! a&& the !ata off the !isk. This is a &on" time to rea! a&& !ata on a sin"&e !ri0ePan! writin" is e0en s&ower. The o+0io s wa) to re! ce the time is to rea! from m &ti%&e !isks at once. Ima"ine if we ha! 100 !ri0es, each ho&!in" one h n!re!th of the !ata. *orkin" in %ara&&e&, we co &! rea! the !ata in n!er two min tes. 5n&) sin" one h n!re!th of a !isk ma) seem wastef &. B t we can store one h n!re! !atasets, each of which is one tera+)te, an! %ro0i!e share! access to them. *e can ima"ine that the sers of s ch a s)stem wo &! +e ha%%) to share access in ret rn for shorter ana&)sis times, an!, statistica&&), that their ana&)sis 4o+s wo &! +e &ike&) to +e s%rea! o0er time, so the) wo &!nJt interfere with each other too m ch. ThereJs more to +ein" a+&e to rea! an! write !ata in %ara&&e& to or from m &ti%&e !isks, tho "h. The first %ro+&em to so&0e is har!ware fai& re6 as soon as )o start sin" man) %ieces of har!ware, the chance that one wi&& fai& is fair&) hi"h. $ common wa) of a0oi!in" !ata &oss is thro "h re%&ication6 re! n!ant co%ies of the !ata are ke%t +) the s)stem so that in the e0ent of fai& re, there is another co%) a0ai&a+&e. This is how ;$I? works, for instance, a&tho "h Da!oo%Js fi&es)stem, the Da!oo% ?istri+ te! @i&es)stem .D?@S/, takes a s&i"ht&) !ifferent a%%roach, as )o sha&& see &ater. The secon! %ro+&em is that most ana&)sis tasks nee! to +e a+&e to com+ine the !ata in some wa): !ata rea! from one !isk ma) nee! to +e com+ine! with the !ata from an) of the other KK !isks. Vario s !istri+ te! s)stems a&&ow !ata to +e com+ine! from m &ti%&e so rces, + t !oin" this correct&) is notorio s&) cha&&en"in". 3a%;e! ce %ro0i!es a %ro"rammin" mo!e& that a+stracts the %ro+&em from !isk rea!s an! writes, transformin" it into a com% tation o0er sets of ke)s an! 0a& es. The im%ortant %oint for the %resent !isc ssion is that there are two %arts to the com% tation, the ma% an! the re! ce, an! itJs the interface +etween the two where the -mi1in"- occ rs. Aike D?@S, 3a%;e! ce has re&ia+i&it) + i&t-in. This, in a n tshe&&, is what Da!oo% %ro0i!es6 a re&ia+&e share! stora"e an! ana&)sis s)stem. The stora"e is %ro0i!e! +) D?@S, an! ana&)sis +) 3a%;e! ce. There are other %arts to Da!oo%, + t these ca%a+i&ities are its kerne&. Comparison with &ther .!stems The a%%roach taken +) 3a%;e! ce ma) seem &ike a +r te-force a%%roach. The %remise is that the entire !atasetPor at &east a "oo! %ortion of itPis %rocesse! for each > er). B t this is its %ower. 3a%;e! ce is a +atch > er) %rocessor, an! the a+i&it) to r n an a! hoc > er) a"ainst )o r who&e !ataset an! "et the res &ts in a reasona+&e time is transformati0e. It chan"es the wa) )o think a+o t !ata, an! n&ocks !ata that was %re0io s&) archi0e! on ta%e or !isk. It "i0es %eo%&e the o%%ort nit) to inno0ate with !ata. S estions that took too &on" to "et answere! +efore can now +e answere!, which in t rn &ea!s to new > estions an! new insi"hts. @or e1am%&e, 3ai&tr st, ;acks%aceJs mai& !i0ision, se! Da!oo% for %rocessin" emai& &o"s. 5ne a! hoc > er) the) wrote was to fin! the "eo"ra%hic !istri+ tion of their sers. In their wor!s6
This !ata was so sef & that weJ0e sche! &e! the 3a%;e! ce 4o+ to r n month&) an! we wi&& +e he&% s !eci!e which ;acks%ace !ata centers to %&ace new mai& ser0ers in as we "rowT
B) +rin"in" se0era& h n!re! "i"a+)tes of !ata to"ether an! ha0in" the too&s to ana&)2e it, the ;acks%ace en"ineers were a+&e to "ain an n!erstan!in" of the !ata that the) otherwise wo &! ne0er ha0e ha!, an!, f rthermore, the) were a+&e to se what the) ha! &earne! to im%ro0e the ser0ice for their c stomers. (D)MS *h) canJt we se !ata+ases with &ots of !isks to !o &ar"e-sca&e +atch ana&)sisB *h) is 3a%;e! ce nee!e!B The answer to these > estions comes from another tren! in !isk !ri0es6 seek time is im%ro0in" more s&ow&) than transfer rate. Seekin" is the %rocess of mo0in" the !iskJs hea! to a %artic &ar %&ace on the !isk to rea! or write !ata. It characteri2es the &atenc) of a !isk o%eration, whereas the transfer rate corres%on!s to a !iskJs +an!wi!th. If the !ata access %attern is !ominate! +) seeks, it wi&& take &on"er to rea! or write &ar"e %ortions of the !ataset than streamin" thro "h it, which o%erates at the transfer rate. 5n the other han!, for %!atin" a sma&& %ro%ortion of recor!s in a !ata+ase, a tra!itiona& B-Tree .the !ata str ct re se! in re&ationa& !ata+ases, which is &imite! +) the rate it can %erform seeks/ works we&&. @or %!atin" the ma4orit) of a !ata+ase, a B-Tree is &ess efficient than 3a%;e! ce, which ses Sort/3er"e to re+ i&! the !ata+ase. In man) wa)s, 3a%;e! ce can +e seen as a com%&ement to an ;?B3S. .The !ifferences +etween the two s)stems are shown in Ta+&e 1-1./ 3a%;e! ce is a "oo! fit for %ro+&ems that nee! to ana&)2e the who&e !ataset, in a +atch fashion, %artic &ar&) for a! hoc ana&)sis. $n ;?B3S is "oo! for %oint > eries or %!ates, where the !ataset has +een in!e1e! to !e&i0er &ow-&atenc) retrie0a& an! %!ate times of a re&ati0e&) sma&& amo nt of !ata. 3a%;e! ce s its a%%&ications where the !ata is written once, an! rea! man) times, whereas a re&ationa& !ata+ase is "oo! for !atasets that are contin a&&) %!ate!. %a le &'&. R(B)S compared to )apReduce Tra!itiona& ;?B3S 3a%;e! ce
Ci"a+)tes Peta+)tes
?ata si2e
;ea! an! write man) times *rite once, rea! man) times
I%!ates
Di"h Aow
Inte"rit)
Non&inear Ainear
Sca&in"
$nother !ifference +etween 3a%;e! ce an! an ;?B3S is the amo nt of str ct re in the !atasets that the) o%erate on. Str ct re! !ata is !ata that is or"ani2e! into entities that ha0e a !efine! format, s ch as O3A !oc ments or !ata+ase ta+&es that conform to a %artic &ar %re!efine! schema. This is the rea&m of the ;?B3S. Semi-str ct re! data, on the other hand, is looser, and though there may e a schema, it is often ignored, so it may e used only as a " i!e to the str ct re of the !ata6 for e1am%&e, a s%rea!sheet, in which the str ct re is the "ri! of ce&&s, a&tho "h the ce&&s themse&0es ma) ho&! an) form of !ata. Instr ct re! !ata !oes not ha0e an) %artic &ar interna& str ct re6 for e1am%&e, %&ain te1t or ima"e !ata. 3a%;e! ce works we&& on nstr ct re! or semi-str ct re! !ata, since it is
!esi"ne! to inter%ret the !ata at %rocessin" time. In other wor!s, the in% t ke)s an! 0a& es for 3a%;e! ce are not an intrinsic %ro%ert) of the !ata, + t the) are chosen +) the %erson ana&)2in" the !ata. ;e&ationa& !ata is often norma&i2e! to retain its inte"rit), an! remo0e re! n!anc). Norma&i2ation %oses %ro+&ems for 3a%;e! ce, since it makes rea!in" a recor! a non&oca& o%eration, an! one of the centra& ass m%tions that 3a%;e! ce makes is that it is %ossi+&e to %erform .hi"h-s%ee!/ streamin" rea!s an! writes. $ we+ ser0er &o" is a "oo! e1am%&e of a set of recor!s that is not norma&i2e! .for e1am%&e, the c&ient hostnames are s%ecifie! in f && each time, e0en tho "h the same c&ient ma) a%%ear man) times/, an! this is one reason that &o"fi&es of a&& kin!s are %artic &ar&) we&&-s ite! to ana&)sis with 3a%;e! ce. 3a%;e! ce is a &inear&) sca&a+&e %ro"rammin" mo!e&. The %ro"rammer writes two f nctionsPa ma% f nction an! a re! ce f nctionPeach of which !efines a ma%%in" from one set of ke)-0a& e %airs to another. These f nctions are o+&i0io s to the si2e of the !ata or the c& ster that the) are o%eratin" on, so the) can +e se! nchan"e! for a sma&& !ataset an! for a massi0e one. 3ore im%ortant&), if )o !o +&e the si2e of the in% t !ata, a 4o+ wi&& r n twice as s&ow. B t if )o a&so !o +&e the si2e of the c& ster, a 4o+ wi&& r n as fast as the ori"ina& one. This is not "enera&&) tr e of SSA > eries. 50er time, howe0er, the !ifferences +etween re&ationa& !ata+ases an! 3a%;e! ce s)stems are &ike&) to +& r. Both as re&ationa& !ata+ases start incor%oratin" some of the i!eas from 3a%;e! ce .s ch as $ster ?ataJs an! Creen%& mJs !ata+ases/, an!, from the other !irection, as hi"her-&e0e& > er) &an" a"es + i&t on 3a%;e! ce .s ch as Pi" an! Di0e/ make 3a%;e! ce s)stems more a%%roacha+&e to tra!itiona& !ata+ase %ro"rammers.X #rid Computing The Di"h Performance Com% tin" .DPC/ an! Cri! Com% tin" comm nities ha0e +een !oin" &ar"e-sca&e !ata %rocessin" for )ears, sin" s ch $PIs as 3essa"e Passin" Interface .3PI/. Broa!&), the a%%roach in DPC is to !istri+ te the work across a c& ster of machines, which access a share! fi&es)stem, hoste! +) a S$N. This works we&& for %re!ominant&) com% te-intensi0e 4o+s, + t +ecomes a %ro+&em when no!es nee! to access &ar"er !ata 0o& mes .h n!re!s of "i"a+)tes, the %oint at which 3a%;e! ce rea&&) starts to shine/, since the network +an!wi!th is the +ott&eneck, an! com% te no!es +ecome i!&e.
3a%;e! ce tries to co&ocate the !ata with the com% te no!e, so !ata access is fast since it is &oca&.X This feat re,
known as !ata &oca&it), is at the heart of 3a%;e! ce an! is the reason for its "oo! %erformance. ;eco"ni2in" that network +an!wi!th is the most %recio s reso rce in a !ata center en0ironment .it is eas) to sat rate network &inks +) co%)in" !ata aro n!/, 3a%;e! ce im%&ementations "o to "reat &en"ths to %reser0e it +) e1%&icit&) mo!e&&in" network to%o&o"). Notice that this arran"ement !oes not %rec& !e hi"h-CPI ana&)ses in 3a%;e! ce. 3PI "i0es "reat contro& to the %ro"rammer, + t re> ires that he or she e1%&icit&) han!&e the mechanics of the !ata f&ow, e1%ose! 0ia &ow-&e0e& C ro tines an! constr cts, s ch as sockets, as we&& as the hi"her-&e0e& a&"orithm for the ana&)sis. 3a%;e! ce o%erates on&) at the hi"her &e0e&6 the %ro"rammer thinks in terms of f nctions of ke) an! 0a& e %airs, an! the !ata f&ow is im%&icit. Coor!inatin" the %rocesses in a &ar"e-sca&e !istri+ te! com% tation is a cha&&en"e. The har!est as%ect is "racef &&) han!&in" %artia& fai& rePwhen )o !onJt know if a remote %rocess has fai&e! or notPan! sti&& makin" %ro"ress with the o0era&& com% tation. 3a%;e! ce s%ares the %ro"rammer from ha0in" to think a+o t fai& re, since the im%&ementation !etects fai&e! ma% or re! ce tasks an! resche! &es re%&acements on machines that are hea&th). 3a%;e! ce is a+&e to !o this since it is a share!-nothin" architect re, meanin" that tasks ha0e no !e%en!ence on one other. .This is a s&i"ht o0ersim%&ification, since the o t% t from ma%%ers is fe! to the re! cers, + t this is n!er the contro& of the 3a%;e! ce s)stem: in this case, it nee!s to take more care rer nnin" a fai&e! re! cer than rer nnin" a fai&e! ma%, since it has to make s re it can retrie0e the necessar) ma% o t% ts, an! if not, re"enerate them +) r nnin" the re&e0ant ma%s a"ain./ So from the %ro"rammerJs %oint of 0iew, the or!er in which the tasks r n Vi!)a&ankar Instit te of Techno&o") Pa"e (H
!oesnJt matter. B) contrast, 3PI %ro"rams ha0e to e1%&icit&) mana"e their own check%ointin" an! reco0er), which "i0es more contro& to the %ro"rammer, + t makes them more !iffic &t to write. 3a%;e! ce mi"ht so n! &ike > ite a restricti0e %ro"rammin" mo!e&, an! in a sense it is6 )o are &imite! to ke) an! 0a& e t)%es that are re&ate! in s%ecifie! wa)s, an! ma%%ers an! re! cers r n with 0er) &imite! coor!ination +etween one another .the ma%%ers %ass ke)s an! 0a& es to re! cers/. $ nat ra& > estion to ask is6 can )o !o an)thin" sef & or nontri0ia& with itB The answer is )es. 3a%;e! ce was in0ente! +) en"ineers at Coo"&e as a s)stem for + i&!in" %ro! ction search in!e1es +eca se the) fo n! themse&0es so&0in" the same %ro+&em o0er an! o0er a"ain .an! 3a%;e! ce was ins%ire! +) o&!er i!eas from the f nctiona& %ro"rammin", !istri+ te! com% tin", an! !ata+ase comm nities/, + t it has since +een se! for man) other a%%&ications in man) other in! stries. It is %&easant&) s r%risin" to see the ran"e of a&"orithms that can +e e1%resse! in 3a%;e! ce, from ima"e ana&)sis, to "ra%h-+ase! %ro+&ems, to machine &earnin" a&"orithms.-- It canJt so&0e e0er) %ro+&em, of co rse, + t it is a "enera& !ata-%rocessin" too&. Iolunteer Computing *hen %eo%&e first hear a+o t Da!oo% an! 3a%;e! ce, the) often ask, -Dow is it !ifferent from SETI^homeB- SETI, the Search for E1tra-Terrestria& Inte&&i"ence, r ns a %ro4ect ca&&e! SETI^home in which 0o& nteers !onate CPI time from their otherwise i!&e com% ters to ana&)2e ra!io te&esco%e !ata for si"ns of inte&&i"ent &ife o tsi!e earth. SETI^home is the most we&&-known of man) 0o& nteer com% tin" %ro4ects: others inc& !e the Creat Internet 3ersenne Prime Search .to search for &ar"e %rime n m+ers/ an! @o&!in"^home .to n!erstan! %rotein fo&!in", an! how it re&ates to !isease/. Vo& nteer com% tin" %ro4ects work +) +reakin" the %ro+&em the) are tr)in" to so&0e into ch nks ca&&e! work nits, which are sent to com% ters aro n! the wor&! to +e ana&)2e!. @or e1am%&e, a SETI^home work nit is a+o t 0.=# 3B of ra!io te&esco%e !ata, an! takes ho rs or !a)s to ana&)2e on a t)%ica& home com% ter. *hen the ana&)sis is com%&ete!, the res &ts are sent +ack to the ser0er, an! the c&ient "ets another work nit. $s a %reca tion to com+at cheatin", each work nit is sent to three !ifferent machines, an! nee!s at &east two res &ts to a"ree to +e acce%te!. $&tho "h SETI^home ma) +e s %erficia&&) simi&ar to 3a%;e! ce .+reakin" a %ro+&em into in!e%en!ent %ieces to +e worke! on in %ara&&e&/, there are some si"nificant !ifferences. The SETI^home %ro+&em is 0er) CPI-intensi0e, which
makes it s ita+&e for r nnin" on h n!re!s of tho san!s of com% ters across the wor&!,1- since the time to transfer
the work nit is !warfe! +) the time to r n the com% tation on it. Vo& nteers are !onatin" CPI c)c&es, not +an!wi!th. 3a%;e! ce is !esi"ne! to r n 4o+s that &ast min tes or ho rs on tr ste!, !e!icate! har!ware r nnin" in a sin"&e !ata center with 0er) hi"h a""re"ate +an!wi!th interconnects. B) contrast, SETI^home r ns a %er%et a& com% tation on ntr ste! machines on the Internet with hi"h&) 0aria+&e connection s%ee!s an! no !ata &oca&it). , Brief ;istor! of ;adoop Da!oo% was create! +) ?o " C ttin", the creator of $%ache A cene, the wi!e&) se! te1t search &i+rar). Da!oo% has its ori"ins in $%ache N tch, an o%en so rce we+ search en"ine, itse&f a %art of the A cene %ro4ect. *he #rigin of the Name +,adoop+ The name Da!oo% is not an acron)m: itJs a ma!e- % name. The %ro4ectJs creator, ?o " C ttin", e1%&ains how the name came a+o t6 %he name my *id gave a stuffed yellow elephant. Short, relatively easy to spell and pronounce, meaningless, and not used elsewhere$ those are my naming criteria. +ids are good at generating such. ,oogol is a *id-s term. S +%ro4ects an! -contri+- mo! &es in Da!oo% a&so ten! to ha0e names that are nre&ate! to their f nction, often with an e&e%hant or other anima& theme .-Pi",- for e1am%&e/. Sma&&er com%onents are "i0en more !escri%ti0e .an! Vi!)a&ankar Instit te of Techno&o") Pa"e (K
therefore more m n!ane/ names. This is a "oo! %rinci%&e, as it means )o can "enera&&) work o t what somethin" !oes from its name. @or e1am%&e, the 4o+tracker# kee%s track of 3a%;e! ce 4o+s. B i&!in" a we+ search en"ine from scratch was an am+itio s "oa&, for not on&) is the software re> ire! to craw& an! in!e1 we+sites com%&e1 to write, + t it is a&so a cha&&en"e to r n witho t a !e!icate! o%erations team, since there are so man) mo0in" %arts. ItJs e1%ensi0e too6 3ike Cafare&&a an! ?o " C ttin" estimate! a s)stem s %%ortin" a 1+i&&ion-%a"e in!e1 wo &! cost aro n! ha&f a mi&&ion !o&&ars in har!ware, with a month&) r nnin" cost of b=0,000.Ne0erthe&ess, the) +e&ie0e! it was a worth) "oa&, as it wo &! o%en % an! &timate&) !emocrati2e search en"ine a&"orithms. N tch was starte! in 2002, an! a workin" craw&er an! search s)stem > ick&) emer"e!. Dowe0er, the) rea&i2e! that their architect re wo &!nJt sca&e to the +i&&ions of %a"es on the *e+. De&% was at han! with the % +&ication of a %a%er in 200= that !escri+e! the architect re of Coo"&eJs !istri+ te! fi&es)stem, ca&&e! C@S, which was +ein" se! in %ro! ction at Coo"&e.] C@S, or somethin" &ike it, wo &! so&0e their stora"e nee!s for the 0er) &ar"e fi&es "enerate! as a %art of the we+ craw& an! in!e1in" %rocess. In %artic &ar, C@S wo &! free % time +ein" s%ent on a!ministrati0e tasks s ch as mana"in" stora"e no!es. In 200', the) set a+o t writin" an o%en so rce im%&ementation, the N tch ?istri+ te! @i&es)stem .N?@S/. In 200', Coo"&e % +&ishe! the %a%er that intro! ce! 3a%;e! ce to the wor&!.X Ear&) in 200#, the N tch !e0e&o%ers ha! a workin" 3a%;e! ce im%&ementation in N tch, an! +) the mi!!&e of that )ear a&& the ma4or N tch a&"orithms ha! +een %orte! to r n sin" 3a%;e! ce an! N?@S. N?@S an! the 3a%;e! ce im%&ementation in N tch were a%%&ica+&e +e)on! the rea&m of search, an! in @e+r ar) 200( the) mo0e! o t of N tch to form an in!e%en!ent s +%ro4ect of A cene ca&&e! Da!oo%. $t aro n! the same time, ?o " C ttin" 4oine! LahooM, which %ro0i!e! a !e!icate! team an! the reso rces to t rn Da!oo% into a s)stem that ran at we+ sca&e .see si!e+ar/. This was !emonstrate! in @e+r ar) 200H when LahooM anno nce! that its
%ro! ction search in!e1 was +ein" "enerate! +) a 10,000-core Da!oo% c& ster.f
In Tan ar) 200H, Da!oo% was ma!e its own to%-&e0e& %ro4ect at $%ache, confirmin" its s ccess an! its !i0erse, acti0e comm nit). B) this time Da!oo% was +ein" se! +) man) other com%anies +esi!es LahooM, s ch as Aast.fm, @ace+ook. In one we&&-% +&ici2e! feat, the New Lork Times se! $ma2onJs EC2 com% te c&o ! to cr nch thro "h fo r tera+)tes of scanne! archi0es from the %a%er con0ertin" them to P?@s for the *e+.t The %rocessin" took &ess than 2' ho rs to r n sin" 100 machines, an! the %ro4ect %ro+a+&) wo &!nJt ha0e +een em+arke! on witho t the com+ination of $ma2onJs %a)-+)-the-ho r mo!e& .which a&&owe! the NLT to access a &ar"e n m+er of machines for a short %erio!/, an! Da!oo%Js eas)-to- se %ara&&e& %ro"rammin" mo!e&. In $%ri& 200H, Da!oo% +roke a wor&! recor! to +ecome the fastest s)stem to sort a tera+)te of !ata. ; nnin" on a K10-no!e c& ster, Da!oo% sorte! one tera+)te in 20K secon!s .4 st n!er =Z min tes/, +eatin" the %re0io s )earJs winner of 2KF secon!s .!escri+e! in !etai& in -TeraB)te Sort on $%ache Da!oo%- on %a"e '(1/. In No0em+er of the same )ear, Coo"&e re%orte! that its 3a%;e! ce im%&ementation sorte! one tera+)te in (H secon!s. ;adoop at KahooL B i&!in" Internet-sca&e search en"ines re> ires h "e amo nts of !ata an! therefore &ar"e n m+ers of machines to %rocess it. LahooM Search consists of fo r %rimar) com%onents6 the Craw&er, which !own&oa!s %a"es from we+ ser0ers: the *e+3a%, which + i&!s a "ra%h of the known *e+: the In!e1er, which + i&!s a re0erse in!e1 to the +est %a"es: an! the ; ntime, which answers sersJ > eries. The *e+3a% is a "ra%h that consists of ro "h&) 1 tri&&ion
.1012/ e!"es each re%resentin" a we+ &ink an! 100 +i&&ion .1011/ no!es each re%resentin" !istinct I;As. Creatin" an!
ana&)2in" s ch a &ar"e "ra%h re> ires a &ar"e n m+er of com% ters r nnin" for man) !a)s.
In ear&) 200#, the infrastr ct re for the *e+3a%, name! ?rea!na "ht, nee!e! to +e re!esi"ne! to sca&e % to more no!es. ?rea!na "ht ha! s ccessf &&) sca&e! from 20 to (00 no!es, + t re> ire! a com%&ete re!esi"n to sca&e % f rther. ?rea!na "ht is simi&ar to 3a%;e! ce in man) wa)s, + t %ro0i!es more f&e1i+i&it) an! &ess str ct re. In %artic &ar, each fra"ment in a ?rea!na "ht 4o+ can sen! o t% t to each of the fra"ments in the ne1t sta"e of the 4o+, + t the sort was a&& !one in &i+rar) co!e. In %ractice, most of the *e+3a% %hases were %airs that corres%on!e! to 3a%;e! ce. Therefore, the *e+3a% a%%&ications wo &! not re> ire e1tensi0e refactorin" to fit into 3a%;e! ce. Eric Ba&!eschwie&er .Eric1'/ create! a sma&& team an! we startin" !esi"nin" an! %rotot)%in" a new framework written in CWW mo!e&e! after C@S an! 3a%;e! ce to re%&ace ?rea!na "ht. $&tho "h the imme!iate nee! was for a new framework for *e+3a%, it was c&ear that stan!ar!i2ation of the +atch %&atform across LahooM Search was critica& an! +) makin" the framework "enera& eno "h to s %%ort other sers, we co &! +etter &e0era"e in0estment in the new %&atform. $t the same time, we were watchin" Da!oo%, which was %art of N tch, an! its %ro"ress. In Tan ar) 200(, LahooM hire! ?o " C ttin", an! a month &ater we !eci!e! to a+an!on o r %rotot)%e an! a!o%t Da!oo%. The a!0anta"e of Da!oo% o0er o r %rotot)%e an! !esi"n was that it was a&rea!) workin" with a rea& a%%&ication .N tch/ on 20 no!es. That a&&owe! s to +rin" % a research c& ster two months &ater an! start he&%in" rea& c stomers se the new framework m ch sooner than we co &! ha0e otherwise. $nother a!0anta"e, of co rse, was that since Da!oo% was a&rea!) o%en so rce, it was easier .a&tho "h far from eas)M/ to "et %ermission from LahooMJs &e"a& !e%artment to work in o%en so rce. So we set % a 200-no!e c& ster for the researchers in ear&) 200( an! % t the *e+3a% con0ersion %&ans on ho&! whi&e we s %%orte! an! im%ro0e! Da!oo% for the research sers. $he ,pache ;adoop Pro=ect o!a), Da!oo% is a co&&ection of re&ate! s +%ro4ects that fa&&
TT
n!er the
com% tin". These %ro4ects are hoste! +) the $%ache Software @o n!ation, which %ro0i!es s %%ort for a comm nit) of o%en so rce software %ro4ects. $&tho "h Da!oo% is +est known for 3a%;e! ce an! its !istri+ te! fi&es)stem .D?@S, rename! from N?@S/, the other s +%ro4ects %ro0i!e com%&ementar) ser0ices, or + i&! on the core to a!! hi"her-&e0e& a+stractions. The s +%ro4ects, an! where the) sit in the techno&o") stack, are shown in @i" re 1-1 an! !escri+e! +rief&) here6 Core . set of components and interfaces for distri uted filesystems and general I/# /seriali0ation, 1ava R2C, persistent data structures3. ,vro . data seriali0ation system for efficient, cross'language R2C, and persistent data storage. /.t the time of this writing, .vro had een created only as a new su pro'!ect, and no other 4adoop su pro!ects were using it yet.3 -apReduce . distri uted data processing model and execution environment that runs on large clusters of commodity machines. ;DF. . distri uted filesystem that runs on large clusters of commodity machines. Pig . data flow language and execution environment for exploring very large datasets. 2ig runs on 4(5S and )apReduce clusters. ;Base . distri uted, column'oriented data ase. 4Base uses 4(5S for its underlying storage, and supports oth atch' style computations using )apReduce and point 6ueries /random reads3. Moo1eeper . distri uted, highly availa le coordination service. 7oo+eeper provides primitives such as distri uted loc*s that can e used for uilding distri uted applications. ;ive . distri uted data warehouse. 4ive manages data stored in 4(5S and provides a 6uery language ased on S89 /and which is translated y the runtime engine to )apReduce !o s3 for 6uerying the data. Chu%wa
. distri uted data collection and analysis system. Chu*wa runs collectors that store data in 4(5S, and it uses )apReduce to produce reports. /.t the time of this writing, Chu*wa had only recently graduated from a "contri " module in Core to its own su pro!ect.3.
;DF.
*hen a !ataset o t"rows the stora"e ca%acit) of a sin"&e %h)sica& machine, it +ecomes necessar) to %artition it across a n m+er of se%arate machines. @i&es)stems that mana"e the stora"e across a network of machines are ca&&e! !istri+ te! fi&es)stems. Since the) are network-+ase!, a&& the com%&ications of network %ro"rammin" kick in, th s makin" !istri+ te! fi&es)stems more com%&e1 than re" &ar !isk fi&es)stems. @or e1am%&e, one of the +i""est cha&&en"es is makin" the fi&es)stem to&erate no!e fai& re witho t s fferin" !ata &oss. Da!oo% comes with a !istri+ te! fi&es)stem ca&&e! D?@S, which stan!s for Da!oo% ?istri+ te! @i&es)stem. .Lo ma) sometimes see references to -?@S-Pinforma&&) or in o&!er !oc mentation or confi" rationPwhich is the same thin"./ D?@S is Da!oo%Js f&a"shi% fi&es)stem an! is the foc s of this cha%ter, + t Da!oo% act a&&) has a "enera&% r%ose fi&es)stem a+straction, so weJ&& see a&on" the wa) how Da!oo% inte"rates with other stora"e s)stems .s ch as the &oca& fi&es)stem an! $ma2on S=/. $he Design of ;DF. D?@S is a fi&es)stem !esi"ne! for storin" 0er) &ar"e fi&es with streamin" !ata access %atterns, r nnin" on c& sters on commo!it) har!ware. AetJs e1amine this statement in more !etai&6 :ery large files -Ver) &ar"e- in this conte1t means fi&es that are h n!re!s of me"a+)tes, "i"a+)tes, or tera+)tes in si2e. There are Da!oo% c& sters r nnin" to!a) that store %eta+)tes of !ata.X Streaming data access D?@S is + i&t aro n! the i!ea that the most efficient !ata %rocessin" %attern is a write-once, rea!-man)-times %attern. $ !ataset is t)%ica&&) "enerate! or co%ie! from so rce, then 0ario s ana&)ses are %erforme! on that !ataset o0er time. Each ana&)sis wi&& in0o&0e a &ar"e %ro%ortion, if not a&&, of the !ataset, so the time to rea! the who&e !ataset is more im%ortant than the &atenc) in rea!in" the first recor!. Commodity hardware Da!oo% !oesnJt re> ire e1%ensi0e, hi"h&) re&ia+&e har!ware to r n on. ItJs !esi"ne! to r n on c& sters of commo!it) har!ware .common&) a0ai&a+&e har!ware a0ai&a+&e from m &ti%&e 0en!orsc/ for which the chance of no!e fai& re across the c& ster is hi"h, at &east for &ar"e c& sters. D?@S is !esi"ne! to carr) on workin" witho t a noticea+&e interr %tion to the ser in the face of s ch fai& re. It is a&so worth e1aminin" the a%%&ications for which sin" D?@S !oes not work so we&&. *hi&e this ma) chan"e in the f t re, these are areas where D?@S is not a "oo! fit to!a)6 9ow'latency data access $%%&ications that re> ire &ow-&atenc) access to !ata, in the tens of mi&&isecon!s ran"e, wi&& not work we&& with D?@S. ;emem+er D?@S is o%timi2e! for !e&i0erin" a hi"h thro "h% t of !ata, an! this ma) +e at the e1%ense of &atenc). DBase is c rrent&) a +etter choice for &ow-&atenc) access. 9ots of small files Since the nameno!e ho&!s fi&es)stem meta!ata in memor), the &imit to the n m+er of fi&es in a fi&es)stem is "o0erne! +) the amo nt of memor) on the nameno!e. $s a r &e of th m+, each fi&e, !irector), an! +&ock takes
a+o t 1#0 +)tes. So, for e1am%&e, if )o ha! one mi&&ion fi&es, each takin" one +&ock, )o wo &! nee! at &east =00 3B of memor). *hi&e storin" mi&&ions of fi&es is feasi+&e, +i&&ions is +e)on! the ca%a+i&it) of c rrent har!ware. )ultiple writers, ar itrary file modifications @i&es in D?@S ma) +e written to +) a sin"&e writer. *rites are a&wa)s ma!e at the en! of the fi&e. There is no s %%ort for m &ti%&e writers, or for mo!ifications at ar+itrar) offsets in the fi&e. .These mi"ht +e s %%orte! in the f t re, + t the) are &ike&) to +e re&ati0e&) inefficient./ ;DF. Concepts Bloc%s $ !isk has a +&ock si2e, which is the minim m amo nt of !ata that it can rea! or write. @i&es)stems for a sin"&e !isk + i&! on this +) !ea&in" with !ata in +&ocks, which are an inte"ra& m &ti%&e of the !isk +&ock si2e. @i&es)stem +&ocks are t)%ica&&) a few ki&o+)tes in si2e, whi&e !isk +&ocks are norma&&) #12 +)tes. This is "enera&&) trans%arent to the fi&es)stem ser who is sim%&) rea!in" or writin" a fi&ePof whate0er &en"th. Dowe0er, there are too&s to !o with fi&es)stem maintenance, s ch as !f an! fsck, that o%erate on the fi&es)stem +&ock &e0e&. D?@S too has the conce%t of a +&ock, + t it is a m ch &ar"er nitP(' 3B +) !efa &t. Aike in a fi&es)stem for a sin"&e !isk, fi&es in D?@S are +roken into +&ock-si2e! ch nks, which are store! as in!e%en!ent nits. In&ike a fi&es)stem for a sin"&e !isk, a fi&e in D?@S that is sma&&er than a sin"&e +&ock !oes not occ %) a f && +&ockJs worth of n!er&)in" stora"e. *hen n> a&ifie!, the term -+&ock- in this +ook refers to a +&ock in D?@S. 3h! Is a Bloc% in ;DF. .o (arge4 D?@S +&ocks are &ar"e com%are! to !isk +&ocks, an! the reason is to minimi2e the cost of seeks. B) makin" a +&ock &ar"e eno "h, the time to transfer the !ata from the !isk can +e ma!e to +e si"nificant&) &ar"er than the time to seek to the start of the +&ock. Th s the time to transfer a &ar"e fi&e ma!e of m &ti%&e +&ocks o%erates at the !isk transfer rate. $ > ick ca&c &ation shows that if the seek time is aro n! 10ms, an! the transfer rate is 100 3B/s, then to make the seek time 1Z of the transfer time, we nee! to make the +&ock si2e aro n! 100 3B. The !efa &t is act a&&) (' 3B, a&tho "h man) D?@S insta&&ations se 12H 3B +&ocks. This fi" re wi&& contin e to +e re0ise! %war! as transfer s%ee!s "row with new "enerations of !isk !ri0es. This ar" ment sho &!nJt +e taken too far, howe0er. 3a% tasks in 3a%;e! ce norma&&) o%erate on one +&ock at a time, so if )o ha0e too few tasks .fewer than no!es in the c& ster/, )o r 4o+s wi&& r n s&ower than the) co &! otherwise. Da0in" a +&ock a+straction for a !istri+ te! fi&es)stem +rin"s se0era& +enefits. The first +enefit is the most o+0io s6 a fi&e can +e &ar"er than an) sin"&e !isk in the network. ThereJs nothin" that re> ires the +&ocks from a fi&e to +e store! on the same !isk, so the) can take a!0anta"e of an) of the !isks in the c& ster. In fact, it wo &! +e %ossi+&e, if n s a&, to store a sin"&e fi&e on an D?@S c& ster whose +&ocks fi&&e! a&& the !isks in the c& ster. Secon!, makin" the nit of a+straction a +&ock rather than a fi&e sim%&ifies the stora"e s +s)stem. Sim%&icit) is somethin" to stri0e for a&& in a&& s)stems, + t is im%ortant for a !istri+ te! s)stem in which the fai& re mo!es are so 0arie!. The stora"e s +s)stem !ea&s with +&ocks, sim%&if)in" stora"e mana"ement .since +&ocks are a fi1e! si2e, it is eas) to ca&c &ate how man) can +e store! on a "i0en !isk/, an! e&iminatin" Vi!)a&ankar Instit te of Techno&o") Pa"e F'
meta!ata concerns .+&ocks are 4 st a ch nk of !ata to +e store!Pfi&e meta!ata s ch as %ermissions information !oes not nee! to +e store! with the +&ocks, so another s)stem can han!&e meta!ata ortho"ona&&)/. @ rthermore, +&ocks fit we&& with re%&ication for %ro0i!in" fa &t to&erance an! a0ai&a+i&it). To ins re a"ainst corr %te! +&ocks an! !isk an! machine fai& re, each +&ock is re%&icate! to a sma&& n m+er of %h)sica&&) se%arate machines .t)%ica&&) three/. If a +&ock +ecomes na0ai&a+&e, a co%) can +e rea! from another &ocation in a wa) that is trans%arent to the c&ient. $ +&ock that is no &on"er a0ai&a+&e ! e to corr %tion or machine fai& re can +e re%&icate! from their a&ternati0e &ocations to other &i0e machines to +rin" the re%&ication factor +ack to the norma& &e0e&. .See -?ata Inte"rit)- on %a"e F# for more on " ar!in" a"ainst corr %t !ata./ Simi&ar&), some a%%&ications ma) choose to set a hi"h re%&ication factor for the +&ocks in a %o% &ar fi&e to s%rea! the rea! &oa! on the c& ster. Aike its !isk fi&es)stem co sin, D?@SJs fsck comman! n!erstan!s +&ocks. @or e1am%&e, r nnin"6 N hadoop fsc% )files )bloc%s wi&& &ist the +&ocks that make % each fi&e in the fi&es)stem. *amenodes and Datanodes $ D?@S c& ster has two t)%es of no!e o%eratin" in a master-worker %attern6 a name-no!e .the master/ an! a n m+er of !atano!es .workers/. The nameno!e mana"es the fi&es)stem names%ace. It maintains the fi&es)stem tree an! the meta!ata for a&& the fi&es an! !irectories in the tree. This information is store! %ersistent&) on the &oca& !isk in the form of two fi&es6 the names%ace ima"e an! the e!it &o". The nameno!e a&so knows the !atano!es on which a&& the +&ocks for a "i0en fi&e are &ocate!, howe0er, it !oes not store +&ock &ocations %ersistent&), since this information is reconstr cte! from !atano!es when the s)stem starts. $ c&ient accesses the fi&es)stem on +eha&f of the ser +) comm nicatin" with the name-no!e an! !atano!es. The c&ient %resents a P5SIO-&ike fi&es)stem interface, so the ser co!e !oes not nee! to know a+o t the nameno!e an! !atano!e to f nction. ?atano!es are the work horses of the fi&es)stem. The) store an! retrie0e +&ocks when the) are to&! to .+) c&ients or the nameno!e/, an! the) re%ort +ack to the nameno!e %erio!ica&&) with &ists of +&ocks that the) are storin". *itho t the nameno!e, the fi&es)stem cannot +e se!. In fact, if the machine r nnin" the nameno!e were o+&iterate!, a&& the fi&es on the fi&es)stem wo &! +e &ost since there wo &! +e no wa) of knowin" how to reconstr ct the fi&es from the +&ocks on the !atano!es. @or this reason, it is im%ortant to make the nameno!e resi&ient to fai& re, an! Da!oo% %ro0i!es two mechanisms for this. The first wa) is to +ack % the fi&es that make % the %ersistent state of the fi&es)stem meta!ata. Da!oo% can +e confi" re! so that the nameno!e writes its %ersistent state to m &ti%&e fi&es)stems. These writes are s)nchrono s an! atomic. The s a& confi" ration choice is to write to &oca& !isk as we&& as a remote N@S mo nt.
It is a&so %ossi+&e to r n a secon!ar) nameno!e, which !es%ite its name !oes not act as a nameno!e. Its main ro&e is to %erio!ica&&) mer"e the names%ace ima"e with the e!it &o" to %re0ent the e!it &o" from +ecomin" too &ar"e. The secon!ar) nameno!e s a&&) r ns on a se%arate %h)sica& machine, since it re> ires %&ent) of CPI an! as m ch memor) as the nameno!e to %erform the mer"e. It kee%s a co%) of the mer"e! names%ace ima"e, which can +e se! in the e0ent of the nameno!e fai&in". Dowe0er, the state of the secon!ar) nameno!e &a"s that of the %rimar), so in the e0ent of tota& fai& re of the %rimar) !ata, &oss is a&most " arantee!. The s a& co rse of action in this case is to co%) the nameno!eJs meta!ata fi&es that are on N@S to the secon!ar) an! r n it as the new %rimar). $he Command(ine Interface *eJre "oin" to ha0e a &ook at D?@S +) interactin" with it from the comman! &ine. There are man) other interfaces to D?@S, + t the comman! &ine is one of the sim%&est, an! to man) !e0e&o%ers the most fami&iar. *e are "oin" to r n D?@S on one machine, so first fo&&ow the instr ctions for settin" % Da!oo% in %se !o!istri+ te! mo!e in $%%en!i1 $. Aater )o J&& see how to r n on a c& ster of machines to "i0e s sca&a+i&it) an! fa &t to&erance. There are two %ro%erties that we set in the %se !o-!istri+ te! confi" ration that !eser0e f rther e1%&anation. The first is fs.!efa &t.name, set to h!fs6//&oca&host/, which is se! to set a !efa &t fi&es)stem for Da!oo%. @i&es)stems are s%ecifie! +) a I;I, an! here we ha0e se! a h!fs I;I to confi" re Da!oo% to se D?@S +) !efa &t. The D?@S !aemons wi&& se this %ro%ert) to !etermine the host an! %ort for the D?@S nameno!e. *eJ&& +e r nnin" it on &oca&host, on the !efa &t D?@S %ort, H020. $n! D?@S c&ients wi&& se this %ro%ert) to work o t where the nameno!e is r nnin" so the) can connect to it. *e set the secon! %ro%ert), !fs.re%&ication, to one so that D?@S !oesnJt re%&icate fi&es)stem +&ocks +) the s a& !efa &t of three. *hen r nnin" with a sin"&e !atano!e, D?@S canJt re%&icate +&ocks to three !atano!es, so it wo &! %er%et a&&) warn a+o t +&ocks +ein" n!er-re%&icate!. This settin" so&0es that %ro+&em. Basic Files!stem &perations The fi&es)stem is rea!) to +e se!, an! we can !o a&& of the s a& fi&es)stem o%erations s ch as rea!in" fi&es, creatin" !irectories, mo0in" fi&es, !e&etin" !ata, an! &istin" !irectories. Lo can t)%e ha!oo% fs -he&% to "et !etai&e! he&% on e0er) comman!. Start +) co%)in" a fi&e from the &oca& fi&es)stem to D?@S6 N hadoop fs )cop!From(ocal inputDdocsD"uangle.t+t hdfs DDlocalhostDuserDtomD"uangle.t+t This comman! in0okes Da!oo%Js fi&es)stem she&& comman! fs, which s %%orts a n m+er of s +comman!sPin this case, we are r nnin" -co%)@romAoca&. The &oca& fi&e > an"&e.t1t is co%ie! to the fi&e / ser/tom/> an"&e.t1t on the D?@S instance r nnin" on &oca&host. In fact, we co &! ha0e omitte! the scheme an! host of the I;I an! %icke! % the !efa &t, h!fs6//&oca&host, as s%ecifie! in core-site.1m&. Z ha!oo% fs -co%)@romAoca& in% t/!ocs/> an"&e.t1t / ser/tom/> an"&e.t1t *e co &! a&so ha0e /user/tom$ se! a re&ati0e %ath, an! co%ie! the fi&e to o r home !irector) in D?@S, which in this case is
Z ha!oo% fs -co%)@romAoca& in% t/!ocs/> an"&e.t1t > an"&e.t1t AetJs co%) the fi&e +ack to the &oca& fi&es)stem an! check whether itJs the same6 Z ha!oo% fs -co%)ToAoca& > an"&e.t1t > an"&e.co%).t1t Z m!# in% t/!ocs/> an"&e.t1t > an"&e.co%).t1t
Pa"e F(
3?# .in% t/!ocs/> an"&e.t1t/ R a&(f2=&!a(+0#e2+aFa==K=20eF!ac!K 3?# .> an"&e.co%).t1t/ R a1(f2=1!a(+0#e2+aFa==K=20eF!ac!K The 3?# !i"ests are the same, showin" that the fi&e s r0i0e! its tri% to D?@S an! is +ack intact. @ina&&), &etJs &ook at an D?@S fi&e &istin". *e create a !irector) first 4 st to see how it is !is%&a)e! in the &istin"6 Z ha!oo% fs -mk!ir +ooks Z ha!oo% fs -&s . @o n! 2 items !rw1r-1r-1 -rw-r--r-- tom s %er"ro % 0 200K-0'-02 226'1 / ser/tom/+ooks 1 tom s %er"ro % 11H 200K-0'-02 2262K / ser/tom/> an"&e.t1t
The information ret rne! is 0er) simi&ar to the Ini1 comman! &s -&, with a few minor !ifferences. The first co& mn shows the fi&e mo!e. The secon! co& mn is the re%&ication factor of the fi&e .somethin" a tra!itiona& Ini1 fi&es)stems !oes not ha0e/. ;emem+er we set the !efa &t re%&ication factor in the site-wi!e confi" ration to +e 1, which is wh) we see the same 0a& e here. The entr) in this co& mn is em%t) for !irectories since the conce%t of re%&ication !oes not a%%&) to themP!irectories are treate! as meta!ata an! store! +) the nameno!e, not the !atano!es. The thir! an! fo rth co& mns show the fi&e owner an! "ro %. The fifth co& mn is the si2e of the fi&e in +)tes, or 2ero for !irectories. The si1 an! se0enth co& mns are the &ast mo!ifie! !ate an! time. @ina&&), the ei"hth co& mn is the a+so& te name of the fi&e or !irector). File Permissions in ;DF. D?@S has a %ermissions mo!e& for fi&es an! !irectories that is m ch &ike P5SIO. There are three t)%es of %ermission6 the rea! %ermission .r/, the write %ermission .w/ an! the e1ec te %ermission .1/. The rea! %ermission is re> ire! to rea! fi&es or &ist the contents of a !irector). The write %ermission is re> ire! to write a fi&e, or for a !irector), to create or !e&ete fi&es or !irectories in it. The e1ec te %ermission is i"nore! for a fi&e since )o canJt e1ec te a fi&e on D?@S . n&ike P5SIO/, an! for a !irector) it is re> ire! to access its chi&!ren. Each fi&e an! !irector) has an owner, a "ro %, an! a mo!e. The mo!e is ma!e % of the %ermissions for the ser who is the owner, the %ermissions for the sers who are mem+ers of the "ro %, an! the %ermissions for sers who are neither the owner nor mem+ers of the "ro %. $ c&ientJs i!entit) is !etermine! +) the sername an! "ro %s of the %rocess it is r nnin" in. Beca se c&ients are remote, this makes it %ossi+&e to +ecome an ar+itrar) ser, sim%&) +) creatin" an acco nt of that name on the remote s)stem. Th s, %ermissions sho &! +e se! on&) in a coo%erati0e comm nit) of sers, as a mechanism for sharin" fi&es)stem reso rces an! for a0oi!in" acci!enta& !ata &oss, an! not for sec rin" reso rces in a hosti&e en0ironment. Dowe0er, !es%ite these !raw+acks, it is worthwhi&e ha0in" %ermissions ena+&e! .as it is +) !efa &t: see the !fs.%ermissions %ro%ert)/, to a0oi! acci!enta& mo!ification or !e&etion of s +stantia& %arts of the fi&es)stem, either +) sers or +) a tomate! too&s or %ro"rams. *hen %ermissions checkin" is ena+&e!, the owner %ermissions are checke! if the c&ientJs sername matches the owner, an! the "ro % %ermissions are checke! if the c&ient is a mem+er of the "ro %: otherwise, the other %ermissions are checke!. Vi!)a&ankar Instit te of Techno&o") Pa"e FF
There is a conce%t of a s %er- ser, which is the i!entit) of the nameno!e %rocess. Permissions checks are not %erforme! for the s %er- ser. ;adoop Files!stems Da!oo% has an a+stract notion of fi&es)stem, of which D?@S is 4 st one im%&ementation. The Ta0a a+stract c&ass or".a%ache.ha!oo%.fs. @i&eS)stem re%resents a fi&es)stem in Da!oo%, an! there are se0era& concrete im%&ementations, which are !escri+e! +e&ow6 Files!stem :RI Fava implementation /all Description
fs.Aoca&@i&eS)stem $ fi&es)stem for a &oca&&) connecte! !isk with c&ient-si!e checkAoca& fi&e
s ms. Ise ;awAoca&@i&eS)s tem for a &oca& fi&es)stem with no checks ms. See -Aoca&@i&eS)s-tem- on %a"e F(.
hdfs hdfs.(istri uted5ileSystem 4adoop-s distri uted filesystem. 4(5S is designed to wor* effi'
D?@S
.?es%ite its name, D@TP has no connection with @TP./ 5ften se! with !istc% .-Para&&e& Co%)in" with !istc%- on %a"e F0/ to co%) !ata +etween D?@S c& sters r nnin" !ifferent 0ersions.
har fs.4ar5ileSystem . filesystem layered on another filesystem for archiving files. 4a'
D$;
!oo% $rchi0es are t)%ica&&) se! for archi0in" fi&es in D?@S to re! ce the nameno!eJs memor) sa"e.
K@S .C&o !- kfs fs.kfs.Kosmos@i&eS)stem C&o !Store .former&) Kosmos fi&es)stem/ is a !istri+ te! fi&es)s-
tem &ike D?@S or Coo"&eJs C@S, written in CWW. @in! more inforStore/ mation a+o t it at htt%6//kosmosfs .so rcefor"e.net/.
ac*ed
tem
doop/.ma0onS;.
S= .+&ock- s= fs.s=.S=@i&eS)stem $ fi&es)stem +acke! +) $ma2on S=, which stores fi&es in +&ocks
+ase!/
*ote DonJt go too much into the technical aspects of ;adoop ' ;DF.. Kou need to understand the concept and derive from that an understanding of unloc%ing old data. Fundamentall! these technologies allow for mining data that otherwise could not be mined, simpl! b! supporting distributed computing and storage. ,lso, use the slides to figure out how a -apReduce program wor%s and the various entities involved.
Pa"e FH