Brisk cassandra TimeUUIDType
我用的是轻快的。 cassandra 列族自动映射到 Hive 表。
但是,如果列族中的数据类型为 timeuuid,则在 Hive 表中不可读。
例如,我使用以下命令在 hive 中创建外部表来映射列族。
Hive > create external table A (rowkey string, column_name string, value string)
> STORED BY 'org.apache.hadoop.hive.cassandra.CassandraStorageHandler'
> WITH SERDEPROPERTIES (
> "cassandra.columns.mapping" = ":key,:column,:value");
如果 cassandra 中的列名称为 TimeUUIDType,则它在 Hive 表中将变得不可读。
例如,cassandra 列族中的一行如下所示:
RowKey: 2d36a254bb04272b120aaf79d70a3578
=> (column=29139210-b6dc-11df-8c64-f315e3a329d6, value={"event_id":101},timestamp=1283464254261)
其中列名称为 TimeUUIDType。
在 Hive 表中,它看起来像下面一行:
2d36a254bb04272b120aaf79d70a3578 t��ߒ4��!�� {"event_id":101}
因此,Hive 表中的列名称不可读。
I used brisk. The cassandra column family automatically maps to Hive tables.
However, if data type is timeuuid in column family, it is unreadable in Hive tables.
For example, I used following command to create an external table in hive to map column family.
Hive > create external table A (rowkey string, column_name string, value string)
> STORED BY 'org.apache.hadoop.hive.cassandra.CassandraStorageHandler'
> WITH SERDEPROPERTIES (
> "cassandra.columns.mapping" = ":key,:column,:value");
If column name is TimeUUIDType in cassandra, it becomes unreadable in the Hive table.
For example, a row in cassandra column family looks like:
RowKey: 2d36a254bb04272b120aaf79d70a3578
=> (column=29139210-b6dc-11df-8c64-f315e3a329d6, value={"event_id":101},timestamp=1283464254261)
Where column name is TimeUUIDType.
In hive table, it looks like the following row:
2d36a254bb04272b120aaf79d70a3578 t��ߒ4��!�� {"event_id":101}
So, column name is unreadable in Hive table.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是自动表映射的一个已知问题。为了获得 timeUUIDType 的最佳结果,请在 $brisk_home/resources/hive/hive-site.xml 中关闭自动映射功能:
“cassandra.autoCreateHiveSchema”
并手动在 hive 中创建表。
This is a known issue with the automatic table mapping. For best results with a timeUUIDType, turn the auto-mapping feature off in $brisk_home/resources/hive/hive-site.xml:
"cassandra.autoCreateHiveSchema"
and create the table in hive manually.