Научная статья на тему 'БАЗА ДАННЫХ ПО УЧЕТУ ПРОДУКТИВНЫХ ХАРАКТЕРИСТИК КРУПНОГО РОГАТОГО СКОТАМОЛОЧНОГО НАПРАВЛЕНИЯ В РАЗЛИЧНЫХ РЕГИОНАХ РОССИЙСКОЙ ФЕДЕРАЦИИ'

БАЗА ДАННЫХ ПО УЧЕТУ ПРОДУКТИВНЫХ ХАРАКТЕРИСТИК КРУПНОГО РОГАТОГО СКОТАМОЛОЧНОГО НАПРАВЛЕНИЯ В РАЗЛИЧНЫХ РЕГИОНАХ РОССИЙСКОЙ ФЕДЕРАЦИИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
100
16
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ / БАЗА ДАННЫХ / МОЛОЧНЫЙ СКОТ / ЭФФЕКТИВНОСТЬ / ПРОДУКТИВНОСТЬ / PYTHON / FLASK / INFORMATION TECHNOLOGY / DATABASE / DAIRY CATTLE / EFFICIENCY / PRODUCTIVITY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Дешевых А.А.

Современные информационные технологии представляют собой возможность эффективного ведения сельского хозяйства. Неотъемлемым элементом любой информационной технологии является база данных. Однако, современное развитие инфраструктуры, а также выдвигаемые требования современной экономикой предполагают создание системы базы данных, которая будет иметь уникальную конфигурацию. В работе рассмотрен процесс создания базы данных для автоматизированной системы определения эффективности пород крупного рогатого скота. Указанная система создана на основе MVC- архитектуры, которая состоит из модели, контроллера и представления. Совокупность моделей представляет базу данных приложения. Основой базы данных по учету продуктивных характеристик пород скота, являются количественные показатели продуктивности, а также следующие параметры: широта, долгота, наименование породы скота. В дальнейшем каждому показателю присваиваются значения, которые вводит пользователь. Данные, попадая в базу, могут редактироваться только разработчиком. Первый этап - конфигурирование базы данных, при котором последняя будет являться неотъемлемой частью приложения, что является удобным при выгрузке проекта на сервер. Второй этап - импорт необходимых информационных модулей MVC- архитектуры, для корректной работы приложения. Третьим этапом разработки баз данных является создание модели, то есть архитектуры хранения параметров конкретного списка пород крупного рогатого скота. В работе также рассмотрено тестирование приложения на основе запроса, адресованного базе данных для представления разработчику хранимой информации. Показано соответствие данных из запроса и данных, которые отображаются в программе SQLbrowser, что свидетельствует о корректной работе приложения.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Дешевых А.А.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DATABASE PROJECT OF DAIRY CATTLE PRODUCTIVE CHARACTERISTICS ACCOUNTING IN VARIOUS REGIONS OF THE RUSSIAN FEDERATION

Modern information technologies provide an opportunity for effective farming. An integral element of any information technology is a database. However, modern infrastructure development, as well as the requirements of the modern economy, imply the creation of a database system that will have a unique configuration. The paper considers the process of creating a database for an automated system for determining the effectiveness of cattle breeds. The specified system is based on the MVC architecture, which consists of a model, controller, and view. The collection of models represents the application database. The basis of the database for recording the productive characteristics of livestock breeds is quantitative indicators of productivity, as well as the following parameters: latitude, longitude, and the name of the livestock breed. In the future, each indicator is assigned values that the user enters. Data entering the database can only be edited by the developer. The first stage is configuring the database, in which the latter will be an integral part of the application, which is convenient when uploading the project to the server. The second stage is to import the necessary information modules of the MVC architecture for the correct operation of the application. The third stage of database development is to create a model, i.e. an architecture for storing parameters of a specific list of cattle breeds. The paper also considers testing an application based on a request addressed to the database to provide the developer with stored information. The data from the query matches the data displayed in the SQLbrowser program, which indicates that the application is working correctly.

Текст научной работы на тему «БАЗА ДАННЫХ ПО УЧЕТУ ПРОДУКТИВНЫХ ХАРАКТЕРИСТИК КРУПНОГО РОГАТОГО СКОТАМОЛОЧНОГО НАПРАВЛЕНИЯ В РАЗЛИЧНЫХ РЕГИОНАХ РОССИЙСКОЙ ФЕДЕРАЦИИ»

База данных по учету продуктивных характеристик крупного рогатого скота молочного направления в различных регионах Российской Федерации_

ФГБНУ ФНЦ «Федеральный исследовательский центр животноводства - ВИЖ имени академика Л.К. Эрнста», п. Дубровицы, Московская область, Российская Федерация e-mail: alexdeshevykh@yandex. ru

Аннотация. Современные информационные технологии представляют собой возможность эффективного ведения сельского хозяйства. Неотъемлемым элементом любой информационной технологии является база данных. Однако, современное развитие инфраструктуры, а также выдвигаемые требования современной экономикой предполагают создание системы базы данных, которая будет иметь уникальную конфигурацию. В работе рассмотрен процесс создания базы данных для автоматизированной системы определения эффективности пород крупного рогатого скота. Указанная система создана на основе MVC-архитектуры, которая состоит из модели, контроллера и представления. Совокупность моделей представляет базу данных приложения. Основой базы данных по учету продуктивных характеристик пород скота, являются количественные показатели продуктивности, а также следующие параметры: широта, долгота, наименование породы скота. В дальнейшем каждому показателю присваиваются значения, которые вводит пользователь. Данные, попадая в базу, могут редактироваться только разработчиком. Первый этап — конфигурирование базы данных, при котором последняя будет являться неотъемлемой частью приложения, что является удобным при выгрузке проекта на сервер. Второй этап — импорт необходимых информационных модулей MVC-архитектуры, для корректной работы приложения. Третьим этапом разработки баз данных является создание модели, то есть архитектуры хранения параметров конкретного списка пород крупного рогатого скота. В работе также рассмотрено тестирование приложения на основе запроса, адресованного базе данных для представления разработчику хранимой информации. Показано соответствие данных из запроса и данных, которые отображаются в программе SQLbrowser, что свидетельствует о корректной работе приложения.

Ключевые слова: информационные технологии, база данных, молочный скот, эффективность, продуктивность, python, flask

Введение

Современные глобальные вызовы требуют тщательного анализа и проработки больших объемов информации. Наиболее важным фактором для молочного скотоводства на мировом уровне являются изменение климата и экологическая обстановка. Для Российской Федерации характерен важным фактором является географическое положение, что представляет некоторую

УДК 636.2.034 А. А. Дешевых

сложность по учету породных характеристик скота в различных регионах из-за различия климатических условий. [1]

Современное интегрирование IT-технологий в сельское хозяйство позволило возродить кооперацию [2], повысить эффективность производства продукции и увеличить количество экологически чистых товаров. [3] Согласно мировому опыту по использованию информационных технологий стало возможным увеличить воспроизводство крупного рогатого скота на 10% и снизить падеж на 15%. [4]

Только за 2018 год в России разводилось 24 породы крупного рогатого скота, представленных в ежегоднике по племенной работе в молочном скотоводстве. [5]

Учитывая большое разнообразие аборигенного крупного рогатого скота, импортируемых пород и полученных гибридов, актуальной задачей становится разработка информационной системы по определению породного потенциала животных в различных административных или природно-климатических зон Российской Федерации.

Например, информационные технологии успешно используются в определении плодородия почв. Предприняты попытки создания блокчейн — системы по цифровизации экономики и учета товарных потоков на каждом этапе доставки потребителю. [6,7]

На данный момент практически любое компьютерное приложение использует такой составной элемент как база данных (далее БД). В БД хранятся учетные записи пользователей, статистика действий пользователей, результаты различных логических операций.

Главной задачей при проектировании баз данных является — создание нескольких дата-сетов которые постоянно обмениваются между собой информацией. Такими дата-сетами, например, являются: учетная запись пользователя, количественный показатель параметра продуктивности, географические координаты.

Материал данной работы является реализацией методики по определению продуктивных характеристик крупного рогатого скота молочного направления. [8]

Материалы и методы

Разрабатываемое приложение строится на основе MVC-архитектуры, связывающей в одно целое представление, модель и контроллер. Каждый из элементов архитектуры имеет определенные принципы работы, что предполагает разработку системы алгоритмов миграции данных от пользователя в БД.

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

Для создания баз данных были использованы: язык программирования python 3.5.2, микрофрейморк flask, программное обеспечение sql-alchemy, язык разметки гипертекста — html. Создание базы данных проводилось на операционной системе Linux Mint 18, редактор кода — Visual Studio Code, для просмотра баз данных использовался SQLbrowser.

Результаты разработки и тестирования базы данных

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

На рисунке 1 показано, что база данных, созданная в приложении под названием cows.db, разработанная на языке SQLAlchemy, хранится в директории абсолютного пути, что делает ее частью всего приложения:

basedir = os.path.abspath(os.path.dirname (_file_)). Данный метод применен с

целью упрощения алгоритмов миграции данных от пользователя в БД.

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

basedir = os.path.abspathfos.path.dirname(_ file ))

class Corifig():

5QLALCHEMY_TRACK_M0DIFICATI0N5 = False

SQLALCHEMY_DATABASE_URI = [OS.environ.get('DATABASE URL') or 'sqlite:///1 + os.path.jointbasedir, 'cows.db'})

Рис. 1. Конфигурация базы данных

На рисунке 2 показана интеграция в информационную систему модулей SQLAlchemy и модуля Migrate. Первый модуль является программной библиотекой по формированию баз данных, созданной специально для языка программирования python, модуль Migrate является алгоритмом передачи данных от пользователя в базу данных.

6 from flask sqlalchemy import SQLAlchemy from flask migrate import Migrate

3

9 from config import Config

Lfl LI

L2 app = Flask[_ name _) L3 app .config.from_object(Config) L4 db = SQLAlchemy(app) L5 migrate = Migrate(app, db>

Lfj

from models import CowsBreeds

Рис. 2. Импорт информационных модулей

В строке 17 прописан код: from models import CowsBreeds, что означает импорт модели CowsBreeds из части приложения, в которой создаются модели базы данных. Разработанная модель является каркасом БД по учету продуктивных характеристик породы, разводящейся в определенном регионе Российской Федерации.

На рисунке 3 показана модель, в которую попадают следующие данные: наименование породы, широта, долгота, удой, содержание жира, содержание белка, длительность жизни, смертность, количество отелов.

class towsBreeds(db.Model):

id = db.Columnfdb.Integer, primary_key=True) breed = db.Column(db.String, nullable = False) latitude = db.Column(db.Floatr nullable = False) longtitude = db.Column{db.Float, nullable = False)

yeildl = db.Column(db.Float, nullable = False) fat_contentl = db,Column(db,Float, nullable = False) protein contentl = db.ColumrUdb.Floatr nullable False) lifetimel = db.Column(db.Float, nullable = False) mortalityl = db,Column(db.Float, nullable = False) offspringl = db.Columnedb. Float, nullable = False[)]

Рис. 3. Конфигурация сетки хранения данных

Поля базы данных обязательны для заполнения пользователем, что задается следующим алгоритмом: nullable = False, следовательно, пользователь не сможет отправить данные в систему, если поле не заполнено. Корректность заполнения отслеживается на контроллере следующим образом: float(request.form['yeild1']), где yeild1 — это средний удой по первой породе крупного рогатого скота, request.form — запрос значения из формы, float — конвертация введенных числовых данных в действительное число, следовательно, введение текста пользователем в ячейку будет распознаваться программой как ошибка, из-за алгоритма float. Таким образом, данные не будут переданы в базу данных, если не заполнены какие-либо поля или, если, они заполнены неправильно.

Результатом корректного заполнения полей представления пользователем, данные попадают через алгоритмы контроллера в БД, в которой можно их просмотреть при помощи способа, отображенного на рисунке 4.

(env) lex@LEX ~/projects/flask2 i flask shell Python 3.5.2 (default, Oct 8 2019, 13:06:37) [GCC 5.4.0 20160609] on Unux App: server [production]

Instance : /home/lex/projects/flask2/instance >» from server import db, CowsBreeds »> cowsbreeds = CowsBreeds.query.all[) »> cowsbreeds

[<CowsBreeds holsteins-, <CowsBreeds 7s-, <CowsBreeds red steppes-, <CowsBreeds red gorbatovskayas-, <CowsBreeds red steppes-]

Рис. 4. Запрос информации из базы данных

На рисунке 4 представлен запрос данных из БД. Произведен запрос наименований пород из bd, модели CowsBreeds. Отображены породы, добавленные в систему в тестовом режиме. Выведены все позиции, содержащиеся на момент запроса в базе данных.

¡(1 Ьгеес! т Еа^ийе ЬпдйЬийе уеИсН

Фильтр Фильтр Фильтр Фильтр Фильтр

2 7 - 6.0 5.0 45,0

6 Ьо1пподог5к.,. 45.4 46,3 7865.0

11 Ьо1в|зе1п 12.3 34.5 45,34

4 гей догЬаЬо... 45.3 34.3 2.0

3 гес1 Б£ерре 46,9 23,3 5674.0

5 гес! 51ерре 61.21 53.19 7586.0

Рис. 5. Отображение введенных значений в SQLbrowser Составлено авторами

При сопоставлении рисунка 5 с рисунком 4 становится очевидным совпадение наименований пород. Проводимый запрос не показывает количественные характеристики параметров, которые присущи каждой из пород КРС. В то же самое время числовые характеристики отображаются в SQLbrowser.

База данных приложения по определению эффективности различных пород крупного рогатого скота разработана с целью консолидации параметров продуктивных характеристик в одно единое информационное пространство.

Благодаря встраиваемым в БД алгоритмам, потенциальные заводчики смогут получить достоверную информацию по различным породам крупного рогатого скота, разводимым в определенном регионе России. Итоговым результатом является параметры продуктивных характеристик, которые получены за всю жизнь от популяции животных. Следовательно, возможно будет обнаружить отклонения в продуктивности одной породы, которая разводится в различных регионах.

Идеология создания базы данных представленной конфигурации основывается на идее массового отбора, при котором учитываются параметры продуктивности популяции.

Итак, БД позволит консолидировать продуктивные характеристики крупного рогатого скота различных пород, содержащегося на всей территории Российской Федерации. Наиболее логичным кажется интегрирование в базу данных такого финансового показателя, как себестоимость одного литра молока.

Выводы

Учет таких факторов как географическое положение Российской Федерации, породных характеристик, присущих молочному скоту в определенных географических координатах, позволит сформировать картину эффективности использования пород крупного рогатого скота в различных регионах России.

Разработанная база данных позволяет консолидировать информацию о продуктивных характеристиках крупного рогатого скота. Редактирование данной базы доступно только разработчику. Пользователь и администратор не могут вносить изменения. Такой подход позволит избежать дублирования данных.

Следующим этапом будет являться разработка классификатора пород скота.

Основание для такой работы является наличие определенного количества пород,

разводимых в различных регионах, а также скрещивания и совершенствования

локального скота за счет импортного.

Работа выполнена в рамках государственного задания: 075-01250-20-01

Литература

1. Телегина Ж. А. Методологические основы определения экономического развития АПК региона в условиях цифровой экономики // Экономика сельского хозяйства России. 2019. № 6 С. 2-8

2. Бутырин В. В., Бутырина Ю. А. Направления цифровой трансформации сельского хозяйства // Экономика сельского хозяйства России. 2019. № 6. С. 9-14.

3. Монахов С. В., Шиханова Ю. А., Потоцкая Л. Н., Трансфер технологий и цифровизация сельского хозяйства: эффективность взаимодействия и перспективы развития // Экономика сельского хозяйства России. 2020. № 6. С. 20-25

4. Подколизина И. М., Томилина И. А. Цифровизация как способ активации инновационной деятельности в сельском хозяйстве // Экономика сельского хозяйства России. 2020. № 4. С. 8-12.

5. Ежегодник по племенной работе в молочном скотоводстве в хозяйствах Российской Федерации (2018 год). Издательство: ФГБНУ «Всероссийский научно-исследовательский институт племенного дела». 2019. Лесные поляны. С. 272.

6. Смагин А. А. Интеграция цифровой экономики в сельское хозяйство: международный опыт и его применение в Российской Федерации // Экономика сельского хозяйства России. 2018. № 6. С. 92-97.

7. Усенко Л. Н., Холодов О. А. Государственный мониторинг экономических отношений в условиях цифровой экономики // Экономика сельского хозяйства России. 2019. № 4. С. 19-24.

8. Дешевых А. А. Экономическая оценка пород в молочном племенном скотоводстве Южного Федерального округа // Геополитика и экогеодинамика регионов. 2020. № 2. С. 305-313

A. A. DESHEVYKH

Database project of dairy cattle productive characteristics accounting in various regions of the Russian Federation_

Federal Research Center for Animal Husbandry named after Academy Member L.K. Ernst,

Dubrovitsy village, Moscow region, Russian Federation e-mail: alexdeshevykh@yandex.ru

Abstract. Modern information technologies provide an opportunity for effective farming. An integral element of any information technology is a database. However, modern infrastructure development, as well as the requirements of the modern

economy, imply the creation of a database system that will have a unique configuration. The paper considers the process of creating a database for an automated system for determining the effectiveness of cattle breeds. The specified system is based on the MVC architecture, which consists of a model, controller, and view. The collection of models represents the application database. The basis of the database for recording the productive characteristics of livestock breeds is quantitative indicators of productivity, as well as the following parameters: latitude, longitude, and the name of the livestock breed. In the future, each indicator is assigned values that the user enters. Data entering the database can only be edited by the developer. The first stage is configuring the database, in which the latter will be an integral part of the application, which is convenient when uploading the project to the server. The second stage is to import the necessary information modules of the MVC architecture for the correct operation of the application. The third stage of database development is to create a model, i.e. an architecture for storing parameters of a specific list of cattle breeds. The paper also considers testing an application based on a request addressed to the database to provide the developer with stored information. The data from the query matches the data displayed in the SQLbrowser program, which indicates that the application is working correctly.

Keywords: information technology, database, dairy cattle, efficiency, productivity, python, flask.

References

1. Telegina J. A. Metodologicheskie osnovi opredeleniya ekonomicheskogo ravitiya APKregiona v usloviyah cifrovoy ekonomiki // Ekonomika selskogo hozyastva Rossii. 2019. № 6. S. 2-8. (in Russian)

2. Butirina Yu. A. Napravleniya cifrovoy transformacii selskogo hozyastva // Ekonomika selskogo hozyastva Rossii. 2019. №6. S. 9-14. (in Russian)

3. Monahov S. V., Shihanova Yu. A., Potockaya L. N. Transfer tehnologiy I cifrovizaciya selskogo hozyastva: effektivnost vzaimodeystviya I perspektivy razvitiya. // Ekonomika selskogo hozyastva Rossii. 2020. № 6. S. 20-25. (in Russian)

4. Podkolizina I. M., Tomilina I.A. Cifrovizaciya kak sposob aktivacee innovacionnoy deyatelnosti v selskom hozyaystve // Ekonomika selskogo hozyastva Rossii. 2020. № 4. S. 8-12. (in Russian)

5. Ejegodnik po plemennoj rabote v molochnom skotovodstve v hozyajstvah Rossijskoy Federacii (2018 god). Izdatelstvo: FGBNU "Vserossijskiy nauchno-issledovatelskij institut plemennogo dela. 2019. S. 272. (in Russian)

6. Smagin A. A. Integraciya cifrovoy ekonomiki v selskoe hozyastvo: mejdunarodniy opit I ego primenenie v Rossiyskoy Federacii // Ekonomika selskogo hozyastva Rossii. 2018. № 6. S. 92-97.

7. Usenko L. N., Holodov O. A. Gosudarstvenniy monitoring ekonomicheskih otnosheniy v usloviyah cifrovoy ekonomiki // Ekonomika selskogo hozyastva Rossii. № 4. S. 19-24. (in Russian)

8. Deshevykh A. A. Ekonomicheskaya ocenka porod v molochnom plemennom skotovodstve Ujnogo Federalnogo okruga // Geopolitika I ekogeodinamika regionov. 2020. № 2. S. 305-313.

Поступила в редакцию 18.11.2020 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.