Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2      [все]
 СУБД с функциями ввода-вывода  [new]
sunny1983
Member

Откуда: Сергиев Посад
Сообщений: 48
Какие из современных СУБД, содержат кроме стандартных команд SQL, команды, скажем для ввода данных в базу со стороны, из файла или из stdin
7 июн 20, 00:03    [22146951]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
crutchmaster
Member

Откуда: оттуда.
Сообщений: 2337
sunny1983,

Лучше поищи, какие не содержат.

Сообщение было отредактировано: 8 июн 20, 06:14
8 июн 20, 06:16    [22147244]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
KreatorXXI
Member

Откуда: Москва
Сообщений: 1070
sunny1983,

обычно это делается другими средствами. Конкретно что надо?
8 июн 20, 09:57    [22147305]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 9651
sunny1983
Какие из современных СУБД, содержат кроме стандартных команд SQL, команды, скажем для ввода данных в базу со стороны, из файла или из stdin

As example: PostgreSQL команда COPY
8 июн 20, 16:04    [22147530]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
ъъъъъ
Member

Откуда:
Сообщений: 2114
FoxPro!
8 июн 20, 16:43    [22147551]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
ъъъъъ
Member

Откуда:
Сообщений: 2114
И MS Access.
8 июн 20, 16:43    [22147552]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
sunny1983
Member

Откуда: Сергиев Посад
Сообщений: 48
ъъъъъ
FoxPro!

Ну да, когда учился лет 15 назад, успел в ней лабы поделать, вроде полноценный язык программирования был с вводом-выводом и всем остальным. А что, в современных СУБД, основанных на стандарте SQL такого нет?

KreatorXXI
обычно это делается другими средствами

Другими словами, мне нужно писать программу на любом языке, например на c++ или скрипт на bash, в котором использовать собственные средства ввода, а потом уже заносить данные в базу при помощи вставки в скрипт вызова mysql-клиента с вызовом в нём запроса INSERT, так как собственных команд ввода в mysql нет. То есть на ввод 1000 строк будет 1000 вызовов mysql. Медленно выйдет.
9 июн 20, 06:59    [22147743]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
crutchmaster
Member

Откуда: оттуда.
Сообщений: 2337
sunny1983
А что, в современных СУБД, основанных на стандарте SQL такого нет?

Есть всякие поделки типа pl/sql, t-sql и прочие. Но всё это жуткая ересь!

sunny1983
То есть на ввод 1000 строк будет 1000 вызовов mysql. Медленно выйдет.

Нормально выйдет. 1000 строк - это ни о чём.
9 июн 20, 07:56    [22147763]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
miksoft
Member

Откуда:
Сообщений: 38826
sunny1983
так как собственных команд ввода в mysql нет.
Это, мягко говоря, не так.

Вам еще вчера намекали:
crutchmaster
sunny1983,

Лучше поищи, какие не содержат.
9 июн 20, 08:29    [22147771]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
servit
Member

Откуда: г. Кишинёв, Республика Молдова
Сообщений: 3141
Блог
sunny1983
То есть на ввод 1000 строк будет 1000 вызовов mysql. Медленно выйдет.
Погуглите mysql bulk insert.
sunny1983
Какие из современных СУБД, содержат кроме стандартных команд SQL, команды, скажем для ввода данных в базу со стороны, из файла или из stdin
Например, YottaDB, Intersystems IRIS.
9 июн 20, 08:32    [22147773]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
Leonid Kudryavtsev
Member

Откуда:
Сообщений: 9651
sunny1983

так как собственных команд ввода в mysql нет


Где-то в интернете
В этой статье мы расскажем вам, как использовать оператор LOAD DATA INFILE для импорта CSV-файла в таблицу MySQL.

Оператор LOAD DATA INFILE позволяет считывать данные из текстового файла и очень быстро импортировать их в таблицу базы данных......
9 июн 20, 18:37    [22148245]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
mayton
Member

Откуда: loopback
Сообщений: 51389
sunny1983, а ты уже и в Тостере и в скруле отметился? Ну красавчик...
9 июн 20, 23:20    [22148416]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
MX-9
Member

Откуда: LIBAVA
Сообщений: 523
sunny1983
Какие из современных СУБД, содержат кроме стандартных команд SQL, команды, скажем для ввода данных в базу со стороны, из файла или из stdin


Посмотрите в сторону CACHE - IRIS.
Это находится недалеко на этом форуме.
Поддерживает обьектный, реляционный, и прямой доступ.

И даже ввод-вывод в базу данных через Excel - http://www.armex.pro
11 июн 20, 09:18    [22149127]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
servit
Member

Откуда: г. Кишинёв, Республика Молдова
Сообщений: 3141
Блог
MX-9,

Зачем повторяться?

Кроме того ТС это нужно скорее для реферата/курсовой, а не для работы.
11 июн 20, 09:38    [22149138]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
mayton
Member

Откуда: loopback
Сообщений: 51389
Cache слишком уж далеко стоит от DBMS в классическом понимании этого слова.

В стандартных диалектах языков SQL я имею в виду.
11 июн 20, 10:06    [22149158]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
servit
Member

Откуда: г. Кишинёв, Республика Молдова
Сообщений: 3141
Блог
mayton,

Вы правы: NoSQL DBMS стоят далеко от RDBMS. Но не все.
11 июн 20, 10:23    [22149165]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
mayton
Member

Откуда: loopback
Сообщений: 51389
servit
mayton,

Вы правы: NoSQL DBMS стоят далеко от RDBMS. Но не все.


Ну смотри. Не сложно поддержать SQL сбоку любой системы. Но сложно сделать так чтобы он
не выглядел как "примотанный скотчем". В основном это поинт в направление структур данных
которые использует движок DBMS. В MySQL этот вопрос решился за счет вставляемых engines (InnoDB,ISAM).
В Oracle - это набор способов хранения данных (HEAP, IOT, CLUSTERED и mixin 3х способов партишенинга
для HEAP). В Postgres - это некий единый способ хранения tuples в дата-сегменте но с богатым кастомным
API для написания своих индексов и своих типов данных на С++).

Что в Cache? Там кажется токлько B+Tree. Или я ошибаюсь?
12 июн 20, 10:41    [22149714]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
servit
Member

Откуда: г. Кишинёв, Республика Молдова
Сообщений: 3141
Блог
mayton
Что в Cache? Там кажется токлько B+Tree. Или я ошибаюсь?
Как там устроены многомерные массивы, они же глобалы, на низком уровне я без понятия.
Но согласно википедии
"В большинстве MUMPS реализаций глобальные структуры основываются на концепции так называемых сбалансированных деревьев (именуемых также и В-деревьями). <..>"

Arrays: are created dynamically, stored as B-trees, are sparse (i.e. use almost no space for missing nodes), can use any number of subscripts, and subscripts can be strings or numeric (including floating
point). Arrays are always automatically stored in sorted order, so there is never any occasion to sort, pack, reorder, or otherwise reorganize the database. Built in functions such as $DATA, $ORDER,
$NEXT(deprecated) and $QUERY functions provide efficient examination and traversal of the fundamental array structure, on disk or in memory.
Если вы серьёзно интересуетесь этим вопросом, то лучше спросить ну я, разработчика MiniM.

PS: А в чём была суть вопроса?
12 июн 20, 11:33    [22149735]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
ну я
Member

Откуда: Москва
Сообщений: 1258
mayton
servit
mayton,

Вы правы: NoSQL DBMS стоят далеко от RDBMS. Но не все.


Ну смотри. Не сложно поддержать SQL сбоку любой системы. Но сложно сделать так чтобы он
не выглядел как "примотанный скотчем". В основном это поинт в направление структур данных
которые использует движок DBMS. В MySQL этот вопрос решился за счет вставляемых engines (InnoDB,ISAM).
В Oracle - это набор способов хранения данных (HEAP, IOT, CLUSTERED и mixin 3х способов партишенинга
для HEAP). В Postgres - это некий единый способ хранения tuples в дата-сегменте но с богатым кастомным
API для написания своих индексов и своих типов данных на С++).

Что в Cache? Там кажется токлько B+Tree. Или я ошибаюсь?

B* tree
16 июн 20, 12:40    [22151527]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
mayton
Member

Откуда: loopback
Сообщений: 51389
ну я
mayton
пропущено...


Ну смотри. Не сложно поддержать SQL сбоку любой системы. Но сложно сделать так чтобы он
не выглядел как "примотанный скотчем". В основном это поинт в направление структур данных
которые использует движок DBMS. В MySQL этот вопрос решился за счет вставляемых engines (InnoDB,ISAM).
В Oracle - это набор способов хранения данных (HEAP, IOT, CLUSTERED и mixin 3х способов партишенинга
для HEAP). В Postgres - это некий единый способ хранения tuples в дата-сегменте но с богатым кастомным
API для написания своих индексов и своих типов данных на С++).

Что в Cache? Там кажется токлько B+Tree. Или я ошибаюсь?

B* tree

Отлично. А как мне построить вторичный индекс по такой древо-табличке?

(Сорян я не знаю. Может на самом деле можно?)
16 июн 20, 13:50    [22151598]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 29805
mayton
А как мне построить вторичный индекс по такой древо-табличке?

никак. базово массив в mumps имеет вид типа
^V(a, b, c, ...) = d
то есть это многосегментный (может быть и один сегмент) индекс с единственным строковым значением "в конце" (выше это d).
То, что в скобках - это "столбцы индекса", а то, что после "=" - значение.
Никто не запрещает одновременно строить индексы-массивы вида
^V1(b) = d
^V2(c,b,a) = d
и так далее. И даже
^V3(d) = a

Если у значения нужны "столбцы", то они тут имитируются в значении d, например, используя разделитель. "val1!123!val2!356", типа того.
В общем, это такая реляционная модель "навыворот", где первичным является индекс, а не таблица.
Я много чего делал на MUMPS, пока на реляционные не перешел. Один раз наваял "справочник по транзисторам", где каждая характеристика была в виде отдельного индекса.
Первичным типа было
^MODEL(name)=set_of_parameters,
а дальше я понастроил массивов где индексом было значение параметра, а значением - name.
В результате поиск по туче параметров был просто адски скоростным. И искать аналоги было сплошным удовольствием.

p.s. но, в 94 году я начал работать с РСУБД, и послал MUMPS нахрен.
16 июн 20, 14:46    [22151689]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
ну я
Member

Откуда: Москва
Сообщений: 1258
mayton
ну я
пропущено...

B* tree

Отлично. А как мне построить вторичный индекс по такой древо-табличке?

(Сорян я не знаю. Может на самом деле можно?)

Там на деревьях можно любые структуры сделать, кроме разве что R tree (которые пространственные). Хотя этим не занимался, может и их можно изобразить. Деревья работают вполне себе шустро, основные М системы спокойно держат 100 тыщ записей с индексами в секунду при постоянной нагрузке.
16 июн 20, 16:10    [22151757]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
mayton
Member

Откуда: loopback
Сообщений: 51389
ну я
mayton
пропущено...

Отлично. А как мне построить вторичный индекс по такой древо-табличке?

(Сорян я не знаю. Может на самом деле можно?)

Там на деревьях можно любые структуры сделать, кроме разве что R tree (которые пространственные). Хотя этим не занимался, может и их можно изобразить. Деревья работают вполне себе шустро, основные М системы спокойно держат 100 тыщ записей с индексами в секунду при постоянной нагрузке.

При таком подходе есть недостаток. Деревья от вставок и удалений очень часто
ребалансируются. И большое количество строк меняют свой blockID. Это нужно
учесть во вторичных индексах. С моей точки зрения это ненужный оверхед
который нивелирует первичную таблицу-индекс.

В обычной таблице (heap-organized) - строки более стационарны.
16 июн 20, 16:31    [22151771]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
ну я
Member

Откуда: Москва
Сообщений: 1258
mayton
ну я
пропущено...

Там на деревьях можно любые структуры сделать, кроме разве что R tree (которые пространственные). Хотя этим не занимался, может и их можно изобразить. Деревья работают вполне себе шустро, основные М системы спокойно держат 100 тыщ записей с индексами в секунду при постоянной нагрузке.

При таком подходе есть недостаток. Деревья от вставок и удалений очень часто
ребалансируются. И большое количество строк меняют свой blockID. Это нужно
учесть во вторичных индексах. С моей точки зрения это ненужный оверхед
который нивелирует первичную таблицу-индекс.

В обычной таблице (heap-organized) - строки более стационарны.


"И большое количество строк меняют свой blockID. Это нужно учесть во вторичных индексах."
Там нет строк, там ключ + значение. Ну да ладно. А что нужно учесть во вторичных индексах?
Если к примеру в глобалах
^Data(id)=name
^Index(name,id)=""
Программист вроде как и понятия не имеет об устройстве неких blockID, ну пишет он в данные название по идентификатору а в индекс идентификатор и название, ну а учитывать-то что?
Или мысль какая-то неполная или к М прикручиваются хвосты от чужих собак.
16 июн 20, 18:43    [22151895]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
ну я
Member

Откуда: Москва
Сообщений: 1258
mayton
ну я
пропущено...

Там на деревьях можно любые структуры сделать, кроме разве что R tree (которые пространственные). Хотя этим не занимался, может и их можно изобразить. Деревья работают вполне себе шустро, основные М системы спокойно держат 100 тыщ записей с индексами в секунду при постоянной нагрузке.

При таком подходе есть недостаток. Деревья от вставок и удалений очень часто
ребалансируются. И большое количество строк меняют свой blockID. Это нужно
учесть во вторичных индексах. С моей точки зрения это ненужный оверхед
который нивелирует первичную таблицу-индекс.

В обычной таблице (heap-organized) - строки более стационарны.

B* tree и не только B* но и возможно других видов - это основной механизм индексации и в не М системах. Вообще-то. Если не брать битмап индексные или R tree, там чуть иначе, но расщепления и слияния при записи и у них есть.
В переводе на русский - пока деревья применяются вне М систем - так ок, а в М системах - так недостаток?
mayton, ну совсем уж хрень зачем писать? тут же приличные люди читают.
16 июн 20, 18:52    [22151903]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
mayton
Member

Откуда: loopback
Сообщений: 51389
ну я

"И большое количество строк меняют свой blockID. Это нужно учесть во вторичных индексах."
Там нет строк, там ключ + значение. Ну да ладно. А что нужно учесть во вторичных индексах?
Если к примеру в глобалах
^Data(id)=name
^Index(name,id)=""
Программист вроде как и понятия не имеет об устройстве неких blockID, ну пишет он в данные название по идентификатору а в индекс идентификатор и название, ну а учитывать-то что?
Или мысль какая-то неполная или к М прикручиваются хвосты от чужих собак.

Я не знаю Cache. И не знаю что такое глобал. Но я просто беру некую
сферическую СУБД в вакууме и смотрю. Как по чеклисту. B-Tree index? BItmap index?
Partitioning? Clustered? Vertical-Arrays? Index-Organized (это и есть кашиные таблички),
Mviews? И еще штук 5 вариаций partitioning по range/hash/list функции сегментации.

Это все составляющие успеха DBMS. Если она их реализует - то даёт шанс тухлому
запросу или отчоту заработать быстрее в данном конкретном сценарии. Когда чего-то
нет, то и наличие ORM, и NoSQL вообще не играет никакого значения. Запрос - тухляк
потому что нет СТРУКТУР данных чтобы он работал быстро. При всей внешней красоте
и лоске Cache в ней по всей видимости чего-то не хватает.
16 июн 20, 18:54    [22151907]     Ответить | Цитировать Сообщить модератору
 Re: СУБД с функциями ввода-вывода  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 11020
mayton
Я не знаю Cache. И не знаю что такое глобал.
Но я просто беру некую сферическую СУБД в вакууме и смотрю. Как по чеклисту.
"Формализм и начётничество" (ц)

P.S.
Даже случайно можно получать правильные результаты.
Только это не спасает от фатальных ошибок в рассуждениях и выводах.
16 июн 20, 19:56    [22151948]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2      [все]
Все форумы / Сравнение СУБД Ответить