You don't say what mimetype you are working with. Metadata extractors work on a particular mime type. So if your "keywords" come from a particular mimetype then yes a custom metadata extractor is appropriate. And you will need a custom metadata extractor to deal with the parsing of your compound keyword property. Its not hard, you just need to work out how "keywords" maps to key/value pairs. Those key/value pairs are then mapped onto property/values on the node.
However if, for the sake of argument you are working with word documents only some of which will have this "keywords" property then you will need to work out how to recognise a document with your "keywords" from from another. It could be that probably want to trigger that by a rule, or a metadata extractor.