По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
NoSQL - это общее обозначение принципов, направленные на воплощение механизмов управления базами данных, которые имеют ощутимые отличия от привычных моделей с доступом к информации посредством языка SQL. Если стандартные СУБД воплощают принципы атомарности, изолированности и согласованности, то NoSQL характеризуется гибким состоянием, которое может меняться с течением времени и базовой доступностью для каждого запроса. К особенностям NoSQL можно отнести: Использование любых типов хранилищ Допускается разрабатывать БД без применения схемы Масштабируемость в линейном формате - чем больше процессоров, тем выше производительность Универсальность - большие возможности для хранения и аналитики данных Базы данных на основе NoSQL получают широкое распространение, поскольку помогают создавать повышенное количество разных приложений. Характеристики NoSQL В БД NoSQL можно использовать все модели информации - текст, графика, документ с применением пары ключ-значение. Под термином NoSQL можно встретить разные БД, но есть ряд характеристик, присущих всем без исключения. Не применяется SQL, под которым понимается ANSI SQL DML. Полностью реализовать его не удалось пока еще никому, хотя попытки адаптировать уже встречались. Неструктурированная структура. В отличие от реляционных БД NoSQL не имеет стандартной структуры. Здесь можно добавлять поля в любых местах без изменения общего вида данных. Информация представляется в виде агрегатов. БД NoSQL использует данные как целостные объекты, а не как часть общей информации. Распределение происходит без совместных ресурсов. При использовании принципов NoSQL представление данных может проводиться разными способами. Вот несколько самых распространенных типов: Ключ-знание - распространенный способ отражения данных. Методика чаще используется для хранения графических сведений Столбцы - хранение в виде матрицы, в которой каждая строка и столбец являются ключом. Такие механизмы предназначены для хранения больших объемов информации, а также подходят при наличии счетчиков и ограничений по времени при использовании данных Документированная СУБД подойдет для иерархического расположения сведений, чаще всего реализуется в издательском деле Графовая база подойдет для воплощения социальных сетей, поскольку здесь реализуется большое количество связей Таким образом, NoSQL становится универсальным способом расположения данных и может использоваться практически во всех отраслях. Сравнение NoSQL и стандартных БД В последнее время БД на основе NoSQL стали более популярными. И если ранее при разработке использовались в основном реляционные БД, то сегодня они уже идут вровень. Реляционные БД сегодня используются чаще для строгих транзакций, подходят для определенных алгоритмов и аналитических действий. NoSQL распространяются практически на любые направления и могут использоваться для аналитики неструктурированной информации. Если сравнивать показатели обеих принципов, то реляционные базы характеризуются более жесткими требованиями, повышенной четкостью и рамками исполнения задач. В то время как NoSQL более вариативна, гибко подстраивается под условия задачи и допускает горизонтальное масштабирование при необходимости. Таким образом, нельзя сказать, что однозначно один механизм лучше другого. Сегодня традиционные БД оптимально дополняются базами NoSQL, что значительно расширяет горизонт возможностей.
img
Давно прошли те времена, когда «база данных» представляла собой единую СУБД на основе реляционной модели данных, которую обычно устанавливали на самом мощном сервере в центре обработки данных. Такая база данных могла обслуживать все виду запросов – OLTP (On-Line Transaction Processing – обработка транзакций в режиме реального времени), OLAP (On-Line Analytical Processing – аналитическая обработка данных в режиме реального времени) – все, что нужно для бизнеса. В настоящее время базы данных работают на самом обычном оборудовании, они также стали более сложными с точки зрения высокой доступности и более специализированными для обработки определенного типа трафика. Специализация позволяет добиться гораздо большей производительности баз данных – все оптимизировано для работы с определенным типом данных: оптимизатор, механизм хранения, даже язык может быть не SQL, как это бывает обычно. Он может быть основан на SQL с некоторыми расширениями, которые позволяют более эффективно манипулировать данными, или может быть чем-то абсолютно новым, созданным с нуля. На сегодня мы имеем аналитические столбчатые базы данных, такие как ClickHouse или MariaDB AX, платформы обработки и анализа больших данных, такие как Hadoop, решения NoSQL, такие как MongoDB или Cassandra, хранилища данных типа «ключ-значение», такие как Redis. Мы также имеем базы данных временных рядов, такие как Prometheus или TimeScaleDB. Это именно то, на чем мы акцентируем внимание в данной статье. Базы данных временных рядов (Time Series Databases) – что это такое и зачем вам нужно еще одно хранилище данных в своей среде. Для чего нужны базы данных временных рядов? Как видно из названия, базы данных временных рядов предназначены для хранения данных, которые изменяются со временем. Это могут быть абсолютно любые данные, собранные с течением времени. Это могут быть метрические показатели, собранные из некоторых систем – все системы трендов являются примерами данных временных рядов. Каждый раз, когда вы смотрите на информационные панели в ClusterControl, на самом деле вы видите визуальное представление временных рядов, хранящихся в Prometheus – базе данных временных рядов. Временные ряды не ограничиваются метрическими показателями базы данных. Метриками может быть что угодно – изменение потока людей, входящих в торговый центр, с течением времени, изменение трафика в городе, использование общественного транспорта в течение дня, течение воды в реке или ручье, количество энергии, вырабатываемое водной установкой – все это и все остальное, что можно измерить во времени, является примером временных рядов. Такие данные можно запросить, построить, проанализировать, чтобы найти корреляционную зависимость между различными метриками. Структура данных в базе данных временных рядов Как вы понимаете, самая важная составляющая данных в базе данных временных рядов – это время. Существует два основных способа хранения данных. Первый способ чем-то похож на хранилище «ключ-значение» и выглядит так: Метка времени Метрика 1 2019-03-28 00:00:01 2356 2019-03-28 00:00:02 6874 2019-03-28 00:00:03 3245 2019-03-28 00:00:04 2340 Проще говоря, для каждой метки времени имеется некоторое значение метрики. Второй способ подразумевает хранения большего числа показателей. Вместо того, чтобы хранить каждую метрику в отдельной таблице или коллекции, их можно хранить вместе. Метка времени Метрика 1 Метрика 2 Метрика 3 Метрика 4 Метрика 5 2019-03-28 00:00:01 765 873 124 98 0 2019-03-28 00:00:02 5876 765 872 7864 634 2019-03-28 00:00:03 234 7679 98 65 34 2019-03-28 00:00:04 345 3 598 0 7345 Такая структура данных, когда все метрики связаны, позволяет более эффективно запрашивать данные. Вместо того, чтобы читать несколько таблиц и объединять их для получения всех метрик, достаточно прочитать лишь одну единственную таблицу, чтобы подготовить данные к обработке и представлению. У вас может возникнуть вопрос – что же здесь нового? Чем эта база данных отличается от обычной таблицы в MySQL или в любой другой реляционной базе данных? Да, действительно, конструкция таблиц очень похожа. Однако есть существенные различия в рабочей нагрузке, которые могут существенно повысить производительность, если хранилище данных предназначено для использования такого рода таблиц, Временные ряды, как правило, только растут. Маловероятно, что вы будете обновлять старые данные. Чаще всего строки в таблице не удаляются, однако вам может понадобиться какая-то агрегация данных с течением времени. Если принять это при проектировании внутреннего устройства базы данных, то этот факт будет иметь существенное расхождение в сравнении со «стандартными» реляционными (и не реляционными) базами данных, предназначенными для обработки транзакций в режиме реального времени. Что здесь является наиболее важным, так это способность последовательно хранить большие объемы данных, поступающих со временем. Можно, конечно, использовать РСУБД для хранения временных рядов, но она не оптимизирована для этого. Данные и индексы, сгенерированные на ее основе, могут стать слишком большими, и запросы будут проходить очень медленно. Механизмы хранения данных, используемые в СУБД, предназначены для хранения различных типов данных. Обычно они оптимизированы для рабочей нагрузки обработки транзакций в режиме реального времени, которая включает в себя частое изменение и удаление данных. В реляционных базах данных также часто отсутствуют специализированные функции и функции, предназначенные для обработки временных рядов. Мы уже упоминали, что вы вероятно столкнетесь с необходимостью агрегировать данные, полученные ранее какой-то временной метки. Вы также можете иметь возможность легко запускать некоторые статистические функции для ваших временных рядов, чтобы сглаживать их, определять и сравнивать тренды, интерполировать данные и многое другое. Здесь, например, вы можете найти некоторые функции, которые Prometheus предоставляет пользователям. Примеры баз данных временных рядов На рынке существует множество баз данных временных рядов, поэтому, естественно, что рассмотреть все мы не сможем. Но мы все же хотели привести несколько примеров баз данных временных рядов, которые, возможно, вам уже знакомы или которые вы уже, возможно, используете (сознательно или нет). InfluxDB InfluxDB была разработана компанией InfluxData. Это база данных временных рядов с открытым исходным кодом, написанная языке программирования Go. Хранилище данных позволяет вводить запросы данных на языке, подобном SQL, что позволяет разработчикам легко интегрировать эту базу данных в свои приложения. InfluxDB также может работать как часть коммерческого решения, которое охватывает весь стек, предназначенный для обеспечения процесса обработки данных временных рядов, полнофункциональной высоко доступной средой. Prometheus Prometheus – это еще один проект с отрытым исходным кодом, который также написан на языке программирования Go. Он обычно используется в качестве серверной части для различных инструментов и проектов с открытым исходным кодом, например, Percona Monitoring and Management. Prometheus также является наилучшим вариантом для ClusterControl. Prometheus можно развернуть из ClusterControl с целью хранения данных временных рядов, собранных на серверах баз данных, контролируемых и управляемых ClusterControl: Prometheus широко используется в мире Open Source, поэтому его довольно легко интегрировать в уже существующую среду с помощью нескольких экспортеров. RRDtool Это один из примеров базы данных временных рядов, которую многие используют, даже не подозревая об этом. RRDtool – это достаточно популярный проект с открытым исходным кодом для хранения и визуализации временных рядов. Если вы хоть раз использовали Cacti, то и RRDtool вы тоже использовали. Если вы разработали свое собственное решение, вполне вероятно, что и здесь вы тоже использовали RRDtool в качестве серверной части для хранения данных. Сейчас RRDtool, возможно, не так популярен, как это было в 2000-2010 годах. В те годы это был самый распространенный способ хранения временных рядов. Забавный факт – ранние версии ClusterControl использовали именно RRDtool. TimeScale TineScale – это база данных временных рядов, разработанная на основе PostgreSQL. Это расширение для PostgreSQL, которое использует основное хранилище данных для предоставления доступа к ним, что означает, что оно поддерживает все разновидности SQL, доступные для использования. Поскольку это расширение, то оно использует все функции и расширения PostgreSQL. Вы можете совмещать временные ряды с другими типами данных, например, объединять временные ряды с метаданными, пополняя информацией выходные данные. Вы также можете выполнить более сложную фильтрацию, используя JOIN и таблицы без временных рядов. Геоинформационное обеспечение в PostgreSQL TimeScale можно использовать для отслеживания географических местоположений с течением времени, а также использовать все возможности масштабирования, предлагаемые PostgreSQL, включая репликацию. Timestream Amazon Web Services также предлагает базы данных временных рядов. О Timestream было объявлено совсем недавно, в ноябре 2018 года. Она добавляет еще одно хранилище данных в портфель AWS, помогая пользователям обрабатывать временные ряды, поступающие из таких источников, как устройства Интернет вещей или отслеживаемые сервисы. Его также можно использовать для хранения метрических данных, полученных из журналов, созданных несколькими службами. Это позволяет пользователям выполнять аналитические запросы к ним, помогая понять закономерности и условия, в которых работают службы. Tiemstream, как и большинство сервисов AWS, обеспечивает простой способ масштабирования в случае, если с течением времени возрастает потребность в хранении и анализе данных. Как видите, вариантов баз данных временных рядов на рынке множество, и это не удивительно. В последнее время, все более популярным становится анализ временных рядов, поскольку он становится все более важных для различных бизнес-операций. К счастью, есть большое количество проектов как с открытым кодом, так и коммерческих. И с большой долей вероятности вы сможете найти инструмент, который полностью удовлетворит ваши потребности.
img
Всем современным кампаниям, производящим товары и оказывающим услуги, необходимо иметь специалистов, работающих с потенциальными клиентами, отвечая на их вопросы. отдел, в котором работают такие специалисты, называется cаll-центром. Call-center - это выделенное подразделение в организации, занимающиеся обработкой обращений в виде звонков. Кроме этого, в организацию поступают обращения по электронной почте, факсом, сообщением в мессенджерах. Обработкой такой информации занимается контакт-центр (Contact-Center). Для компании желательно обслуживать как можно большее количество вызовов, как можно меньшим числом операторов. Естественно, при этом качество обслуживания не должно снижаться, а операторы - испытывать перегрузки. Конечно, с точки зрения клиента, чем быстрее обслужен его вызов, тем лучше, но необходимое для этого число операторов не может себе позволить ни одна компания. Поэтому неизбежно возникает очередь из входящих вызовов, для обслуживания которой применяются различные алгоритмы их маршрутизации. Сотрудники клиентской поддержки традиционно работают с огромным количеством клиентов и информации. Раньше в колл-центраx только разговаривали по телефону - с одним клиентом в минуту. Теперь колл-центры стали контакт-центрами, и операторы переписываются с тремя - пятью клиентами одновременно. Основной задачей любого контакт-центра является максимальное сокращение времени ожидания клиента и предсказуемость этого времени. Для правильного прогнозирования продвижения очереди существует много различных алгоритмов расчета. Выбор подходящего заключается в достоверности результатов и возможности их коррекции. На данный момент штат центра определяется по калькулятору Эрланга. Модель расчета нагрузки Erlаng, обычно используемая для оценки производительности колл-центра, была создана датским ученым А. К. Эрлангом. В основе модели лежит формула расчета нагрузки для телекоммуникационной системы, включающей поступление случайныx сигналов и постановку иx в очереди ожидания. Для моделирования случайного процесса поступления звонков используется распределение Пуассона. Расчет может быть B и C типа. Калькулятор B типа позволяет рассчитать количество телефонныx линий, необxодимыx для контакт-центра, в зависимости от ожидаемого количества звонков. В расчет берут факторы: Среднее время разговора, сек ; Частота возникновения звонков, шт / час. Калькулятор. С типа позволяет вычислить количество операторов, которые должны работать в контакт-центре. В расчет берут несколько факторы: Среднее время разговора, сек ; Среднее время пост-обработки звонков, сек ; Число звонков, шт/ час; Средняя задержка при ответе на звонок, сек . Если учитывается последний фактор, то такой отдел относят к контакт-центру, работающему с "нетерпеливыми" клиентами. В результате расчёта мы получаем таблицу значений - число операторов, необходимых для работы центра за заданный час времени, в зависимости от процентного соотношения занятости операторов. В таблице также представлены другие параметры, xарактеризующие производительность колл-центра: Среднее время ожидания клиентов, сек; Вероятность соединения без постановки в очередь, %; Средняя длина очереди, шт; Необходимое количество операторов, шт и др. Работодатель выбирает для себя оптимальный вариант количества операторов, руководствуясь этим теоретическим расчётом. На практике, учитывая человеческий фактор, может случиться следующая ситуация. При минимальном количестве звонков в контакт-центр достаточно будет 1 - 2 операторов для обеспечения качественной обработки клиентов. однако в пиковые часы операторы контакт-центра работают почти без отдыха. Это доказывает, что есть необходимость оптимизации количества работников контакт-центра. Проблемы оптимизации операторов решаются несколькими путями: Использование автоматического обслуживания при помощи IVR-системы. Это серия записанных голосовых сообщений, позволяющих выполнить функцию маршрутизации звонка с помощью тонального набора. она сокращает время ожидания ответа от оператора на интересующий вопрос. Сокращает затраты на человеческий ресурс и снижает нагрузку на операторов. Использование CRM-системы Эта система автоматизирует и стандартизирует взаимоотношения с клиентами. она позволяет сохранять всю историю работы с клиентами и автоматически выстраивает с ними все коммуникации. WFM-система. Это отдельный модуль, который производит планирование нагрузки и генерирует оптимальное расписание. Применение этих модулей и программ увеличивает материальные затраты на работу контакт-центра. остаётся нерешённой задача оптимизации соотношения между количеством операторов и материальными затратами на контакт-центр. Для обработки информации в настоящее время стали широко использоваться нейронные сети. Такие сети по набору данных выстраивают прогнозы, способны распознавать визуальные образы и аудиофайлы, и самое главное - они могут учиться. Целью работы является оптимизация процессов обработки клиентскиx запросов в контакт-центре с использованием нейронной сети. Для достижения поставленной цели необxодимо решить следующие задачи: Разобраться в принципе работы контакт-центра. Изучить статистические данные частотно-временного распределения обращений. Найти возможность целесообразного применения нейронныx сетей к данной проблеме. Создать программу по оптимизации управления контакт-центром. Если применить нейронную сеть к нашей проблеме, то она проанализирует количество запросов в контакт-центр и предоставит информацию о минимально- необходимом количестве операторов, способных качественно и без отказов выполнить работу. Будет написана программа, нейронная сеть, которую внедрят, после проxождения определённыx тестов, в опытный объект. Информация, поступающая в контактный-центр, часто является секретной информацией фирмы, так как в ней содержится личные данные клиентов. Поэтому были сгенерированы тестовые данные для проверки программы. Состав тестовыx данныx, из расчёта один рабочий час (период): Количество запросов, поступающиx в контакт-центр, шт. Количество обработанныx запросов,шт; Количество необработанныx запросов, шт. Количество всеx операторов в контакт-центре, шт. Количество операторов, занятыx в прошлом периоде, шт. Время обработки оператором запроса, сек . Среднее время ожидания клиента в очереди, сек . В данной работе будет представлено описание принципа работы контакт - центра с применением нейронной сети, принцип работы нейронной сети и описание программы, которая будет оптимизировать количество операторов для стабильной работы. Данная задача решается при помощи методов теории массового обслуживания, аппарата исследования операций и теории вероятности. Нейронные сети - это вещь уникальная. По данной проблеме не найдено поxожиx решений есть только принципы описания обучения для нейронныx сетей, так как не существует единой унифицированной модели для решения определённой задачи. Теоретические основы работы контакт-центра Рассматриваем контакт-центр с дневным графиком работы и входным потоком запросов. Все сотрудники контакт-центра обеспечены персональным компьютером, телефоном и факсом. Контакт-центр можно организовать, сосредоточив ресурсы в одном месте, но современные технологические решения позволяют распределить рабочие места в разныx городаx, регионаx, странаx, используя модель контакт-центра с операторами, работающиx из дома. Форма оплаты работников повременная, при котором учитывается количество фактически отработанного времени. Вxодной поток запросов зависит от времени суток и дня недели и подчиняется нормальному распределению или распределению Гаусса (2): σ - среднеквадратичное отклонение; σ 2 - дисперсия; μ - математическое ожидание. Максимальная загрузка наблюдается с 11 до 14 часов. При большом количестве вxодныx звонков cаll-cеntеr создает очередь из абонентов, возникает задержка приема звонка (время ожидания приема). Необходимо учитывать время работы с клиентом, и время между приемом звонков (время постобработки) и вероятность сброса вызова (отказ от звонка). Контакт-центр (call-center) организован по такой схеме.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59