一、简介
-
目标是在不改变的Dataframe语义的情况下支持可扩展的dataframe操作。
-
什么是机会主义评价?Opportunistic Evaluation?
-
Exploratory data analysis(EDA):总结、理解并从数据集中获取价值的过程。
-
MPI:MPI是高性能计算常用的实现方式,它的全名叫做Message Passing Interface。顾名思义,它是一个实现了消息传递接口的库。并行计算之MPI篇 · XTAO Achelous
-
OpenMP:OpenMP(Open Multi-Processing)是一套支持跨平台共享内存方式的多线程并发的编程API,使用C,C++和Fortran语言,可以在大多数的处理器体系和操作系统中运行,包括Solaris, AIX, HP-UX, GNU/Linux, Mac OS X, 和Microsoft Windows。包括一套编译器指令、库和一些能够影响运行行为的环境变量。https://zh.m.wikipedia.org/zh-hans/OpenMP
-
lazy执行和eager执行的区别:lazy执行可以根据完整的数据流图进行优化,但eager执行对于数据科学家交互式执行的体验更好。lazy执行的框架Spark、Dask,eager执行的框架pandas等,但这样的框架通常无法做分布式计算(Modin就是为了解决这个问题)。
-
dataframe用户和可扩展数据工具例如mysql用户的行为差距,会影响到数据框架系统的性能。dataframe用户通常会用一种增量、迭代和交互式的方式构建查询。这本身就带来了关系型数据库所不具备的多种挑战,特别是围绕查询规划和查询优化。
-
Modin架构

-
Modin提出了一个机会主义评估Opportunistic evaluation的概念,利用用户的思考时间在dataframe语句上去的进展。机会主义评估利用用户的思考时间,去保证CPU在努力实现结果,以节省数据科学家的时间。这样的执行方式比lazy执行快8倍。这里的结果表明,传统的计算范式在交互式环境中并不是最优的,而机会主义评估是实现高效交互式数据科学的一个良好开端。
二、Dataframe系统的需求
-
在交互式工作流中,dataframe用户经常花费大量时间来检查结果,并思考接下来应该做什么。
-
在检查结果时,通常会检查前缀(前k行)和后缀(最后k行),以确保一系列的操作符按照预期执行。我们在第2.5节中探讨数据框架前缀和后缀计算的独特挑战。
-
可组合性是数据框架最重要的特征之一,因为它允许用户逐步测试并分块建立更大的工作流程。
-
data science lifecycle:

-
dataframe的以下特点使之成为数据探索的一个有吸引力的选择:
-
一个直观的数据模型,包含了对列和行的隐性排序,并对称地处理它们。
-
一种查询语言,连接各种数据分析模式,包括关系型(如过滤、连接)、线性代数(如转置)和电子表格型(如透视)运算符。
-
一个递增的可组合的查询语法,鼓励简单表达式的简单和快速验证,以及它们的迭代细化和组合成复杂的查询;
-
以及在主机语言(如Python)中的本地嵌入,具有熟悉的命令式语义。
-
-
通过数据科学家的操作习惯我们可以了解到,dataframe的常见使用情况具有以下这些特点:
-
大多数操作后会立刻进行视觉检查(可视化)
-
每个操作都是在之前的结果基础上递增的
-
通过用户定义的函数进行点和批量更新
-
具有用于处
-

最低0.47元/天 解锁文章
649

被折叠的 条评论
为什么被折叠?



