This is a short and sweet, to-the-point, tutorial series that shows how to add search functionality to an iOS app using Elasticsearch for free! More specifically, in this two-part blog series, we will be creating an iOS app that uses Elastic App Search for searching a movie database. By the end of this tutorial, whether you need to search through a small movie database or through petabytes of cloud metrics, you’ll have the knowledge you need to build an amazing search experience for iOS mobile users. Note: This tutorial is based on Elasticsearch version 7.12.x Setup Elastic Cloud trial
Navigate to https://www.elastic.co/cloud/.
Choose Start free trial.
Sign up and login.
Choose Start your free trial.
Select the Enterprise Search option.
Choose to Expand the settings.
Choose version 7.12.x.
Choose Create deployment.
Download the credentials.
Download dataset Navigate to https://www.kaggle.com/edgartanaka1/tmdb-movies-an.... Download the dataset. Unzip the data. Setup App Search Once your deployment has been created, choose Open Enterprise Search. Select Launch App Search. Type the engine name movies Choose Continue Ingest data
Select Upload a JSON file.
Drag and drop one of the movie files from the downloaded dataset.
Choose Continue.
Once the data is indexed successfully, choose Visit the Dashboard.
In the list of engines, choose movies.
In the sidebar, choose Documents to see the document you indexed.
Configure Schema In the sidebar, choose Schema. Set the following fields to be of type Number using the drop-down options on the right:
revenue
popularity
vote_count
budget
runtime
vote_average
Set the following fields to be of type Date using the drop-down options on the right:
release_date
Choose Confirm Types
Bulk ingest data In the sidebar, choose Credentials. Note the following fields as we will use these later:
API Endpoint
private-key
In your command line terminal run: git clone git@github.com:elastic/tutorials.git
Github Link: https://github.com/elastic/tutorials
Open tutorials/app-search/app_search_ingest.py in your favorite text editor
from elastic_enterprise_search import AppSearch
import glob, os import json app_search = AppSearch( "app_search_api_endpoint", http_auth="api_private_key" ) response = [] print("Uploading movies to App Search...") os.chdir("movies_directory") for file in glob.glob("*.json"): with open(file, 'r') as json_file: try: response = app_search.index_documents(engine_name="movies",documents=json.load(json_file)) print(".", end='', flush=True) except: print("Fail!") print(response) break In the python script, replace:
app_search_api_endpoint with the API Endpoint from the credentials tab in your Enterprise Search deployment
api_private_key with the private-key from the credentials tab in your Enterprise Search deployment
movies_directory with the directory path of the unzipped movies data
Example directory: "/Users/jsmith/Downloads/archive/movies/movies"
In your command line terminal, install the Elastic Enterprise Search Python library
pip3 install elastic-enterprise-search
Run the python script
python3 ./tutorials/app-search/app_search_ingest.py
Build iOS appWonderful! 🎉 You should now be ingesting documents into your App Search instance. To build the iOS app, see part 2 of this blog series. https://www.elastic.co/blog/how-to-add-search-to-your-ios-app-part-1
Autentifică-te pentru a adăuga comentarii
Alte posturi din acest grup
Version 7.17.27 of the Elastic Stack was released today. We recommend you upgrade to this latest version. We recommend 7.17.27 over the previous versi