![]() |
VOOZH | about |
The Apache Solr platform is a popular, blazing-fast, open source enterprise search solution built on Apache Lucene.
Apache Solr is equipped with the Data Import Handler (DIH), which can import data from databases and, XML, CSV, and JSON files. When paired with the CData JDBC Driver for Teamwork, you can easily import Teamwork data to Apache Solr. In this article, we show step-by-step how to use CData JDBC Driver in Apache Solr Data Import Handler and import Teamwork data for use in enterprise search.
> solr create -c CDataCoreFor this article, Solr is running as a standalone instance in the local environment and you can access the core at this URL: http://localhost:8983/solr/#/CDataCore/core-overview
APIUniqueKey๐ Define schema in Solr for Teamwork data.
Now we are ready to use Teamwork data in Solr.
In this section, we walk through configuring the Data Import Handler.
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*\.jar" />
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">solr-data-config.xml</str>
</lst>
</requestHandler>
<dataConfig>
<dataSource driver="cdata.jdbc.api.APIDriver" url="jdbc:api:Profile=C:\profiles\Teamwork.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;">
</dataSource>
<document>
<entity name="Account"
query="SELECT Id,APIColumn1,APIColumn2,APIColumn3,APIColumn4,APIColumn5,APIColumn6,APIColumn7,LastModifiedDate FROM Account"
deltaQuery="SELECT Id FROM Account where LastModifiedDate >= '${dataimporter.last_index_time}'"
deltaImportQuery="SELECT Id,APIColumn1,APIColumn2,APIColumn3,APIColumn4,APIColumn5,APIColumn6,APIColumn7,LastModifiedDate FROM Account where Id=${dataimporter.delta.Id}">
<field column="Id" name="Id" ></field>
<field column="APIColumn1" name="APIColumn1" ></field>
<field column="APIColumn2" name="APIColumn2" ></field>
<field column="APIColumn3" name="APIColumn3" ></field>
<field column="APIColumn4" name="APIColumn4" ></field>
<field column="APIColumn5" name="APIColumn5" ></field>
<field column="APIColumn6" name="APIColumn6" ></field>
<field column="APIColumn7" name="APIColumn7" ></field>
<field column="LastModifiedDate" name="LastModifiedDate" ></field>
</entity>
</document>
</dataConfig>> solr stop -all > solr start
Using the CData JDBC Driver for Teamwork you are able to create an automated import of Teamwork data into Apache Solr. Download a free, 30 day trial of any of the hundreds of CData JDBC Drivers and get started today.
Connect to live data from Teamwork with the API Driver
Connect to Teamwork