美文网首页
分布式复制表实践

分布式复制表实践

作者: spraysss | 来源:发表于2021-01-18 12:05 被阅读0次

    创建复制表

    use replic_db;
    CREATE TABLE retest on cluster cluster_2shards_2replicas(
        x UInt32
    ) ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/{database}/retest', '{replica}') 
    ORDER BY x;
    

    创建分布式表

    use replic_db;
    CREATE TABLE   retest_all_1  
    on cluster cluster_2shards_2replicas AS replic_db.retest ENGINE = Distributed(cluster_2shards_2replicas, replic_db, retest, rand());
    

    添加默认的zk路径

    vim /etc/clickhouse-server/conf/config.xml
    <default_replica_path>/clickhouse/tables/{shard}/{database}/{table}</default_replica_path>
    <default_replica_name>{replica}</default_replica_name>

    在创建ReplicatedMergeTree 不需要指定参数

    CREATE TABLE retest_def on cluster cluster_2shards_2replicas(
    x UInt32
    ) ENGINE = ReplicatedMergeTree
    ORDER BY x;

    CREATE TABLE gl_test.events on cluster cluster_2shards_2replicas
    (
        `event` String,
        `distinct_id` String,
        `time` DateTime,
        `pagetitle` String,
        `pagecontroller` String,
        `http_referer` String,
        `keyword` String,
        `latest_scene` String,
        `scene` String,
        `productdbpid` String,
        `url_path` String
    )
    ENGINE = ReplicatedMergeTree
    PARTITION BY toYYYYMMDD(time)
    ORDER BY time
    
    
    CREATE TABLE gl_test.events_all
    on cluster cluster_2shards_2replicas
     AS gl_test.events 
    ENGINE = Distributed('cluster_2shards_2replicas', 'gl_test', 'events', rand()) 
    

    相关文章

      网友评论

          本文标题:分布式复制表实践

          本文链接:https://www.haomeiwen.com/subject/genxaktx.html