- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
Created on 03-10-2017 07:22 PM - edited 08-17-2019 01:52 PM
Adding TTL on Solr:
cd to this directory
Step1:
Step2:
Step3:
vi managed-schema: add these 3 lines
<field name="_timestamp_" type="date" indexed="true" stored="true" multiValued="false" />
<field name="_ttl_" type="string" indexed="true" multiValued="false" stored="true" />
<field name="_expire_at_" type="date" multiValued="false" indexed="true" stored="true" />
Step4:
vi solrconfig.xml
Replace the below 3 lines with the lines after it:
<updateRequestProcessorChain name="add-unknown-fields-to-the-schema">
<!-- UUIDUpdateProcessorFactory will generate an id if none is present in the incoming document -->
<processor class="solr.UUIDUpdateProcessorFactory"/>
as
<updateRequestProcessorChain name="add-unknown-fields-to-the-schema">
<processor class="solr.TimestampUpdateProcessorFactory">
<str name="fieldName">_timestamp_</str>
</processor>
<processor class="solr.DefaultValueUpdateProcessorFactory">
<str name="fieldName">_ttl_</str>
<str name="value">+30SECONDS</str>
</processor>
<processor class="solr.processor.DocExpirationUpdateProcessorFactory">
<str name="ttlFieldName">_ttl_</str>
<str name="ttlParamName">_ttl_</str>
<int name="autoDeletePeriodSeconds">30</int>
<str name="expirationFieldName">_expire_at_</str>
</processor>
<processor class="solr.FirstFieldValueUpdateProcessorFactory">
<str name="fieldName">_expire_at_</str>
</processor>
<!-- UUIDUpdateProcessorFactory will generate an id if none is present in the incoming document -->
<processor class="solr.UUIDUpdateProcessorFactory" />
Things that might be useful:
Make sure to start solr like this so that configs related to solr goes to /solr in zookeeper:
1./opt/lucidworks-hdpsearch/solr/bin/solr start -c –z lake1.field.hortonworks.com:2181, lake2.field.hortonworks.com:2181, lake3.field.hortonworks.com:2181/solr
2.create the collection like this /opt/lucidworks-hdpsearch/solr/bin/solr create -c tweets -d data_driven_schema_configs -s 1 -rf 1
3.to delete the collection:
http://testdemo.field.hortonworks.com:8983/solr/admin/collections?action=DELETE&name=tweets
4.also remove it from zkCli.sh as rmr /solr/config/tweets
Thanks,
Sujitha Sanku
please ping me or email me at ssanku@hortonworks.com
in case of any issues.
Created on 08-03-2017 08:03 PM
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
Thanks for your article on setting TTL for Solr documents. However, in my environment, I have Ambari Infra-solr auto created cores for hadoop logs that are taking up disk space.
I followed the above and updated the managed-schema and solrconfig.xml under
/usr/lib/ambari-infra-solr/server/solr/configsets/data_driven_schema_configs/
I used Ambari Dashboard to restart Ambari Infra Solr and Zookeeper services instead of manually starting Solr using your above command.
How would we know if Zookeeper and Solr picked up these settings.
Thanks
Anitha
Created on 09-01-2017 09:09 PM
- Mark as Read
- Mark as New
- Bookmark
- Permalink
- Report Inappropriate Content
This worked. Thanks for the detailed steps.