{"id":104964,"date":"2021-09-30T11:00:00","date_gmt":"2021-09-30T08:00:00","guid":{"rendered":"https:\/\/examples.javacodegeeks.com\/?p=104964"},"modified":"2021-09-28T12:23:15","modified_gmt":"2021-09-28T09:23:15","slug":"apache-hadoop-mahout-tutorial","status":"publish","type":"post","link":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/","title":{"rendered":"Apache Hadoop Mahout Tutorial"},"content":{"rendered":"<h2 class=\"wp-block-heading\" id=\"h-1-introduction\">1. Introduction<\/h2>\n<p>This is an in-depth article related to the Apache Hadoop Mahout. It is used in Machine Learning solutions with Hadoop. It was developed by Facebook. Hadoop and Mahout are Apache Opensource projects now. Apache Mahout was part of the Lucene project in 2008. It became an independent project in 2010.<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-2-apache-hadoop-mahout\">2. Apache Hadoop Mahout<\/h2>\n<h3 class=\"wp-block-heading\" id=\"h-2-1-prerequisites\">2.1 Prerequisites<\/h3>\n<p>Java 7 or 8 is required on the Linux, windows, or mac operating system. Maven 3.6.1 is required. Apache Hadoop 2.9.1 and Mahout 0.9 are used in this example.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-2-2-download\">2.2 Download<\/h3>\n<p>You can download Java 8 can be downloaded from the Oracle web&nbsp;<a href=\"https:\/\/www.oracle.com\/technetwork\/java\/javase\/downloads\/jdk8-downloads-2133151.html\">site<\/a>&nbsp;.&nbsp;Apache Maven 3.6.1 can be downloaded from<a href=\"https:\/\/maven.apache.org\/download.cgi\">&nbsp;Apache site<\/a>.   Apache Hadoop 2.9.1 can be downloaded from&nbsp;<a href=\"https:\/\/hadoop.apache.org\/releases.html\">Hadoop Website<\/a>. You can download Apache Mahout 0.9 from the&nbsp;<a href=\"http:\/\/archive.apache.org\/dist\/mahout\/0.9\/\">Apache Mahout website<\/a>.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-2-3-setup\">2.3 Setup<\/h3>\n<p>You can set the environment variables for JAVA_HOME and PATH. They can be set as shown below:<\/p>\n<p><span style=\"text-decoration: underline\"><em>Setup<\/em><\/span><\/p>\n<pre class=\"brush:plain\">JAVA_HOME=\"\/desktop\/jdk1.8.0_73\"\nexport JAVA_HOME\nPATH=$JAVA_HOME\/bin:$PATH\nexport PATH\n<\/pre>\n<p>The environment variables for maven are set as below:<\/p>\n<p><span style=\"text-decoration: underline\"><em>Maven Environment<\/em><\/span><\/p>\n<pre class=\"brush:plain\">JAVA_HOME=\u201d\/jboss\/jdk1.8.0_73\u2033\nexport M2_HOME=\/users\/bhagvan.kommadi\/Desktop\/apache-maven-3.6.1\nexport M2=$M2_HOME\/bin\nexport PATH=$M2:$PATH\n<\/pre>\n<h3 class=\"wp-block-heading\" id=\"h-2-4-how-to-download-and-install-hadoop-and-mahout\">2.4 How to download and install Hadoop and Mahout<\/h3>\n<p>After downloading the zip files of Hadoop and Mahout they can be extracted to different folders. The libraries in the libs folder are set in the CLASSPATH variable.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-2-5-apache-mahout\">2.5 Apache Mahout<\/h3>\n<p> Mahout comes from the word &#8220;elephant&#8221;. Apache Mahout is used for developing solutions involving ML algorithms like Recommendation, Classification, and Clustering. Mahout has features such as data mining framework, data analysis, clustering implementation, classification implementation, evolutionary programming techniques, and matrix and vector libraries. Social media companies like facebook, yahoo, linkedin, and foursquare use mahout. Mahout ecommerce framework has recomender engine which helps in identifying places on Foursquare. Twitter has chosen Mahout for user inteterest modelling and yahoo uses it for pattern matching.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-2-6-apache-hadoop-configuration\">2.6 Apache Hadoop  Configuration<\/h3>\n<p>You need to configure&nbsp;<code>HADOOP_HOME<\/code>&nbsp;as below:<\/p>\n<p><span style=\"text-decoration: underline\"><em>Setup<\/em><\/span><\/p>\n<pre class=\"brush:plain\">export HADOOP_HOME=\/users\/bhagvan.kommadi\/desktop\/hadoop-2.9.1\/\n<\/pre>\n<p>You need to configure&nbsp;<code>$HADOOP_HOME\/etc\/hadoop\/core-site.xml<\/code>&nbsp;as below:<\/p>\n<p><span style=\"text-decoration: underline\"><em>Core Site XML file<\/em><\/span><\/p>\n<pre class=\"brush:xml\">&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;?xml-stylesheet type=\"text\/xsl\" href=\"configuration.xsl\"?&gt;\n&lt;!--\n  Licensed under the Apache License, Version 2.0 (the \"License\");\n  you may not use this file except in compliance with the License.\n  You may obtain a copy of the License at\n\n    http:\/\/www.apache.org\/licenses\/LICENSE-2.0\n\n  Unless required by applicable law or agreed to in writing, software\n  distributed under the License is distributed on an \"AS IS\" BASIS,\n  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n  See the License for the specific language governing permissions and\n  limitations under the License. See accompanying LICENSE file.\n--&gt;\n\n&lt;!-- Put site-specific property overrides in this file. --&gt;\n\n&lt;configuration&gt;\n\n&lt;property&gt;\n &lt;name&gt;fs.defaultFS&lt;\/name&gt;\n &lt;value&gt;hdfs:\/\/apples-MacBook-Air.local:8020&lt;\/value&gt;\n&lt;\/property&gt;\n\n&lt;\/configuration&gt;\n\n<\/pre>\n<p>You need to start running Hadoop by using the command below:<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<p><span style=\"text-decoration: underline\"><em>Hadoop Execution<\/em><\/span><\/p>\n<pre class=\"brush:plain\">cd hadoop-2.9.1\/\ncd sbin\n.\/start-dfs.sh\n<\/pre>\n<p>The output of the commands is shown below:<\/p>\n<p><span style=\"text-decoration: underline\"><em>Hadoop Execution<\/em><\/span><\/p>\n<pre class=\"brush:plain\">apples-MacBook-Air:sbin bhagvan.kommadi$ .\/start-dfs.sh\n20\/09\/14 20:26:23 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform\u2026 using builtin-java classes where applicable\nStarting namenodes on [apples-MacBook-Air.local]\napples-MacBook-Air.local: Warning: Permanently added the ECDSA host key for IP address 'fe80::4e9:963f:5cc3:a000%en0' to the list of known hosts.\nPassword:\napples-MacBook-Air.local: starting namenode, logging to \/Users\/bhagvan.kommadi\/desktop\/hadoop-2.9.1\/logs\/hadoop-bhagvan.kommadi-namenode-apples-MacBook-Air.local.out\nPassword:\nlocalhost: starting datanode, logging to \/Users\/bhagvan.kommadi\/desktop\/hadoop-2.9.1\/logs\/hadoop-bhagvan.kommadi-datanode-apples-MacBook-Air.local.out\nStarting secondary namenodes [0.0.0.0]\nPassword:\n0.0.0.0: starting secondarynamenode, logging to \/Users\/bhagvan.kommadi\/desktop\/hadoop-2.9.1\/logs\/hadoop-bhagvan.kommadi-secondarynamenode-apples-MacBook-Air.local.out\n20\/09\/14 20:27:07 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform\u2026 using builtin-java classes where applicable\n<\/pre>\n<h3 class=\"wp-block-heading\" id=\"h-2-7-apache-hadoop-mahout\">2.7 Apache Hadoop  Mahout<\/h3>\n<p>Let us start with basic usecase for Mahout &#8211; Recommendation Engine.  First step is to create a data model. Below is the data model.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Hadoop Execution<\/em><\/span><\/p>\n<pre class=\"brush:plain\">1,11,2.0\n1,12,5.0\n1,13,5.0\n1,14,5.0\n1,15,4.0\n1,16,5.0\n1,17,1.0\n1,18,5.0\n2,10,1.0\n2,11,2.0\n2,15,5.0\n2,16,4.5\n2,17,1.0\n2,18,5.0\n3,11,2.5\n3,12,4.5\n3,13,4.0\n3,14,3.0\n3,15,3.5\n3,16,4.5\n3,17,4.0\n3,18,5.0\n4,10,5.0\n4,11,5.0\n4,12,5.0\n4,13,0.0\n4,14,2.0\n4,15,3.0\n4,16,1.0\n4,17,4.0\n4,18,1.0\n<\/pre>\n<p>The <code>PearsonCorrelationSimilarity<\/code> class is used to create usersimilarity. It takes the userdata model in the constructor. The data model file has the User, Item, and Preference columns related to the product.  The data model file is passed as file in the <code>FileDataModel<\/code> constructor.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Data Model<\/em><\/span><\/p>\n<pre class=\"brush:java\">DataModel usermodel = new FileDataModel(new File(\"userdata.txt\")); \n<\/pre>\n<p>The next step is to create <code>UserSimilarity<\/code> by using <code>PearsonCorrelationSimilarity<\/code> as shown below in the <code>RecommenderBuilder<\/code> class.<\/p>\n<p><span style=\"text-decoration: underline\"><em>User Similarity<\/em><\/span><\/p>\n<pre class=\"brush:java\">RecommenderBuilder recommenderBuilder = new RecommenderBuilder() {\n\t\t\tpublic Recommender buildRecommender(DataModel model) throws TasteException {\n\t\t\t\tUserSimilarity similarity = new PearsonCorrelationSimilarity(model);\n    }\n}\n<\/pre>\n<p><code>ThresholdUserNeighborhood<\/code> is used for the <code>UserNeighborhood<\/code> class. <code>ThresholdUserNeighborhood<\/code> is a neighborhood for all the users whose similarity to the given user meets or exceeds a certain threshold. In the below code, threshold is set as 2.0.<\/p>\n<p><span style=\"text-decoration: underline\"><em>User Similarity<\/em><\/span><\/p>\n<pre class=\"brush:java\">RecommenderBuilder recommenderBuilder = new RecommenderBuilder() {\n\t\t\tpublic Recommender buildRecommender(DataModel model) throws TasteException {\n\t\t\t\tUserSimilarity similarity = new PearsonCorrelationSimilarity(model);\n                                UserNeighborhood neighborhood = new NearestNUserNeighborhood(2, similarity, model);\n    }\n}\n<\/pre>\n<p>The next step is to create <code>GenericUserbasedRecomender<\/code> as shown below:<\/p>\n<p><span style=\"text-decoration: underline\"><em>User Recommender<\/em><\/span><\/p>\n<pre class=\"brush:java\">RecommenderBuilder recommenderBuilder = new RecommenderBuilder() {\n\t\t\tpublic Recommender buildRecommender(DataModel model) throws TasteException {\n\t\t\t\tUserSimilarity similarity = new PearsonCorrelationSimilarity(model);\n                                UserNeighborhood neighborhood = new NearestNUserNeighborhood(2, similarity, model);\n            return new GenericUserBasedRecommender(model, neighborhood, similarity);\n    }\n}\n<\/pre>\n<p>The next step is to invoke  the <code>recommend()<\/code> method of <code>Recommender<\/code> interface. Method  parameters are the user id and the number of recommendations. Below code shows the implementation:<\/p>\n<p><span style=\"text-decoration: underline\"><em>User Recommender<\/em><\/span><\/p>\n<pre class=\"brush:java\">Recommender recommender = recommenderBuilder.buildRecommender(usermodel);\n\t\tList recommendations = recommender.recommend(3, 1);\t\n         System.out.println(\"Recommendations \"+recommendations);\t\t\n         for (RecommendedItem recommendationItem : recommendations) {\n            System.out.println(recommendationItem);\n         }\n      \n      }catch(Exception exception){\n\n            exception.printStackTrace();\n\n       }\n\n<\/pre>\n<p>Below is the complete class which shows the implementation  of <code>RecommendationEngine<\/code>.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Recommendation Engine<\/em><\/span><\/p>\n<pre class=\"brush:java\">import java.io.File;\nimport java.util.List;\n\nimport org.apache.mahout.cf.taste.eval.RecommenderBuilder;\nimport org.apache.mahout.cf.taste.impl.model.file.FileDataModel;\nimport org.apache.mahout.cf.taste.impl.neighborhood.ThresholdUserNeighborhood;\nimport org.apache.mahout.cf.taste.impl.recommender.GenericUserBasedRecommender;\nimport org.apache.mahout.cf.taste.impl.similarity.PearsonCorrelationSimilarity;\n\nimport org.apache.mahout.cf.taste.model.DataModel;\nimport org.apache.mahout.cf.taste.neighborhood.UserNeighborhood;\n\nimport org.apache.mahout.cf.taste.recommender.RecommendedItem;\nimport org.apache.mahout.cf.taste.recommender.UserBasedRecommender;\nimport org.apache.mahout.cf.taste.recommender.Recommender;\nimport org.apache.mahout.cf.taste.common.TasteException;\nimport org.apache.mahout.cf.taste.similarity.UserSimilarity;\nimport org.apache.mahout.cf.taste.impl.neighborhood.NearestNUserNeighborhood;\npublic class RecommendationEngine {\n   public static void main(String args[]){\n      try{\n\n         DataModel usermodel = new FileDataModel(new File(\"userdata.txt\")); \n\n         System.out.println(usermodel);     \nRecommenderBuilder recommenderBuilder = new RecommenderBuilder() {\n\t\t\tpublic Recommender buildRecommender(DataModel model) throws TasteException {\n\t\t\t\tUserSimilarity similarity = new PearsonCorrelationSimilarity(model);\n\n\t\t\t\tUserNeighborhood neighborhood = new NearestNUserNeighborhood(2, similarity, model);\n\t\t\t\treturn new GenericUserBasedRecommender(model, neighborhood, similarity);\n\t\t\t}\n\t\t}; \n         \n        Recommender recommender = recommenderBuilder.buildRecommender(usermodel);\n\t\tList recommendations = recommender.recommend(3, 1);\t\n         System.out.println(\"Recommendations \"+recommendations);\t\t\n         for (RecommendedItem recommendationItem : recommendations) {\n            System.out.println(recommendationItem);\n         }\n      \n      }catch(Exception exception){\n\n            exception.printStackTrace();\n\n       }\n\n     }\n     \n} \n\n<\/pre>\n<p>To compile the code above, you can use the command below:<\/p>\n<p><span style=\"text-decoration: underline\"><em>Recommendation Engine<\/em><\/span><\/p>\n<pre class=\"brush:plain\"> javac -cp \"\/Users\/bhagvan.kommadi\/desktop\/mahout-distribution-0.9\/*\" RecommendationEngine.java \n<\/pre>\n<p>To execute the code, the command below is used.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Recommendation Engine<\/em><\/span><\/p>\n<pre class=\"brush:plain\">java -cp \"\/Users\/bhagvan.kommadi\/desktop\/mahout-distribution-0.9\/*:.:\/Users\/bhagvan.kommadi\/desktop\/mahout-distribution-0.9\/lib\/*\" RecommendationEngine\n<\/pre>\n<p>The output when the above command is executed is shown below.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Recommendation Engine<\/em><\/span><\/p>\n<pre class=\"brush:plain\">apples-MacBook-Air:apache_mahout bhagvan.kommadi$ java -cp \"\/Users\/bhagvan.kommadi\/desktop\/mahout-distribution-0.9\/*:.:\/Users\/bhagvan.kommadi\/desktop\/mahout-distribution-0.9\/lib\/*\" RecommendationEngine\nlog4j:WARN No appenders could be found for logger (org.apache.mahout.cf.taste.impl.model.file.FileDataModel).\nlog4j:WARN Please initialize the log4j system properly.\nlog4j:WARN See http:\/\/logging.apache.org\/log4j\/1.2\/faq.html#noconfig for more info.\nFileDataModel[dataFile:\/Users\/bhagvan.kommadi\/Desktop\/JavacodeGeeks\/Code\/apache_mahout\/userdata.txt]\nRecommendations [RecommendedItem[item:10, value:1.0]]\nRecommendedItem[item:10, value:1.0]\n<\/pre>\n<h2 class=\"wp-block-heading\" id=\"h-3-download-the-source-code\">3. Download the Source Code<\/h2>\n<div class=\"download\"><strong>Download<\/strong><br \/>\nYou can download the full source code of this example here:<a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/09\/apache_mahout.zip\"> <strong>Apache Hadoop Mahout Tutorial<\/strong><\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>1. Introduction This is an in-depth article related to the Apache Hadoop Mahout. It is used in Machine Learning solutions with Hadoop. It was developed by Facebook. Hadoop and Mahout are Apache Opensource projects now. Apache Mahout was part of the Lucene project in 2008. It became an independent project in 2010. 2. Apache Hadoop &hellip;<\/p>\n","protected":false},"author":31,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1255],"tags":[1270],"class_list":["post-104964","post","type-post","status-publish","format-standard","hentry","category-apache-hadoop","tag-apache-hadoop"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Apache Hadoop Mahout Tutorial - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Hadoop &amp; Mahout are Apache Opensource projects now. Mahout was part of the Lucene project in 2008. It became an independent project in 2010.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache Hadoop Mahout Tutorial - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Hadoop &amp; Mahout are Apache Opensource projects now. Mahout was part of the Lucene project in 2008. It became an independent project in 2010.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/\" \/>\n<meta property=\"og:site_name\" content=\"Examples Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/bhagvank\" \/>\n<meta property=\"article:published_time\" content=\"2021-09-30T08:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2018\/07\/apache-hadoop-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Bhagvan Kommadi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bhaggu\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Bhagvan Kommadi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/\"},\"author\":{\"name\":\"Bhagvan Kommadi\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/4575ae335b8ff016be62c3b927d5d5e6\"},\"headline\":\"Apache Hadoop Mahout Tutorial\",\"datePublished\":\"2021-09-30T08:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/\"},\"wordCount\":554,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\"},\"keywords\":[\"Apache Hadoop\"],\"articleSection\":[\"Apache Hadoop\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/\",\"name\":\"Apache Hadoop Mahout Tutorial - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#website\"},\"datePublished\":\"2021-09-30T08:00:00+00:00\",\"description\":\"Hadoop & Mahout are Apache Opensource projects now. Mahout was part of the Lucene project in 2008. It became an independent project in 2010.\",\"breadcrumb\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/examples.javacodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java Development\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Apache Hadoop\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/apache-hadoop\/\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"Apache Hadoop Mahout Tutorial\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#website\",\"url\":\"https:\/\/examples.javacodegeeks.com\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Examples and Code Snippets\",\"publisher\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/examples.javacodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/examples.javacodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/javacodegeeks\",\"https:\/\/x.com\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/4575ae335b8ff016be62c3b927d5d5e6\",\"name\":\"Bhagvan Kommadi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2019\/02\/bhagvan.-kommadi-96x96.jpg\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2019\/02\/bhagvan.-kommadi-96x96.jpg\",\"caption\":\"Bhagvan Kommadi\"},\"description\":\"Bhagvan Kommadi is the Founder of Architect Corner &amp; has around 20 years\u2019 experience in the industry, ranging from large scale enterprise development to helping incubate software product start-ups. He has done Masters in Industrial Systems Engineering at Georgia Institute of Technology (1997) and Bachelors in Aerospace Engineering from Indian Institute of Technology, Madras (1993). He is member of IFX forum,Oracle JCP and participant in Java Community Process. He founded Quantica Computacao, the first quantum computing startup in India. Markets and Markets have positioned Quantica Computacao in \u2018Emerging Companies\u2019 section of Quantum Computing quadrants. Bhagvan has engineered and developed simulators and tools in the area of quantum technology using IBM Q, Microsoft Q# and Google QScript. He has reviewed the Manning book titled : \\\"Machine Learning with TensorFlow\u201d. He is also the author of Packt Publishing book - \\\"Hands-On Data Structures and Algorithms with Go\\\".He is member of IFX forum,Oracle JCP and participant in Java Community Process. He is member of the MIT Technology Review Global Panel.\",\"sameAs\":[\"http:\/\/www.architectcorner.com\",\"https:\/\/www.facebook.com\/bhagvank\",\"https:\/\/in.linkedin.com\/pub\/bhagvan-kommadi\/0\/3a6\/b46\",\"https:\/\/x.com\/bhaggu\"],\"url\":\"https:\/\/examples.javacodegeeks.com\/author\/bhagvan-kommadi\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Apache Hadoop Mahout Tutorial - Java Code Geeks","description":"Hadoop & Mahout are Apache Opensource projects now. Mahout was part of the Lucene project in 2008. It became an independent project in 2010.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/","og_locale":"en_US","og_type":"article","og_title":"Apache Hadoop Mahout Tutorial - Java Code Geeks","og_description":"Hadoop & Mahout are Apache Opensource projects now. Mahout was part of the Lucene project in 2008. It became an independent project in 2010.","og_url":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/","og_site_name":"Examples Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_author":"https:\/\/www.facebook.com\/bhagvank","article_published_time":"2021-09-30T08:00:00+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2018\/07\/apache-hadoop-logo.jpg","type":"image\/jpeg"}],"author":"Bhagvan Kommadi","twitter_card":"summary_large_image","twitter_creator":"@bhaggu","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Bhagvan Kommadi","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#article","isPartOf":{"@id":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/"},"author":{"name":"Bhagvan Kommadi","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/4575ae335b8ff016be62c3b927d5d5e6"},"headline":"Apache Hadoop Mahout Tutorial","datePublished":"2021-09-30T08:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/"},"wordCount":554,"commentCount":0,"publisher":{"@id":"https:\/\/examples.javacodegeeks.com\/#organization"},"keywords":["Apache Hadoop"],"articleSection":["Apache Hadoop"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/","url":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/","name":"Apache Hadoop Mahout Tutorial - Java Code Geeks","isPartOf":{"@id":"https:\/\/examples.javacodegeeks.com\/#website"},"datePublished":"2021-09-30T08:00:00+00:00","description":"Hadoop & Mahout are Apache Opensource projects now. Mahout was part of the Lucene project in 2008. It became an independent project in 2010.","breadcrumb":{"@id":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/examples.javacodegeeks.com\/apache-hadoop-mahout-tutorial\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/examples.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java Development","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/"},{"@type":"ListItem","position":4,"name":"Apache Hadoop","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/apache-hadoop\/"},{"@type":"ListItem","position":5,"name":"Apache Hadoop Mahout Tutorial"}]},{"@type":"WebSite","@id":"https:\/\/examples.javacodegeeks.com\/#website","url":"https:\/\/examples.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Examples and Code Snippets","publisher":{"@id":"https:\/\/examples.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/examples.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/examples.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/examples.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/4575ae335b8ff016be62c3b927d5d5e6","name":"Bhagvan Kommadi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2019\/02\/bhagvan.-kommadi-96x96.jpg","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2019\/02\/bhagvan.-kommadi-96x96.jpg","caption":"Bhagvan Kommadi"},"description":"Bhagvan Kommadi is the Founder of Architect Corner &amp; has around 20 years\u2019 experience in the industry, ranging from large scale enterprise development to helping incubate software product start-ups. He has done Masters in Industrial Systems Engineering at Georgia Institute of Technology (1997) and Bachelors in Aerospace Engineering from Indian Institute of Technology, Madras (1993). He is member of IFX forum,Oracle JCP and participant in Java Community Process. He founded Quantica Computacao, the first quantum computing startup in India. Markets and Markets have positioned Quantica Computacao in \u2018Emerging Companies\u2019 section of Quantum Computing quadrants. Bhagvan has engineered and developed simulators and tools in the area of quantum technology using IBM Q, Microsoft Q# and Google QScript. He has reviewed the Manning book titled : \"Machine Learning with TensorFlow\u201d. He is also the author of Packt Publishing book - \"Hands-On Data Structures and Algorithms with Go\".He is member of IFX forum,Oracle JCP and participant in Java Community Process. He is member of the MIT Technology Review Global Panel.","sameAs":["http:\/\/www.architectcorner.com","https:\/\/www.facebook.com\/bhagvank","https:\/\/in.linkedin.com\/pub\/bhagvan-kommadi\/0\/3a6\/b46","https:\/\/x.com\/bhaggu"],"url":"https:\/\/examples.javacodegeeks.com\/author\/bhagvan-kommadi\/"}]}},"_links":{"self":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/104964","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/users\/31"}],"replies":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=104964"}],"version-history":[{"count":0,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/104964\/revisions"}],"wp:attachment":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=104964"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=104964"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=104964"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}