Compare commits

...

74 Commits
1.0 ... 1.3

Author SHA1 Message Date
Michael RICOIS
39c05b2ab1 Changement du chemin des logs 2015-06-17 14:30:30 +00:00
Michael RICOIS
6859bfa18c Add example to compile 2015-05-25 09:11:56 +00:00
Michael RICOIS
acad0ec96e Change path 2015-02-13 16:12:02 +00:00
Michael RICOIS
9ec419af69 Keep pid file in readable directory 2014-11-17 08:30:37 +00:00
Michael RICOIS
c2bc1b87ee Remove stopwords 2014-10-20 07:19:16 +00:00
Michael RICOIS
918a55aa70 Update config 2014-10-10 08:38:07 +00:00
Michael RICOIS
2662bbf352 Boolean on some attributes 2014-08-19 15:18:28 +00:00
Michael RICOIS
903e3cb394 Boolean on some attributes 2014-08-19 15:01:48 +00:00
Michael RICOIS
058bd99844 Wordforms path 2014-08-14 07:30:58 +00:00
Michael RICOIS
c6a433fa1f Move definition config 2014-08-13 15:32:41 +00:00
Michael RICOIS
aa524fa52a New configuration 2014-08-13 15:28:28 +00:00
Michael RICOIS
c8abc8905a Mise à jour config searchd et indexer 2014-08-13 15:14:20 +00:00
Michael RICOIS
a039f5fe20 Add Ubuntu 14.04 configuration 2014-08-13 13:55:48 +00:00
Michael RICOIS
e86f75adec Reorganize file 2014-08-13 13:55:26 +00:00
Michael RICOIS
8c95b1d569 issue #0001933, issue #0001932 : Gestion du départ de l'indexation 2014-05-15 10:17:02 +00:00
Michael RICOIS
cb0229ae48 Scripts is validated 2014-04-22 08:38:41 +00:00
Michael RICOIS
418318bd01 issue #0001933 : Use table to know when we start indexing 2014-04-18 15:47:05 +00:00
Michael RICOIS
a666ab3720 issue #0001933 : Prepare 2014-04-18 13:34:59 +00:00
Michael RICOIS
04f472bc86 issue #0001933 : Prepare file name and update 2014-04-18 13:27:44 +00:00
Michael RICOIS
589da22cda issue #0001932 : Make an sql update 2014-04-18 13:08:34 +00:00
Michael RICOIS
d9249f0a41 issue #0001932 : Script pour la gestion de l'indexation après la consolidation 2014-04-18 12:07:04 +00:00
Michael RICOIS
02ac466cc2 Create the branch 1.3 2014-04-18 07:59:04 +00:00
Michael RICOIS
00cad4e080 Merge branche 1.2 2014-04-18 07:55:33 +00:00
Michael RICOIS
21699effe5 Ajout date plus complète 2014-04-17 10:35:01 +00:00
Michael RICOIS
f46036bf15 Correction requete sql 2014-02-10 09:30:11 +00:00
Michael RICOIS
8dd7fc655d Update config files 2014-02-10 09:07:13 +00:00
Michael RICOIS
4834d09b10 Configu update following 2.1.2 sphinx version 2013-10-28 08:27:23 +00:00
Michael RICOIS
65dc900149 Add 2.1.2 files configuration 2013-10-21 10:40:23 +00:00
Michael RICOIS
fdd101fb60 Add 2.1.2 instructions 2013-10-21 10:39:42 +00:00
Michael RICOIS
3e354aaf00 Small change on install 2013-10-21 10:27:18 +00:00
Michael RICOIS
d6eab21720 Remove the return 2013-05-16 14:45:22 +00:00
Michael RICOIS
61323d1aaa Set config file 2013-05-16 14:44:58 +00:00
Michael RICOIS
d6a5260603 New project structure 2013-05-13 11:46:57 +00:00
Michael RICOIS
3cd79992d6 Oubli as 2012-08-17 15:20:33 +00:00
Michael RICOIS
b019f6b269 Oubli as 2012-08-17 15:19:35 +00:00
Michael RICOIS
ee8aaf436f Change var 2012-07-31 12:17:12 +00:00
Michael RICOIS
9370ce5b7f Ajout adr_cp 2012-07-31 12:00:39 +00:00
Michael RICOIS
f5bf1ca954 Ajout configuration production 2012-07-24 08:20:20 +00:00
Michael RICOIS
15b729dc1a issue #0001280 : Traitement des valeurs d'avisCs 2012-07-24 07:50:20 +00:00
Michael RICOIS
eb735dd8b0 fix issue #0001282 2012-07-23 16:55:47 +00:00
Michael RICOIS
c2a364876c Exclude on ape_etab and ape_entrep, correct codeCommune type 2012-06-25 12:47:07 +00:00
Michael RICOIS
79d7c48d1b bilType, codeCommune 2012-06-01 14:47:56 +00:00
Michael RICOIS
b7ca8386c0 NULL in database must be transform as 99 for teff_entrep, teff_etab 2012-06-01 08:16:34 +00:00
Michael RICOIS
34e9a95f55 CAST pour les éléments non nombre 2012-05-18 08:11:27 +00:00
Michael RICOIS
7ebb5e4f59 Correction doublon 2012-05-15 07:33:33 +00:00
Michael RICOIS
d746921f2c Suppression actif 2012-05-13 13:18:09 +00:00
Michael RICOIS
e48e5abf88 Ajout des zones 2012-05-12 16:25:06 +00:00
Michael RICOIS
3dfa1cecc0 Ajout nbMPubli 2012-05-11 15:21:24 +00:00
Michael RICOIS
8c57e258f9 Ajout adrDom 2012-05-11 15:08:55 +00:00
Michael RICOIS
0c8f40021b Prise en compte de la corse 2012-05-11 09:57:09 +00:00
Michael RICOIS
8a1d8968e1 Suppression warning 2012-05-10 19:33:09 +00:00
Michael RICOIS
ea60f839b3 Ajout de l'exclusion 2012-05-10 13:41:16 +00:00
Michael RICOIS
0ef53f655b Suppression commentaire et virgule 2012-05-09 10:06:42 +00:00
Michael RICOIS
52bb42c7f8 Correction encodage 2012-05-09 09:53:16 +00:00
Michael RICOIS
8f021d2940 Correction compilation 2012-05-09 09:42:21 +00:00
Michael RICOIS
cec500da25 Suppression espace 2012-05-09 09:40:16 +00:00
Michael RICOIS
82082142e8 attribut string 2012-05-09 07:21:33 +00:00
Michael RICOIS
d6d9740994 field et uint 2012-05-01 09:50:47 +00:00
Michael RICOIS
421cfcc7c7 Séparation de la doc 2012-04-30 19:03:55 +00:00
Michael RICOIS
36ed0557c0 Ajout 2012-04-30 15:19:00 +00:00
Michael RICOIS
0b493221fe Passage en utf-8 et ajout des wordforms 2012-04-30 14:42:58 +00:00
Michael RICOIS
3044222751 Ajout config et explication ciblage 2012-04-26 14:58:12 +00:00
Michael RICOIS
70c67fa13f wordforms pour l'index entreprise 2012-04-26 13:16:49 +00:00
Michael RICOIS
07feda39b8 Documentation 2012-04-26 13:15:22 +00:00
Michael RICOIS
95e62ac7d3 Modification des paramètres d'indexation pour prendre en compte l'UTF-8 2012-04-26 08:32:53 +00:00
Michael RICOIS
b043b4b9d2 Passage mémoire à 256M pour l'indexer 2012-04-26 07:49:52 +00:00
Michael RICOIS
8e9c2f9263 Correction script de configuration 2012-04-23 08:50:51 +00:00
Michael RICOIS
aac6d30ef4 pour l'indexer 1024M doit être suffisant 2012-04-01 09:35:41 +00:00
Michael RICOIS
ea1a866793 Ajout version 2.0.4 dans le script d'installation 2012-04-01 09:15:14 +00:00
Michael RICOIS
d0939bb802 Correction définition répertoire 2012-02-13 10:11:34 +00:00
Michael RICOIS
a07f80653f Suppression fichier 2012-02-13 09:49:33 +00:00
Michael RICOIS
ae8bcce45d Simple configuration et installation 2012-02-13 09:49:16 +00:00
Michael RICOIS
4edb8da2f8 Configuration et installation fonctionnelle 2012-02-13 08:25:44 +00:00
Michael RICOIS
ed4da858c2 Suppression source 2011-12-08 10:11:55 +00:00
70 changed files with 2860 additions and 1118 deletions

15
README Normal file
View File

@ -0,0 +1,15 @@
htop
bwm-ng
mysql-client-5.5
gcc g++ make libmysqld-dev
wget -nv -O - http://snowball.tartarus.org/dist/libstemmer_c.tgz | tar zx
wget -nv -O - https://re2.googlecode.com/files/re2-20140304.tgz | tar zx
wget http://sphinxsearch.com/files/sphinx-2.2.7-release.tar.gz
tar xzvf sphinx-2.2.7-release.tar.gz
cp -R libstemmer_c/* sphinx-2.2.7-release/libstemmer_c/
sed -i -e 's/stem_ISO_8859_1_hungarian/stem_ISO_8859_2_hungarian/g' sphinx-2.2.7-release/libstemmer_c/Makefile.in
cp -R re2/* sphinx-2.2.7-release/libre2/
cd sphinx-2.2.7-release
./configure --with-libstemmer --with-re2 --prefix=/usr/local/sphinx
make
make install

137
Sphinx.sh
View File

@ -1,137 +0,0 @@
#!/bin/bash
allVersion=("2.0.1" "0.9.9" "2.0.2")
declare -A ERREURS
declare -A ASTUCES
declare -A ASTUCESDEV
ROUGE="\\033[1;31m"
NORMAL="\\033[0;39m"
CYAN="\\033[1;36m"
VERT="\\033[1;32m"
BOLD="\\033[1m"
UNDERLINE="\\033[4m"
TEXTNONE="\\033[0m"
#Var
dir="Exist"
log="Exist"
dbs="Exist"
sphinx="Exist"
sphinxlog="Exist"
ERREURS=(
["CHMOD"]="Execute the script with SUDO or in ROOT"
["DIRECTORY"]="Directory not create"
["CMD"]="This command not exist"
["NOCMD"]="Please enter options")
ASTUCES=(
["CREATE"]="Sphinx --create (prepare l'environement)");
function loadIndication() {
while [ -d "/proc/$1" ]
do #Current PID in /proc
echo -en "Loading... /\033[1G"; sleep .07
echo -en "Loading... -\033[1G"; sleep .07
echo -en "Loading... / \033[1G"; sleep .07
echo -en "Loading... |\033[1G"; sleep .07
done
}
if [ `id -u` = 0 ] #Need Root or Sudo
then
commande=('--install' '--all')
for i; do
case $i in
'--help')
echo -e $ROUGE"*************************************************************************************************************************************"$NORMAL
echo -e "--install version : Vous permet d'installer configurer et crée les indexe et la libstemmer compilation, installation et configuration";
echo -e "--delete : Vous permet de restaurer les parametres de la machines en supprimer la configuration et l'installation"
echo -e "--version : Vous retournes les dernieres version disponnibles en téléchargement sur Sphinx."
echo -e $ROUGE"**************************************************************************************************************************************"$NORMAL
exit;
;;
'--delete')
`rm -r indexeConf tmp sphinx-* wget* libste* *~ 2> /dev/null`
echo -e "- Clean directory"
exit
;;
'--version')
echo -e "1. Last version : 2.0.1"
echo -e "2. Past version : 0.9.9\n"
;;
'--install')
if [ ! -e /dbs ];then echo -e "/dbs not exist !"; exit; fi
if [ ! -e tmp ];then `mkdir tmp`; fi
if [ ! -e /dbs/sphinx ];then `mkdir /dbs/sphinx`; fi
if [ ! -e /usr/local/sphinx ];then `mkdir /dbs/sphinx`; fi
if [ ! -e /dbs/sphinxlog ];then `mkdir /dbs/sphinxlog`; fi
if [ ! -e /init.d/sphinxsearch ];then `cp initscript/sphinxsearch /etc/init.d/ > /dev/null` ;`chmod +x /etc/init.d/sphinxsearch > /dev/null`; `update-rc.d sphinxsearch defaults > /dev/null`; fi
if [ ! -e config/${HOSTNAME} ];then `mkdir config/${HOSTNAME}`;fi
if [ ! -e sphinx-2.0.1.tar.gz ] || [ ! -e sphinx-0.9.9.tar.gz ] || [ ! -e sphinx-2.0.2.tar.gz ]
then
if [ ! -z $2 ]; then
if [ $2 == "2.0.1" ]; then
version="$2-beta"
elif [ $2 == "0.9.9" ]; then
version="$2-beta"
elif [ $2 == "2.0.2" ]; then
version="$2"
else
echo -e $ROUGE"[Erreur]: This version not exist !"$NORMAL
exit
fi
echo -e $CYAN"Download Sphinx-$version..."$NORMAL
`wget -b http://sphinxsearch.com/files/sphinx-$version.tar.gz >/dev/null`
loadIndication `(ps -C wget -o pid=)`
`rm wget-log*`
else
echo -e $ROUGE"[Erreur]: Please specifie version, exemple 2.0.1 or 0.9.9"$NORMAL
exit
fi
fi
`tar -z -xf sphinx-$version.tar.gz -C tmp `
`rm sphinx-$version.tar.gz*`
echo -e " - Extract files..."
echo -e " - Complited"
#If libstemmer not installed in tmp/
if [ -e libstemmer_c.tgz ]
then
echo -e $CYAN"Extract file from libstemmer_c..."$NORMAL
`mv libstemmer_c.tgz tmp/sphinx-$version/libstemmer_c; cd tmp/sphinx-$version/libstemmer_c/ ; tar -zxf libstemmer_c.tgz`
echo -e " - Complited"
else
echo -e $CYAN"Download and Configure libstemmer..."$NORMAL
`cd tmp/sphinx-$version ; wget -b http://snowball.tartarus.org/dist/libstemmer_c.tgz > /dev/null`
loadIndication `(ps -C wget -o pid=)`
`cd tmp/sphinx-$version ; tar -zxf libstemmer_c.tgz`
echo -e "- Complited"
fi
echo -e "- Extract files..."
libstemmer="100%"
echo ""
echo -e $CYAN"Configuration progress..."$ROUGE
`cd tmp/sphinx-$version ; sh configure --with-libstemmer --prefix=/usr/local/sphinx 1> /dev/null `
echo -e $NORMAL"- Complited"
echo -e $NORMAL
echo -e $CYAN"Compilation progress..."$ROUGE
if [ $version != "2.0.1-beta" ];then `cd tmp/sphinx-$version ; make; make install ` ;
else
`cd tmp/sphinx-$version/ ; make; make install`;fi
echo -e $NORMAL" - Complited"
echo -e $VERT"The installation as been finish ! great ! thank's damien :)"$NORMAL
exit
;;
*)
#Default
echo -e $ROUGE"[Erreur]" ${ERREURS["CMD"]} $NORMAL
exit
;;
esac
done
echo -e $ROUGE"[Erreur]" ${ERREURS["NOCMD"]} $NORMAL
else
echo -e $ROUGE"[Erreur]" ${ERREURS["CHMOD"]} $NORMAL
fi

View File

@ -1,32 +0,0 @@
source source_act
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = \
SELECT id, Siren1, RaisonSociale, Siren2, actif, dateLien, IF(dateUpdate>dateInsert,dateUpdate,dateInsert) as dateMaj, \
source, Pmin*1 AS PminNum, MajMin, PpPm, IF(Pays='','FRA',Pays) AS Pays \
FROM liens \
WHERE ActionPart=1 AND Siren1>1000 AND Siren1 IN (SELECT DISTINCT SIREN FROM etablissements_old);
sql_attr_uint = actif
sql_attr_uint = source
sql_attr_uint = PminNum
sql_attr_str2ordinal= MajMin
sql_attr_str2ordinal= PpPm
sql_attr_str2ordinal= Pays
}
index act
{
source = source_act
path = /dbs/sphinx/act
docinfo = extern
morphology = none
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,37 +0,0 @@
source dir
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, prenom, \
YEAR(naissance_date) AS naiss_annee, \
MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, \
naissance_lieu, fonction_code, actif \
FROM dirigeants;
sql_attr_str2ordinal = civilite
sql_attr_str2ordinal = typeDir
sql_attr_str2ordinal = fonction_code
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = dir
path = /dbs/sphinx/dir
docinfo = extern
morphology = none
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,37 +0,0 @@
source dir
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, prenom, \
YEAR(naissance_date) AS naiss_annee, \
MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, \
naissance_lieu, fonction_code, actif \
FROM dirigeants_tmp;
sql_attr_str2ordinal = civilite
sql_attr_str2ordinal = typeDir
sql_attr_str2ordinal = fonction_code
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = dir
path = /dbs/sphinx/dir
docinfo = extern
morphology = none
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,40 +0,0 @@
source ent
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = SELECT id, siren, nic, siege, CONCAT(raisonSociale,\
' "" ',enseigne,' "" ',sigle,' "" ',identite_pre,' "" ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,' ',''),\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.',''),' ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.','')) AS nom, adr_dep, \
actif, adr_num, adr_typeVoie, CONCAT(adr_libVoie,' ',adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, (siren>200) AS sirenValide, rang \
FROM etablissements;
sql_attr_str2ordinal = adr_typeVoie
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = actif
sql_attr_uint = cj
sql_attr_uint = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/sphinx/ent
docinfo = extern
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,41 +0,0 @@
source ent
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = SELECT id, siren, nic, siege, CONCAT(raisonSociale,\
' "" ',enseigne,' "" ',sigle,' "" ',identite_pre,' "" ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,' ',''),\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.',''),' ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.','')) AS nom, adr_dep, \
actif, adr_num, adr_typeVoie, CONCAT(adr_libVoie,' ',adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, (siren>200) AS sirenValide, rang \
FROM etablissements_tmp;
sql_attr_str2ordinal = adr_typeVoie
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = actif
sql_attr_uint = cj
sql_attr_uint = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/sphinx/ent
docinfo = extern
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,23 +0,0 @@
source histo
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx_histo
sql_pass = sphinx
sql_db = histobodacc
sql_port = 3306 # optional, default is 3306
sql_query = SELECT id, nomFichier, annee1, dateBod, texte FROM bodacc_ocr;
sql_attr_uint = annee1
sql_query_info = SELECT * FROM bodacc_ocr WHERE id=$id
}
index histo
{
source = histo
path = /home/sphinx/histo
docinfo = extern
morphology = none
min_word_len = 1
charset_type = sbcs
html_strip = 1
}

View File

@ -1,40 +0,0 @@
source ent
{
type = mysql
sql_host = 192.168.3.30
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = SELECT id, siren, nic, siege, CONCAT(raisonSociale,\
' "" ',enseigne,' "" ',sigle,' "" ',identite_pre,' "" ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,' ',''),\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.',''),' ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.','')) AS nom, adr_dep, \
actif, adr_num, adr_typeVoie, CONCAT(adr_libVoie,' ',adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, (siren>200) AS sirenValide, rang \
FROM etablissements;
sql_attr_str2ordinal = adr_typeVoie
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = actif
sql_attr_uint = cj
sql_attr_uint = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/sphinx/ent
docinfo = extern
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,41 +0,0 @@
source ent
{
type = mysql
sql_host = 192.168.3.30
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = SELECT id, siren, nic, siege, CONCAT(raisonSociale,\
' "" ',enseigne,' "" ',sigle,' "" ',identite_pre,' "" ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,' ',''),\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.',''),' ',\
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(sigle,\
'@','A'), '&',' ET '),'/',''),',',''),'-',''),'.','')) AS nom, adr_dep, \
actif, adr_num, adr_typeVoie, CONCAT(adr_libVoie,' ',adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, (siren>200) AS sirenValide, rang \
FROM etablissements_tmp;
sql_attr_str2ordinal = adr_typeVoie
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = actif
sql_attr_uint = cj
sql_attr_uint = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/sphinx/ent
docinfo = extern
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,77 +0,0 @@
#############################################################################
## indexer settings
#############################################################################
indexer
{
# memory limit, in bytes, kiloytes (16384K) or megabytes (256M)
# optional, default is 32M, max is 2047M, recommended is 256M to 1024M
mem_limit = 2047M
# maximum IO calls per second (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iops = 40
# maximum IO call size, bytes (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iosize = 1048576
}
#############################################################################
## searchd settings
#############################################################################
searchd
{
# IP address to bind on
# optional, default is 0.0.0.0 (ie. listen on all interfaces)
#
# address = 127.0.0.1
# address = 192.168.0.1
# searchd TCP port number
# mandatory, default is 3312
listen = 3312
# log file, searchd run info is logged here
# optional, default is 'searchd.log'
log = /dbs/sphinxlog/searchd.log
# query log file, all search queries are logged here
# optional, default is empty (do not log queries)
query_log = /dbs/sphinxlog/query.log
# client read timeout, seconds
# optional, default is 5
read_timeout = 5
# maximum amount of children to fork (concurrent searches to run)
# optional, default is 0 (unlimited)
max_children = 30
# PID file, searchd process ID file name
# mandatory
pid_file = /var/log/searchd.pid
# max amount of matches the daemon ever keeps in RAM, per-index
# WARNING, THERE'S ALSO PER-QUERY LIMIT, SEE SetLimits() API CALL
# default is 1000 (just like Google)
max_matches = 1000
# seamless rotate, prevents rotate stalls if precaching huge datasets
# optional, default is 1
seamless_rotate = 1
# whether to forcibly preopen all indexes on startup
# optional, default is 0 (do not preopen)
preopen_indexes = 0
# whether to unlink .old index copies on succesful rotation.
# optional, default is 1 (do unlink)
unlink_old = 1
}

View File

@ -1,32 +0,0 @@
source source_act
{
type = mysql
sql_host = 192.168.3.30
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = \
SELECT id, Siren1, RaisonSociale, Siren2, actif, dateLien, IF(dateUpdate>dateInsert,dateUpdate,dateInsert) as dateMaj, \
source, Pmin*1 AS PminNum, MajMin, PpPm, IF(Pays='','FRA',Pays) AS Pays \
FROM liens \
WHERE ActionPart=1 AND Siren1>1000 AND Siren1 IN (SELECT DISTINCT SIREN FROM etablissements_old);
sql_attr_uint = actif
sql_attr_uint = source
sql_attr_uint = PminNum
sql_attr_str2ordinal= MajMin
sql_attr_str2ordinal= PpPm
sql_attr_str2ordinal= Pays
}
index act
{
source = source_act
path = /dbs/sphinx/act
docinfo = extern
morphology = none
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,37 +0,0 @@
source dir
{
type = mysql
sql_host = 192.168.3.30
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, prenom, \
YEAR(naissance_date) AS naiss_annee, \
MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, \
naissance_lieu, fonction_code, actif \
FROM dirigeants_tmp;
sql_attr_str2ordinal = civilite
sql_attr_str2ordinal = typeDir
sql_attr_str2ordinal = fonction_code
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = source_dir
path = /dbs/sphinx/dir
docinfo = extern
morphology = none
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,23 +0,0 @@
source histo
{
type = mysql
sql_host = 192.168.3.24
sql_user = sphinx_histo
sql_pass = sphinx
sql_db = histobodacc
sql_port = 3306 # optional, default is 3306
sql_query = SELECT id, nomFichier, annee1, dateBod, texte FROM bodacc_ocr;
sql_attr_uint = annee1
sql_query_info = SELECT * FROM bodacc_ocr WHERE id=$id
}
index histo
{
source = histo
path = /home/sphinx/histo
docinfo = extern
morphology = none
min_word_len = 1
charset_type = sbcs
html_strip = 1
}

View File

@ -1,77 +0,0 @@
#############################################################################
## indexer settings
#############################################################################
indexer
{
# memory limit, in bytes, kiloytes (16384K) or megabytes (256M)
# optional, default is 32M, max is 2047M, recommended is 256M to 1024M
mem_limit = 2047M
# maximum IO calls per second (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iops = 40
# maximum IO call size, bytes (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iosize = 1048576
}
#############################################################################
## searchd settings
#############################################################################
searchd
{
# IP address to bind on
# optional, default is 0.0.0.0 (ie. listen on all interfaces)
#
# address = 127.0.0.1
# address = 192.168.0.1
# searchd TCP port number
# mandatory, default is 3312
listen = 3312
# log file, searchd run info is logged here
# optional, default is 'searchd.log'
log = /dbs/sphinxlog/searchd.log
# query log file, all search queries are logged here
# optional, default is empty (do not log queries)
query_log = /dbs/sphinxlog/query.log
# client read timeout, seconds
# optional, default is 5
read_timeout = 5
# maximum amount of children to fork (concurrent searches to run)
# optional, default is 0 (unlimited)
max_children = 30
# PID file, searchd process ID file name
# mandatory
pid_file = /var/log/searchd.pid
# max amount of matches the daemon ever keeps in RAM, per-index
# WARNING, THERE'S ALSO PER-QUERY LIMIT, SEE SetLimits() API CALL
# default is 1000 (just like Google)
max_matches = 1000
# seamless rotate, prevents rotate stalls if precaching huge datasets
# optional, default is 1
seamless_rotate = 1
# whether to forcibly preopen all indexes on startup
# optional, default is 0 (do not preopen)
preopen_indexes = 0
# whether to unlink .old index copies on succesful rotation.
# optional, default is 1 (do unlink)
unlink_old = 1
}

View File

@ -1,77 +0,0 @@
#############################################################################
## indexer settings
#############################################################################
indexer
{
# memory limit, in bytes, kiloytes (16384K) or megabytes (256M)
# optional, default is 32M, max is 2047M, recommended is 256M to 1024M
mem_limit = 1024M
# maximum IO calls per second (for I/O throttling)
# optional, default is 0 (unlimited)
#
max_iops = 40
# maximum IO call size, bytes (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iosize = 1048576
}
#############################################################################
## searchd settings
#############################################################################
searchd
{
# IP address to bind on
# optional, default is 0.0.0.0 (ie. listen on all interfaces)
#
# address = 127.0.0.1
# address = 192.168.0.1
# searchd TCP port number
# mandatory, default is 3312
listen = 9312
# log file, searchd run info is logged here
# optional, default is 'searchd.log'
log = /dbs/sphinxlog/searchd.log
# query log file, all search queries are logged here
# optional, default is empty (do not log queries)
query_log = /dbs/sphinxlog/query.log
# client read timeout, seconds
# optional, default is 5
read_timeout = 5
# maximum amount of children to fork (concurrent searches to run)
# optional, default is 0 (unlimited)
max_children = 30
# PID file, searchd process ID file name
# mandatory
pid_file = /var/log/searchd.pid
# max amount of matches the daemon ever keeps in RAM, per-index
# WARNING, THERE'S ALSO PER-QUERY LIMIT, SEE SetLimits() API CALL
# default is 1000 (just like Google)
max_matches = 1000
# seamless rotate, prevents rotate stalls if precaching huge datasets
# optional, default is 1
seamless_rotate = 1
# whether to forcibly preopen all indexes on startup
# optional, default is 0 (do not preopen)
preopen_indexes = 0
# whether to unlink .old index copies on succesful rotation.
# optional, default is 1 (do unlink)
unlink_old = 1
}

View File

@ -1,37 +0,0 @@
source dir
{
type = mysql
sql_host = 192.168.3.30
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre =
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, prenom, \
YEAR(naissance_date) AS naiss_annee, \
MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, \
naissance_lieu, fonction_code, actif \
FROM dirigeants;
sql_attr_str2ordinal = civilite
sql_attr_str2ordinal = typeDir
sql_attr_str2ordinal = fonction_code
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = source_dir
path = /dbs/sphinx/dir
docinfo = extern
morphology = none
charset_type = sbcs
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0..U+DE->U+E0..U+FE, U+DF, U+E0..U+FF
}

View File

@ -1,93 +0,0 @@
<?php
Class configure
{
protected $dirname;
protected $sphinx;
protected $hostname;
protected $sql;
protected $indexes;
public function __construct()
{
$this->hostname = exec('echo $(hostname)');
$this->sphinx = 'sphinx.conf';
$this->dirname = 'config/'.$this->hostname.'/';
(file_exists($this->sphinx))?unlink($this->sphinx):'';
}
public function printIndexes($nbServer)
{
$dir = opendir($this->dirname.$this->sql[$nbServer].'/');
$i = 1;
while($file = readdir($dir)) {
$extension = explode('.', $file);
if($file != '.' and $file != '..' and $extension[1] == 'conf') {
echo "\t\t".'['.$i.'] '. $file."\n";
$this->indexes[$i] = $file;$i++;
}
}
if(count($this->indexes) == 0) {
echo "\tAucun indexes dans le repertoire : '".$this->dirname.$this->sql[$nbServer]."' \n";
exit;
}
}
public function printMysqlServer()
{
$dir = opendir($this->dirname);
$i = 1;
while($rep = readdir($dir)) {
if($rep != '.' and $rep != '..' and is_dir($this->dirname.$rep)) {
echo "\t".'['.$i.'] '.$rep."\n";
$this->sql[$i] = $rep;
$this->printIndexes($i);
$i++;
}
}
if(count($this->sql) == 0) {
echo "\tAucun serveurs dans le repertoire : '".$this->dirname."' \n";
exit;
}
}
public function createConfig($mySqlServer, $index)
{
$dirname = $this->dirname.$mySqlServer.'/';
$dir = opendir($dirname);
if(file_exists($dirname.$index)) {
file_put_contents($this->sphinx, file_get_contents($dirname.$index), FILE_APPEND);
return (true);
}
return (false);
}
public function inviteDeCommande()
{
$handle = fopen('.', 'r');
$server = '';
fwrite(STDOUT, "\n - Serveurs SQL disponnible :\n");
$this->printMysqlServer();
while($server != "exit\n") {
echo "Selectionnez Server et Indexe : ";
$server = fgets(STDIN);
$indexes = explode(' ', $server);
if(isset($this->sql[intval($indexes[0])]) and isset($this->indexes[intval($indexes[1])])) {
$this->createConfig($this->sql[intval($indexes[0])], $this->indexes[intval($indexes[1])]);
echo 'Indexe ajouté !'."\n";
} else
echo 'Cet indexe n\'existe pas !'."\n";
}
file_put_contents($this->sphinx, file_get_contents($this->dirname.$this->sphinx), FILE_APPEND);
exec('sudo mv '.$this->sphinx.' /usr/local/sphinx/etc/'.$this->sphinx);
}
}
$a = new configure();
$a->inviteDeCommande();

7
indexer/indexer-act.sh Normal file
View File

@ -0,0 +1,7 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/sphinxlog
echo "$(date '+%Y-%m-%d %H:%M:%S') === INDEXATION ACT" >> $PATH_LOG/indexer.log
$PATH_BIN/indexer --rotate act >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') === FIN INDEXATION ACT" >> $PATH_LOG/indexer.log

View File

@ -0,0 +1,40 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/sphinxlog
PATH_SQL=/home/scripts/indexer/sql
MYSQL_HOST=192.168.3.30
MYSQL_USER=sphinx
MYSQL_PASS=indexer
# Is consolidated ?
output=$(mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 < $PATH_SQL/consolidate-ciblage.sql)
idx='';
for line in "$output"; do
idx="$line";
done
# Suppression fin de ligne
idx=$(echo $idx|sed -e "s/^[idx ]*//g"||sed -e "s/[ ]*$//g")
# Lancement de l'indexation si la consolidation a eu lieu
if [ -n "$idx" ]; then
if [[ "$idx" > 0 ]]; then
echo "$(date '+%Y-%m-%d %H:%M:%S') === INDEXATION CIBLAGE" >> $PATH_LOG/indexer.log
# Enregistrement Debut Indexation
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 -e "UPDATE sphinx_idx SET indexingBegin=NOW() WHERE id=$idx" >> $PATH_LOG/indexer.log
# Sphinx rotate
echo "$(date '+%Y-%m-%d %H:%M:%S') - Sphinx - Debut" >> $PATH_LOG/indexer.log
$PATH_BIN/indexer --config /etc/sphinxsearch/sphinx.conf --rotate ciblage >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') - Sphinx - Fin" >> $PATH_LOG/indexer.log
# Enregistrement Fin Indexation
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 -e "UPDATE sphinx_idx SET indexingEnd=NOW() WHERE id=$idx" >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') === FIN INDEXATION CIBLAGE" >> $PATH_LOG/indexer.log
fi
fi

68
indexer/indexer-dir.sh Executable file
View File

@ -0,0 +1,68 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/log
PATH_SQL=/home/scripts/indexer/sql
MYSQL_HOST=192.168.3.30
MYSQL_USER=sphinx
MYSQL_PASS=indexer
# Is consolidated ?
output=$(mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 < $PATH_SQL/consolidate-dir.sql)
idx='';
for line in "$output"; do
idx="$line";
done
# Suppression fin de ligne
idx=$(echo $idx|sed -e "s/^[idx ]*//g"||sed -e "s/[ ]*$//g")
# Lancement de l'indexation si la consolidation a eu lieu
if [ -n "$idx" ]; then
if [[ "$idx" > 0 ]]; then
echo "$(date '+%Y-%m-%d %H:%M:%S') === INDEXATION DIR" >> $PATH_LOG/indexer.log
# Nombre de lignes dans la table etablissements
output=$(mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS jo < $PATH_SQL/count-dir.sql)
nbC='';
for line in "$output"; do
nbC="$line"
done
# Suppression fin de ligne
nbC=$(echo $nbC|sed -e "s/^[nbC ]*//g"||sed -e "s/[ ]*$//g")
nbC=$(echo $(($nbC - 1000)))
# Nombre de lignes dans la table etablissements_tmp
output=$(mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS < $PATH_SQL/count-dirtmp.sql)
nbT='';
for line in "$output"; do
nbT="$line"
done
# Suppression fin de ligne
nbT=$(echo $nbT|sed -e "s/^[nbT ]*//g"||sed -e "s/[ ]*$//g")
if [ -z "$nbC" ]; then
elif [ -z "$nbT" ]; then
elif [ "$nbT" -gt "$nbC" ]; then
# Enregistrement Debut Indexation
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 -e "UPDATE sphinx_idx SET indexingBegin=NOW() WHERE id=$idx" >> $PATH_LOG/indexer.log
# Sphinx rotate
echo "$(date '+%Y-%m-%d %H:%M:%S') - Sphinx - Debut" >> $PATH_LOG/indexer.log
$PATH_BIN/indexer --config /etc/sphinxsearch/sphinx.conf --rotate dir dir_phx >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') - Sphinx - Fin" >> $PATH_LOG/indexer.log
# Rotation des tables MySQL
echo "$(date '+%Y-%m-%d %H:%M:%S') - Rotation Table - Debut" >> $PATH_LOG/indexer.log
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS jo < $PATH_SQL/rotate-dir.sql >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') - Rotation Table - Fin" >> $PATH_LOG/indexer.log
# Enregistrement Fin Indexation
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 -e "UPDATE sphinx_idx SET indexingEnd=NOW() WHERE id=$idx" >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') === FIN INDEXATION DIR" >> $PATH_LOG/indexer.log
fi
fi
fi

68
indexer/indexer-ent.sh Executable file
View File

@ -0,0 +1,68 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/log
PATH_SQL=/home/scripts/indexer/sql
MYSQL_HOST=192.168.3.30
MYSQL_USER=sphinx
MYSQL_PASS=indexer
# Is consolidated ?
output=$(mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 < $PATH_SQL/consolidate-ent.sql)
idx='';
for line in "$output"; do
idx="$line";
done
# Suppression fin de ligne
idx=$(echo $idx|sed -e "s/^[idx ]*//g"||sed -e "s/[ ]*$//g")
# Lancement de l'indexation si la consolidation a eu lieu
if [ -n "$idx" ]; then
if [[ "$idx" > 0 ]]; then
echo "$(date '+%Y-%m-%d %H:%M:%S') === INDEXATION ENT" >> $PATH_LOG/indexer.log
# Nombre de lignes dans la table etablissements
output=$(mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS jo < $PATH_SQL/count-ent.sql)
nbC='';
for line in "$output"; do
nbC="$line"
done
# Suppression fin de ligne
nbC=$(echo $nbC|sed -e "s/^[nbC ]*//g"||sed -e "s/[ ]*$//g")
nbC=$(echo $(($nbC - 1000)))
# Nombre de lignes dans la table etablissements_tmp
output=$(mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS < $PATH_SQL/count-enttmp.sql)
nbT='';
for line in "$output"; do
nbT="$line"
done
# Suppression fin de ligne
nbT=$(echo $nbT|sed -e "s/^[nbT ]*//g"||sed -e "s/[ ]*$//g")
if [ -z "$nbC" ]; then
elif [ -z "$nbT" ]; then
elif [ "$nbT" -gt "$nbC" ]; then
# Enregistrement Debut Indexation
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 -e "UPDATE sphinx_idx SET indexingBegin=NOW() WHERE id=$idx" >> $PATH_LOG/indexer.log
# Sphinx rotate
echo "$(date '+%Y-%m-%d %H:%M:%S') - Sphinx - Debut" >> $PATH_LOG/indexer.log
$PATH_BIN/indexer --config /etc/sphinxsearch/sphinx.conf --rotate ent ent_phx >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') - Sphinx - Fin" >> $PATH_LOG/indexer.log
# Rotation des tables MySQL
echo "$(date '+%Y-%m-%d %H:%M:%S') - Rotation Table - Debut" >> $PATH_LOG/indexer.log
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS jo < $PATH_SQL/rotate-ent.sql >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') - Rotation Table - Fin" >> $PATH_LOG/indexer.log
# Enregistrement Fin Indexation
mysql -h$MYSQL_HOST -u$MYSQL_USER -p$MYSQL_PASS sdv1 -e "UPDATE sphinx_idx SET indexingEnd=NOW() WHERE id=$idx" >> $PATH_LOG/indexer.log
echo "$(date '+%Y-%m-%d %H:%M:%S') === FIN INDEXATION ENT" >> $PATH_LOG/indexer.log
fi
fi
fi

View File

@ -1,9 +0,0 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/sphinxlog
DATE=`date '+%Y-%m-%d %H-%M-%S'`
echo "DEBUT de l'indexation ==== $(date +%H:%M:%S)" >> $PATH_LOG/indexerAct-$(date +%F).log
$PATH_BIN/indexer --rotate act act_phx >> $PATH_LOG/indexerAct-$(date +%F).log
echo "FIN ===== $(date +%H:%M:%S)" >> $PATH_LOG/indexerAct-$(date +%F).log

View File

@ -1,37 +0,0 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/sphinxlog
DATE=`date '+%Y-%m-%d %H-%M-%S'`
echo "DEBUT de l'indexation ==== $(date +%H:%M:%S)" >> $PATH_LOG/indexerDiri-$(date +%F).log
# nombre de lignes dans la table etab
output=$(mysql -h192.168.3.30 -usphinx -pindexer jo < sql/countDiri.sql)
for line in "$output"; do
etab="$line"
done
# Suppression fin de ligne
etab=$(echo $etab|sed -e "s/^[etab ]*//g"||sed -e "s/[ ]*$//g")
# nombre de lignes dans la table diri_tmp
output=$(mysql -h192.168.3.30 -usphinx -pindexer jo < sql/countDiri_tmp.sql)
for line in "$output"; do
etab_tmp="$line"
done
# Suppression fin de ligne
etab_tmp=$(echo $etab_tmp|sed -e "s/^[etab_tmp ]*//g"||sed -e "s/[ ]*$//g")
# Comparaison du nombre de lignes entre etab (ancien) et etab_tmp (nouveau)
if test $etab_tmp -gt $etab; then
echo "Il y a $etab_tmp lignes dans la nouvelle table dirigeants ($etab lignes dans l'ancienne)" >> $PATH_LOG/indexerDiri-$(date +%F).log
$PATH_BIN/indexer --rotate dir dir_phx >> $PATH_LOG/indexerDiri-$(date +%F).log
echo "Sphinx - termine : $(date +%H:%M:%S)" >> $PATH_LOG/indexerDiri-$(date +%F).log
mysql -f -usphinx -h192.168.3.30 -pindexer jo < sql/finIndexationDiri.sql >> $PATH_LOG/indexerDiri-$(date +%F).log
else
# Il y a plus de lignes dans l'ancienne table dirigeants ==> On ne fait rien
echo "Il n'y a pas assez de lignes dans la nouvelle table dirigeants ($etab_tmp / $etab) !" >> $PATH_LOG/indexerDiri-$(date +%F).log
exit
fi
echo "FIN ===== $(date +%H:%M:%S)" >> $PATH_LOG/indexerDiri-$(date +%F).log

View File

@ -1,42 +0,0 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/sphinxlog
DATE=`date '+%Y-%m-%d %H-%M-%S'`
echo "DEBUT de l'indexation ==== $(date +%H:%M:%S)" >> $PATH_LOG/indexerEtab-$(date +%F).log
# nombre de lignes dans la table etab
output=$(mysql -h192.168.3.30 -usphinx -pindexer jo < sql/countEtab.sql)
for line in "$output"; do
etab="$line"
done
# Suppression fin de ligne
etab=$(echo $etab|sed -e "s/^[etab ]*//g"||sed -e "s/[ ]*$//g")
# Cast de la variable au cas ou
#etab=$(echo $etab| gawk '{print + 0}')
# nombre de lignes dans la table etab_tmp
output=$(mysql -h192.168.3.30 -usphinx -pindexer jo < sql/countEtab_tmp.sql)
for line in "$output"; do
etab_tmp="$line"
done
# Suppression fin de ligne
etab_tmp=$(echo $etab_tmp|sed -e "s/^[etab_tmp ]*//g"||sed -e "s/[ ]*$//g")
# Cast de la variable au cas ou
#etab_tmp=$(echo $etab_tmp| gawk '{print + 0}')
# Comparaison du nombre de lignes entre etab (ancien) et etab_tmp (nouveau)
if test $etab_tmp -gt $etab; then
echo "Il y a $etab_tmp lignes dans la nouvelle table etablissement ($etab lignes dans l'ancienne)" >> $PATH_LOG/indexerEtab-$(date +%F).log
# $PATH_BIN/indexer --rotate --all >> $PATH_LOG/indexer-$(date +%F).log
$PATH_BIN/indexer --rotate ent ent_mns ent_phx >> $PATH_LOG/indexerEtab-$(date +%F).log
echo "Sphinx - terminé : $(date +%H:%M:%S)" >> $PATH_LOG/indexerEtab-$(date +%F).log
mysql -f -usphinx -h192.168.3.30 -pindexer jo < sql/finIndexationEtab.sql >> $PATH_LOG/indexerEtab-$(date +%F).log
else
# Il y a plus de lignes dans l'ancienne table etablissements ==> On ne fait rien
echo "Il n'y a pas assez de lignes dans la nouvelle table etablissement ($etab_tmp / $etab) !" >> $PATH_LOG/indexerEtab-$(date +%F).log
exit
fi
echo "FIN ===== $(date +%H:%M:%S)" >> $PATH_LOG/indexerEtab-$(date +%F).log

View File

@ -0,0 +1,6 @@
SELECT id FROM sphinx_idx
WHERE createEnd BETWEEN (NOW() - INTERVAL 2 HOUR) AND NOW()
AND nom = 'jo.etablissements_act'
AND indexingBegin IS NULL
AND indexingEnd IS NULL
ORDER BY createEnd DESC LIMIT 1;

View File

@ -0,0 +1,6 @@
SELECT id FROM sphinx_idx
WHERE createEnd BETWEEN (NOW() - INTERVAL 1 HOUR) AND NOW()
AND nom = 'jo.dirigeants'
AND indexingBegin IS NULL
AND indexingEnd IS NULL
ORDER BY createEnd DESC LIMIT 1;

View File

@ -0,0 +1,6 @@
SELECT id FROM sphinx_idx
WHERE createEnd BETWEEN (NOW() - INTERVAL 1 HOUR) AND NOW()
AND nom = 'jo.etablissements'
AND indexingBegin IS NULL
AND indexingEnd IS NULL
ORDER BY createEnd DESC LIMIT 1;

View File

@ -0,0 +1 @@
SELECT count(*) AS nb from dirigeants;

View File

@ -0,0 +1 @@
SELECT count(*) AS nb from dirigeants_tmp;

View File

@ -1 +0,0 @@
SELECT count(*) AS etab_tmp from dirigeants;

View File

@ -1 +0,0 @@
SELECT count(*) AS etab_tmp from dirigeants_tmp;

36
indexer/test.sh Normal file
View File

@ -0,0 +1,36 @@
#!/bin/bash
PATH_BIN=/usr/local/sphinx/bin
PATH_LOG=/dbs/sphinxlog
PATH_SQL=/home/scripts/indexer/sql
# nombre de lignes dans la table etab
output=$(mysql -h192.168.3.30 -usphinx -pindexer jo < $PATH_SQL/countEtab.sql)
for line in "$output"; do
etab="$line"
done
# Suppression fin de ligne
etab=$(echo $etab|sed -e "s/^[etab ]*//g"||sed -e "s/[ ]*$//g")
# Cast de la variable au cas ou
#etab=$(echo $etab| gawk '{print + 0}')
# nombre de lignes dans la table etab_tmp
output=$(mysql -h192.168.3.30 -usphinx -pindexer jo < $PATH_SQL/countEtab_tmp.sql)
for line in "$output"; do
etab_tmp="$line"
done
# Suppression fin de ligne
etab_tmp=$(echo $etab_tmp|sed -e "s/^[etab_tmp ]*//g"||sed -e "s/[ ]*$//g")
# Cast de la variable au cas ou
#etab_tmp=$(echo $etab_tmp| gawk '{print + 0}')
# Comparaison du nombre de lignes entre etab (ancien) et etab_tmp (nouveau)
if [ -z "$etab" ]; then
echo "etab = null"
elif [ -z "$etab_tmp" ]; then
echo "etab_tmp = null"
elif [ $etab_tmp -gt $etab ]; then
echo "Il y a $etab_tmp lignes dans la nouvelle table etablissement ($etab lignes dans l'ancienne)"
else
# Il y a plus de lignes dans l'ancienne table etablissements ==> On ne fait rien
echo "Il n'y a pas assez de lignes dans la nouvelle table etablissement ($etab_tmp / $etab) !"
fi

View File

@ -1,147 +0,0 @@
#! /bin/sh
#
# Written by Miquel van Smoorenburg <miquels@cistron.nl>.
# Modified for Debian
# by Ian Murdock <imurdock@gnu.ai.mit.edu>.
# Further changes by Javier Fernandez-Sanguino <jfs@debian.org>
# Modified for sphinx by Radu Spineanu <radu@debian.org>
#
#
### BEGIN INIT INFO
# Provides: sphinxsearch
# Required-Start: $local_fs $remote_fs $syslog $network $time
# Required-Stop: $local_fs $remote_fs $syslog $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Fast standalone full-text SQL search engine
### END INIT INFO
PREFIX=/usr/local/sphinx
DATA=/dbs/sphinx
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=$PREFIX/bin/searchd
NAME=sphinx
DESC=sphinx
test -x $DAEMON || exit 0
PIDFILE=/var/log/searchd.pid
DODTIME=1 # Time to wait for the server to die, in seconds
# If this value is set too low you might not
# let some servers to die gracefully and
# 'restart' will not work
# Include sphinx defaults if available
if [ -f /etc/default/sphinx ] ; then
. /etc/default/sphinx
fi
set -e
running_pid()
{
# Check if a given process pid's cmdline matches a given name
pid=$1
name=$2
[ -z "$pid" ] && return 1
[ ! -d /proc/$pid ] && return 1
cmd=`cat /proc/$pid/cmdline | tr "\000" "\n"|head -n 1 |cut -d : -f 1`
# Is this the expected child?
[ "$cmd" != "$name" ] && return 1
return 0
}
running()
{
# Check if the process is running looking at /proc
# (works for all users)
# No pidfile, probably no daemon present
[ ! -f "$PIDFILE" ] && return 1
# Obtain the pid and check it against the binary name
pid=`cat $PIDFILE`
running_pid $pid $DAEMON || return 1
return 0
}
force_stop() {
# Forcefully kill the process
[ ! -f "$PIDFILE" ] && return
if running ; then
kill -15 $pid
# Is it really dead?
[ -n "$DODTIME" ] && sleep "$DODTIME"s
if running ; then
kill -9 $pid
[ -n "$DODTIME" ] && sleep "$DODTIME"s
if running ; then
echo "Cannot kill $LABEL (pid=$pid)!"
exit 1
fi
fi
fi
rm -f $PIDFILE
return 0
}
case "$1" in
start)
echo -n "Starting $DESC: "
# Check if we have the configuration file
if [ ! -f /usr/local/sphinx/etc/sphinx.conf ]; then
echo "Please create an /usr/local/sphinx/sphinx.conf configuration file."
echo "Templates are in the directory."
exit 0
fi
start-stop-daemon --start --exec ${DAEMON}
if running ; then
echo "$NAME."
else
echo " ERROR."
fi
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE \
--exec $DAEMON
echo "$NAME."
;;
force-stop)
echo -n "Forcefully stopping $DESC: "
force_stop
if ! running ; then
echo "$NAME."
else
echo " ERROR."
fi
;;
restart)
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE \
--exec $DAEMON
[ -n "$DODTIME" ] && sleep $DODTIME
start-stop-daemon --start --exec ${DAEMON}
echo "$NAME."
;;
status)
echo -n "$LABEL is "
if running ; then
echo "running"
else
echo " not running."
exit 1
fi
;;
*)
N=/etc/init.d/$NAME
# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $N {start|stop|restart|force-reload|status|force-stop}" >&2
exit 1
;;
esac
exit 0

91
scripts/build/README Normal file
View File

@ -0,0 +1,91 @@
La base de données doit communiqué en UTF-8
sql_query_pre = SET NAMES utf8
charset_type = utf-8
# 'utf-8' defaults for English and Russian
charset_table = 0..9, A..Z->a..z, _, a..z, \
U+410..U+42F->U+430..U+44F, U+430..U+44F
# For french
charset_table = 0..9, A..Z->a..z, a..z, \
U+00C0..U+00D6->U+00E0..U+00F6, U+00E0..U+00F6, \
U+00D8..U+00DE->U+00F8..U+00FE, U+00F8..U+00FE, \
U+0152->U+0153, U+0153 \
Morphology
==========
# builtin preprocessors are 'none', 'stem_en', 'stem_ru', 'stem_enru',
# 'soundex', and 'metaphone'; additional preprocessors available from
# libstemmer are 'libstemmer_XXX', where XXX is algorithm code
# (see libstemmer_c/libstemmer/modules.txt)
morphology = libstemmer_french
Taille minimum des mots ou l'on applique la morphology
min_stemming_len = 4
According to libstimmer.c/libstimmer/modules.txt, the french module can be refered to by either
french, fr, fre, fra... french UTF_8,ISO_8859_1 french,fr,fre,fra
Utilisation des stopwords
=========================
un, une, le, la, les, de, des, du, dans, l', d', @
Créer un fichier de stopwords
sudo /usr/local/sphinx/bin/indexer --config /etc/sphinxsearch/sphinx.conf --buildstops stopwords-ent.txt 100 ent
Utilisation des wordforms
=========================
Appliquer après les règles de charset_table
Stemming n'est pas appliquer à ces mots , ils deviennent des exceptions
Les mots définis sont utilisé pour normalisé les mots durant l'indexation et la recherche,
il est donc nécessaire de réindexé et redémarrer la recherche pour appliquer les changements
Divers
------
& > ET
Les chiffres
------------
un > 1
deux > 2
trois > 3
quatre > 4
cinq > 5
six > 6
sept > 7
huit > 8
neuf > 9
dix > 10
onze > 11
douze > 12
treize > 13
quatorze > 14
quinze > 15
seize > 16
vingt > 20
vingts > 20
trente > 30
quarante > 40
cinquante > 50
soixante > 60
quatrevingt > 80
cent > 100
cents > 100
mille > 1000
Les chiffres romain
-------------------
Les éléments de voies et abbréviations
--------------------------------------
Voir le wordforms

View File

@ -0,0 +1,38 @@
source act
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = SELECT l.id, l.idPar, l.idAct, r.siren, r.actif, r.PpPm, r.RS, r.adresse_cp, r.adresse_ville, \
p.libPays AS pays, l.PDetention FROM liens2 l, liensRef r, tabPays p \
WHERE l.dateSuppr = '0000-00-00 00:00:00' AND r.id = l.idAct \
AND ( r.siren>1000 OR (r.siren=0 AND r.adresse_pays!='FRA') OR (r.siren=0 AND r.PpPm='PP') ) \
AND p.codPays3 = r.adresse_pays;
sql_attr_uint = idAct
sql_attr_bool = actif
sql_attr_float = PDetention
sql_attr_string = pays
}
index act
{
source = act
path = /dbs/sphinx/act
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,157 @@
source ciblage
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = \
SELECT id, LPAD(siren, 9, '0') AS siren, LPAD(nic, 5, '0') AS nic, \
siege, \
adr_cp, \
REPLACE(REPLACE(adr_dep, '2B', '202'), '2A', '201') AS adr_dep, \
IF(tel>0,1,0) AS tel, \
IF(fax>0,1,0) AS fax, \
cj, \
capital, \
CONCAT('EX ', ape_etab) AS ape_etab, \
CONCAT('EX ', ape_entrep) AS ape_entrep, \
age_entrep, \
age_etab, \
tca, \
tcaexp, \
IF(teff_entrep IS NULL,99,teff_entrep) AS teff_entrep, \
IF(teff_etab IS NULL,99,teff_etab) AS teff_etab, \
IF(web='',0,1) AS web, \
IF(mail='',0,1) AS mail, \
IF(adrDom>0,1,0) AS adrDom, \
actifEco, \
presentRcs, \
procolHisto, \
tvaIntraValide, \
dateCrea_etab,\
dateCrea_ent, \
dateImmat, \
eff_entrep, \
eff_etab, \
IF(dirNom='',0,1) AS dirNom, \
nbEtab, \
IF(nbMPubli>0,1,0) AS nbMPubli, \
IF(CAST(sirenGrp AS UNSIGNED)>100,1,0) AS sirenGrp, \
nbActio, \
IF(nbActio>0,1,0) AS actio, \
nbPart, \
IF(nbPart>0,1,0) AS part, \
CASE bilType WHEN 'I' THEN 1 WHEN 'R' THEN 2 WHEN 'E' THEN 3 ELSE 0 END as bilType, \
bilAnnee, \
bilCloture, \
bilDuree, \
bilTca, \
bilEE, \
bilFL, \
bilFK, \
bilFR, \
bilGF, \
bilGP, \
bilGU, \
bilGW, \
bilHD, \
bilHH, \
bilHL, \
bilHM, \
bilHN, \
bilYP, \
CAST(codeCommune AS UNSIGNED) AS codeCommune, \
CASE zus WHEN '' THEN 0 WHEN 'HORSZONE' THEN 0 WHEN 'NSP' THEN 0 WHEN 'X' THEN 0 ELSE 1 END as zus, \
CASE zfu WHEN '' THEN 0 WHEN 'HORSZONE' THEN 0 WHEN 'NSP' THEN 0 WHEN 'X' THEN 0 ELSE 1 END as zfu, \
CASE zru WHEN '' THEN 0 WHEN 'NSP' THEN 0 ELSE 1 END as zru, \
CASE cucs WHEN '' THEN 0 WHEN 'NSP' THEN 0 ELSE 1 END as cucs, \
IF(zrr=1,1,0) as zrr, \
IF(zafr=1,1,0) as zafr, \
CASE avisCs WHEN 0 THEN 1 WHEN 10 THEN 2 WHEN 15 THEN 3 WHEN 23 THEN 4 WHEN 29 THEN 4 WHEN 39 THEN 4 WHEN 43 THEN 4 WHEN 21 THEN 5 WHEN 26 THEN 5 WHEN 28 THEN 5 WHEN 31 THEN 6 WHEN 50 THEN 6 WHEN 24 THEN 7 ELSE 0 END as avisCs \
FROM etablissements_act WHERE siren>100;
sql_field_string = siren
sql_field_string = nic
sql_attr_bool = siege
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_bool = tel
sql_attr_bool = fax
sql_attr_uint = cj
sql_attr_uint = capital
sql_attr_uint = age_entrep
sql_attr_uint = age_etab
sql_attr_uint = tca
sql_attr_uint = tcaexp
sql_attr_uint = teff_entrep
sql_attr_uint = teff_etab
sql_attr_bool = web
sql_attr_bool = mail
sql_attr_bool = adrDom
sql_attr_uint = actifEco
sql_attr_uint = presentRcs
sql_attr_uint = procolHisto
sql_attr_uint = tvaIntraValide
sql_attr_uint = dateCrea_etab
sql_attr_uint = dateCrea_ent
sql_attr_uint = dateImmat
sql_attr_uint = eff_entrep
sql_attr_uint = eff_etab
sql_attr_bool = dirNom
sql_attr_uint = nbEtab
sql_attr_uint = nbMPubli
sql_attr_bool = sirenGrp
sql_attr_uint = nbActio
sql_attr_bool = actio
sql_attr_uint = nbPart
sql_attr_bool = part
sql_attr_uint = bilType
sql_attr_uint = bilAnnee
sql_attr_uint = bilCloture
sql_attr_uint = bilDuree
sql_attr_uint = bilTca
sql_attr_uint = bilEE
sql_attr_uint = bilFL
sql_attr_uint = bilFK
sql_attr_uint = bilFR
sql_attr_uint = bilGF
sql_attr_uint = bilGP
sql_attr_uint = bilGU
sql_attr_uint = bilGW
sql_attr_uint = bilHD
sql_attr_uint = bilHH
sql_attr_uint = bilHL
sql_attr_uint = bilHM
sql_attr_uint = bilHN
sql_attr_uint = bilYP
sql_attr_uint = codeCommune
sql_attr_bool = zus
sql_attr_bool = zru
sql_attr_bool = zfu
sql_attr_bool = cucs
sql_attr_bool = zrr
sql_attr_bool = zafr
sql_attr_uint = avisCs
}
index ciblage
{
source = ciblage
path = /dbs/sphinx/ciblage
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,110 @@
#############################################################################
# Documentation
# =============
#
# Présence d'éléments
# IF(element=='',0,1) AS pElement
#
# Liste des champs dans la BDD
# -----------------------------
# id
# source
# source_id
# triCode
# autre_id
# siren => LPAD(siren, 9, '000000000')
# nic => LPAD(nic, 5, '00000')
# actif => 0 ou 1
# siege => 0 ou 1
# raisonSociale
# enseigne
# sigle
# identite_pre
# marques => IF(marques=='',0,1) AS pMarques
# adr_num
# adr_btq
# adr_typeVoie
# adr_libVoie
# adr_comp
# adr_cp => Code postal
# adr_ville => Ville
# adr_dep => Departement (Corse 2A,2B => 201, 202)
# adr_com
# tel => IF(tel>0,1,0) AS pTel
# fax => IF(fax>0,1,0) AS pFax
# cj => Texte
# capital => Float
# capitalDev
# capitalSrc
# ape_etab => Texte => Code APE de l'etablissement
# ape_entrep => Texte => Code APE de l'entreprise
# age_entrep => Entier => Age de l'entreprise
# age_etab => Entier => Age de l'etablissement
# tca => Entier => Tranche de chiffre d'affaire
# tcaexp => Entier => Tranche de chiffre d'affaire à l'export
# teff_entrep => Tranche Effectif de l'entreprise
# teff_etab => Tranche Effectif de l'etablissement
# rang
# web => IF(web=='',0,1) AS pWeb
# mail => IF(mail=='',0,1) AS pMail
# adrDom => 0,1,2
# lieuAct
# actifEco => 0,1
# presentRcs => 0,1
# procolHisto =>
# tvaIntraCle
# tvaIntraValide => 0,1
# ape4_etab
# ape4_entrep
# NaceEtab
# NaceEntrep
# dateCrea_etab => Date
# dateCrea_ent => Date
# dateImmat => Date
# eff_entrep => Entier => Effectif de l'entreprise
# eff_etab => Entier => Effectir de l'etablissement
# distSP
# achPost
# rivoli
# dirCiv
# dirNom => IF(pDirNom=='',0,1) AS pDirNom
# dirPrenom
# dirDateNaiss
# dirFct
# nbEtab => Nombre d'établissement
# nbMPubli
# sirenGrp => IF(pSirenGrp>0,1,0) AS pSirenGrp
# nbActio => Entier => Nombre d'actionnaires (actio,bool)
# nbPart => Entier => Nombre de participations (part, bool)
# bilType =>
# bilAnnee =>
# bilCloture =>
# bilDuree =>
# bilTca =>
# bilEE =>
# bilFL =>
# bilFK =>
# bilFR =>
# bilGF =>
# bilGP =>
# bilGU =>
# bilGW =>
# bilHD =>
# bilHH =>
# bilHL =>
# bilHM =>
# bilHN =>
# bilYP =>
# avisCs
# codeCommune =>
# l93_x
# l93_y
# alt
# precis
# zus =>
# zru =>
# zfu =>
# cucs =>
# zrr =>
# zafr =>
#############################################################################

View File

@ -0,0 +1,59 @@
source dir
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, \
prenom, YEAR(naissance_date) AS naiss_annee, MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, naissance_lieu, fonction_code, actif \
FROM dirigeants;
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = dir
path = /dbs/sphinx/dir
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index dir_phx
{
source = dir
path = /dbs/sphinx/dir_phx
docinfo = extern
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,59 @@
source dir
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, \
prenom, YEAR(naissance_date) AS naiss_annee, MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, naissance_lieu, fonction_code, actif \
FROM dirigeants_tmp;
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = dir
path = /dbs/sphinx/dir
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index dir_phx
{
source = dir
path = /dbs/sphinx/dir_phx
docinfo = extern
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,71 @@
source ent
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, siren, nic, siege, \
CONCAT_WS(" ", raisonSociale, enseigne, sigle, identite_pre) AS nom, \
REPLACE(REPLACE(adr_dep, '2B', '202'), '2A', '201') AS adr_dep, \
actif, adr_num, CONCAT_WS(" ", adr_typeVoie, adr_libVoie ,adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, IF(siren>200,1,0) AS sirenValide, rang \
FROM etablissements;
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_bool = actif
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = cj
sql_attr_bool = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/sphinx/ent
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
wordforms = /etc/sphinxsearch/wordforms-ent.txt
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index ent_phx
{
source = ent
path = /dbs/sphinx/ent_phx
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
stopwords_unstemmed = 1
wordforms = /etc/sphinxsearch/wordforms-ent.txt
morphology = libstemmer_fr
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,71 @@
source ent
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, siren, nic, siege, \
CONCAT_WS(" ", raisonSociale, enseigne, sigle, identite_pre) AS nom, \
REPLACE(REPLACE(adr_dep, '2B', '202'), '2A', '201') AS adr_dep, \
actif, adr_num, CONCAT_WS(" ", adr_typeVoie, adr_libVoie ,adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, IF(siren>200,1,0) AS sirenValide, rang \
FROM etablissements_tmp;
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_bool = actif
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = cj:4
sql_attr_bool = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/sphinx/ent
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
wordforms = /etc/sphinxsearch/wordforms-ent.txt
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index ent_phx
{
source = ent
path = /dbs/sphinx/ent_phx
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
stopwords_unstemmed = 1
wordforms = /etc/sphinxsearch/wordforms-ent.txt
morphology = libstemmer_fr
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,32 @@
source histo
{
type = mysql
sql_host = 192.168.78.230
sql_user = sphinx
sql_pass = indexer
sql_db = histobodacc
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, nomFichier, annee1, dateBod, texte FROM bodacc_ocr;
sql_query_info = SELECT * FROM bodacc_ocr WHERE id=$id
sql_attr_uint = annee1
}
index histo
{
source = histo
path = /dbs/sphinx/histo
min_word_len = 3
html_strip = 1
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,366 @@
#############################################################################
## indexer settings
#############################################################################
indexer
{
# memory limit, in bytes, kiloytes (16384K) or megabytes (256M)
# optional, default is 32M, max is 2047M, recommended is 256M to 1024M
mem_limit = 256M
# maximum IO calls per second (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iops = 40
# maximum IO call size, bytes (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iosize = 1048576
# maximum xmlpipe2 field length, bytes
# optional, default is 2M
#
# max_xmlpipe2_field = 4M
# write buffer size, bytes
# several (currently up to 4) buffers will be allocated
# write buffers are allocated in addition to mem_limit
# optional, default is 1M
#
# write_buffer = 1M
# maximum file field adaptive buffer size
# optional, default is 8M, minimum is 1M
#
# max_file_field_buffer = 32M
# how to handle IO errors in file fields
# known values are 'ignore_field', 'skip_document', and 'fail_index'
# optional, default is 'ignore_field'
#
# on_file_field_error = skip_document
# how to handle syntax errors in JSON attributes
# known values are 'ignore_attr' and 'fail_index'
# optional, default is 'ignore_attr'
#
# on_json_attr_error = fail_index
# whether to auto-convert numeric values from strings in JSON attributes
# with auto-conversion, string value with actually numeric data
# (as in {"key":"12345"}) gets stored as a number, rather than string
# optional, allowed values are 0 and 1, default is 0 (do not convert)
#
# json_autoconv_numbers = 1
# whether and how to auto-convert key names in JSON attributes
# known value is 'lowercase'
# optional, default is unspecified (do nothing)
#
# json_autoconv_keynames = lowercase
# lemmatizer dictionaries base path
# optional, defaut is /usr/local/share (see ./configure --datadir)
#
# lemmatizer_base = /usr/local/share/sphinx/dicts
# lemmatizer cache size
# improves the indexing time when the lemmatization is enabled
# optional, default is 256K
#
# lemmatizer_cache = 512M
}
#############################################################################
## searchd settings
#############################################################################
searchd
{
# [hostname:]port[:protocol], or /unix/socket/path to listen on
# known protocols are 'sphinx' (SphinxAPI) and 'mysql41' (SphinxQL)
#
# multi-value, multiple listen points are allowed
# optional, defaults are 9312:sphinx and 9306:mysql41, as below
#
# listen = 127.0.0.1
# listen = 192.168.0.1:9312
# listen = 9312
# listen = /var/run/searchd.sock
listen = 3312
# log file, searchd run info is logged here
# optional, default is 'searchd.log'
log = /dbs/sphinxlog/searchd.log
# query log file, all search queries are logged here
# optional, default is empty (do not log queries)
query_log = /dbs/sphinxlog/query.log
# client read timeout, seconds
# optional, default is 5
read_timeout = 5
# request timeout, seconds
# optional, default is 5 minutes
client_timeout = 300
# maximum amount of children to fork (concurrent searches to run)
# optional, default is 0 (unlimited)
max_children = 30
# maximum amount of persistent connections from this master to each agent host
# optional, but necessary if you use agent_persistent. It is reasonable to set the value
# as max_children, or less on the agent's hosts.
persistent_connections_limit = 30
# PID file, searchd process ID file name
# mandatory
pid_file = /var/run/searchd.pid
# max amount of matches the daemon ever keeps in RAM, per-index
# WARNING, THERE'S ALSO PER-QUERY LIMIT, SEE SetLimits() API CALL
# default is 1000 (just like Google)
max_matches = 1000
# seamless rotate, prevents rotate stalls if precaching huge datasets
# optional, default is 1
seamless_rotate = 1
# whether to forcibly preopen all indexes on startup
# optional, default is 1 (preopen everything)
preopen_indexes = 1
# whether to unlink .old index copies on succesful rotation.
# optional, default is 1 (do unlink)
unlink_old = 1
# attribute updates periodic flush timeout, seconds
# updates will be automatically dumped to disk this frequently
# optional, default is 0 (disable periodic flush)
#
# attr_flush_period = 900
# instance-wide ondisk_dict defaults (per-index value take precedence)
# optional, default is 0 (precache all dictionaries in RAM)
#
# ondisk_dict_default = 1
# MVA updates pool size
# shared between all instances of searchd, disables attr flushes!
# optional, default size is 1M
mva_updates_pool = 1M
# max allowed network packet size
# limits both query packets from clients, and responses from agents
# optional, default size is 8M
max_packet_size = 8M
# crash log path
# searchd will (try to) log crashed query to 'crash_log_path.PID' file
# optional, default is empty (do not create crash logs)
#
# crash_log_path = /var/log/sphinxsearch/crash
# max allowed per-query filter count
# optional, default is 256
max_filters = 256
# max allowed per-filter values count
# optional, default is 4096
max_filter_values = 4096
# socket listen queue length
# optional, default is 5
#
# listen_backlog = 5
# per-keyword read buffer size
# optional, default is 256K
#
# read_buffer = 256K
# unhinted read size (currently used when reading hits)
# optional, default is 32K
#
# read_unhinted = 32K
# max allowed per-batch query count (aka multi-query count)
# optional, default is 32
max_batch_queries = 32
# max common subtree document cache size, per-query
# optional, default is 0 (disable subtree optimization)
#
# subtree_docs_cache = 4M
# max common subtree hit cache size, per-query
# optional, default is 0 (disable subtree optimization)
#
# subtree_hits_cache = 8M
# multi-processing mode (MPM)
# known values are none, fork, prefork, and threads
# threads is required for RT backend to work
# optional, default is fork
workers = prefork
# max threads to create for searching local parts of a distributed index
# optional, default is 0, which means disable multi-threaded searching
# should work with all MPMs (ie. does NOT require workers=threads)
#
dist_threads = 1
# binlog files path; use empty string to disable binlog
# optional, default is build-time configured data directory
#
# binlog_path = # disable logging
# binlog_path = /var/lib/sphinxsearch/data # binlog.001 etc will be created there
# binlog flush/sync mode
# 0 means flush and sync every second
# 1 means flush and sync every transaction
# 2 means flush every transaction, sync every second
# optional, default is 2
#
# binlog_flush = 2
# binlog per-file size limit
# optional, default is 128M, 0 means no limit
#
# binlog_max_log_size = 256M
# per-thread stack size, only affects workers=threads mode
# optional, default is 64K
#
# thread_stack = 128K
# per-keyword expansion limit (for dict=keywords prefix searches)
# optional, default is 0 (no limit)
#
# expansion_limit = 1000
# RT RAM chunks flush period
# optional, default is 0 (no periodic flush)
#
# rt_flush_period = 900
# query log file format
# optional, known values are plain and sphinxql, default is plain
#
# query_log_format = sphinxql
# version string returned to MySQL network protocol clients
# optional, default is empty (use Sphinx version)
#
# mysql_version_string = 5.0.37
# trusted plugin directory
# optional, default is empty (disable UDFs)
#
# plugin_dir = /usr/local/sphinx/lib
# default server-wide collation
# optional, default is libc_ci
#
# collation_server = utf8_general_ci
# server-wide locale for libc based collations
# optional, default is C
#
# collation_libc_locale = ru_RU.UTF-8
# threaded server watchdog (only used in workers=threads mode)
# optional, values are 0 and 1, default is 1 (watchdog on)
#
# watchdog = 1
# SphinxQL compatibility mode (legacy columns and their names)
# optional, default is 1 (old-style)
#
# compat_sphinxql_magics = 1
# costs for max_predicted_time model, in (imaginary) nanoseconds
# optional, default is "doc=64, hit=48, skip=2048, match=64"
#
# predicted_time_costs = doc=64, hit=48, skip=2048, match=64
# current SphinxQL state (uservars etc) serialization path
# optional, default is none (do not serialize SphinxQL state)
#
# sphinxql_state = sphinxvars.sql
# maximum RT merge thread IO calls per second, and per-call IO size
# useful for throttling (the background) OPTIMIZE INDEX impact
# optional, default is 0 (unlimited)
#
# rt_merge_iops = 40
# rt_merge_maxiosize = 1M
# interval between agent mirror pings, in milliseconds
# 0 means disable pings
# optional, default is 1000
#
# ha_ping_interval = 0
# agent mirror statistics window size, in seconds
# stats older than the window size (karma) are retired
# that is, they will not affect master choice of agents in any way
# optional, default is 60 seconds
#
# ha_period_karma = 60
# delay between preforked children restarts on rotation, in milliseconds
# optional, default is 0 (no delay)
#
# prefork_rotation_throttle = 100
# a prefix to prepend to the local file names when creating snippets
# with load_files and/or load_files_scatter options
# optional, default is empty
#
# snippets_file_prefix = /mnt/common/server1/
}

View File

@ -0,0 +1,47 @@
de
la
du
r
des
le
av
d
les
l
sci
sur
et
sarl
a
bd
societe
pl
en
rte
france
c
s
m
association
civile
ld
b
immobiliere
p
e
i
all
services
chez
gaulle
mer
republique
ecole
seine
rene
bat
f
au
grande
madame
monsieur

View File

@ -0,0 +1,206 @@
& > et
un > 1
deux > 2
trois > 3
quatre > 4
cinq > 5
six > 6
sept > 7
huit > 8
neuf > 9
dix > 10
onze > 11
douze > 12
treize > 13
quatorze > 14
quinze > 15
seize > 16
vingt > 20
vingts > 20
trente > 30
quarante > 40
cinquante > 50
soixante > 60
quatrevingt > 80
cent > 100
cents > 100
mille > 1000
zac > zone
zad > zone
za > zone
zi > zone
zup > zone
general > gal
abbaye > abe
agglomeration > agl
aglo > agl
allee > all
ancien > ach
ancienne > art
anse > anse
arcade > arc
autoroute > aut
avenue > av
barriere > bre
bas > bch
bastide > bstd
baston > bast
beguinage > begi
berge > ber
boite postal > bp
boucle > bcle
boulevard > bd
bourg > brg
butte > but
campagne > cgne
camping > cpg
carre > carr
carreau > cau
carrefour > car
carriere > care
castel > cst
cavee > cav
central > ctre
centre > ctre
chalet > chl
chapelle > chp
charmille > chi
chateau > cht
chaussee > chs
che > chemin
chv > chemin
cheminement > chem
cloitre > cloi
colline > coli
contour > ctr
corniche > cor
cottage > cott
cours > crs
darse > dars
degre > deg
dsg > descente
dsc > descente
digue > dig
domaine > dom
docteur > dr
ecart > eca
ecluse > ecl
eglise > egl
enceinte > en
enclave > env
enclos > enc
escalier > esc
espace > espa
esplanade > esp
etang > eting
faubourg > fg
ferme > frm
fontaine > fon
fort > fort
forum > form
fosse > fos
foyer > foyr
galerie > gal
garenne > garn
grand > gbd
gden > grande
gr > grande
grille > gri
grimpette > grim
groupe > gpe
groupement > gpt
halle > hle
hameau > ham
haut > hch
hippodrome > hip
immeuble > imm
impasse > imp
jardin > jard
jetee > jte
levee > leve
lieu > ld
lieudit > ld
lotissement > lot
maison > mf
manoir > man
marche > mar
metro > met
montee > mte
moulin > mln
musee > mus
nouvelle > nte
palais > pal
parc > parc
parking > pkg
parvis > prv
pas > passage
pn > passage
passe > pass
passerelle > ple
patio > pat
pavillon > pav
peripherique > peri
peristyle > psty
petites > pta
pae > petite
pim > petite
prt > petite
ptr > petite
place > pl
placis > plci
plage > plag
plaine > pln
plan > plan
plateau > plt
pointe > pnt
porche > pch
porte > pte
portique > porq
poterne > pot
pourtour > pour
presqu ile > prq
promenade > prom
quai > qu
quartier > qua
raccourci > rac
raidillon > raid
rampe > rpe
rempart > rem
residence > res
rocade > roc
rond > rpt
roquet > roqt
rotonde > rtd
route > rte
rue > r
ruelle > rle
sente > sen
sentier > sen
square > sq
st > saint
ste > saint
sainte > saint
stade > stde
station > sta
terre > tpl
terrain > trn
terrasse > tsse
tertre > trt
traverse > tra
vallon > val
vallee > val
venelle > ven
vieille > vte
villa > vla
vge > village
vlge > village
voie > voi
centre cial > ccal
centre com > ccal
centre comm > ccal
centre commercial > ccal
ville > mairie
commune > mairie
conseil regional > region
conseil general > departement
companie > cie

View File

@ -0,0 +1,39 @@
source act
{
type = mysql
sql_host = 192.168.3.30
sql_port = 3306
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = SELECT l.id, l.idPar, l.idAct, r.siren, r.actif, r.PpPm, r.RS, r.adresse_cp, r.adresse_ville, \
p.libPays AS pays, l.PDetention FROM liens2 l, liensRef r, tabPays p \
WHERE l.dateSuppr = '0000-00-00 00:00:00' AND r.id = l.idAct \
AND ( r.siren>1000 OR (r.siren=0 AND r.adresse_pays!='FRA') OR (r.siren=0 AND r.PpPm='PP') ) \
AND p.codPays3 = r.adresse_pays;
sql_attr_uint = idAct
sql_attr_bool = actif
sql_attr_float = PDetention
sql_attr_string = pays
}
index act
{
source = act
path = /dbs/idx/act
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,158 @@
source ciblage
{
type = mysql
sql_host = 192.168.3.30
sql_port = 3306
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = \
SELECT id, LPAD(siren, 9, '0') AS siren, LPAD(nic, 5, '0') AS nic, \
siege, \
adr_cp, \
REPLACE(REPLACE(adr_dep, '2B', '202'), '2A', '201') AS adr_dep, \
IF(tel>0,1,0) AS tel, \
IF(fax>0,1,0) AS fax, \
cj, \
capital, \
CONCAT('EX ', ape_etab) AS ape_etab, \
CONCAT('EX ', ape_entrep) AS ape_entrep, \
age_entrep, \
age_etab, \
tca, \
tcaexp, \
IF(teff_entrep IS NULL,99,teff_entrep) AS teff_entrep, \
IF(teff_etab IS NULL,99,teff_etab) AS teff_etab, \
IF(web='',0,1) AS web, \
IF(mail='',0,1) AS mail, \
IF(adrDom>0,1,0) AS adrDom, \
actifEco, \
presentRcs, \
procolHisto, \
tvaIntraValide, \
dateCrea_etab,\
dateCrea_ent, \
dateImmat, \
eff_entrep, \
eff_etab, \
IF(dirNom='',0,1) AS dirNom, \
nbEtab, \
IF(nbMPubli>0,1,0) AS nbMPubli, \
IF(CAST(sirenGrp AS UNSIGNED)>100,1,0) AS sirenGrp, \
nbActio, \
IF(nbActio>0,1,0) AS actio, \
nbPart, \
IF(nbPart>0,1,0) AS part, \
CASE bilType WHEN 'I' THEN 1 WHEN 'R' THEN 2 WHEN 'E' THEN 3 ELSE 0 END as bilType, \
bilAnnee, \
bilCloture, \
bilDuree, \
bilTca, \
bilEE, \
bilFL, \
bilFK, \
bilFR, \
bilGF, \
bilGP, \
bilGU, \
bilGW, \
bilHD, \
bilHH, \
bilHL, \
bilHM, \
bilHN, \
bilYP, \
CAST(codeCommune AS UNSIGNED) AS codeCommune, \
CASE zus WHEN '' THEN 0 WHEN 'HORSZONE' THEN 0 WHEN 'NSP' THEN 0 WHEN 'X' THEN 0 ELSE 1 END as zus, \
CASE zfu WHEN '' THEN 0 WHEN 'HORSZONE' THEN 0 WHEN 'NSP' THEN 0 WHEN 'X' THEN 0 ELSE 1 END as zfu, \
CASE zru WHEN '' THEN 0 WHEN 'NSP' THEN 0 ELSE 1 END as zru, \
CASE cucs WHEN '' THEN 0 WHEN 'NSP' THEN 0 ELSE 1 END as cucs, \
IF(zrr=1,1,0) as zrr, \
IF(zafr=1,1,0) as zafr, \
CASE avisCs WHEN 0 THEN 1 WHEN 10 THEN 2 WHEN 15 THEN 3 WHEN 23 THEN 4 WHEN 29 THEN 4 WHEN 39 THEN 4 WHEN 43 THEN 4 WHEN 21 THEN 5 WHEN 26 THEN 5 WHEN 28 THEN 5 WHEN 31 THEN 6 WHEN 50 THEN 6 WHEN 24 THEN 7 ELSE 0 END as avisCs \
FROM etablissements_act WHERE siren>100;
sql_field_string = siren
sql_field_string = nic
sql_attr_bool = siege
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_bool = tel
sql_attr_bool = fax
sql_attr_uint = cj
sql_attr_uint = capital
sql_attr_uint = age_entrep
sql_attr_uint = age_etab
sql_attr_uint = tca
sql_attr_uint = tcaexp
sql_attr_uint = teff_entrep
sql_attr_uint = teff_etab
sql_attr_bool = web
sql_attr_bool = mail
sql_attr_bool = adrDom
sql_attr_uint = actifEco
sql_attr_uint = presentRcs
sql_attr_uint = procolHisto
sql_attr_uint = tvaIntraValide
sql_attr_uint = dateCrea_etab
sql_attr_uint = dateCrea_ent
sql_attr_uint = dateImmat
sql_attr_uint = eff_entrep
sql_attr_uint = eff_etab
sql_attr_bool = dirNom
sql_attr_uint = nbEtab
sql_attr_uint = nbMPubli
sql_attr_bool = sirenGrp
sql_attr_uint = nbActio
sql_attr_bool = actio
sql_attr_uint = nbPart
sql_attr_bool = part
sql_attr_uint = bilType
sql_attr_uint = bilAnnee
sql_attr_uint = bilCloture
sql_attr_uint = bilDuree
sql_attr_uint = bilTca
sql_attr_uint = bilEE
sql_attr_uint = bilFL
sql_attr_uint = bilFK
sql_attr_uint = bilFR
sql_attr_uint = bilGF
sql_attr_uint = bilGP
sql_attr_uint = bilGU
sql_attr_uint = bilGW
sql_attr_uint = bilHD
sql_attr_uint = bilHH
sql_attr_uint = bilHL
sql_attr_uint = bilHM
sql_attr_uint = bilHN
sql_attr_uint = bilYP
sql_attr_uint = codeCommune
sql_attr_bool = zus
sql_attr_bool = zru
sql_attr_bool = zfu
sql_attr_bool = cucs
sql_attr_bool = zrr
sql_attr_bool = zafr
sql_attr_uint = avisCs
}
index ciblage
{
source = ciblage
path = /dbs/idx/ciblage
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,60 @@
source dir
{
type = mysql
sql_host = 192.168.3.30
sql_port = 3306
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, \
prenom, YEAR(naissance_date) AS naiss_annee, MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, naissance_lieu, fonction_code, actif \
FROM dirigeants;
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = dir
path = /dbs/idx/dir
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index dir_phx
{
source = dir
path = /dbs/idx/dir_phx
docinfo = extern
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,60 @@
source dir
{
type = mysql
sql_host = 192.168.3.30
sql_port = 3306
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = \
SELECT id, siren, adr_dep, typeDir, dirSiren, civilite, CONCAT(nom,' ',naissance_nom, ' ', dirRS) AS nom, \
prenom, YEAR(naissance_date) AS naiss_annee, MONTH(naissance_date) AS naiss_mois, \
DAY(naissance_date) AS naiss_jour, naissance_lieu, fonction_code, actif \
FROM dirigeants_tmp;
sql_attr_uint = dirSiren
sql_attr_uint = naiss_annee
sql_attr_uint = naiss_mois
sql_attr_uint = naiss_jour
sql_attr_uint = actif
sql_attr_uint = adr_dep
}
index dir
{
source = dir
path = /dbs/idx/dir
docinfo = extern
morphology = none
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index dir_phx
{
source = dir
path = /dbs/sphinx/dir_phx
docinfo = extern
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,73 @@
source ent
{
type = mysql
sql_host = 192.168.3.30
sql_port = 3306
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, siren, nic, siege, \
CONCAT_WS(" ", raisonSociale, enseigne, sigle, identite_pre) AS nom, \
REPLACE(REPLACE(adr_dep, '2B', '202'), '2A', '201') AS adr_dep, \
actif, adr_num, CONCAT_WS(" ", adr_typeVoie, adr_libVoie ,adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, IF(siren>200,1,0) AS sirenValide, rang \
FROM etablissements;
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_bool = actif
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = cj
sql_attr_bool = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/idx/ent
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
wordforms = /etc/sphinxsearch/wordforms-ent.txt
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index ent_phx
{
source = ent
path = /dbs/idx/ent_phx
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
stopwords_unstemmed = 1
wordforms = /etc/sphinxsearch/wordforms-ent.txt
morphology = libstemmer_fr
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,72 @@
source ent
{
type = mysql
sql_host = 192.168.3.30
sql_port = 3306
sql_user = sphinx
sql_pass = indexer
sql_db = jo
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, siren, nic, siege, \
CONCAT_WS(" ", raisonSociale, enseigne, sigle, identite_pre) AS nom, \
REPLACE(REPLACE(adr_dep, '2B', '202'), '2A', '201') AS adr_dep, \
actif, adr_num, CONCAT_WS(" ", adr_typeVoie, adr_libVoie ,adr_comp) AS adresse, adr_cp, \
adr_ville AS ville, cj, ape_etab, IF(siren>200,1,0) AS sirenValide, rang \
FROM etablissements_tmp;
sql_attr_uint = siren
sql_attr_uint = nic
sql_attr_uint = siege
sql_attr_bool = actif
sql_attr_uint = adr_num
sql_attr_uint = adr_cp
sql_attr_uint = adr_dep
sql_attr_uint = cj:4
sql_attr_bool = sirenValide
sql_attr_uint = rang
}
index ent
{
source = ent
path = /dbs/idx/ent
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
wordforms = /etc/sphinxsearch/wordforms-ent.txt
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}
index ent_phx
{
source = ent
path = /dbs/idx/ent_phx
mlock = 1
docinfo = extern
stopwords = /etc/sphinxsearch/stopwords-ent.txt
stopwords_unstemmed = 1
wordforms = /etc/sphinxsearch/wordforms-ent.txt
morphology = libstemmer_fr
min_stemming_len = 4
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,33 @@
source histo
{
type = mysql
sql_host = 192.168.3.30
sql_port = 3306
sql_user = sphinx
sql_pass = indexer
sql_db = histobodacc
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, nomFichier, annee1, dateBod, texte FROM bodacc_ocr;
sql_query_info = SELECT * FROM bodacc_ocr WHERE id=$id
sql_attr_uint = annee1
}
index histo
{
source = histo
path = /dbs/idx/histo
min_word_len = 3
html_strip = 1
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, a..z, \
U+23, U+25, U+26, U+2B, U+3D, U+40, \
U+C0->a, U+C1->a, U+C2->a, U+C3->a, U+C4->a, U+C5->a, U+C6->a, U+C7->c, \
U+C8->e, U+C8->e, U+C9->e, U+CA->e, U+CB->e, U+CC->i, U+CD->i, U+CE->i, \
U+CF->i, U+D0->d, U+D1->n, U+D2->o, U+D3->o, U+D4->o, U+D5->o, U+D6->o, \
U+D8->o, U+D9->u, U+DA->u, U+DB->u, U+DC->u, U+DD->y, U+E0->a, U+E1->a, \
U+E2->a, U+E3->a, U+E4->a, U+E5->a, U+E7->c, U+E8->e, U+E9->e, U+EA->e, \
U+EB->e, U+EC->i, U+ED->i, U+EE->i, U+EF->i, U+F1->n, U+F2->o, U+F3->o, \
U+F4->o, U+F5->o, U+F6->o, U+F8->o, U+F9->u, U+FA->u,U+FB->u, U+FC->u, \
U+FD->y, U+FF->y, U+0152->U+0153, U+0153
}

View File

@ -0,0 +1,366 @@
#############################################################################
## indexer settings
#############################################################################
indexer
{
# memory limit, in bytes, kiloytes (16384K) or megabytes (256M)
# optional, default is 32M, max is 2047M, recommended is 256M to 1024M
mem_limit = 256M
# maximum IO calls per second (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iops = 40
# maximum IO call size, bytes (for I/O throttling)
# optional, default is 0 (unlimited)
#
# max_iosize = 1048576
# maximum xmlpipe2 field length, bytes
# optional, default is 2M
#
# max_xmlpipe2_field = 4M
# write buffer size, bytes
# several (currently up to 4) buffers will be allocated
# write buffers are allocated in addition to mem_limit
# optional, default is 1M
#
# write_buffer = 1M
# maximum file field adaptive buffer size
# optional, default is 8M, minimum is 1M
#
# max_file_field_buffer = 32M
# how to handle IO errors in file fields
# known values are 'ignore_field', 'skip_document', and 'fail_index'
# optional, default is 'ignore_field'
#
# on_file_field_error = skip_document
# how to handle syntax errors in JSON attributes
# known values are 'ignore_attr' and 'fail_index'
# optional, default is 'ignore_attr'
#
# on_json_attr_error = fail_index
# whether to auto-convert numeric values from strings in JSON attributes
# with auto-conversion, string value with actually numeric data
# (as in {"key":"12345"}) gets stored as a number, rather than string
# optional, allowed values are 0 and 1, default is 0 (do not convert)
#
# json_autoconv_numbers = 1
# whether and how to auto-convert key names in JSON attributes
# known value is 'lowercase'
# optional, default is unspecified (do nothing)
#
# json_autoconv_keynames = lowercase
# lemmatizer dictionaries base path
# optional, defaut is /usr/local/share (see ./configure --datadir)
#
# lemmatizer_base = /usr/local/share/sphinx/dicts
# lemmatizer cache size
# improves the indexing time when the lemmatization is enabled
# optional, default is 256K
#
# lemmatizer_cache = 512M
}
#############################################################################
## searchd settings
#############################################################################
searchd
{
# [hostname:]port[:protocol], or /unix/socket/path to listen on
# known protocols are 'sphinx' (SphinxAPI) and 'mysql41' (SphinxQL)
#
# multi-value, multiple listen points are allowed
# optional, defaults are 9312:sphinx and 9306:mysql41, as below
#
# listen = 127.0.0.1
# listen = 192.168.0.1:9312
# listen = 9312
# listen = /var/run/searchd.sock
listen = 9312
# log file, searchd run info is logged here
# optional, default is 'searchd.log'
log = /dbs/log/searchd.log
# query log file, all search queries are logged here
# optional, default is empty (do not log queries)
query_log = /dbs/log/query.log
# client read timeout, seconds
# optional, default is 5
read_timeout = 5
# request timeout, seconds
# optional, default is 5 minutes
client_timeout = 300
# maximum amount of children to fork (concurrent searches to run)
# optional, default is 0 (unlimited)
max_children = 30
# maximum amount of persistent connections from this master to each agent host
# optional, but necessary if you use agent_persistent. It is reasonable to set the value
# as max_children, or less on the agent's hosts.
persistent_connections_limit = 30
# PID file, searchd process ID file name
# mandatory
pid_file = /var/run/searchd.pid
# max amount of matches the daemon ever keeps in RAM, per-index
# WARNING, THERE'S ALSO PER-QUERY LIMIT, SEE SetLimits() API CALL
# default is 1000 (just like Google)
max_matches = 1000
# seamless rotate, prevents rotate stalls if precaching huge datasets
# optional, default is 1
seamless_rotate = 1
# whether to forcibly preopen all indexes on startup
# optional, default is 1 (preopen everything)
preopen_indexes = 1
# whether to unlink .old index copies on succesful rotation.
# optional, default is 1 (do unlink)
unlink_old = 1
# attribute updates periodic flush timeout, seconds
# updates will be automatically dumped to disk this frequently
# optional, default is 0 (disable periodic flush)
#
# attr_flush_period = 900
# instance-wide ondisk_dict defaults (per-index value take precedence)
# optional, default is 0 (precache all dictionaries in RAM)
#
# ondisk_dict_default = 1
# MVA updates pool size
# shared between all instances of searchd, disables attr flushes!
# optional, default size is 1M
mva_updates_pool = 1M
# max allowed network packet size
# limits both query packets from clients, and responses from agents
# optional, default size is 8M
max_packet_size = 8M
# crash log path
# searchd will (try to) log crashed query to 'crash_log_path.PID' file
# optional, default is empty (do not create crash logs)
#
# crash_log_path = /var/log/sphinxsearch/crash
# max allowed per-query filter count
# optional, default is 256
max_filters = 256
# max allowed per-filter values count
# optional, default is 4096
max_filter_values = 4096
# socket listen queue length
# optional, default is 5
#
# listen_backlog = 5
# per-keyword read buffer size
# optional, default is 256K
#
# read_buffer = 256K
# unhinted read size (currently used when reading hits)
# optional, default is 32K
#
# read_unhinted = 32K
# max allowed per-batch query count (aka multi-query count)
# optional, default is 32
max_batch_queries = 32
# max common subtree document cache size, per-query
# optional, default is 0 (disable subtree optimization)
#
# subtree_docs_cache = 4M
# max common subtree hit cache size, per-query
# optional, default is 0 (disable subtree optimization)
#
# subtree_hits_cache = 8M
# multi-processing mode (MPM)
# known values are none, fork, prefork, and threads
# threads is required for RT backend to work
# optional, default is fork
workers = prefork
# max threads to create for searching local parts of a distributed index
# optional, default is 0, which means disable multi-threaded searching
# should work with all MPMs (ie. does NOT require workers=threads)
#
dist_threads = 2
# binlog files path; use empty string to disable binlog
# optional, default is build-time configured data directory
#
# binlog_path = # disable logging
# binlog_path = /var/lib/sphinxsearch/data # binlog.001 etc will be created there
# binlog flush/sync mode
# 0 means flush and sync every second
# 1 means flush and sync every transaction
# 2 means flush every transaction, sync every second
# optional, default is 2
#
# binlog_flush = 2
# binlog per-file size limit
# optional, default is 128M, 0 means no limit
#
# binlog_max_log_size = 256M
# per-thread stack size, only affects workers=threads mode
# optional, default is 64K
#
# thread_stack = 128K
# per-keyword expansion limit (for dict=keywords prefix searches)
# optional, default is 0 (no limit)
#
# expansion_limit = 1000
# RT RAM chunks flush period
# optional, default is 0 (no periodic flush)
#
# rt_flush_period = 900
# query log file format
# optional, known values are plain and sphinxql, default is plain
#
# query_log_format = sphinxql
# version string returned to MySQL network protocol clients
# optional, default is empty (use Sphinx version)
#
# mysql_version_string = 5.0.37
# trusted plugin directory
# optional, default is empty (disable UDFs)
#
# plugin_dir = /usr/local/sphinx/lib
# default server-wide collation
# optional, default is libc_ci
#
# collation_server = utf8_general_ci
# server-wide locale for libc based collations
# optional, default is C
#
# collation_libc_locale = ru_RU.UTF-8
# threaded server watchdog (only used in workers=threads mode)
# optional, values are 0 and 1, default is 1 (watchdog on)
#
# watchdog = 1
# SphinxQL compatibility mode (legacy columns and their names)
# optional, default is 1 (old-style)
#
# compat_sphinxql_magics = 1
# costs for max_predicted_time model, in (imaginary) nanoseconds
# optional, default is "doc=64, hit=48, skip=2048, match=64"
#
# predicted_time_costs = doc=64, hit=48, skip=2048, match=64
# current SphinxQL state (uservars etc) serialization path
# optional, default is none (do not serialize SphinxQL state)
#
# sphinxql_state = sphinxvars.sql
# maximum RT merge thread IO calls per second, and per-call IO size
# useful for throttling (the background) OPTIMIZE INDEX impact
# optional, default is 0 (unlimited)
#
# rt_merge_iops = 40
# rt_merge_maxiosize = 1M
# interval between agent mirror pings, in milliseconds
# 0 means disable pings
# optional, default is 1000
#
# ha_ping_interval = 0
# agent mirror statistics window size, in seconds
# stats older than the window size (karma) are retired
# that is, they will not affect master choice of agents in any way
# optional, default is 60 seconds
#
# ha_period_karma = 60
# delay between preforked children restarts on rotation, in milliseconds
# optional, default is 0 (no delay)
#
# prefork_rotation_throttle = 100
# a prefix to prepend to the local file names when creating snippets
# with load_files and/or load_files_scatter options
# optional, default is empty
#
# snippets_file_prefix = /mnt/common/server1/
}

View File

@ -0,0 +1,18 @@
sci
sarl
societe
france
association
civile
immobiliere
services
chez
gaulle
mer
republique
ecole
seine
rene
bat
madame
monsieur

View File

@ -0,0 +1,206 @@
& > et
un > 1
deux > 2
trois > 3
quatre > 4
cinq > 5
six > 6
sept > 7
huit > 8
neuf > 9
dix > 10
onze > 11
douze > 12
treize > 13
quatorze > 14
quinze > 15
seize > 16
vingt > 20
vingts > 20
trente > 30
quarante > 40
cinquante > 50
soixante > 60
quatrevingt > 80
cent > 100
cents > 100
mille > 1000
zac > zone
zad > zone
za > zone
zi > zone
zup > zone
general > gal
abbaye > abe
agglomeration > agl
aglo > agl
allee > all
ancien > ach
ancienne > art
anse > anse
arcade > arc
autoroute > aut
avenue > av
barriere > bre
bas > bch
bastide > bstd
baston > bast
beguinage > begi
berge > ber
boite postal > bp
boucle > bcle
boulevard > bd
bourg > brg
butte > but
campagne > cgne
camping > cpg
carre > carr
carreau > cau
carrefour > car
carriere > care
castel > cst
cavee > cav
central > ctre
centre > ctre
chalet > chl
chapelle > chp
charmille > chi
chateau > cht
chaussee > chs
che > chemin
chv > chemin
cheminement > chem
cloitre > cloi
colline > coli
contour > ctr
corniche > cor
cottage > cott
cours > crs
darse > dars
degre > deg
dsg > descente
dsc > descente
digue > dig
domaine > dom
docteur > dr
ecart > eca
ecluse > ecl
eglise > egl
enceinte > en
enclave > env
enclos > enc
escalier > esc
espace > espa
esplanade > esp
etang > eting
faubourg > fg
ferme > frm
fontaine > fon
fort > fort
forum > form
fosse > fos
foyer > foyr
galerie > gal
garenne > garn
grand > gbd
gden > grande
gr > grande
grille > gri
grimpette > grim
groupe > gpe
groupement > gpt
halle > hle
hameau > ham
haut > hch
hippodrome > hip
immeuble > imm
impasse > imp
jardin > jard
jetee > jte
levee > leve
lieu > ld
lieudit > ld
lotissement > lot
maison > mf
manoir > man
marche > mar
metro > met
montee > mte
moulin > mln
musee > mus
nouvelle > nte
palais > pal
parc > parc
parking > pkg
parvis > prv
pas > passage
pn > passage
passe > pass
passerelle > ple
patio > pat
pavillon > pav
peripherique > peri
peristyle > psty
petites > pta
pae > petite
pim > petite
prt > petite
ptr > petite
place > pl
placis > plci
plage > plag
plaine > pln
plan > plan
plateau > plt
pointe > pnt
porche > pch
porte > pte
portique > porq
poterne > pot
pourtour > pour
presqu ile > prq
promenade > prom
quai > qu
quartier > qua
raccourci > rac
raidillon > raid
rampe > rpe
rempart > rem
residence > res
rocade > roc
rond > rpt
roquet > roqt
rotonde > rtd
route > rte
rue > r
ruelle > rle
sente > sen
sentier > sen
square > sq
st > saint
ste > saint
sainte > saint
stade > stde
station > sta
terre > tpl
terrain > trn
terrasse > tsse
tertre > trt
traverse > tra
vallon > val
vallee > val
venelle > ven
vieille > vte
villa > vla
vge > village
vlge > village
voie > voi
centre cial > ccal
centre com > ccal
centre comm > ccal
centre commercial > ccal
ville > mairie
commune > mairie
conseil regional > region
conseil general > departement
companie > cie

View File

@ -0,0 +1,97 @@
#!/usr/bin/php
<?php
// Paramètres
if ( count($argv)<1 || in_array($argv[1], array('--help', '-help', '-h', '-?')) ) {
?>
Utilisation : <?php echo $argv[0]; ?> [actions]
Installation :
- install list
- install [version]
Configuration :
- config etc [version]
- config list
- config server *.conf
<?php
exit;
}
$hostname = exec('echo $HOSTNAME');
$SPHINX_VERSION = array(
'0.9.9' => array('archive'=>'sphinx-0.9.9.tar.gz', 'dir'=>'sphinx-0.9.9'),
'1.10' => array('archive'=>'sphinx-1.10-beta.tar.gz', 'dir'=>'sphinx-1.10-beta'),
'2.0.8' => array('archive'=>'sphinx-2.0.8-release.tar.gz', 'dir'=>'sphinx-2.0.8-release'),
'2.1.2' => array('archive'=>'sphinx-2.1.2-release.tar.gz', 'dir'=>'sphinx-2.1.2-release'),
'2.1.7' => array('archive'=>'sphinx-2.1.7-release.tar.gz', 'dir'=>'sphinx-2.1.7-release'),
);
/**
* Nécessaire :
* ============
* GCC : gcc g++ make
* MySQL : libmysqld-dev
*
* tree
*
*/
if ($argv[1]=='install')
{
//Version
if (!array_key_exists($argv[2], $SPHINX_VERSION)){
echo "Erreur.\n"; exit;
}
$version = $argv[2];
//Vérification nécessaires
//Compilation
$cmd = array();
$cmd[] = "tar xzvf ".$SPHINX_VERSION[$version]['archive'];
$cmd[] = "cp libstemmer_c.tgz ".$SPHINX_VERSION[$version]['dir']."/";
foreach($cmd as $c){
passthru($c);
}
//Changement du répertoire pour la compilation
chdir($SPHINX_VERSION[$version]['dir']);
$cmd = array();
$cmd[] = "tar xzvf libstemmer_c.tgz";
$cmd[] = "./configure --with-libstemmer --prefix=/usr/local/sphinx";
$cmd[] = "make";
$cmd[] = "make install";
foreach($cmd as $c){
passthru($c);
}
}
if ($argv[1]=='config')
{
//Initscript
if ($argv[2]=='etc') {
$version = $argv[3];
exec("cp -vRi scripts/build/$version/etc/* /etc/");
exit;
}
//Liste des configurations
if ($argv[2]=='list') {
echo passthru("tree config/".$hostname."/");
exit;
}
//Configuration
$server = $argv[2];
if (!file_exists("config/".$hostname."/".$server)){
echo "Erreur\n"; exit;
}
$concat = '';
for($i=3;$i<count($argv);$i++){
$concat.= " config/".$hostname."/".$server."/".$argv[$i];
}
exec("cat config/".$hostname."/sphinx.conf".$concat." > /etc/sphinxsearch/sphinx.conf");
}

View File

@ -0,0 +1,10 @@
#
# Settings for the sphinxsearch searchd daemon
# Please read /usr/share/doc/sphinxsearch/README.Debian for details.
#
# Should sphinxsearch run automatically on startup? (default: no)
# Before doing this you might want to modify /etc/sphinxsearch/sphinx.conf
# so that it works for you.
START=yes

View File

@ -0,0 +1 @@
/lib/init/upstart-job

View File

@ -0,0 +1,34 @@
# SphinxSearch Service
description "SphinxSearch Daemon"
author "Andrey Aksyonoff <shodan@sphinxsearch.com>"
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [016]
respawn
respawn limit 10 35
# The default of 5 seconds is too low if we have rt indices and have to flush them
kill timeout 30
env DEFAULTFILE="/etc/default/sphinxsearch"
pre-start script
if [ -f "$DEFAULTFILE" ]; then
. "$DEFAULTFILE"
fi
if [ "z$START" != "zyes" ]; then
stop
logger "To enable sphinxsearch, edit /etc/default/sphinxsearch and set START=yes"
exit 0
fi
if [ ! -f /etc/sphinxsearch/sphinx.conf ]; then
logger "Please create an /etc/sphinxsearch/sphinx.conf configuration file."
logger "Templates are in the /etc/sphinxsearch/ directory."
exit 0
fi
end script
exec /usr/local/sphinx/bin/searchd --nodetach --config /etc/sphinxsearch/sphinx.conf

View File

@ -0,0 +1,8 @@
/dbs/sphinxlog/indexer.log {
missingok
notifempty
weekly
rotate 5
compress
delaycompress
}

View File

@ -0,0 +1,10 @@
#
# Settings for the sphinxsearch searchd daemon
# Please read /usr/share/doc/sphinxsearch/README.Debian for details.
#
# Should sphinxsearch run automatically on startup? (default: no)
# Before doing this you might want to modify /etc/sphinxsearch/sphinx.conf
# so that it works for you.
START=yes

View File

@ -0,0 +1,34 @@
# SphinxSearch Service
description "SphinxSearch Daemon"
author "Andrey Aksyonoff <shodan@sphinxsearch.com>"
start on (net-device-up
and local-filesystems
and runlevel [2345])
stop on runlevel [016]
respawn
respawn limit 10 35
# The default of 5 seconds is too low if we have rt indices and have to flush them
kill timeout 30
env DEFAULTFILE="/etc/default/sphinxsearch"
pre-start script
if [ -f "$DEFAULTFILE" ]; then
. "$DEFAULTFILE"
fi
if [ "z$START" != "zyes" ]; then
stop
logger "To enable sphinxsearch, edit /etc/default/sphinxsearch and set START=yes"
exit 0
fi
if [ ! -f /etc/sphinxsearch/sphinx.conf ]; then
logger "Please create an /etc/sphinxsearch/sphinx.conf configuration file."
logger "Templates are in the /etc/sphinxsearch/ directory."
exit 0
fi
end script
exec /usr/local/sphinx/bin/searchd --nodetach --config /etc/sphinxsearch/sphinx.conf

View File

@ -0,0 +1,8 @@
/dbs/log/indexer.log {
missingok
notifempty
weekly
rotate 5
compress
delaycompress
}

View File

@ -0,0 +1,12 @@
/dbs/log/query.log /dbs/log/searchd.log {
missingok
notifempty
weekly
rotate 5
compress
delaycompress
create 640 root root
postrotate
killall -SIGUSR1 searchd
endscript
}