前言数据仓库ETL有两个设计主线, 其一为规划与设计主线, 其二为数据主线.
规划&设计主线规划与设计分为四步骤:需求/现状 -> 架构 -> 实现 -> 测试/发布. 每个步骤又有相应的具体问题考虑.
*** 需求与现状 ***
业务需求
数据评估和数据源现状
监察需求
安全需求
数据集成
数据延迟
归档和沿袭
最终用户提交界面
可用的开发技...
前言本文主要简介一下企业架构师EA, 技术架构师TA, 解决方案架构师SA的区别, 同时探讨各自需要具备的能力和挑战.
企业架构师 vs 技术架构师 vs 解决方案架构师简单来说, 企业架构师从企业全局的角度出发发现和定义问题, 解决方案架构师把问题转化为一个解决方案, 技术架构师实现具体的解决方案.网上有一张图描述了EA, TA, SA三者的区别:
上图从软件的生命周期, 细节的涉及度, ...
前言Apache Arrow是一个用于内存分析的跨语言开发平台。它定义了一种标准的、语言无关的列式内存数据格式。这种格式支持平整的和嵌套的数据结构。它还提供了一些计算库,零拷贝流式消息和内部进程通信。Arrow的主要用处可以是大数据的快速移动和处理。由于是开发平台,Arrow包含了许多组件:
Arrow列式内存格式:一个标准和高效的内存表示。可用于平的和嵌套的数据结构,做到了语言无关。
A...
前言本文主要讨论如何把pandas移植到spark, 他们的dataframe共有一些特性如操作方法和模式。pandas的灵活性比spark强, 但是经过一些改动spark基本上能完成相同的工作。同时又兼具了扩展性的优势,当然他们的语法和用法稍稍有些不同。
主要不同处:分布式处理pandas只能单机处理, 把dataframe放进内存计算。spark是集群分布式地,可以处理的数据可以大大超出...
Apache Arrow in PySparkSpark可以使用Apache Arrow对python和jvm之间的数据进行传输, 这样会比默认传输方式更加高效。为了能高效地利用特性和保障兼容性,使用的时候可能需要一点点修改或者配置。
为什么使用Arrow作为数据交换中介能够提升性能?普通的python udf需要经过如下步骤来和jvm交互:
jvm中一条数据序列化
序列化的数据发送到py...
RDD to DatasetsSpark SQL支持两种方式把RDD转为Datasets. 第一种是使用反射reflection取得到RDD的schema, 这种方式需要预先知道数据的结构。如果是scala的接口,RDD包含case class(定义了表的结构)可以自动转化RDD到dataframe。第二种方式是通过可编程接口对运行时的RDD进行构建datasets的schema, 这种方法...
Forword本文主要想翻译一下经典论文Pawlak Z.Roughset, 以期全面地了解这一技术,为后续应用打下基础。
Introduction本论文目的是描述粗糙集的一些属性,
REFERENCES
E. Konrad, E. Ortowska, and Z. Pawlak, An approximate concept learning (Berlin,Bericht, 1981),...
mysql索引的作用和意义当我们使用sql语句查询时往往要加where, 使用索引我们可以快速查找到满足where条件的行.
mysql如何使用索引mysql大部分索引使用B-tree, 例如(PRIMARY KEY, UNIQUE, INDEX, FULLTEXT); 空间数据类型使用R-tree; 内存表还支持hash索引, InnoDB使用反向列表(inverted list)作为F...
什么是D3.selections?D3的selection概念其实很简单, 就是一组元素节点. 具体代码表达就是d3.selectAll('div'), 所有选中的div就是selection,有的翻译叫它选择集, 然后基于这个selection就可以做各种操作.
D3-selection在selection上我们可以做到操作有:
设置属性attribute
设置样式
设...
React无状态组件React的Component分为有状态的class component和无状态的function component, class component的好处是可以完全控制组件的生命周期, 坏处是写起来麻烦. function component的好处是可以使用高阶函数式的编程方式编写代码, 缺点是没有状态可以控制.所以一般需要状态初始化或者其他一些状态操控时, 以前可以...