AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 47739
Accepted
LOSTinDB
LOSTinDB
Asked: 2013-08-08 10:32:25 +0800 CST2013-08-08 10:32:25 +0800 CST 2013-08-08 10:32:25 +0800 CST

Por que configurar dados estáticos em visualizações versus usar tabelas no mysql?

  • 772

Recebo um feed LDAP todas as noites. Eu o recebo como um arquivo de texto e despejo/crio minha tabela LDAPALL. Existem cerca de 75 mil funcionários vezes cerca de 50 campos.

Eu também tenho o seguinte:

LDAPIMPORTANTE - visualização que armazena todos os 75K, mas apenas 15 campos

LDAPSHORT - visualização que armazena todos os 75k, mas 5 campos

LDAPAB - visualização que armazena apenas 9 mil funcionários com base em dois grupos (pesquisa de campo)

Cada um deles é muito usado e para aplicativos diferentes e também há muitas visualizações escritas nessas visualizações. Mas não há atualizações para eles. Não atualizamos os dados dos funcionários. É apenas atualização LDAPALL uma vez por noite.

Nessa circunstância, devo criar tabelas da tabela LDAPALL em vez de exibições? Eu poderia configurar trabalhos para criar essas tabelas uma vez por noite. Qual é a melhor prática por trás disso? Fale em termos leigos porque sou um desenvolvedor PHP feito para fazer todas as coisas de administração de banco de dados.

best-practices mysql-5.5
  • 3 3 respostas
  • 1800 Views

3 respostas

  • Voted
  1. Cade Roux
    2013-08-08T10:54:51+08:002013-08-08T10:54:51+08:00

    Eu simplesmente usaria as visualizações se elas funcionassem. Não há necessidade de fazer cópias de dados desnecessariamente, e muitas plataformas de banco de dados permitem exibições indexadas ou materializadas e exibições filtradas, etc.

    NO ENTANTO, o MySQL não suporta exibições indexadas. Portanto, a menos que os índices subjacentes em sua tabela ofereçam suporte às várias maneiras pelas quais você acessa os dados, pode valer a pena materializar você mesmo uma versão da exibição.

    • 4
  2. Walter Mitty
    2013-08-08T11:45:40+08:002013-08-08T11:45:40+08:00

    O conceito de substituir uma visualização por uma tabela que contém os mesmos dados (agora duplicados) é chamado de visualização materializada.
    A resposta para sua pergunta pode estar aqui

    • 3
  3. Best Answer
    LOSTinDB
    2013-08-19T10:35:16+08:002013-08-19T10:35:16+08:00

    Eu dei um +1 para as visualizações materializadas. Se isso fosse algo mais em tempo real, esse é o caminho a percorrer. Mas o fato de eu ter apenas uma atualização por dia sobre a população de usuários foi apenas muito trabalho para pouca recompensa.

    Acabei montando um conjunto de consultas que são agendadas para criar as "sub-tabelas" que achei muito mais eficientes do que fazer as views. Temos cerca de 10 subtabelas que suportam tudo. A maioria deles leva cerca de 2 a 4 segundos para ser criada e são distribuídos por 20 minutos durante a noite.

    Temos muitas visualizações criadas a partir dessas subtabelas e tudo está funcionando muito rápido em comparação com a criação de toneladas de visualizações em uma grande tabela - que tinha muitos dados que não usamos/necessitamos.

    • 0

relate perguntas

  • Modelo de banco de dados com usuários, funções e direitos

  • Melhor maneira de identificar dados órfãos?

  • Como gerenciar meus próprios scripts

  • Qual é a configuração RAID recomendada para um banco de dados Oracle?

  • Melhores práticas para conectar bancos de dados que estão em diferentes regiões geográficas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Conceder acesso a todas as tabelas para um usuário

    • 5 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    pedrosanta Listar os privilégios do banco de dados usando o psql 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve