сфера применения PostgreSQL
я видел систему, где не было уеб интерфейса к бд, ьли клиенты, общающиеся по одбс и кутешешые двайвера. в бд складывались свои типы данных (с постгре легко завести свои, типичный пример - гисы)
ну а вообще, постргря мощная, надежная бд с развитыми возможностями, соотв. использовать ее можно там, где нужна хорошая бд, и не обязательно это веб.
http://lingvo.yandex.ru/en?text=site:
site
1. сущ.
1) место; местонахождение, местоположение; позиция
2) стройплощадка; площадь, место (для строительства)
3) компьют.
а) сайт, абонентский пункт
б) узел сети
в) (вычислительная) установка, вычислительная система; вычислительный центр
4) археол.
а) раскопки
б) место стоянки древнего человека
2. гл.
1)
а) помещать, размещать, располагать
б) помещаться, располагаться, быть расположенным, находиться
2) выбирать место (для строительства)
ну а вообще, постргря мощная, надежная бд с развитыми возможностямиу меня был запрос join двух таблиц в каждой около 30 тыс. записей результат около 14 записей Postgre выполнял этот запрос 24 секунды MS SQL Server 1 секунду
Без указания того, что это были за таблицы, какие в них были ключи, индексы и т.д. это утверждение бессмысленно.
ИМХО, полное Г. Хотя и постреляционная.
я пять лет плотно работаю с постгрей и чего-то мне подсказывает, что такой разброс -- результат того, что разработчик не удосужился заглянуть в документацию и прочитать про настройку бд и принципы работы с ней
что такой разброс -- результат того, что разработчик не удосужился заглянуть в документацию и прочитать про настройку бд и принципы работы с нейСпорное утверждение.
Как человек хорошо знающий Постгрю, ответь на следующие вопросы про Постгрю:
1) Умеет ли она вести статистику разпределения значений в столбце таблицы и использовать ее при нахождении оптимального плана?
2) Умеет ли она индексировать представления и использовать в запросах эти индексы в случае если это приводит к более эффективному плану даже если представления в самом запросе не присутствуют?
да
>Умеет ли она индексировать представления
на прямую -- нет, для этого используюся partial indexes
> использовать в запросах эти индексы ... представления в самом запросе
да, partial indexes используются
советую заняться выпрямлением рук -- такого разброса быть не может. т.е. конечно может, если задасться такой целью специально, по это никак не будет говорить о качестве бд.так всё таки, для того что бы получить такой разброс надо задаваться такой целью или всего лишь не прочитать загадочные принципы работы Postgre?
я пять лет плотно работаю с постгрей и чего-то мне подсказывает, что такой разброс -- результат того, что разработчик не удосужился заглянуть в документацию и прочитать про настройку бд и принципы работы с ней
Сколько времени ты потратил на чтение документации Postgre? я так понимаю работодотель оплатил тебе это время?
а тебя работодатель заставляет отдельно считать время, потраченное на прочтение документации?
так всё таки, для того что бы получить такой разброс надо задаваться такой целью или всего лишь не прочитать загадочные принципы работы Postgre?если прочитал доки (и понял что там написано) -- то такой результат можно получить только специально,
если ты не удосужился почитать доки и выяснить, что перед использованием надо отредактировать конфиг под свои нужды (по умолчанию он идет такой, что бы сервак запустился на любом говне) и выучить, зачем нужен vacuum и explain analyze, то тогда такой результат вполне можно получитить. я почти уверен, что знания всего этих трех сокровенных пунктов хватило бы, что бы решить проблему с этой конкретной выборкой
Сколько времени ты потратил на чтение документации Postgre? я так понимаю работодотель оплатил тебе это время?скажи, а за руль ты так же садился -- хули там время терять, учиться, взял да поехал
Если все так сложно, то почему нет Wizard-а по такой настройке?
и почему такая настройка все-таки не делается автоматически?
А ты видел, чтобы хоть одна кроссплатформенная СУБД тюнила сама себя автоматически? Я - нет.
Есть в этом плане некоторая надежда на десятку Oracle, но руки пока не дошли до неё.
а автоматически: предложи алгоритм, которы бы эффективно определял количество шаредной памяти, которую надо выдать постгре (не зная, что в нем будет лежать среднее количество свободной памяти во время работы базы, соотношение инсертов-селектов и, следовательно, размер журнала транзакций и количества контрольных точек, агрессивность системной политики кэширования и т.д. это для начала, кроме этого есть еще куча важных параметров,
Это повод - чтобы совсем не делать хорошие продукты?
На мой взгляд, если этого никто ещё не сделал, значит или это мало кому надо, или это слишком сложно сделать. А скорее всего, какая-то комбинация этих двух причин.
Наиболее продвинутая БД для бедных (кто не может позволить себе купить коммерческие БД).
Ты большое ИМХО забыл добавить. Это я насчёт "для бедных".
а как же Firebird?
Показатели типа "можно быстро поставить, занимает мало места" - это просто смешно.
а в нем модель безопасности ебанутая, хотя бы. мы тут год назад как раз выбор делали firebird vs. postgres, много дуростей в firebird нашли.
Вот скажи, ты чтобы один шуруп закрутить (фотографию на стенку надо повесить, например) - покупаешь дрель от одного из известных вендоров, вставляешь в неё нужный девайс и заворачиваешь шуруп с помощью неё, или всё-таки берёшь простую отвёртку и делаешь то, что должно?
а как же Firebird?Firebird не поддерживает элементарных вещей даже из стандарта SQL-92
В Firebird нельзя писать запросы типа такого
SELECT *
FROM
(
SELECT *
FROM table1
) t1
Длина имени вьюхи не больше 32 символов
Из .NET-провайдера не выполняется скрипт - один update -длинной в несколько строчек, какое-то там переполнение строчек пишет. Причем вполне вероятно, это сама быза ругается, хотя может быть и провайдер не доделанный.
Если все так сложно, то почему нет Wizard-а по такой настройке?Потому что это ПО для программистов, а не для бухгалтеров.
и почему такая настройка все-таки не делается автоматически?
P.S. Меня PostgreSQL подкупил тем, что документация по нему самому и по SQL в виде man pages, а не в виде HTML или еще какой-то пурги.
В виде HTML тоже есть.
Потому что это ПО для программистов, а не для бухгалтеров.и что у программистов много лишнего времени, чтобы читать доки и разбираться в настройках? вообще, любой здравомыслящий человек, программист не программист не важно, предпочтет чтобы система была самонастраивающейся.
Скажи какому-нибудь грамотному ораклисту. Поднимешь ему настроение на оставшийся день
запрос из подзапроса появился в FB2
много дуростей в firebird нашли.чисто для интереса, можешь вспомнить какие?
http://savage.net.au/SQL/.
FB2 уже вышел?
http://firebird.sourceforge.net/index.php?op=files&id=engine
этот запрос входит в стандарт FB2 уже вышел?
http://firebird.sourceforge.net/index.php?op=files&id=engine
FB2 сейчас только в альфа версии
insert into table select * from table
если table не пустая, то FB пиздец
Помню, что процесс инсталляции уже весьма странный. Поддержка koi8-r какая-то странная, напоминает хак. Как я понимаю, и то и другое это наследие от виндовозно-ориентированного Interbase.
и что у программистов много лишнего времени, чтобы читать доки и разбираться в настройках?У меня deja vu.
А в каком месте IB "виндовозно-ориентированный"? Он вообще-то не с Windows на *nix портирован, а наоборот.
тред с RSDN, где обсуждается одна такая дурость.
Вот недавний Вроде бы это у всего древнего софта так, который столкнулся с различными кодировками до появления unicode.
Что Oracle, что DOS и Windows, что TeX, все такие.
Скажи какому-нибудь грамотному ораклистуВспоминается анекдот, про то как сын решил задачу, которую отец решал всю жизнь, а отец ему и говорит: "Дурак ты! Эта задача меня всю жизнь кормила..."
Короче, то что ODBA против самонастраивающихся баз -- это не аргумент.
Access не сам настраивается? Грамотные люди, которым не нравится ничего настраивать руками, его юзают вроде.
а тебя работодатель заставляет отдельно считать время, потраченное на прочтение документации?да
Access`у гораздо проще, это же не клиент-серверная СУБД.
да, partial indexes используютсяНа сколько я понял partial indexes и рядом не стояли с indexed views, соответственно будут прокатывать для тестов фокусы, которые раньше любили показывать в Оракл -- это когда брали сложный запрос и делали по нему индексированный взгляд, после чего запрос начинал выполняться на порядок быстрее.
Аналогично про статистику. Согласно документации Постгри она ее собирает, но по умолчанию довольного грубо, а отвечающий за это параметр настраивается ручками. В mssql параметры статистики выбираются автоматически в зависиомти от самих данных (и довольно неплохо).
Понятно, что выбор оптимального плана требует довольно сложного алгоритма, который в свою очередь требует хорошего тьюнинга и эвристики, поскольку перебрать все возможные планы просто не реально. Вполне возможно, что планировщик в Постгре для некоторых случаев работает хуже.
Сложные клиент-серверные структуры выгодны только админам, которые за счёт них кормятся, и производителям чрезмерно усложнённого софта.
Правильные люди понимают, что им нафиг не надо такое счастье. В конце концов, деньги у них не от чтения документации и не от написания конфигов.
Грамотный специалист просто разместит базу данных в формате Access на файл-сервере. Настраивать файл-сервер не надо, Windows делает это автоматически с версии 3.11, используя прогрессивный протокол NetBEUI, в котором тоже нет ненужных параметров для настройки.
ну.... MySQL совсем недавно подзапросы держать началда, и это не мешает ей оставться самой популярной и рентабельной+кроссовой (поверьте мне) базой с учётом всех её оггромных минусов
А ты видел, чтобы хоть одна кроссплатформенная СУБД тюнила сама себя автоматически? Я - нет.db2 8.2
Насколько она кроссплатформенная?
сайте пишут, что z/OS, AIX, Linux, HP-UX, Sun, and Windows
на
Да, кстати, если уж речь зашла про db2 8.2, то тогда и Oracle 10g надо вспомнить.
Интересно было бы посмотреть.
Оставить комментарий
qsk78
Начал читать документацию, а там везде пишут слово "site".PostgreSQL только на web-server`ы ставят или еще где-нибудь используют?