Integration data retrieved via webservice query with my own database
I have a website that allows users to search stuff in my database via a web interface.
Now I have the possibility to get more such data from external sources. I also query data from remote servers by consuming web services when the user searches for something. Now I want to list search results from both the data in my database and the external data I retrieve from the web services on the webpage if a user searches for something.
I need to order all the data by price and various other properties, so I want to get the external data into my database as well, but only temporary to answer the a user's query of course (it could change on the remote server any time and thus become invalid if it is too old).
What is the best way to store the external data in a way that allows searching and ordering it quickly and easily?
A temporary table? Insert into my tables and mark records and temporary? Anything else?
Thanks for any hints,
If the sorting is not too terribly complex and you're not talking about too much data (for some undefined value of "too much"), you could just load everything into an array of arrays, and use usort() to sort it as needed. If it's going to be a lot of data (for some undefined value of "a lot"), the temp table strategy might be better, making use of the efficiency of the DBMS's sorting abilities to offset the cost of having to insert that external data into it and then pull it out again (sorted).
The stuff in my database alone is several thousands of records and growing, but the data I get via the web service should be much less (it is from a single company and already restricted to the query parameters).
So maybe I could really just get the best 20 or so from my DB, using its sorting capabilites. The merge with the little data I get from web services and sort again. I'll give it a try, thanks for the suggestion.
Users Browsing this Thread
There are currently 1 users browsing this thread. (0 members and 1 guests)