有没有更深层次的原因,MySql不提供创建没有字段定义的联合表?

时间:2017-12-24 21:10:52

标签: mysql federated-storage-engine

pre:我的问题不是如何生成这个表。

我只是想知道,如果有更深层次的原因,MySql不会提供像这样的声明

CREATE TABLE my_fed_db.foobartab clone
ENGINE=FEDERATED
CONNECTION='my_remote[/localname]';   

所以所有字段都是相同的定义(名称,类型,整理),表的名称是相同的,DEFAULT CHARSET也是相同的。

我是否找不到语法,是否具有安全性?或者它没有实施?

我只是编写了这个脚本,但是我想知道我是否是唯一一个可以使用它的人,或者 - 是否存在完全克隆定义的隐藏问题,我将稍后再遇到。

1 个答案:

答案 0 :(得分:1)

它没有实施。

MySQL的一位前工程经理告诉我,FEDERATED专门针对一个用例开发 - 支持高INSERT速率,例如以单个MySQL实例无法维持的速率记录高流量活动的应用程序

实施工作是在2005年左右在MySQL 5.0中完成的。但它被标记为"概念证明"实施(即实验),从那以后它还没有得到很多发展。

基本上它是为MySQL的一个特定客户创建的,正如我所知道的那样是一家电信公司。

我从未在其当前实现中找到对FEDERATED存储引擎的良好用法,通过分片(将应用程序编码为直接连接到多个数据库服务器实例)或使用专用代理解决方案无法更好地处理比如ProxySQL

目前支持高速率INSERT工作负载的其他解决方案包括Elastic Stack,或InfluxDB等时间序列数据库,或Apache Kafka等数据流平台。