LINUX.ORG.RU

Нет, сынок, это фантастика (ц)

Что значит вручную? И чем SQL не устроил?

friday ★★★
()

пролог/datalog работают с реляционными данными без sql

dilmah ★★★★★
()

Без SQL то есть. Но что имеется ввиду под "вручную"?

naryl ★★★★★
()

mysql имеет свой, С-шный, публично доступный API для работы с файлами InnoDB и MyISAM. По словам разработчиков прямое использование этого API может ускорить запросы раз в 5.

http://dev.mysql.com/doc/refman/5.0/en/c.html

Кто в курсе - PostgreSQL имеет такие либы?

k0l0b0k ★★
()

У HaskellDB существует бэкенд для работы с "плоскими" файлами. Ты это имел ввиду?

Macil ★★★★★
()

Наверное, в postgres есть. Еще есть metakit, но вещь нехорошая.

mo3r
()
Ответ на: комментарий от Macil

я имел ввиду некий API, который позволит мне на языке общего назначения производить операции с таблицами, и избавит меня от организации работы с файлами, буферизацией, возможно с памятью, и предоставит готовые структуры данных.... что то в этом роде... короче то поверх чего sql работает...

zort
() автор топика
Ответ на: комментарий от zort

> я имел ввиду некий API, который позволит мне на языке общего назначения производить операции с таблицами, и избавит меня от организации работы с файлами, буферизацией, возможно с памятью

Вообще-то такой слой есть в любой реляционной СУБД, это повелось еще со времен System R 8) Посмотри на sqlite.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Вообще-то такой слой есть в любой реляционной СУБД

есть то он есть, я и не сомневался... только чтоб он был экспортирован как API я не видел...

zort
() автор топика
Ответ на: комментарий от zort

Как ты этот бред себе представляешь? Ты хотя бы знаешь, как работает SQL?

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

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

Так что - не фиг. И чем тебе SQL не угодил, что ты решил на более низкий уровень опуститься?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.