Opasnet Base: Difference between revisions
Jump to navigation
Jump to search
(Page created) |
m (→All tables) |
||
Line 35: | Line 35: | ||
|VALIGN="top"| | |VALIGN="top"| | ||
{| {{prettytable}} | {| {{prettytable}} | ||
|colspan=5|''' | |colspan=5|'''acts''' | ||
|- | |- | ||
|colspan=5|'''Uploads, updates, and other actions''' | |colspan=5|'''Uploads, updates, and other actions''' | ||
Line 43: | Line 43: | ||
|id||int(10) unsigned||NO||auto_increment||PRI | |id||int(10) unsigned||NO||auto_increment||PRI | ||
|- | |- | ||
| | |type||ENUM('initial','replace','append')||NO|||| | ||
|- | |- | ||
|who||varchar(50)||NO|||| | |who||varchar(50)||NO|||| | ||
Line 56: | Line 56: | ||
|VALIGN="top"| | |VALIGN="top"| | ||
{| {{prettytable}} | {| {{prettytable}} | ||
|colspan=5|''' | |colspan=5|'''acts_locs''' | ||
|- | |- | ||
|colspan=5|'''Locations of an act''' | |colspan=5|'''Locations of an act''' | ||
Line 69: | Line 69: | ||
|VALIGN="top"| | |VALIGN="top"| | ||
{| {{prettytable}} | {| {{prettytable}} | ||
|colspan=5|''' | |colspan=5|'''acts_objs''' | ||
|- | |- | ||
|colspan=5|'''Acts of an | |colspan=5|'''Acts of an objects''' | ||
|- | |- | ||
|Field||Type||Null||Extra||Key | |Field||Type||Null||Extra||Key | ||
Line 81: | Line 81: | ||
|obj_id||int(10) unsigned||NO||||MUL | |obj_id||int(10) unsigned||NO||||MUL | ||
|- | |- | ||
| | |dat_id||int(10) unsigned||NO||||MUL | ||
|- | |- | ||
|unit||varchar(64)||YES|||| | |unit||varchar(64)||YES|||| | ||
Line 89: | Line 89: | ||
| | | | ||
{| {{prettytable}} | {| {{prettytable}} | ||
|colspan=5|''' | |colspan=5|'''objs''' | ||
|- | |- | ||
|colspan=5|''' | |colspan=5|'''Object information (all objects)''' | ||
|- | |- | ||
|Field||Type||Null||Extra||Key | |Field||Type||Null||Extra||Key | ||
Line 97: | Line 97: | ||
|id||int(10) unsigned||NO||auto_increment||PRI | |id||int(10) unsigned||NO||auto_increment||PRI | ||
|- | |- | ||
| | |ident||varchar(20)||NO||||UNI | ||
|- | |||
|name||varchar(200)||NO|||| | |||
|- | |||
|type||ENUM('variable','study','method','assessment','class','nugget','encyclopedia')||NO|||| | |||
|- | |||
|page||int(10) unsigned||NO|||| | |||
|- | |||
|wiki_id||tinyint(3) unsigned||NO|||| | |||
|- | |||
|lang||char(2)||NO|||| | |||
|} | |} | ||
|VALIGN="top"| | |VALIGN="top"| | ||
{| {{prettytable}} | {| {{prettytable}} | ||
|colspan=5|''' | |||
|colspan=5|'''inds''' | |||
|- | |- | ||
|colspan=5|''' | |colspan=5|'''Indices''' | ||
|- | |- | ||
|Field||Type||Null||Extra||Key | |Field||Type||Null||Extra||Key | ||
|- | |- | ||
|id||int( | |id||int(10) unsigned||NO||auto_increment||PRI | ||
|- | |- | ||
| | |ident||varchar(20)||NO||||UNI | ||
|- | |- | ||
| | |name||varchar(200)||NO|||| | ||
|- | |- | ||
| | |page||int(10) unsigned||NO|||| | ||
|- | |- | ||
| | |wiki_id||tinyint(3) unsigned||NO|||| | ||
|} | |} | ||
|VALIGN="top"| | |VALIGN="top"| | ||
{| {{prettytable}} | {| {{prettytable}} | ||
|colspan=5|''' | |colspan=5|'''locs''' | ||
|- | |- | ||
|colspan=5|'''Location information''' | |colspan=5|'''Location information''' | ||
Line 144: | Line 153: | ||
|- | |- | ||
| | | | ||
|VALIGN="top"| | |VALIGN="top"| | ||
|VALIGN="top"| | |VALIGN="top"| | ||
|- | |- | ||
| | | | ||
|VALIGN="top"| | |VALIGN="top"| | ||
{| {{prettytable}} | {| {{prettytable}} | ||
|colspan=5|''' | |colspan=5|'''wikis''' | ||
|- | |- | ||
|colspan=5|'''Wiki information''' | |colspan=5|'''Wiki information''' |
Revision as of 11:55, 24 January 2012
Moderator:Jouni (see all) |
|
Upload data
|
This page is about the Opasnet Base 2 -database.
Question
How to improve the existing Opasnet Base? Following issues of Opasnet Base 1 must be resolved:
- Opasnet Base 1 structure makes filtering by location very slow on big data
- Opasnet Base 1 structure is perhaps unnecessarily complex = queries are hard to adapt and read
- MySQL is not ideal for storing huge amounts of data, or at least this is how we assume?
- MySQL tables have fixed column types = difficult to store data objects with varying types of indices into one data table
- Multiple languages (localization) not supported
Answer
MySQL is good on relations but weak on dynamic big data. Let's keep the basic "scaffold" in MySQL and store the big data (locations and results) into noSQL-base. After few days of research the best candidate for noSQL-base seems to be MongoDB. Combining relational MySQL and non-relational MongoDB will be the foundation for the new Opasnet Base 2.
Table structure in the database
All tables
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
Contents of selected tables
|
|