【问题标题】:ROW FORMAT Serde in hive蜂巢中的行格式 Serde
【发布时间】:2015-07-24 16:03:53
【问题描述】:

我正在使用 hadoop 2.0.4 并从事 Twitter 情绪分析工作。我曾经使用 Flume 来摄取数据,但现在 Twitter 数据必须存储在 hive 表中。

我创建了一个表,但是 ROW FORMAT SERDE 报错

'无法验证'

请告诉我如何进行。

【问题讨论】:

  • 你能粘贴Hive表创建语句吗?

标签: hive hadoop-streaming


【解决方案1】:

您使用的是自定义 SerDe 吗?

请参考hiveLanguage Manual提供的以下信息

您可以使用自定义 SerDe 或使用本机 SerDe 创建表。一种 如果未指定 ROW FORMAT 或 ROW FORMAT,则使用本机 SerDe 已指定 DELIMITED。

希望这些信息有用。

【讨论】:

  • 先生,但是twitter格式是JSON类型的。对于twitter json格式如何处理。如何存储它??
  • 请参考讨论Serde for processing JSON data的链接。希望这些信息有用。
【解决方案2】:

你可以试试添加这个jar

hive-serdes-1.0-SNAPSHOT.jar

添加 jar 后,您可以创建一个包含 tweet_id 和 tweet_text 的外部 hive 表,该表引用 tweets 目录,用于执行这样的情绪分析。

create external table load_tweets(id BIGINT,text STRING) ROW FORMAT SERDE 'com.cloudera.hive.serde.JSONSerDe' LOCATION '/user/flume/tweets'

您可以参考以下链接使用 hive 进行情绪分析。

https://acadgild.com/blog/sentiment-analysis-on-tweets-with-apache-hive-using-afinn-dictionary/

【讨论】:

    【解决方案3】:

    检查天气,您已在 lib 文件夹下的 hive 目录中添加了 hive-serdes-1.0-SNAPSHOT.jar。您的配置单元目录路径将是您在 .bashrc 文件中提到的路径。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-17
      • 2021-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-20
      相关资源
      最近更新 更多