LINUX.ORG.RU

pgModeler v0.4.0 — моделирование БД PostgreSQL

 , , ,


2

1

Вчера PostgreSQL Database Modeler стал версии 0.4.0. Знакомьтесь, pgModeler — это свободный и открытый, кроссплатформенный (Qt, C++) инструмент визуального проектирования баз данных, объединяющий собой классические диаграммы сущность-связь с особенностями PostgreSQL. Созданную модель pgModeler преобразовывает в конкретную схему базы данных для СУБД версий 8.0 - 9.1. Реверсинга пока нет.

>>> Сайт программы



Проверено: tazhate ()

Отлично! Выглядит не совсем страшно, вроде.

Ximen ★★★★ ()

Отлично. Ищу как раз нечто подобное.

Deleted ()

нормальный такой инструмент

kto_tama ★★★★★ ()

C++ выбран неудачно, существуют биндинги Qt и к нормальным языкам. Хороший скринкаст на сайте не помешал бы.

alienclaster ★★ ()

Ну, наверное хорошее приложение но,

эти чудики что-либо слышали о ..configure ?

Или трахаться с компиляцией - как-бы закон жизни.

edoroe ()
Ответ на: комментарий от alienclaster

У пришельца лишний скор. Нужна срочная липосакция.

anonymous ()

Я должен задать этот вопрос — чем это лучше opensystems architect?

Aceler ★★★★★ ()

Реверсинга пока нет.

Традиционное не нужно. Станет нужно, когда по фичастости дойдёт хотя бы до MySQL Workbench

anonymous ()

что за дибильная практика распространять линуксовые сборки в tar.gz вместо нормальных пакетов под основные дистрибутивы???

anonymous ()

То что проект открытый - это хорошо. По работе же использую DbVisualizer - там наверное функциональность есть на любой случай в любой реляционной БД.

orm-i-auga ★★★★★ ()
Ответ на: комментарий от alienclaster

Какая в задницу разница? Автор выбрал то, что ему нравится. Написанная на python, ruby, php, lisp etc. языках +2 к статам не добавляют. Главное - чтобы оно делало то что нужно.

frozenix ★★★ ()
Ответ на: комментарий от orm-i-auga

По работе же использую DbVisualizer

Штука весьма неплохая. Сам пользовал. Одна беда $$$

Хотя и свободных инструментов с разной фиченасыщеностью написанных на JAVA в сети как у дурака фантиков. Причем, цепляются любые СУДБ для которых есть jdbc драйвер.

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

что за дибильная практика распространять линуксовые сборки в tar.gz вместо нормальных пакетов под основные дистрибутивы???

Люди заняты кодом, а не сборкой «нормальных пакетов». Пакетами пускай дистрибостроители занимаются, или сам собери.

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

Автор выбрал то, что ему нравится.
C++

Так не бывает :) А разница проста - будет это г-но кто-то поддерживать (foss же, да?) или перепишет все на пейтоне %)

alienclaster ★★ ()

inherits где?

Наследование не поддерживается... т.о. для меня не применимо :(

А для простых баз, можно и руками SQL(DDL) наваять.

vbv ()

ничего себе... новость на лоре, и все пишут «нужно». что случилось с лором?

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

Сложно же тебе живется с половиной мозга... Chrome, webkit, firefox, mysql, openoffice, thunderbird, inkscape, kde, их же кто-то поддерживает. Назови программы на python'e больше чем эти.

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

Я должен задать этот вопрос — чем это лучше opensystems architect?

Пытался сделать это OSA полнофункциональным сейчас. Почуствовал себя бомжом который подходит к мусорке и копается в ней.

Этот unixodbc... Не работает. Никакой актуальной информации. Сочуствую админам.

tp_for_my_bunghole ()

Скриншоты вызывают желание поотрывать их автору разные части тела за работу под рутом...

anonymous ()

Юзаю EMS PostgreSQL Studio в вине. Лучшего продукта пока что не видел.

keeper-andrew ()
Ответ на: inherits где? от vbv

поддерживается вроде. Мой друг скрин мне кидал. Попробую нарыть... вот!

07:58:46 bonifacio: PostgreSQL Modeler (pgmodeler): @tag_bonifacio Hello! If I understood well... Yes, pgModeler implements table inheritance ( a.k.a generalization).

08:08:21 bonifacio: воть http://susepaste.org/33892983

bvn13 ★★★★★ ()

Я так и не понял, где он хранит саму модель. Непосредственно, в БД, как приснопамятный Oracle Designer? В последнем меня жутко раздражала невозможность нормального высокоуровневого экспорта-импорта. Либо генерация кода, либо на печать. Ну и для особых эстетов полный бэкап БД.

Или всё же есть некие файлики (допустим, но не обязательно, XML) с моделями?

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

обилием поддержки pgsql, что есть только в платных аналогах. хотя общая стабильность доставляет

tariel-x ()
Ответ на: комментарий от hobbit

Он хранит модели в специально обученных файлах, содержащих XML. Экспорт в SQL.

tariel-x ()
Ответ на: комментарий от bvn13

Он просто повторяет поля+тип данных при создании generalization, при этом даже не копирую ограничение not null и default.

А при генерации кода просто создает самостоятельные таблицы без использования inherits, соответственно select по родителю не покажет данные из потомка. т.е. это не наследование а инструмент для создания подобных таблиц.

Что делает невозможным секционирование таблиц и аналогичные вещи.

vbv ()

Некрасиво выглядит, что связи показываются не между соответстующими полями, а тупо между таблицами. Сбивает с толку.

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

Дополнение

И вносит наследование путем: ALTER TABLE public.testc INHERIT public.testp;

Но почему нельзя это сделать в create table???

Да, это дает больший контроль над поведением подчиненной таблицы но смысл наследования, на мой взгляд, заключается в дублировании базовой таблицы с дополнением ее аттрибутами как того требует объектное поведение.

Вот если бы еще сам postgres мог бы при наследовании копировать триггера и внешние ключи.... Возможно к 10-й версии научится. :)

vbv ()
Ответ на: комментарий от alienclaster

Тебе нужно, ты и переписывай на любимым тобою языке. А потом трахайся с поддержкой своей переписьки - это же FOSS.

alex-w ★★★★★ ()
Ответ на: комментарий от anonymous

А по-моему все нормально - те, кто не осилил выполнить три простых команды для сборки софтины из сорцов - не принесут проекту в начально стадии ничего, кроме глупых хотелок в стиле «сделайте мне одну кнопку, которая всё будет делать за меня».

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

А как управлять потом файлами, которые выплюнет make install? А что делать, когда потом эта программа появится в репозитории дистрибутива? Вообще в курсе, зачем придумали пакетные менеджеры?

Wizard_ ★★★★★ ()
Ответ на: комментарий от orm-i-auga

DbVisualizer - там наверное функциональность есть на любой случай в любой реляционной БД.

У него та же проблема, что и у pgModeler - это не средство для моделирования (проектирования) баз данных. Сейчас единственный известный мне инструмент, заточенный именно под моделирование - DeZign for Databases, но он намного более платный чем конкуренты. Но он именно экономит время, а не решает проблемы неумения пользоваться PgAdmin'ом.

kt ()
Ответ на: комментарий от Wizard_

Мда. Про /opt не в курсе? Самому пакет сделать не судьба - типа руки из жопы растут, да? Судя по вопросам Вы вообще не в курсе как собирают программы в linux.

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

Они пока меня вообще не убедили, чтобы их софтину ставить даже через пакетный менеджер, а не то чтобы самостоятельно собирать пакет. Reverse Engineering там нет.

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

Зачем тебе Reverse Engineering в инструменте проектирования БД?

alex-w ★★★★★ ()
Последнее исправление: alex-w (всего исправлений: 1)
Ответ на: комментарий от alex-w

Во-первых, мне чаще дорабатывать имеющуюся большую БД приходится. Во-вторых, даже если с нуля что делать, но проект сохранить забыть, оно мне наработки не импортирует и не покажет? Какая-то неудобная хрень.

Да, ещё забыл. Распространять наработки среди коллег тоже через файл данных этой программы? Просто подключиться к базе и импортировать имеющееся они не могут? В общем, смысла не вижу этим пользоваться на проектах сложнее хеллоуворлда, где накидал пару табличек, сделал экспорт и забыл.

Wizard_ ★★★★★ ()
Последнее исправление: Wizard_ (всего исправлений: 1)
Ответ на: комментарий от Wizard_

Во-первых, мне чаще дорабатывать имеющуюся большую БД приходится.

Понятно. Набыдлокодили базу и оказалось, что не так - надо всё переделать.

Во-вторых, даже если с нуля что делать, но проект сохранить забыть, оно мне наработки не импортирует и не покажет? Какая-то неудобная хрень.

Можно подумать, что база у тебя создаётся прямо в инструменте моделирования, без дополнительных телодвижений а-ля нажать кнопку для создания базы. По трудозатратам нажатие этой кнопки эквивалентно нажатию кнопки «Сохранить проект». И каким образом в данном случае тебе поможет Reverse Engineering?

Да, ещё забыл. Распространять наработки среди коллег тоже через файл данных этой программы? Просто подключиться к базе и импортировать имеющееся они не могут? В общем, смысла не вижу этим пользоваться на проектах сложнее хеллоуворлда, где накидал пару табличек, сделал экспорт и забыл.

Судя по всему ты не в курсе, что именно означает фраза «проектирование базы данных».

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

Набыдлокодили базу и оказалось, что не так - надо всё переделать.

Ты, видимо, с большими базами и проектами не работал. Например, у меня есть сейчас в работе база в 68 таблиц и примерно 80 Гб данных. Это веб-сервис, который постоянно развивается, наращивается функционал, поэтому структура периодически меняется.

Судя по всему ты не в курсе, что именно означает фраза «проектирование базы данных».

У меня такое ощущение, что ты над хеллоувордами всё-таки работаешь, поэтому и реверс тебе не нужен.

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

Ты, видимо, с большими базами и проектами не работал. Например, у меня есть сейчас в работе база в 68 таблиц и примерно 80 Гб данных.

Ты считаешь, что это много? Вот когда терабайтную плантку твоя база перейдёт, тогда можно будет говорить о зрелости твоей базы.

У меня такое ощущение, что ты над хеллоувордами всё-таки работаешь, поэтому и реверс тебе не нужен.

Да-да, я же совсем забыл, что нынче можно проектировать базу сразу с третьей стадии, а потом постоянно её перепиливать. Конечно же, таким проектировщикам позарез нужен инструмент, который им подсказывал бы, что они наворотили на предыдущей итерации.

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

нынче можно проектировать базу сразу с третьей стадии, а потом постоянно её перепиливать

Этот упрёк был бы справедлив, если бы изначальная задача не менялась. Но задача-то меняется, в том и дело. Портал развивается, добавляются новые функции, новые возможности для пользователей. Под это всё нужно менять базу, это надо понимать. Вот тупой пример: допустим, мы в профиле пользователя добавляем возможность указать скайп-адрес. Для этого в таблице пользователей добавляем новое поле. Разумеется, на практике задачи сложнее этой, но принцип тот же: решаем внедрить новый функционал, для чего меняем код и базу.

Wizard_ ★★★★★ ()

Отличная штука. Кто-нибудь пробовал связаться с разработчиком?

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

Отрицание нужности запрещено высочайшим повелением.

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