DolphinDB基础概念理解:Orca
程序员文章站
2022-07-13 15:15:04
...
-
DolphinDB
关于
DolphinDB
概况,参见《TSDB || DolphinDB || KDB+》DolphinDB
作为一个数据库以及一种分布式计算脚本语言,我用的是其高速的优点,然而现阶段很多人还意识不到Dol
的价值及必要性,反应在工作中就是同事不了解,因此不能直接在生产环境中体验Dol
的高速,现在有了Orca
,会pandas
的人都可以充分利用Dol
的高性能及并发,为生产环境中使用Dol
大大降低了门槛。 -
Orca设计理念
-
Pandas
易用但难处理TB级别
的含量数据、高内存占用 -
DolphinDB
同等条件下比pandas
快1-2数量级、内存占用小于pandas
的1/2 -
两者部署方式及代码差别较大,不方便直接移植,
Orca
解决这个问题
Orca
作为基于DolphinDB
引擎的pandas API
,结合两者优点:分布式存储和计算、低内存占用、pandas
编程风格 -
-
Orca设计架构
Orca的DataFrame中只存储对应的DolphinDB的表的元数据。
Orca的接口有部分限制:
-
Orca
的DataFrame
中的每个列不能是混合类型,列名也必须是合法DolphinDB
变量名。 - 如果
DataFrame
对应的DolphinDB
表是一个分区表,数据存储并非连续,因此就没有RangeIndex
的概念,且无法将一整个Series
赋值给一个DataFrame
的列。 - 对于
DolphinDB
分区表,一部分没有分布式版本实现的函数,例如median
,Orca
暂不支持。 -
DolphinDB
的空值机制和pandas
不同,pandas
用float
类型的nan
作为空值,而DolphinDB的空值是每个类型的最小值。 -
DolphinDB
是列式存储的数据库。对于pandas
接口中,一些axis=columns
参数还没有支持。 - 目前无法解析
Python
函数,因此,例如DataFrame.apply
,DataFrame.agg
等函数无法接受一个Python
函数作为参数。
-
-
Orca安装
Orca
集成在DolphinDB Python API
中,通过pip
安装DolphinDB Python API
就可以直接使用Orca
。pip install dolphindb
-
References
上一篇: 申万一级行业变化