CREATE UNIQUE INDEX "Producoes_Codigo_key" ON public."Producoes"
  USING btree ("Codigo" COLLATE pg_catalog."default");

CREATE INDEX "Producoes_idx_Codigo_Produto" ON public."Producoes"
  USING btree ("Codigo_Produto" COLLATE pg_catalog."default");

A tabela produtos é esta

CREATE TABLE public."Produtos" (
  "Codigo" public."d_Codigo" NOT NULL, 
  "Codigo_Barras" public."d_Codigo", 
  "Codigo_MateriaPrima" public."d_Codigo", 
  "Produto" public."d_Produto", 
  "Descricao" public."d_Descricao", 
  "Fabricante" public."d_Fabricante" DEFAULT 'LONGO'::character varying, 
  "Peso" public."d_Peso", 
  "Unidade" public."d_Unidade" DEFAULT 'PEJáA'::character varying, 
  "Setor" public."d_Setor", 
  "Quantidade_Partida" public."d_Quantidade", 
  "Data_Partida" public."d_Data", 
  "Quantidade_Atual" public."d_Quantidade", 
  "Quantidade_Minima" public."d_Quantidade", 
  "Quantidade_Maxima" public."d_Quantidade", 
  "Previsao_Entrada" public."d_Quantidade", 
  "Previsao_Saida" public."d_Quantidade", 
  "Data_Inventario" public."d_Data", 
  "Movimentacao_Proibida" public."d_Logico", 
  "Local_Estocado" public."d_Local", 
  "Custo_MaosDeObras" public."d_Moeda_15_4", 
  "Custo_MateriasPrimas" public."d_Moeda_15_4", 
  "Custo_SubProdutos" public."d_Moeda_15_4", 
  "Custo_Total" public."d_Moeda_15_4", 
  "Valor_MaosDeObras" public."d_Moeda_15_4", 
  "Valor_MateriasPrimas" public."d_Moeda_15_4", 
  "Valor_SubProdutos" public."d_Moeda_15_4", 
  "Valor_Total" public."d_Moeda_15_4", 
  "Acrescimo" public."d_Porcentagem", 
  "Preco_Sugerido" public."d_Moeda_15_4", 
  "Preco" public."d_Moeda_15_4", 
  "Intervencao_Preco" public."d_Nome", 
  "Classificacao_Fiscal" public."d_ClassificacaoFiscal", 
  "IPI" public."d_Porcentagem", 
  "Grupo" public."d_Grupo", 
  "Grupo_Item" public."d_GrupoItem", 
  "Data_Cadastro" public."d_Data", 
  "Ultimo_Usuario" public."d_Nome", 
  "Data_Modificado" public."d_DataHora", 
  "_CHAVE_UNICA" public."d_CHAVEUNICA" NOT NULL, 
  CONSTRAINT "Produtos_Codigo_Barras_key" UNIQUE("Codigo_Barras"), 
  CONSTRAINT "Produtos_Codigo_key" UNIQUE("Codigo"), 
  CONSTRAINT "Produtos_pkey" PRIMARY KEY("_CHAVE_UNICA"), 
  CONSTRAINT "Produtos_fk_MateriasPrimas" FOREIGN KEY ("Codigo_MateriaPrima")
    REFERENCES public."MateriasPrimas"("Codigo")
    ON DELETE RESTRICT
    ON UPDATE CASCADE
    NOT DEFERRABLE
) 
WITH (oids = false);

From: Eduardo Alexandre 
Sent: Tuesday, April 30, 2013 4:55 PM
To: Comunidade PostgreSQL Brasileira 
Subject: Re: [pgbr-geral] Postgres 9

Índices? 

Abraços,
____________________
Eduardo Alexandre





Em 30 de abril de 2013 16:51, Ricardo <rica...@longomaquinas.com> escreveu:

  Acabei de realizar o EXPLAIN ANALYZE e acho que o problema deve estar na 
configuração da conexão do zeoslib.

  Abraços
  Ricardo

  "Sort  (cost=2130.48..2142.33 rows=4741 width=434) (actual 
time=140.393..149.800 rows=4752 loops=1)"
  "  Sort Key: "Producoes"."Codigo", "Producoes"."Codigo_Produto""
  "  Sort Method: external merge  Disk: 1168kB"
  "  ->  Hash Left Join  (cost=579.54..899.52 rows=4741 width=434) (actual 
time=14.987..38.316 rows=4752 loops=1)"
  "        Hash Cond: (("Producoes"."Codigo_Produto")::bpchar = 
("Produtos"."Codigo")::bpchar)"
  "        ->  Seq Scan on "Producoes"  (cost=0.00..207.41 rows=4741 width=427) 
(actual time=0.012..3.030 rows=4752 loops=1)"
  "        ->  Hash  (cost=460.35..460.35 rows=9535 width=28) (actual 
time=14.936..14.936 rows=9537 loops=1)"
  "              Buckets: 1024  Batches: 1  Memory Usage: 494kB"
  "              ->  Seq Scan on "Produtos"  (cost=0.00..460.35 rows=9535 
width=28) (actual time=0.012..7.789 rows=9537 loops=1)"
  "Total runtime: 154.773 ms"

  EXPLAIN ANALYZE  SELECT
  "Producoes"."Codigo",
  "Producoes"."Setor",
  "Producoes"."Codigo_Cliente",
  "Producoes"."Codigo_Fornecedor",
  "Producoes"."Codigo_EmpresaDiversa",
  "Producoes"."Empresa",
  "Producoes"."Codigo_Produto",
  "Producoes"."Descricao_Produto",
  "Producoes"."Codigo_Barras",
  "Producoes"."Numero_Serie",
  "Produtos"."Quantidade_Atual",
  "Produtos"."Quantidade_Minima",
  "Producoes"."Quantidade_Requisitante",
  "Producoes"."Quantidade_Reserva",
  "Producoes"."Quantidade",
  "Producoes"."Unidade",
  "Producoes"."Dados_Adicionais",
  "Producoes"."Data_Entrega",
  "Producoes"."Data_Confirmado",
  "Producoes"."Data_Cancelado",
  "Producoes"."Data_Liberado",
  "Producoes"."Data_Recebido",
  "Producoes"."Autorizacao",
  "Producoes"."Acrescimo",
  "Producoes"."Efetuadas",
  "Producoes"."Aprovadas",
  "Producoes"."Reprovadas",
  "Producoes"."Tempo_Produzindo",
  "Producoes"."Custo_MaosDeObras",
  "Producoes"."Custo_MateriasPrimas",
  "Producoes"."Custo_SubProdutos",
  "Producoes"."Custo_Total",
  "Producoes"."Custo_Unitario",
  "Producoes"."Custo_Unitario_Perdas",
  "Producoes"."Valor_MaosDeObras",
  "Producoes"."Valor_MateriasPrimas",
  "Producoes"."Valor_SubProdutos",
  "Producoes"."Valor_Total_Bruto",
  "Producoes"."Valor_Acrescimo",
  "Producoes"."Valor_Total",
  "Producoes"."Valor_Unitario",
  "Producoes"."Valor_Unitario_Perdas",
  "Producoes"."Data_Cadastro",
  "Producoes"."Ultimo_Usuario",
  "Producoes"."Data_Modificado",
  "Producoes"."_CHAVE_UNICA"
  FROM
  "public"."Producoes"
  LEFT OUTER JOIN
  "public"."Produtos" ON ( "Producoes"."Codigo_Produto" = "Produtos"."Codigo" )
  ORDER BY
  "Producoes"."Codigo", "Producoes"."Codigo_Produto";



  CREATE TABLE "Producoes"
  (
  "Codigo" "d_Codigo",
  "Setor" "d_Setor",
  "Codigo_Cliente" "d_Codigo",
  "Codigo_Fornecedor" "d_Codigo",
  "Codigo_EmpresaDiversa" "d_Codigo",
  "Empresa" "d_Empresa",
  "Codigo_Produto" "d_Codigo",
  "Descricao_Produto" "d_Descricao",
  "Codigo_Barras" "d_CodigoBarras",
  "Numero_Serie" "d_Codigo",
  "Quantidade_Requisitante" "d_Quantidade",
  "Quantidade_Reserva" "d_Quantidade",
  "Quantidade" "d_Quantidade",
  "Unidade" "d_Unidade",
  "Dados_Adicionais" "d_DadosAdicionais",
  "Data_Entrega" "d_Data",
  "Data_Confirmado" "d_Data",
  "Data_Cancelado" "d_Data",
  "Data_Liberado" "d_Data",
  "Data_Recebido" "d_Data",
  "Autorizacao" "d_Nome",
  "Acrescimo" "d_Porcentagem",
  "Efetuadas" "d_Quantidade",
  "Aprovadas" "d_Quantidade",
  "Reprovadas" "d_Quantidade",
  "Tempo_Produzindo" "d_Hora",
  "Custo_MaosDeObras" "d_Moeda_15_4",
  "Custo_MateriasPrimas" "d_Moeda_15_4",
  "Custo_SubProdutos" "d_Moeda_15_4",
  "Custo_Total" "d_Moeda_15_4",
  "Custo_Unitario" "d_Moeda_15_4",
  "Custo_Unitario_Perdas" "d_Moeda_15_4",
  "Valor_MaosDeObras" "d_Moeda_15_4",
  "Valor_MateriasPrimas" "d_Moeda_15_4",
  "Valor_SubProdutos" "d_Moeda_15_4",
  "Valor_Total_Bruto" "d_Moeda_15_4",
  "Valor_Acrescimo" "d_Moeda_15_4",
  "Valor_Total" "d_Moeda_15_4",
  "Valor_Unitario" "d_Moeda_15_4",
  "Valor_Unitario_Perdas" "d_Moeda_15_4",
  "Data_Cadastro" "d_Data",
  "Ultimo_Usuario" "d_Nome",
  "Data_Modificado" "d_DataHora",
  "_CHAVE_UNICA" "d_CHAVEUNICA" NOT NULL,
  CONSTRAINT "Producoes_pkey" PRIMARY KEY ("_CHAVE_UNICA"),
  CONSTRAINT "Producoes_fk_Codigo_Cliente" FOREIGN KEY ("Codigo_Cliente")
       REFERENCES "Clientes" ("Codigo") MATCH SIMPLE
       ON UPDATE CASCADE ON DELETE RESTRICT,
  CONSTRAINT "Producoes_fk_Codigo_EmpresaDiversa" FOREIGN KEY 
("Codigo_EmpresaDiversa")
       REFERENCES "Empresas_Diversas" ("Codigo") MATCH SIMPLE
       ON UPDATE CASCADE ON DELETE RESTRICT,
  CONSTRAINT "Producoes_fk_Codigo_Fornecedor" FOREIGN KEY ("Codigo_Fornecedor")
       REFERENCES "Fornecedores" ("Codigo") MATCH SIMPLE
       ON UPDATE CASCADE ON DELETE RESTRICT,
  CONSTRAINT "Producoes_fk_Codigo_Produto" FOREIGN KEY ("Codigo_Produto")
       REFERENCES "Produtos" ("Codigo") MATCH SIMPLE
       ON UPDATE CASCADE ON DELETE RESTRICT
  )

  -----Mensagem Original----- From: Flavio Henrique Araque Gurgel
  Sent: Tuesday, April 30, 2013 4:38 PM
  To: pgbr-geral@listas.postgresql.org.br
  Subject: Re: [pgbr-geral] Postgres 9 



  Em 30-04-2013 16:36, Ricardo escreveu:

    Boa tarde pessoal,
         Sou novo na lista. Já trabalho com o Postgres a alguns anos com uma
    base de dados pequena e quero aprender mais para uma melhor velocidade
    na entrega dos dados.
         A primeira dúvida.
         Tenho um Database com cerca de 100 Mb no postgres 9 instalado em um
    servidor com xeon 3,06 GH e 1,25GB com Windows 2003 server. Ainda sim há
    uma pequena demora quando preciso abrir uma tabela com cerca de 6000
    registros.
         Alguém pode dar uma dica de onde devo investir para melhorar ?


  Muitos podem ajudar, desde que você nos passe a estrutura da tabela, a
  consulta que quer fazer e o resultado do EXPLAIN ANALYZE sobre ela.

  []s


  __________________________________
  Flavio Henrique A. Gurgel
  Líder de Projetos Especiais
  Consultoria, Projetos & Treinamentos 4LINUX
  Tel1: +55-11.2125-4747 ou 2125-4748
  www.4linux.com.br
  email: fla...@4linux.com.br
  ______________________________
  FREE SOFTWARE SOLUTIONS
  _______________________________________________
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral 
  _______________________________________________
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




--------------------------------------------------------------------------------
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a