Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.09;
Скачать: CL | DM;

Вниз

Организация БД на низком уровне   Найти похожие ветки 

 
DLans   (2003-05-19 04:13) [0]

Вопрос такой - программа имеет доступ к массиву записей, некоторые поля в записях - это индексы в другом массиве записей, т.е. имеем набор таблиц с перекрестными ссылками. Нужно, например, быстро отобрать записи с определенным значениям поля/полей - организовать запрос, насколько я понимаю. Ну и все остальное в таком духе. Как это делается физически? Какие структуры данных используются? Как добиться максимального быстродействия? (Все данные находятся в ОП)


 
Desdechado ©   (2003-05-19 16:06) [1]

ОП - это отдельный поток, общая память ...?


 
Dred2k ©   (2003-05-19 16:41) [2]

> Desdechado © (19.05.03 16:06)
По ходу, оперативная... ;)
> DLans (19.05.03 04:13)
Возможно, тебе помогут датасеты, работающие с данными в памяти и поддерживающие фильтрацию. TClientDataSet - тоже выход, но люди здесь указывали и на более эффективные компоненты (посмотри нитки дней за 10 - по названиям даже увидищь, если никто ссылку не бросит к тому времени). TRxMemoryData (из поставки RXLib) тоже вполне не плох, и фильтрация вроде есть (по событию OnFilterRecord).


 
DLans   (2003-05-20 01:26) [3]

Возможно, неправильно поставил вопрос - интересует алгоритм построения базы данных на самом низком уровне - никаких компонентов, никаких событий, никакого VCL (это нужно в DLL"ке размером 50к) - имеем только массивы записей.

2Desdechado ОП - оперативная память


 
Dred2k ©   (2003-05-20 10:17) [4]

> DLans (20.05.03 01:26)
> алгоритм построения базы данных на самом низком уровне
Этому "простому" вопросу люди всю жизнь посвещают, написали массу трудов и работ ;) В инете это есть.
> имеем только массивы записей
...в памяти. Получается, что тебе нужно лишь аккуратно продумать и реализовать механизм работы со своми структурами данных. К базам как таковым это не имеет прямого отношения - в любой программе есть данные, которыми программер оперирует штатными средствами (копирование, сравнение, сортировка и т.п. - разнится лишь масштаб той или иной операции). Вот и создай свой набор структур, минимизируй размер и работай с ними в памяти. Обычное дело. А вот если нужно отобразить это в DBGrid, к примеру, тут без механизма VCL (TDataSet) не обойтись. Или писать все самому...




Страницы: 1 вся ветка

Текущий архив: 2003.06.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
14-26677
Yr2
2003-05-24 17:22
2003.06.09
Компонент для отображения многокадрового GIF (анимация)


6-26641
NikEm
2003-04-03 16:30
2003.06.09
CGI приложение и Apache - не работает!


1-26485
sam-Lite
2003-05-29 09:04
2003.06.09
Как добраться до адреса с переменными какой-то пргоги.


1-26504
TCrash
2003-05-30 00:07
2003.06.09
Access violation


3-26378
Alex_x
2003-05-20 16:59
2003.06.09
Медленный переход на первую запись в базе