It depends in what context you mean but basically streaming data is analagous to asynchronous data.  Take the Web as an example.  The Web (or HTTP specifically) is (basically) a request-response mechanism in that a client makes a request and receives a response (typically a Web page of some kind).
HTTP doesn't natively support the ability for servers to push content to clients.  There are a number of ways this can be faked, including:
- Polling: forcing the client to make repeated requests, typically inconspicuously (as far as the client is concerned);
- Long-lived connections: this is where the client makes a normal HTTP request but instead of returning immediately the server hangs on to the request until there's something to send back.  When the request times out or a response is sent th eclient sends another request.  In this way you can fake server push;
- Plug-ins: Java applets, Flash, Silverlight and others can be used to achieve this.
Anything where the server effectively sends data to the client (rather than the client asking for it)--regardless of the mechanism and whether or not the client is polling for that data--can be characterised as streaming data.
With non-HTTP transports (eg vanilla TCP) server push is typically easier (but can still run afoul of firewalls and th elike).  An example of this might be a sharetrading application that receives market information from a provider.  That's streaming data.
How do you detect it?  Bit of a vague question.  I'm not really sure what you're getting at.