4
votes

We use azure blob storage for our project and store the JSON string in the blob container. For some purpose, we parse this JSON string to break it into rows and columns and then show in the Grid control on the UI. Grid control offers the features like filtering, grouping etc on the client side. However, when the data is huge such operations take time hence the UI becomes unresponsive. So, now we want to perform such operations on the server so that the grid loads with relevant data from the server faster and not all rows.

For this we think we need to query the JSON data for filtering, grouping, paging etc but not sure if blob storage or any other cloud storage mechanism( DocumentDB ) provides such features. We have an option to go with PostgreSQL but we would like to stick to cloud based infrastructure primarily.

Any ideas on how to query JSON data while being on AZURE and using the azure storage (not Azure SQL, but table storage, blob storage, etc less costly)

1
The first part of your question seemed to be asking how to query data in blobs (which requires downloading/streaming blob content to your app for processing, or using a search engine). The 2nd part, though, is a tool recommendation question (asking which data store to use), and that's expressly off-topic for StackOverflow. Simply no right answer to that.David Makogon
Sorry, But I meant if its possible to query JSON data in blob storage or not. If not then to get some suggestions around other storage options in azure where such querying is possible. Sorry for the confusionpuneet
Look at Azure DocumentDB as it allows server-side querying on JSON data. However it may not be as cheap as Azure Tables or Blob Storage.Gaurav Mantri
Thanks Gaurav, I have that as an option, and thank you for affirming my thought.puneet

1 Answers

1
votes

If you need minimal querying you can always used an indexed resource like table storage with links to the blobs. DocumentDB (or CosmosDB now) can get quite expensive depending on your requirements, so developing a split strategy of indexed data vs non-indexed data where the index portion is stored in DocumentDB and the rest is linked to in blob storage can be viable strategy to mitigate costs.