首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从salesforce提取数据时,只有一个映射任务

从salesforce提取数据时,只有一个映射任务
EN

Stack Overflow用户
提问于 2017-02-03 00:10:27
回答 1查看 80关注 0票数 0

在Datameer (Rapid /BI工具,位于hadoop之上)中的几个提取作业正在从salesforce对象中读取数据。最大的提取值是1.4GB(Task对象),最小的提取值是96 MB(account对象)。Datameer使用基于REST的连接器,向连接器提供SOQL查询,并相应地获取记录(https://documentation.datameer.com/documentation/display/DAS60/Salesforce)。

Datameer编译作业并将执行交给执行框架(Tez)。此外,也没有特定于作业的配置。

所有saleforce提取作业都与1个Map任务一起运行。

但,

datameer中还有其他提取作业,它们从sftp服务器上的平面文件(50-200MB)中读取数据,并在3-5个映射任务之间使用。

关于SOQL:size.htm SOQL每批提取最大2000条记录

我的问题是:

  • 考虑到平面文件中的数据正在与多个映射任务一起运行,该问题是否与SOQL批处理大小相对应,该批处理大小每个请求只提取2000条记录,因此只分配了1个映射器。
  • 当处理像salesforce这样的源时,MR程序如何确定输入提取的总大小,甚至是基于云的 数据库。

环境信息: Hortonwork 2.7.1

代码语言:javascript
复制
Cores Per Data node=8

RAM per Data node=64GB

No of datanodes = 6

Block Size : 128 MB

Input Split info:

mapreduce.input.fileinputformat.split.maxsize=5368709120 (5 GB)

mapreduce.input.fileinputformat.split.minsize=16777216 (16 MB)

Execution Framework: Tez

Memory Sizes: <property> <name>mapreduce.map.memory.mb</name> <value>1536</value> </property><property> <name>mapreduce.reduce.memory.mb</name> <value>2048</value> </property><property> <name>mapreduce.map.java.opts</name> <value>-Xmx1228m</value> </property><property> <name>mapreduce.reduce.java.opts</name> <value>-Xmx1638m</value> </property>

<property> <name>yarn.app.mapreduce.am.resource.mb</name> <value>1024</value> </property><property> <name>yarn.app.mapreduce.am.command-opts</name> <value>-Xmx819m -Dhdp.version=${hdp.version}</value> </property>

Compression is enabled:

<property> <name>io.compression.codecs</name> <value>org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.DefaultCodec,org.apache.hadoop.io.compress.SnappyCodec</value> </property> mapreduce.output.fileoutputformat.compress=true

mapreduce.output.fileoutputformat.compress.type=BLOCK

mapreduce.map.output.compress=true

mapred.map.output.compression.type=BLOCK
EN

回答 1

Stack Overflow用户

发布于 2017-02-14 00:52:45

这一问题是在Datameer的支持下提出的,他提供了以下答复。

的根源分析:

他说:“使用中的地图机数目有限。主要是,它用于一个web服务,它不会从创建多个拆分中获益。这可能是因为服务不支持拆分,或者数据太小,以至于作业无法从拆分中获益。“

背景:

Datameer使用salesforce连接器,实习生使用REST调用,该调用可以在单个请求中获取最多2000条记录。REST调用是同步的,其返回结果的时间限制为5秒。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42014666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档