title: Database design: lots of rows vs lots of tables?
body: <p>I'm doing this database design stuff for a system where i need to store some variable length arrays into mysql database.</p>
  
  <p>The length of the arrays will be (at most) in hundreds if not thousands.</p>
  
  <p>New arrays will be created on a regular basis, maybe tens daily.</p>
  
  <ol>
  <li>should I store these arrays into one table that will soon grow gigantic or</li>
  <li>create a new table for each array and soon have a huge number or tables?</li>
  <li>something else? (like formatted text column for the array values)</li>
  </ol>
  
  <p>to clarify, 1. means roughly</p>
  
  <pre><code>CREATE TABLE array (id INT, valuetype VARCHAR(64), ...)
  CREATE TABLE arr_values (id INT, val DOUBLE, FK array_id)
  </code></pre>
  
  <p>and 2.</p>
  
  <pre><code>CREATE TABLE array (id INT, valuetype VARCHAR(64),...)
  CREATE TABLE arr_values (id int, val DOUBLE, FK array_id) -- template table
  CREATE TABLE arr1_values LIKE arr_values ...
  </code></pre>
  
  <p>The arr_values will be used as arrays that is queried by joining to a complete array.
  Any ideas on why some approach is better than other?</p>