小编mew*_*ahl的帖子

从PySpark中的工作节点访问ADLS上的二进制文件的最有效方法是什么?

我已经为Azure Data Lake Store上的所有目录部署了一个具有rwx权限的Azure HDInsight群集,该目录也可用作其存储帐户.在头节点上,我可以使用以下命令从ADLS加载例如图像数据:

my_rdd = sc.binaryFiles('adl://{}.azuredatalakestore.net/my_file.png')
Run Code Online (Sandbox Code Playgroud)

工作人员无权访问SparkContext的binaryFiles()功能.我可以使用azure-datalake-storePython SDK加载文件,但这似乎要慢得多.我假设因为它没有实现集群和ADLS之间关联的好处.

是否有更快的方法从工作人员的相关ADLS加载文件?

进一步的背景如果需要

我正在使用PySpark将训练有素的深度学习模型应用于大量图像.由于模型需要很长时间才能加载,我的理想是:

  • 向每个工作人员发送要处理的部分图像URI列表(通过应用于mapPartition()包含完整列表的RDD)
  • 让工作人员一次加载一个图像的数据,以便使用模型进行评分
  • 返回图像集的模型结果

由于我不知道如何有效地在工作人员上加载图像,我现在最好的办法是对包含图像字节数据的RDD进行分区,这个(我假设)内存效率低,并且通过头节点产生瓶颈完成所有数据加载.

python apache-spark pyspark azure-data-lake

5
推荐指数
1
解决办法
566
查看次数

如何在新的Azure CLI中自动生成deploy.cmd?

我正在按照本指南创建一个带有自定义deploy.cmd文件的Web应用程序.文章建议我可以deploy.cmd使用以下命令获取当前文件的副本(我将随后修改):

azure site deploymentscript --python

不幸的是,当我使用文章中链接的MSI安装Azure CLI时azure,我的路径上没有二进制文件.我有az- 这是同一个CLI的新版本吗? - 但我找不到该可执行文件的等效部署脚本生成命令.

我找到了一个deploy.cmd使用Kudu(下D:\home\site\deployments\tools)的文件,但我不确定这是否是适当的文件.任何人都可以为部署脚本生成建议正确的Azure CLI命令,或者确认deploy.cmd我找到的文件是正确的修改?提前致谢!

azure azure-cli azure-web-app-service

5
推荐指数
2
解决办法
1761
查看次数