|
|
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим НИдея интересная, но думаю перебор, по крайней мере пока. Контроль имён объектов в тулзе - тоже перебор Как и все остальные фичи данного тулза? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 13:09:29 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим Н, а все остальные фичи как то растекаются на кучу говорильни. Я никак не пойму, как первокласснику на ней работать. Т.к. объять всё и вся - невозможно. Теория разработки-управления проектом - хромает. Есть прецендент : "Я исправил 50 процедур сегодня и 20 завтра для решения Фича_N". Как на тулзе это выглядит? 1. Исправил сегодня - ИЗМЕНИВ в CREATE TABLE поле INN: char(25) на char(45) - как ЗАВТРА сделать UPDATE ver2.2 по фиче Фича_N - по прежнему - "накатить" непонятно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 13:26:52 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
2) для управления деплоем разработок (которые выглядели как папочки в версионнике) работала тулза - установщик пакета на окружение, она проверяла зависимости от ядерных объектов, раскладывала что и куда нужно, накатывала пакеты и тд. Она тоже смотрела. Та тулза была перловым скриптом. без нее ничего никуда не ставилось. Разработка сопровождалась непременно историей изменений и материалами требований, которые покрывались изменениями. Поэтому всегда было довольно просто найти, кто наследил. ... У тебя подход такой - это утилита IDE для наставника. А эта утилитаIDE для новичка? Или в организации никто не знает что такое хранимка, как её назвать...и тут наша утилита это поможет? ... Контроль имён объектов в тулзе - тоже перебор Я так подозреваю, что как раз это всё и нужно реализовать. Тулза для деплоя, как для боевого, так и для любого другого тестового сервака, с гибкой формировалкой пакетов, с полным контролем и т.д. При этом нужен инструментарий для конфигурирования, а также ещё и какие-то дополнительные помогалки в IDE для манипулирования "прикладными объектами" в дополнение к БД-объектам. А в идеале, чтобы ещё на этапе программирования какой-нибудь умный Эклипс подчёркивал не только проблемы SQL, но и говорил, мол ты с именем процедуры накосячил (несмотря на то, что оно вводилось частично на основании настроенных шаблонов). Имхо, в рамках корпоратива вполне может быть востребовано (ну а "деплой", в принципе, просто необходим), и даже быть ресурсы для таких разработок. Но насколько универсально это можно реализовать, в рамках для широких масс, сомнительно. Поэтому пока все и вынуждены сами себе свои перлы мастерить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 13:29:52 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим Нно тоже вполне решаемо при необходимости (скрипт отката и все такое). круто ты. Замах на решение кучи проблем. А конкретные вещи правки 4000 процедур у тебя не решаются. - нужны писать 3 варианта самому: - накат - откат - update ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 13:31:33 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
PSV100Я так подозреваю, что как раз это всё и нужно реализовать угу. В одиночку: Сборка, Генерация скриптов, Парсер, Контроль имён, ГУИ, автодополнения и шаблоны. Т.е. это не IDE, а ERP. Как тут говорилось - пусть пишет, в собственное удовольствие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 13:38:37 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
PSV100, off какой вам нужен бюджет и сроки на реализацию этого проекта мечты? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 13:42:40 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим НVladimir Baskakovпропущено... Я бы делал пустые таблички, которые можно править в иде, и переносил бы их стр-ру в ЕАВ пиэль-скуль-процой. "Это и охота, и зверей убивать не надо" (c) Простоквашино Вариант интересный конечно, но только чисто теоретически, т.к. на самом деле все сложнее. Специфические типы данных могут быть, связи, наследования и прочие понты. Могут быть или есть? Это как на военной кафедре - ==идете Вы по чистому полю, ни кустика, ни кочки, ни чахлой березки. И тут на Вас из за угла - танк==. Для начала нужно понять, к чему сам этот ЕАВ. От него больше вреда или пользы. Большая база на такой архитектуре будет вероятно архилетать. Код будет устойцивый такой. Дропнул поле - пакеты слетели, дропнул атрибут - все делает вид что работает. Пока не придет туда, куда. Это ли не счастье! «Простые вещи должны оставаться простыми, а сложные — стать выполнимыми» - Ларри Уолл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 14:09:29 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123PSV100Я так подозреваю, что как раз это всё и нужно реализовать угу. В одиночку: Сборка, Генерация скриптов, Парсер, Контроль имён, ГУИ, автодополнения и шаблоны. Т.е. это не IDE, а ERP. Как тут говорилось - пусть пишет, в собственное удовольствие. Petro123PSV100, off какой вам нужен бюджет и сроки на реализацию этого проекта мечты? ) Не-не-не, спасибо, с такими вопросами к Ораклу :) Это он может запросто нагнуть своей "Р-технологией" в рамках своих ERP и около них. Будет полная ERP-IDE, от сих до сих. Возьмёт Эклипс, перенаворотит, куча талмудов, видео, курсы, консультанты, внедренцы... При этом по-прежнему даже элементарных макросов для текстового редактора так и не сделает (стандартных, без сторонних полуработающих костылей), типа умная IDE, эмакс нового тысячелетия, всё сделает за вас сама, не мешайте ей, а наслаждайтесь. Или возьмёт ещё раз тот же Эклипс, слепит новый "девелопер" для своей СУБД, будет учить своим стандартам, тут файлики по табличкам, там пакетики и т.д., обязательно их в СКВ. А для работы с этими файлами кроме как ручной экспорт/импорт, фактически, ни фига, несмотря на мощнейшую платформу для этого из коробки. А свою "наколенную ERP" уже пытались поднять второй раз на новой платформе, пока нет ни ресурсов, ни настроения. А, вообще, вся эта ERP-муть уже достала выше крыши, и нет никакой мечты. Чего бы хотелось, так это просто работать, в спокойной обстановке, в каком-нибудь удобном редакторе а-ля sublime, с адекватными помогалками, вместо одновременной пачки IDE и сопутствующего софта, иногда действительно получая удовольствие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 15:34:40 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
PSV100с такими вопросами к Ораклу если сравнить админство сиквела и оракла, то виден совершенно разный подход. - MS за ГУИ, визуальность и IDE, Каждой домохозяйке-БД - Оракл за чёрный экран, скрипты и БД для профи-админов с большой зарплатой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 15:48:46 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Vladimir BaskakovМаксим Нпропущено... Вариант интересный конечно, но только чисто теоретически, т.к. на самом деле все сложнее. Специфические типы данных могут быть, связи, наследования и прочие понты. Могут быть или есть? Это как на военной кафедре - ==идете Вы по чистому полю, ни кустика, ни кочки, ни чахлой березки. И тут на Вас из за угла - танк==. Для начала нужно понять, к чему сам этот ЕАВ. От него больше вреда или пользы. Большая база на такой архитектуре будет вероятно архилетать. Код будет устойцивый такой. Дропнул поле - пакеты слетели, дропнул атрибут - все делает вид что работает. Пока не придет туда, куда. Это ли не счастье! «Простые вещи должны оставаться простыми, а сложные — стать выполнимыми» - Ларри Уолл. Хорошо или плохо использовать EAV, это уже совершенно другой вопрос (не менее острый, кстати если интересно то свежие баталии в соседней ветке - http://www.sql.ru/forum/1020938/hranenie-dannyh-s-gibkoy-strukturoy-i-zaprosy-k-nim). Во многих конторах EAV есть, и его очень много (в частности в моей тоже, поэтому говорю далеко не по наслышке). Ну а если он (EAV) уже есть, то можно его код вот так вот организовать, для того чтобы проще с ним справляться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 20:06:26 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123а все остальные фичи как то растекаются на кучу говорильни. Я никак не пойму, как первокласснику на ней работать. Т.к. объять всё и вся - невозможно. Теория разработки-управления проектом - хромает. Согласен, у меня у самого только начинает это дело потихоньку устаканиваться. Просто есть некий набор хотелок и идей, причем довольно конкретно, а вот как это все грамотно реализовать (или не реализовать, а найти готовое решение), с этим возникают сложности. Намек понял, набросаю список функционала (имеющегося и планируемого), можно будет конкретно потыкать. Petro123 Есть прецендент : "Я исправил 50 процедур сегодня и 20 завтра для решения Фича_N". Как на тулзе это выглядит? 1. Исправил сегодня - ИЗМЕНИВ в CREATE TABLE поле INN: char(25) на char(45) - как ЗАВТРА сделать UPDATE ver2.2 по фиче Фича_N - по прежнему - "накатить" непонятно) Примерно так (я это пока не делал, но думаю): Код: powershell 1. В итоге, в заранее определенном месте (в папке, в файле, в части файла) определяется место для хранения скриптов версии 2.2. Ну или никто не мешает самому создать этот файл-папку(или сделать это другими средствами), или выделить место (например спец. комментариями) в файле, но потем правилам, которые заданы в конфиге, чтобы потом можно было автоматизировать. Затем я набрасываю туда альтерящие скрипты(скрипт) для версии. Причем порядок их дальнейшей сборки (очередность выполнения в базе) можно определить абсолютно по разному (может быть даже отдельно для каждого патча), например тупо по дате создания, или по алфавиту, или по какой либо специальной, заранее настроенной и определенной маске (например сначала файлы в именах или самом содержимом, которых есть слово "ALTER TABLE", затем "CREATE OR REPLACE PACKAGE" и т.д.), в зависимости от того как приянто в коллективе. Например закидываем туда (прямо ручками, например выгружаем из ИДЕ'шки) уже готовый ваш альтер, а потом впоминаем, что есть зависимые уже исправленные пакеты под этот альтер: Код: powershell 1. Получаем в файлах патча 2.2 новый файлик, в котором собраны все пакеты из модуля "ЗП", изменившиеся с 1-го июня. Причем еще доступны опции сборки всех объектов воедино (которые так же можно и нужно гибко настроить, т.е. например сначала идут head, а затем body), ну вплоть до того, что на выходе можно получать готовые, оформленные ликвибейсовские чейнджсеты. А затем закрываем патч: Код: powershell 1. Примерно так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 20:51:59 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим Нно тоже вполне решаемо при необходимости (скрипт отката и все такое). круто ты. Замах на решение кучи проблем. А конкретные вещи правки 4000 процедур у тебя не решаются. - нужны писать 3 варианта самому: - накат - откат - update А какой именно проблеме сейчас говорится (а то слегка запутался)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2013, 20:53:41 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим НPetro123пропущено... круто ты. Замах на решение кучи проблем. А конкретные вещи правки 4000 процедур у тебя не решаются. - нужны писать 3 варианта самому: - накат - откат - update А какой именно проблеме сейчас говорится (а то слегка запутался)? Почитай про Прецеденты, ВИ (варианты использования). Тогда не будет столько много текста в топике. Т.е. я при разработке поправил скрипт Create - как получить "альтящиеся" скрипты и "откатные" скрипты по твоей терминологии. Их автоматом получить не просто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 10:20:56 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Т.е. я при разработке поправил скрипт Create - как получить "альтящиеся" скрипты и "откатные" скрипты по твоей терминологии. Их автоматом получить не просто. Алтерящие скрипты могут сделать ИДЕ-шки и тулзы специальные, я обычно делаю альтер руками и закидываю его в версию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 10:58:09 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим Н, теперь ясно. - ты поправил надцать скриптов с пометками версии и сразу "в паре" тут же пишешь ALER на все эти правки. Я это и спрашивал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 11:26:08 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим Н, теперь ясно. - ты поправил надцать скриптов с пометками версии и сразу "в паре" тут же пишешь ALER на все эти правки. Я это и спрашивал. Да. Либо хранить альтеры таблицы отдельно от самих исходных скриптов таблиц, например в миграционных скриптах, где все до кучи для версии, а потом можно будет "собрать" в один итоговый скрипт таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 12:23:11 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим Н, теперь ясно. - ты поправил надцать скриптов с пометками версии и сразу "в паре" тут же пишешь ALER на все эти правки. Я это и спрашивал. Да. Либо хранить альтеры таблицы отдельно от самих исходных скриптов таблиц, например в миграционных скриптах, где все до кучи для версии, а потом можно будет "собрать" в один итоговый скрипт таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 12:34:20 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим Н, ну теперь можно написать ВИ: 1. Исправил 15 скриптов CREATE с пометкой аннотациями? вер.2.2 2. Создал 15 новых скриптов с ALTER'ами в папке? вер.2.2 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 12:41:07 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим Н, ну теперь можно написать ВИ: 1. Исправил 15 скриптов CREATE с пометкой аннотациями? вер.2.2 2. Создал 15 новых скриптов с ALTER'ами в папке? вер.2.2 ? Да, или просто: 1. Создал 15 новых альтеров с антотациями в патчевой папке, или в одном патчевом-файле Заем набрал команду для конкретной таблицы и увидел ее исходный DDL и все историю ее изменения по версиям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 12:51:28 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим Н, это уже ближе к Java. - аннотации или XML конфиг или? - аннотации свои придуманные вместе с парсером? - что делать с маппингом на Java этой генерилки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 12:59:08 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим Н, это уже ближе к Java. - аннотации или XML конфиг или? - аннотации свои придуманные вместе с парсером? - что делать с маппингом на Java этой генерилки? - я думал об анотациях, но предвариательно описанных в xml-конфиге каждого проекта (лежащего где нибудь в корне файловой структуры проекта), т.е. каждый объект версии разделяется такими анотациями, помечается какими то комментариями, вплоть до того, что каждый альтерящий скрипт может быть офрмлен сразу в ликвибейсовский чейнджсет. - как уже говорил в 1-м пункте, описанные в конфиге - насчет маппинга не уверен, как это может выглядеть? Я думал как о чем то специализированном для БД, управление структурой, на выходе можно получать любого вида код и скрипты (как миграционные, так и скрипты наката, заполненеия справочников, тестовые данные, пересоздание объектов, юнит-тесты и т.д.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 14:10:20 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Максим Н, - попробуй....IMHO может получиться слишком сложный "конфиг в корне" - не понял...ну да ладно... - на Java-хибере писал? Ты делаешь упралятор_БД оторванно от Java. Я придерживаюсь цикла разработки по линейке: - UPD_БД ---> UPD_Маппинг ---> UPD_БЛ ---> UPD_ГУИ ---> UPD_Доки и обучение. IMHO Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 14:22:23 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим Н, это уже ближе к Java. - аннотации или XML конфиг или? - аннотации свои придуманные вместе с парсером? - что делать с маппингом на Java этой генерилки? - я думал об анотациях, но предвариательно описанных в xml-конфиге каждого проекта (лежащего где нибудь в корне файловой структуры проекта), т.е. каждый объект версии разделяется такими анотациями, помечается какими то комментариями, вплоть до того, что каждый альтерящий скрипт может быть офрмлен сразу в ликвибейсовский чейнджсет. - как уже говорил в 1-м пункте, описанные в конфиге - насчет маппинга не уверен, как это может выглядеть? Я думал как о чем то специализированном для БД, управление структурой, на выходе можно получать любого вида код и скрипты (как миграционные, так и скрипты наката, заполненеия справочников, тестовые данные, пересоздание объектов, юнит-тесты и т.д.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 14:24:58 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Petro123Максим Н, - попробуй....IMHO может получиться слишком сложный "конфиг в корне" - не понял...ну да ладно... - на Java-хибере писал? Ты делаешь упралятор_БД оторванно от Java. Я придерживаюсь цикла разработки по линейке: - UPD_БД ---> UPD_Маппинг ---> UPD_БЛ ---> UPD_ГУИ ---> UPD_Доки и обучение. IMHO Удачи! - возможно, но планируется сделать его преднастроенным, с оптимальной структурой, но если не устроит, то можно переделать под себя - с хибером было, дело, мысль понял. Можно предусмотреть такой вариант, например выводить список альтеров в спец. виде по каждому патчу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2013, 14:30:17 |
|
||
|
Выбор СУБД для небольшой Java-утилиты
|
|||
|---|---|---|---|
|
#18+
Немного доработал тулзовину, если кому интересно заходите в соседнюю ветку, чтобы здесь дальше не оффтопить: http://www.sql.ru/forum/1005902/tulza-dlya-raboty-s-ishodnikami-bd ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2013, 20:50:51 |
|
||
|
|

start [/forum/topic.php?fid=59&startmsg=38288209&tid=2129029]: |
0ms |
get settings: |
17ms |
get forum list: |
24ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
40ms |
get topic data: |
21ms |
get forum data: |
5ms |
get page messages: |
90ms |
get tp. blocked users: |
3ms |
| others: | 277ms |
| total: | 489ms |

| 0 / 0 |
