精华内容
下载资源
问答
  • 市场的驱动因素也骤然发生变化,记得在2月底科技股大跌的时候,大家都在担心一个事情,随着年报和一季度业绩的发布,部分科技公司肯定会受到考验,大多数公司的股价是无法支撑其比较高的股价,但是目前一季度报表和...
    54aaefa066feadd15f3bf82d62fc4b76.png

    一季度报结束了,市场的驱动因素也骤然发生变化,记得在2月底科技股大跌的时候,大家都在担心一个事情,随着年报和一季度业绩的发布,部分科技公司肯定会受到考验,大多数公司的股价是无法支撑其比较高的股价,但是目前一季度报表和2019年年报结束了,从发布的数据看,在疫情影响那么严重的情形下,部分科技股的业绩并没有受到多大的影响,反而是高增长的。

    你比如说做苹果耳机的立讯精密一季度归属上市公司股东的净利润比去年同期增长接近60%,并且预计上半年的利润也会增长60%。还有半导体领域的晶方科技一季度利润同比增长17倍,如华天科技、蓝思科技、长电科技、兆易创新等都出现业绩的大幅度增长。

    其实科技股自从2月底部见顶以来,经过持续快速下跌之后,目前一直在相对低位徘徊整理,也有人曾经问过我,科技股还有没有下跌空间,因为最近一段时间我也一直在关注科技股的动向,等的就是整个一季度报表结束后,看看科技股的整体业绩情况如何,在一季度市场比较困难的时候,科技股的业绩竟然能大幅度增长,说明这个行业的确成为了朝阳行业,也能持续的给经济增长带来动力。

    这就是说科技股能不能在目前的位置支撑住,完全是看业绩,今天市场的大幅度上涨实际上体现的就是科技股的带动作用,而驱动和催化因素还是科技股的业绩普遍出现增长。在当前注册制度来临的时刻,业绩才是王道,只有持续增长的业绩才是推动股价向上的唯一逻辑,今天指数能够大涨完全是靠科技股的爆发,极大的吸引了场外的增量资金,毕竟目前科技股的位置处在一个相对低位,只有新增资金才会去狙击。

    从下午15点收盘后的情况看,半导体指数上涨幅度达到了7%,应该说这是近期以来涨幅最大的一天,因为科技股的参与大涨,今天沪市的成交金额也放大到了接近2800亿,总体感觉资金面比前期有了积极的变化,而这是A股向好的重要信号。

    除了科技股盘中还有一个逻辑,那就是新能源车概念,今天凌晨特斯拉发布了一季度业绩,也是在疫情影响较为严重的情形下营业收入同比增长了32%,净利润去年同期的时候亏损7亿美元,市场原来预期的是今年一季度的亏损会减少到2亿美元,而实际特斯拉的净利润达到了1600万美元,可以说这个盈利非常不错,是特斯拉首次在一季度出现盈利的状况。

    最近一个月特斯拉的股价涨幅达到了130%,在不断降价的情形下特斯拉的业绩出现逆势增长是值得思考的,这或许是国内车企该思考的问题,也是未来新能源汽车发展的大势所趋,正是受到这种逻辑的推动,今天新能源指数大涨了5%,与此相关的公司涨幅基本都在5%左右,可以说新能源汽车概念跟科技股一样,也都是处在低位的品种,今天能大涨也是受到了场外增量资金的青睐。

    应该说沪指全天大涨了37点,是科技股和新能源两大上涨逻辑的推动,毕竟这两个概念前期的调整都相对比较充分,今天才开始有点放量走稳的意思,我估计在节后还会有一定的延续性。

    展开全文
  • 在预警机、无人机、电子干扰、防空导弹、地面侦察的配合与支持,以军是在用一个体系打对方的一个个目标,自然所向披靡。 上次说到,今天的在线营销和广告优化,也呈现出这样的趋势:对于转化发生在线上的客户来说...

    421c4e249d24fab6807fdaadfc570d60.png

    1982年的贝卡谷地空战,以色列战机面对叙利亚战机,打出了82:0这样骇人听闻的战绩。如此悬殊的比分,原因众说纷纭,不过有一点为大家公认:以军的战机,并不是一个人在战斗。在预警机、无人机、电子干扰、防空导弹、地面侦察的配合与支持下,以军是在用一个体系打对方的一个个目标,自然所向披靡。

    上次说到,今天的在线营销和广告优化,也呈现出这样的趋势:对于转化发生在线上的客户来说,在成熟的数据和产品体系支持下做营销,比起以往仅仅靠优化师单打独斗,正表现出越来越强的优势。

    正好,腾讯广告副总裁、老朋友蒋杰邀请我参加了今年的“2020Tencent IN 腾讯智慧营销峰会 “。在会上,蒋杰分享了腾讯广告这一年,是如何在产品技术层面上聚焦,释能全链路数字化营销的。

    听完他的演讲,又约腾讯广告行业销售运营副总经理孙单丹深入聊了聊。我突然意识到,可以以腾讯广告的产品体系为例,来谈谈这方面的业界趋势和最新进展。

    从流量到增长的基础设施

    移动互联网发展到今天,大平台已经为用户建立了一个接近闭环的场景。而腾讯广告在这一点上尤为独特,正如腾讯公司高级副总裁林璟骅所说:“腾讯是社交场、内容场,更是交易场。“对于目前面临数字化转型的企业来说,腾讯所构建的“交易场”,首先能够帮助企业依托腾讯生态的公域进行营销触达,随后配合小程序、公众号等腾讯系资源,搭建一条完整的交易链路;特别是由于在微信内支付时,无需唤醒App,这会带来转化率上的明显优势。同时,企业还能借助腾讯广告提供的数据能力和工具服务,将公域流量转化为自有私域,实现数字资产的沉淀管理。

    这一点,可以从数据上得到佐证:去年,小程序内的交易额达到了8000亿,而且增速相当快。

    商业闭环将线上线下贯通起来,甚至都能够集合在一个平台里,给营销带来了重要的升级机会:从原来的买卖流量,转化到今天的驱动增长。换言之,现在媒体方要直接搞定客户的商业目标,以全链路数字化为导向,而不是引流过去就撒手不管了。打个比方,你就能理解此趋势了:前些年火爆的那批流量明星,如今已经被带货明星抢去了风头。

    客户需求确实在朝着这个方向快速演进。孙单丹给我看了这样一张图,她们的客户中,有深度优化目标的广告消耗,已经从两年前几乎没有增长到了今天的超过60%。

    e30c9a759d93c6419f82531710a355f6.png

    驱动增长的数据体系

    要驱动增长,就离不开前文所说的“数据和产品体系“。而这里的第一个痛点,就在数据层面:客户拥有的数据触点多元而分散,客户建设完备数据体系的能力有时又不强,导致增长的发动机燃料不足;与此同时,客户也在关注如何在公域中更好地发现目标人群,将这些人有效吸引沉淀为自己的数据资产。

    如果回顾腾讯广告为客户提供的数据工具和服务,往往只是引导客户基于人群包进行投放。可是进到客户的生意内部,就会发现无论是电商、游戏还是网服,都有很多有价值的第一方数据。对此,蒋杰重点介绍了腾讯广告在数据管理平台(DMP)方面的产品进展。

    有趣的是,这并非传统意义上的媒体方DMP,而更像是为客户打造了一个第一方DMP,本质上可以理解为现在流行的CDP(客户数据平台)。什么意思呢?蒋杰表示,一方面,在合法授权的前提下,客户可以基于自己的第一方数据,借助腾讯广告DMP开放的数据能力,更好地了解各触点场景下的自有人群特征。另一方面,你也可以把腾讯广告DMP理解为是给客户在营销层面提供一种私有云数据服务:数据上云后,客户既是数据所有者,也是数据管理者。客户可以基于自有数据去分析洞察自有人群,也可以基于腾讯广告开放的数据能力,用自己的算法定制人群标签,并且通过腾讯广告DMP在腾讯的广告系统里进行定向投放。

    举个例子,像快手这样建模能力很强的大客户,自己的算法对用户次日留存的预测更准确,也就比简单的人群包效果好很多。要知道,没有人比客户更了解客户自己。但是巧妇难为无米之炊,快手强大的技术能力也需要依托合适的媒体方提供的数据能力,才能在更大的池子里面找到自己的受众。

    线上商业闭环和客户数据能力的加强,为“驱动增长”的营销趋势,准备好了基础设施。

    可是,客户各村有各村的高招,游戏、电商、自媒体,商业模式怎么挣钱都巧妙不同。要实实在在驱动增长,需要对客户类型做些规约,找到几个通用的模式。

    孙单丹说,在网服行业,虽然客户商业模式差别很大,不过大致可以分成内购变现(In-App Purchases, IAP)和广告变现(In-App Advertising, IAA)两种模式。这两种模式的核心收益方式如下图所示。

    a8c36f0bf6d58757befa3dc06ba1def2.png

    IAA客户增长的关键不仅要提高留存和活跃时长,也要关注用户分层,但是分层标准是看不同的留存率和变现价值,变现手段可以由广告平台来提供。而IAP客户则是按照付费潜力做用户分层。这时平台提供的能力,就是要帮他找到潜在付费用户。

    以阅读行业为例,免费和付费用户之间的重合度,大概只有6%—8%,因此这两类客户的增长需求大相径庭。腾讯广告所做的,是为广告和内购变现这两类客户找到合适的人群,同时为广告变现客户提供变现的能力。

    如何驱动增长的规模

    那么增长这件事,又有哪些关键因素呢?其实,可以进一步把它分解成增长的”规模“和”质量“。又有哪些产品化的手段可以提升这两个指标呢?对此,我也在蒋杰的讲演中得到了不少启发。

    先来看增长的规模。蒋杰在会上也提及,腾讯广告在上半年做的重点工作就是统一能力,降低门槛。基于腾讯广告投放管理平台(ADQ投放端),腾讯广告在统一投放、统一流量,以及统一能力上实现了全面升级。同时,对创意的规格也做了大量的精简。如此一来,客户用比原来少得多的创意制作和人力投放成本,就能实现对腾讯全流量的一站式触达,这大大提升了增长的规模和效率。

    孙单丹告诉我,因为这样的整合,有许多客户的投放量有了35%的上升,而相应的运营成本甚至有所下降。

    另外要强调一下,整合后的Marketing API,对客户投放的产品化至关重要。目前,60%的游戏客户,和80%的电商客户,主要都在使用API投放和管理广告。可以说在不久的将来,充分利用API几乎是必须的选择,因为人工投放在效率和多样性方面太受限了,在竞争的起跑线上就会输掉。这就好比用开车替代了步行,效率的提升是相当可观的。

    关于增长的规模,“快速起量”的产品方向也值得关注。我们知道,起量的关键是需要积累足够的转化数据。而“快速起量“功能,会在开始对客户的出价进行补贴,这样可以快速渡过学习期。

    如何驱动增长的质量

    除了规模,增长的质量可能更加重要,而这个问题解决起来难度更大,也更需要产品化的手段。

    这里主要有两方面的痛点:一是客户与广告平台对质量的理解不一致;二是要向用户推广多样化的商品/内容,而非生硬的整体。

    关于第一点,举个例子:某广告主在推广其极速版App时,对新客的要求,与通常理解差异很大:那些既没安装过主App,也没安装过极速版的用户才算新客。显然,这样的增长目标,仅靠平台方是很难评估和优化的。

    在腾讯广告的产品体系中,是用RTA(Realtime API)来解决这个问题的。也就是在广告决策时,实时向客户查询当前用户是否在他的目标人群中。目前使用了RTA的客户,平均拉新有效率由原来的50%提升到了90%左右。

    0d6dc80731273145debab90e412ca904.png

    更进一步,除了选择目标用户,有些客户能评估用户的价值,比如游戏的用户生命周期价值(Life Time Value, LTV)。因此,孙单丹也提到,在未来的RTA中,会探索让客户同时给出对该用户的价值评估,进一步提高增长质量。这是个有趣的产品方向,有点像传统RTB模式的CPM出价变成了oCPM出价,把智能投放与程序化的产品功能结合起来了。

    关于增长质量的另一个问题,打通客户自有的内容/商品场景。我们先来解释一下。有些客户,本身有丰富的内容体系,比如综合电商、新闻、短视频等。显然,用户感兴趣的更多是这些具体内容,而非客户本身。如果在推广时,把广告绑定到内容上,并利用人群画像找到其兴趣所在,获客质量会大大提升。此外,用户下载了客户的App以后,也应该在场景上创造与广告的连续性。

    这显然要通过产品手段才能做到。这方面有什么样的产品功能和趋势呢?

    比如说,某电商客户本身有搜索和推荐功能,而且有丰富的商品库。那么将人群标签同步给客户,返回相关的商品装配在创意里,这样用户看到的广告,本身就是他的兴趣点了。

    用户下载了客户的App后,还要有产品接口通知客户,当初用户在广告上看到的是商品A,这 样客户的App在第一次被打开时,就可以直接显示商品A。

    这就是腾讯广告的“商品广告”方案。使用了商品广告方案做增长的客户,效果普遍可以提升数倍,显然大大改善了增长的质量。

    116a0c5a193d8e5e23036e166bbb7972.png

    这样一来,客户推广的对象就不再是自己呆板的App形象,而是背后成千上万的商品和内容,而且推广的场景和用户的使用场景也无缝地衔接起来了,增长的质量自然也会有大幅的提升。我认为,这应该是将来内容型客户推广的标配方法。

    @-@

    看起来,营销正在“数据和产品体系“支撑下,朝着”高效驱动增长“的方向演进。在这一趋势下,对于客户产品体系建设,我有如下几点建议:

    一、完善内部数据体系,并且基于媒体方提供的数据服务,打造自有的第一方数据能力,实现数据资产的沉淀和管理;

    二、充分利用API,将广告投放和优化尽量自动化、规模化。

    三、配合RTA、商品广告这类产品功能,建设“产品体系支持下“的优化能力,更彻底地驱动增长,而非流量。

    我也期待着在不久的将来,数字世界的客户和优化师可以鸟枪换炮,利用数据和计算支撑下的完备产品体系,大大提升在线营销的效率和回报。

    展开全文
  • 但是这句话到底是什么意思?为什么我们突然间开始关注统计学和数据? 在这篇文章里,我会检视数据科学的各个方面,技术、企业和独特技能集合。 互联网上充斥着“数据驱动的应用”。几乎任何的电子商务应用都.....

    据哈尔•瓦里安(Hal Varian)说,统计学家是下一个性感的工作。五年前,在《什么是Web 2.0》里蒂姆•奥莱利(Tim O’Reilly)说“数据是下一个Intel Inside”。但是这句话到底是什么意思?为什么我们突然间开始关注统计学和数据?

     

    在这篇文章里,我会检视数据科学的各个方面,技术、企业和独特技能集合。

     

    互联网上充斥着“数据驱动的应用”。几乎任何的电子商务应用都是数据驱动的应用。这里面前端的页面靠背后的数据库来支持,它们两者之间靠中间件来连接其他的数据库和数据服务(信用卡公司、银行等等)。但是仅仅使用数据并不是我们所说的真正的“数据科学”。一个数据应用从数据里获取价值,同时创造更多的数据作为产出。它不只是带有数据的一个应用,它就是一个数据产品。而数据科学则是能创建这样的数据产品。

     

    互联网上早期的数据产品之一就是CDDB数据库。CDDB数据库的开发者意识到基于CD(音频光盘)里面的每首歌曲的确切长度,任何CD都有一个唯一的数字签名。Gracenote公司创建了一个数据库,记录着歌曲的长度,并和专辑的元数据(歌曲名称、歌手和专辑名称)数据库关联。如果你曾经使用iTunes来找CD,你就是在使用这个数据库服务。iTunes会先获取每首歌的长度,然后发给CDDB,从而得到歌曲的名称。如果你有一些CD(比如你自制的CD)在数据库里没有记录,你也可以在CDDB里创造一个无名专辑的题目。尽管看起来很简单,但这是革命性的。CDDB把音乐看成是数据,而不仅仅是声音,并从中创造了新的价值。他们的商业模式和传统的销售音乐、共享音乐或者分析音乐口味等业务的模式截然不同,尽管这些业务也可以是“数据产品”。CDDB完全是视音乐的问题为数据的问题。

     

    谷歌是创造数据产品的专家,这里列几个例子。

    谷歌的创新是在于其意识到搜索引擎可以使用入链接而不是网页上的文字。谷歌的PageRank算法是最早一批使用网页以外的数据的算法之一,特别是网页的入链接数,即其他网页指向某网页的数量。记录链接让谷歌的搜索引擎比其他的引擎更好,而PageRank则是谷歌的成功因素中非常关键的一条。

    拼写检查不是一个非常难的任务,但是通过在用户输入搜索关键词时,向错误拼写推荐正确的用法并查看用户是如何回应推荐,谷歌让拼写检查的准确率大幅提高。他们还建立起了常见错误拼写的字典,其中还包括对应的正确拼写以及错误拼写常见的上下文。

    语音识别也是一个非常艰难的任务,而且也还没有完全被解决。但谷歌通过使用自己收集的语音数据,已经开始了针对这个难题的一个宏大的尝试。并已把语音搜索集成到了核心搜索引擎里。

    在2009年猪流感的传播期,谷歌能够通过跟踪与流感相关的搜索来跟踪这次猪流感的爆发和传播过程。

     

    <p style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; clear: both; min-height: 1em;"><span style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important; font-size: 14px;"><strong style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important;">通过分析搜索跟流感相关的用户在不同地区的情况,谷歌能够比美国国家疾病控制中心提前两周发现猪流感的爆发和传播趋势。</strong></span></p>

     

    谷歌并不是唯一一家知道如何使用数据的公司。脸书和领英都是用朋友关系来建议用户他们可能认识或应该认识的其他人。亚马逊会保存你的搜素关键词,并使用别人的搜索词来关联你的搜索,从而能令人惊讶地做出恰当的商品推荐。这些推荐就是数据产品,能帮助推进亚马逊的传统的零售业务。所有这些都是因为亚马逊明白书不仅仅是书,而相机也不仅仅是相机,用户也不仅仅就是一个用户。用户会产生一连串“数据排气”,挖据它并使用它,那么相机就变成了一堆数据可以用来和用户的行为进行关联。每次用户访问他们的网站就会留下数据。

     

    把所有这些应用联系到一起的纽带就是从用户那里采集的数据来提供附加价值。无论这个数据是搜索关键词、语音样本或者产品评价,现在用户已经成为他们所使用的产品的反馈环中重要的一环。这就是数据科学的开端。

     

    在过去的几年里,可用的数据量呈爆炸性的增长。不管是网页日志数据、推特流、在线交易数据、“公民科学”、传感器数据、政府数据或其他什么数据,现在找到数据已经不再是问题,如何使用这些数据才是关键。不仅仅是企业在使用它自己的数据或者用户贡献的数据。越来越常见的是把来自多个数据源的数据进行“聚合”。《在R里进行数据聚合》分析了费城郡的房屋抵押赎回权的情况。它从郡长办公室获得了房屋抵押赎回权的公开记录,抽取了其中的地址信息,再使用雅虎把地址信息转换成了经纬度。然后使用这些地理位置信息把房屋抵押赎回权的情况绘制在地图上(另外一个数据源)。再把它们按社区、房屋估值、社区人均收入和其他社会—-经济因素进行分组。

     

    现在每个企业、创业公司、非营利组织或项目网站,当他们想吸引某个社群的时候所面临的问题是,如何有效的使用数据。不仅仅是他们自己的数据,还包括所有可用的和相关的数据。有效的使用数据需要与传统的统计不同的技能。传统的穿职业西装的精算师们进行着神秘但其实是早已明确定义的分析。而数据科学与统计的不同是数据科学是一种全盘考虑的方法。我们越来越多的在非正规的渠道里找到数据,数据科学正随着数据的不断收集、把数据转换为可处理的形式、让数据自己讲故事以及把故事展现给别人不断演进。

     

    为了能感受到什么样的技术是数据科学需要的,让我们首先看看数据的生命周期:数据从哪里来,如何使用,以及数据到哪里去。

     

    数据从哪里来

    数据无处不在,政府、网站、商业伙伴、甚至你自己的身体。虽然我们不是完全淹没在数据的海洋里,但可以看到几乎所有的东西都可以(甚至已经)被测量了。在O’Reilly传媒公司,我们经常会把来自Nielsen BookScan的行业数据和我们自己的销售数据、公开的亚马逊数据、甚至就业数据组合起来研究出版行业发生了什么。一些网站,比如Infochimps和Factual,可以提供很多大型数据集的连接,包括天气数据、MySpace的活动流数据、体育活动比赛记录等。Factual网站还招募用户来更新和改进它的数据集。这些数据集覆盖了从内分泌学家到徒步小道等的广泛内容。

     

    很多我们现在所用的数据都是Web 2.0的产物,也遵守摩尔定律。Web让人们花更多的时间在线,同时也留下了他们的浏览轨迹。移动端应用则留下了更丰富的数据轨迹,因为很多应用都被标注了地理位置信息或附带着音频和视频。这些数据都可以被挖据。结帐点设备和经常购物者购物卡使得获取消费者的所有交易信息(不光是在线信息)成为可能。如果我们不能存储这些数据,那么所有这些数据就将没有用处。这里就是摩尔定律起作用的地方。自80年代早期开始,处理器的速度就从10Mhz增加到了3.6GHz,增加了360倍(这还没考虑处理位数和核数的增加)。但是我们看到存储能力的增加则更为巨大。内存价格从1000美元每兆字节降到25美元每吉字节,几乎是40000倍的降低。这还没考虑内存尺寸的减少和速途的增加。日立公司在1982年制造了第一个吉字节的硬盘,重大概250磅。现在千吉字节级别的硬盘已经是普通消费品,而32吉字节的微存储卡只有半克重。无论是每克重的比特数、每美元比特数或者总存储量,存储能力的提升已经超过了CPU速度的增幅。

     

    摩尔定律应用于数据的重要性不仅是极客的技巧。数据的增长总是能填充满你的存储。硬盘容量越大,也就能找到更多的数据把它填满。浏览网页后留下的“数据排气”、在脸书上添加某人为朋友或是在本地超市买东西,这些数据都被仔细的收集下来并进行分析。数据存储的增加就要求有更精致的分析来使用这些数据。这就是数据科学的基石。

     

    那么,我们怎么能让数据有用?任何数据分析项目的第一步都是“数据调节”,即把数据变换成有用的状态。我们已经看到了很多数据的格式都是易用的:Atom数据发布、网络服务业务、微格式和其他的新技术使得数据可以直接被机器消费。但是老式的“屏幕抓取”方法并没有消亡,而且也不会消亡。很多“非正规”数据源来的数据都是很混乱的。他们都不是很好构建的XML文件(并带有所有的元数据)。在《在R里做数据聚合》里使用的房屋抵押赎回权数据都是发布在费城郡长办公司的网站上。这些数据都是HTML文件,很可能是从某个数据表格文件里自动生成的。如果曾经见过这些由Excel生产的HTML文件,你就知道处理这个会是很有趣的。

     

    数据调节也包括用类似Beautiful Soup这样的工具来清理混乱的HTML文件,用自然语言处理技术来分析英语和其他语言的纯文本,或用人工来干苦活和脏活。你有可能会处理一系列数据源,而他们各自的格式都不同。如果能有一个标准的工具集来处理这些就太好了,可实际上这是不现实的。为了做数据调节,你需要准备好处理任何的数据格式,并愿意使用任何的工具,从原始的Unix工具(如awk)到XML语义分析器和机器学习库。脚本语言,比如Perl和Python,就很重要了。

     

    一旦你分析了数据,就可以开始思考数据的质量问题了。数据经常会有缺失和不一致。如果数据缺失了,你是要简单地忽略他们吗?这也不总是可以的。如果出现数据不一致,你是否要决定某些表现不好的数据(是设备出错了)是错的,或者这些不一致的数据恰恰是在讲述它自己的故事,而这就更有趣。有报道说,臭氧层消耗的发现被延误了,因为自动数据收集工具丢弃了那些数值过低的读数1。在数据科学里,你能有的经常是你将会拿到的。通常你不可能得到更好的数据,你可能没有其他的选择除了使用你手头有的数据。

     

    如果研究的问题涉及到人类的语言,那理解数据就又给问题增加了一个维度。O’Reilly的数据分析组的主管罗杰.马古拉斯(Roger Magoulas)最近在为苹果公司招聘公告列表搜寻数据库,这需要有地理位置技能。这听起来像是个简单任务,这里的坑就是从很多招聘公告列表里去发现真正的“苹果”的工作,而不是那些大量增加的苹果附属的工业企业。为了能更好的完成这个任务,就需要能理解一个招聘公告的语法结构,即你需要能解析英语语义。这样的问题已经变的越来越常见。比如你试着去用谷歌趋势(Google Trend)去查看Cassandra数据库或者Python语言正在发生什么,你就能感受到这个问题了。因为谷歌已经为很多关于大型蛇类的网站建立了索引。歧义消除从来都不是一个简单的任务,但是类似于Natural Language Toolkit这样的库可以让这个工作简单一点。

     

    当自然语言处理失效时,你可以用人的智能来代替人工智能。这就是类似亚马逊的Mechanical Turk这样的业务所服务的目标。如果你能把你的任务分解成非常多的容易表述子任务,你就可以使用Mechanical Turk的市场来招募很便宜的工人。例如,你想查看招聘公告列表并发现哪些是真正来自苹果公司,你可以招募工人来做分类,价格大概是一美分一个公告。如果你已经把这个列表的数目降到一万条有苹果字样的公告,那么只要付100美元就可以让人工来分类了。

     

    处理海量的数据

    我们已经听说了很多的“大数据”,但是“大”只是转移注意力的话。石油公司、电信公司和其他数据密集型的行业早就已经在相当长的时间里拥有了海量的数据集。伴随着存储能力的持续增长,今天的“大数据”肯定会变成明天的“中数据”或者日后的“小数据”。我所听到的最有意义的定义是:“大数据”是指数据的量本身成为问题的一部分。我们讨论数据量的问题可从吉字节级到千吉字节不等,在某些时刻,传统的数据处理技术已经不能胜任了。

     

    面对这样不同的数据,我们正试图做什么?根据杰夫.哈默巴赫尔(Jeff Hammebacher)2所说,我们正在构建信息平台或数据空间。信息平台和传统的数据仓库类似,但不同。他们暴露了很丰富的API(应用程序接口),并被设计为用来支持探索和分析理解这些数据,而不是只为传统的分析和报表。这些平台接收所有的数据格式,包括最混乱的那些,他们的数据模式随着对数据理解的改变而不断进化。

     

    大部分构建数据平台的企业都发现很有必要超越传统的关系型数据库。传统的关系型数据库系统在到一定数据量级后开始效率降低,甚至无效。管理在一群数据库服务器间分享和复制数据是很困难的,且很慢。同时关系型数据库需要预先定义好数据模式,而这与多数据源的非结构化数据现状是冲突的,因为你甚至都不知道什么是最重要的直到你开始分析数据。关系型数据库被设计来满足一致性的,这是为了支持复杂的交易过程,以便于当交易过程中的任何一个环节出错时,可以很方便的回滚。尽管严格一致性对于很多应用是很重要的,但这对于我们这里所谈论的分析任务并不是完全必须的。你真的会在乎是有1010个或者1012个推特的关注者?精确是很诱人的,但是对于绝大部分金融领域以外的数据驱动的应用,精确是个伪命题。大部分数据分析都是比较性的,如果你想知道是否东欧地区的销售增长比南欧地区快,你并不关心这个差别是5.92%年增长,还是5.93%。

     

    为了能有效地存储数据,出现了不少新型的数据库。他们经常被叫做NoSQL数据库,或非关系型(Non-Relational)数据库,尽管两个名词都没什么用。这些名词把本质上完全不同的产品归到一类里,但其实只说明了他们不是什么。很多的这些数据库都是谷歌的BigTable和亚马逊的Dynamo的后代。它们被设计来实现分布于多节点,并提供“最终一致性”而不是绝对一致性,同时也支持非常灵活的数据模式。尽管有多达二十个这样的数据库产品,大部分都是开源的,只有少数几个已经在业界确立了他们的地位。

    Cassandra:由脸书开发,已经在推特、Rackspace、Reddit和其他大型网站的生产系统上使用。Cassandra被设计成高性能、高可靠性和可自动复制。它有一个非常灵活的数据模型。创业公司Riptano提供对它的商业化支持。

    HBase:是基于谷歌的BigTable,并变成Apache Hadoop的一个子项目。设计用于极大的数据库(超过十亿行、百万列),分布式存储于上千个节点。它跟Hadoop一起,可由Cloudera公司提供商业化的支持。

     

    存储数据只是构建数据平台的一部分,数据的价值只有在被使用后才能出现,而巨大的数据量又带来了新的计算难题。谷歌让MapReduce方法变得流行。MapReduce方法本质上是一种分而治之的策略,用以处理在一个超大的集群上的超级大的问题。在“Map”阶段,一个单一的计算任务被分成了众多的相同的子任务,然后这些子任务被分配到很多的处理节点上运行。子任务产生的中间结果随后被汇聚,交给Reduce任务们来处理。事后看,MapReduce任务似乎是对于谷歌的最大的问题(建立大的搜索引擎)的一个显而易见的解决方案。很容易把一个搜索分布到上千个节点里,然后在把结果汇聚成一个单一的答案。没有那么显而易见的是MapReduce已被证明对于很多大型数据的问题都可用,不管是搜索还是机器学习。

     

    最流行的MapReduce的开源实现是Hadoop项目。雅虎宣传他们已经构建了世界上最大的生产Hadoop集群,有一万个CPU内核,运行在Linux上。很多Hadoop开发者也认可了Cloudera的商业版Hadoop。亚马逊的Elastic MapReduce是在亚马逊的EC2集群上提供了预先配置好的Hadoop镜像文件,这让部署Hadoop非常简单,也不用客户自己购买Linux服务器。客户可以按需增加和减少处理器,而只需按使用时间来付费。

     

    Hadoop已经远远超越了单纯的MapReduce的实现,他是一个数据平台的核心部件。它包括了HDFS,一个保证高性能和可靠性需求的超大数据分布式文件系统;HBase数据库;Hive,一个可以让开发者使用类SQL的查询来探索Hadoop数据的工具;一个叫Pig的高级数据流语言;以及其他很多的部件。如果有任何的东西可以叫一站式信息平台,Hadoop就是一个。

     

    Hadoop被设计成了可以支持“敏捷”数据分析。在软件开发领域,“敏捷实践”是与快速产品开发周期、开发者和用户的更紧密的交互、并与测试相关的。传统的数据分析已经被异常长的运行时间所耽搁,一个计算可能在几小时或者几天内都无法完成。但是Hadoop(特别是Elastic MapReduce)让构建一个可以处理超大数据集的集群成为可能。快速的计算使得测试不同的假设、不同的数据集和不同的算法成为可能。这就让跟客户的沟通变的容易了,因为可以快速的发现你是否问了正确的问题。同时也让探索那些有趣的可能性成为可能,而不再受限于分析时间了。

     

    Hadoop本质上是一个批处理系统,但是Hadoop在线原型(HOP,Hadoop Online Prototype)是一个实验项目,来应对流计算。HOP在数据到来的时候就处理数据,并以准实时的速度算出中间结果。准实时数据分析可以应用在推特的话题趋势追踪这样的应用里。这样的应用只要求近似实时,比如话题趋势追踪的报表不会需要毫米级的准确度。像推特上的关注者的数目一样,一个“话题趋势”报表也只需要能在五分钟内更新即可,甚至是一小时内。据bit.ly的数据科学家希拉里.梅森(Hillary Mason)所说,也可以先计算很多的变量值,再使用实时MapReduce来计算最近的结果。

     

    机器学习是数据科学家的另外一种重要的工具。我们现在期待网络和移动应用会结合推荐引擎。而构建一个推荐引擎是人工智能问题的精华之一。不用看很多的网页应用,你就能发现分类、错误检测、图像匹配(如在谷歌眼镜和SnapTell里)甚至是人脸识别。一个不动脑子的移动应用可以让你用手机来给某人拍照,然后在用这张照片来在搜索这个人的身份。吴恩达(Andrew Ng)的机器学习课程是斯坦福大学的最流行的计算机课程之一,有着数百名学生(他的这个视频也是强烈推荐的)。

     

    有很多机器学习的库可供使用:Python的PyBrain,Elefant,Java的Weka和Hadoop里的Mahout。谷歌最近刚刚发布他们的预测性分析的API,通过RESTful接口为大众提供了谷歌的机器学习算法的能力。对于计算机视觉,OpenCV则是事实上的标准。

     

    Mechanical Turk也是工具库里的一个重要部分。机器学习几乎总是需要一个“训练集”,即已知结果的数据,供开发和调优应用。Turk就是一个很好的方法来获得训练集。一旦你得到了数据集(可能就是从推特里收集的很多公共图片),你可以用很少的花费来进行人工分类,比如分到不同的列表里,在脸上或者车上画个圈,或者任何你感兴趣的结果。花费几分钱来分类几千条记录是个不错的选择。即使是相对大的工作,也只花费不到几百美元。

     

    尽管我没有强调传统的统计分析,但构建统计模型在任何数据分析里都很重要。据麦克.德里斯科尔(Mike Driscoll),统计是“数据科学的语法”。让数据能一致性的讲故事是很重要的。我们都听说了这个笑话,吃泡菜会死人,因为每个死的人都吃过泡菜。如果你理解关联的意思,你就不会去理会这个笑话。更进一步,很容易可以看到为《R技术手册》做广告使得这本书的销量的转化率比其他书多2%。但需要用统计的结果来判断这个差别是不是够显著,或只是一个随机的波动。数据科学不仅仅只是关于数据的保存,或猜测数据可能的意义,它是关于假定检验和确保来自数据的结论是可信的和可靠的。从传统的商业智能到理解谷歌的拍卖机制,统计在几乎所有的任务里都扮演重要的角色。统计已经成为了一个基本技能。它不是被来自机器学习里的新技术所替代,它是他们的补充。

     

    尽管有很多的商业化统计软件包,但开源的R语言,包括他的丰富的包库CRAN,是非常重要的一个工具。虽然对学计算机的人而言,R是一种奇怪的诡异的语言,但它几乎是提供了一站式的统计工具包。它包括了非常好的图形处理工具,CRAN里包括了非常多的数据解析器,以及针对分布式计算的新的扩展包。如果有一个工具能提供端到端的统计解决方案,R就是。

     

    让数据来讲它自己的故事

    一图或许值千言,或许不值,但一图绝对值千数。很多数据分析算法的问题都是他们仅仅只是产生了一堆数字。为了理解这些数字的意思(它们要说的真实故事),你需要制作好的图表。爱德华.塔夫特(Edward Tufte)的《量化信息的可视化显示》就是数据可视化的经典书籍,也是任何希望从事数据科学的人要看的基础教材。据马丁.瓦滕伯格(Martin Wattenberg,Flowing Media的创始人),可视化对数据调节很重要,如果你想发现数据的质量如何,那就把它画出来。可视化也经常是是数据分析的第一步。希拉里.梅森说当她拿到新的数据后,她会首先画很多的散点图,试图去找到那些有趣的东西。一旦你发现某些数据有价值的线索,就可以继续用更详细的分析来继续了。

     

    有很多软件和工具可以用来制作图表展现数据。GnuPlot是非常有效的一个。R也有很丰富的图表库;凯西.瑞斯和本.弗莱的Processing是最先进的一个,特别是如果你想制作可随时间变化的动画。IBM的Many Eyes里的很多可视化都是完全可以交互的应用。

     

    内森.姚(Nathan Yau)的FlowingData博客是一个很好的地方可以来学习制作可视化。我最喜欢的动画之一是沃尔玛的成长。它里面不仅仅是可视化自己的美学,还有艺术的部分,可以帮助理解数据。它看起来像是身体里的癌症在扩散吗?或是流感在人群里的爆发传播?让数据来说它自己的故事不仅仅是展现结果,它还包括制作连接,连到其他的数据源来证实这些结果。一个成功的零售连锁店的发展和一个传染病的发展类似吗?如果是这样,这是不是给了我们一个新的洞察,理解经济是如何发展的?这个问题我们几年前甚至都不能问。因为没有足够的计算能力,而数据则各自被锁定在各自的环境里,同时能处理这些数据的工具也不成熟。现在类似这样的问题每天都被问出来。

     

    数据科学家

    数据科学要求很多技能,从传统的计算机科学、数学到艺术。杰夫.哈默巴赫尔在描述他在脸书组建的数据科学团队(可能也是面向消费者的网站里的第一个数据科学团队)时说:

     

    在某一天,团队的成员可以在Python里写出多个阶段的数据处理管道,设计一个假设检验的测试,用R来对数据样本所回归分析,为一些数据密集型的产品和服务在Hadoop上设计和实现一种算法。或是就我们分析的结果和其他的成员或部门进行沟通。

     

    哪里去找到这些多才多艺的人哪?按领英的首席科学家DJ.帕蒂尔(DJ Patil)的说法,最好的数据科学家应该是“理科科学家”,特别是物理学家,而不是计算机专业的人员。物理学家一般有很好的数学背景、计算机技能,同时物理学也是一个非常依赖从数据里获得发现的学科。他们必须思考大画面,大问题。如果你花费了很多的科学基金来获取数据,即使数据没有想要的那么清晰,你也不会随意丢弃。你必须要想办法来让数据讲故事。当数据讲的故事不是你所想要它讲的时候,你就需要一些创造性。

     

    科学家也需要知道如何把大问题分解成一些小一点的问题。帕蒂尔描述了在领英创建一些推荐特性的过程。这种任务可能很容易变成一个高光的开发项目,花费几千个人天的开发时间加上几千小时的计算时间来发现领英成员的相互间的关联关系。但是帕蒂尔他们的工作过程却很不一样。他们从一个相对小的项目开始,简单地编程来查看成员的画像并做相应的推荐。问诸如你上过康奈尔大学吗这样的问题,就可以帮助推荐是否成员需要加入康奈尔校友会。然后就可以逐渐地扩展出去。除了查看用户的画像,领英的数据科学家开始查看会员参加过的活动,随后是他们参加的图书馆的读书俱乐部。结果就产生了一个能分析海量数据的有价值的数据产品,但它最初也不是按这个思路设计的。这是一个敏捷地、灵活地过程,逐渐地实现最终的目标,而不是一开始就直接去爬高山。

     

    这就是帕蒂尔所说的“数据柔道”的核心思想。即用一些附带的小问题来解决那些看起来无法解决的大的困难的难题。CDDB就是一个数据柔道的很好的例子,直接分析歌曲音轨来识别音乐是非常难的(尽管不是不可能,例如midomi)。但CDDB的员工创造性地用更好追踪的方法解决了这个问题。基于音轨的长度来计算一个音轨的签名,然后在数据库里搜索这个签名,非常简单直接!

     

     

    并不容易来发现数据科学工作的指标。但是来自O'Reilly研究的数据显示了一个稳定Hadoop和Cassandra招聘公告的逐年增长。这可以算是对“数据科学”总体市场的一个好的表征。本图显示了Cassandra招聘数量的增长和排列Cassandra职位的公司的数量。

     

    创业精神是整个问题的另外重要一块。帕蒂尔对问题“当你准备招聘一个数据科学家的时候,什么样的人你会找?”时的第一反应是“那些你想跟着一起创业的人”。这是一个重要的洞察:我们进入了一个构建于数据上的产品的时代。我们还不知道这些产品是什么,但是我们知道胜出者会是那些能发现这些产品的企业和个人。希拉里.梅森也给出了同样的结论。她作为bit.ly的数据科学家的主要工作就是研究bit.ly所产生的数据,并从中发现如何构建有趣的产品。在尚不成熟的数据行业,没有人试图去制造2012的尼桑Stanza或者Office 2015,相反的,这个行业的从业者都在尽力去发现新产品。除了是物理学家、数学家、程序员和艺术家,他们还是创业者。

     

    数据科学家把创业精神和耐心、愿意逐步地制造数据产品的意愿、探索的能力和能就一个解决方案进行反复迭代的能力结合起来。他们是天生的交叉学科。他们能从所有方面来探索问题,从最初的数据收集、数据调节到得出结论。他们能创造性的找到新的方法来解决问题,同时去回答一个非常宽泛定义的问题:“这里有很多很多的数据,你能从中找到什么?”

     

    未来属于那些能知道如何成功收集和使用数据的企业。谷歌、亚马逊、脸书和领英都已经在利用他们的数据流并形成了他们的核心业务,且获得了成功。他们是先锋,但更新的企业(像bit.ly)正在追随着他们的脚步。无论是挖掘你个人的生物群落,还是从几百万旅游者分享的经验里绘制地图,或者研究人们分享给别人的URL,新一代的生意将会是依靠数据来成功。哈尔.瓦里安的采访里有一段可能没人能记住的引用:

     

    这个能拿到数据的能力—能理解数据、处理数据、从中抽取价值、可视化数据并能和别人交流结果—将会是下一个十年里极度重要的技能。

    展开全文
  •  在probe方式的I2C驱动中的probe函数中经常出现i2c_set_clientdata函数,一直很不解这个函数什么意思,后来查看内核源码,发现了一点大家都知道的秘密。 这是某个I2C设备驱动中的probe函数,选取了部分代码: ...

    在i2c驱动中有很多函数和数据结构,很多一时难以理解,所以写下本文共同学习。

    一、i2c_set_clientdata函数 

           在probe方式的I2C驱动中的probe函数中经常出现i2c_set_clientdata函数,一直很不解这个函数什么意思,后来查看内核源码,发现了一点大家都知道的秘密。偷笑

    这是某个I2C设备驱动中的probe函数,选取了部分代码:

    struct i2c_mydev         //struct i2c_mydev是自定义的设备结构

    {

         struct i2c_client *client;

         ...

    };

    static int xxx_probe(struct i2c_client *client,const struct i2c_device_id *id)
    {

    struct i2c_mydev *dev;            

    ...

    dev->client=client;                           

    i2c_set_clientdata(client, dev);    

    ...

    }

    /*

    client是在板级信息初始化的时候自动创建的设备,将client赋值给dev中的client

    然后又将设备文件结构dev赋值给client的私有驱动数据指针。i2c_set_clientdata函数到底是什么作用呢?

    在该函数中调用了dev_set_drvdata函数,在dev-set_drvdata函数实现代码中有一行代码:dev->p->driver_data=data

    driver_data是什么呢,内核中一句注释:driver_data - private pointer for driver specific info。driver_data是驱动特殊信息的私有指针,i2c_set_clientdata(client, dev)就是将自定义的设备结构dev赋给设备驱动client的私有指针,目的是什么呢,我猜测是用来区别其他驱动client,不知道这样理解对不对。敬请指正,这也是本文面世的一个原因。

    */

    static inline void i2c_set_clientdata(struct i2c_client *dev, void *data)
    {
    dev_set_drvdata(&dev->dev, data);
    }

    void dev_set_drvdata(struct device *dev, void *data)

    {

    ...

    dev->p->driver_data = data;

    ...

    }

    展开全文
  • 今年刚刚开始自学开发,知道这条路...“[Miscrosoft][ODBC驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序” 我看了,难道我ODBC里面什么不对??在ODBC里面看了半天貌似也没有什么问题 所以我还是看我...
  • 原文如下面,其中第一个宏的意思不是把值v赋给了内存地址为a的内存空间吗,为什么是访问outb是往外设端口写数据的? 在linux的驱动程序中,都会使用大量的outb、outw、inb、inw等等宏来访问硬件或寄存器。这些宏...
  • typora-copy-images-to: …\picture Linux设备驱动–(5)字符设备驱动 ...​ 我们都知道有一句经典的话"linux一切皆文件",这句话的意思意思什么呢?这就意味着,我们的设备最终会议文件的形式被上层去调...
  • 在web工程要把数据驱动包放到WebContent\WEB-INF\lib目录 我放进去后,并且web工程右键build path 选择了这个jar包 然后把jsp文件run on server后出现的异常 包头需要倒入java什么包呢,我导入了 .lang.*,.util....
  • 更多Linux驱动知识,请关注 一口Linux ...IO模型中,先讨论下什么是IO? 在计算机系统中I/O就是输入(Input)和输出(Output)的意思,针对不同的操作对象,可以划分为磁盘I/O模型,网络I/O模型,内存映射I/O, Di...
  • 后者则负责接收从重向器传过来的来自于远程计算机的请求,再将这一请求传送给相应的本地文件系统驱动程序,最后再由该“服务器”将数据沿协议堆栈向传递给客户机。  TCP协议也是通过调用 NDIS 接口服务来完成...
  • 在汇编情况,指令的跳转,保护现场需要保存的数据很少,并且可以直接访问寄存器,但是到了C语言环境中,函数的调用。 (1)无时无刻都需要保护现场,(2)并且无法直接访问寄存器,(3)函数需要传递参数,参数的...
  • 一堆资料讲到可编程波形,看得都不知道啥意思,为啥要可编程,而且微雪墨水屏的dataSheet(数据手册)也不提,只是写到LUT寄存器,搞得好像LUT是个众所周知的东西。可是,你知道LUT是个什么东西么? 其实,我也只是模...
  • 对于一个应用程序即一个操作系统进程来说,它既有内核空间(与其他...IO模型中,先讨论下什么是IO? 在计算机系统中I/O就是输入(Input)和输出(Output)的意思,针对不同的操作对象,可以划分为磁盘I/O模型,网络I/O模...
  • 对于一个应用程序即一个操作系统进程来说,它既有内核空间(与其他...IO模型中,先讨论下什么是IO? 在计算机系统中I/O就是输入(Input)和输出(Output)的意思,针对不同的操作对象,可以划分为磁盘I/O模型,网络I/O模...
  • 对于一个应用程序即一个操作系统进程来说,它既有内核空间(与其他进程共享),也有...IO模型中,先讨论下什么是IO?在计算机系统中I/O就是输入(Input)和输出(Output)的意思,针对不同的操作对象,可以划分为磁盘I/O模...
  • (3) cFos/cFosSpeed 执行「clear calibration data」(我灌的是日文版, 英文应该是这样的字, 中文应该是清除校正数据意思) (4) 纯粹全速下载!! 最好的方法就是找个大档案下载 (千万别用 P2P, 因为会动到大量上传),...
  • 4.重启动后在磁盘管理里就可以看见一个未知的分区,(可喜的是原其他分区的数据完好!!!) 就是被隐藏的硬盘!重新分区&格式化它! 5.下载附件 解压缩 运行 CapacityRestore.exe就可以! (已经汉化,可能有些翻译的不够准确...
  • 第3章练习题

    2012-09-22 14:48:52
    1、在这一章中,所谓的过滤是什么意思?有什么意义? 过滤是指下层驱动程序和上层软件之间的过滤层,在上下层进行数据交换时进行扫描过滤的过程 2、何为内核对象?我们已经接触到了哪几种内核对象? 内核对象...
  • i2c_set_clientdata函数

    万次阅读 2015-02-11 20:27:33
     在probe方式的I2C驱动中的probe函数中经常出现i2c_set_clientdata函数,一直很不解这个函数什么意思,后来查看内核源码,发现了一点大家都知道的秘密。 这是某个I2C设备驱动中的probe函数,选取了部分代码: ...
  • 在probe方式的I2C驱动中的probe函数中经常出现i2c_set_clientdata函数,一直很不解这个函数什么意思,后来查看内核源码,发现了一点大家都知道的秘密。偷笑 这是某个I2C设备驱动中的probe函数,选取了部分代码: ...
  • 在i2c驱动中有很多函数和数据结构,很多一时难以理解,所以写本文共同学习。 ... 在probe方式的I2C驱动中的probe函数中经常出现i2c_set_clientdata函数,一直很不解这个函数什么意思,后来...
  • 这个画面没什么不同,只是将箭头向移一格而已。(微微放松了一点) 于是我继续一回车,接着往看, 第七步:出现如下画面: 大致意思是这样的: 低格手:1.1!!! 选择驱动器磁盘 低格当前驱动器 退出 ...
  • msods5.8 u盘上的dos

    2009-03-07 12:36:46
    3.内置200多种100M及1000M网卡驱动,实现GHOST网络刻隆及DOS访问局域网的共享资源. 4.全中文的操作方式,让您使用时更简单,并且支持DOS五笔拼音输入及中文文件操作. 5.完全傻瓜化的网刻模式,让没用过本软件的...
  • XML高级编程

    2012-05-30 12:02:59
    这正是数据驱动的样式化的核心所在。第13章(样式化)在第8章和第9章的基础上告诉读者如何对XML样式化。我们的样式单将成为强大的规则集合,能够应用于XML文档的数据以产生可视化的显示。从一个数据集,你可以快速而...
  • 最新Java面试宝典pdf版

    热门讨论 2011-08-31 11:29:22
    18、Spring 的依赖注入是什么意思? 给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 125 19、Jdo是什么? 125 20、什么是spring的IOC AOP 126 21、STRUTS的工作流程! 126 22、...
  • Java面试宝典2010版

    2011-06-27 09:48:27
    18、Spring 的依赖注入是什么意思? 给一个 Bean 的 message 属性, 字符串类型, 注入值为 "Hello" 的 XML 配置文件该怎么写? 19、Jdo是什么? 20、什么是spring的IOC AOP 21、STRUTS的工作流程! 22、spring 与EJB...
  • 这正是数据驱动的样式化的核心所在。第13章(样式化)在第8章和第9章的基础上告诉读者如何对XML样式化。我们的样式单将成为强大的规则集合,能够应用于XML文档的数据以产生可视化的显示。从一个数据集,你可以快速而...

空空如也

空空如也

1 2 3 4 5
收藏数 87
精华内容 34
关键字:

数据驱动下什么意思