• phoenix 建表无法映射hbase已有字段的问题解决


    1.插入的值如果是字符串的话,必须要用单引号括起来,不能用双引号
    2.建表的时候如果要想小写的话,必须要用双引号括起

    插入:upsert into "test"  values('002','Jack','Ma','ali','hangzhou');

    更新:upsert into "test"(empid,"name","address") values('002','Ali','Hangzhou')

    index ::CREATE INDEX "my_index" ON "test" ("company"."name");

    phoenix 建表无法映射hbase已有字段的问题解决(开启namespace后出现的问题)

     
     

    phoenix版本:4.13.2-cdh5.11.2

    遇到问题:当开启phoenix namespace功能之后,在phoenix中映射已有hbase的数据时,出现phoenix建表时不能匹配hbase表已有字段的问题:

    如图:

    hbase的字段NT_SALE_ORDER_ID没有被映射过来

    解决,这里有两种解决办法:

    1、在建表时添加参数“COLUMN_ENCODED_BYTES = 0”

    例:

    CREATE TABLE NT_SALE_ORDER(

    id VARCHAR NOT NULL PRIMARY KEY, 

    "info"."NT_SALE_ORDER_ID" VARCHAR)

    COLUMN_ENCODED_BYTES = 0;

    2、在phoenix client的hbase-site.xml中添加配置,

    <property>

    <name>phoenix.default.column.encoded.bytes.attrib</name>

    <value>0</value>

    </property>

    最后测试:

    上边解决方法任意一种都可以,统一把控可直接在hbase-site.xml做统一配置

    参考:https://phoenix.apache.org/columnencoding.html

  • 相关阅读:
    DBCC Page查看表和索引数据
    sp_configure
    学习
    OpenRowSet, OpenDataSource
    sp output
    SQL Server中使用CLR调用.NET方法
    SQL Server 2005五个有用的动态管理对象
    SQL显示执行语句信息
    接规则,每三个一组编一个号
    C# winform 与 flash as 的交互通讯
  • 原文地址:https://www.cnblogs.com/chang09/p/16208311.html
Copyright © 2020-2023  润新知