Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Таблица данных, архитектурный вопрос / 12 сообщений из 12, страница 1 из 1
14.12.2012, 16:57
    #38079772
FordSoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
Добрый день!
C# .net 4.0.

Реализую для своих нужд такую сущность как таблицу данных для оперативной записи/чтения данных этой таблицы, число колонок планируется в 10-20 штук, типы колонок стандартные Int, string, datetime и т.д. Число строк планируется в районе 50000-100000, все данные должны хранится в памяти, заполняются по мере поступлению данных в первом случае, во втором при загрузке снепшота данных. Обращения к элементам таблицы по ключевому полю таблицы.

Что бы не изобретать велосипед решил посоветоваться быть может есть уже готовые решение, либо получить советы по архитектуре такой сущности.
...
Рейтинг: 0 / 0
14.12.2012, 17:26
    #38079847
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
FordSoft, DataTable смотрел?
...
Рейтинг: 0 / 0
14.12.2012, 18:44
    #38079973
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
FordSoft,

Баз данных из одной таблицы не бывает.
А что такое "снепшот"?
...
Рейтинг: 0 / 0
14.12.2012, 18:46
    #38079978
FordSoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
Посмотрел DataTable, что то мне кажется он слишком громоздким, отъедает память при большом кол-ве строк.

По архитектуре думаю использовать unsafe массивы generuic, с автоматическим ресайзом размера массива по мере надобности, и обращению к строке по индексу массива. Кто что может посоветовать по этому поводу?
...
Рейтинг: 0 / 0
14.12.2012, 18:50
    #38079984
beg-in-er
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
FordSoftЧто бы не изобретать велосипед решил посоветоваться быть может есть уже готовые решение, либо получить советы по архитектуре такой сущности.
что бы быстро работало, можно сделать обычный массив(или список) классов/структур а ключ выборосить в Dictionary. соответсвенно при записи/изменении вносить всю инфу и в массив и в словарь.
словарь по ключевому полю.
делается всё это быстро , а работает очень быстро.
...
Рейтинг: 0 / 0
14.12.2012, 18:53
    #38079988
FordSoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
Cat2,

Скажем так, это не БД как таковая, т.е. там не нужно связей между таблицами.

Задачу можно представить как разработку сущности плоской таблицы в которую нужно очень быстро записать строку, и очень быстро прочесть строку по индексу(ключевому полю).

Данные в такой таблицы нужны оперативно, для моментальных расчетов параметров по этим данным. Они могут пополнятся в процессе дня, из БД, со стека TCP, откуда угодно. Снепшот я имел ввиду, что я к примеру могу серилизовать эту таблицу с памяти в файл, и обратно дессериализовать (Очень нужно когда к примеру порог кол-во записей в таблице превысит критическую точку, и необходимо слить их в файл).
...
Рейтинг: 0 / 0
14.12.2012, 18:57
    #38079995
Lexxxxx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
FordSoft,

А чем универсальный словарь плох?
...
Рейтинг: 0 / 0
14.12.2012, 21:34
    #38080165
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
FordSoftСкажем так, это не БД как таковая, т.е. там не нужно связей между таблицами.
Это Вам только кажется
...
Рейтинг: 0 / 0
14.12.2012, 23:36
    #38080287
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
FordSoftЧто бы не изобретать велосипед решил посоветоваться быть может есть уже готовые решение, либо получить советы по архитектуре такой сущности.
IEnumerable<T>
...
Рейтинг: 0 / 0
15.12.2012, 09:42
    #38080409
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
Cat2,

что за вздор, даже пол таблицы это база данных ) но не реляционная конечно. но это её свойств БЗ не лишает.
у автора 50к-100к строк, по моему это такое маленько количество, что чем бы он не реализовывал ни чего не поменяется, можно даже в txt файле всё хранить и не думаю, что разница будет ощутимой :)
...
Рейтинг: 0 / 0
15.12.2012, 10:08
    #38080415
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
МСУFordSoftЧто бы не изобретать велосипед решил посоветоваться быть может есть уже готовые решение, либо получить советы по архитектуре такой сущности.
IEnumerable<T>

МСУ, торопитесь :-)


FordSoftДобрый день!
C# .net 4.0.

Реализую для своих нужд такую сущность как таблицу данных для оперативной записи/чтения данных этой таблицы, число колонок планируется в 10-20 штук, типы колонок стандартные Int, string, datetime и т.д. Число строк планируется в районе 50000-100000, все данные должны хранится в памяти, заполняются по мере поступлению данных в первом случае, во втором при загрузке снепшота данных. Обращения к элементам таблицы по ключевому полю таблицы.

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

Колонки не нужны. Создаете класс со свойствами, аналогичными колонкам. И используете экземпляры этого класса в ConcurrentDictionary
...
Рейтинг: 0 / 0
15.12.2012, 13:55
    #38080514
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Таблица данных, архитектурный вопрос
FordSoft...при загрузке снепшота данных...

Забыл добавить: двоичная или xml сериализация
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Таблица данных, архитектурный вопрос / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]