MCDBA Brasil


  • Home
  • Sobre
  • Contato

Livros





Links Rápidos

SQL Server Builds (All Versions/Editions)


Download SQL Server 2017 (trial)


SQL Server 2017 Feature Pack


SQL Server 2016 Feature Pack


Cumulative Update SQL Server 2017 builds


Cumulative Update SQL Server 2016 builds


Cumulative Update SQL Server 2014 builds


Cumulative Update SQL Server 2012 builds


SQL Server 2005/2008 Samples Databases


Documentando o Servidor SQL Server


Analisando a Performance do Servidor-CheckList


Virtual PASS PT


Faça parte do maior virtual chapter do PASS com conteúdos técnicos em Português sobre SQL Server.

Todos os meses um evento Online para você! Acompanhe aqui os WebCasts já agendados

Sindicalize seu blog ou site ao VirtualPASSPT

SQL Server Blogs

SQL Server Query Processing Team


SQL Programmability & API Development Team


SQL Server Manageability Team


Latin America Support Team


Database + Disk + Performance


Microsoft SQL Server Support


SQL CLR Team


SQL Query Optimization Team


SQL 2005 Code Samples


SQL Server Express Team


SQL SMO Samples


SQL Storage Engine Team


SQL CAT Team


SQL Protocols Team


PSS SQL Server Engineers


Slava Oks on SQLOS


Ken Henderson’s blog


LUTI@Microsoft Blog


kimberly L. Trip’s blog


Fernando Garcia Blog

Downloads

Full-Text Search Overview – Parte 1

por Nilton Pinheiro junho 20, 2005 Nenhum comentário

O Full-Text Search é um serviço do SQL Server 2000 que fornece um suporte eficiente para busca de palavras ou frases em colunas baseadas em caracteres do tipo char,nchar, text, ntext,varchar e nvarchar. Também oferece suporte a busca de palavras ou frases em documentos do Office (.doc, .xls, . ppt), arquivos .txt e htm. Esta busca se dá através de filtros fornecidos pelo SQL Server 2000.


O Full-Text Search é instalado por padrão durante uma instalação típica do SQL Server 2000 e está disponíveis nas edições Standard e Enterprise. Ele consiste de dois componentes básicos:


• Full-text indexing: Deixa você criar e popular os catálogos (Full-text Catalogs), os quais são mantidos fora do SQL Server e gerenciados pelo Microsoft Search Service.


• Full-text search: Permite que você realize consultas nos catálogos utilizando os quatro operadores T-SQL (CONTAINS, CONTAINSTABLE, FREETEXT, FREETEXTTABLE).


O Full-Text Index é mantido em catálogos chamados full-text catalogs. Cada banco de dados pode conter um ou mais full-text catalogs que por sua vez, não podem pertencer a múltiplos bancos. Cada catálogo pode conter full-text indexes para uma ou mais tabelas de um dado banco de dados.


O principal requisito de desenvolvimento para full-text indexing, consultas e sincronização do catálogo, é a presença de uma coluna de chave única ou primária em todas as tabelas que serão registradas para full-text search. Esta chave única deve ser composta por um único campo da tabela.



Como Funciona

Internamente, o SQL Server envia uma condição de pesquisa para o Microsoft Search Service. O Microsoft Search Service localiza todas as chaves que satisfazem a condição de pesquisa e retorna estas chaves para o SQL Server que usa a lista de chaves para determinar quais linhas da tabela serão processadas.


O SQL handler é um driver que contém a lógica para extrair o texto de uma dada coluna e passá-lo para o componente de indexação do Search Service.
Ambientes Aplicáveis

• Interface de busca para ambientes de internet/Intranet
• Busca em catálogo de produtos
• Gerenciamento de documentos
• Interface de busca para ambientes de Data Warehouse/Bisiness Intelligence (DW/DI)
• Qualquer aplicação que requeira uma busca flexível, possivelmente combinando dados do SQL com documentos baseados em arquivos.


Permissões Necessárias

• Para criação e manutenção: sysadmin ou db_owner do banco que está sendo ativado para full-text indexes.
• Para utilização: O usuário deve possuir permissão SELECT na tabela que esta abilita para full-text indexes.


Pontos Pós

• Fácil instalação e configuração
• Possui filtros para arquivos de extensões .doc, .xls, .ppt, .txt e .htm
• Suportado em ambiente Cluster
• Clientes com Windows 95/98/NT workstation podem acessar full-text search 


Pontos Contra

• O Microsoft Search Service roda no contexto da conta Local System (Local System Account) do Windows. Durante a instalação, o SQL adiciona esta conta com administrador do serviço Microsoft Search e todas as alterações nas informações da conta de serviço do SQL Server devem ser feitas utilizando a caixa de diálogo Propriedades do SQL Server no Enterprise Manager.
• Não é suportado através de linked-server
• Full-text catalogs e indexes não são armazenados no banco de dados aos quais pertencem. Eles são mantidos como uma coleção de arquivos e diretórios, os quais devem residir no disco rígido local associado com a instância do SQL Server (Localização padrão MSSQL/FTDATA) e são gerenciados pelo Microsoft Search Service.



• Full-text catalogs e indexes não são backupeados juntamente com o banco de dados e não podem ser backupeados ou restaurados utilizando os comandos BACKUP e RESTORE do SQL Server.
• Os arquivos de catálogos (Full-text catalogs) não são recuperados durante uma operação de recuperação ou restauração de um banco de dados. Eles devem ser resincronizados após estas operações.
• Em bancos de dados marcados como SUSPECT, a restauração de um backup utilizando a opção WITH REPLACE pode fazer com que o full-text catalog seja perdido. Isto acontece porque ao restaurar o backup de um banco que possui o status de SUSPECT, o SQL Server exclui o banco antes de restaurá-lo e ao excluir o banco, exclui também o catálogo. Como o full-text catalog não faz parte do backup do banco de dados, ele não pode ser restaurado com o banco de dados.
• Os arquivos com extensões .doc, .xls, .ppt, .txt e .htm devem ser armazenados em colunas com o tipo de dados imagem e as respectivas extensões devem ser armazenadas em colunas separadas na tabela (Esta coluna pode possuir qualquer tipo de dados).
• Para full-text indexing, um documento deve ter um tamanho máximo de 16MB e não pode conter mais que 256Kb de texto filtrado.
• A cada alteração nos dados ou estrutura da tabela, é necessário recarregar o catálogo.


Teste de Performance

A carga ou recarga do catálogo pode levar várias horas dependendo do tamanho da tabela. Em testes realizados em uma tabela com 46.500 registros os resultados foram os seguintes:


Tempo médio de Utilização do processador: 85% sendo que durante +/- 3 min sua utilização ficou constante em 100%.
Tempo gasto para efetuar a carga do catálogo: 16:35 min
Paginações por Segundo: 23.000
Espaço em disco ocupado pelo catálogo: 23.2 MB
Espaço em disco ocupado pelo catálogo ainda vazio: 6.9 MB


Comparação com o comando LIKE:



Nota: Este teste indica que para uma tabela com até 46.500 linhas, o comando LIKE ainda é melhor.

Teste Microsoft

• Full-text queries são mais rápidas que consultas usando LIKE %Test%
• Full-text indexing ou carregamento do full-text catalog deve ser feito durante períodos de baixa utilização do servidor.
• Full-text indexing de tabelas com mais que 4 milhões de linhas pode levar várias horas ou dias para completar.
• Comparação com o comando LIKE considerando uma tabela com aproximadamente 150.000 linhas


Nota: Este teste indica que para uma tabela com 150.000 linhas ou mais, o Full-Text é a melhor alternativa.
Considerações

• Em ambiente cluster, uma instância do SQL Server deve ser executada sobre uma mesma conta de usuário em todos os nós do cluster como requisito para que o full-text queries funcione apropriadamente.
• Alterações na conta de serviço que inicia os serviços do SQL Server 2000 em cluster devem ser efetuadas através do Enterprise Manager. Se utilizar o painel de controle ou o aplicativo Service no Windows 2000, a configuração de full-text para o SQL Server será quebrada.


Para saber sobre as novidades e melhorias no Full-Text Search do SQL Server 2005, visite o link http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsql90/html/sql2005ftsearch.asp


No próximo artigo veremos como implementar e utilizar o Full-Text Search no SQL Server 2000.


Um abraço a todos
Nilton Pinheiro

Avaliação:
Compartilhe:
  • Anterior A Look at SQL Server 200521 anos atrás
  • Próximo FIX para corrigir problema de AWE no SQL 200021 anos atrás

Deixe uma resposta Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

MVP Reconnect Award

Categorias

  • Artigos (359)
  • Dica da Semana (95)
  • Documentação (54)
  • Downloads (113)
  • MSDE 2000 (3)
  • Sem categoria (1)
  • Tutoriais (9)

Posts recentes

  • #FechouBrasil #PartiuPortugal
  • Brigando com o erro “The cached MSI file is missing”
  • MCDBABRASIL está de volta
  • Documentando o Servidor SQL Server
  • Brigando com os Erros 17182, 17826 e 17120

SQL Server AlwaysOn Video Series

Video1: Introdução ao SQLServer2012 AlwaysOn


Video2: Introdução ao SQLServer2012 AlwaysOn Availability Group


Video3: Introdução ao SQLServer2012 AlwaysOn AVG-Demo


Video4: Introdução ao SQLServer2012 AlwaysOn Listener


Video5: Introdução ao SQLServer2012 AlwaysOn Readable Secondaries


Video6: Introdução ao SQLServer2012 AlwaysOn Readable Secondaries-Demo


Video7: Introdução ao SQLServer2012 AlwaysOn Failover Clustering


Serie SQL Server Failover Clustering End-to-End

Parte 1: Configuração da Rede e Ambiente


Parte 2: Configurando o Windows 2008 R2 Domain Controler e DNS


Parte 3: Preparando os nós para o Failover Cluster


Parte 4: Configurando um Failover Cluster de 2 nós


Parte 5: Configurando as LUNs no iSCSI Software Target (Parte 1)


Parte 6: Configurando as LUNs no iSCSI Software Target (Parte 2)


Parte 7: Apresentando as LUNs para os nós do Failover Cluster


Parte 8: Configurando os discos no Failover Cluster


Parte 9: Instalando a primeira instância virtual do SQL Server 2008


Parte 10: Instalando a segunda instância virtual do SQL Server 2008


Parte 11: Instalando e Configurando o MSDTC no Failover Cluster


Parte 12: Configurando Mount Points no Cluster e SQL Server 2008


Vídeo Extra: Removendo uma Instância do SQL Server 2008 R2 em Cluster


Alta Disponibilidade no SQL Server 2008 R2: Failover Clustering Overview


Alta Disponibilidade no SQL Server 2008 R2: Failover Clustering na Prática

Menu

  • Home
  • Sobre
  • Contato

Mais

  • RSS Feeds
2026 MCDBA Brasil.