I am using Datastore low level APIs for an application (Internal job portal). I have an entity called Candidate with following properties
Entity cadidate=new Entity("Candidate",getEmpNum());
candidate.setProperty("name","some name");
candidate.setProperty("skill","c++,Java,C#,GAE");
candiate.setProperty("empNum");
The property 'skill' takes the a comma seperated string. If an HR do a search for a candidate with a key "GAE,Java" , how do I effectively search for entities? will the following query works?
q.addFilter(searchBy, FilterOperator.GREATER_THAN_OR_EQUAL, searchFor);
q.addFilter(searchBy, Query.FilterOperator.LESS_THAN, searchFor+"Z");
If the above query works on say 1000 Entities ..does it work with same latency when there are 50,000 + entities in the datastore?
Please suggest me .. I am new to GAE and Datastore
-thanks Ma
You should use list property.
List<String> skills = Arrays.asList("c++", "Java", "C#", "GAE");
candidate.setProperty("skill", skills);
then query with IN
operator:
List<String> findSkills = Arrays.asList("Java","GAE");
q.addFilter("skill", FilterOperator.IN, findSkills);
This