我正在使用 Cygnus 通过 httpfs 向 Cosmos 发送 Orion Context Broker 通知。
Hive 历史记录中发送到 Cosmos 的数据存储在哪里?存储 Cygnus 数据的表的名称是什么?
Cygnus 在 Cosmos 中保存的 Orion 上下文数据存储在纯文本 HDFS 文件中。如果结构正确,该文件的内容可以加载到 Hive 表中,并可以使用 HiveQL(一种类似 SQL 的语言)来查询这些表。
创建 Hive 表的方式取决于您使用的 Cygnus 版本:
-
Cygnus 0.1: you have to create the Hive external table by yourself. In order to do that:
- 使用 SSH 凭据登录 Cosmos 头节点。
- 通过键入调用 Hive CLI
hive
- 添加以下 HiveQL 语句:
create external table <table_name> (recvTimeTs bigint, recvTime string, entityId string, entityType string, attrName string, attrType string, attrValue string) row format delimited fields terminated by '|' location '/user/<myusername>/<mydataset>/';
- 请观察所有实体数据都存储在同一个且唯一的 Hive 表中。这是可能的,因为 HDFS 文件/Hive 表中的所有行/行都引用属于实体标识符或特定类型的特定类型的属性。
-
天鹅座0.2:上面的Hive外部表是自动创建的。表名是
<myusername>_<mydataset>
。与 Cygnus 0.1 一样,所有实体数据都存储在相同且唯一的 Hive 表中。
-
天鹅座 0.3 或更高:在撰写此回复时,Cygnus 0.3 尚未发布,但在该版本中,Orion 数据不会通过为每个属性添加新行/行以及添加包含以下内容的新行/行来专门持久保存:需要完整实体的属性列表。在这种情况下,由于行/行可能不具有相同的维度,因此设想为每个实体创建一个 Hive 表。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)