I assume you¹re using v0.6.x Kylin, which need the source table be TextInputFormat; From 0.7.x, it will support multiple file formats like ORC, Avro.
In 0.6.x, Kylin will read the table¹s hdfs file directly, detecting its field delimiter (you can refer to https://github.com/KylinOLAP/Kylin/blob/master/dictionary/src/main/java/com /kylinolap/dict/lookup/FileTableReader.java#L51); If there is a cell¹s content contains the delimiter, that may cause the problem; You may need do a data cleanup in the source file. On 2/25/15, 5:24 PM, "Jakob Stengård" <[email protected]> wrote: >I get the following error when trying to build a cube with dimensions: > >[QuartzScheduler_Worker-1]:[2015-02-25 >10:12:23,362][ERROR][com.kylinolap.job.hadoop.dict.CreateDictionaryJob.run >(CreateDictionaryJob.java:55)] >- Bad hive table row, TableDesc [name=TESTDATA_TIME] expect 5 columns, but >got [2012-07-30 08:56:01.776 2012 7 30 8] >java.lang.IllegalStateException: Bad hive table row, TableDesc >[name=TESTDATA_TIME] expect 5 columns, but got [2012-07-30 08:56:01.776 >2012 7 30 8] > at >com.kylinolap.dict.lookup.SnapshotTable.takeSnapshot(SnapshotTable.java:68 >) > at >com.kylinolap.dict.lookup.SnapshotManager.buildSnapshot(SnapshotManager.ja >va:94) > at >com.kylinolap.cube.CubeManager.buildSnapshotTable(CubeManager.java:208) > at ... > > >What format do i need to have dim tables in? >I've tried ORC, TEXTFILE and SEQUENCEFILE so far, but building the >dictionary doesn't seem >to work with any of those. > >Best regards >/Jakob Stengård
