我知道,Hadoop并不是一般半结构化数据处理的唯一替代品——我可以用简单的制表符分隔数据和一系列unix工具(cut、grep、sed等)以及手工编写的python脚本做很多事情。但有时我会收到大量数据,处理时间长达20-30分钟。这对我来说是不可接受的,因为我想动态地试验数据集,运行一些半临时查询等等
P>那么,根据这种方法的成本结果,你认为Hadoop集群的数据量是多少? < P>不知道你在做什么,下面是我的建议:
如果您想对数据运行即席查询,Hadoop不是最好的方式。您是否尝试过将
哎,,
我正在启动一个基于hadoop的超立方体,它具有灵活的维数。
有人知道这方面的现有方法吗
我刚找到,但是没有代码可以使用它
另一种方法来自lastfm,它使用hbase,但似乎已经死了
我想我会开始一个猪的解决方案,也许你有一些建议?这将非常酷/有用。OpenTSDB是一个HBase时间序列数据库,可能值得一看,它们有一种巧妙的辅助索引方法。这将非常酷/有用。OpenTSDB是一个HBase时间序列数据库,您可能会对它感兴趣,它们有一种巧妙的辅助索引方法。您也可以查看基于gpu的数据库
我需要获取当前正在运行的作业名称列表,但请提供作业ID列表
有没有办法获取正在运行的作业的名称
有没有办法从jobIDs中获取作业名称
如果执行$HADOOP\u HOME/bin/HADOOP-job-status操作,您将在输出中获得一个跟踪URL。转到该URL将显示跟踪页面,该页面的名称为
Job Name: <job name here>
作业名称:
-status命令还提供一个文件,该文件也可以从跟踪URL中看到。此文件中有一个mapred.job.name,其中包含
标签: Hadoop
data-warehousebusiness-intelligencehadoop-plugins
我正在考虑各种数据仓库和商业智能技术,并开发了一种叫做Hadoop的激进工具。Hadoop似乎并不完全是为BI目的而构建的,但有关于它在该领域具有潜力的参考文献。( ).
尽管我从互联网上获得的信息很少,但我的直觉告诉我,hadoop可以成为传统BI解决方案领域的颠覆性技术。关于这个主题的信息确实很少,因此我想在这里收集各位专家关于Hadoop作为BI工具的潜力的所有想法,与传统的后端BI基础设施(如Oracle Exadata、vertica等)相比。首先,我想提出以下问题:
设计注意事
正在尝试执行cassandra的WordCount示例,但出现错误:
线程“main”java.lang.NoSuchMethodError中出现异常:org.apache.thrift.meta_data.FieldValueMetaData。(BZ)V
位于org.apache.cassandra.thrift.SlicePredicate.(SlicePredicate.java:132)
运行(WordCount.java:199)
位于org.apache.hadoop.util.To
我希望每个hadoop映射器在M/R作业中处理单独的数据部分,并且我希望在伪分布式(单节点)设置上测试由于输入数据量较大而需要存在多个映射器的情况。考虑到我当前输入的大小和我正在试验的独立模式,我只能看到一个映射任务
我的输入来自一个hbase表,我认为每个hbase表的区域数等于用于处理该表数据的映射器数
因此,为了重现一种情况,即许多映射程序将处理输入数据,我通过shell预定义了表的区域,如下所示:
创建't1','f1',{NUMREGIONS=>4,SPLITALGO=>HexStri
我目前已开始使用以下“hbase 90.5”配置
“hadoop 20.205”。我也想设立动物园管理员
有人能告诉我哪个版本的Zookeeper可以与上面版本的hbase配合使用吗
谢谢
HarryHBase 0.90.5使用了ZooKeeper 3.3.2。看看它的pom.xml:
<zookeeper.version>3.3.2</zookeeper.version>
3.3.2
您似乎正在试图解决一个许多人已经解决的问题:使用Zookeeper和Hadoop整合
我有一个MapReduce作业,它只使用映射器。现在,当我运行作业时,我有这些part-m-****文件,它们将不同映射器的输出合并在一起。如果我想为一个映射程序创建一个part-m-****文件,我该怎么做。可能吗
你看过吗?它通常用于将零件*文件合并成一个文件。我想你不会明白我的问题。我的问题不是将所有零件文件合并到一个文件中。我的问题是不要自己生成这些多个文件。我的问题是如何控制part-m-*文件的生成。谢谢,我不知道你说的“把不同地图绘制者的输出合并”是什么意思。你是说你得到的零件文件
我在尝试导出分区配置单元表时遇到一些问题。这是完全支持(我试图谷歌为它找到一张JIRA票)
下面是我得到的:
00000_2, Status : FAILED
java.io.FileNotFoundException: File does not exist: /user/hive/warehouse/sales/day=2013-04-01
运行
hadoop fs -ls /user/hive/warehouse/sales/day=2013-04-01
显示此目录实际存在
有没有办法
标签: Hadoop
cluster-analysisclassnotfoundexceptionmahoutk-means
嗨,我正在试着从Github运行代码,看看集群是如何工作的,
我能够在我的windows Eclipse上编译代码
我为我的项目制作了一个jar,我想在单节点Hadoop集群(CHD-4.2.1)上运行它,并在其上安装mahout。mahout示例在此集群上运行良好,因此没有安装问题
我在commandpromt中使用以下命令来运行我的jar,我不确定我是否以正确的方式进行了尝试
user@INFPH01463U:~$mahoutjar/home/user/apurv/Kmean.jar
试用。
标签: Hadoop
cluster-analysismahoutk-means
嗨,我试着运行《Mahout在行动》第7章(k-均值聚类)中的示例。有人能告诉我如何在Hadoop集群(单节点CDH-4.2.1)和Mahout(0.7)中运行该示例吗
以下是我遵循的步骤:
将代码(从)复制到本地计算机上的EclipseIDE中
将这些JAR放入我的Eclipse项目中
hadoop-common-2.0.0-cdh4.2.1.jar
hadoop-hdfs-2.0.0-cdh4.2.1.jar
hadoop-mapreduce-client-core-2.0.0-cdh4.2
这是我第一次在hadoop上运行作业,并从WordCount示例开始。要运行我的作业,请使用以下命令
hduser@ubuntu:/usr/local/hadoop$ bin/hadoop jar hadoop*examples*.jar wordcount /user/hduser/gutenberg /user/hduser/gutenberg-output
我认为我们应该将jar文件复制到/usr/local/hadoop中。我的第一个问题是hadoop*示例*的含义是什么?如果我们想在
我刚刚在本地机器上成功地安装了Hadoop。我正在遵循我刚买的一本畅销书中的一个例子。我正在尝试获取安装附带的所有hadoop示例的列表。我键入以下命令以执行此操作:
bin/hadoop jar hadoop-*-examples.jar
一旦我输入这个,我应该会得到一个Hadoop示例列表,对吗?但是,我看到的只是以下错误消息:
Not a valid JAR: /home/user/hadoop/hadoop-*-examples.jar
我如何解决这个问题?这只是一个简单的权限问题吗
我的意见如下:
100.101.74.22 {(1358308803000,start,100.101.74.22,http://server1.com/flvplay-1.26.swf%23),(1358308973000,stop,100.101.74.22,http://server1.com/flvplay-1.26.swf%23),(1358308843000,pause,100.101.74.22,http://server1.com/flvplay-1.26.swf%23)}
我正在使用HDP2.0并运行一个简单的Pig脚本
我已经注册了下面的JAR,然后我正在执行下面的代码(更新了模式)-
问题是,尽管配置单元表中有F的值,但结果总是将0条记录写入输出。但它能够将所有记录加载到一个文件中
基本上,过滤器功能不起作用。我的蜂箱表没有分区。我相信问题可能出在HiveColumarLoade中,但无法找出它是什么
如果您知道解决方案,请告诉我。我为此苦苦挣扎
非常感谢你的帮助 基于HIVEColumnLoader,在筛选非分区值之前,似乎需要一个中间关系。假设id不是一个
我需要实现一个系统,该系统可以从数据(仅文本)中导出分析/见解,也可以执行复杂的搜索查询
因此,我将Solr(搜索)和Hadoop(分析)列入了候选名单。我无法决定使用哪个基地开始我们可以将HDFS集群与Solr集成吗?我将主要处理聚合查询,数据不会频繁更新
我知道这个问题太宽泛了。我只需要专家对这件事的意见 看和看
Cloudera搜索=SOLR+Hadoop
使用Cloudera搜索,您可以使用SOLR在Hadoop或HBase中查询数据
各位。我最近成功地在我的计算机上安装了适用于windows的HDP2.0。它还通过了HDP2.0提供的烟雾测试示例。我正试图通过命令行编译我自己的mapreduce程序。我使用命令行:`
javac类路径
c:\hdp\hadoop-2.2.0.2.0.6.0-0009\hadoop-2.2.0.2.0.6.0-0009-core.jar
wordcountclass WordCount.java
但是,它不起作用。我发现在我的c:\hdp\hadoop-2.2.0.2.0.6.0-0009文件
我在HDFS中有一个日志文件,需要对其进行解析并将其放入Hbase表中
我想用猪来做这个
我该怎么做呢。Pig脚本应该解析日志,然后放入Hbase?Pig脚本将假设tab是日志文件中的数据分隔符:
嗨,我的字段不是制表符分隔的。我需要为字段提取编写正则表达式。我如何才能做到这一点?Pigstorage r7.0 API支持使用正则表达式作为分隔符标识符:
A= load '/home/log.txt' using PigStorage('\t') as (one:chararray,two:ch
根据一篇发表的论文,我想对hadoop hdfs做一些修改。在那之后,我只需要构建HDFS并让它运行。我如何才能做到这一点?请参阅以下Hadoop文档
这假设您是在Linux上构建的。如果你使用不同的操作系统,你可能需要做一些额外的步骤;有关详细信息,请参阅-我本人从未在非Linux上做过此操作
需要安装Git、Java JDK、Maven和ProtocolBuffer 2.5+版本
克隆https://github.com/apache/hadoop-common.git 在命令行中键入如下内
我想知道
当客户机将数据存储到hdfs中时,到底是谁来执行将大文件分割成更小的块的任务?
客户端是否直接将数据写入数据节点?如果是这样的话,数据什么时候被拆分为64 MB或128 MB?JobClient不支持作业跟踪器
作业客户端对位于输入路径中的数据计算输入拆分
在运行作业时指定的HDFS上。这篇文章说那是一份工作
客户端将资源(JAR和计算的输入拆分)复制到HDFS
输入本身依赖于集群。客户端仅计算从namenode获得的元信息(块大小、数据长度、块位置)。这些计算的输入分割将元信息携带到
我们正在研究将一个巨大的N维数据结构(NetCDF文件)作为Mapper函数的输入,而不必写入文本文件,然后加载到HDFS。我们有一个应用程序,它已经拥有这个巨大的数据结构。因此,我们希望跳过从文本文件中写入和读取所涉及的所有开销。
我们需要为以下问题提供一些信息
1) 第三方应用程序能否将数据直接流式传输到MapReduce
2) 如果上述方法可行,MapReduce会将此数据结构拆分为输入块吗?还是需要显式执行此操作
3) 这是否可以在ApacheSpark上实现,因为SPARK是从DRAM
正如我们所知,Hadoop倾向于在运行相应映射程序的机器上禁用reducer。如果我们有100个映射器和1个减速机呢。我们知道映射器将数据存储在本地磁盘上,所有映射的数据是否都将传输到单个还原器?如果将还原器编号固定为1(按job.setNumReduceTasks(1)或-Dmapred.reduce.tasks=1),则映射器中的所有数据将传输到一个将处理所有键的还原器。是,如果还原器只有一个,所有数据都将传输到该减速器
每个映射器最初将其输出存储在其本地缓冲区中(默认为100mb),当缓冲
我正在为map reduce程序编写单元测试,在reduce的设置过程中,它有一些上下文、配置和htable操作,如下所示:
protected void setup(Context context) {
try {
Configuration c = context.getConfiguration();
table =
new HTable(c,"TableName");
table.setAutoFlushTo(false);
} catch
我正试图通过pig使用jsonLoader(),从下面提到的json格式中提取数据:
现在,我能够使用以下代码从每个数组对象的“分区”、“键”和“V”中提取数据:
A= LOAD '/home/hduser/abc.jon' Using JsonLoader('Partition:chararray,Key:chararray,Properties2:{(K:chararray,T:chararray,V:chararray)},Timestamp:chararray');
B= foreach
我们摄取的数据可以使用Flume进行排序吗
我设计了一个简单的多通道flume代理,它将数据摄取到HDFS中的两个目录中。但我不知道flume是否支持这两个通道之间的排序
到目前为止,我想从中得到的是,我的源代码将是一个spool目录。每当我输入行(每行包含一个唯一的关键字),该行必须转到某个通道
有什么想法吗 排序:不。但我认为你不是这个意思
考虑使用一个拦截器和一个应用程序来实现您想要的
在Hadoop MapReduce中,我有几个基本问题
假设执行了100个映射器,并且减缩器为零。会吗
生成100个文件?所有个人都被分类了吗?跨所有映射器
输出是否已排序
减速器的输入为键->值。对于每个键,所有值都进行排序
假设执行了50个减速器。它会生成50个文件吗?是否对所有单个文件进行排序?所有减速器的输出是否已排序
在MapReduce中是否有保证排序的地方
1.假设执行了100个映射器,并且减缩器为零。它会生成100个文件吗
对
所有个人都被分类了吗
否。如果未使用减缩器,则映射器
我的数据格式如下
{"Foo":"ABC","Bar":"20090101100000","Quux":"{\"QuuxId\":1234,\"QuuxName\":\"Sam\"}"}
我需要采用以下格式:
{"Foo":"ABC","Bar":"20090101100000","Quux":{"QuuxId":1234,"QuuxName":"Sam"}}
我正在尝试使用Pig的replace函数来获得我需要的格式。。
所以,我试着
"LOGS = LOAD 'inputloc' USI
我正在尝试用Hbase整合蜂巢。我正在使用虚拟机
add jar /usr/lib/gphd/hive/lib/hive-hbase-handler-0.12.0-gphd-3.0.0.0.jar
add jar /usr/lib/gphd/hive/lib/guava-11.0.2.jar;
add jar /usr/lib/gphd/hbase/lib/hbase-common.jar;
add jar /usr/lib/gphd/zookeeper/zookeeper.jar;
add j
我有很多zip格式的压缩文件(GBs),我想写一个仅映射的作业来解压缩它们。我的mapper类看起来像
import java.util.zip.*;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.io.*;
import org.apache.hadoop.mapred.FileSplit;
import org.apache.hadoop.mapred.OutputCollector;
import j
现在我正在执行pig命令。我想在执行时直接或复制输出
让它真的很难拍一张快照。
只要提出一个解决方案来克服它
代码演示了命令的输出
2015-09-24 01:59:28,436 [main] INFO org.apache.pig.newplan.logical.optimizer.LogicalPlanOptimizer - {RULES_ENABLED=[AddForEach, ColumnMapKeyPrune, ConstantCalculator, GroupByConst
我有几个txt文件,我想在上面创建一个外部表。
不幸的是,文件的内容还不时包含字符串。Hive似乎将其解释为新行,即使它不是原始文件中的新行,只是文本的一部分。
我可以在配置单元中捕获此问题,而不必更改原始txt文件吗?您可以在每行的末尾放置除\n和字段分隔符之外的任何其他分隔符。然后可以在表属性中注册该分隔符。
假设我有这样的记录
1,2,3,aniit\n,4\n
在这个记录中,Anit\n是一个字符串,而\n是字符串。所以hive将它设为两个记录。为了避免这种情况,您可以在末尾添加任何其他
标签: Hadoop
oozieoozie-coordinator
在oozie中,输入事件非常简单,如果指定的文件/文件夹不存在,协调器作业将保持在等待状态。但我无法理解输出事件的作用
根据我的理解,output events标记中指定的文件/文件夹应由oozie创建,以防所有指定的操作都成功。但事实并非如此。我也找不到任何相关日志。文件对此也不清楚
所以,问题是,Oozie真的创建了输出事件中指定的文件/文件夹吗?或者它只是提到这些特定的文件/文件夹是在工作流期间创建的,创建的责任在作业上,而不是在Oozie上
相关代码可在中找到。操作始终生成数据,这些设置
我正在为我的数据集评估基于Hadoop的存储选项。以下是当前的设置:
数据大小为每天1TB的节俭序列化对象(使用GZIP压缩)
数据将主要通过PIG脚本和一些临时MR作业进行访问
大多数PIG脚本将获取任何给定运行的一个日历日的数据,并且只访问Thrift对象中的一小部分列
我计划评估以下产品的存储选项:
存储效率(所需存储空间的减少量)
利用PIG进行检索优化
我遇到了钢筋混凝土,兽人和拼花地板。通过一些搜索,我可以确认PIG14以后它可以使用ORC执行列修剪、分区修剪和谓词下推,但是
每30秒将创建数个csv文件,这些文件总共包含数百万行(约600万行)。csv基本上有时间戳、Id1、Id2、值
我想构造一个如下所示的文件夹结构
30秒间隔内HDFS中的时间戳/id1/id2/。这意味着我将不得不将600万行洗牌,并将具有相同ID的行写入一个文件
Atm我尝试使用spark整理记录,但将这些记录写入HDFS需要相当长的时间。您真的需要实时处理它们吗?嗨,Glennie,您应该在30秒后的下一批记录到来之前进行处理。为什么不使用HBase而不是文件夹结构呢?
我在ApachePig中有以下数据
({(ABC,123,XYZ,{(1,2,3),(4,5,6)},QWE)})
我想提取特定的字段,就像我预期的输出一样
ABC, 123, 1, 2, 3
ABC, 123, 4, 5, 6
我们如何使用pig来完成这项工作?我自己通过一点阅读完成了这项工作
out = foreach a generate FLATTEN($0);
out1 = foreach out generate $0, $1, flatten($3);
out=foreac
谁能告诉我,如何在蜂巢中实现百分位?
我尝试了百分位函数,但没有得到预期的结果。
示例代码将非常有帮助。根据产品文档使用该功能:
返回组中不适用于浮点类型的列的精确第pth百分位数。p必须介于0和1之间。注意:真正的百分位数只能为整数值计算。如果您的输入为非整数,请使用百分比_近似值
如果您无法获得“预期结果”,那么您将为问题添加更多细节,例如数据是什么、查询和预期结果
标签: Hadoop
sqoophadoop2sqoop2data-masking
我正在使用sqoop提取数据。是否有任何方法可以屏蔽sqoop中的任何特定列或修改每个单元格。
例如:
creditcardinfo
7888-3333-2222-1002
1111-2342-1235-2090
2331-2131-2222-3421
我希望数据在摄入后像:
creditcardinfo
XXXX-XXXX-XXXX-1002
XXXX-XXXX-XXXX-2090
XXXX-XXXX-XXXX-3421
或
在sqoop中可能吗?我试图找出答案,但无法获得更多
当我在ElasticSearch处理程序存储的配置单元中创建外部表时,它可以正常工作:
*CREATE TABLE test (day STRING, idCust STRING)
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES('es.resource' = 'test/test',
'es.mapping.names' = 'day:@timestamp',
'es.nodes' = 'loc
我正在寻找一个显示hadoop集群上剩余空间的可读形式的命令。我在这个论坛上找到了一个命令,输出如图所示
hdfs dfsadmin-报告
[dfsadmin命令的输出][1]
我听说hortonworks中还有另一个命令,它提供了更具可读性的输出。该命令是hdfs dfsadmin-report
该命令在cloudera上似乎不起作用。
cloudera中是否有类似的命令?
非常感谢无论您使用的是Cloudera还是Hortonworks,这都不重要。如果您使用的是旧版本的hadoop,那么命
晚上好
我试图在Hadoop mapreduce上运行一个训练示例,但收到一个错误,输入路径不存在
16/09/26 05:56:45 ERROR streaming.StreamJob: Error Launching job : Input path does not exist: hdfs://bigtop1.vagrant:8020/training
然而,在hdfs目录中,很明显“training”文件夹是存在的
[vagrant@bigtop1 code]$ hadoop fs -
运行“快速启动”时遇到错误消息
Potential misconfiguration detected. Fix and restart Hue.
Resource Manager : Failed to contact an active Resource Manager: YARN RM returned a failed response: HTTPConnectionPool(host='localhost', port=8088): Max retries exceeded with
我想将下面的oracle逻辑转换为配置单元。
逻辑:
有谁能帮我在hive中实现上述逻辑。使用此解决方案,您可以控制性能。
select a.id
,a.name
,b.desc
from table_a as a
left join (select a.id
,b.desc
from
通过一个用Java编写的Spark作业,我试图获得所有能够访问特定hdfs文件的linux/centos用户的列表
目前正在尝试以下Java代码以获取信息:
result = Shell.execCommand("sudo","bash","-c","lid","-g","-n", fileOwnersGroup);
但这是行不通的。它是投掷:
sudo:不存在tty,也未指定askpass程序
尝试了各种选项,包括更新/etc/sudoer,但没有成功。对象具有getOwner()和getG
标签: Hadoop
clouderadashboardmetricsoperations
我正在使用Cloudera-moslty开始oozie和Thread的工作。我想发出某些指标,并将它们打印为仪表板-将来自多个oozie作业的数据连接到一个图表上
我发现有一种方法可以从多个标准组件(如HBase、Hive等)收集指标。我可以使用此机制添加我的自定义指标和仪表板吗?更多关于我的自定义指标。我想从我的Java代码中发出一些东西。。。我不认为Cloudera度量是开放源码的,您只需将它们集成到代码中即可。我见过大多数公司使用Solr或Grafana从他们的代码中收集数据,更多的是关于
我试图理解Avro,并了解到它是Hadoop使用的数据序列化框架之一
在学习Hadoop的过程中,我了解到Hadoop使用了自己的序列化框架,而不是Java的序列化,因此我可以在Hadoop中看到可写、可写和可比较
现在,在经过AVRO之后,它说AVRO被用作Serlization框架
我有点困惑,因为这一点。所以,当我们说Hadoop自己的序列化框架时,我们指的是Avro还是Hadoop本身内置的其他东西
有人能帮我理解这一点吗?Hadoop可写文件不是Avro,而是其他东西
Avro是一个独
我的gcp账户上有两个项目,它们都有存储桶。
在其中一个项目中,我有一个dataproc集群,我正在该集群上运行hive。
从这个配置单元中,我想访问另一个项目的存储桶。
我已尝试为我的bucket授予ACL权限,但在从配置单元执行create table命令时仍然出现错误,原因是:
失败:执行错误,从org.apache.hadoop.hive.ql.exec.ddlstask返回代码1。MetaException(消息:get exception:java.io.IOException访问错
上一天,当我在coursera学习GCP课程时,他们提到并坚持我们不应该将数据留在HDFS中,而是在完成工作后,我们应该复制数据并将其保存在云存储中,每次我们想要启动一项工作时,我们都应该将数据再次放入HDFS并重复循环,
因此,我的问题如下:
如果关闭hadoop集群,HDFS中的数据会丢失吗?
为什么我们不应该将数据留在HDFS中?
价格问题?
多谢各位
转向云存储
一,。缺点:
a。云存储可能会增加I/O差异
b。云存储不支持文件追加或截断
c。云存储不符合POSIX
d。云存储可能不会公
我有一个远程服务器和经过身份验证的Hadoop环境服务器
我想将文件从远程服务器复制到Hadoop机器,再复制到HDFS
请建议使用有效的方法/HDFS命令将文件从远程服务器复制到HDFS
任何例子都会有帮助
将文件从远程服务器复制到服务器本身的一般方法是
scp -rp file remote_server:/tmp
但是这种方法不支持直接复制到hdfs,这里是指远程服务器,也就是说它与hadoop节点不在同一网络中。如果是这种情况,您可以将远程计算机上的scp节点连接到hadoop节点本地
我想用Hadoop 3.2.x为pyspark 3.0.1构建一个docker映像。在docker文件中,如果我使用pip install pyspark==3.0.1,它将安装pyspark 3.0,但hadoop是2.7。是否有一种方法可以实现此docker文件或任何docker文件的示例。我能够使用pyspark 3.0和hadoop 3.2创建docker映像,并使用此docker文件。请注意,copy app.py/app/app.py只是复制您要运行的代码
FROM python:3
我在HDFS中有一些两次分区的文件,其结构如下:
/user/hive/warehouse/datascience.db/simulations/datekey=20210506/coeff=0.5/data.parquet
/user/hive/warehouse/datascience.db/simulations/datekey=20210506/coeff=0.75/data.parquet
/user/hive/warehouse/datascience.db/simulations/