US11016957B2 - Sensor data based query results - Google Patents
Sensor data based query results Download PDFInfo
- Publication number
- US11016957B2 US11016957B2 US15/908,342 US201815908342A US11016957B2 US 11016957 B2 US11016957 B2 US 11016957B2 US 201815908342 A US201815908342 A US 201815908342A US 11016957 B2 US11016957 B2 US 11016957B2
- Authority
- US
- United States
- Prior art keywords
- sensor data
- sensor
- data
- query
- sensors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
- 230000004044 response Effects 0.000 claims abstract description 22
- 230000008859 change Effects 0.000 claims abstract description 18
- 238000000034 method Methods 0.000 claims description 50
- 238000003860 storage Methods 0.000 claims description 34
- 238000012432 intermediate storage Methods 0.000 claims description 11
- 230000000694 effects Effects 0.000 claims description 7
- 230000002596 correlated effect Effects 0.000 claims description 6
- 230000004931 aggregating effect Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 13
- 230000000875 corresponding effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000013500 data storage Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000013480 data collection Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000007177 brain activity Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 238000000537 electroencephalography Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Definitions
- Computer devices can be coupled to any suitable number of sensors.
- the sensors can detect sensor data indicating various characteristics of the operating environment of a computing device.
- the sensor data can indicate video sensor data, temperature sensor data, user sensor data, and the like.
- applications can detect the sensor data and use the sensor data to execute application instructions.
- An embodiment described herein includes a system for generating sensor data based query results, wherein the system can include a processor to detect sensor data from a plurality of sensors.
- the processor can also store the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data, and wherein the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the processor can convert the aggregated sensor data to an indexable data format (IDF) and provide a low latency query result to a query based on the aggregated sensor data in the IDF.
- IDF indexable data format
- a method for generating sensor data based query results can include detecting sensor data from a plurality of sensors.
- the method can also include storing the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data, and wherein the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the method can include converting the aggregated sensor data to an indexable data format (IDF) and providing a low latency query result to a query based on the aggregated sensor data in the IDF.
- IDF indexable data format
- one or more computer-readable storage media for generating sensor data based query results can include a plurality of instructions that, in response to execution by a processor, cause the processor to detect sensor data from a plurality of sensors.
- the plurality of instructions can also cause the processor to store the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data, and wherein the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the plurality of instructions can also cause the processor to convert the aggregated sensor data to an indexable data format (IDF) and provide a low latency query result to a query based on the aggregated sensor data in the IDF.
- IDF indexable data format
- FIG. 1 is a block diagram of an example of a computing system that can generate sensor data based query results
- FIG. 2 is a process flow diagram of an example method for generating sensor data based query results
- FIGS. 3A-3C depict an example block diagram illustrating data flow in a system that generates sensor data based query results
- FIG. 4 is an example data schema for sensor data
- FIG. 5 is a block diagram of an example computer-readable storage media that can generate sensor data based query results.
- a user can be associated with steps logged by a pedometer, a distance travelled that is detected by a global positioning satellite sensor, a speed at which a user is travelling that is detected by an accelerometer, or a heart rate or temperature of a user that is detected by a fitness wearable sensor, among others.
- a digital assistant can detect search queries from a user and provide responses using a web based search associated with the search queries. However, the search queries of a user can also be satisfied based on sensor data collected by the various sensors associated with a user.
- Techniques described herein include a system for generating sensor data based query results.
- the system can detect sensor data from a plurality of sensors and store the sensor data as aggregated sensor data.
- the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the system can convert the aggregated sensor data to an indexable data format (IDF) and provide a low latency query result to a query based on the aggregated sensor data in the indexable data format.
- IDF indexable data format
- a system for generating the sensor data based query results can limit an amount of sensor data that is collected based on a predetermined threshold. Therefore, the techniques described herein can enable an enhanced method for searching collected sensor data in order to provide a sensor data based query result for a user query.
- the user query can be detected from a digital assistant with a first device and the sensor data can be collected from any number of sensors that can exchange data with a web search engine accessible by the digital assistant.
- the sensor data based query result can include correlating the sensor data from multiple different sensors.
- the techniques described herein can reduce the amount of storage used to collect sensor data.
- the techniques described herein can also reduce the processing time of a processor by searching a smaller dataset of sensor data. Additionally, the techniques described herein can reduce power consumption of a computing device by reducing a time to execute a search query based on stored sensor data.
- FIG. 1 discussed below, provide details regarding different systems that may be used to implement the functions shown in the figures.
- the phrase “configured to” encompasses any way that any kind of structural component can be constructed to perform an identified operation.
- the structural component can be configured to perform an operation using software, hardware, firmware and the like, or any combinations thereof.
- the phrase “configured to” can refer to a logic circuit structure of a hardware element that is to implement the associated functionality.
- the phrase “configured to” can also refer to a logic circuit structure of a hardware element that is to implement the coding design of associated functionality of firmware or software.
- module refers to a structural element that can be implemented using any suitable hardware (e.g., a processor, among others), software (e.g., an application, among others), firmware, or any combination of hardware, software, and firmware.
- logic encompasses any functionality for performing a task. For instance, each operation illustrated in the flowcharts corresponds to logic for performing that operation. An operation can be performed using software, hardware, firmware, etc., or any combinations thereof.
- ком ⁇ онент can be a process running on a processor, an object, an executable, a program, a function, a library, a subroutine, and/or a computer or a combination of software and hardware.
- a component can be a process running on a processor, an object, an executable, a program, a function, a library, a subroutine, and/or a computer or a combination of software and hardware.
- an application running on a server and the server can be a component.
- One or more components can reside within a process and a component can be localized on one computer and/or distributed between two or more computers.
- the claimed subject matter may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed subject matter.
- article of manufacture as used herein is intended to encompass a computer program accessible from any tangible, computer-readable device, or media.
- Computer-readable storage media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, and magnetic strips, among others), optical disks (e.g., compact disk (CD), and digital versatile disk (DVD), among others), smart cards, and flash memory devices (e.g., card, stick, and key drive, among others).
- computer-readable media generally (i.e., not storage media) may additionally include communication media such as transmission media for wireless signals and the like.
- FIG. 1 is a block diagram of an example of a computing system that can generate sensor data based query results.
- the example system 100 includes a computing device 102 .
- the computing device 102 includes a processing unit 104 , a system memory 106 , and a system bus 108 .
- the computing device 102 can be a gaming console, a personal computer (PC), an accessory console, a gaming controller, among other computing devices.
- the computing device 102 can be a node in a cloud network.
- the system bus 108 couples system components including, but not limited to, the system memory 106 to the processing unit 104 .
- the processing unit 104 can be any of various available processors. Dual microprocessors and other multiprocessor architectures also can be employed as the processing unit 104 .
- the system bus 108 can be any of several types of bus structure, including the memory bus or memory controller, a peripheral bus or external bus, and a local bus using any variety of available bus architectures known to those of ordinary skill in the art.
- the system memory 106 includes computer-readable storage media that includes volatile memory 110 and nonvolatile memory 112 .
- nonvolatile memory 112 can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
- ROM read-only memory
- PROM programmable ROM
- EPROM electrically programmable ROM
- EEPROM electrically erasable programmable ROM
- Volatile memory 110 includes random access memory (RAM), which acts as external cache memory.
- RAM is available in many forms such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), SynchLinkTM DRAM (SLDRAM), Rambus® direct RAM (RDRAM), direct Rambus® dynamic RAM (DRDRAM), and Rambus® dynamic RAM (RDRAM).
- the computer 102 also includes other computer-readable media, such as removable/non-removable, volatile/non-volatile computer storage media.
- FIG. 1 shows, for example a disk storage 114 .
- Disk storage 114 includes, but is not limited to, devices like a magnetic disk drive, floppy disk drive, tape drive, Jaz drive, Zip drive, LS-210 drive, flash memory card, or memory stick.
- disk storage 114 can include storage media separately or in combination with other storage media including, but not limited to, an optical disk drive such as a compact disk ROM device (CD-ROM), CD recordable drive (CD-R Drive), CD rewritable drive (CD-RW Drive) or a digital versatile disk ROM drive (DVD-ROM).
- an optical disk drive such as a compact disk ROM device (CD-ROM), CD recordable drive (CD-R Drive), CD rewritable drive (CD-RW Drive) or a digital versatile disk ROM drive (DVD-ROM).
- CD-ROM compact disk ROM device
- CD-R Drive CD recordable drive
- CD-RW Drive CD rewritable drive
- DVD-ROM digital versatile disk ROM drive
- interface 116 a removable or non-removable interface
- FIG. 1 describes software that acts as an intermediary between users and the basic computer resources described in the suitable operating environment 100 .
- Such software includes an operating system 118 .
- Operating system 118 which can be stored on disk storage 114 , acts to control and allocate resources of the computer 102 .
- System applications 120 take advantage of the management of resources by operating system 118 through program modules 122 and program data 124 stored either in system memory 106 or on disk storage 114 . It is to be appreciated that the disclosed subject matter can be implemented with various operating systems or combinations of operating systems.
- Input devices 126 include, but are not limited to, a pointing device, such as, a mouse, trackball, stylus, and the like, a keyboard, a microphone, a joystick, a satellite dish, a scanner, a TV tuner card, a digital camera, a digital video camera, a web camera, any suitable dial accessory (physical or virtual), and the like.
- an input device can include Natural User Interface (NUI) devices. NUI refers to any interface technology that enables a user to interact with a device in a “natural” manner, free from artificial constraints imposed by input devices such as mice, keyboards, remote controls, and the like.
- NUI Natural User Interface
- NUI devices include devices relying on speech recognition, touch and stylus recognition, gesture recognition both on screen and adjacent to the screen, air gestures, head and eye tracking, voice and speech, vision, touch, gestures, and machine intelligence.
- NUI devices can include touch sensitive displays, voice and speech recognition, intention and goal understanding, and motion gesture detection using depth cameras such as stereoscopic camera systems, infrared camera systems, RGB camera systems and combinations of these.
- NUI devices can also include motion gesture detection using accelerometers or gyroscopes, facial recognition, three-dimensional (3D) displays, head, eye, and gaze tracking, immersive augmented reality and virtual reality systems, all of which provide a more natural interface.
- NUI devices can also include technologies for sensing brain activity using electric field sensing electrodes.
- a NUI device may use Electroencephalography (EEG) and related methods to detect electrical activity of the brain.
- EEG Electroencephalography
- the input devices 126 connect to the processing unit 104 through the system bus 108 via interface ports 128 .
- Interface ports 128 include, for example, a serial port, a parallel port, a game port, and a universal serial bus (USB).
- Output devices 130 use some of the same type of ports as input devices 126 .
- a USB port may be used to provide input to the computer 102 and to output information from computer 102 to an output device 130 .
- Output adapter 132 is provided to illustrate that there are some output devices 130 like monitors, speakers, and printers, among other output devices 130 , which are accessible via adapters.
- the output adapters 132 include, by way of illustration and not limitation, video and sound cards that provide a means of connection between the output device 130 and the system bus 108 . It can be noted that other devices and systems of devices provide both input and output capabilities such as remote computing devices 134 .
- the computer 102 can be a server hosting various software applications in a networked environment using logical connections to one or more remote computers, such as remote computing devices 134 .
- the remote computing devices 134 may be client systems configured with web browsers, PC applications, mobile phone applications, and the like.
- the remote computing devices 134 can be a personal computer, a server, a router, a network PC, a workstation, a microprocessor based appliance, a mobile phone, a peer device or other common network node and the like, and typically includes many or all of the elements described relative to the computer 102 .
- Remote computing devices 134 can be logically connected to the computer 102 through a network interface 136 and then connected via a communication connection 138 , which may be wireless.
- Network interface 136 encompasses wireless communication networks such as local-area networks (LAN) and wide-area networks (WAN).
- LAN technologies include Fiber Distributed Data Interface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet, Token Ring and the like.
- WAN technologies include, but are not limited to, point-to-point links, circuit switching networks like Integrated Services Digital Networks (ISDN) and variations thereon, packet switching networks, and Digital Subscriber Lines (DSL).
- ISDN Integrated Services Digital Networks
- DSL Digital Subscriber Lines
- Communication connection 138 refers to the hardware/software employed to connect the network interface 136 to the bus 108 . While communication connection 138 is shown for illustrative clarity inside computer 102 , it can also be external to the computer 102 .
- the hardware/software for connection to the network interface 136 may include, for exemplary purposes, internal and external technologies such as, mobile phone switches, modems including regular telephone grade modems, cable modems and DSL modems, ISDN adapters, and Ethernet cards.
- the computer 102 can further include a radio 140 .
- the radio 140 can be a wireless local area network radio that may operate one or more wireless bands.
- the radio 140 can operate on the industrial, scientific, and medical (ISM) radio band at 2.4 GHz or 5 GHz.
- ISM industrial, scientific, and medical
- the radio 140 can operate on any suitable radio band at any radio frequency.
- the computer 102 includes one or more modules 122 , such as a sensor data detector 142 , a sensor data storage manager 144 , a sensor data converter 146 , and a query result generator 148 .
- the sensor data detector 142 can detect sensor data from a plurality of sensors.
- the sensors can include weather based sensors, user based sensors to monitor a location of a user, fitness or health based sensors to measure a user's heart rate or temperature, and the like.
- the sensor data storage manager 144 can store the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data.
- the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold. For example, the detected sensor data may be discarded or deleted unless the sensor data deviates in value from previously detected sensor data by an amount that exceeds a predetermined threshold.
- the sensor data converter 146 can convert the aggregated sensor data to an indexable data format (IDF).
- the query result generator 148 can provide a low latency query result to a query based on the aggregated sensor data in the indexable data format.
- FIG. 1 the block diagram of FIG. 1 is not intended to indicate that the computing system 102 is to include all of the components shown in FIG. 1 . Rather, the computing system 102 can include fewer or additional components not illustrated in FIG. 1 (e.g., additional applications, additional modules, additional memory devices, additional network interfaces, etc.).
- any of the functionalities of the sensor data detector 142 , sensor data storage manager 144 , sensor data converter 146 , and query result generator 148 may be partially, or entirely, implemented in hardware and/or in the processing unit (also referred to herein as a processor) 104 .
- the functionality may be implemented with an application specific integrated circuit, in logic implemented in the processing unit 104 , or in any other device.
- FIG. 2 is a process flow diagram of an example method for generating sensor data based query results.
- the method 200 can be implemented with any suitable computing device, such as the computing system 102 of FIG. 1 .
- a sensor data detector 142 can detect sensor data from a plurality of sensors.
- the plurality of sensors can include pedometers, thermometers, magnetometers, accelerometers, barometers, video sensors, traffic sensors, pressure sensors, cameras, humidity sensors, and the like.
- the sensor data can include weather information, image information, and user health information such as heart rate, or a number of steps walked, among others.
- the sensor data detector 142 can detect that the plurality of sensors are associated with a user requesting a query. For example, the sensor data detector 142 may detect a user identifier associated with the detected sensor data.
- a sensor data storage manager 144 can store the sensor data as aggregated sensor data.
- the sensor data can be aggregated based on a time corresponding to the sensor data.
- the sensor data can be aggregated based on a time period in which sensors detected the sensor data.
- the sensor data can be stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the sensor data storage manager 144 may discard changes in sensor data below the predetermined threshold to reduce storage utilization by the sensors.
- the predetermined threshold is based on a type of sensor detecting the sensor data.
- the sensor data storage manager 144 may detect a five degree threshold for a thermometer that indicates changes in temperature of five degrees or more are to be stored. Otherwise, smaller changes in temperature can be discarded or deleted.
- the notification based push operation can transmit any change in sensor data that is to be stored to an intermediate storage device.
- the intermediate storage device can enable offline processing of the sensor data as discussed in greater detail below in relation to FIG. 3 .
- a sensor data converter 146 can convert the aggregated sensor data to an indexable data format (IDF).
- an indexable data format can include any suitable number of element values such as a sensor globally unique identifier, a sensor name, a user identifier, a device identifier, a compressed data indicator, a time when a notification for receiving the sensor data was generated, a sensor type, a time when sensor data was recorded, and a data type, among others.
- the sensor data converter 146 can store the aggregated sensor data in the indexable data format in an offline storage device.
- a query result generator 148 can provide a low latency query result to a query based on the aggregated sensor data in the indexable data format.
- a query can be detected from a user interface, or a digital personal assistant, among others.
- the low latency query result can be generated with the limited number of stored sensor data based on value changes that exceed predetermined thresholds.
- the low latency query results comprise sensor data that is correlated based on any suitable characteristic such as location information, user information, device information, and the like.
- the low latency query result can include one of the plurality of sensors that consumed an amount of power that exceeds a power threshold during a period of time.
- the sensor data is detected by a pedometer and the query result generator 148 can correlate the sensor data by the location information indicating an amount of activity perform at a plurality of locations.
- the query result generator 148 can group a number of steps taken by a user based on a location of the user at the time of the steps.
- the query result generator 148 can generate a ranking of each of the plurality of sensors based on the query and the sensor data. In some examples, the query result generator 148 can generate the low latency query result, wherein the low latency query result comprises sensor data organized based on the ranking of the plurality of sensors. For example, the ranking of the sensors can depend on a predetermined reliability value or a user preference assigned to each sensor. In some examples, the query result generator 148 can generate the low latency query result based on sensors with a high predetermined reliability value or sensors that are selected as a user's preference. In some embodiments, the query result generator 148 can generate a personalized index of the sensor data for the user, and a low latency query result based on the personalized index. In some examples, the query comprises a natural language query detected from a digital personal assistant.
- the process flow diagram of FIG. 2 is intended to indicate that the blocks of the method 200 are to be executed in a particular order.
- the blocks of the method 200 can be executed in any suitable order and any suitable number of the blocks of the method 200 can be included. Further, any number of additional blocks may be included within the method 200 , depending on the specific application.
- FIGS. 3A-3C depict an example block diagram illustrating data flow in a system that generates sensor data based query results.
- the system 300 can include any number of sensors 302 such as a camera, a thermometer, an accelerometer, a mobile device sensor, a pedometer, an automobile based sensor, a robot based sensor, and the like.
- the sensors 302 can transmit sensor data to sensor gateways 304 , 306 , and 308 .
- the sensor gateways 304 , 306 , and 308 can provide a uniform interface between the sensors 302 and a coordinator 310 .
- the sensor gateways 304 , 306 , and 308 can normalize sensor data detected from sensors built using many different platforms widely varying in processing power, energy, and bandwidth capabilities.
- the sensors 302 can have different access interfaces such as radios to communicate with low powered wireless sensor nodes or serial buses for high-speed communications and isochronous data transfer with higher power and higher bandwidth sensors.
- the sensors 302 may not be connected at all times to the sensor gateways 304 , 306 , and 308 .
- the sensor gateways 304 , 306 , and 308 can implement sensor specific techniques to communicate with each sensor 302 .
- the coordinator 310 can access the sensor gateways 304 , 306 , and 308 to obtain sensor data streams, to submit data collection demands, or access sensor characteristics through a standardized web service application programming interface (API).
- each sensor 302 may maintain a separate sensor gateway 306 .
- the sensor gateways 304 , 306 , and 308 can implement sharing policies defined by a contributor.
- the sensor gateways 304 , 306 , and 308 can maintain raw data in a local database for local applications executed by a sensor 302 , which can maintain private data while transmitting non-private data to the coordinator 310 .
- a datahub sensor gateway 304 can be used by sensors 302 that do not maintain their own sensor gateway.
- individual sensors can publish their data to a datahub sensor gateway 304 through a web service API.
- the coordinator 310 can be a point of access into the system 300 for applications and sensors 302 .
- the coordinator 310 can include a user manager 312 , a sensor manager 314 , and an application manager 316 .
- the user manager 312 can implement user authentication mechanisms.
- the sensor manager 314 can provide an index of available sensors 302 and the characteristics of the sensors 302 .
- the sensor manager 314 can convert user friendly sensor descriptions, such as location boundaries, logical names, or sensor types, to physical sensor identifiers.
- the sensor manager 314 can also include APIs for sensor gateways 304 , 306 , and 308 to manipulate sensors 302 and the type of sensors 302 .
- the sensor manager 314 can define new sensor types, register new sensors of defined types, modify characteristics of registered sensors, and delete registered sensors.
- the application manager 316 can be an access point to shared data for additional components in the system 300 .
- the application manager 316 can manage the sensor gateways 304 , 306 , and 308 .
- the application manager 316 can also accept sensing queries from additional components and satisfy the sensing queries based on available sensors 302 .
- the application manager 316 can attempt to combine the requests for common data.
- the application manager 316 can also cache recently accessed sensor data so that future queries without stringent real-time requirements can be served by local caches.
- the coordinator 310 can transmit data to data transformers 318 , 320 , 322 , 323 , and 324 .
- the data transformers 318 , 320 , 322 , 323 , and 324 can convert data semantics through processing.
- a data transformer 318 - 324 can extract the people count from a video stream, perform unit conversion, perform data fusion, and implement data visualization services.
- transformers 318 - 324 can perform different tasks.
- an iconizer data transformer 318 can convert raw sensor readings into an icon that represents a sensor type in the icon's shape and sensor value in the icon's color.
- graphical applications can use the output of the iconizer data transformer 318 instead of raw sensor values.
- a graph generator data transformer 320 can obtain raw sensor readings and generate 2D spatial graphs.
- a notification agent 324 can determine when to transmit sensor data to a sensor collection application 326 .
- applications utilize sensor data for executing instructions.
- the applications 326 , 327 , and 328 can be interactive applications where users specify data needs such as user queries for average hiker heart rate over the last season on a particular trail, among others.
- the applications 326 , 327 , and 328 can also include automated applications in backend enterprise systems that access sensor streams for business processing, such as an inventory management application that accesses shopper volume from parking counters, customer behaviors from video streams, and correlates them with sales records.
- a sensor map application 328 can visualize sensor data from the iconizer transformer 318 and a map generator transformer 330 on top of a map representation of a location.
- the sensor collection application 326 can collect sensor data from any number of the sensors 302 and transmit the sensor data to an intermediate store 332 .
- the sensor collection application 326 can implement a policy to collect sensor data that deviates from a previous value by more than a predetermined threshold. For example, the sensor collection application 326 may store sensor data from a thermometer sensor if a value is at least a certain number of degrees above or below a previously detected value. If the sensor collection application 326 detects sensor data below a predetermined threshold, the sensor collection application 326 can discard or delete the sensor data. Accordingly, the sensor collection application 326 can limit a size of sensor data collected from each sensor 302 and transmitted for storage in the intermediate store 332 of FIG. 3B .
- the predetermined threshold can be different for each sensor 302 .
- the predetermined threshold can indicate that a number of steps from a pedometer that exceeds a previously detected value are to be stored in the intermediate store 332 .
- the predetermined threshold can indicate that location data from a global positioning system sensor is to be stored if a new location is more than a predetermined distance from a previously detected value.
- the predetermined threshold can indicate that a number of users detected in a video frame or image is to be stored if an increase or decrease from a previously detected value exceeds a threshold value.
- the intermediate store 332 can store the sensor data that exceeds the predetermined threshold detected from any suitable number of sensors.
- the smaller sensor data set stored in the intermediate store 332 can enable faster analysis and limit storage requirements for the system 300 .
- the smaller sensor data set can enable the intermediate store 332 to store data from a larger number of sensors 302 .
- a process job 334 can retrieve the sensor data stored in the intermediate store 332 as part of offline store processing 336 .
- the process job 334 can transmit the retrieved sensor data to an aggregator module 338 that can aggregate sensor data based on time information.
- sensor data from sensors 302 stored in the intermediate store 332 can be aggregated based on a common time frame during which the sensor data was collected.
- the aggregator module 338 can aggregate sensor data based on any suitable fixed or variable period of time.
- sensor data from sensors 302 can be aggregated within larger time periods during particular hours of a day or during particular days of a week.
- the aggregator module 338 can aggregate sensor data with smaller time periods during daytime hours when a larger amount of sensor data is collected and aggregate sensor data with larger time periods during nighttime hours when a smaller amount of sensor data is collected.
- the aggregator module 338 can transmit the aggregated sensor data to a post processor 340 .
- the post processor 340 can transform the sensor data aggregated based on time periods into an IDF 342 .
- the IDF data can enable a search engine to perform a query based on the aggregated search data in a shorter period of time.
- the IDF data 342 can be transmitted to an index serve 344 that includes a feeds index 346 .
- the feeds index 346 can include a lookup table, wherein data is stored in a ⁇ key, value> format.
- the feeds index 346 can create multiple lookup ⁇ key, value> pairs based on sensor data.
- the index serve 344 can retrieve a generated IDF data file 342 and process the IDF data file 342 into content chunks that are incorporated into a feeds index 346 .
- an index as a service (laaS) environment can retrieve or stream the content chunks generated by the feeds index 346 as the content chunks become available.
- the index serve 344 periodically initiates a merge process. During an index merge on the feeds index 346 , the index chunk files are combined into a new complete version of the index.
- a user can provide a query 348 in FIG. 3C through any suitable input device such as a natural language query via a microphone, a query via a keyboard, and the like.
- a front door module 350 can detect a user query and send the query to a backend server.
- a query annotation service 352 or language understanding engine can detect the user query and process the user query to extract information.
- the query annotation service 352 can perform query parsing or rewriting by parsing the user query to extract tokens.
- a user query “my deep sleep percentage last night” can be parsed into [my], [deep sleep], [last night], [percentage].
- an answers top level aggregator (ATLA) 354 can include federation and caching servers that route queries to answer services such as web answer 356 , entity answer 358 , and sensor answer 360 .
- the web answer 356 , entity answer 358 , and sensor answer 360 can generate answers or responses to queries independently.
- querying an index serve 344 comprises detecting a structured formulated query from the query annotation service 352 or query understanding engine and searching the index for matching sensor data for a sensor answer 360 .
- the sensor answer 360 module can transmit queries to an SA ranker 362 that can create a ranked list of sensors sorted in descending order of the probabilities that sensor data from the sensors can include an answer to a query.
- the SA ranker 362 can also create a matching score between sensor output and a natural language query to further refine the search results. Additionally, the SA ranker 362 can create a confidence score for a final sensor search result with respect to other user experiences.
- a post processing module 364 can rank various answers from the web answer 356 , entity answer 358 , and sensor answer 360 based on relevance to a query.
- a whole page organization (WPO) 366 can aggregate the answer and return the results to a device 370 via a user experience 368 .
- the system can improve query results using user feedback. For example, the system can implement self-learning techniques by refining query results based on user click and satisfaction data.
- a personal digital assistant can detect a user's registered devices.
- a system can automatically correlate that deep sleep information is obtained from user devices such as smart watches, among others. In some examples, this information is transformed into a structured format which is then used by the lookup engine to query the index serve 344 .
- FIG. 3 is not intended to indicate that the system 300 is to include all of the components shown in FIG. 3 . Rather, the system 300 can include fewer or additional components not illustrated in FIG. 3 (e.g., additional applications, additional modules, additional memory devices, additional network interfaces, etc.).
- FIG. 4 is an example data schema for the sensor data.
- the data schema 400 can be generated by the post processor 340 of FIG. 3 and can include a sensor object 402 , a band sensor data object 404 , a heater sensor data object 406 , a sensor data parent 408 , and a sensor data collection object 410 .
- the sensor object 402 can include a sensor identifier or SensorGuid, a sensor name, a time corresponding to a detected event, a user identifier, a device identifier, and a sensor type.
- the band sensor data object 404 and the heater sensor data object 406 can include a heartbeat and temperature, respectively, based on the sensor object 402 .
- the sensor data parent 408 can include the band sensor data object 404 and heater sensor data object 406 .
- the sensor data collection object 410 can include the sensor data parent 408 along with a time a notification with the sensor data is transmitted. It is to be understood that the data schema of FIG. 4 can include fewer or additional objects not illustrated in FIG. 4 .
- FIG. 5 is a block diagram of an example computer-readable storage media that can generate sensor data based query results.
- the tangible, computer-readable storage media 500 may be accessed by a processor 502 over a computer bus 504 . Furthermore, the tangible, computer-readable storage media 500 may include code to direct the processor 502 to perform the steps of the current method.
- the tangible computer-readable storage media 500 can include a sensor data detector 506 that can detect sensor data from a plurality of sensors.
- a sensor data storage manager 508 can store the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data, and wherein the sensor data is stored in a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- a sensor data converter 510 can convert the aggregated sensor data to an indexable data format (IDF).
- a query result generator 512 can provide a low latency query result to a query based on the aggregated sensor data in the indexable data format.
- a system for generating sensor data based query results can include a processor to detect sensor data from a plurality of sensors.
- the processor can also store the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data, and wherein the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the processor can convert the aggregated sensor data to an indexable data format (IDF) and provide a low latency query result to a query based on the aggregated sensor data in the IDF.
- the low latency query results comprises sensor data that is correlated based on location information.
- the predetermined threshold is based on a type of sensor detecting the sensor data.
- the type of sensor comprises a thermometer, a video sensor, a traffic sensor, a pressure sensor, or a humidity sensor.
- the low latency query result comprises one of the plurality of sensors that consumed an amount of power that exceeds a power threshold during a period of time.
- the sensor data is detected by a pedometer, and wherein the processor is to correlate the sensor data by the location information indicating an amount of activity performed at a plurality of locations.
- the processor is to store the aggregated sensor data in the IDF in an offline storage device.
- the processor is to generate a ranking of each of the plurality of sensors based on the query and the sensor data.
- the low latency query result comprises sensor data organized based on the ranking of the plurality of sensors.
- the processor is to detect that the plurality of sensors are associated with a user requesting the query.
- the processor is to generate a personalized index of the sensor data for the user, and wherein the low latency query result is based on the personalized index.
- the query comprises a natural language query detected from a digital personal assistant.
- a method for generating sensor data based query results can include detecting sensor data from a plurality of sensors.
- the method can also include storing the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data, and wherein the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the method can include converting the aggregated sensor data to an indexable data format (IDF) and providing a low latency query result to a query based on the aggregated sensor data in the IDF.
- IDF indexable data format
- the low latency query results comprises sensor data that is correlated based on location information.
- the predetermined threshold is based on a type of sensor detecting the sensor data.
- the type of sensor comprises a thermometer, a video sensor, a traffic sensor, a pressure sensor, or a humidity sensor.
- the low latency query result comprises one of the plurality of sensors that consumed an amount of power that exceeds a power threshold during a period of time.
- the sensor data is detected by a pedometer, and wherein the method includes correlating the sensor data by the location information indicating an amount of activity performed at a plurality of locations.
- the method includes storing the aggregated sensor data in the IDF in an offline storage device.
- the method includes generating a ranking of each of the plurality of sensors based on the query and the sensor data.
- the low latency query result comprises sensor data organized based on the ranking of the plurality of sensors.
- the method includes detecting that the plurality of sensors are associated with a user requesting the query.
- the method includes generating a personalized index of the sensor data for the user, and wherein the low latency query result is based on the personalized index.
- the query comprises a natural language query detected from a digital personal assistant.
- one or more computer-readable storage media for generating sensor data based query results can include a plurality of instructions that, in response to execution by a processor, cause the processor to detect sensor data from a plurality of sensors.
- the plurality of instructions can also cause the processor to store the sensor data as aggregated sensor data, wherein the sensor data is aggregated based on a time corresponding to the sensor data, and wherein the sensor data is stored with a notification based push operation in response to a change in value of the sensor data exceeding a predetermined threshold.
- the plurality of instructions can also cause the processor to convert the aggregated sensor data to an indexable data format (IDF) and provide a low latency query result to a query based on the aggregated sensor data in the IDF.
- IDF indexable data format
- the low latency query results comprises sensor data that is correlated based on location information.
- the predetermined threshold is based on a type of sensor detecting the sensor data.
- the type of sensor comprises a thermometer, a video sensor, a traffic sensor, a pressure sensor, or a humidity sensor.
- the low latency query result comprises one of the plurality of sensors that consumed an amount of power that exceeds a power threshold during a period of time.
- the sensor data is detected by a pedometer, and wherein the processor is to correlate the sensor data by the location information indicating an amount of activity performed at a plurality of locations.
- the plurality of instructions can also cause the processor to store the aggregated sensor data in the IDF in an offline storage device. Alternatively, or in addition, the plurality of instructions can also cause the processor to generate a ranking of each of the plurality of sensors based on the query and the sensor data. Alternatively, or in addition, the low latency query result comprises sensor data organized based on the ranking of the plurality of sensors. Alternatively, or in addition, the plurality of instructions can also cause the processor to detect that the plurality of sensors are associated with a user requesting the query. Alternatively, or in addition, the plurality of instructions can also cause the processor to generate a personalized index of the sensor data for the user, and wherein the low latency query result is based on the personalized index. Alternatively, or in addition, the query comprises a natural language query detected from a digital personal assistant.
- the terms (including a reference to a “means”) used to describe such components are intended to correspond, unless otherwise indicated, to any component which performs the specified function of the described component, e.g., a functional equivalent, even though not structurally equivalent to the disclosed structure, which performs the function in the herein illustrated exemplary aspects of the claimed subject matter.
- the innovation includes a system as well as a computer-readable storage media having computer-executable instructions for performing the acts and events of the various methods of the claimed subject matter.
- one or more components may be combined into a single component providing aggregate functionality or divided into several separate sub-components, and any one or more middle layers, such as a management layer, may be provided to communicatively couple to such sub-components in order to provide integrated functionality.
- middle layers such as a management layer
- Any components described herein may also interact with one or more other components not specifically described herein but generally known by those of skill in the art.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims (20)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/908,342 US11016957B2 (en) | 2018-02-28 | 2018-02-28 | Sensor data based query results |
CN201980015954.0A CN111788564B (en) | 2018-02-28 | 2019-02-19 | Query results based on sensor data |
EP19709824.7A EP3759613A1 (en) | 2018-02-28 | 2019-02-19 | Sensor data based query results |
PCT/US2019/018445 WO2019168702A1 (en) | 2018-02-28 | 2019-02-19 | Sensor data based query results |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/908,342 US11016957B2 (en) | 2018-02-28 | 2018-02-28 | Sensor data based query results |
Publications (2)
Publication Number | Publication Date |
---|---|
US20190266266A1 US20190266266A1 (en) | 2019-08-29 |
US11016957B2 true US11016957B2 (en) | 2021-05-25 |
Family
ID=65718087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/908,342 Active 2038-09-26 US11016957B2 (en) | 2018-02-28 | 2018-02-28 | Sensor data based query results |
Country Status (4)
Country | Link |
---|---|
US (1) | US11016957B2 (en) |
EP (1) | EP3759613A1 (en) |
CN (1) | CN111788564B (en) |
WO (1) | WO2019168702A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11544239B2 (en) * | 2018-11-13 | 2023-01-03 | Thoughtspot, Inc. | Low-latency database analysis using external data sources |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10616349B2 (en) | 2018-05-01 | 2020-04-07 | Microsoft Technology Licensing, Llc | Hybrid sensor centric recommendation engine |
US10749774B1 (en) * | 2019-03-07 | 2020-08-18 | Verizon Patent And Licensing, Inc. | Reducing data storage and network traffic with data compression |
US12067471B2 (en) * | 2020-11-25 | 2024-08-20 | Waymo Llc | Searching an autonomous vehicle sensor data repository based on context embedding |
CN114416731A (en) * | 2021-12-29 | 2022-04-29 | 中国原子能科学研究院 | Data storage method, data reading method, device, electronic device and medium |
WO2024259865A1 (en) * | 2023-06-21 | 2024-12-26 | Huawei Technologies Co., Ltd. | Method, apparatus and system for semantic communications |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070038616A1 (en) | 2005-08-10 | 2007-02-15 | Guha Ramanathan V | Programmable search engine |
US20070060114A1 (en) | 2005-09-14 | 2007-03-15 | Jorey Ramer | Predictive text completion for a mobile communication facility |
US20070208785A1 (en) | 2006-03-06 | 2007-09-06 | Fuji Xerox Co., Ltd. | Information processing system, information processing method and information processing program |
US20090094223A1 (en) | 2007-10-05 | 2009-04-09 | Matthew Berk | System and method for classifying search queries |
US7716199B2 (en) | 2005-08-10 | 2010-05-11 | Google Inc. | Aggregating context data for programmable search engines |
US20120197911A1 (en) * | 2011-01-28 | 2012-08-02 | Cisco Technology, Inc. | Searching Sensor Data |
US20140303828A1 (en) * | 2013-04-08 | 2014-10-09 | Toyota Motor Engineering & Manufacturing North America, Inc | Lane-based localization |
US20140365434A1 (en) * | 2012-02-24 | 2014-12-11 | Huawei Device Co., Ltd. | Data Collecting Method and Apparatus, and Mobile Terminal |
EP3131040A1 (en) | 2015-08-13 | 2017-02-15 | Samsung Electronics Co., Ltd. | Activity information processing method and electronic device supporting the same |
US20170126836A1 (en) * | 2015-10-29 | 2017-05-04 | Ca, Inc. | INTELLIGENT EDGE DEVICE FOR FILTERING INTERNET OF THINGS (IoT) DATA |
US20170219544A1 (en) * | 2016-01-29 | 2017-08-03 | Ams Sensors Uk Limited | Electronic Device |
US20170244827A1 (en) * | 2016-02-19 | 2017-08-24 | Samsung Electronics Co., Ltd. | Method for controlling display using sensor data and electronic device thereof |
US20170308801A1 (en) * | 2014-09-10 | 2017-10-26 | Siemens Aktiengesellschaft | Gas turbine failure prediction utilizing supervised learning methodologies |
US20170308292A1 (en) | 2016-04-20 | 2017-10-26 | Google Inc. | Keyboard with a suggested search query region |
US20180039691A1 (en) | 2016-08-04 | 2018-02-08 | Facebook, Inc. | Client-Side Caching of Search Keywords for Online Social Networks |
US20180052925A1 (en) * | 2016-08-22 | 2018-02-22 | International Business Machines Corporation | Sensor based context augmentation of search queries |
US20180224150A1 (en) * | 2017-02-08 | 2018-08-09 | Walmart Apollo, Llc | System for monitoring an open container |
US20180242058A1 (en) * | 2016-07-19 | 2018-08-23 | Hitachi, Ltd. | Sensor system and method of collecting data |
US20180330728A1 (en) | 2017-05-11 | 2018-11-15 | Google Inc. | Detecting and suppressing voice queries |
US20190049256A1 (en) * | 2017-08-11 | 2019-02-14 | Here Global B.V. | Method and apparatus for detecting false positive slippery road reports using mapping data |
US20190347358A1 (en) | 2018-05-10 | 2019-11-14 | Microsoft Technology Licensing, Llc | Query Formulation Using Networked Device Candidates |
-
2018
- 2018-02-28 US US15/908,342 patent/US11016957B2/en active Active
-
2019
- 2019-02-19 CN CN201980015954.0A patent/CN111788564B/en active Active
- 2019-02-19 WO PCT/US2019/018445 patent/WO2019168702A1/en unknown
- 2019-02-19 EP EP19709824.7A patent/EP3759613A1/en not_active Withdrawn
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7716199B2 (en) | 2005-08-10 | 2010-05-11 | Google Inc. | Aggregating context data for programmable search engines |
US20070038616A1 (en) | 2005-08-10 | 2007-02-15 | Guha Ramanathan V | Programmable search engine |
US20070060114A1 (en) | 2005-09-14 | 2007-03-15 | Jorey Ramer | Predictive text completion for a mobile communication facility |
US20070208785A1 (en) | 2006-03-06 | 2007-09-06 | Fuji Xerox Co., Ltd. | Information processing system, information processing method and information processing program |
US20090094223A1 (en) | 2007-10-05 | 2009-04-09 | Matthew Berk | System and method for classifying search queries |
US20120197911A1 (en) * | 2011-01-28 | 2012-08-02 | Cisco Technology, Inc. | Searching Sensor Data |
US20140365434A1 (en) * | 2012-02-24 | 2014-12-11 | Huawei Device Co., Ltd. | Data Collecting Method and Apparatus, and Mobile Terminal |
US20140303828A1 (en) * | 2013-04-08 | 2014-10-09 | Toyota Motor Engineering & Manufacturing North America, Inc | Lane-based localization |
US20170308801A1 (en) * | 2014-09-10 | 2017-10-26 | Siemens Aktiengesellschaft | Gas turbine failure prediction utilizing supervised learning methodologies |
EP3131040A1 (en) | 2015-08-13 | 2017-02-15 | Samsung Electronics Co., Ltd. | Activity information processing method and electronic device supporting the same |
US20170126836A1 (en) * | 2015-10-29 | 2017-05-04 | Ca, Inc. | INTELLIGENT EDGE DEVICE FOR FILTERING INTERNET OF THINGS (IoT) DATA |
US20170219544A1 (en) * | 2016-01-29 | 2017-08-03 | Ams Sensors Uk Limited | Electronic Device |
WO2017130002A1 (en) | 2016-01-29 | 2017-08-03 | Ams Sensors Uk Limited | Sensor signal processing device |
US20170244827A1 (en) * | 2016-02-19 | 2017-08-24 | Samsung Electronics Co., Ltd. | Method for controlling display using sensor data and electronic device thereof |
US20170308292A1 (en) | 2016-04-20 | 2017-10-26 | Google Inc. | Keyboard with a suggested search query region |
US20180242058A1 (en) * | 2016-07-19 | 2018-08-23 | Hitachi, Ltd. | Sensor system and method of collecting data |
US20180039691A1 (en) | 2016-08-04 | 2018-02-08 | Facebook, Inc. | Client-Side Caching of Search Keywords for Online Social Networks |
US20180052925A1 (en) * | 2016-08-22 | 2018-02-22 | International Business Machines Corporation | Sensor based context augmentation of search queries |
US20180224150A1 (en) * | 2017-02-08 | 2018-08-09 | Walmart Apollo, Llc | System for monitoring an open container |
US20180330728A1 (en) | 2017-05-11 | 2018-11-15 | Google Inc. | Detecting and suppressing voice queries |
US20190049256A1 (en) * | 2017-08-11 | 2019-02-14 | Here Global B.V. | Method and apparatus for detecting false positive slippery road reports using mapping data |
US20190347358A1 (en) | 2018-05-10 | 2019-11-14 | Microsoft Technology Licensing, Llc | Query Formulation Using Networked Device Candidates |
Non-Patent Citations (4)
Title |
---|
"Final Office Action Issued in U.S. Appl. No. 15/975,919", dated Nov. 24, 2020, 57 Pages. |
"International Search Report and Written Opinion Issued in PCT Application No. PCT/US19/018445", dated Apr. 25, 2019, 12 Pages. |
"International Search Report and Written Opinion Issued in PCT Patent Application No. PCT/US19/029533", dated Jul. 4, 2019, 10 Pages. |
"Non Final Office Action Issued in U.S. Appl. No. 15/975,919", dated Mar. 18, 2020, 42 Pages. |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11544239B2 (en) * | 2018-11-13 | 2023-01-03 | Thoughtspot, Inc. | Low-latency database analysis using external data sources |
US12038887B2 (en) | 2018-11-13 | 2024-07-16 | Thoughtspot, Inc. | Low-latency database analysis using external data sources |
Also Published As
Publication number | Publication date |
---|---|
CN111788564B (en) | 2024-12-31 |
US20190266266A1 (en) | 2019-08-29 |
CN111788564A (en) | 2020-10-16 |
EP3759613A1 (en) | 2021-01-06 |
WO2019168702A1 (en) | 2019-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11016957B2 (en) | Sensor data based query results | |
US11102635B2 (en) | Distributed context-sharing networks | |
Kumari et al. | Multimedia big data computing and Internet of Things applications: A taxonomy and process model | |
CN113707297B (en) | Medical data processing method, device, equipment and storage medium | |
Zhou et al. | In pursuit of beauty: Aesthetic-aware and context-adaptive photo selection in crowdsensing | |
JP2021108183A (en) | Method, apparatus, device and storage medium for intention recommendation | |
US7650342B2 (en) | User profile management system | |
US20110153748A1 (en) | Remote forensics system based on network | |
CN103258027B (en) | Context-aware services platform based on intelligent terminal | |
US10812426B1 (en) | Data derived user behavior modeling | |
TW201447797A (en) | Method and system for multi-phase ranking for content personalization | |
EP2584478A1 (en) | Systems and methods for web site customization based on time-of-day | |
US20120124136A1 (en) | Context information sharing apparatus and method for providing intelligent service by sharing context information between one or more terminals | |
TW201106180A (en) | Method and system of prioritising operations | |
KR20160053933A (en) | Smart search refinement | |
JP2017517803A (en) | Method for integrating data into an agnostic data broker and an agnostic data broker system | |
EP3973417A1 (en) | Efficient freshness crawl scheduling | |
US20210165911A1 (en) | System and method for improving security of personally identifiable information | |
CN102609468A (en) | Matching method for spatial information services based on context awareness and user preferences | |
JP2021530775A (en) | Exploring data structures maintained by distributed data sources | |
Llanes et al. | From sensor data streams to linked streaming data: a survey of main approaches | |
CN107085599B (en) | POI recommendation method, device, equipment and computer readable storage medium | |
Yang et al. | Live web: a sensorweb portal for sensing the world in real-time | |
CN111797422B (en) | Data privacy protection query method, device, storage medium and electronic device | |
US10616349B2 (en) | Hybrid sensor centric recommendation engine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MISHRA, ABHINEET;KURUMADDALI, SRAVANTH VENKATA MADHU;SIGNING DATES FROM 20180227 TO 20180228;REEL/FRAME:045068/0732 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |