dating service lesan - Drupal datingpage

It will most probably turn out that it performs just fine - 1 mln rows is a piece of cake for mysql.

So, before trying to solve a problem make sure you actually have it. I think I'll take the existing data and performance test all suggested solutions.

, but since few answers here suggested the attribute-value model, I just wanted to jump in and say my life experience.

drupal datingpage-64drupal datingpage-32drupal datingpage-69

1) Table: user This will contain the "core" fixed information about a user such as firstname, lastname, email, username, role_id, registration_date and things of that nature.

Profile related information can go in its own table.

There are more than 100 attributes for each user's profile and I have to be able to search by at least 30-40 of them.

As you can imagine I'm a little wary to make a table with 200k rows and 100 columns. one with the most used and searched columns and one with the rest (and bulk) of the columns.

This would probably be your best bet, since it follows the Normalization paradigm, which can produce some overhead, but in the long run, it is MUCH easier to manage and quite faster than the single - hundreds-of-columns table. This is relational and it's often better to implement schemaless designs on RDBMS's than No SQL software when it comes to large production sites anyway.

There are only a handful of large sites making use of them for good reason.Imagine if every attributes (or say at least 50% of them) NEED to exist.Also, as the OP suggest, the search needs to be done on 30-40 attributes, and I can't just imagine how a 30-40 joins would be efficient, or even a due to length limitation.That way you can make informed decisions about adapting the schema to resolve specific performance problems, rather than guessing. This will significantly reduce the amount of storage, code complexity, and the effort to changing the system to add new attributes.Assuming that each attribute can be represented by an Ordinal number, and that you're only looking for symmetrical matches (i.e.My only viable solution was to go back to a table with as much columns as there are attributes.

Tags: , ,