2010-11-30 6 views
0

J'essaie de charger une grande quantité de données d'une base de données Oracle vers Solr, et je vois dans la console Oracle que Solr n'utilise aucune sorte de "variable de liaison" dans une requête comme:Utilisation de variables de liaison dans Solr

select field1, field2, field3 from table where id = myId 

Où myId est le résultat d'une itération. Oracle traite les requêtes car elles n'ont aucune relation entre elles. Existe-t-il un moyen de forcer Solr à utiliser des variables de liaison dans solr? Merci !!

+0

ce que vous entendez par variables de liaison? et pourquoi avez-vous besoin d'eux? est l'objectif d'indexer beaucoup de données de oracle db par solr? ou aussi quelque chose d'autre? – fifigyuri

+0

Sur chaque requête que je fais, Oracle doit passer par le processus d'analyse de la déclaration, l'élaboration des différents chemins d'exécution et à venir avec un plan d'accès optimal avant qu'il puisse être exécuté. Les variables de liaison sont des variables de «substitution» qui sont utilisées à la place des littéraux et qui ont pour effet d'envoyer exactement le même SQL à Oracle chaque fois que la requête est exécutée. Cela réduit le verrou, l'activité du processeur et l'utilisation du pool de mémoire partagée dans Oracle. – Juampa

Répondre

1

Peut-être que vous pourriez essayer de mettre CURSOR_SHARING = FORCE pour la session ou d'un système.

+0

Merci WaldiMen, je vais essayer votre solution. D'ailleurs, je vais sonder avec un DataImport basé sur pl/sql à l'index sans aucune restriction. – Juampa

Questions connexes