MashupsWeb应用程序新成员

上传人:pu****.1 文档编号:568493693 上传时间:2024-07-24 格式:PPT 页数:45 大小:1.36MB
返回 下载 相关 举报
MashupsWeb应用程序新成员_第1页
第1页 / 共45页
MashupsWeb应用程序新成员_第2页
第2页 / 共45页
MashupsWeb应用程序新成员_第3页
第3页 / 共45页
MashupsWeb应用程序新成员_第4页
第4页 / 共45页
MashupsWeb应用程序新成员_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《MashupsWeb应用程序新成员》由会员分享,可在线阅读,更多相关《MashupsWeb应用程序新成员(45页珍藏版)》请在金锄头文库上搜索。

1、Mashups:Web 应用程序新成员 Outlinel1. Mashup的定义l2. Mashup的分类l3. Mashup的架构l4. 企业级Mashup及引出的研究问题l5. Summary Mashup起源lMashup can mean:lMashup (music), a musical genre of songs that consist entirely of parts of other songs lMashup (web application hybrid), a website or web application that combines content fro

2、m more than one source lMashup (video), a video that is edited from more than one source to appear as one l它源于流行音乐,mashup 是从两首不同的歌曲(通常属于不同的流派)中混合演唱和乐器的音轨而构成的一首新歌。与那些 “bastard pop” 歌曲类似,mashup 也是内容的一种不常见的创新组合(通常都源自于无关的数据源),这都是人工进行合成的(而不是通过计算机来合成的)。 What is Mashupl一种新型的基于 Web 的数据集成应用程序正在 Internet 上逐渐兴

3、起 Mashup.l它利用了从外部数据源检索到的内容来创建全新的创新服务(combines content from more than one source into an integrated experience )l涵盖public APIs, XML/RSS/Atom feeds, web services, HTML l具有第二代 Web 应用程序的特点,也称为 Web 2.0 (collaborate & share)l许多人已经和正在用eBay, Amazon, Google, Windows Live, and Yahoos APIs构建新的Mashups Statistic

4、sl如果我们就以两年来看,两年后的Mashup技术会成熟到一个什么局面呢?l有数据说,现在已经有越来越多的API被开放,而每天都会有大概2.5个Mashup产生。预计到2007年,每天Mashup的产生数量就会增加到10个。l按照这个速度计算,两年内产生的Mashup的确非常惊人 Outlinel1. Mashup的定义l2. Mashup的分类l3. Mashup的架构l4. 企业级Mashup及引出的研究问题l5. Summary Mashup 类型l地图 Mashupl视频和图像 Mashupl搜索和购物 Mashupl新闻 MashuplAnything other视频和图像Mashu

5、pl图像主机和社交网络站点(例如例如 Flickr 使用自己的使用自己的 API 来共享图像来共享图像)的兴起导致出现了很多有趣的 mashup。由于内容提供者拥有与其保存的图像相关的元数据(例如谁拍图像相关的元数据(例如谁拍的照片,照片的内容是什么,在何时何地拍摄的等等的照片,照片的内容是什么,在何时何地拍摄的等等),),mashup 的设计者可以将这些照片和其他与元数据相关的信息放到一起 l例如例如,mashup 可以对歌曲或诗词进行分析,从而将相关照片拼接在一起,或者基于相同的照片元数据(标题、时间戳或其他元数据)显示社交网络图。 另外一个例子另外一个例子 可能以一个 Web 站点(例如

6、 CNN 之类的新闻站点)作为输入,并在新闻中通过照片匹配而将照片中的内容以文字的形式呈现出来 搜索和购物Mashupl搜索和购物 mashup 在 mashup 这个术语出现之前就已经存在很长时间了 l在 Web API 出现之前,有相当多的购物工具,例如 BizRate、PriceGrabber、MySimon 和 Google 的 Froogle,都使用了 B2B 技术或屏幕抓取的方式来累计相关的价格数据 l为了促进 mashup 和其他有趣的 Web 应用程序的发展,诸如 eBay 和 Amazon 之类的消费网站已经为通过编程访问自己的内容而发布了自己的 API 新闻Mashupl新

7、闻源(例如纽约时报、BBC 或路透社)已从 2002 年起使用 RSS 和 Atom 之类的联合技术来发布各个主题的新闻提要。l以联合技术为基础的 mashup 可以聚集一名用户的提要,并将其通过 Web 呈现出来,创建个性化的报纸,从而满创建个性化的报纸,从而满足读者独特的兴趣足读者独特的兴趣。lDiggdot.us 正是这样的一个例子,它合并了 D、Slashdot.org 和 上与技术有关的内容.(见示例见示例)地图Mashupl地图蓬勃发展的一种主要动力主要动力就是 Google 公开了自己的 Google Maps API l现阶段,人们搜集大量有关事物和行为的数据,二者都常常具有位

8、置注释信息位置注释信息。所有这些包含位置数据的不同数据集均可利用地图通过令人惊奇的图形化方式呈现出来图形化方式呈现出来l可以在地图中包含所有类型的数据(从原子弹灾难到波士顿的 CowParade 奶牛都可以 )lMicrosoft(Virtual Earth)、Yahoo(Yahoo Maps)和 AOL(MapQuest)不甘示弱,也很快相继公开公开了自己的 APIAPI Google APIl什么是Google APIlGoogle 公司允许其它开发人员通过 Web 服务接口访问其索引。这就是说,开发人员可以以编程的方法将请求发送到 Google 服务器,然后取回结果 l您还可以利用一些其

9、它信息,它们并不象用以前的办法搜索得到的信息那么明显 (Hit Number)l请求和响应的形式都是 SOAP 消息 SOAP 消息lSOAP消息-Simple Object Access Protocol(简单对象访问协议)lSOAP 消息基本上是从发送端到接收端的单向传输,但它们常常结合起来执行类似于请求 / 应答的模式。所有的 SOAP 消息都使用 XML 编码 l见拼写建议(例)Google API 示例l第一点是最重要的,所有搜索都需要有授权码,这是免费的。它每天最多支持 1000 次搜索。每次最多返回 10 条搜索结果。l用GoogleSearch实现简单的应用程序。使用的时候,要

10、设置参数,然后实际执行搜索,就会有结果返回。 l 示例:新建搜索,同时返回hit number和具体搜索结果(搜索)非常有趣的Google Map APIlExamplelrentometer租房者的福音lSimple Analysis:l地图的移动和变换地图的移动和变换l在地图上添加控件在地图上添加控件l地图标注地图标注l在标记上显示信息浮窗在标记上显示信息浮窗lOutlinel1. Mashup的定义l2. Mashup的分类l3. Mashup的架构l4. 企业级Mashup及引出的研究问题l5. Summary 架构 客户机的 Web 浏览器API/内容提供者Mashup 站点e.g.

11、 Top 10 Highest Paid Women Information 架构lAPI内容提供者内容提供者l通过通过 Web 协议对外提供(例如协议对外提供(例如 REST、Web 服务和服务和 RSS/Atom) l消息传递协议,最有名的是简单对象访问协议(Simple Object Access Protocol,SOAP),Rest相对来说比较陌生。 l传输协议(如 HTTP、IIOP、SMTP 或其他协议) l服务如何公开它们自己以及如何在网络上相互发现?统一描述、发现和集成(Universal Description, Discovery and Integration,UDDI

12、)为查找和访问服务定义了注册中心和相关的协议 l很多有趣的潜在数据源可能并没有方便地对外提供很多有趣的潜在数据源可能并没有方便地对外提供 API,mashup都都是通过一种称为屏幕抓取(是通过一种称为屏幕抓取(screen scraping)的技术实现)的技术实现 REST vs. SOAPlSOAPlgetUser() addUser() removeUser() updateUser() getLocation() addLocation() removeLocation() updateLocation() listUsers() listLocations() findLocation

13、() findUser()Restlhttp:/ http:/ (one for each user) http:/ http:/ http:/ (one for each location) http:/ = new ExampleApp(:1234) exampleAppObject. getUser() userResource = new Resource(http:/ userResource. get() Mashup站点l合并内容可以直接在客户机的浏览器中通过客户机端脚本(即 JavaScript)或 applet 生成。lmashup 使用的这种方法可以称为胖 Internet

14、 应用程序(RIA) l客户机端进行数据集成的优点包括 :l对 mashup 服务器的所产生的负载较轻(数据可以直接从内容提供者那里传送过来) l具有更好无缝用户体验(页面可以请求对内容的一部分进行更新,而不用刷新整个页面)。 AjaxOutlinel1. Mashup的定义l2. Mashup的分类l3. Mashup的架构l4. 企业级Mashup及引出的研究问题l5. Summary 企业级Mashup(1)lMashup技术并非只会提供消费者网站使用的、加了注释的地图,这项技术具有真正的企业应用前景 l先例:l历史悠久的股票报价系统;l将UPS或FedEx等快递公司的跟踪数据与订单记录

15、组合起来,提供订单状态单一视图的电子商务网站 l现在,更强调服务的可用性和易用性: l飞机引擎制造商利用Mashup服务可以为雇员提供对某一零部件的维修、定制和保养记录的访问,并将6种数据源集成在一起l房地产经纪公司利用Mashup将来自CRM(客户关系管理)系统的客户数据集成在经纪人电子邮件中,使他们可以通过电子邮件警报来查看当前的财产匹配报告 企业级Mashup(2)l企业企业现状现状l公司必须将许多原本并不能很好彼此共存的管理系统和应用程序拼凑到一起。DBMS、内容管理系统、数据挖掘包和工作流系统都可以购买,但该公司必须自行开发集成软件以集成它们 .每当增加了新的数据源或信息必须流转到新

16、的目标时,就必须扩展客户自制的解决方案l即时应用的出现使得利用企业信息架构之外的信息成为新的需求(Email, Presentations and Documents, External Data (Web), Spreadsheets, Decision Support Datasets)l企业企业需求需求l一个健壮的平台突破存在于 DBMS、内容管理系统、中间层高速缓存和数据仓库之间的界限,提供所有这些服务的统一视图的平台 l对效率和易用性提出了新的要求,提出了用“assembly”的思想来代替“programming”企业即时应用(例)lA salesperson needs to ma

17、ke a call on a prospect lHow much did we sell to the customer in the last 5 quarters?lWhat problems they have been having with our staff?lSome personal informationlA CFO has to meet his CEO the next daylEvery one of his finance has sent him a presentation containing their financial picture in a spre

18、adsheet Research Agenda(例)http:/(Zipcode) edc.usgs.gov/ (Geocode = Latitude/Longitude) (Geocode = Latitude/Longitude) http:/(HUC = Hydrological Unit Code) http:/Pete, 是Florida 的一名保险经纪。他看见了一则新闻报道(风暴灾害). 那么这场风暴给公司带来了多大的灾害呢,需要评估。他需要递交一份灾害损失分析报告。Research Agenda(例)Mashup SearchReportStandardizestandardiz

19、epolicy XLSScreen ScrapingStandardizationResearch Agenda(1-1)lPeter怎么创建满足他需求的Mashup?lStep:l找到现存的可利用的Mashup;l表达自己的需求;l构建自己的Mashup;lCriterion:l容易使用l表达力强l“do deep research and build deep technology, but make the job of application writer much easier!”Research Agenda(1-2)l1. Peter如何找到现存的可利用的Mashup?l 是动态

20、生成的AJAX 网页(由另一个Mashup应用提供的)l有没有这样的一种search engine,能够使得Peter通过键入查询 “Flood Levels Louisiana”来返回结果?l这个问题有点类似于deep web 中数据源搜索的问题,但是不如deep web数据源的特点好把握,特别是这种查询需要理解mashup的逻辑。Research Agenda(1-3)l2. Peter如何构建他自己的mashup?lPeter他只是一个保险经纪,不是一个Java script专家,他也不懂PHP/Java/Ruby这些编程语言;l甚至如果他找到的这个mashup对外不提供API,那么还需

21、要自己构建屏幕抓取逻辑;l面对这些最普通的需求者,如何给他们一个怎样良好的平台构建自己的应用呢?Research Agenda(1-4)SimplicityProcedural CodeProceduralCodeamount address); / Check whether this policy affected foreach ($zoneArr as $zone) if ($zone = $policyZone) / This policy carries a high risk. / Insert into high risk array $riskArr = $policy; /

22、 Send email to manager for high risk policiessendEmail(, High risk policies, $riskArr);?Research Agenda(1-4)Simplicity, for $i in url(“file:/policies/myclients.xsl”) for $j in ”) where $i/amount 250000 and $i/address in $j/zone return $i ); Declarative QueriesResearch Agenda(1-4)SimplicityGUIs, Spre

23、adsheets, WikisStrikeIronResearch Agenda(1-5)l帮助Peter实现这种企业的即时应用还有更简单的方式吗?l当Peter搜索“flood levels for zipcodes 33101, 34106, etc.”的时候,整个Mashup能自动构建吗?l自动发现和query相关的,能帮助回答query的若干资源;l要在这些资源间进行类似join的一些mashup的操作等l可参考 1996 VLDB Querying Heterogeneous Information Sources Using Source Descriptions Q:Get th

24、e price and reviews of sports cars for sale that were manufactured no earlier than 1992.PLAN 1:Source 1 JOIN Source 5PLAN 2:Source 2 JOIN Source 5 Source 1,SELECT Source 2, Source 5Research Agenda(2-1)l如何进行Mashup中的信息集成?l“semantic” & “unstructured data” (a column in personal document. maybe customers

25、 name)lHelped by:l首先,在解决semantic问题上有很多相关的研究领域和大量的工作;l企业中越来越重视元数据信息的管理;l可用的Standardizing服务越来越多;l: or lMapped Male and M and Mr onto 1lDeriving a new calculated value lMicroformats也被越来越多地被使用 l在HTML或XHTML网页中表达semantic,以便语义的抽取lJoe Blow 604-555-1234Research Agenda(2-2)l如何进行Mashup中的信息集成?l“semantic” & “uns

26、tructured data”l“ Everybody wants to run analytics on unstructured data, and create structured data, and then we are back in our favorite world. ” lMashup的企业级应用面临不同于以往我们考虑的数据抽取问题。l假使我们要在一个structured data的电话号码这一列和另一个unstructured data的电话号码信息上进行连接操作,那么:Research Agenda(2-3)Interpreted asReturn emails th

27、at contain the keywords “beineke” and phoneConventional Search要在要在Email中中查Beineke的的电话号号码Research Agenda(2-3)Interpreted asReturn emails that contain the keywords “beineke” and phoneConventional Search避免避免这种混淆引种混淆引入入错误Dear Owen, One thing I forgot to add in my previous mail (re: confirmationNumber 29

28、5).If, for whatever reason you are unable to reach me, my co-authorShivakumar Vaithyanathan will be reachable at 410.555.1212.Thank YouPhil Beineke Research Agenda(2-3)PresidentvisitsshrineBushinIsraelLocated AtGov OfficialArg2:LocationCountryTitlePersonArg1:EntityPPVPNPParts of SpeechAnnotatorNamed

29、 EntityAnnotatorRelationship Annotator文本解析仅在关键词匹配的水平上是不够的A Intranet Mashup Fabric XML/Atom/RSS FeedHTMLWeb ServicesWeb PagesXML/Atom/RSS FeedsDB/FilesMAFIAPresentationIngestionAugmentationFusionUnionStandardizationTransformationFeed GenerationScreen ScrapingWeb ServicesLightweight SemanticsExternal

30、Data ServicesOutlinel1. Mashup的定义l2. Mashup的分类l3. Mashup的架构l4. 企业级Mashup及引出的研究问题l5. Summary Summary(an interesting quotes)l We know we dont have a corner on creativity. There are creative people all around the world, hundreds of millions of them, and they are going to think of things to do with our

31、basic platform that we didnt think of. So the mashup stuff is a wonderful way of allowing people to find new ways of applying the basic infrastructures were propagating. This will turn out to be a major source of ideas. SummarylMashup 是一种令人兴奋的交互式 Web 应用程序,它利用了从外部数据源检索到的内容来创建全新的创新服务。l它们具有第二代 Web 应用程序的特点,也称为 info 2.0。 l新的应用需求带给我们新的挑战,也存在着一些值得研究的问题,最终目的是提供易用的有效的“组装”Mashup的平台或工具。Q & A

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号