Nano Hash - криптовалюты, майнинг, программирование

Дизайн базовой модели данных: использовать один сложный объект или группировать однородные атрибуты в других объектах?

Я имею дело с очень сложной сущностью, которая имеет несколько однородных атрибутов, которые можно сгруппировать в какие-то «макрокатегории».

Для предельного упрощения давайте представим сущность myCar только с двумя категориями макросов: «финансовые атрибуты» и «физические атрибуты»:

Финансовые атрибуты: стоимость, стоимость перепродажи, годовые расходы.

Физические атрибуты: высота, ширина, вес, цвет.

У меня есть два варианта его моделирования:

Вариант 1. Храните все атрибуты в одном объекте:

Отдельный объект: MyCar со следующими атрибутами:

  • Стоимость
  • стоимость перепродажи
  • годовые расходы
  • высота
  • ширина
  • масса
  • цвет

Вариант 2. Используйте для моделирования три объекта и два отношения:

Объект 1: Моя машина

  • Отношение 1 к 1 1: Финансы
  • Отношения 1 к 1 2: физические данные

Объект 2: Финансы

  • Стоимость
  • стоимость перепродажи
  • годовые расходы
  • Отношения 1 к 1: myCar

Объект 3: Физические показатели

  • Высота
  • Ширина
  • Масса
  • Цвет
  • Отношения 1 к 1: myCar

До сих пор я всегда использовал вариант 1, но думал о том, как данные должны отображаться на планшете внутри UISplitViewController с параметрами «Финансы» и «Физические показатели» на главной стороне слева и связанные атрибуты на стороне деталей справа. , я думал о варианте 2.

Какой подход лучше всего подходит для моделирования этой сложной сущности с помощью основных данных? Почему?


Ответы:


1

Выбор должен заключаться в том, какие данные вам нужны в любое время. Если вам всегда нужны все данные, то использование нескольких сущностей мало что дает. Однако, если у вас есть основное представление, в котором перечислены только подмножества данных, и подробное представление, в котором перечислены все данные, то очень полезно разделить данные на разные сущности в зависимости от их использования. Это ограничивает объем данных, которые будут повреждены при прокрутке главного списка, и повышает производительность.

Это не означает, что вы также не должны устанавливать количество пакетов запроса на выборку, что также является важным фактором в том, насколько эффективной и плавной будет ваша прокрутка...

05.03.2014
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

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

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..