Размер файлов btrieve

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3852
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Размер файлов btrieve

Сообщение Игорь Столяров » 19 Январь 2019, 20:19

Здесь нужно смотреть на вопрос в разрезе времени и технологий …
Пакетная обработка запросов была, в своё время, решением вопроса низкой пропускной способности сетей.
Современные гигабитные сети и многопоточные процессоры просто сделали это рудиментом.

Простой пример. Есть прекрасная SQL БД Firebird, у которой есть локальное решение. Упрощённо говоря, можно
положить в папку программы DLL и она будет работать с БД локально. Так вот пока программа составит этот запрос,
передаст его драйверу, тот его выполнит, передаст обратно пакет - простая выборка того же из TPS уже давно всё сделала.
Смысл есть только в том, что одна программа может работать локально и в полноценном варианте, с выполнением
запросов на мощном сервере.

Можно сказать, что Btrieve это тоже самое локальное решение Pervasive.SQL. Да, в Btrieve API есть пакетная обработка.
Нужно ли оно, если Btrieve всегда (в т.ч. и современный Btrieve 12) предлагается как Embedded решение ? Нет.

Обратили внимание, что в последние годы стал возрождаться рынок т.н. Non-SQL БД ? Причина - в первом абзаце.

P.SQL действительно по тестам скорости проигрывает лидерам рынка … но дело в том, что он изначально с ними не конкурировал.
P.SQL всегда предлагался как решение с легендарной надёжностью и в этом он уступает только Oracle (который стоит на порядок больше).
Это мнение независимой экспертизы журнала BYTE, а не моё, если что … ;)
«V» значит Вендетта !

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 20:59

Что-то я совсем ничего не понял, книжки разные читаем что-ли... Какое отношение имеет "локальная" к "embedded"? Совсем совсем разные понятия.

У pervasiveSQL есть 2 интерфейса - транзакционный и реляционный. Это 2 сервиса, устанавливаемые при инсталляции. Оба интерфейса работают с базовым api. Через них можно работать параллельно с одной базой. Все, что можно сделать через реляционный интерфейс, можно сделать и через транзакционный. Реляционный интерфейс дает возможность работать с диалектом языка sql. Для него создаются ddf файлы с описанием структуры данных, чтобы интерпретатор мог понимать запросы. При работе через транзакционный интерфейс описание структуры данных хранится в прикладном приложении. Транзакционный интерфейс является таким же полноценным клиент-серверным решением, как и реляционный. Только реализует доступ к данным методами isam, а не sql. Я не вижу, за счет чего реляционный интерфейс будет работать быстрее, если было бы пакетное чтение записей. Хранимые процедуры народ спокойно заменяет на server jobs, которые пишутся на традиционных языках.
Рязань решает.

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 21:07

Игорь Столяров писал(а):
19 Январь 2019, 20:19
P.SQL всегда предлагался как решение с легендарной надёжностью и в этом он уступает только Oracle (который стоит на порядок больше).
Это мнение независимой экспертизы журнала BYTE, а не моё, если что … ;)
В каком году? :-)
Рязань решает.

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 21:17

Вообще говоря, на pervasive много чего работает, даже у нас...
Вот эти ребята http://www.petroglif.ru/ (pervasive с транзакционным интерфейсом, приложение на c++) когда-то уже давно хотели перейти на sql сервера. Пустили рекламу, что мол клиент сможет сам выбирать, какой sql сервер использовать. Заключили даже партнерский договор с Ораклом, о чем всех известили. Потом как-то все затихло. У меня был случай спросить их главного разработчика о том, что же случилось. Да, говорит, уперлись на самом последнем этапе. Клиенты сказали, нам это нафик никому не нужно. И так все работает быстро и надежно. От себя добавлю, возможно клиенты увидели мысль переложить на них работу по поддержке субд. Айтишники, которые не программисты, по этой причине в большинстве своем недолюбливают sql сервера.
Рязань решает.

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 21:22

Еще мнение вот этого товарища http://www.goldstarsoftware.com/
Биллу задали вопрос, почему он столько времени продолжает заниматься поддержкой pervasive. Ответ примерно такой был: "Я считаю, что сегодня на рынке pervasiveSQL является самой стабильной и надежной базой данных".
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3852
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Размер файлов btrieve

Сообщение Игорь Столяров » 19 Январь 2019, 21:27

finsoftrz писал(а):
19 Январь 2019, 20:59
Какое отношение имеет "локальная" к "embedded"?
Вряд ли и Ваших книжках упоминаются встраиваемые решения для сервера. Встраиваемое приложение - работает локально.
finsoftrz писал(а):
19 Январь 2019, 20:59
Это 2 сервиса, устанавливаемые при инсталляции.
А не обязательно. При установке обратите внимание на птичку (я лучше сразу с рисунком) - и сервис Btrieve не будет
постоянно висеть в памяти, например, если приложение редко используется. Пардон - младше P.SQL 11 не нашёл.
1.jpg
finsoftrz писал(а):
19 Январь 2019, 20:59
Для него создаются ddf файлы с описанием структуры данных, чтобы интерпретатор мог понимать запросы.
Да. Еще DDF с правами пользователей, системными настройками и хранимым процедурами.
finsoftrz писал(а):
19 Январь 2019, 20:59
Я не вижу, за счет чего реляционный интерфейс будет работать быстрее, если было бы пакетное чтение записей
Только за счёт того (и только тогда), что SQL запросы будут выполняться и "собираться" на мощном выделенном сервере.
В том числе и по запросам с несколькими таблицами. Пакет - это выборка записей, связей между таблицами нет.
И кто же будет парится с SQL запросами, что бы они выполнялись на локальном компьютере ... разве что совсем нечего делать ... :)
«V» значит Вендетта !

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 21:42

Тут можно вспомнить еще про механизм кэширования данных на клиенте. Всякие мелкие справочники не надо постоянно таскать с сервера, как в случае sql серверов. Они всегда доступны локально. Не помню, есть ли в pervasive фильтрация на сервере, как в ip-драйвере. В связке с пакетным чтением сильно ускорило бы тяжелые выборки. Хотя опять таки, server jobs для таких случаев все используют...

Я уже писал, что не сторонник клиент-серверной архитектуры. На мой взгляд, более эффективны централизованные серверные вычисления. Если есть мощный сервер, то выгоднее работать в терминальном режиме. Pervasive - это когда упираемся в ограничение файловых баз или количество пользователей больше предела, который тянет терминальный сервер.
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3852
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Размер файлов btrieve

Сообщение Игорь Столяров » 19 Январь 2019, 21:51

finsoftrz писал(а):
19 Январь 2019, 21:42
Если есть мощный сервер, то выгоднее работать в терминальном режиме.
Я бы предложил взглянуть на вопрос с другой стороны …
Помните, в своё время был тренд с т.н. "тонкими клиентами" … Все их плодили в несметном кол-ве.
Почили в бозе … т.к. нет сейчас "тонких клиентов". Причина простая.

Windows - это не операционная система. Windows - это средство доставки и визуализации рекламного контента.
Поэтому современный обычный компьютер предлагает вычислительную мощность, которой позавидовали бы сервера 10 лет назад.
И этот компьютер вполне способен сам выполнять большинство задач обработки данных, надо только их получить … ;)
«V» значит Вендетта !

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 21:53

А вот про чтение заданных полей, как в sql, точно читал...
Рязань решает.

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 21:54

Игорь Столяров писал(а):
19 Январь 2019, 21:51
finsoftrz писал(а):
19 Январь 2019, 21:42
Если есть мощный сервер, то выгоднее работать в терминальном режиме.
Я бы предложил взглянуть на вопрос с другой стороны …
Помните, в своё время был тренд с т.н. "тонкими клиентами" … Все их плодили в несметном кол-ве.
Почили в бозе … т.к. нет сейчас "тонких клиентов". Причина простая.
Я думаю, просто особого смысла не было. В качестве терминальных станций все используют старые компьютеры. Дешево и привычно.
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3852
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Размер файлов btrieve

Сообщение Игорь Столяров » 19 Январь 2019, 22:01

finsoftrz писал(а):
19 Январь 2019, 21:54
В качестве терминальных станций все используют старые компьютеры.
В том-то и дело, что дёшево … :) Но это ведь актуально не у всех и не везде.
Есть же старая байка, что когда программа начинает тупить, то русские её переписывают, а американцы просто покупают новый компьютер. ;)
«V» значит Вендетта !

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 19 Январь 2019, 22:06

У нас у всех... А куда девать старый хлам? А тут его можно пристроить с пользой...
Рязань решает.

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 1010
Зарегистрирован: 06 Ноябрь 2014, 12:48

Размер файлов btrieve

Сообщение finsoftrz » 20 Январь 2019, 10:45

Игорь Столяров писал(а):
19 Январь 2019, 22:01
finsoftrz писал(а):
19 Январь 2019, 21:54
В качестве терминальных станций все используют старые компьютеры.
В том-то и дело, что дёшево … :) Но это ведь актуально не у всех и не везде.
Есть же старая байка, что когда программа начинает тупить, то русские её переписывают, а американцы просто покупают новый компьютер. ;)
Сейчас уже не актуально. У нас тоже покупают новый компьютер. Слишком сложное программное обеспечение стало и переписывать некому...
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3852
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Размер файлов btrieve

Сообщение Игорь Столяров » 20 Январь 2019, 11:06

finsoftrz писал(а):
20 Январь 2019, 10:45
Слишком сложное программное обеспечение стало и переписывать некому...
Согласен - тут мы просто пришли к тому же, что и весь мир.

1. Разработка ПО усложнилась, стала требовать определённый уровень квалификации и потому централизовалась.

2. На вскидку: приличный серверный блок можно поднять за 100 тр., а содержать среднего ботана-программера в регионах
50-70 тр./месяц (т.е. с налогами те же 100 тр./месяц). И большой вопрос, что он там ещё наоптимизирует … ;)
«V» значит Вендетта !

Аватара пользователя
Дед Пахом
Старичок
Сообщения: 2185
Зарегистрирован: 07 Июль 2005, 15:51
Откуда: Москва, Россия

Размер файлов btrieve

Сообщение Дед Пахом » 20 Январь 2019, 12:19

Игорь Столяров писал(а):
20 Январь 2019, 11:06
И большой вопрос, что он там ещё наоптимизирует …
Судя по сериалам, каждый из них компьютерный гений и ежедневно взламывает Пентагон.
С уважением, ДП

Ответить