• spark write data to minio test


    想在本机测试一下,spark read write to s3 cloud storeage.

    minio是一个不错的选择,轻量,兼容aws s3协议。

    可以使用docker来做。

    #拉取镜像

    docker pull minio/minio

    #启动容器
    docker run -p 9000:9000 --name minio1
    --network test
      -e "MINIO_ACCESS_KEY=minio"
      -e "MINIO_SECRET_KEY=minio123"
      -v /Users/student2020/data/minio/data/:/data
      minio/minio server /data

    先在浏览器中登录 ,然后在右下角加号处添加一个新的bucket,
    存储的格式是 s3a://bucket_name/dir_to_path

    使用spark写入需要下面两个jar包,
     aws-java-sdk-1.7.4.jar,hadoop-aws-2.7.3.jar
     这两个文件可以在hadoop安装包解压后的目录中找到,直接 find . -name "*aws*.jar"即可。
     
    spark-shell --executor-memory 2g --driver-memory 2g
    --jars   /Users/student2020/app/hadoop273/share/hadoop/tools/lib/aws-java-sdk-1.7.4.jar,/Users/student2020/app/hadoop273/share/hadoop/tools/lib/hadoop-aws-2.7.3.jar

    val df=Seq((1,"student1"),(2,"student2"),(3,"student3")).toDF("id","name")

    spark.sparkContext.hadoopConfiguration.set("fs.s3a.access.key", "minio")
    spark.sparkContext.hadoopConfiguration.set("fs.s3a.secret.key", "minio123")
    spark.sparkContext.hadoopConfiguration.set("fs.s3a.endpoint","127.0.0.1:9000")
    spark.sparkContext.hadoopConfiguration.set("fs.s3a.path.style.access", "true");
    spark.sparkContext.hadoopConfiguration.set("fs.s3a.connection.ssl.enabled", "false");
    spark.sparkContext.hadoopConfiguration.set("fs.s3a.impl", "org.apache.hadoop.fs.s3a.S3AFileSystem");
    df.rdd.saveAsTextFile( "s3a://test/df2")

    如果想要使用nginx代理,则可以在http{}中添加如下内容


    minion nginx 配置如下
    server {
     listen 80; #或者443
     server_name file.example.com;#chang to yourself
     location / {
       proxy_buffering off; #important
       proxy_set_header Host $http_host;
       proxy_pass http://localhost:9000;
     }
    }

  • 相关阅读:
    如何将伪数组转换成真正的数组
    JS 中对变量类型的五种判断方法
    ajax详解
    onload和ready的区别
    ES5继承
    跨域的三种解决方式
    如何处理使用js兼容所有浏览器的问题
    Canvas修行之黑客帝国代码雨
    Webpack+React+ES6入门指南[转]
    对于Mongodb数据库的学习
  • 原文地址:https://www.cnblogs.com/huaxiaoyao/p/12152284.html
Copyright © 2020-2023  润新知