杂乱的概念整理+有趣的东西

整理了一些概念,便于自己查询和理解

【乱七八糟的概念】

1、Ad-Hoc Query(即席查询)

即席查询(Ad Hoc)是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的,而即席查询是由用户自定义查询条件的。

  在数据仓库领域有一个概念叫Ad hoc queries,中文一般翻译为“即席查询”。即席查询是指那些用户在使用系统时,根据自己当时的需求定义的查询。即席查询生成的方式很多,最常见的就是使用即席查询工具。一般的数据展现工具都会提供即席查询的功能。通常的方式是,将数据仓库中的维度表和事实表映射到语义层,用户可以通过语义层选择表,建立表间的关联,最终生成SQL语句。即席查询与通常查询从SQL语句上来说,并没有本质的差别。它们之间的差别在于,通常的查询在系统设计和实施时是已知的,所有我们可以在系统实施时通过建立索引、分区等技术来优化这些查询,使这些查询的效率很高。而即席查询是用户在使用时临时生产的,系统无法预先优化这些查询,所以即席查询也是评估数据仓库的一个重要指标。即席查询的位置通常是在关系型的数据仓库中,即在EDW或者ROLAP中。多维数据库有自己的存储方式,对即席查询和通常查询没有区别。在一个数据仓库系统中,即席查询使用的越多,对数据仓库的要求就越高,对数据模型的对称性的要求也越高。对称性的数据模型对所有的查询都是相同的,这也是维度建模的一个优点。

(Stack Overflow上的一个问题,帮助理解:点击打开链接

2、ETL cycle

Extract, Transform, Load (ETL) is the process of gathering data from an unlimited number of sources, organizing it together, and centralizing it into a single repository.

 

这个概念最早起源于20世纪70年代,从那以后一直是一个值得信赖的过程,用于从现有格式中获取数据,进行更改以便为重定位做好准备,并将其置于新的数据库中。 但是,远非一刀切的科学,智能ETL必须针对每个企业的需求进行高度定制。 下面是ETL的三个阶段,它如何应用于业务,以及用于简化过程的流行工具。

 

今天,企业比以往任何时候都更多地收集来自不同来源的数据并用它来做出决策。数据仓库概念获得了普及,因为它提供了一个中心位置,用于摄取,分类和存储所有这些信息,并将其转换为可用的商业智能信息。

基于ETL的数据仓库成为生成商业智能的标准,可与营销,销售,客户服务和其他传统团队部门等各个部门进行交互式协作,因此企业可以响应客户并更好地了解其业务。

(来源于:点击打开链接

3、Glue Code(胶水代码)[1](部分来自:链接

胶水代码也叫粘合代码,用途是粘合那些可能不兼容的代码。可以使用与胶合在一起的代码相同的语言编写,也可以用单独的胶水语言编写。 胶水代码不实现程序要求的任何功能,它通常出现在代码中,使现有的库或者程序在外部函数接口(如Java本地接口)中进行互操作~ 胶水代码在快速原型开发环境中非常高效,可以让几个组件被快速集成到单个语言或者框架中。

机器学习研究人员倾向于将通用解决方案作为独立的包开发。 各种各样的这些可以在mloss.org这样的地方作为开源软件包提供,或者从内部代码,专有软件包和基于云的平台提供。 使用自包含的解决方案通常会产生粘合代码系统设计模式,其中编写大量支持代码以将数据输入和输出通用包。

这种胶水代码设计模式从长远来看可能是昂贵的,因为它倾向于将系统冻结到特定包装的特性。通用解决方案通常具有不同的设计目标:它们寻求提供一个学习系统来解决许多问题,但是许多实际的软件系统被高度设计以应用于一个大规模问题,为此寻求许多实验解决方案。虽然通用系统可以使交换优化算法成为可能,但是通常重构问题空间的构造,这对成熟系统产生了最大的好处。粘合代码模式隐式地将此构造嵌入到支持代码中而不是主要设计的组件中。因此,胶水代码模式经常使其他机器学习方法的实验成本极高,导致对创新的持续征税。

通过选择在更广泛的系统架构中重新实现特定算法,可以减少胶水代码。起初,这可能看起来支付成本很高 - 例如,在R或matlab中重新实现C ++或Java中的机器学习包可能看起来是浪费精力。但是,由此产生的系统可能需要极少的胶水代码才能集成到整个系统中,更易于测试,更易于维护,并且设计得更好,可以插入替代方法并进行经验测试。特定于问题的机器学习代码也可以使用在一般软件包中难以支持的特定于问题的知识进行调整。

4、Pipeline Jungle(管道丛林)[1]

作为胶水代码的特例,管道丛林经常出现在数据准备中。 随着新信号的识别和新信息来源的增加,这些可以有机地发展。 无需谨慎,以ML友好格式准备数据的最终系统可能成为刮擦,连接和采样步骤的丛林,通常使用中间文件输出。 管理这些管道,检测错误和从故障中恢复都很困难且成本高昂。 测试此类管道通常需要昂贵的端到端集成测试。 所有这些都增加了系统的技术债务,并使进一步的创新成本更高。 值得注意的是,胶水代码和管道丛林是整合问题的症状,这可能是过度分离的“研究”和“工程”角色的根本原因。 当机器学习包在象牙塔设置中开发时,所得到的包可能看起来更像是实际使用它们的团队的黑盒子。

只有通过全面思考数据收集和特征提取,才能避免管道丛林。 废弃管道丛林并从头开始重新设计的清洁方法确实是工程工作的一项重大投资,但可以大幅降低持续成本并加速进一步创新。

胶水代码和管道丛林是整合问题的症状,可能是过度分离的“研究”和“工程”角色的根本原因。 当ML包在象牙塔设置中开发时,结果对于在实践中使用它们的团队看起来像黑盒子。 混合研究方法将工程师和研究人员整合在同一个团队中(实际上,通常是同一个人)可以帮助显着减少这种摩擦源。

5、

 

 

【有趣的东西】

1、WTFPL(Do What The Fuck You Want To Public License,中文译名:你他妈的想干嘛就干嘛公共许可证)是一种不太常用的、极度放任的自由软件许可证。它的条款基本等同于贡献到公有领域。

2、

 

 

 

不定期更新。。。

 

参考文献

[1] Sculley D, Holt G, Golovin D, et al. Hidden technical debt in machine learning systems[C]//Advances in neural information processing systems. 2015: 2503-2511.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值