Генерация таблицы базы данных динамически - PullRequest
0 голосов
/ 03 мая 2019

Мне нужно спроектировать базу данных, которая будет содержать в себе огромные данные.Я должен использовать базу данных RDBMS (SQL Sever или MySQL еще не решили).Ниже приведен упрощенный и стандартный дизайн базы данных, о котором я могу подумать:

enter image description here

Однако из-за огромных данных этот узел и таблица взаимосвязей (от миллионов до миллиардов записей)и продолжать расти) требуется для хранения, я планирую динамически генерировать таблицу узлов и отношений для каждого дерева.Динамический дизайн будет следующим:

enter image description here

Таким образом, каждый раз, когда новое дерево или версия клонируется, новые таблицы базы данных будут создаваться на основе идентификатора версии.и идентификатор дерева.И имя динамически генерируемой таблицы будет храниться в tree.node_table_name и tree.relationship_table_name

Пример:

Если вы создаете новое дерево (id = 10) дляверсии (id = 4), тогда имена таблиц будут 4_10_node и 4_10_relationship, и эти имена будут сохранены в древовидной таблице в tree.node_table_name и tree.relationship_table_name соответственно.

Вопросы:

  1. Является ли хорошей идеей динамическое создание таблиц?
  2. Что я думаю выполнимо?
  3. Есть ли другой способ добиться того, чего я пытаюсь достичь?делать?(Я знаю о разбиении, но это необходимо сделать вручную, я хочу сделать это автоматически)

ОБНОВЛЕНИЕ:

Каждая версия может иметь большечем 500 миллионов узлов, и у меня есть много таких версий, которые сделают общее количество строк таблицы узлов до миллиардов.Отсюда идея динамического создания отдельной таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...