当前位置: 首页 > wzjs >正文

彩票网站开发网页模板库

彩票网站开发,网页模板库,wordpress 带数据,网页设计需要用到的软件一个客户使用doris做大数据分析平台,工程师对一张表进行insert操作后,doris反馈插入成功,但是再进行select查询的时候却找不到插入的数据: 客户尝试新建一个相同结构表,插入这条数据却能成功查询,从现象上面…

一个客户使用doris做大数据分析平台,工程师对一张表进行insert操作后,doris反馈插入成功,但是再进行select查询的时候却找不到插入的数据:

客户尝试新建一个相同结构表,插入这条数据却能成功查询,从现象上面看就是有问题的表把这条特定的数据给屏蔽了

我们查看创建表的sql语句,发现这个表有一个特殊的属性,就行添加了sequence_col列:

PROPERTIES (
"function_column.sequence_col" = "cdc_datetime"
);

查看一下官方文档说明:

function_column.sequence_col
只适用于 UNIQUE KEYS 模型,相同 Key 列下,保证 Value 列按照
source_sequence 列进行 REPLACE source_sequence 可以是数据源中的列,
也可以是表结构中的一列。
Unique Key 表设置了 Sequence 列时,在相同 Key 列下, Sequence 列的值会作为 REPLACE 聚合函数替换顺序的
依据,较大值可以替换较小值。当对这种表基于 DORIS_DELETE_SIGN 进行删除标记时,需要保证 Key 相同和
Sequence 列值要大于等于当前值
简单的说明:
如果指定了sequence_col列,那么后续所有的dml语句中sequence_col中的值必须比当前的值大,否则不会执行dml语句。
下面是一个测试:
1.创建一个测试表,指定sequence_col列为id3,并插入两条数据,注意id1为1的那条数据的id3也是1
MySQL [dsg]> CREATE TABLE test1(
id1 int,
id2 int,
id3 int
) ENGINE=OLAP
UNIQUE KEY(id1)
DISTRIBUTED BY HASH(id1) BUCKETS 10
PROPERTIES (
"function_column.sequence_col" = "id3"
);
Query OK, 0 rows affected (0.02 sec)MySQL [dsg]> insert into test1 values(1,1,1);
Query OK, 1 row affected (0.08 sec)
{'label':'label_daeda442be904e73_b57b04d45635655b', 'status':'VISIBLE', 'txnId':'89695911'}MySQL [dsg]> insert into test1 values(10,10,10);
Query OK, 1 row affected (0.04 sec)
{'label':'label_a2b44a5973ea45e6_846ed523f9c96e53', 'status':'VISIBLE', 'txnId':'89695993'}MySQL [dsg]> select * from test1;
+------+------+------+
| id1  | id2  | id3  |
+------+------+------+
|    1 |    1 |    1 |
|   10 |   10 |   10 |
+------+------+------+
2 rows in set (0.02 sec)

2.再插入一条id1为1的数据,其中id3为3,由于3大于原来的1,所以插入成功了,由于表是主键模型,所以自动进行了merge操作,将原来的id1=1的数据进行了更新:


MySQL [dsg]> insert into test1 values(1,2,3);
Query OK, 1 row affected (0.04 sec)
{'label':'label_a093042f5aeb4178_9737ebea388e46fb', 'status':'VISIBLE', 'txnId':'89696333'}MySQL [dsg]> select * from test1;
+------+------+------+
| id1  | id2  | id3  |
+------+------+------+
|   10 |   10 |   10 |
|    1 |    2 |    3 |
+------+------+------+
2 rows in set (0.01 sec)

3.我们再插入一条id1为1的数据,但是设置id3为2,由于2小于原来的3,所以虽然显示插入成功了,但是其实内部并没有执行:


MySQL [dsg]> insert into test1 values(1,2,2);
Query OK, 1 row affected (0.08 sec)
{'label':'label_95526ec3f68b42e3_a0b494fcb2f85077', 'status':'VISIBLE', 'txnId':'89696448'}MySQL [dsg]> select * from test1;
+------+------+------+
| id1  | id2  | id3  |
+------+------+------+
|   10 |   10 |   10 |
|    1 |    2 |    3 |
+------+------+------+
2 rows in set (0.01 sec)

4.我们尝试删除这条id1为1的数据,然后再插入上面的数据,可以看到,虽然数据被删了,但是依然没有成功插入:

MySQL [dsg]> delete from test1 where id1=1;
Query OK, 1 row affected (0.05 sec)
{'label':'label_be5ae127f6d34fb3_9ed8e05017099387', 'status':'VISIBLE', 'txnId':'89851113'}MySQL [dsg]> select * from test1;
+------+------+------+
| id1  | id2  | id3  |
+------+------+------+
|   10 |   10 |   10 |
+------+------+------+
1 row in set (0.01 sec)MySQL [dsg]> insert into test1 values(1,2,2);
Query OK, 1 row affected (0.07 sec)
{'label':'label_1593e3617ccf460f_94586473d5cee593', 'status':'VISIBLE', 'txnId':'89851253'}MySQL [dsg]> select * from test1;
+------+------+------+
| id1  | id2  | id3  |
+------+------+------+
|   10 |   10 |   10 |
+------+------+------+
1 row in set (0.01 sec)

这是因为虽然你删除了,但是表内部其实只是打了标记,那么后续只要再插入id1为1的数据,依然受删除的这条数据sequence_col列的影响,可以设置set show_hidden_columns=true;来查看被删除的数据:


set show_hidden_columns = true;
变量设置后再查询MySQL [dsg]> set show_hidden_columns = true;
Query OK, 0 rows affected (0.00 sec)MySQL [dsg]> select * from  test1;
+------+------+------+-----------------------+-----------------------+------------------------+
| id1  | id2  | id3  | __DORIS_DELETE_SIGN__ | __DORIS_VERSION_COL__ | __DORIS_SEQUENCE_COL__ |
+------+------+------+-----------------------+-----------------------+------------------------+
|   10 |   10 |   10 |                     0 |                     3 |                     10 |
|    1 |    2 |    3 |                     1 |                     6 |                      3 |
+------+------+------+-----------------------+-----------------------+------------------------+
2 rows in set (0.01 sec)

可以看到id1=1的列被标记为删除,他的sequence_col为3

后续如果要dml这条数据,那么id3的值必须要大于3才能成功。

 

http://www.dtcms.com/wzjs/582672.html

相关文章:

  • 哪些网站是php建站有哪些公司
  • 企业推广网站1号网站建设 高端网站建设
  • 资阳房地产网站建设内蒙古赤峰市信息网官网
  • 河北远策网站建设通江县网站建设
  • 2017做淘宝客网站还有吗抖音seo关键词优化怎么做
  • 商贸有限公司注销流程成都网站优化平台
  • 做ppt模板网站有哪些内容天津公司网站设计
  • 南山建网站祁东县建设局网站
  • 电子商务网站系统建设实训心得快速生成网页的软件
  • 网站代免费个人简历表格空白word
  • 什么源码做有趣的网站东莞公司注册要多少钱
  • 塑胶制品 东莞网站建设wordpress获取图片的绝对地址
  • 做小程序要有网站吗莱芜区政协网站
  • 公司网站域名和空间使用费wordpress无刷新评论
  • 黑群晖做php网站国际热点事件
  • 是不是做网站就能赚钱铜陵港航投资建设集团网站
  • 企业移动网站建设微商代理怎么找货源
  • 大学生网站开发与设计实训报告网站建设 微信公众号
  • 专门做男装的网站上海网网站建设
  • 了解网站建设广州服装设计公司排行
  • 外包 网站开发公司什么网站可以做ppt
  • thinkphp建站网址兰州生活网
  • 网站开发实验室建设方案网站建设swot分析
  • 欢迎访问中国建设银行网站密码重置做那个的网站谁有
  • 重庆的主要的网站电商网站100排行榜
  • 简述一个网站开发流程企业网站建设基本流程
  • 音乐分享网站源码最好的搭建网页的平台
  • 网站制作的服务怎么样青海网站建设与管理
  • dw怎样做网站链接站点查询
  • 做抛物线的网站猎聘网招聘