Veja a grafia e como defini-la de acordo com uma possivel substituicao:Por que -> Por qual motivoporque -> poisporque -> motivo (e substantivo)por que -> Pergunta no final da frase ou um "Por que?" isoladoAplicacao numa frase para programadores:Por que devemos usar mercurial no lugar do git? Pergunto isso porque todas as pessoas dizem que git e mais legal. Sendo assim, eu gostaria de entender o porque de usarmos mercurial. Alguem saberia me dizer por que?Substituindo como o esquema acima, essa frase poderia ser assim tambem:Por qual motivo devemos usar mercurial no lugar do git? Pergunto isso pois todas as pessoas dizem que git e mais legal. Sendo assim, eu gostaria de entender o motivo de usarmos mercurial. Alguem saberia me dizer por que?Repare que no ultimo "por que?" eu nem mesmo substitui. Sempre no final de frases ou quando estiver isolado devemos usa-lo. A primeira vista nem encontrei substituto a altura.Essa regra e tao obvia! Nao sei por que esqueco toda hora!Seja feliz, encontre um porque! Esse tutorial considera o OSX. Neste caso, use Homebrew!No terminal:brew install rbenvDepois:brew install ruby-build Edite o .bash_profile e no final do arquivo adicione a seguinte linha:eval "$(rbenv init -)"Salve o arquivo, para que a nova configuracao seja carregada, digite no terminal:source ~/.bash_profilePronto. Va no site do Ruby e procure a versao stable mais recente. Neste momento e a versao 2.1.2. Entao no terminal:rbenv install 2.1.2Depois:rbenv rehash Para alterar mudar de uma versao para outra utilizando o RBENV basta executar rbenv global [versao] para global existem outras opcoes; procure na documentacao. Entao:rbenv global 2.1.2Para verificar a versao atual do Ruby:ruby -vPara listar as versoes disponiveis:rbenv versionsAgora voce pode gerenciar qual a versao do Ruby sera a principal e alternar de uma para outra utilizando o RBENV. Lembre-se de sempre executar o rbenv rehash sempre que instalar uma nova versao do Ruby ou uma nova Gem no ambiente selecionado.Seja Feliz! Baixar a versao mais nova do Hadoophttp://ftp.unicamp.br/pub/apache/hadoop/common/Neste momento a versao mais nova esta no link: http://ftp.unicamp.br/pub/apache/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gzComandos:$ wget http://ftp.unicamp.br/pub/apache/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gz$ tar -zxvf hadoop-1.2.1.tar.gz$ sudo cp -r hadoop-1.2.1/ /usr/localInstalar o Java SDKNo Linux CentOS podemos usar o yum. Na versao atual do Java SDK oComandos: $ yum install java-1.7.0-openjdk-develou$ yum install java-develBaixar a versao mais nova do Mahouthttp://ftp.unicamp.br/pub/apache/mahout/Neste momento: http://ftp.unicamp.br/pub/apache/mahout/0.8/mahout-distribution-0.8.tar.gzComandos:$ wget http://ftp.unicamp.br/pub/apache/mahout/0.8/mahout-distribution-0.8.tar.gz$ tar -zxvf mahout-distribution-0.8.tar.gz$ sudo cp -r mahout-distribution-0.8/ /usr/localAdicionar as linhas abaixo no Arquivo ~/.bachrc:export HADOOP_PREFIX=/usr/local/hadoop-1.2.1export PATH=$PATH:$HADOOP_PREFIX/binexport MAHOUT_HOME=/usr/local/mahout-distribution-0.8export PATH=$PATH:$MAHOUT_HOMEexport JAVA_HOME=/usr/lib/jvm/java-1.6.0Configurando o ssh para conexao de um servidor no outro sem pedir a senha:$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keysConfigurando o ClusterNo master:/etc/hosts adicionar:192.168.0.123 master192.168.0.131 slave1192.168.0.132 slave2$HADOOP_HOME/conf/master adicionar:master$HADOOP_HOME/conf/slaves adicionar:masterslave1Em todas as maquinas:conf/core-site.xml<property><name>fs.default.name</name><value>hdfs://master:54310</value><description>The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation. The uri's scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uri's authority is used to determine the host, port, etc. for a filesystem.</description></property>conf/mapred-site.xml<property><name>mapred.job.tracker</name><value>master:54311</value><description>The host and port that the MapReduce job tracker runs at. If "local", then jobs are run in-process as a single map and reduce task.</description></property>conf/hdfs-site.xmlAtencao: <value>2</value> abaixo refere-se a quantidade de nos disponiveis.<property><name>dfs.replication</name><value>2</value><description>Default block replication. The actual number of replications can