하이브가 테이블과 컬럼 이름에서 유니 코드를 지원하지 않는 것 같습니다. 예를 들어 하이브에 키릴 문자 열 이름이있는 테이블을 만들 수 없습니다 (아래 예외 참조). 키릴 문자 테이블 및 열 이름을 사용하여 하이브를 만들 수있는 방법이 있습니까?하이브를 유니 코드 테이블과 컬럼 이름으로 사용할 수있는 방법이 있습니까?
내가 사용
$ 하둡 버전 하둡 2.2.0.2.0.6.0-101
서브 [email protected] : 호튼 웍스/hadoop.git -r에 의해 컴파일 된
b07b2906c36defd389c8b5bd22bebc1bead8115b 2014-01-09T05에 젠킨스 : 18Z
는 protoc으로 컴파일 된 2.5.0
hive> CREATE TABLE test2(`Имя` STRING, `НомерТелефона` INT);
NoViableAltException([email protected][])
at org.apache.hadoop.hive.ql.parse.HiveParser.type(HiveParser.java:27461)
at org.apache.hadoop.hive.ql.parse.HiveParser.colType(HiveParser.java:27229)
at org.apache.hadoop.hive.ql.parse.HiveParser.columnNameType(HiveParser.java:26935)
at org.apache.hadoop.hive.ql.parse.HiveParser.columnNameTypeList(HiveParser.java:25185)
at org.apache.hadoop.hive.ql.parse.HiveParser.createTableStatement(HiveParser.java:4264)
at org.apache.hadoop.hive.ql.parse.HiveParser.ddlStatement(HiveParser.java:2016)
at org.apache.hadoop.hive.ql.parse.HiveParser.execStatement(HiveParser.java:1298)
at org.apache.hadoop.hive.ql.parse.HiveParser.statement(HiveParser.java:938)
at org.apache.hadoop.hive.ql.parse.ParseDriver.parse(ParseDriver.java:190)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:424)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:342)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1000)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:911)
at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:259)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:413)
at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:781)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:614)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:212)
FAILED: ParseException line 1:31 cannot recognize input near ',' 'INT' ')' in column type