用于处理大规模三维数据集的spark扩展

pyspark3d的Python项目详细描述


Build StatuscodecovMaven Central

包正在进行活动开发!

最新消息

  • [05/2018]gsoc 2018:spark3d已入选2018年谷歌代码之夏(gsoc)。祝贺今年将参与该项目的@mayurdb
  • [2018年6月]release:版本0.1.0,0.1.1
  • [07/2018]新位置:spark3D是AstroLab Software的官方项目
  • [07/2018]release:版本0.1.3、0.1.4、0.1.5
  • [08/2018]release:版本0.2.0,0.2.1(pyspark3d)
  • [2018年9月]release:版本0.2.2
  • [11/2018]release:版本0.3.0,0.3.1(新数据帧API)

基本原理

spark3d应该被看作是apache spark框架的扩展,更确切地说是spark sql模块,主要关注三维数据集的操作。

为什么要使用spark3d?如果您经常需要重新划分大型空间三维数据集,或执行空间查询(邻居搜索、窗口查询、交叉匹配、群集等),spark3d适合您。它包含优化的类和方法,这样做可以节省您的实现时间!此外,所有这些扩展的一个大优势是通过快速构建数据集的表示来高效地执行大型数据集的可视化(请参阅更多here)。

spark3d公开了两个api:scala(spark3d)和python(pyspark3d)。核心开发是在scala中完成的,并使用很棒的py4j包与python进行接口。这意味着pyspark3d可能不包含spark3d中的所有特性。 另外,由于scala和python的不同,这两个api可能存在细微的差异。

当我们试图坚持最新的apache spark开发时,spark3d从rdd api开始,并缓慢地迁移到使用dataframeapi。这个过程在代码结构上留下了巨大的印记,spark3d中的低级层通常仍然使用rdd来操作数据。不要惊讶,如果事情正在移动,包正在积极的发展,但我们试图保持用户界面尽可能稳定

最后但并非最不重要的一点是:spark3d绝不是完整的,欢迎您提出更改建议、报告bug或不一致的实现,并直接为包做出贡献!

干杯, 朱利安

为什么是3?因为已经有很多很好的软件包处理二维数据集(例如geosparkgeomesamagellanGeoTrellis等),但这并不适用于天文学等许多应用!

安装和教程

斯卡拉

通过指定坐标,可以将spark3d链接到项目(spark shell或spark submit):

spark-submit --packages "com.github.astrolabsoftware:spark3d_2.11:0.3.0"

Python

只需运行

pip install pyspark3d

注意,我们用它发布了汇编jar。

更多信息

看我们的website

贡献者

  • 朱利安·佩洛顿(佩洛顿在拉尔,in2p3.fr)
  • 克里斯蒂安·阿尔诺(Arnault at lal.in2p3.fr)
  • Mayur Bhosale(gmail.com上的Mayurdb31)——GSOC 2018。

对spark3d的贡献:请参见CONTRIBUTING

支架

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
相对于框架java窗口的鼠标位置错误   Java 8流peek api   java将数据附加到文件中   java使用ExoPlayer 2.8播放播放列表中的特定文件   JavaSpring国际化:如何动态设置语言环境值   java如何在mysql中实现两个表之间的两个关联   java在gradle可执行jar文件中包含运行时参数   surefire插件中的java maven多套测试套件   java试图理解堆分析以确定内存泄漏或所需的大量内存   java识别字符串有数字   数组如何解决错误“java.lang.ArrayIndexOutOfBoundsException:5”   java Swt文件对话框选择的文件太多?   java此登录代码易受SQL注入攻击吗?   Java[3]中的文件<identifier>预期编译错误   java如何在spring webflux中发送列表   jar中未找到java文件异常   如何在java中合并2D数组?   java如何评测本机JNI库