|
Язык конвертации данных | ☑ | ||
---|---|---|---|---|
0
Garykom
гуру
11.07.15
✎
14:41
|
Часто бывает задача переноса/конвертации данных между различными БД.
И если реляционная структура этих БД сильно различается то возникают сложности при переносе. Какие у кого есть идеи насчет некоего простого (легкого в изучении, понятного) но весьма функционального "языка команд/программирования". Допустим при конвертации между реляционными БД используется промежуточная "объектная модель" всех сущностей. И правила в/из для каждой реляционной модели. Пример: База 1. Справочник Контрагенты - Табличная часть контактная информация, для каждой строки указан вид КИ и значение КИ База 2. Справочник Контрагенты - раздельные реквизиты для каждого вида контактной информации в самом справочнике (адрес, телефон и т.д.) Объектная модель. "Контрагент": { "База1Код": "строка_10"; "База2Код": "строка_9"; "Наименование": "строка_250"; "КИ": [ {"ВидКИ": "строка_50"; "ЗначениеКИ": "строка_250" }, {...}, ...]; ... Выходит нужно описание объектной/промежуточной модели командами языка. И затем описание трансформации данных между реляционными и объектной моделями. |
|||
1
Aleksey
11.07.15
✎
14:47
|
Зачем изобретать велосипед?
|
|||
2
Garykom
гуру
11.07.15
✎
14:49
|
(1) колеса "круглее", легче научиться "ездить", быстрее "ездит"
|
|||
3
Aleksey
11.07.15
✎
14:50
|
(2)Это почему помнить все особенности узкоспециализированного языка легче, чем мышкой ткнуть в КД?
|
|||
4
Garykom
гуру
11.07.15
✎
14:52
|
||||
5
Лефмихалыч
11.07.15
✎
15:01
|
Для 1С ест КД, которая решает этот вопрос безо всяких языков промежуточных.
А в принципе язык преобразования данных существует, xslt называется. |
|||
6
Garykom
гуру
11.07.15
✎
15:03
|
(5) абсолютно верно!
хочется нечто подобное но не для xml<>xml, а для БД<>Объектная модель(xml, json etc)<>БД |
|||
7
Garykom
гуру
11.07.15
✎
15:04
|
(6)+ т.е. нечто похожее одновременно и на sql и на xslt
|
|||
8
Aleksey
11.07.15
✎
15:05
|
(4)Я как человек далекий от 3D, не знаю ответ на этот вопрос. Но применив опыт из других областей могу сказать что выбирая между платным продуктом по которому скорее всего есть куча документаций и форумов, и не только от разработчиков и бесплатным продуктом, которые писало сообщество гиков и оно понятно только для гиков, т.е. внятной документации нет, описания куцое и понятное лишь разработчикам и т.п.
Во общем я бы предположил что проще Autodesk_3ds_Max изучить |
|||
9
Garykom
гуру
11.07.15
✎
15:05
|
(5) а насчет КД для 1С, хочется добавить к нему возможность "чисто кодом" правила описывать удобно
|
|||
10
Aleksey
11.07.15
✎
15:06
|
(9) Бери КД 3.0 это как раз то о чем ты просишь
|
|||
11
Лефмихалыч
11.07.15
✎
15:06
|
(6) ни кому не нужная хрень
|
|||
12
Garykom
гуру
11.07.15
✎
15:07
|
(8) если задача "нарисовать 3D модель чего то" и известны "все размеры" то на OpenSCAD это быстрее намного... по крайней мере для программиста
|
|||
13
Wern
11.07.15
✎
15:07
|
Посмотри КД3 там как раз основа это универсальный формат файлов, загрузить/выгрузить из которого можно в любую БД.
Да и в КД есть возможность чисто кодом описывать правила. |
|||
14
Garykom
гуру
11.07.15
✎
15:08
|
(10) КД3 требует поддержки в каждой конфе на уровне "уникального кода"
|
|||
15
Garykom
гуру
11.07.15
✎
15:09
|
(11) спасибо за личное мнение
ЗЫ но я несогласен, как и многие знакомые |
|||
16
Aleksey
11.07.15
✎
15:09
|
(11) +100
(12) Ну это твое мнение. А мое мнение абсолютно противоположное. Это все равно что взять 1С-ника и абапера и спросить на каком языке проще написать новый документ в КИСе |
|||
17
Aleksey
11.07.15
✎
15:10
|
(14) Ну ты же хотел все кодом, вот и получил
|
|||
18
Garykom
гуру
11.07.15
✎
15:10
|
(13) неудобно в КД это и не обязательно "для 1С", требуется для разных БД (реляционных)
|
|||
19
Garykom
гуру
11.07.15
✎
15:11
|
(16) Немного не так, это как взять "студента" с 0 знаний и "по 1С" и "по абапу"
и попросить наваять выгрузку из DBF в MS SQL с разными структурами баз |
|||
20
Aleksey
11.07.15
✎
15:12
|
(18) Для разных БД есть текстовый файл. Я просто понять не могу зачем он нужен твой велоспиед когда есть куча готовых инструментов. Что он позволит сделать? Или просто альтернатива ради альтернативы?
|
|||
21
Aleksey
11.07.15
✎
15:12
|
(19) И он начнет изобретать велосипед, так же как и ты, потому что он в школе изучал Паскаль, а про абап и 1С он ничего не знает
|
|||
22
Garykom
гуру
11.07.15
✎
15:13
|
Ветка сразу начала скатываться в срач и нафейхуа :)
ЗЫ а если вместо "нахрен нужно" и т.д. по теме что предложить? ЗЗЫ или кроме КД ничего не знаем даже банального SQL? |
|||
23
Aleksey
11.07.15
✎
15:15
|
(22) По теме чего? Я тут придумал одному мне нужную хрень, а зачем и нафига я не скажу. Но вы обязательно должны мне накидать годных идей. Так что ли?
Мы и высказываемся по теме. "Нафига козе баян она и так веселая" |
|||
24
Garykom
гуру
11.07.15
✎
15:15
|
(21) не хочется разочаровывать... но в школе я изучал бейсик разных реализаций, турбо паскаль, визуал бейсик и дельфи
затем изучил java, c#, php, js, sql, c++ и еще несколько так ознакомился т.е. почти не писал в отличие от перечисленных |
|||
25
Garykom
гуру
11.07.15
✎
15:16
|
(23) зачем эта "нужная вещь" написано в (0) и (2)...
|
|||
26
Aleksey
11.07.15
✎
15:18
|
(24) Молодец, но к чему ты это?
|
|||
27
Garykom
гуру
11.07.15
✎
15:19
|
(26) к тому что бывают задачи которые удобнее, быстрее и лучше/качественнее решать не "тыкая визуально" а "написав команды/код"
|
|||
28
Aleksey
11.07.15
✎
15:20
|
(25) Там написано, что есть 3 разные базы.
1. Центральная 2,3 Почки Эти базы разные по структуре и содержанию и даже не обязательно на 1С написанные. Нужно написать обмен из 2 в 3 и обратно через базу 1 Я хочу написать универсальную хрень. что мне делать? Я правильно понял посыл? |
|||
29
Garykom
гуру
11.07.15
✎
15:21
|
(27)+ иначе зачем бы во все визуальные системы рисования/черчения/конструирования обязательно встраивают выполнение произвольны скриптов, на своем языке?
|
|||
30
Garykom
гуру
11.07.15
✎
15:21
|
(28) к сожалению, нет
|
|||
31
Aleksey
11.07.15
✎
15:22
|
(27) Так мы о том и толдоним, что нужно начинать не с сферического коня в вакууме а брать готовый инструмент и описывать почему он не подходит, а потом уже о разработке своего велосипеда говорить
|
|||
32
Garykom
гуру
11.07.15
✎
15:22
|
(30)+ базы 1 нету, она "виртуальная"
но да нужно написать обмен между базами 2 и 3 в обе стороны |
|||
33
Aleksey
11.07.15
✎
15:23
|
(29) Потому что правило Закон Парето
|
|||
34
Aleksey
11.07.15
✎
15:23
|
(32) А зачем плодить сущность там где она не нужна?
|
|||
35
Garykom
гуру
11.07.15
✎
15:24
|
(31) подскажите... вот если есть лопата... зачем придумали экскаватор? ведь им же нужно учиться управлять... обслуживать и т.д.
а лопатой "любой умеет" |
|||
36
Aleksey
11.07.15
✎
15:24
|
Зачем "объектная модель" бери КД 3 и ваяй что хочешь
|
|||
37
Garykom
гуру
11.07.15
✎
15:25
|
(36) взял... у меня 1-я база на firebird, а 2-я на линтере... что дальше делать?
|
|||
38
Aleksey
11.07.15
✎
15:27
|
(35) "Дядя Петя, ты дурак?"
Потому что "У каждой пули свое назначение." |
|||
39
Aleksey
11.07.15
✎
15:28
|
(37) Ну для начало а что нельзя организовать прямое чтение без промежуточных файлов?
|
|||
40
Garykom
гуру
11.07.15
✎
15:28
|
(37)+ для начала в каком виде и где хранить кросс-коды (для синхронизации записей/сущностей)
(38) походу Вы сами ответили на свой вопрос (34) |
|||
41
Garykom
гуру
11.07.15
✎
15:30
|
(39) где организовать и на чем? )) у них даже диалекты sql разные предлагаешь писать уникальную программулину?
которая сначала к одной БД запрос - потом к другой БД? или сначала из одной выгружаем в текстовые файлы и потом в другую эти файлы загружаем... ? немного странным не кажется? |
|||
42
Aleksey
11.07.15
✎
15:34
|
(41) Нашел чем удивить. Диалектами
1С легко позволяет обращаться на прямую и к скулю и xls файлу и к базе на firebird и к черту лысому, главное чтобы провайдер был. И диалект совсем не помеха. Народ даже PDF файлы парсит и читает. Так же и firebird может через провайдера обращаться к любым данным. вообще не проблема |
|||
43
Garykom
гуру
11.07.15
✎
15:36
|
(42) да уж... как представлю использование 1С с КД(3) в качестве конвертера между Oracle и IBM DB2... причем для постоянного онлайн обмена (налету) в обе стороны... так сразу "хорошо на душе" :)
|
|||
44
Aleksey
11.07.15
✎
15:37
|
(43) см (38)
Особенно "У каждой пули свое назначение" |
|||
45
Garykom
гуру
11.07.15
✎
15:38
|
(42) а не проще ли изучить 1 небольшой упрощенный специализированный язык и затем его везде юзать, чем учить каждые особенности разных движков БД?
|
|||
46
Aleksey
11.07.15
✎
15:39
|
Не бывает универсального инструмента на все случае жизни. Есть инструменты наиболее подходящие для решения конкретной задачи. Ни кто не будет внедрять ERP 2.0 там где нужен простой складской учет (приход/расход)
|
|||
47
Garykom
гуру
11.07.15
✎
15:39
|
(44) хорошо, моя понять Ваше личное мнение.
|
|||
48
Garykom
гуру
11.07.15
✎
15:40
|
(46) ...
|
|||
49
Aleksey
11.07.15
✎
15:41
|
(45) Нет не проще, потому что закон Парето.
Ты за 20% времени покроешь 80% функционала. А на оставшие 20% ты будешь тратить 80% своего времени, вместо того чтобы взять специализированный инструмент и сделать это всё в 10 раз быстрее |
|||
50
Garykom
гуру
11.07.15
✎
15:44
|
(49) этот закон действует и в обратную сторону!
и чтобы решить 20% оставшегося функционала Вы своими методами затратите 80% времени... вместо того чтобы взять специализированный инструмент типа (0) |
|||
51
Aleksey
11.07.15
✎
15:44
|
(48) 1С-ник не будет изучать твой инструмент, потому что у него есть 1С и наработки. Ему проще взять 1С и написать обмен на 1С, даже если нужен обмен из Oracle и IBM DB2
Тоже и абапер. У него свои наработки, он напишет на своем языке и никогда не будет изучать твой Твоя программа нужна для студента, который ничего не знает. Ему проще изучить какой то универсальный механизм, чем куча специализированных |
|||
52
Aleksey
11.07.15
✎
15:46
|
(50) А вот поэтому "...во все все визуальные системы рисования/черчения/конструирования обязательно встраивают выполнение произвольны скриптов, на своем языке..." чтобы покрыть эти 20%
|
|||
53
Garykom
гуру
11.07.15
✎
15:46
|
(51) спасибо, я уже понял ;)
и насчет надо ли мне это прошу за меня не решать... как и за неких "1С-ник не будет" и "Тоже и абапер" :D |
|||
54
Aleksey
11.07.15
✎
15:47
|
т.е. я из 1С смогу вызвать процедуры и методы другого языка
|
|||
55
Garykom
гуру
11.07.15
✎
15:48
|
(52) где в моих постах виден отказ вставить графическую хре....ну аналогично чтобы покрыть кого надо, как надо и когда надо ))
|
|||
56
Garykom
гуру
11.07.15
✎
15:49
|
действительно смешно когда "настоящий 1С-ник" ... ))
|
|||
57
Drac0
11.07.15
✎
16:10
|
(22) Во взрослому интеграция должна идти с участием MDM-систем и интеграционного пространства. Как обмен будет идти в индивидуальных случаях - пофиг. Но мне больше понравился веб-сервис с описанием типов через XDTO.
|
|||
58
Индиго
11.07.15
✎
16:16
|
до смешного доходит- до чего люди не хотят учить КД. Готовы свой земной шар изобрести с цивилизациецией -только бы не это
|
|||
59
Garykom
гуру
11.07.15
✎
16:17
|
(57) MDM - это хорошо! Только вот отсутствие любых стандартов это плохо :(
а насчет веб-сервисов и XDTO это уже частности реализации, но ручками xml писать это помереть можно. "Визуальный конструктор" тут сильно поможет, но хочется добавку к нему (или наоборот основное это как посмотреть) в виде "языка программирования" |
|||
60
Garykom
гуру
11.07.15
✎
16:19
|
(58) КД2 знаю, КД3 посмотрел и понял что пока рано (хотя идеи неплохие заложены, надеюсь не будет как обычно с реализацией)
ЗЫ где в ветке я хоть раз сказал что нужно для 1С ? |
|||
61
Aleksey
11.07.15
✎
17:14
|
(60) Как минимум хотя бы то что ветка находиться на форуме 1С-ников. И По дефолту все понимают что речь о 1С. Тем более в (0) не слово о том что речь не об 1С. Не так ли?
|
|||
62
Garykom
гуру
11.07.15
✎
17:17
|
(61) спасибо КЭП!
|
|||
63
Garykom
гуру
13.07.15
✎
14:05
|
С созданием промежуточных объектов проблем нет можно по аналогии с SQL:
CREATE OBJECT Kontragent( DB1Code string, DB2Code string, Name string, KI arrayof (...) ); Траблы с тем как сопоставление данных между БД - Объектная модель указывать, с некими правилами конвертации в обе стороны |
|||
64
Гёдза
13.07.15
✎
14:11
|
(0) Ты идешь по пути КД 3.0
Там это уже реализовано |
|||
65
Garykom
гуру
13.07.15
✎
14:18
|
(64) again 25
ЗЫ это не для 1С... а для "реляционных бд" |
|||
66
Garykom
гуру
13.07.15
✎
14:20
|
(65)+ с различными ORM и JPA знаком, работал/юзал
хочу расширение для удобной конвертации, точнее чтобы можно было быстро и понятно другим сделать эту конвертацию и если что поправить |
|||
67
Гёдза
13.07.15
✎
14:22
|
(65) Те ты хочешь свою КД3 для любых реляционных данных?
Не всегда есть прямое соответствие между данными, иногда приходится код писать |
|||
68
Garykom
гуру
13.07.15
✎
14:26
|
(67) Да.
Согласен но хочу чтобы код было "легче писать", в неком стиле sql но с объектами |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |