Hadoop 如何在配置单元中为修复文件格式创建嵌套表

Hadoop 如何在配置单元中为修复文件格式创建嵌套表,hadoop,database-design,hive,fix-protocol,Hadoop,Database Design,Hive,Fix Protocol,在我的研究中,我们使用协议格式和数据。但我在为这些数据嵌套表创建表时遇到问题。例如,基本消息格式由msg1给出,从^A1128开始,到^A10结束。现在,对于msg2,我们有相同的基本消息,从^A1128开始,多条消息从^A1023开始,到^A346结束 数据以不带空格的行顺序出现,并且在消息末尾有一个\n字符。像这样的, ^A1128=9^A9=157^A35=X^A49=CME^A34=406238^A52=20130715123719934^A75=20130715^A268=1^A279

在我的研究中,我们使用协议格式和数据。但我在为这些数据嵌套表创建表时遇到问题。例如,基本消息格式由msg1给出,从^A1128开始,到^A10结束。现在,对于msg2,我们有相同的基本消息,从^A1128开始,多条消息从^A1023开始,到^A346结束

数据以不带空格的行顺序出现,并且在消息末尾有一个\n字符。像这样的,

^A1128=9^A9=157^A35=X^A49=CME^A34=406238^A52=20130715123719934^A75=20130715^A268=1^A279=1^A22=8^A48=28112^A83=49004^A107=ESZ3^A269=1^A270=166775^A271=186^A273=123719000^A336=2^A346=3^A1023=1^A10=210^A
下面是我用来在配置单元中创建表但没有成功的代码

        CREATE EXTERNAL TABLE fix_map
        (tag MAP<INT, STRING>)
        ROW FORMAT DELIMITED
        COLLECTION ITEMS TERMINATED BY '1'
        FIELDS TERMINATED BY '2'
        MAP KEYS TERMINATED BY '='
        LOCATION '/user/data/';

如果您有任何建议,我将不胜感激。

我没有找到这个问题的具体答案,我使用了不同的方法来解决这个问题。第一种解决方案是创建两个不同的表,一个用于主修复程序,另一个用于嵌套零件,然后连接两个表。我使用以下代码创建第一个表:

        CREATE TABLE futures_fix(
          tag MAP<INT,STRING>
          )
        ROW FORMAT DELIMITED
        FIELDS TERMINATED BY '2'
        COLLECTION ITEMS TERMINATED BY '1'
        MAP KEYS TERMINATED BY '='
        LOCATION '/user/lcoation/data/';
        CREATE TABLE futures_fix(
          tag MAP<INT,STRING>
          )
        ROW FORMAT DELIMITED
        FIELDS TERMINATED BY '2'
        COLLECTION ITEMS TERMINATED BY '1'
        MAP KEYS TERMINATED BY '='
        LOCATION '/user/lcoation/data/';
     {
        "ApplVerID":"FIX50SP2",
        "BodyLength":"136",
        "MsgType":"MARKETDATAINCREMENTALREFRESH",
        "SenderCompID":"CME",
        "MsgSeqNum":"578",
        "SendingTime":"20130714180133577",
        "TradeDate":"20130715",
        "NoMDEntries":"1",
        "MDEntries":[
           {
              "MDUpdateAction":"NEW",
              "SecurityIDSource":"EXCHANGE SYMBOL",
              "SecurityID":"111473",
              "SettlDate":"20130712",
              "RptSeq":"1",
              "SecurityDesc":"ESU4",
              "MDEntryType":"SETTLEMENT PRICE",
              "MDEntryPx":"164350",
              "MDEntryTime":"180133000"
           }
        ],
        "CheckSum":"248"
     }