Thanks all... btw, s3n load works without any issues with spark-1.3.1-bulit-for-hadoop 2.4
I tried this on 1.3.1-hadoop26 > sc.hadoopConfiguration.set("fs.s3n.impl", "org.apache.hadoop.fs.s3native.NativeS3FileSystem") > val f = sc.textFile("s3n://bucket/file") > f.count No it can't find the implementation path. Looks like some jar is missing ? java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.s3native.NativeS3FileSystem not found at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2074) at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2578) at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2591) at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:91) Sujee Maniyam (http://sujee.net | http://www.linkedin.com/in/sujeemaniyam ) On Wed, Apr 22, 2015 at 9:49 AM, Shuai Zheng <szheng.c...@gmail.com> wrote: > Below is my code to access s3n without problem (only for 1.3.1. there is a > bug in 1.3.0). > > > > Configuration hadoopConf = ctx.hadoopConfiguration(); > > hadoopConf.set("fs.s3n.impl", > "org.apache.hadoop.fs.s3native.NativeS3FileSystem"); > > hadoopConf.set("fs.s3n.awsAccessKeyId", awsAccessKeyId); > > hadoopConf.set("fs.s3n.awsSecretAccessKey", > awsSecretAccessKey); > > > > Regards, > > > > Shuai > > > > *From:* Sujee Maniyam [mailto:su...@sujee.net] > *Sent:* Wednesday, April 22, 2015 12:45 PM > *To:* Spark User List > *Subject:* spark 1.3.1 : unable to access s3n:// urls (no file system for > scheme s3n:) > > > > Hi all > > I am unable to access s3n:// urls using sc.textFile().. getting 'no > file system for scheme s3n://' error. > > > > a bug or some conf settings missing? > > > > See below for details: > > > > env variables : > > AWS_SECRET_ACCESS_KEY=set > > AWS_ACCESS_KEY_ID=set > > > > spark/RELAESE : > > Spark 1.3.1 (git revision 908a0bf) built for Hadoop 2.6.0 > > Build flags: -Phadoop-2.4 -Dhadoop.version=2.6.0 -Phive > -Phive-thriftserver -Pyarn -DzincPort=3034 > > > > > > ./bin/spark-shell > > > val f = sc.textFile("s3n://bucket/file") > > > f.count > > > > error==> > > java.io.IOException: No FileSystem for scheme: s3n > > at > org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2584) > > at > org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2591) > > at > org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:91) > > at > org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2630) > > at > org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2612) > > at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:370) > > at org.apache.hadoop.fs.Path.getFileSystem(Path.java:296) > > at > org.apache.hadoop.mapred.FileInputFormat.singleThreadedListStatus(FileInputFormat.java:256) > > at > org.apache.hadoop.mapred.FileInputFormat.listStatus(FileInputFormat.java:228) > > at > org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:313) > > at > org.apache.spark.rdd.HadoopRDD.getPartitions(HadoopRDD.scala:203) > > at > org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:219) > > at > org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:217) > > at scala.Option.getOrElse(Option.scala:120) > > at org.apache.spark.rdd.RDD.partitions(RDD.scala:217) > > at > org.apache.spark.rdd.MapPartitionsRDD.getPartitions(MapPartitionsRDD.scala:32) > > at > org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:219) > > at > org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:217) > > at scala.Option.getOrElse(Option.scala:120) > > at org.apache.spark.rdd.RDD.partitions(RDD.scala:217) > > at > org.apache.spark.SparkContext.runJob(SparkContext.scala:1512) > > at org.apache.spark.rdd.RDD.count(RDD.scala:1006) > > at $iwC$$iwC$$iwC$$iwC$$iwC$$iwC$$iwC$$iwC.<init>(<console>:24) > > at $iwC$$iwC$$iwC$$iwC$$iwC$$iwC$$iwC.<init>(<console>:29) > > at $iwC$$iwC$$iwC$$iwC$$iwC$$iwC.<init>(<console>:31) > > at $iwC$$iwC$$iwC$$iwC$$iwC.<init>(<console>:33) > > at $iwC$$iwC$$iwC$$iwC.<init>(<console>:35) > > at $iwC$$iwC$$iwC.<init>(<console>:37) > > at $iwC$$iwC.<init>(<console>:39) > > at $iwC.<init>(<console>:41) > > at <init>(<console>:43) > > at .<init>(<console>:47) > > at .<clinit>(<console>) > > at .<init>(<console>:7) > > at .<clinit>(<console>) > > at $print(<console>) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:606) > > at > org.apache.spark.repl.SparkIMain$ReadEvalPrint.call(SparkIMain.scala:1065) > > at > org.apache.spark.repl.SparkIMain$Request.loadAndRun(SparkIMain.scala:1338) > > at > org.apache.spark.repl.SparkIMain.loadAndRunReq$1(SparkIMain.scala:840) > > at > org.apache.spark.repl.SparkIMain.interpret(SparkIMain.scala:871) > > at > org.apache.spark.repl.SparkIMain.interpret(SparkIMain.scala:819) > > at > org.apache.spark.repl.SparkILoop.reallyInterpret$1(SparkILoop.scala:856) > > at > org.apache.spark.repl.SparkILoop.interpretStartingWith(SparkILoop.scala:901) > > at > org.apache.spark.repl.SparkILoop.command(SparkILoop.scala:813) > > at > org.apache.spark.repl.SparkILoop.processLine$1(SparkILoop.scala:656) > > at > org.apache.spark.repl.SparkILoop.innerLoop$1(SparkILoop.scala:664) > > at org.apache.spark.repl.SparkILoop.org > $apache$spark$repl$SparkILoop$$loop(SparkILoop.scala:669) > > at > org.apache.spark.repl.SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply$mcZ$sp(SparkILoop.scala:996) > > at > org.apache.spark.repl.SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply(SparkILoop.scala:944) > > at > org.apache.spark.repl.SparkILoop$$anonfun$org$apache$spark$repl$SparkILoop$$process$1.apply(SparkILoop.scala:944) > > at > scala.tools.nsc.util.ScalaClassLoader$.savingContextLoader(ScalaClassLoader.scala:135) > > at org.apache.spark.repl.SparkILoop.org > $apache$spark$repl$SparkILoop$$process(SparkILoop.scala:944) > > at > org.apache.spark.repl.SparkILoop.process(SparkILoop.scala:1058) > > at org.apache.spark.repl.Main$.main(Main.scala:31) > > at org.apache.spark.repl.Main.main(Main.scala) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:606) > > at > org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:569) > > at > org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:166) > > at > org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:189) > > at > org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:110) > > at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) > > > > > > > Sujee Maniyam (http://sujee.net | http://www.linkedin.com/in/sujeemaniyam > ) >