DRDs sub-biblioteca de aprendizagem sub-mesa - por mês Dividir tabela

requisitos

  • Divisão de chave do tipo deve ser date / datetime / timestamp, em que um.
  • DRDs versão instância deve ser mais do que 5.1.28-1320920 sua versão. DRDs liberar notas referem-se a documentação Release Notes.

roteamento

Vínculo dividida valor de tempo de acordo 年份com o 月份valor de hash calculado, e, em seguida, o número de pontos para obter I biblioteca, o cálculo da rota completa.

Por exemplo: AAAAMM ( '2012-12-31 12:12:12') é equivalente ao (2012 * 12 + 12)% D, (D é o número de sub-biblioteca).

cenários de uso

Adequado para a necessidade de pressionar 年份o 月份sub-biblioteca cena, recomenda-se que a função será usado em conjunto com YYYYMM tbpartition (ShardKey).

Por exemplo, suponha que o usuário já dividida DRDs oito biblioteca física, a empresa agora tem os seguintes cenários:

  1. Um negócio quer dividir a biblioteca em cronológica;
  2. Ela exige os mesmos dados pode ocorrer no mesmo mês, um sub-mesa, e 两年以内的每个月都单独对应一张分表;
  3. Traga pontos-chave da tabela sub-biblioteca depois de cair diretamente uma consulta físicas pontos da tabela de partição a uma consulta biblioteca física.

Em seguida, o usuário pode então usar uma função YYYYMM sub-biblioteca de ser resolvido: os requisitos de negócio dentro de dois anos de cada mês corresponde a um sub-tabela (uma tabela que mês), uma vez que um ano tem 12 meses, por isso, pelo menos você precisa criar 24 minutos de tabela física para atender a cena do usuário, e DRDs do usuário tem oito sub-bibliotecas, cada sub-biblioteca deve ser construído de três tabela de pontos física. Portanto, o usuário deve corresponder aos cenários de negócios DDL deve ser:

    criar  tabela test_yyyymm_tb (     
        ID int , 
        nome VARCHAR ( 30 ) PADRÃO  NULL ,   
        create_time datetime  PADRÃO  NULL ,
         primário  chave (id) 
    ) do motor = InnoDB PADRÃO CHARSET = UTF-8 
    dbpartition por AAAAMM (create_time) 
    tbpartition por AAAAMM (create_time) tbpartitions 3 ;

precauções

  • YYYYMM não é suportado de forma independente para cada data que corresponde a uma sub-tabela, o sub-mesa YYYYMM sub-biblioteca deve ser um número fixo de tabelas de peças.
  • Quando, depois de um ciclo de meses (por exemplo, um ciclo 2012-03 2013-03), o mesmo mês a mesma é susceptível de ser encaminhado para uma sub-biblioteca de sub-tabela, dependendo do número real de quadros parciais podem ser.

Acho que você gosta

Origin www.cnblogs.com/puzi0315/p/12666874.html
Recomendado
Clasificación