【问题标题】:How to store bank transaction data using Hive / Pig in Hadoop如何在 Hadoop 中使用 Hive/Pig 存储银行交易数据
【发布时间】:2015-08-01 12:03:24
【问题描述】:

我有如下所示的交易数据。

我需要使用 Hive / Pig 存储数据并且应该能够查询。

谁能建议我一种存储和检索如下数据的方法 (注意:每个新行都以 0001 开头)?

id  |cusid    |txndata

0001|000000001|01|0|AB...@GMAIL.COM|MR.XYZ|999 xxxx AVE|EDISON,               NJ|.|.|UNITED STATES - 08820|NRI|E|101601075073||
0001|000000001|02|2|101601075073|INR??21656|Savings|N|0|N| | | | | |
0001|000000001|04|0|N|??21656|000000000001|INR??43800|15-04-2011|43800|2.53|12|0|44919|15-04-2012|N
0001|000000001|04|0|N|??21656|000000000002|INR??43800|15-10-2011|44715|7|6|0|46292|15-04-2012|N
0001|000000001|04|0|N|??|000000000003|USD??1000|05-04-2011|1000|1.78|12|1|1018.23|06-04-2012|N
0001|000000001|15|0|000000000004??INR|000001|04-04-2011|B/F ||0|0|0|||AMEERPET|
0001|000000001|15|0|000000000001??INR|000002|26-04-2011|USD500@43.80LESSFCST25 ||0|21875.00|21875.00|||AMEERPET|15-04-2011
0001|000000001|15|0|000000000001??INR|000003|29-04-2011|DCARDFEE16004889APR11-MAR12+ST ||219.00|0|21656.00|||HYD SV ROAD|29-04-2011
0001|000000001|22|0|000000000001??INR|0||||||||||
0001|000000001|25|0|0.00|0.00||||||||||
0001|000000001|65||9401150684744302|625301222448|7|0|1664|2|01-07-2012| | | | |

【问题讨论】:

  • 此交易是否包含敏感信息,是为了我们的观赏乐趣吗?
  • 请在发布数据之前删除或屏蔽任何敏感信息。
  • 所有敏感数据在发布时已被屏蔽。

标签: hadoop hive apache-pig


【解决方案1】:

如果行终止符是 '\n' ,则非常简单。 但是,如果从 hive 版本 0.13 开始,行终止符是“0001”,则 hive 不支持自定义行终止符。默认行终止符为“\n”。
LINES TERMINATED BY 目前仅支持换行符“\n” 这是根据 https://issues.cloudera.org/browse/DISTRO-498?page=com.atlassian.jira.plugin.system.issuetabpanels:changehistory-tabpanel.
我们可以实现自定义输入格式作为一种解决方法。 Custom InputFormat with Hive 这将更深入地了解如何实施

【讨论】:

    猜你喜欢
    • 2011-03-16
    • 1970-01-01
    • 2012-06-26
    • 2012-12-04
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    • 2022-10-16
    • 1970-01-01
    相关资源
    最近更新 更多