You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by to...@apache.org on 2015/03/03 18:42:06 UTC

svn commit: r1663753 - in /jackrabbit/oak/trunk/oak-solr-core/src: main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/LMSEstimator.java main/resources/solr/oak/conf/schema.xml test/resources/solr/oak/conf/schema.xml

Author: tommaso
Date: Tue Mar  3 17:42:05 2015
New Revision: 1663753

URL: http://svn.apache.org/r1663753
Log:
OAK-2537 - adjusted schema to not index sort fields, javadoc fix

Modified:
    jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/LMSEstimator.java
    jackrabbit/oak/trunk/oak-solr-core/src/main/resources/solr/oak/conf/schema.xml
    jackrabbit/oak/trunk/oak-solr-core/src/test/resources/solr/oak/conf/schema.xml

Modified: jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/LMSEstimator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/LMSEstimator.java?rev=1663753&r1=1663752&r2=1663753&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/LMSEstimator.java (original)
+++ jackrabbit/oak/trunk/oak-solr-core/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/query/LMSEstimator.java Tue Mar  3 17:42:05 2015
@@ -22,25 +22,34 @@ import org.apache.jackrabbit.oak.spi.que
 import org.apache.solr.common.SolrDocumentList;
 
 /**
- * A very simple estimator for no. of entries in the index using least mean square.
+ * A very simple estimator for no. of entries in the index using least mean square update method but not the full stochastic
+ * gradient descent algorithm (yet?).
  */
 class LMSEstimator {
 
     private double[] weights;
+    private final double alpha;
+
+    public LMSEstimator(double alpha, double[] weights) {
+        this.alpha = alpha;
+        this.weights = weights;
+    }
 
     public LMSEstimator(double[] weights) {
         this.weights = weights;
+        this.alpha = 0.03;
     }
 
     public LMSEstimator() {
         this.weights = new double[5];
+        this.alpha = 0.03;
     }
 
     synchronized void update(Filter filter, SolrDocumentList docs) {
         double[] updatedWeights = new double[weights.length];
         for (int i = 0; i < updatedWeights.length; i++) {
             double errors = (docs.getNumFound() - estimate(filter)) * getInput(filter, i);
-            updatedWeights[i] = weights[i] + 0.03 * errors;
+            updatedWeights[i] = weights[i] + alpha * errors;
         }
         // weights updated
         weights = Arrays.copyOf(updatedWeights, 5);

Modified: jackrabbit/oak/trunk/oak-solr-core/src/main/resources/solr/oak/conf/schema.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-core/src/main/resources/solr/oak/conf/schema.xml?rev=1663753&r1=1663752&r2=1663753&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-core/src/main/resources/solr/oak/conf/schema.xml (original)
+++ jackrabbit/oak/trunk/oak-solr-core/src/main/resources/solr/oak/conf/schema.xml Tue Mar  3 17:42:05 2015
@@ -124,7 +124,7 @@
         <!--<dynamicField name="*_long_sort" type="tlong" indexed="false" stored="false" multiValued="false" docValues="true"/>-->
         <!--<dynamicField name="*_double_sort" type="tdouble" indexed="false" stored="false" multiValued="false" docValues="true"/>-->
         <!--<dynamicField name="*_date_sort" type="tdate" indexed="false" stored="false" multiValued="false" docValues="true"/>-->
-        <dynamicField name="*_string_sort" type="string" indexed="true" stored="false" multiValued="false" docValues="true"/>
+        <dynamicField name="*_string_sort" type="string" indexed="false" stored="false" multiValued="false" docValues="true"/>
 
         <dynamicField name="*" type="text_general" indexed="true" stored="true" multiValued="true"/>
     </fields>

Modified: jackrabbit/oak/trunk/oak-solr-core/src/test/resources/solr/oak/conf/schema.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-core/src/test/resources/solr/oak/conf/schema.xml?rev=1663753&r1=1663752&r2=1663753&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-core/src/test/resources/solr/oak/conf/schema.xml (original)
+++ jackrabbit/oak/trunk/oak-solr-core/src/test/resources/solr/oak/conf/schema.xml Tue Mar  3 17:42:05 2015
@@ -136,7 +136,7 @@
         <!--<dynamicField name="*_long_sort" type="tlong" indexed="false" stored="false" multiValued="false" docValues="true"/>-->
         <!--<dynamicField name="*_double_sort" type="tdouble" indexed="false" stored="false" multiValued="false" docValues="true"/>-->
         <!--<dynamicField name="*_date_sort" type="tdate" indexed="false" stored="false" multiValued="false" docValues="true"/>-->
-        <dynamicField name="*_string_sort" type="string" indexed="true" stored="false" multiValued="false" docValues="true"/>
+        <dynamicField name="*_string_sort" type="string" indexed="false" stored="false" multiValued="false" docValues="true"/>
 
         <dynamicField name="*" type="text_general" indexed="true" stored="true" multiValued="true"/>
     </fields>