कॉन्फ़िगरेशन में स्क्रिप्टिंग

क्या आप जानते हैं कि Sphinx और Manticore Search कॉन्फ़िग्स आपको shebang syntax का उपयोग करके स्क्रिप्टिंग करने की अनुमति देते हैं? यहां एक उदाहरण है कि यह कुछ मामलों में कितना उपयोगी हो सकता है:

कल्पना करें कि आपके पास 3 तालिकाएं हैं जिनकी संरचना समान है जिन्हें आप 3 अनुक्रमणकों में अनुक्रमित करना चाहते हैं, एक प्रति तालिका। आप बस एक php स्क्रिप्ट बना सकते हैं जो इसे करेगी और इसे Manticore Search कॉन्फ़िग के रूप में उपयोग कर सकते हैं बजाय कि प्रत्येक स्रोत/अनुक्रमणक को अलग से वर्णित करें:

#!/usr/bin/php
<?php
$source= "source [TABLE]_src {
  type      = mysql
  sql_host    = localhost
  sql_user    = user
  sql_pass    = password
  sql_db      = db
  sql_port    = 3306
  sql_query = SELECT [TABLE].id, title, body FROM [TABLE] WHERE [TABLE].id >=\$startand[TABLE].ID <=\$end
  sql_query_range = SELECT MIN(id), MAX(id) FROM [TABLE]
  sql_range_step = 1000
}
";
$index= "index [TABLE]_idx {
  source      = [TABLE]_src
  path      = /path/to/indexes/idx_[TABLE]
}
";
$tables= array('Cats', 'Dogs', 'Mouses');
foreach($tables as $table) {
  echo str_replace('[TABLE]', $table, $source)."\n";
  echo str_replace('[TABLE]', $table, $index)."\n";
}
?>
searchd {
  listen          = localhost:9306:mysql41
  pid_file        = /path/to/pid_file.pid
}

अब आप इस फ़ाइल का उपयोग बिल्कुल सामान्य Manticore Search कॉन्फ़िग जैसे कर सकते हैं:

[snikolaev@dev01 ~]$ searchd -c manticore.conf
Manticore 2.6.4 4510fa4@180501 dev
Copyright (c) 2001-2016, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)
Copyright (c) 2017-2018, Manticore Software LTD (http://manticoresearch.com)

using config file 'manticore.conf'...

मैंटीकोर सर्च इंस्टॉल करें

मैंटीकोर सर्च इंस्टॉल करें