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

鲜花加盟网站建设视频制作软件推荐

鲜花加盟网站建设,视频制作软件推荐,为什么打开网址都是seo综合查询,高新区微网站建设1 概述 MySQL 的用户群体很大#xff0c;为了能够增强数据的实时性#xff0c;很多解决方案会利用 binlog 将数据写入到 ClickHouse。为了能够监听 binlog 事件#xff0c;我们需要用到类似 canal 这样的第三方中间件#xff0c;这无疑增加了系统的复杂度。 ClickHouse 20.… 1 概述 MySQL 的用户群体很大为了能够增强数据的实时性很多解决方案会利用 binlog 将数据写入到 ClickHouse。为了能够监听 binlog 事件我们需要用到类似 canal 这样的第三方中间件这无疑增加了系统的复杂度。 ClickHouse 20.8.2.3版本新增加了 MaterializeMySQL 的 database 引擎该 database 能映射到 MySQL 中的某个 database并自动在 ClickHouse 中创建对应的 ReplacingMergeTree。ClickHouse服务做为MySQL副本读取Binlog并执行DDL和DML请求实现了基于MySQL Binlog机制的业务数据库实时同步功能。 1.1 特点 1MaterializeMySQL 同时支持全量和增量同步在 database 创建之初会全量同步 MySQL 中的表和数据之后则会通过 binlog 进行增量同步。 2MaterializeMySQL database 为其所创建的每张 ReplacingMergeTree 自动增加了 _sign 和 _version 字段。 其中 _version 用作 ReplacingMergeTree 的 ver 版本参数每当监听到 insert、update 和 delete 事件时在 databse 内全局自增。而 _sign 则用于标记是否被删除取值 1 或者 -1。 目前 MaterializeMySQL 支持如下几种 binlog 事件: MYSQL_WRITE_ROWS_EVENT:  _sign  1_version MYSQL_DELETE_ROWS_EVENT: _sign  -1_version MYSQL_UPDATE_ROWS_EVENT: 新数据 _sign  1MYSQL_QUERY_EVENT: 支持 CREATE TABLE 、DROP TABLE 、RENAME TABLE等。 1.2 使用细则 1DDL查询 MySQL DDL查询被转换成相应的ClickHouse DDL查询ALTER, CREATE, DROP, RENAME。如果ClickHouse不能解析某些DDL查询该查询将被忽略。 2数据复制 MaterializeMySQL不支持直接插入、删除和更新查询而是将DDL语句进行相应转换 MySQL INSERT查询被转换为INSERT with _sign1。 MySQL DELETE查询被转换为INSERT with _sign-1。 MySQL UPDATE查询被转换成INSERT with _sign1和INSERT with _sign-1。 3SELECT查询 如果在SELECT查询中没有指定_version则使用FINAL修饰符返回_version的最大值对应的数据即最新版本的数据。 如果在SELECT查询中没有指定_sign则默认使用WHERE _sign1即返回未删除状态_sign1)的数据。 4索引转换 ClickHouse数据库表会自动将MySQL主键和索引子句转换为ORDER BY元组。 ClickHouse只有一个物理顺序由ORDER BY子句决定。如果需要创建新的物理顺序请使用物化视图。 2 案例实操 2.1 MySQL开启binlog和GTID模式 1确保 MySQL 开启了 binlog 功能且格式为 ROW 打开/etc/my.cnf,在[mysqld]下添加 server-id1  log-binmysql-bin binlog_formatROW 2开启GTID模式 如果如果clickhouse使用的是20.8 prestable之后发布的版本那么MySQL还需要配置开启GTID模式, 这种方式在mysql主从模式下可以确保数据同步的一致性(主从切换时)。 gtid-modeon enforce-gtid-consistency1    # 设置为主从强一致性 log-slave-updates1   # 记录日志 GTID 是 MySQL 复制增强版从 MySQL 5.6 版本开始支持目前已经是 MySQL 主流复制模式。它为每个 event 分配一个全局唯一ID和序号我们可以不用关心 MySQL 集群主从拓扑结构直接告知 MySQL 这个 GTID 即可。 3重启MySQL sudo systemctl restart mysqld 2.2 准备MySQL表和数据 1在 MySQL 中创建数据表并写入数据 CREATE DATABASE testck;CREATE TABLE testck.t_organization (id int(11) NOT NULL AUTO_INCREMENT,code int NOT NULL,name text DEFAULT NULL,updatetime datetime DEFAULT NULL,PRIMARY KEY (id),UNIQUE KEY (code) ) ENGINEInnoDB;INSERT INTO testck.t_organization (code, name,updatetime) VALUES(1000,Realinsight,NOW()); INSERT INTO testck.t_organization (code, name,updatetime)  VALUES(1001, Realindex,NOW()); INSERT INTO testck.t_organization (code, name,updatetime) VALUES(1002,EDT,NOW());2创建第二张表 CREATE TABLE testck.t_user (id int(11) NOT NULL AUTO_INCREMENT,code int,PRIMARY KEY (id) ) ENGINEInnoDB;INSERT INTO testck.t_user (code) VALUES(1);2.3 开启ClickHouse物化引擎 set allow_experimental_database_materialize_mysql1; 2.4 创建复制管道 1ClickHouse中创建  MaterializeMySQL 数据库 CREATE DATABASE test_binlog ENGINE  MaterializeMySQL(hadoop1:3306,testck,root,000000); 其中 4 个参数分别是 MySQL地址、databse、username 和 password。  2查看ClickHouse的数据 use test_binlog; show tables; select * from t_organization; select * from t_user; 2.5 修改数据  1在 MySQL 中修改数据: update t_organization set name  CONCAT(name,-v1)  where id  1  2查看clickhouse日志可以看到binlog监听事件查询clickhouse select * from t_organization; 2.6 删除数据 1MySQL删除数据: DELETE FROM t_organization where id  2; 2ClicKHouse日志有 DeleteRows 的 binlog 监听事件查看数据 select * from t_organization;  3在刚才的查询中增加 _sign 和 _version 虚拟字段 select *,_sign,_version from t_organization order by _sign desc,_version desc; 在查询时对于已经被删除的数据_sign-1ClickHouse 会自动重写 SQL将 _sign  -1 的数据过滤掉; 对于修改的数据则自动重写 SQL为其增加 FINAL 修饰符。 select * from t_organization 等同于 select * from t_organization final where _sign  1 2.7 删除表  1在mysql执行删除表 drop table t_user;  2此时在clickhouse处会同步删除对应表如果查询会报错 show tables; select * from t_user; DB::Exception: Table scene_mms.scene doesnt exist..  3mysql新建表clickhouse可以查询到 CREATE TABLE testck.t_user (id int(11) NOT NULL AUTO_INCREMENT,code int,PRIMARY KEY (id) ) ENGINEInnoDB;INSERT INTO testck.t_user (code) VALUES(1);#ClickHouse查询 show tables; select * from t_user;
http://www.sadfv.cn/news/83802/

相关文章:

  • wordPress主题模板站wordpress 前端会员中心
  • 团支部智慧团建网站搜索引擎营销的主要模式有哪些
  • 微网站内页百度在线扫题入口
  • 通过apache建设网站进入qq空间登录
  • 郴州网站设计公司WordPress十大免费CMS主题
  • 百度不到公司网站电脑装wordpress
  • 惠州百优做网站小程序熊掌号工业园做网站的公司
  • dns看国外网站网页设计作业成品代码啊
  • 丹徒网站建设策划html教程 it教程网
  • 安远网站制作盘锦做网站
  • 玄武网站建设成都网站建设:思乐科技
  • 做网赌网站怎么推广公司招聘网站 哪个部门做
  • ftp上传网站之后网络舆情分析报告
  • 太原自学网站建设现在用什么做网站
  • 创建一个网站需要做哪些工作北湖区网站建设哪家好
  • 我有云服务器如何建站做网站通过什么赚钱吗
  • 广西省建设厅官方网站广州市网站制作服务公司
  • 凡科建站小程序制作兰州网站建设技能论文
  • 自己做视频的网站东莞公司官网建站
  • 做外墙资料的网站wordpress数据量大网站访问
  • 学做网站后台开发wordpress交易系统
  • 网站服务器租用4t多少钱一年啊搞网站建设赚钱不
  • wordpress考试系统插件sem优化方法
  • 网站建设洽谈问题什么网站可以做英语题
  • 郑州%公司 网站建设药品彩页设计
  • 苏州区建设局网站首页网站的成本
  • 影视网站建设多少钱专业的营销型网站制作
  • 怎么用网页源码做网站制作网站视频教程
  • 做国外家具贸易的网站链天网站建设
  • 旅游攻略那个网站做的好如何知道自己网站租用的服务器去