1. A method of profiling event streams received from an event bus, the method comprising:
receiving input events from one or more input event streams emitted to the event bus;
receiving query registration-related events from a registration event stream emitted to the event bus, the query registration-related events being associated with actions taken with respect to queries performed on the one or more input event streams;
developing event-based profiles by subjecting the received input events to a profiling complex event processing (CEP) engine, the profiling CEP engine operating in connection with processing resources including at least one processor, the event-based profiles including data mining related characteristics andor statistical characteristics for each said input event stream;
developing query-based profiles by subjecting the received query registration-related events to the CEP engine, the query-based profiles including data indicative of how relevant the queries performed on the one or more input event streams are andor how those queries are relevant to the one or more input event streams on which they are performed; and
storing the event-based profiles and the query-based profiles to a non-transitory computer readable storage medium,
wherein query registration-related events are generated at least each time a query on the one or more input event streams is registered or deregistered.
2. The method of claim 1, further comprising maintaining different event-based profiles and different query-based profiles for different timeframes in the non-transitory computer readable storage medium.
3. The method of claim 1, further comprising storing to a stream repository metadata about the one or more input event streams accessed by a user of a CEP production engine.
4. The method of claim 3, further comprising creating a new entry in the stream repository each time the CEP production engine is connected to a new input event stream.
5. The method of claim 3, further comprising enabling a user of the CEP production engine to browse through query-based profiles andor event-based profiles for input event streams for which there are entries in the stream repository.
6. The method of claim 5, further comprising (a) automatically removing profiles for queries andor input event streams deemed irrelevant, andor (b) organizing queries andor input event streams based on relevance.
7. The method of claim 1, wherein at least some of the queries are continuous queries.
8. The method of claim 1, further comprising deriving at least some of the query-based profiles from query registration-related events without also taking into account information associated with the input events on which the queries associated with the query registration-related events operate.
9. The method of claim 1, wherein each said query registration-related event includes a query identifier, a query string, a type for the respective query registration-related event, and time-related information.
10. The method of claim 1, wherein the developing of the query-based profiles comprises:
analyzing each received query registration-related event to identify at least each input event stream referenced andor implicated therein, and each operator involved in the associated query; and
analyzing each operatorstream combination in developing the query-based profiles.
11. The method of claim 10, wherein the analyzing of each operatorstream combination is performed in connection with a continuous query.
12. The method of claim 1, further comprising making profiles available to stream profiler interface accessible via a development environment that is usable in CEP query definition and deployment.
13. A non-transitory computer readable storage medium tangibly storing a program for profiling event streams received from an event bus, the program including instructions that, when executed by processing resources including at least one processor of a computer system, at least:
enable reception of input events from one or more input event streams emitted to the event bus;
enable reception of query registration-related events from a registration event stream emitted to the event bus, the query registration-related events being associated with actions taken with respect to queries performed on the one or more input event streams;
develop event-based profiles by subjecting the received input events to a profiling complex event processing (CEP) engine, the profiling CEP engine operating in connection with processing resources including at least one processor, the event-based profiles including data mining related characteristics andor statistical characteristics for each said input event stream;
develop query-based profiles by subjecting the received query registration-related events to the CEP engine, the query-based profiles including data indicative of how relevant the queries performed on the one or more input event streams are andor how those queries are relevant to the one or more input event streams on which they are performed; and
store the event-based profiles and the query-based profiles to a non-transitory computer readable storage medium,
wherein query registration-related events are generated at least each time a query on the one or more input event streams is registered or deregistered.
14. A stream profiler computer system, comprising:
processing resources including at least one processor;
an interface to an event bus over which events are receivable; and
a profiling complex event processing (CEP) engine that, in cooperation with the processing resources, is configured to at least:
receive input events from one or more input event streams emitted to the event bus;
receive query registration-related events from a registration event stream emitted to the event bus, the query registration-related events being associated with actions taken with respect to queries performed on the one or more input event streams;
develop event-based profiles from the received input events, the event-based profiles including data mining related characteristics andor statistical characteristics for each said input event stream;
develop query-based profiles from the received query registration-related events, the query-based profiles including data indicative of how relevant the queries performed on the one or more input event streams are andor how those queries are relevant to the one or more input event streams on which they are performed; and
store the event-based profiles and the query-based profiles to a non-transitory computer readable storage medium of the stream profiler computer system,
wherein query registration-related events are generated at least each time a query on the one or more input event streams is registered or deregistered.
15. The system of claim 14, wherein the profiling CEP engine is further configured to derive different event-based profiles and different query-based profiles for different timeframes in the non-transitory computer readable storage medium.
16. The system of claim 14, further comprising a stream repository storing metadata about the one or more input event streams accessed by a user of a CEP production engine.
17. The system of claim 16, further comprising an interface to a development environment over which a user of the CEP production engine can browse through query-based profiles andor event-based profiles for input event streams for which there are entries in the stream repository.
18. The system of claim 17, wherein the development environment is usable in connection with CEP query definition and deployment to the CEP production engine.
19. The system of claim 14, wherein at least some of the queries are continuous queries.
20. The system of claim 14, wherein the profiling CEP engine is further configured to derive at least some of the query-based profiles from query registration-related events without also taking into account information associated with the input events on which the queries associated with the query registration-related events operate.
21. The system of claim 14, wherein each said query registration-related event includes a query identifier, a query string, a type for the respective query registration-related event, and time-related information.
22. The system of claim 14, wherein the profiling CEP engine is further configured to develop the query-based profiles by at least:
analyzing each received query registration-related event to identify at least each input event stream referenced andor implicated therein, and each operator involved in the associated query; and
analyzing each operatorstream combination in developing the query-based profiles.
23. The system of claim 22, wherein the analyzing of each operatorstream combination is performed in connection with a continuous query.
24. A CEP system, comprising an event bus, a production CEP engine, a development environment, and the stream profiler computer system of claim 14.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. An apparatus comprising:
transmitter for broadcasting a given position of the apparatus to a plurality of the plurality of mobile devices, the at least a plurality of the mobile devices including a target mobile device and the given position being formatted in accordance with a selected coordinate system;
a receiver for receiving via a wireless medium from the target mobile device first information, the first information indicating a direction and a distance of the target mobile device relative to the given position; and
a controller configured to determine second information, concerning a location of the target mobile device based at least on the received first information, and data concerning the given position,
wherein the second information defines the location of the target mobile device in accordance with the selected coordinate system; and
wherein the first information is formatted in a different format than the second information.
2. The apparatus of claim 1 wherein the first information is formatted in a plurality of data elements representing the relative location of the target mobile device.
3. The apparatus of claim 2 wherein at least one of the data elements indicates the direction and the distance.
4. The apparatus of claim 1 wherein the second information is formatted in a GPS data format.
5. The apparatus of claim 1 wherein the data concerning the given position is formatted in a GPS data format.
6. The apparatus of claim 1 wherein the second information is determined also based on data concerning a distance resolution.
7. Apparatus capable of wireless communications through a wireless communication system, comprising:
a receiving portion for receiving via a wireless medium first information, concerning a given position in the wireless communication system in accordance with a selected coordinate system;
a location device for providing second information, concerning a location of the apparatus in accordance with the selected coordinate system;
a processing element configured to generate data concerning the location of the apparatus relative to the given position based at least on the first and second information, the data indicating a direction and a distance and being formatted in a different format than the second information; and
a transmitting portion for transmitting the generated data;
wherein the first information and the second information are not representative of the same location in the wireless communication system.
8. The apparatus of claim 7 wherein the first information is formatted in a GPS data format.
9. The apparatus of claim 7 wherein the location device comprises a GPS receiver for receiving satellite signals.
10. The apparatus of claim 7 wherein the given position is a position of a base station.
11. The apparatus of claim 7 wherein the data is generated also based on data concerning a distance resolution.
12. The apparatus of claim 7 wherein the data is formatted in a plurality of data elements, at least one of which indicates the direction and the distance.
13. A method for serving a plurality of mobile devices, comprising:
broadcasting a given position of a base station to a plurality of the plurality of mobile devices, the at least a plurality of the mobile devices including a target mobile device and the given position being formatted in accordance with a selected coordinate system;
receiving via a wireless medium from the target mobile device first information, the first information indicating a direction and a distance of the target mobile device relative to a given position; and
determining second information, concerning a location of the target mobile device based on the received first information, and data concerning the given position,
wherein the second information defines the location of the target mobile device in accordance with the selected coordinate system; and
wherein the first information is formatted in a different format than the second information.
14. The method of claim 13 wherein the first information is formatted in a plurality of data elements representing the relative location of the target mobile device.
15. The method of claim 14 wherein at least one of the data elements indicates the direction and the distance.
16. The method of claim 13 wherein the second information is formatted in a GPS data format.
17. The method of claim 13 wherein the data concerning the given position is formatted in a GPS data format.
18. The method of claim 13 wherein the second information is determined also based on data concerning a distance resolution.