I am new to Elastic Search. I am developing application in PHP and MySQL.
I need to implement search functionality in my application. Basic requirements are as follows:
1> Search keyword will match against the entire database. I have application database in MySQL with multiple tables.
2> It should auto suggestive search same as google. e.g. once you type any letter, it will auto suggest with matching records.
3> How to integrate/configure my application database with elastic search?
4> Which API will be used to achieve web search.
4> Are there any charges involved for using any API of elastic?
1> Search keyword will match against the entire database. I have application database in MySQL with multiple tables.
That data needs to be imported into Elasticsearch. ES is not a search interface on top of existing data stores, it's a data store in itself.
2> It should auto suggestive search same as google. e.g. once you type any letter, it will auto suggest with matching records.
Okay, that's doable.
3> How to integrate/configure my application database with Elasticsearch?
That question is too open to answer in short form.
4> Which API will be used to achieve web search.
Elasticsearch has a REST interface so technically you could expose it directly to your web clients, but you probably want to use an application server or similar as a proxy. The application server could either use said REST API or the native Java API.
4> Are there any charges involved for using any API of elastic?
Elasticsearch is usually self-hosted. There are hosted solutions and I think it's safe to assume that they come at a cost.
That data needs to be imported into Elasticsearch. ES is not a search
interface on top of existing data stores, it's a data store in itself.
=> If I have real time data entered through web interface by the users, How efficient and feasible to send these data to elasticsearch.
Elasticsearch has a REST interface so technically you could expose it
directly to your web clients, but you probably want to use an
application server or similar as a proxy. The application server could
either use said REST API or the native Java API.
=> What is application server?
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.