My design problem is as follows:
I am web scraping news from few news sites and storing in mysql database.
My design is as follows:
1) one website contains many categories.
2) one category contains one or more news.
3) I am going to give rating to each news article. One article at the most has one rating. but more than one articles can have same rating. Final Rating is calculated using other factors like, rating of a country, rating of particular category on news source.. etc..
considering above points, I have created following tables:
site:
SiteID (PK)
SiteRating
SiteName
SiteURL
Category
CategoryID(PK)
SiteID(FK)
CategoryName
CategoryOffsetURL
NewsArticle
ArticleID(PK)
CategoryID(FK)
RatingID(FK)
.
.
.
Rating
RatingID(PK)
NewsSourceRating
CountryRating
SummedRating (This is addition of above 2 ratings)
================================================== ==
I want to know ... is this database normalized? and will it provide optimal design for performance?
If you have suggestions, please guide me...
Thanks.