contrib/ec2 USER_DATA not used

2008-12-18 Thread Stefan Groschupf

Hi,

can someone tell me what the variable USER_DATA in the launch-hadoop- 
master is all about.

I cant see that it is reused in the script or any other script.
Isnt the way those parameters are passed to the nodes the  
USER_DATA_FILE ?

The line is:
USER_DATA=MASTER_HOST=master,MAX_MAP_TASKS= 
$MAX_MAP_TASKS,MAX_REDUCE_TASKS=$MAX_REDUCE_TASKS,COMPRESS=$COMPRESS

Any hints?
Thanks,
Stefan
~~~
Hadoop training and consulting
http://www.scaleunlimited.com
http://www.101tec.com






who can tell me that if i can run a linpack in hadoop?

2008-12-18 Thread Leeau
Dear,
I am thinking that how to know the performance of hadoop. As a kind of
cluster, can we run linpack in hadoop? and how can we do that?
thanks!


Re: contrib/ec2 USER_DATA not used

2008-12-18 Thread Tom White
Hi Stefan,

The USER_DATA line is a hangover from the way that these parameters
used to be passed to the node. This line can safely be removed, since
the scripts now pass the data in the USER_DATA_FILE as you rightly
point out.

Tom

On Thu, Dec 18, 2008 at 10:09 AM, Stefan Groschupf s...@101tec.com wrote:
 Hi,

 can someone tell me what the variable USER_DATA in the launch-hadoop-master
 is all about.
 I cant see that it is reused in the script or any other script.
 Isnt the way those parameters are passed to the nodes the USER_DATA_FILE ?
 The line is:
 USER_DATA=MASTER_HOST=master,MAX_MAP_TASKS=$MAX_MAP_TASKS,MAX_REDUCE_TASKS=$MAX_REDUCE_TASKS,COMPRESS=$COMPRESS
 Any hints?
 Thanks,
 Stefan
 ~~~
 Hadoop training and consulting
 http://www.scaleunlimited.com
 http://www.101tec.com






Re: who can tell me that if i can run a linpack in hadoop?

2008-12-18 Thread Brian Bockelman

Hey,

I think you can consider Hadoop as a data processing system which uses  
the Map-Reduce paradigm to process data.  There is a project called  
Hama (I think) which supports some linear algebra operations on  
Hadoop.  However, it will only be effective for a subset of linear  
algebra operations.


Hadoop is not a general purpose clustering software, and it cannot run  
linpack.  If you want to do large-scale linear algebra operations  
(without having to write FORTRAN-style code in C/C++), I would  
recommend investigating PETSc.


Brian

On Dec 18, 2008, at 6:47 AM, Leeau wrote:


Dear,
I am thinking that how to know the performance of hadoop. As a kind of
cluster, can we run linpack in hadoop? and how can we do that?
thanks!




Multiple user permissions

2008-12-18 Thread Allen, Jeffrey
Greetings

I successfully installed a cloud w/ 4 computers logged in with my own account 
(jallen).  I want to expose the cloud to other users using a generic account.  
So, after installing the SW and formatting the file system I went through and 
performed a chmod on the installation directory and the root of the hadoop file 
system so everyone would have read and write access.

However when I run a command like: bin/hadoop fs -mkdir input from the 
generic account I get:
mkdir: org.apache.hadoop.security.AccessControlException: Permission denied: 
user=hadoop, access=WRITE, inode=user:jallen:supergroup:rwxr-xr-x

I was wondering if the problem may have been created when I changed the 
hadoop.tmp.dir attribute to be just /tmp/hadoop and not based on the user's 
name as is the default /tmp/hadoop-${user.name} but after removing that 
attribute in hadoop-site.xml, restarting and reformatting, I still get the same 
error.

Any thoughts of what's getting accessed or how to solve this?

Jeff






Re: HOD questions

2008-12-18 Thread Craig Macdonald

Hemanth,
snip
Just FYI, at Yahoo! we've set torque to allocate separate nodes for 
the number specified to HOD. In other words, the number corresponds to 
the number of nodes, not processors. This has proved simpler to 
manage. I forget right now, but I think you can make Torque behave 
like this (to not treat processors as individual nodes).
Thanks  - I think it's a Maui directive, either on the job level or 
globally. I'm looking into this currently.
However, on inspection of the Jobtracker UI, it tells us that node19 
has Max Map Tasks and Max Reduce Tasks both set to 2, when for 
node19, it should only be allowed one map task. 
While HOD does not do this automatically, please note that since you 
are bringing up a Map/Reduce cluster on the allocated nodes, you can 
submit map/reduce parameters with which to bring up the cluster when 
allocating jobs. The relevant options are 
--gridservice-mapred.server-params (or -M in shorthand). Please refer to
http://hadoop.apache.org/core/docs/r0.19.0/hod_user_guide.html#Options+for+Configuring+Hadoop 
for details.
I was aware of this, but the issue is that unless you obtain dedicated 
nodes (as above), this option is not suitable, as it isn't set on a 
per-node basis. I think it would be /fairly/ straightfoward to add to 
HOD, as I detailed in my initial email, so that it does the correct 
thing out the box.
(2) In our InputFormat, we use the numSplits to tell us how many map 
tasks the job's files should be split into. However, HOD does not 
override the mapred.map.tasks property (nor the mapred.reduce.tasks), 
while they should be set dependent on the number of available task 
trackers and/or nodes in the HOD session.
Can this not be submitted via the Hadoop job's configuration ? Again, 
HOD cannot do this automatically currently. But you could use the 
hod.client-params to set up a client side hadoop-site.xml that would 
work like this for all jobs submitted to the cluster.
According to hadoop-default.xml, the number of maps is Typically set to 
a prime several times greater than number of available hosts. - Say 
that we relax this recommendation to read Typically set to a NUMBER 
several times greater than number of available hosts then it should be 
straightforward for HOD to set it automatically then?


Craig


EC2 Usage?

2008-12-18 Thread Ryan LeCompte
Hello all,

Somewhat of a an off-topic related question, but I know there are
Hadoop + EC2 users here. Does anyone know if there is a programmatic
API to get find out how many machine time hours have been used by a
Hadoop cluster (or anything) running on EC2? I know that you can log
into the EC2 web site and see this, but I'm wondering if there's a way
to access this data programmaticly via web services?

Thanks,
Ryan


Re: EC2 Usage?

2008-12-18 Thread Tom White
Hi Ryan,

The ec2-describe-instances command in the API tool reports the launch
time for each instance, so you could work out the machine hours of
your cluster using that information.

Tom

On Thu, Dec 18, 2008 at 4:59 PM, Ryan LeCompte lecom...@gmail.com wrote:
 Hello all,

 Somewhat of a an off-topic related question, but I know there are
 Hadoop + EC2 users here. Does anyone know if there is a programmatic
 API to get find out how many machine time hours have been used by a
 Hadoop cluster (or anything) running on EC2? I know that you can log
 into the EC2 web site and see this, but I'm wondering if there's a way
 to access this data programmaticly via web services?

 Thanks,
 Ryan



Re: EC2 Usage?

2008-12-18 Thread Ryan LeCompte
Thanks!

On Thu, Dec 18, 2008 at 12:17 PM, Tom White t...@cloudera.com wrote:
 Hi Ryan,

 The ec2-describe-instances command in the API tool reports the launch
 time for each instance, so you could work out the machine hours of
 your cluster using that information.

 Tom

 On Thu, Dec 18, 2008 at 4:59 PM, Ryan LeCompte lecom...@gmail.com wrote:
 Hello all,

 Somewhat of a an off-topic related question, but I know there are
 Hadoop + EC2 users here. Does anyone know if there is a programmatic
 API to get find out how many machine time hours have been used by a
 Hadoop cluster (or anything) running on EC2? I know that you can log
 into the EC2 web site and see this, but I'm wondering if there's a way
 to access this data programmaticly via web services?

 Thanks,
 Ryan




Re: EC2 Usage?

2008-12-18 Thread Paco NATHAN
Ryan,

A developer on our team wrote some JSP to add to the Job Tracker, so
that job times and other stats could be accessed programmatically via
web services:

   https://issues.apache.org/jira/browse/HADOOP-4559

There's another update coming for that patch in JIRA, to get task data.

Paco



On Thu, Dec 18, 2008 at 11:17, Tom White t...@cloudera.com wrote:
 Hi Ryan,

 The ec2-describe-instances command in the API tool reports the launch
 time for each instance, so you could work out the machine hours of
 your cluster using that information.

 Tom

 On Thu, Dec 18, 2008 at 4:59 PM, Ryan LeCompte lecom...@gmail.com wrote:
 Hello all,

 Somewhat of a an off-topic related question, but I know there are
 Hadoop + EC2 users here. Does anyone know if there is a programmatic
 API to get find out how many machine time hours have been used by a
 Hadoop cluster (or anything) running on EC2? I know that you can log
 into the EC2 web site and see this, but I'm wondering if there's a way
 to access this data programmaticly via web services?

 Thanks,
 Ryan




Re: Hadoop Installation

2008-12-18 Thread Mithila Nagendra
Hello all
The exception was being throw cause the JDK version I had was a lower one.
The minute I updated that it worked well! So I guess having the right
version of java matters alot!!

Thanks for your help!

Mithila

On Tue, Nov 25, 2008 at 9:57 AM, Steve Loughran ste...@apache.org wrote:

 Mithila Nagendra wrote:

 Hey steve
 The version is: Linux enpc3740.eas.asu.edu 2.6.9-67.0.20.EL #1 Wed Jun 18
 12:23:46 EDT 2008 i686 i686 i386 GNU/Linux, this is what I got when I used
 the command uname -a

 On Tue, Nov 25, 2008 at 1:50 PM, Steve Loughran ste...@apache.org
 wrote:

  Mithila Nagendra wrote:

  Hey Steve
 I deleted what ever I needed to.. still no luck..

 You said that the classpath might be messed up.. Is there some way I can
 reset it? For the root user? What path do I set it to.


  Let's start with what kind of machine is this? Windows? or Linux. If
 Linux,
 which one?



 OK

 1. In yum (redhat) or the synaptic package manager, is there any package
 called log4j installed? or liblog4j?
 2. Install ant, and run
  ant -diagnostics
 email us the results



Out of Memory error in reduce shuffling phase when compression is turned on

2008-12-18 Thread Zheng Shao
mapred.compress.map.output is set to true, and the job has 6860 mappers and 300 
reducers.
Several reducers failed because:out of memory error in the shuffling phase.
Error log:
2008-12-18 11:42:46,593 WARN org.apache.hadoop.mapred.ReduceTask: 
task_200812161126_7976_r_000272_1 Intermediate Merge of the inmemory files 
threw an exception: java.lang.OutOfMemoryError: Direct buffer memory
at java.nio.Bits.reserveMemory(Bits.java:633)
at java.nio.DirectByteBuffer.init(DirectByteBuffer.java:95)
at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:288)
at 
org.apache.hadoop.io.compress.zlib.ZlibDecompressor.init(ZlibDecompressor.java:108)
at 
org.apache.hadoop.io.compress.GzipCodec.createDecompressor(GzipCodec.java:188)
at 
org.apache.hadoop.io.SequenceFile$Reader.getPooledOrNewDecompressor(SequenceFile.java:1458)
at org.apache.hadoop.io.SequenceFile$Reader.init(SequenceFile.java:1564)
at org.apache.hadoop.io.SequenceFile$Reader.init(SequenceFile.java:1442)
at org.apache.hadoop.io.SequenceFile$Reader.init(SequenceFile.java:1363)
at 
org.apache.hadoop.io.SequenceFile$Sorter$SegmentDescriptor.nextRawKey(SequenceFile.java:2989)
at 
org.apache.hadoop.io.SequenceFile$Sorter$MergeQueue.merge(SequenceFile.java:2804)
at org.apache.hadoop.io.SequenceFile$Sorter.merge(SequenceFile.java:2556)
at 
org.apache.hadoop.mapred.ReduceTask$ReduceCopier$InMemFSMergeThread.run(ReduceTask.java:1632)


Anybody has seen similar problems?

Filed JIRA: https://issues.apache.org/jira/browse/HADOOP-4915

Zheng



Re: Out of Memory error in reduce shuffling phase when compression is turned on

2008-12-18 Thread Arun C Murthy


On Dec 18, 2008, at 2:09 PM, Zheng Shao wrote:

mapred.compress.map.output is set to true, and the job has 6860  
mappers and 300 reducers.
Several reducers failed because:out of memory error in the shuffling  
phase.

Error log:
2008-12-18 11:42:46,593 WARN org.apache.hadoop.mapred.ReduceTask:  
task_200812161126_7976_r_000272_1 Intermediate Merge of the inmemory  
files threw an exception: java.lang.OutOfMemoryError: Direct buffer  
memory

at java.nio.Bits.reserveMemory(Bits.java:633)
at java.nio.DirectByteBuffer.init(DirectByteBuffer.java:95)
at java.nio.ByteBuffer.allocateDirect(ByteBuffer.java:288)
at  
org 
.apache 
.hadoop 
.io.compress.zlib.ZlibDecompressor.init(ZlibDecompressor.java:108)
at  
org 
.apache 
.hadoop.io.compress.GzipCodec.createDecompressor(GzipCodec.java:188)
at org.apache.hadoop.io.SequenceFile 
$Reader.getPooledOrNewDecompressor(SequenceFile.java:1458)
at org.apache.hadoop.io.SequenceFile$Reader.init(SequenceFile.java: 
1564)
at org.apache.hadoop.io.SequenceFile$Reader.init(SequenceFile.java: 
1442)
at org.apache.hadoop.io.SequenceFile$Reader.init(SequenceFile.java: 
1363)
at org.apache.hadoop.io.SequenceFile$Sorter 
$SegmentDescriptor.nextRawKey(SequenceFile.java:2989)
at org.apache.hadoop.io.SequenceFile$Sorter 
$MergeQueue.merge(SequenceFile.java:2804)
at org.apache.hadoop.io.SequenceFile$Sorter.merge(SequenceFile.java: 
2556)
at org.apache.hadoop.mapred.ReduceTask$ReduceCopier 
$InMemFSMergeThread.run(ReduceTask.java:1632)



Anybody has seen similar problems?

Filed JIRA: https://issues.apache.org/jira/browse/HADOOP-4915



Hadoop 0.18 fixed a lot of problems with map-output compression using  
native codecs... HADOOP-2095.


Arun


Classes Not Found even when classpath is mentioned (Starting mapreduce from another app)

2008-12-18 Thread Saptarshi Guha
Hello,
I intend to start a mapreduce job from another java app, using
ToolRunner.run method. This works fine on a local job. However when
distributed i get java.lang.NoClassDefFoundError:
org/rosuda/REngine/Rserve/RserveException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.getDeclaredConstructor(Class.java:1985)
at 
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:74)
at org.apache.hadoop.mapred.JobConf.getInputFormat(JobConf.java:402)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
at 
org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2207)

Now, i have a CLASSPATH entry in my .bashrc which contains the
location of Rserve.jar (which contains the above classes), yet I still
get the above error.
Do I have to somehow emulate RunJar.main or is there a simpler way out?
Thank you
Saptarshi

-- 
Saptarshi Guha - saptarshi.g...@gmail.com


RE: Classes Not Found even when classpath is mentioned (Starting mapreduce from another app)

2008-12-18 Thread Zheng Shao
You either need to add the your Rserve.jar to -libjars, or put Rserve.jar in a 
cluster-accessible NFS mount (and add it to CLASSPATH/HADOOP_CLASSPATH).  

Zheng
-Original Message-
From: Saptarshi Guha [mailto:saptarshi.g...@gmail.com] 
Sent: Thursday, December 18, 2008 3:38 PM
To: core-user@hadoop.apache.org
Subject: Classes Not Found even when classpath is mentioned (Starting mapreduce 
from another app)

Hello,
I intend to start a mapreduce job from another java app, using
ToolRunner.run method. This works fine on a local job. However when
distributed i get java.lang.NoClassDefFoundError:
org/rosuda/REngine/Rserve/RserveException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.getDeclaredConstructor(Class.java:1985)
at 
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:74)
at org.apache.hadoop.mapred.JobConf.getInputFormat(JobConf.java:402)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
at 
org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2207)

Now, i have a CLASSPATH entry in my .bashrc which contains the
location of Rserve.jar (which contains the above classes), yet I still
get the above error.
Do I have to somehow emulate RunJar.main or is there a simpler way out?
Thank you
Saptarshi

-- 
Saptarshi Guha - saptarshi.g...@gmail.com


Re: Classes Not Found even when classpath is mentioned (Starting mapreduce from another app)

2008-12-18 Thread Saptarshi Guha
Hello,
What if each machine has the identical directory structure and
Rserve.jar is present at the same place(i.e the entry in the classpath
is identical across machines). The will the latter suggestion work?

On Thu, Dec 18, 2008 at 9:02 PM, Zheng Shao zs...@facebook.com wrote:
 You either need to add the your Rserve.jar to -libjars, or put Rserve.jar in 
 a cluster-accessible NFS mount (and add it to CLASSPATH/HADOOP_CLASSPATH).

 Zheng
 -Original Message-
 From: Saptarshi Guha [mailto:saptarshi.g...@gmail.com]
 Sent: Thursday, December 18, 2008 3:38 PM
 To: core-user@hadoop.apache.org
 Subject: Classes Not Found even when classpath is mentioned (Starting 
 mapreduce from another app)

 Hello,
 I intend to start a mapreduce job from another java app, using
 ToolRunner.run method. This works fine on a local job. However when
 distributed i get java.lang.NoClassDefFoundError:
 org/rosuda/REngine/Rserve/RserveException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.getDeclaredConstructor(Class.java:1985)
at 
 org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:74)
at org.apache.hadoop.mapred.JobConf.getInputFormat(JobConf.java:402)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
at 
 org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2207)

 Now, i have a CLASSPATH entry in my .bashrc which contains the
 location of Rserve.jar (which contains the above classes), yet I still
 get the above error.
 Do I have to somehow emulate RunJar.main or is there a simpler way out?
 Thank you
 Saptarshi

 --
 Saptarshi Guha - saptarshi.g...@gmail.com




-- 
Saptarshi Guha - saptarshi.g...@gmail.com