title: What is the best practice : to publish data to azure iothub or directly to azure tablestorage
body: <p>I have an web app.  The current structure\flow is as below.</p>
  
  <ul>
  <li>This has a webservice which is used by the Device module to place the device-specific-data into my Table STorage.</li>
  <li>At the UI end SignalR is employed to display on Dashboard(view-cshtml) the latest value posted to the cloud as and when the data from the device gets into the TableStorage.</li>
  <li>Data from different devices are expected to get into TableStorage and at the UI end, as per the device selected, the related data are diplayed.</li>
  </ul>
  
  <p><strong>My Query</strong></p>
  
  <ol>
  <li><p>Instead of directly publishing to  TableStorage, Will there be any benefit to have the Azure resource, IOTHub, to which the devices can be publishing its data?  If so please let me know on it.</p>
  
  <p>-->  a. In this case where should the data that's placed on IoTHub be taken to, for storing all received data for future reference? </p>
  
  <p>--->  b. I have earlier used an option of using StreamAnalytics , used a query to insert data receiving at IoTHub end to TableStorage. 
  Is is the only\good option available?</p>
  
  <p>---> c. Or do we have any other options to hold the data published to IoTHub?        </p></li>
  <li><p>Is the current flow of inserting the data directly to TableStorage from the device OK(best practice?)? If not please suggest the best way of approaching the solution.</p></li>
  </ol>