Hi,
Firstly thank you again for your help, it's much appreciated.
These are the create statements for the two tables in the database ;
CREATE TABLE
PRIMARY KEY (
) ENGINE=InnoDB AUTO_INCREMENT=1726 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE
PRIMARY KEY (
) ENGINE=InnoDB AUTO_INCREMENT=43276 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
~30,000 recipes does mean there would be potentially a lot of rows in a third recipe_ingredient table. E.g. say each recipe on average has 8 different ingredients, that's 240,000 rows. That might not sound like much, but I am also interested in making the API perform well under load/multiple users. I have a load testing tool for this so it is easy for me to test different strategies out.
Firstly thank you again for your help, it's much appreciated.
These are the create statements for the two tables in the database ;
CREATE TABLE
ingredient
(display_name
varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,recipe_ids
mediumtext CHARACTER SET utf8 COLLATE utf8_unicode_ci,id
int NOT NULL AUTO_INCREMENT,PRIMARY KEY (
id
)) ENGINE=InnoDB AUTO_INCREMENT=1726 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
CREATE TABLE
recipe
(id
int NOT NULL AUTO_INCREMENT,name
varchar(200) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,different_ingredients
int DEFAULT NULL,picture_url
varchar(300) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,rating
float DEFAULT NULL,rating_quantity
int DEFAULT NULL,method
varchar(10000) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,servings
varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,PRIMARY KEY (
id
)) ENGINE=InnoDB AUTO_INCREMENT=43276 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
~30,000 recipes does mean there would be potentially a lot of rows in a third recipe_ingredient table. E.g. say each recipe on average has 8 different ingredients, that's 240,000 rows. That might not sound like much, but I am also interested in making the API perform well under load/multiple users. I have a load testing tool for this so it is easy for me to test different strategies out.