Searching sensor data
First Claim
1. A method comprising, by one or more computer systems:
- building a profile for the end user based on one or more learned preferences of the end user;
receiving a query, from the end user, for particular sensor data among a plurality of sensor data from a plurality of sensors, the received query comprising a unique resource locator that uniquely identifies a particular one of the plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes;
translating the query to correspond to the indexing of the plurality of sensor data, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array;
appending, based on the unique resource locator that identifies the particular one of the plurality of sensors in the query received from the end user, the unique resource locator to the translated query, the unique resource locator specifying the particular one of the plurality of sensors;
communicating the translated query to search among the plurality of sensor data according to the indexing of the plurality of sensor data to identify sensor data associated with the particular one of the plurality of sensors;
receiving a list of matching sensor data;
tailoring the list of matching sensor data based on the user profile of the end user to provide a representation expected by the end user;
receiving query results comprising meta data associated with a subset of the plurality of sensors;
selecting a particular one of the subset of sensors; and
requesting the data available at the particular one of the subset of sensors.
2 Assignments
0 Petitions
Accused Products
Abstract
In particular embodiments, a method includes receiving a query for particular sensor data among multiple sensor data from multiple sensors. The plurality of sensor data has been indexed according to a multi-dimensional array. One or more first ones of the dimensions include time, and one or more second ones of the dimensions include one or more pre-determined sensor-data attributes. The method includes translating the query to correspond to the indexing of the plurality of sensor data. The translated query includes one or more values for one or more of the dimensions of the multi-dimensional array. The method includes communicating the translated query to search among the plurality of sensor data according to its indexing to identify the particular sensor data.
-
Citations
57 Claims
-
1. A method comprising, by one or more computer systems:
-
building a profile for the end user based on one or more learned preferences of the end user; receiving a query, from the end user, for particular sensor data among a plurality of sensor data from a plurality of sensors, the received query comprising a unique resource locator that uniquely identifies a particular one of the plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes; translating the query to correspond to the indexing of the plurality of sensor data, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; appending, based on the unique resource locator that identifies the particular one of the plurality of sensors in the query received from the end user, the unique resource locator to the translated query, the unique resource locator specifying the particular one of the plurality of sensors; communicating the translated query to search among the plurality of sensor data according to the indexing of the plurality of sensor data to identify sensor data associated with the particular one of the plurality of sensors; receiving a list of matching sensor data; tailoring the list of matching sensor data based on the user profile of the end user to provide a representation expected by the end user; receiving query results comprising meta data associated with a subset of the plurality of sensors; selecting a particular one of the subset of sensors; and requesting the data available at the particular one of the subset of sensors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising, by one or more computer systems:
-
building a profile for an end user based on collectively learned preferences of the end user, the profile comprising a set of keywords and a weight assigned to each keyword in the set of keywords; receiving a translated query for sensor data associated with a specific sensor among a plurality of sensor data from a plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes, the translated query having been translated from an original query for particular sensor data, the translated query comprising an unique resource locator specifying the specific sensor of the plurality of sensors, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; generating one or more multi-dimensional-array filters based on the translated query; determining that the translated query is not accurate; modifying the translated query based on the profile for the end user to provide a more relevant response to the translated query; applying the one or more multi-dimensional-array filters to the plurality of sensor data as indexed to identify the sensor data associated with the specific sensor among a plurality of sensor data for a response to the modified translated query; accessing a cache of popular queries and their associated results; determining whether the received translated query matches one of the queries in the cache of popular queries; and in response to a determination that the received translated query matches one of the queries in the cache of popular queries, communicating the results associated with the matched query in the cache of popular queries to the query originator. - View Dependent Claims (11, 12, 13)
-
-
14. A method comprising, by one or more computer systems:
-
building a profile for the end user based on one or more learned preferences of the end user, the profile comprising a set of keywords and a weight assigned to each keyword in the set of keywords; receiving a translated query identifying sensor data associated with a specific sensor among a plurality of sensor data from a plurality of sensors, the translated query having been translated from an original query for particular sensor data, the translated query comprising an unique resource locator specifying the specific sensor of the plurality of sensors, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; generating one or more multi-dimensional-array filters based on the translated query; determining that the translated query is not accurate; modifying the translated query based the profile for the end user to provide a more relevant response to the translated query; applying the one or more multi-dimensional-array filters to the plurality of sensor data as indexed to identify the sensor data associated with the specific sensor among a plurality of sensor data for a response to the modified translated query; sorting the information based on the one or more learned preference in the profile for the end user, wherein sorting the information comprises ordering the information such that the information that is the most relevant to the user is displayed first; communicating the information as sorted for display to the user, the display of the information providing a response to the original query, wherein communicating the information comprises; rendering a page comprising multiple panels on the user'"'"'s display; determining, for each sensor data in the sorted information, which panel the sensor data is most relevant to; and rendering each sensor data in the determined most relevant panel. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. One or more computer-readable non-transitory storage media embodying software that is configured when executed to:
-
building a profile for the end user based on one or more learned preferences of the end user; receive a query, from the end user, for particular sensor data among a plurality of sensor data from a plurality of sensors, the received query comprising a unique resource locator that uniquely identifies a particular one of the plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes; translate the query to correspond to the indexing of the plurality of sensor data, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; append, based on the unique resource locator that identifies the particular one of the plurality of sensors in the query received from the end user, the unique resource locator to the translated query, the unique resource locator specifying the particular one of the plurality of sensors; communicate the translated query to search among the plurality of sensor data according to the indexing of the plurality of sensor data to identify sensor data associated with the particular one of the plurality of sensors; receive a list of matching sensor data; tailor the list of matching sensor data based on the user profile of the end user to provide a representation expected by the end user; receive query results comprising meta data associated with a subset of the plurality of sensors; select a particular one of the subset of sensors; and request the data available at the particular one of the subset of sensors. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. One or more computer-readable non-transitory storage media embodying software that is configured when executed to:
-
building a profile for an end user based on collectively learned preferences of the end user, the profile comprising a set of keywords and a weight assigned to each keyword in the set of keywords; receive a translated query for sensor data associated with a specific sensor among a plurality of sensor data from a plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes, the translated query having been translated from an original query for particular sensor data, the translated query comprising an unique resource locator specifying the specific sensor of the plurality of sensors, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; generate one or more multi-dimensional-array filters based on the translated query; determining that the translated query is not accurate; modifying the translated query based on the profile for the end user to provide a more relevant response to the translated query; apply one or more of the multi-dimensional-array filters to the plurality of sensor data as indexed to identify the sensor data associated with the specific sensor among a plurality of sensor data for a response to the modified and translated query; access a cache of popular queries and their associated results; determine whether the received translated query matches one of the queries in the cache of popular queries; and in response to a determination that the received translated query matches one of the queries in the cache of popular queries, communicating the results associated with the matched query in the cache of popular queries to the query originator. - View Dependent Claims (30, 31, 32)
-
-
33. One or more computer-readable non-transitory storage media embodying software that is configured when executed to:
-
building a profile for an end user based on collectively learned preferences of the end user, the profile comprising a set of keywords and a weight assigned to each keyword in the set of keywords; receive information identifying sensor data associated with a specific sensor among a plurality of sensor data from a plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes, the translated query having been translated from an original query for particular sensor data, the translated query comprising an unique resource locator specifying the specific sensor of the plurality of sensors, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; generate one or more multi-dimensional-array filters based on the translated query; determine that the translated query is not accurate; modify the translated query based on the profile for the end user to provide a more relevant response to the translated query; apply the one or more multi-dimensional-array filters to the plurality of sensor data as indexed to identify the sensor data associated with the specific sensor among a plurality of sensor data for a response to the modified translated query; sort the information based on one or more preferences in the profile for the end user to provide a representation expected by the end user, wherein sorting the information comprises ordering the information such that the information that is most relevant to the user is displayed first; and communicate the information as sorted for display to the end user, the display of the information providing a response to the original query, wherein communicating the sorted information for display comprises; rendering a page comprising multiple panels on the user'"'"'s display; determining, for each sensor data in the sorted information, which panel the sensor data is most relevant to; and rendering each sensor data in the determined most relevant panel. - View Dependent Claims (34, 35, 36, 37, 38)
-
-
39. An apparatus comprising:
-
one or more communication interfaces; one or more memory devices containing one or more instructions for execution by one or more processing devices; and the processing devices configured when executing the instructions to; build a profile for the end user based on one or more learned preferences of the end user; receive a query, from the end user, for particular sensor data among a plurality of sensor data from a plurality of sensors, the received query comprising a unique resource locator that uniquely identifies a particular one of the plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes; translate the query to correspond to the indexing of the plurality of sensor data, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; appending, based on the unique resource locator that identifies the particular one of the plurality of sensors in the query received from the end user, the unique resource locator to the translated query, the unique resource locator specifying the particular one of the plurality of sensors; communicate the translated query to search among the plurality of sensor data according to the indexing of the plurality of sensor data to identify sensor data associated with the particular one of the plurality of sensors; receive a list of matching sensor data; tailor the list of matching sensor data based on the profile of the end user to provide a representation expected by the end user; receive query results comprising meta data associated with a subset of the plurality of sensors; select a particular one of the subset of sensors; and request the data available at the particular one of the subset of sensors. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47)
-
-
48. An apparatus comprising:
-
one or more communication interfaces; one or more memory devices containing one or more instructions for execution by one or more processing devices; and the processing devices configured when executing the instructions to; building a profile for an end user based on collectively learned preferences of the end user, the profile comprising a set of keywords and a weight assigned to each keyword in the set of keywords; receive a translated query for sensor data associated with a specific sensor among a plurality of sensor data from a plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes, the translated query having been translated from an original query for particular sensor data, the translated query comprising an unique resource locator specifying the specific sensor of the plurality of sensors, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; generate one or more multi-dimensional-array filters based on the translated query; determine that the translated query is not accurate; modify the translated query based on the profile for the end user to provide a more relevant response to the translated query; apply one or more of the multi-dimensional-array filters to the plurality of sensor data as indexed to identify the sensor data associated with the specific sensor among a plurality of sensor data for a response to the modified and translated query; access a cache of popular queries and their associated results; determine whether the received translated query matches one of the queries in the cache of popular queries; and in response to a determination that the received translated query matches one of the queries in the cache of popular queries, communicating the results associated with the matched query in the cache of popular queries to the query originator. - View Dependent Claims (49, 50, 51)
-
-
52. An apparatus comprising:
-
one or more communication interfaces; one or more memory devices containing one or more instructions for execution by one or more processing devices; and the processing devices configured when executing the instructions to; building a profile for an end user based on collectively learned preferences of the end user, the profile comprising a set of keywords a weight assigned to each keyword in the set of keywords; receive information identifying sensor data associated with a specific sensor among a plurality of sensor data from a plurality of sensors, the plurality of sensor data being indexed according to a multi-dimensional array, one or more first ones of the dimensions comprising time and one or more second ones of the dimensions comprising one or more pre-determined sensor-data attributes, the translated query having been translated from an original query for particular sensor data, the translated query comprising an unique resource locator specifying the specific sensor of the plurality of sensors, the translated query comprising one or more values for one or more of the dimensions of the multi-dimensional array; generate one or more multi-dimensional-array filters based on the translated query; determine that the translated query is not accurate; modify the translated query based on the profile for the end user to provide a more relevant response to the translated query; apply the one or more multi-dimensional-array filters to the plurality of sensor data as indexed to identify the sensor data associated with the specific sensor among a plurality of sensor data for a response to the modified and translated query; sort the information based on one or more preferences in the profile for the end user, wherein sorting the information comprises ordering the information such that the information that is the most relevant to the user is displayed first communicate the information as sorted for display to the user, the display of the information providing a response to the original query, wherein communicating the sorted information for display comprises; rendering a page comprising multiple panels on the user'"'"'s display; determining, for each sensor data in the sorted information, which panel the sensor data is most relevant to; and rendering each sensor data in the determined most relevant panel. - View Dependent Claims (53, 54, 55, 56, 57)
-
Specification