Hello,
we are in the middle of restructuring one of our products to use ES instead of MySQL as its data storage. Now we are not sure what would be the best way to model the following data:
Each element has a bar chart that visualizes a value in 10 second steps*, e.g.:
0: -1.6783
10: 20.034
20: 15.2223
30: 10.139
Should we
save that as an object and use the times "0", "10", "20", "30" as the field names within this object, so we'd have "hist.0", "hist.10", "hist.20", "hist.30"?
save the values as an array of nested objects like [{ "bucket":0, "value":-1.6783}, …]
save the array as flattened json
save the key value pairs as a linestring shape?
do something different that you can recommend that we haven't thought of yet?
Thank you in advance!
(*we can't eliminate the possibility that the interval might change in the future.)
PS: I'm under the impression that option 2 might give us the most flexibility for queries or aggregations if we ever need them?
I think that might make the processing of the data in our software more difficult as we need to work with the times relative to the element start. What would we gain from that?
We've got measurements for the user reactions over the course of a playout of an audio element. These have been calculated in Python and shall be saved to decrease the loading times of the user interface. Later multiple playouts are aggregated to show the average user acceptance over the last X days on a dashboard.
Thank you for investing some of your time to help us!
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.