Nano Hash - криптовалюты, майнинг, программирование

Как повысить скорость при создании документации

TL; DR: каким образом я могу автоматизировать процесс извлечения информации из сопоставлений и рабочих процессов PowerCenter, чтобы не копировать и вставлять каждое поле по одному.

Я хотел бы попросить помощи у людей, у которых больше опыта, чем у меня, с этим инструментом, потому что, спрашивая в моем офисе, методология примерно такая:

1) Возьмите предыдущий, «правильно» отредактированный документ, который описывает сопоставление, и перейдите по разделам, редактируя все, что было написано, следующим образом (я приведу пример):

2) Откройте конструктор / диспетчер рабочего процесса, локализуйте соответствующее сопоставление / рабочий процесс, перейдите к каждому входу, откройте его, скопируйте его имя, перейдите в документ Word, вставьте, перейдите в конструктор, скопируйте описание, вернитесь и вставьте его, и сделайте это для каждого входа и выхода для сопоставления.

2.5) Затем перейдите к соответствующему сеансу, скопируйте каждый раздел один за другим в Word (описание, свойства, компоненты, все, что там есть). Затем скопируйте каждый из параметров, используемых для сопоставления, создайте таблицу, вставьте информацию и продолжайте в том же порядке от 30 до 90 страниц.

Моя идея до этого момента: я выгружаю отображение и рабочий процесс в виде XML-файла в файл, открываю его с помощью блокнота ++, создаю сценарий или несколько сценариев, которые автоматизируют извлечение полезной информации из xml насколько это возможно. При таком подходе есть несколько проблем:

  1. Объема и разнообразия информации в xml достаточно, чтобы сделать проблему нетривиальной.
  2. Я недостаточно опытен, чтобы сделать это легко. Полное решение, если возможно, заняло бы часы / дни / недели, поэтому я думал о том, чтобы начать с небольших задач и либо объединить то, что мне удается получить со временем, либо сделать их более надежными, но это может быть не самый эффективный подход. .

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

Изменить: я добавляю следующую информацию, которую я нашел, но не проверил (не уверен, что когда-либо смогу, поскольку компьютеры имеют очень ограниченный доступ к обеим программам и Интернету, но если какой-либо последний вариант сработает, я может предложить это, и если кто-то еще это увидит, это может оказаться полезным для кого-то еще). На данный момент я не думаю, что кто-то решит проблему, но могу ошибаться.

Различные варианты, найденные в разных обсуждениях на официальных форумах Informatica:

-ICC-утилита для получения источников и целей, она может автоматически анализировать HTML -> она должна иметь возможность делать что-то для визуализации. Его также можно использовать как средний шаг

-Простой способ получить порт ввода и вывода - прочитать сгенерированный xml поиск по тегу CONNECTOR и отфильтровать по вашему отображению. Это предоставит вам полный список от FROMFIELD FROMINSTANCE до TOFIELD TOINSTANCE.

-Вы можете получить взаимосвязь внутри маплета, если отфильтруете по имени маплета вместо сопоставления.

-Informatica Metadata Manager (MM), который генерирует автоматическую документацию по привязке для всех сопоставлений PowerCenter от источника к цели, включая привязку хранимых процедур Oracle или PL / SQL. Эта функция встроена в Advanced Edition Power Center.

-Вы также можете использовать PowerCenter Mapping Architect для Visio.


  • Эй, у меня был точный мыслительный процесс, и несколько лет назад я построил инструмент на основе VB для создания документации из XML-файла сопоставления Informatica. Он довольно хорошо работает с самыми простыми и умеренно сложными картами. Он выводит Excel с сопоставлением исходных и целевых столбцов со всей логикой преобразования. Однако у него есть определенные ограничения, например извлечение логики из сложных преобразований. 22.03.2017
  • Я столкнулся с аналогичной проблемой, но на уровне рабочего процесса. Я подумывал написать код Java для анализа XML. Однако в моем случае это было очень сложно выполнить, так как в некоторых местах у меня был встроенный запрос, написанный в задачах Pre / Post SQL, в некоторых местах запрос разделов был другим для каждого раздела и т.д. случаев в коде было сложно, поэтому я потратил некоторое время и сделал это вручную. 23.03.2017
  • @Samik - у тебя случайно есть этот инструмент сейчас с собой? 23.03.2017
  • @Utsav, но не могли бы вы сказать, что сочетание обоих методов было бы полезным? Вчера я потратил некоторое время на чтение о синтаксическом анализе XML, одним из вариантов действительно была бы Java. Так что, может быть, даже если не во всех возможных случаях (я даже не знаю, сколько их может быть, но я полагаю, по крайней мере, несколько десятков), это может забрать часть основной массы? На это я надеюсь, но с другой стороны, я также опасаюсь, что это немного примитивно для такого количества информации. 23.03.2017
  • @Samik по твоему опыту, стоило ли оно того? Вы научились делать что-то по-другому, или у вас есть какой-нибудь совет, если бы я попробовал выполнить задачу с нуля? 23.03.2017
  • @monkeyintern Да, усилия определенно того стоят. Сейчас он используется в нескольких проектах и ​​аккаунтах в моей компании. Я до сих пор использую его, когда мне приходилось анализировать или просматривать сопоставление, разработанное кем-то другим, или когда мне нужно было найти зависимость (другая функция). Это небольшой инструмент (около 2500 строк кода) на VB. Если вы начнете создавать что-то подобное, вы должны сначала хорошо понять XML-схему сопоставления. Кроме того, вы должны позаботиться о многоразовых преобразованиях, которые остаются за пределами тега ‹mapping›. 23.03.2017
  • @Utsav Я бы не стал делиться этим прямо сейчас из-за политики компании. Тем не менее, я работаю над подобным решением с открытым исходным кодом на Java, и я надеюсь опубликовать его публично в ближайшие месяцы. 23.03.2017
  • monkeyintern - Да, я с тобой согласен. Выполняйте объемную обработку с помощью инструмента, а затем при необходимости используйте ручной ввод. @Samik - Жду этого с нетерпением :) 23.03.2017

Ответы:


1

Вот что я использую: https://marketplace.informatica.com/solutions/xml_analyzer

И онлайн-версия: http://powercenter-xmlanalyzer.appspot.com/

Живая версия не сможет анализировать большие и сложные XML-файлы, так как это размещенный сайт с довольно строгими ограничениями.

23.03.2017
  • Вау, это выглядит многообещающе !!! Теперь включите, чтобы получить разрешение на его установку ... Может быть, вы знаете какое-нибудь место, где могут существовать скриншоты, показывающие результат, чтобы показать его моему боссу в качестве доказательства? Большое спасибо! 23.03.2017
  • Какие скриншоты ты имеешь в виду? Онлайн-версия является активной, вы можете проверить образец отчета (powercenter-xmlanalyzer.appspot.com/xmlAnalyzerSample) или просто кинуть на него какой-нибудь фиктивный XML. Дай мне знать, если тебе что-нибудь понадобится. 23.03.2017
  • Нет, как некоторые страницы показывают демонстрации или видео, инструмент работает. Я не могу получить доступ к странице, которую вы предоставили с работы, но спасибо за ссылку, очень полезно знать, что она существует 24.03.2017

  • 2

    Я согласен с форумом Informatica ... почему бы просто не сделать сопоставление для чтения в извлеченном xml и выплеснуть нужные разделы в плоский файл, или, что еще лучше, создать полный раздел документа, который вам нужен, а затем просто вырезать и вставить один раз

    23.03.2017
  • Что касается первой части, я не уверен (и у меня нет достаточного опыта), хватит ли одного сопоставления. В документации не всегда одни и те же поля или одни и те же требования, поэтому она должна быть либо очень сложной / сложной, либо учитывать множество разных вещей. Что касается второй части, аналогично, я не знаю, как решить эту проблему, поскольку разделы документа не зависят от меня и есть несколько разных (например, у одного wf может быть только база данных (STG ), в то время как у других есть это и DWH, такие вещи). 23.03.2017
  • 2) Для имен и описаний входов и выходов достаточно сопоставления xml, и вы можете извлечь всю информацию в пару блоков, готовых для вставки. 2.5) Для получения информации из сеанса с использованием XML рабочего процесса конфигурация сеанса по умолчанию отображается в одном красивом аккуратном разделе, и любые переопределения уровня сеанса появляются в затронутом сеансе, который был переопределен для этой конфигурации. Параметры все вместе в другом блоке - извлеките xmls рабочего процесса / сопоставления и попробуйте. Проблема в том, что в этих усилиях нет смысла, если ваши требования не согласованы. 24.03.2017
  • Да, чем больше документов я делаю, тем меньше вижу, каким образом я мог бы преобразовать необработанную информацию во что-то более полезное для меня. Последний пункт о последовательности решает все. Возможно, со временем я найду более абстрактный способ решения этой проблемы: S 24.03.2017
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

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

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..