IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

Indexation fulltext et insert simultanés


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 2
    Par défaut Indexation fulltext et insert simultanés
    Bonjour,

    J'ai une base SQL 2008 avec un peu moins d'un millions d'articles qui s'enrichit d'environ 5000 articles par jour.
    Il n'y a que des insert dans la table principale (aucun update). Par contre je peux avoir une dizaine d'insert simultanés.
    J'ai voulu activer l'indexation en texte intégral de MSSQL sur cette base pour offrir à mes utilisateurs une recherche plus pertinente et plus rapide sur les textes des articles. J'ai rempli le catalogue et activé le suivi des modifications pour que les nouveaux articles soient pris en compte dans ma recherche.
    Tout fonctionne très bien mais au bout de quelques heures d'utilisation, sql server semble effectuer une grosse opération de "maintenance" sur ma table des articles qui peut se retrouver locker pendant quelques minutes avec le processeur quatre coeurs utilisé à 25% (100% d'un coeur).
    Je ne comprends pas le phénomène et je ne sais pas non plus comment le contourner car j'ai besoin de faire des recherches sur des articles qui viennent d'être insérés. Impossible donc à priori de se contenter de planifier les opérations de remplissage du catalogue.

    La base fait actuellement 6 Go, essentiellement sur la table des articles évidemment, et le catalogue environ 1 Go.

    Toutes vos idées, connaissances et expertises sont les bienvenues pour m'aider à résoudre ce problème.

    Merci d'avance

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 999
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 999
    Billets dans le blog
    6
    Par défaut
    Est-elle activée en continue ? C'est à dire que dès insertion il indexe ?

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 2
    Par défaut
    Quand je mets mon index de texte intégral en suivi des modifications avec remplissage de l'index automatique et continu, c'est là que je finis par avoir des problèmes de montée en charge incompréhensible et de locks sur la table.
    Bien entendu si je programme gentiment un remplissage périodique (toutes les x heures par exemple), je n'ai pas de soucis mais je ne peux faire aucune recherche sur les textes insérés depuis le dernier remplissage.
    J'ai vu que Stackoverflow.com semble avoir le même problème que moi et ce serait lié à SQL 2008 dont l'indexation FTS ne supporterait pas les bases de données à forte activité transactionnelles.
    N'ayant aucune expérience dans les moteurs externes type Lucene ou autre, j'aimerais trouver une solution qui resterait intégrée à MSSQL.
    Sinon quels sont vos avis sur les solutions full text à moteur externe sachant que mes données resteront dans MSSQL.

    Merci encore

Discussions similaires

  1. Index Fulltext MyIsam vs InnoDB
    Par YvesTan dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 27/08/2007, 10h32
  2. [MySQL] recherche avec ou sans index FULLTEXT ?
    Par laloupiote dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 09/04/2007, 17h21
  3. indexation fulltext des mots avec un trait d'union
    Par andraz dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 12/03/2007, 16h46
  4. [index fulltext] Can't create table
    Par clemsouz dans le forum Administration
    Réponses: 11
    Dernier message: 16/05/2006, 17h37
  5. Probleme d'index fulltext assez bizarre
    Par Clovis37 dans le forum Débuter
    Réponses: 4
    Dernier message: 08/07/2005, 19h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo