compact flash has very slow write characteristics and intriguing behavior under power fail conditions, so be sure to understand exactly what happens when someone yanks the plug/battery on your device.
when I did embedded hardware, we put a supercap on the board so that we were guaranteed N seconds of lifetime when a power-down signal was received, and made sure that N was greater than the necessary time to get quiescent. This is about the best you can do with standard linux in my experience.
in an embedded environment you will almost certainly want to control when disk writes happen, so consider either turning off all serialization and managing it yourself via SAVE/BGSAVE or custom written save routines, or gaining a deep understanding of AOF and adding tuning parameters to its execution specific to your environment and use case.
F.