I'm not normally one to plug Drupal but you will be able to achieve all those requirements using Drupal 7 alongside some standard modules like views and media field. It surely is a learning curve but once you over come that you should be able achieve everything on that list with very little programming. The learning curve is the price your going to pay for flexibility Drupal offers without any programming involved.
Getting you started movie, producer, director, actor would each be a separate node type. A movie would than be associated with director(s), actors(s) and producers(s) via a node reference field that allows multiple values.
Though I highly recommend playing around with Drupal some before even attempting do anything. Using Drupal in the most efficient manor possible requires a very detaied understanding of the business goals and how those goals need to be translated development wise using the tools Drupal and/or related modules provide.
Though one of the most significant factors here is where all this data is coming from. If it is coming from a feed or multiple feeds translating that data to Drupal nodes and terms is probably one of the most significant and time involved tasks. Probably requiring some level of programming either way.