Try to get the best practice of handling count of how many times books being "i like"d. Let's say right now, I have many series of books and each series can have many books. Now, when people click "i like" to one book, I want to add 1 to the book and also add 1 to the series so that later I can render these numbers, correspondingly. Now, I am struggle on two ways.

1) when one book is clicked, I will add 1 on the "liked" column in the book table and at the same time, add 1 on the "liked" column in the series table. 

2) when one book is clicked, I only add 1 on the "liked" column in the book table. When I try to do a render of the number for the series, I do a SUM on the "liked" column of the books that belong to the series. 

However, both of have pro and cons. The 1) way, I can simply fetch the "liked" column of the series table when I try to show how many people liked the whole series. It will be efficient than the 2) way cause there is no aggregation needed, especially when many people try to render the series page. However, this will take more effort when we click "i like" button. Cause even when people click on different books. As long as these books belong to the same series, it will need to update the number of the series. And it will be concurrent process. On the contrary, if I don't do update on the series table when people click "i like" for the book. It will be more efficient at that level, but will waste a lot of effort to do the redundant aggregation calculation when many people try to load the same series page, where the "liked" number for the series is shown. 

Any other ideas? If no, what is a better solution? 1) or 2)? Thanks in advance.