На основе вашего фактического опыта, технический документ или другого уважаемого справочного исследования, является ли F # в настоящее время жизнеспособным инструментом для отчетов корпоративного/корпоративного уровня?
Внимание: перед голосованием, чтобы закрыть этот вопрос как "не конструктивный", пожалуйста, прочитайте бит внизу.
Фон
В настоящее время я работаю в крупной корпорации, которая активно использует множество различных инструментов отчетности, включая (но вряд ли ограничивается) SAS, Cognos, SSRS и даже хорошее изложение COBOL. Каждый инструмент имеет свое законное место, и многие из них в большинстве случаев эквивалентны в наборе функций и т.д. Большинство наших инструментов могут легко выводиться в PDF, Excel и базы данных и в этих случаях прекрасно работают.
К сожалению, моя организация, как и многие другие, использует электронные таблицы Excel, любит ее или ненавидит, мы тратим много часов на то, чтобы использовать консольные приложения .NET для извлечения информации и вставки информации в электронные таблицы Excel. (Мне не интересно спорить о достоинствах или недостатках этого подхода. Это то, что есть, и я не могу изменить его.)
Как и технологии отчетности, перечисленные выше, они падают, когда речь заходит о передовых ETL от или в электронных таблицах. Они просто не были разработаны для этого, и хотя они отлично умеют форматировать отчет в виде таблицы Excel, они не очень хорошо обновляют существующую таблицу или извлекают данные определенным образом (извлекайте только значения, выделенные красным цветом, например). Поэтому мы заканчиваем тем, что пишем LOT консольных приложений .NET, чтобы сделать этот бит. (Опять же - не заинтересован в обсуждении подхода. Это то, что есть. Я знаю - мне тоже это не нравится.)
.NET - это, на мой взгляд, фантастическая структура и достаточно гибкая, чтобы обрабатывать практически любую задачу программирования, поэтому мы могли бы теоретически обрабатывать всю отчетность в .NET. Но - попытка обрабатывать всю отчетность в .NET занимает слишком много времени. Мы должны сами написать весь материал. Мне нравится использовать силу, простоту и надежность существующих инструментов отчетности, которые у нас уже есть.
Итак, мы заканчиваем тем, что пишем два приложения для одной задачи - например, задание SAS для загрузки данных из нескольких источников данных, выполняем преобразования и сохраняем результат в постоянном или временном местоположении, а второй .NET чтобы получить результаты и загрузить их в таблицу. (Я знаю.)
Точка
В последние пару лет я много слышал и слышал о F #, и я немного потрудился в этом. Я изучил OCAML в колледже, и мне нравится функциональное программирование. Когда вызывается, я хотел бы сделать все программирование для конкретного отчета на одной платформе (если не на одном языке). Однако вопрос заключается в том, готов ли язык F # и .NET Framework к отчетности на уровне предприятия - и я говорю о том, что должен работать точно и эффективно. Microsoft, безусловно, продает его трудно, но я хочу знать, действительно ли кто-то, кто имеет опыт работы в других технологиях отчетности, попробовал это в производственной среде. Как он сравнивается с другими технологиями отчетности и может ли он легко интегрироваться в корпоративную среду? Как вы обращались к безопасности? Правильно, какой профиль памяти требуется F # (мы говорим миллионы записей)? Хорошо ли он обрабатывает табличные данные? Это эффективно? Насколько легко его поддерживать (особенно, если код растет)? Какие сторонние надстройки, плагины и т.д. Необходимы для того, чтобы что-то работать (или он может делать все, что угодно)? Сколько работы (часы программирования и т.д.) Требуется по сравнению с другими системами отчетности (для аналогичных результатов)?
Если у вас нет опыта работы с F # или если вы используете только F #, то меня не интересует ваше мнение - я бы хотел услышать от тех, кто действительно преодолел этот пробел и может связать, по опыту, возможности и недостатки в использовании F # в качестве механизма отчетности для больших данных (миллионы записей, выводимых в различные форматы).
Я видел несколько вопросов, которые уже охватывают некоторые из этих оснований:
- Статистические функции F # (или библиотек .NET)
- Ваш опыт работы с Matlab/F #/R для анализа данных и алгоритмов моделирования
Но им уже несколько лет. Несколько версий позже, F # до задачи? Или я собака лаем по неправильному дереву?
ИЗМЕНИТЬ
Просто для ясности я особенно заинтересован в F # new информационно-насыщенном программировании. До F # 3.0 это была просто интересная технология, но F # недавно добавленные возможности для использования поставщиков типов баз данных и выражения запроса выглядят так: жизнеспособной альтернативой другим технологиям создания отчетов. Microsoft, безусловно, предлагает.
Допустимый ответ будет содержать учетную запись первого лица (или ссылку на документированное тематическое исследование) внедрения механизма отчетности на уровне предприятия, построенного в F #, и сравнения с другой технологией отчетности любого прирост производительности или потери и т.д. Это не должно быть слишком подробным - достаточно, чтобы убедить среднего (компетентного) менеджера, что F # будет подходящей/неподходящей технологией для обработки объемных/пакетных данных. Это сделано? Кто сделал это? Каковы были результаты? Насколько сложной была реализация (по сравнению с аналогичными технологиями)? Он хорошо работает?
Почему я задаю субъективный вопрос?
Как и большинство лучших участников stackoverflow, я часто голосую, чтобы закрыть субъективные вопросы. Согласно FAQ, следует избегать субъективных вопросов, но они не запрещены полностью. Часто задаваемые вопросы о ссылках на шесть рекомендаций по большим субъективным вопросам, которые я попытался выполнить. Пожалуйста, прочитайте эти рекомендации перед голосованием, чтобы закрыть этот вопрос.