数据查询

Lindorm宽表引擎在集群管理系统中提供了SQL查询入口,您可以使用SQL语法来查询Lindorm宽表数据。本节介绍通过集群管理系统查询宽表数据。

前提条件

已登录目标实例的集群管理系统,具体操作请参见登录集群管理系统

使用限制

  • 为确保数据安全,本系统每次查询最多返回100条数据。

  • ROW字段对应Lindorm的RowKey,ROWqualifier都是varbinary类型,qualifier如果不属于family,需要指定family。

  • ROWCOL是SQL保留字段,查询时需要加反引号(`)。qualifier指定family时也需要加反引号(`)。

数据查询(兼容HBase)

数据查询(兼容HBase)界面支持查询指定表的详细信息,也支持为已有的表新增相关属性。

查询已有数据

支持查询SQL表HBase表中已有的数据。

  1. 在集群管理系统的左侧导航栏中,选择数据查询 > 数据查询(兼容HBase)

  2. 设置筛选条件,包括namespace

  3. 可选:输入列簇、row key、start key(分区起始Key)、end key(分区终止Key)和limit(显示条数)。

  4. 单击查询,界面将展示目标表中的已有数据。

添加HBase数据

数据添加操作仅针对HBase表,SQL表不支持通过此操作添加数据。

  1. 单击添加。

  2. 添加表数据对话框中,输入以下参数:

    参数

    说明

    row key

    HBase表的RowKey名称。

    列名称

    需要新增的列名称,填写时必须指定列簇。格式为<列簇名:列名>,例如f:name

    时间戳

    仅支持写入Unix时间戳。

    数据值

    支持的数据类型,请参见基础数据类型

  3. 单击确定,添加一行数据。

修改已有数据

支持修改SQL表HBase表中已有的数据。

  1. 单击目标行操作列中的编辑image.png

  2. 编辑表数据对话框中,修改时间戳和数据值。

  3. 单击确定,保存修改后的数据。

SQL执行器

  1. 在集群管理系统的左侧导航栏中,选择数据查询 > SQL执行器

  2. namespace下拉列表中选择命名空间,页面右侧会自动显示该命名空间中的表。

  3. 可选:获取HexCode编码字符。具体操作,请参见获取HexCode编码字符

  4. 在编辑器中输入SQL语句。

  5. 单击执行

    说明

    执行操作也可以通过组合键完成。Windows系统:CTRL+ENTER。macOS系统:COMMAND+RETURN。

获取HexCode编码字符

在查询HBase中指定ROW的数据,或对Varbinary类型的字段进行条件查询时,必须使用HexCode编码的字符串作为Value。例如:查询RowKey为r1的数据,SQL查询语句中的WHERE应该写成WHERE rowkey='7321'(r1的HexCode编码字符为7321)。为了方便您获取HexCode编码字符,集群管理系统的数据查询页面提供了转换工具。

  1. 在集群管理系统的左侧导航栏中,选择数据查询 > SQL执行器

  2. namespace下拉列表中选择命名空间,页面右侧会自动显示该命名空间中的表。

  3. 获取HexCode编码字符转化结果。

    • 方法一:点击执行查看目标表的结构,将目标字符串输入到字符串转换十六进制文本框中,在编辑器顶部获取转换结果。image.png

    • 方法二:打开HexString开关后,点击执行,在执行结果中获取已转换为HexCode编码字符的值。image.png

  4. 在编辑器中编写SQL语句,并用转换后的HexCode编码字符替换转换前的值。

    假设原查询语句为SELECT * FROM task WHERE ROW = "xxxx1";,则替换后的语句为SELECT * FROM task WHERE ROW = "7878787831";

  1. 单击执行