【问题标题】:Spark Application Log SolutionSpark应用日志解决方案
【发布时间】:2016-12-22 22:21:15
【问题描述】:

我有一个带有 Python 的 Spark (1.3.1) 应用程序,在 YARN、EMR 集群上运行并使用类似 S3 的存储。
我的应用程序在 RDD 中转换 CSV 文件并执行正则表达式转换 (ETL)。 我们需要为错误捕获和源问题(记录和列)的识别创建一个水平线日志解决方案。 我对此一无所知。

def lineMap(column):
   return (
        column[1],
        column[2]
   )

fileContent = sc.textFile(s3FilePathInput)

RDDcru = (fileContent
                .map(lambda x : x.split(";"))
                .map(lineMap)
            )


我正在尝试在 lineMap 函数上创建一个 try - catch 块,使用日志记录默认 python 库。 我也尝试过,创建一个新的 SparkContext,在 S3 上写入文件日志(在 catch 块上)

全部失败...

感谢和抱歉我的英语不好:)

【问题讨论】:

    标签: amazon-web-services amazon-s3 apache-spark emr


    【解决方案1】:

    这种情况的解决方案是创建一个新的日志字段。

    def etl_func(col,log):
       try:
          (code)
        except Exception,e:
          log.append(str(e))
    
     def lineMap(column):
       log = []
       return (
            etl_func(column[1],log),
                     column[2],
                     log
       )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-17
      • 1970-01-01
      • 2012-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多