Roman Serebrak
Победившая ставка- Проекты 44
- Оценка -
- Рейтинг 1 816
Бюджет: 3000 UAH Срок: 5 дней
Как я вижу :
1. Нужно приобрести хостинг с MySql или MsSql
2. На хостинге создать базу данных, куда будут складываться записи с Prozorro по тендерам
2. Создать фоновый срипт, который по расписанию будет запускаться и загружать новые записи в БД.
Примерно так я вижу
Бюджет: 1000 UAH Срок: 1 день
Добрый день . Можно попробовать несколько вариантов получения данных.
Думаю, лучше всего будет загружать данные в какую-либо базу данных и откуда забирать данные в power BI
Я могу написать скрипт на PHP, который будет загружать в БД необходимые данные и затем уже забирать их в power BI
Цена указана за 1 рабочий день
Ставки пока отсутствуют
-
Микола Є. 29 июня 2022Вы хотите с помощью Power BI собрать данные по тендерам и сделать из них базу данных? Чтобы потом что? Хранить её или анализировать?
-
Микола Є. 29 июня 2022По описания задачи выглядит как: получить данные из базы, которую сначала нужно заполнить. То есть первый этап - вытянуть все, а второй этап - уже фильтровать по заданным вами критериям и выдавать результат.
Теоритически можно с помощью динамических фильтров попытаться решить, но именно чтоб их передавать из Power BI через API в Prozorro не представляю как можно, послушал бы и сам такое, если кто возьмется.
-
Олександра Карпенко
29 июня 2022
Если вы знаете как подключить MS POWER BI к базе полностью (учитывая что я на ноутбуке работаю), меня это тоже устроит. Если тендера будут в том виде как пример из одного, я уже смогу фильтровать что мне надо.
-
Микола Є. 29 июня 2022Еще раз спрошу, - по первой ссылке мы можем получить списки тендеров, вам нужны ведь они все? Или какое то конечное количество?
И далее имея этот список тендеров, вы хотите задавать параметры Дата и Заказчик и уже получать полные описание тендеров только по этим двум фильтрам?
-
Олександра Карпенко
29 июня 2022
Первая ссылка - для меня бесполезна. Это просто перечень тендеров без данных по самим тендерам.
В итоге я хочу иметь таблицу с тендерами (и данными по ним) как по ссылке 3 (https://public.api.openprocurement.org/api/2.3/tenders/c52d2426c4fc43c79764187c23279aff). Если это будет вся база - мне кажется это многовато для простого компьютера (может я и не права, и компьютер в состоянии это потянуть). Поэтому хочу понимать как можно заранее этот список отфильтровать на примере двух параметров.
-
Yevhenii V. 29 июня 2022Александра, я с прозорро давно имею дело, есть собранная информация за определенный период. по каким критериям вам нужны тендеры и какая инфа вам нужна? вполне возможно, что у меня уже есть готовая база..
-
Олександра Карпенко
29 июня 2022
Мне важно отслеживать изменения. Я раньше работала через сервис zakupki.prom.ua. У них по критериям формируются excel файлы, которые я подключала к Power BI. Но, во-первых, сложно обновлять, во-вторых, они иногда меняют структуру отчетов, и моя модель данных постоянно слетает. Поэтому я хочу найти способ подключаться к базе. Мне это сложновато, так как я чисто с аналитикой работаю.
-
Микола Є. 29 июня 2022Александра, пробежался ещё раз по документации API "Отримання інформації про закупівлі" и совершенно не нашел там способов передать в запрос к их базе те параметры-фильтры, которые Вы хотите реализовать "на лету". Можно конечно обратиться за подсказкой к разработчикам, но я не думаю что они бы их скрывали в документации, если бы это было реализовано. Но я могу ошибаться. Возможно есть способ это сделать.
Но скорее всего (и правильнее) было бы реализовать задачу в виде создания у вас локальной копии базы с постоянной синхронизацией с источником, и об этом пишут сами разработчики, а уже на следующем этапе естественно можно из локальной базы брать запросами через Power Query только нужную вам для текущего отчета информацию с необходимыми фильтрами. Над этим можно подумать и проработать этот вариант.
-
Олександра Карпенко
29 июня 2022
Спасибо, я готова рассматривать все варианты. Вы бы взялись за это?
-
Микола Є. 29 июня 2022Думаю, что это можно реализовать.
Но давайте завтра ещё доработаю вариант с запросом с фильтрами к первоисточнику
-
Олександра Карпенко
29 июня 2022
Жду тогда вердикт по обращению к первоисточнику) а дальше будем смотреть. Спасибо
-
Yevhenii V. 29 июня 2022всего 14 493 734 тендера на данный момент... это по поводу локальной копии...
-
Олександра Карпенко
29 июня 2022
Подозреваю что это много) Но удобнее может копию на удаленном сервисе сделать? Чтобы я могла с любого компьютера обращаться
-
Микола Є. 30 июня 2022Можно и так). Но можно попробовать по датам все таки забрать кусок, порциями по 100. Если вам не все исторические даты нужны
-
Олександра Карпенко
30 июня 2022
Там можно лимит и 1000, и подозреваю больше задать. https://public.api.openprocurement.org/api/2.3/tenders?limit=1000 Но опять же, это просто перечень тендеров, без данных по ним.
-
Микола Є. 30 июня 20221000 - это максимум, уже перепробовали)
И начинает оно отдавать с самых старых записей, аж с 2015 года. То есть чтобы добраться до самых новых - надо пройти всю базу.
Актуальные фриланс-проекты в категории Базы данных и SQL
Есть действующая production-платформа с каталогом и автоматическим обновлением внешних предложений и цен. Стек: — Node.js / TypeScript; — PostgreSQL; — существующий price refresh service и cron; — отдельный готовый Python-модуль валидации и выбора предложений; — staging и production. Необходимо точечно доработать существующий price refresh pipeline без полного переписывания backend. ОБЯЗАТЕЛЬНЫЙ SCOPE 1. Интеграция Python-модуля — Python-модуль остаётся отдельным компонентом; — возвращает структурированный результат: offers, selected offer, statuses и risk flags; — Node.js валидирует результат и выполняет запись в БД; — предусмотреть обработку ошибок и partial/failed runs; — legacy pipeline не отключается до завершения QA. 2. Запуск refresh по списку Добавить запуск: — по одному slug/id; — по переданному списку slug/id. Допустим CLI или существующий служебный API. Новый пользовательский интерфейс не требуется. 3. Shadow Mode Новые результаты должны записываться отдельно и не влиять на production до QA. Требуются shadow-поля: — price; — selected offer ID; — direct URL; — offer status; — risk/QA flags; — checkedAt; — engineVersion. 4. Расширение существующей таблицы offers Добавить: — source; — external_offer_id; — last_seen_at; — last_checked_at; — engine_version; — risk flags либо хранение в существующем JSON; — unique constraint для защиты от дублей. Новую параллельную offer-систему создавать не требуется, если существующую таблицу можно безопасно расширить. 5. UPSERT, STALE и DB transaction Заменить текущую схему DELETE → CREATE: — UPSERT существующих и новых offers; — отсутствующие в полном успешном snapshot offers переводятся в STALE; — при API error, partial result или незавершённом snapshot активные offers не должны становиться STALE; — обновление offers, selected offer metadata и shadow fields по одной модели выполняется внутри одной DB transaction; — при ошибке выполняется полный rollback. 6. Canonical-safe refresh Price refresh не должен изменять: — brand; — reference; — model; — collection; — name/title; — slug; — descriptions; — images; — SEO fields. Обновляются только offer, price и shadow data. 7. Сохранение текущей cron-логики Сохранить: — existing cron; — rolling batches; — cooldown; — проверку PRICE_REFRESH_MIN_DAYS до вызова внешнего API; — legacy production pipeline до завершения Shadow QA. 8. Audit output Достаточно одного варианта: — shadow-колонки в существующей admin table; или — CSV export. Минимальные данные: — model/reference; — production price; — shadow price; — delta; — production/shadow URL; — status; — risk flags; — checkedAt; — engineVersion. Новый сложный dashboard не требуется. 9. Staging и QA — DB migrations; — staging deployment; — smoke test на 5 переданных моделях; — затем Shadow Mode приблизительно на 50 моделях; — исправление технических ошибок, выявленных во время этих прогонов; — краткая документация контракта Python → Node.js и rollback procedure. ОПЦИОНАЛЬНО ОЦЕНИТЬ ОТДЕЛЬНО Простой технический promotion без нового UI: — promotion одной модели по slug; — promotion списка slug; — перенос подтверждённых shadow values в production; — техническая проверка после rollout. РЕЗУЛЬТАТ — Pull Request; — DB migrations; — рабочая интеграция Python → Node.js; — Shadow Mode; — UPSERT, STALE и транзакционное обновление; — запуск по slug/id; — staging deployment; — smoke-test results; — краткая документация; — не менее 7 дней исправления багов по реализованному scope после приёмки. В ОТКЛИКЕ УКАЗАТЬ 1. Fixed price за обязательный scope. 2. Отдельную стоимость promotion-механизма. 3. Срок. 4. Оценку часов. 5. Когда готовы начать. 6. Опыт с PostgreSQL transactions, migrations и ingestion pipelines. 7. Какие вопросы нужно уточнить до начала. 8. Включены ли staging, QA, migrations и bug-fix period. Шаблонные ответы без конкретной оценки рассматриваться не будут. Доступ к production на первом этапе не предоставляется. Работа начинается с ограниченного code review и staging.
Необходимо разработать централизованную серверную систему сбора и хранения данных из Planfix, 1С, Meta Ads и Google Ads, а также веб-дашборд для их отображения и анализа. Все данные, история изменений, расчеты и агрегированные показатели должны храниться исключительно в серверной базе данных. Дашборд не должен хранить или дублировать бизнес-данные. Он должен получать необходимую информацию из серверной базы через API в соответствии с запросами пользователя и отображать ее в виде KPI, графиков, таблиц и детализированных отчетов.
Ищем для поддержки проекта на базе Yii , нужно вносить правки и доработки базы, частично есть связь с предыдущим исполнителем .....................
Необходимо сделать миграцию базы из CRM G-PLUS на MyChatBot Объем базы - 26 тыс. лидов 2 воронки - Кол центр и Отдел продаж со своими воронками Карточки лидов (кроме имени и номера) имеют много различных полей Лиды также имеют голосовые записи звонков. Их также нужно перенести От кандидата ожидаю ориентировочную сумму и сроки реализации
Создать дашборд для мониторинга и анализа эффективности сети локаций (филиалов) компании в Google Business Profile (GBP) через официальный Google Business Profile API. Обработка через Скрипт на базе Google Apps Script (привязать к Google Таблице). Запись данных в Google Таблицу (которая выступает как база данных для Looker Studio). Обновление: Ежедневно (с индикацией даты последнего обновления). Создать сервисный аккаунт Google Cloud Скрипт раз в сутки (триггер в 03:00 ночи) отправляет запрос к GBP API. Получает метрики за вчерашний день по каждой локации (locationId). Записывает данные в таблицу в плоском формате (строка = уникальное сочетание Дата + ID Филиала + Метрики). Карточки ключевых показателейНазвание карточкиМетрика GBPФормат динамикиПросмотры профиляImpressions (Search + Maps)Процент %, Sparkline (синий)ЗвонкиLocal Services Phone CallsПроцент %, Sparkline (зеленый)Переходы на сайтWebsite ClicksПроцент %, Sparkline (фиолетовый)Построение маршрутовDirection RequestsПроцент %, Sparkline (оранжевый)Средний рейтингAverage Review RatingАбсолютное изменение (например, +0.1), Sparkline (желтый)Новые отзывыNew Reviews CountПроцент %, Sparkline (бирюзовый)