In this chapter we dived deeper into the internal data structures Zabbix uses. While that's still just a small part of a different database and other information, it should help with some of the common problems users encounter at first.
We figured out how to get raw data from the frontend, which is the easiest method for small datasets. For bigger amounts of data, we learned to grab data from different history tables, depending on data type. We also found out how to reuse data in a remote location from a proxy, especially making sure that the proxy keeps data in the database after having it synchronized back to the Zabbix server - configuration parameter ProxyLocalBuffer
helped there. All this should be of use whenever data gathered by Zabbix has to be reused in other applications.
For situations when less precision is needed, we learned about the trends table and the calculation of hourly minimal, maximal, and average values that are stored there.
And in the end we looked at a robust...