Jump to content
  • 0

Проектирование базы


Yazon_Nile
 Share

Question

Всем привет.

Вопрос по планированию базы, чтобы был удобный доступ + стоит задача минифицировать нагрузку.

 

Каждая запись в базе состоит из 7-ми чисел + id строки c авто-инкрементом.

Каждое число может быть любым числом от 1 до 40 включительно. Но повторов в пределах одной записи не будет.

В ходе использования базы нужно иметь возможность:

 - вытащить целую строку

 - к примеру, просчитать такую задачу: "Сколько раз за последние N строк была использована цифра A"

 - к примеру, просчитать такую задачу: "За последние N строк цифра A была использована чаще цифры B или реже"

 - и тд.

 

Вопрос такой - в каком виде хранить данные этих чисел? В виде одной строки (A) с определенным разделителем (:, -, / и тд) или в виде 7-ми индивидуальных столбцов (B ) ?

 

 

A

-id-|—--string——

.1..|2-3-5-10-11-34-40

.2..|1-3-5-11-13-33-34

.3..|1-2-3-6-9-10-15

 

B

-id-|-1|-2|-3|-4|-5|-6|-7

.1..| 2| 3| 5|10|11|34|40

.2..| 1| 3| 5|11|13|33|34

.3..| 1| 2| 3| 6| 9|10|15

 

 

Как я понимаю, первый вариант чреват постоянной задачей распарса.

Вторая же проблемой большей нагрузки.

 

Что лучше? Или есть ещё вариант?

 

ЗЫ. Могу ошибаться в некоторых выводах, тк в данной тематике новичок. Больше по js..

Edited by Yazon_Nile
Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

wendigo,

это я читал. Как и вторая и третья.

 

Получается, чтобы удовлетворять требованиям 1nf, нужно будет использовать вариант A?

 

 

наоборот требуется структурирование данных. Для простейшего примера если нужно записывать в базу ФИО то нужно это делать в трех разных полях отдельно фамилию, имя и отчество.

  • Like 1
Link to comment
Share on other sites

  • 0

Я уже путаюсь.

Получается первый вариант лучше, но чтобы делать по 1nf - второй.

всё проще чем кажется. Если у вас не большая нагрузка на приложение не важно как вы сделаете, делайте как вам удобнее. А вообще если по хорошему, я бы делал отдельными полями. Без велосипедов короче.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy