加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

Apache Flink 漫谈系列 - 流表对偶(duality)性

发布时间:2018-11-01 11:37:17 所属栏目:教程 来源:孙金城
导读:实际问题 很多大数据计算产品,都对用户提供了SQL API,比如Hive, Spark, Flink等,那么SQL作为传统关系数据库的查询语言,是应用在批查询场景的。Hive和Spark本质上都是Batch的计算模式(在《Apache Flink 漫谈系列 - 概述》我们介绍过Spark是Micro Batchi

我们以对MySQL进行实际操作的方式,直观的介绍一下binlog的生成,binlog是二进制存储的,下面我们会利用工具查看binlog的文本内容。

  • 查看一下binlog是否打开:
    1. show variables like 'log_bin' 
    2.     -> ; 
    3. +---------------+-------+ 
    4. | Variable_name | Value | 
    5. +---------------+-------+ 
    6. | log_bin       | ON    | 
    7. +---------------+-------+ 
    8. 1 row in set (0.00 sec) 
  • 查看一下binlog的模式(我需要row-base模式):
    1. show variables like 'binlog_format'; 
    2. +---------------+-------+ 
    3. | Variable_name | Value | 
    4. +---------------+-------+ 
    5. | binlog_format | ROW   | 
    6. +---------------+-------+ 
    7. 1 row in set (0.00 sec) 
  • 清除现有的binlog
    1. MySQL> reset master; 
    2. Query OK, 0 rows affected (0.00 sec)创建一张我们做实验的表MySQL> create table tab( 
    3.     ->    id INT NOT NULL AUTO_INCREMENT, 
    4.     ->    user VARCHAR(100) NOT NULL, 
    5.     ->    clicks INT NOT NULL, 
    6.     ->    PRIMARY KEY (id) 
    7.     -> ); 
    8. Query OK, 0 rows affected (0.10 sec) 
    9.  
    10. MySQL> show tables; 
    11. +-------------------+ 
    12. | Tables_in_Apache Flinkdb | 
    13. +-------------------+ 
    14. | tab         | 
    15. +-------------------+ 
    16. 1 row in set (0.00 sec) 
  • 进行DML操作
    1. MySQL> insert into tab(user, clicks) values ('Mary', 1); 
    2. Query OK, 1 row affected (0.03 sec) 
    3.  
    4. MySQL> insert into tab(user, clicks) values ('Bob', 1); 
    5. Query OK, 1 row affected (0.08 sec) 
    6.  
    7. MySQL> update tab set clicks=2 where user='Mary' 
    8.     -> ; 
    9. Query OK, 1 row affected (0.06 sec) 
    10. Rows matched: 1  Changed: 1  Warnings: 0 
    11.  
    12. MySQL> insert into tab(user, clicks) values ('Llz', 1); 
    13. Query OK, 1 row affected (0.08 sec) 
    14.  
    15. MySQL> update tab set clicks=2 where user='Bob'; 
    16. Query OK, 1 row affected (0.01 sec) 
    17. Rows matched: 1  Changed: 1  Warnings: 0 
    18.  
    19. MySQL> update tab set clicks=3 where user='Mary'; 
    20. Query OK, 1 row affected (0.05 sec) 
    21. Rows matched: 1  Changed: 1  Warnings: 0 
    22.  
    23. MySQL> select * from tab; 
    24. +----+------+--------+ 
    25. | id | user | clicks | 
    26. +----+------+--------+ 
    27. |  1 | Mary |      3 | 
    28. |  2 | Bob  |      2 | 
    29. |  3 | Llz  |      1 | 
    30. +----+------+--------+ 
    31. 3 rows in set (0.00 sec) 
  • 查看正在操作的binlog
    1. MySQL> show master statusG 
    2. *************************** 1. row *************************** 
    3.              File: binlog.000001 
    4.          Position: 2547 
    5.      Binlog_Do_DB: 
    6. Binlog_Ignore_DB: 
    7. Executed_Gtid_Set: 
    8. 1 row in set (0.00 sec) 

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读