Re: Wich hardware suits best for large full-text indexed - Mailing list pgsql-general

From Diogo Biazus
Subject Re: Wich hardware suits best for large full-text indexed
Date
Msg-id 406B0E3C.5030109@ikono.com.br
Whole thread Raw
List pgsql-general
Dann Corbit wrote:

>Can we see the underlying tables also?
>
>
CREATE TABLE public.documentos
(
  coddocumento serial NOT NULL,
  codfonte int4 NOT NULL,
  codsecao int4,
  codusuario int4,
  codposicaopagina int4,
  codinterno varchar(255),
  nomedocumento text NOT NULL,
  subtitulo text,
  resumohumano text,
  resumoautomatico text,
  conteudo text,
  datapublicacao date,
  localorigem varchar(255),
  horapublicacao time,
  pagina varchar(5),
  anoedicao varchar(5),
  numeroedicao_old varchar(10),
  nomeautor varchar(255),
  datainsercao timestamp NOT NULL DEFAULT ('now'::text)::timestamp(6)
with time zone,
  url text,
  codtipoinsercao varchar(1) NOT NULL,
  codbusca int4,
  codtipodocumento int4 NOT NULL,
  codformato int4 NOT NULL,
  analisado bool NOT NULL DEFAULT false,
  numeroedicao varchar(120),
  conteudo_stem_ix public.tsvector,
  conteudo_ix public.tsvector,
  numeroimagens int4 DEFAULT 0,
  numeroacessos int4 DEFAULT 0,
  codtarefa int8,
  md5arquivo varchar(32),
  CONSTRAINT documentos_pkey PRIMARY KEY (coddocumento),
  CONSTRAINT arquivos_documentos_fk FOREIGN KEY (md5arquivo) REFERENCES
public.arquivos (md5arquivo) ON UPDATE CASCADE ON DELETE CASCADE,
  CONSTRAINT buscas_documentos FOREIGN KEY (codbusca) REFERENCES
public.buscas (codbusca) ON UPDATE CASCADE ON DELETE CASCADE,
  CONSTRAINT fontes_documentos FOREIGN KEY (codfonte) REFERENCES
public.fontes (codfonte) ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT secoes_documentos FOREIGN KEY (codsecao) REFERENCES
public.secoes (codsecao) ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT tiposdocumento_documentos FOREIGN KEY (codtipodocumento)
REFERENCES public.tiposdocumento (codtipodocumento) ON UPDATE CASCADE ON
DELETE NO ACTION,
  CONSTRAINT tiposinsercao_documentos FOREIGN KEY (codtipoinsercao)
REFERENCES public.tiposinsercao (codtipoinsercao) ON UPDATE NO ACTION ON
DELETE NO ACTION,
  CONSTRAINT usuarios_documentos FOREIGN KEY (codusuario) REFERENCES
public.usuarios (codusuario) ON UPDATE NO ACTION ON DELETE NO ACTION
) WITH OIDS;

CREATE INDEX documentos_ajustaautor_ix
  ON public.documentos
  USING btree
  (public.ajustaautor(nomeautor) text_ops);

CREATE INDEX documentos_ajustadata_ix
  ON public.documentos
  USING btree
  (public.ajustadata(datapublicacao) date_ops);

CREATE INDEX documentos_ajustahora_ix
  ON public.documentos
  USING btree
  (public.ajustahora(horapublicacao) time_ops);

CREATE INDEX documentos_codtipodocumento_ix
  ON public.documentos
  USING btree
  (codtipodocumento);

CREATE UNIQUE INDEX documentos_codfonte_codinterno_ix
  ON public.documentos
  USING btree
  (codinterno, codfonte);

CREATE INDEX documentos_codfonte_ix
  ON public.documentos
  USING btree
  (codfonte);

CREATE INDEX documentos_codformato_ix
  ON public.documentos
  USING btree
  (codformato);

CREATE INDEX documentos_conteudo_stem_ix_ix
  ON public.documentos
  USING gist
  (conteudo_stem_ix);

CREATE INDEX documentos_conteudo_ix_ix
  ON public.documentos
  USING gist
  (conteudo_ix);



CREATE TABLE public.fontes
(
  codfonte serial NOT NULL,
  codtipofonte int4 NOT NULL,
  nomefonte varchar(50) NOT NULL,
  ativo bool NOT NULL DEFAULT true,
  periodicidade varchar(1),
  codagente int4,
  CONSTRAINT fontes_pkey PRIMARY KEY (codfonte),
  CONSTRAINT tiposfonte_fontes FOREIGN KEY (codtipofonte) REFERENCES
public.tiposfonte (codtipofonte) ON UPDATE NO ACTION ON DELETE NO ACTION
) WITH OIDS;

CREATE INDEX fontes_codtipofonte_ix
  ON public.fontes
  USING btree
  (codtipofonte);

CREATE INDEX fontes_nomefonte_ix
  ON public.fontes
  USING btree
  (nomefonte);



CREATE TABLE public.fontes_gruposusuario
(
  codfonte int4 NOT NULL,
  codgrupousuario int4 NOT NULL,
  CONSTRAINT fontes_gruposusuario_pkey PRIMARY KEY (codfonte,
codgrupousuario),
  CONSTRAINT fontes_gruposusuario_codfonte_fk FOREIGN KEY (codfonte)
REFERENCES public.fontes (codfonte) ON UPDATE CASCADE ON DELETE CASCADE,
  CONSTRAINT fontes_gruposusuario_codgrupousuario_fk FOREIGN KEY
(codgrupousuario) REFERENCES public.gruposusuario (codgrupousuario) ON
UPDATE CASCADE ON DELETE CASCADE
) WITH OIDS;

CREATE INDEX fontes_gruposusuario_codfonte_ix
  ON public.fontes_gruposusuario
  USING btree
  (codfonte);

CREATE INDEX fontes_gruposusuario_codgrupousuario_ix
  ON public.fontes_gruposusuario
  USING btree
  (codgrupousuario);

CREATE TABLE public.tiposdocumento_gruposusuario
(
  codtipodocumento int4 NOT NULL,
  codgrupousuario int4 NOT NULL,
  CONSTRAINT tiposdocumento_gruposusuario_pkey PRIMARY KEY
(codtipodocumento, codgrupousuario),
  CONSTRAINT tiposdocumento_gruposusuario_codtipodocumento_fk FOREIGN
KEY (codtipodocumento) REFERENCES public.tiposdocumento
(codtipodocumento) ON UPDATE CASCADE ON DELETE CASCADE,
  CONSTRAINT tiposdocumentos_gruposusuario_codgrupousuario_fk FOREIGN
KEY (codgrupousuario) REFERENCES public.gruposusuario (codgrupousuario)
ON UPDATE CASCADE ON DELETE CASCADE
) WITHOUT OIDS;


CREATE INDEX tiposdocumento_gruposusuario_codgrupousuario_ix
  ON public.tiposdocumento_gruposusuario
  USING btree
  (codgrupousuario);

CREATE INDEX tiposdocumento_gruposusuario_codtipodocumento_ix
  ON public.tiposdocumento_gruposusuario
  USING btree
  (codtipodocumento);



--
Diogo Biazus
diogo@ikono.com.br
http://www.ikono.com.br


pgsql-general by date:

Previous
From: "Mooney, Ryan"
Date:
Subject: Re: Large DB
Next
From: "John Liu"
Date:
Subject: select distinct w/order by