Difference between revisions of "VbzCart/tables/cache flow"
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
|  (updated purpose) |  (changed key structure) | ||
| Line 2: | Line 2: | ||
| * '''Purpose''': Keeps track of data dependencies between tables – which queries update cached data in which tables from which sources | * '''Purpose''': Keeps track of data dependencies between tables – which queries update cached data in which tables from which sources | ||
| * '''Refers to''': {{vbzcart|table|cache_tables}}, {{vbzcart|table|cache_queries}} | * '''Refers to''': {{vbzcart|table|cache_tables}}, {{vbzcart|table|cache_queries}} | ||
| + | * '''Fields''': | ||
| + | ** '''doWrite''': TRUE = ID_Table is ''written'' to (i.e. TARGET table); otherwise it is only ''read'' from (SOURCE). | ||
| + | * '''Notes''': | ||
| + | ** If it turns out that some tables are both read and written, then we might want a doRead field as well. | ||
| * '''History''': | * '''History''': | ||
| ** '''2010-11-09''' Renamed data_flow -> cache_flow; ID_Proc -> ID_Query | ** '''2010-11-09''' Renamed data_flow -> cache_flow; ID_Proc -> ID_Query | ||
| + | ** '''2010-11-13''' Significant revision: ID_Srce/ID_Dest replaced by ID_Table/doWrite | ||
| ==SQL== | ==SQL== | ||
| <section begin=sql /><mysql>CREATE TABLE `cache_flow` ( | <section begin=sql /><mysql>CREATE TABLE `cache_flow` ( | ||
| + |     ID_Query INT NOT NULL COMMENT "cache_queries.ID of stored procedure which calculates Dest data from Srce data", | ||
| + |     ID_Table INT NOT NULL COMMENT "cache_tables.ID of a table", | ||
| + |     doWrite BOOL COMMENT "TRUE = writes to this table", | ||
| + |     Notes   VARCHAR(255) COMMENT "loose explanatory or descriptive notes", | ||
| + |     PRIMARY KEY (`ID_Query`,`ID_Table`,) | ||
| + |  ) ENGINE = MYISAM;</mysql> | ||
| + | <section end=sql /> | ||
| + | ===previous version=== | ||
| + | <mysql>CREATE TABLE `cache_flow` ( | ||
|      ID_Srce INT NOT NULL COMMENT "cache_tables.ID of SOURCE table", |      ID_Srce INT NOT NULL COMMENT "cache_tables.ID of SOURCE table", | ||
|      ID_Dest INT NOT NULL COMMENT "cache_tables.ID of DESTINATION table", |      ID_Dest INT NOT NULL COMMENT "cache_tables.ID of DESTINATION table", | ||
| Line 12: | Line 26: | ||
|      PRIMARY KEY (`ID_Srce`,`ID_Dest`,`ID_Query`) |      PRIMARY KEY (`ID_Srce`,`ID_Dest`,`ID_Query`) | ||
|   ) ENGINE = MYISAM;</mysql> |   ) ENGINE = MYISAM;</mysql> | ||
| − | |||
Revision as of 21:36, 13 November 2010
About
- Purpose: Keeps track of data dependencies between tables – which queries update cached data in which tables from which sources
- Refers to: cache_tables, cache_queries
- Fields:
- doWrite: TRUE = ID_Table is written to (i.e. TARGET table); otherwise it is only read from (SOURCE).
 
- Notes:
- If it turns out that some tables are both read and written, then we might want a doRead field as well.
 
- History:
- 2010-11-09 Renamed data_flow -> cache_flow; ID_Proc -> ID_Query
- 2010-11-13 Significant revision: ID_Srce/ID_Dest replaced by ID_Table/doWrite
 
SQL
<mysql>CREATE TABLE `cache_flow` (
ID_Query INT NOT NULL COMMENT "cache_queries.ID of stored procedure which calculates Dest data from Srce data", ID_Table INT NOT NULL COMMENT "cache_tables.ID of a table", doWrite BOOL COMMENT "TRUE = writes to this table", Notes VARCHAR(255) COMMENT "loose explanatory or descriptive notes", PRIMARY KEY (`ID_Query`,`ID_Table`,) ) ENGINE = MYISAM;</mysql>
previous version
<mysql>CREATE TABLE `cache_flow` (
ID_Srce INT NOT NULL COMMENT "cache_tables.ID of SOURCE table", ID_Dest INT NOT NULL COMMENT "cache_tables.ID of DESTINATION table", ID_Query INT NOT NULL COMMENT "cache_queries.ID of stored procedure which calculates Dest data from Srce data", Notes VARCHAR(255) COMMENT "loose explanatory or descriptive notes", PRIMARY KEY (`ID_Srce`,`ID_Dest`,`ID_Query`) ) ENGINE = MYISAM;</mysql>