Big Data Analysis Server Specialized for Small Business and Method for Providing Sales Diagnostic Service Using the Same
Patent Information
- Application Number
- KR1020240075469
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-06-11
- Publication Date
- 2026-09-29
- Estimated Expiration
- 2044-06-11
Smart Images

Figure 112024062648411-PAT00001_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to big data collection and processing technology, and more specifically, to a big data analysis server specialized for small business owners capable of diagnosing the sales of small business franchise stores in real time, and a method for providing a sales diagnosis service using the same. Background Technology
[0002] The content described in this section merely provides background information regarding the present embodiment and does not constitute prior art.
[0003] Small business owners in Korea account for 48% of the total number of businesses, but they are facing significant management difficulties. In particular, according to data from the Korea Federation of Small Business, more than 453,000 small businesses closed down during the COVID-19 pandemic, and the proportion of small business owners considering closure reached 40%. The main reasons for considering closure include sluggish demand, rising costs, and poor management, with a decline in operating performance accounting for 28.2% of these factors.
[0004] The level of digital technology adoption among small business owners is assessed as 'below average,' which is one of the main reasons they struggle to accurately assess their business status and improve efficiency. Currently, most solutions for small business owners remain limited to simple data visualization, resulting in a lack of big data solutions to address the problems faced by small business owners.
[0005] Conventional disclosed technologies focus on collecting data by scraping external public data portals or public and / or private APIs, such as those from credit card companies, and analyzing the business status of small business owners based on this data. However, small business owners require tools that enable them to grasp their real-time business status based on the collection of data from various sources and, through this, formulate effective management strategies.
[0006] To address these issues, the need for big data solutions is emerging, and meaningful business analysis through objective data modeling is required. Prior art literature
[0007] Korean Registered Patent Publication No. 10-2119713 (Title of Invention: Method and Server for Evaluating Creditworthiness of Small Business Owners through Big Data Analysis) The problem to be solved
[0008] The present invention is designed to solve the problems of the aforementioned prior art, and the objective of the present invention is to provide a big data analysis server specialized for small business owners and a method for providing a sales diagnosis service using the same.
[0009] As an example of an embodiment, another objective of the present invention is to provide a big data analysis server specialized for small business owners and a method for providing a sales diagnosis service using the same, which enables small business owners to accurately grasp their business status in real time and establish efficient business strategies.
[0010] The technical problems to be solved by the present invention are not limited to those mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art to which the present invention belongs from the description below. means of solving the problem
[0011] The present invention can provide a big data analysis server specialized for small business owners and a method for providing a sales diagnosis service using the same.
[0012] A big data analysis server specialized for small business owners, capable of connecting to a control server and a web server via a network according to one embodiment of the present invention, may include: a communication module that receives identification information of a franchisee from a user terminal; an ETL module that extracts, transforms, and loads internal data related to the operation of the franchisee from the control server using the identification information; a scraping module that collects external data affecting the sales of the franchisee from the web server through web crawling and data scraping; and an analysis module that generates analysis information for real-time sales diagnosis of the franchisee using the internal data and the external data.
[0013] As an example, the internal data may include at least one of the sales information, sales information, menu information, customer information, order information, terminal information, and customer interaction information of the franchisee.
[0014] As an example, the external data may include at least one of the sales information, purchase information, tax information, weather information, commercial area information, demographic information, economic indicator information, and customer review and rating information of the franchisee.
[0015] As an example, the analysis module may reconstruct the internal data and the external data in the same time unit and synchronize them based on a preset timestamp to generate a time-series data set.
[0016] As an example of an embodiment, a data processing module for preprocessing the scraped external data may be further included.
[0017] In an exemplary embodiment, the data processing module comprises: a data classification unit that classifies the scraped external data into structured data or unstructured data according to the form of the data; and a text mining unit that converts the classified unstructured data into structured data based on natural language processing, wherein the data classification unit can process the classified structured data according to at least one attribute.
[0018] As an example, the analysis information may be generated by classifying at least one analysis result among sales, peak time, waiting time, revisit frequency, dwell time, and competitor comparison of the franchise store generated based on the time series data set, based on at least one of unit time, region, commercial area, industry, menu, product, and weather information.
[0019] As an example, the scraping module may be executed at a preset time considering the load of the network.
[0020] A method for providing a sales diagnosis service for small business owners in a big data analysis server capable of connecting to a control server and a web server via a network according to another embodiment of the present invention may include: receiving identification information of a franchisee from a user terminal; extracting, converting, and loading internal data related to the operation of the franchisee from the control server using the identification information; collecting external data affecting the sales of the franchisee from the web server through web crawling and data scraping; and generating analysis information for real-time sales diagnosis of the franchisee using the internal data and the external data.
[0021] As an example, the internal data may include at least one of the sales information, sales information, menu information, customer information, order information, terminal information, and customer interaction information of the franchisee.
[0022] As an example, the external data may include at least one of the sales information, purchase information, tax information, weather information, commercial area information, demographic information, economic indicator information, and customer review and rating information of the franchisee.
[0023] As an example of an embodiment, the step of generating the analysis information may include the step of reconstructing the internal data and the external data in the same time unit and synchronizing them based on a preset timestamp to generate a time series data set.
[0024] As an example of an embodiment, it may include a step of preprocessing the scraped external data.
[0025] In an exemplary embodiment, the preprocessing may be performed by a method comprising: a step of classifying the scraped external data into structured data or unstructured data according to the form of the data; a step of converting the classified unstructured data into structured data based on natural language processing; and a step of processing the classified structured data according to at least one attribute.
[0026] In an exemplary embodiment, the step of generating the analysis information may include classifying at least one analysis result among sales, peak time, waiting time, revisit frequency, dwell time, and competitor comparison of the franchise store generated based on the time series data set, based on at least one of unit time, region, commercial area, industry, menu, product, and weather information.
[0027] As an example, the step of collecting the external data may be executed at a preset time considering the load of the network.
[0028] The above embodiments of the present invention are merely some of the preferred embodiments of the present invention, and various embodiments reflecting the technical features of the present invention can be derived and understood by those skilled in the art based on the detailed description of the present invention to be described below. Effects of the invention
[0029] The effects of the apparatus and method according to the present invention are described as follows.
[0030] As an example of an embodiment, the present invention has the advantage of providing a big data analysis server specialized for small business owners and a method for providing a sales diagnosis service using the same, which can assist in rapid decision-making by collecting and analyzing internal and external data of franchise stores in real time and delivering real-time sales status and improvement suggestions to small business owners.
[0031] As an example, the present invention has the advantage of providing specific and detailed information needed by small business owners by classifying and providing various analysis results, such as franchise sales, peak time, waiting time, frequency of revisit, time of stay, and competitor comparisons, based on unit time, region, commercial area, industry, menu, product, weather information, etc. Brief explanation of the drawing
[0032] The drawings attached below are intended to aid in understanding the present invention and provide embodiments of the invention together with the detailed description. However, the technical features of the present invention are not limited to specific drawings, and the features disclosed in each drawing may be combined with one another to form new embodiments. FIG. 1 is a block diagram illustrating the configuration of a big data-based sales diagnosis system for small business owners according to one embodiment of the present invention. FIG. 2 is a schematic block diagram showing the configuration of a big data analysis server according to one embodiment of the present invention. FIG. 3 is a flowchart showing each step of a method for providing a big data-based sales diagnosis service for small business owners according to an embodiment of the present invention. Figure 4 is a diagram comparing and illustrating the internal data before and after preprocessing according to one embodiment of the present invention. FIG. 5 is a diagram illustrating the step of converting unstructured data into structured data according to one embodiment of the present invention. FIG. 6 is a diagram illustrating the process of data reconstruction and synchronization according to an embodiment of the present invention step by step. FIG. 7 is a diagram showing an example of a daily report generated by a big data analysis server specialized for small business owners according to one embodiment of the present invention. Specific details for implementing the invention
[0033] Hereinafter, devices and various methods to which embodiments of the present invention are applied will be described in more detail with reference to the drawings. The suffixes "module" and "part" for components used in the following description are assigned or used interchangeably solely for the ease of drafting the specification, and do not have distinct meanings or roles in themselves.
[0034] In this specification, the 'terminal' may be a wireless communication device with guaranteed portability and mobility, and may be any type of handheld-based wireless communication device, such as a smartphone, tablet PC, or laptop. Additionally, the 'terminal' may be a wired communication device, such as a PC, capable of connecting to other terminals or servers, etc., via a network.
[0035] In addition, a network refers to a connection structure capable of exchanging information among respective nodes, such as terminals and servers, and includes local area networks (LAN), wide area networks (WAN), the internet (WWW: World Wide Web), wired / wireless data communication networks, telephone networks, wired / wireless television communication networks, etc. Examples of wireless data communication networks include, but are not limited to, 3GPP (3rd Generation Partnership Project) networks, LTE (Long Term Evolution), 5G, 6G, WIMAX (World Interoperability for Microwave Access), Wi-Fi, Bluetooth communication, infrared communication, ultrasonic communication, visible light communication (VLC), and LiFi.
[0036] The following embodiments are detailed descriptions to aid in understanding the present invention and are not intended to limit the scope of the present invention. Accordingly, inventions within the same scope that perform the same function as the present invention will also fall within the scope of the present invention. An embodiment of the present invention will be described in detail below with reference to the attached drawings.
[0037] FIG. 1 is a block diagram illustrating the configuration of a big data-based sales diagnosis system for small business owners according to one embodiment of the present invention.
[0038] A big data-based sales diagnostic system (10) for small business owners may include a control server (100) linked with a kiosk terminal, a big data analysis server (200), and a user terminal (300). The kiosk terminal, control server (100), big data analysis server (200), and user terminal (300) constituting the system (10) may be connected via a network (NW).
[0039] A kiosk terminal is an unmanned terminal designed for information services and business automation, and can be collectively referred to as a device capable of selling products unmanned by displaying a list of products to customers visiting a store and providing payment methods.
[0040] Kiosk terminals allow customers to search for information or perform tasks such as purchasing, ticketing, and registration using a touchscreen interface. Because they enable the processing of everything from payment to ticketing in a single step without waiting in line, they are widely used in stores ranging from one-person shops to large-scale establishments, thereby providing an efficient unmanned solution that reduces labor costs and increases sales. These kiosk terminals run internal management and control software and communicate with a server system over the network that monitors the operational status of each terminal and diagnoses and recovers from any abnormalities.
[0041] A control server (100) can receive and store various data related to the operation of a franchise store by linking with at least one kiosk terminal through a network. In this specification, the control server (100) refers to a computing device for implementing a service platform configured to register one or more franchise stores and their menus, and to allow customers to search for stores or menus and make orders and payments. An example of the types and detailed items of data received by the control server (100) from the kiosk terminal may be listed as shown in Table 1 below, but is not necessarily limited thereto.
[0042] Data types Detailed items Sales Information - Individual sales details for each transaction (transaction ID, date, time, amount, payment method, etc.) Sales Information - Sales history of individual products Menu Information -Price Information by Menu-Sales Quantity by Menu Customer Information - Individual purchase history for each customer (Customer ID, purchase date, purchased products, etc.) Order Information - Details of each order (order number, time of order, menu, quantity, options, etc.) - Payment method and payment status - Order cancellation and refund history Terminal Information - Kiosk usage logs (start time, end time, etc.) - Records of errors and failures Customer interaction information - Screen touch logs (touch time, touch location, etc.) - Record of waiting time and order completion time
[0044] The data received by the control server may be time-series data, that is, data generated continuously over time. Therefore, the kiosk terminal may transmit the data to the control server continuously rather than sending it once. At this time, the kiosk terminal may transmit the data to the control server (100) periodically, or it may transmit the data to the control server (100) in real time. Of course, it may also be possible for the kiosk terminal to transmit the data to the control server (100) irregularly. The control server (100) may database the data and store it in a relational database (RDBMS) and / or a non-relational database (NoSQL). A relational database stores structured data in a table format and efficiently accesses and manipulates the data through SQL (Structured Query Language) queries. Database systems such as MySQL and PostgreSQL are used for this purpose. For example, sales information is stored in a table format, and each table consists of rows and columns and includes specific data fields (e.g., transaction ID, date, time, amount, payment method, etc.). Through this process, data is normalized according to a relational model and can be efficiently searched, modified, and deleted using SQL queries. Meanwhile, non-relational databases provide high scalability and flexibility when storing unstructured data, utilizing NoSQL (Not only SQL) databases such as MongoDB and Cassandra. These databases store data in structures such as key-value pairs, documents, and column families, and can flexibly manage JSON-formatted documents or large volumes of data. For example, customer interaction logs can be stored as JSON documents with various fields and nested structures.
[0045] The control server (100) may store data in the system in file formats such as CSV, JSON, and XML. A CSV (Comma-Separated Values) file stores each data record in a comma-separated text format and is mainly used in spreadsheet programs. A JSON (JavaScript Object Notation) file stores data in a hierarchical and readable text format, increasing compatibility with web applications. An XML (eXtensible Markup Language) file stores data in a tag-based markup language, facilitating data exchange between various systems. For example, sales information can be stored in a CSV file and used to generate daily and monthly reports.
[0046] Alternatively, the control server (100) can use a REST API to transmit and store data to an external SaaS (Software as a Service) application. For example, it integrates data with an external service such as Salesforce or Google Sheets. In this process, data in JSON format is transmitted via an HTTP request to store or update data at the API endpoint of the external application. For example, order information can be stored in the Salesforce CRM system and utilized for customer management and marketing activities.
[0047] The control server (100) may also be linked by transmitting real-time events to other applications using a Webhook. The Webhook operates by sending an HTTP POST request to a predefined URL whenever a specific event occurs. For example, whenever a new order occurs, order data can be transmitted in real-time to another system (e.g., an inventory management system) via the Webhook. This enables real-time data processing and automated workflows.
[0048] Meanwhile, the web server (WS) can transmit various data that may affect the sales of franchise stores to the big data analysis server (200) via the network. The big data analysis server (200) can collect and store this data in a separate database or access the web server (WS) whenever necessary to receive the data.
[0049] Examples of web servers (WS) may include the Korea Credit Finance Association, the Public Data Portal, Home Tax, the National Tax Service, the Korea Meteorological Administration, commercial area analysis systems, social network services (e.g., Instagram, Facebook, Twitter, TikTok, YouTube, etc.), and portal sites (e.g., Naver, Kakao, Google, etc.), but are not limited to the examples listed above. Examples of the types and detailed items of data that can be collected from web servers (WS) may be listed as shown in Table 2 below, but are not necessarily limited thereto.
[0050] Data types Detailed items Sales Information - Daily / Monthly Sales Details - Credit Card Payment Details (Payment Date, Payment Amount, Card Type, Approval Number, Merchant Information, etc.) Purchase Information - Purchase details (purchase date, purchase amount, supplier, item information, etc.) Tax Information - VAT / Income Tax Filing History Weather information -Temperature, precipitation, on a specific date Commercial area information - Nearby commercial area information (name, type, location, main business sectors, etc. of specific commercial areas) - Competitor information (business name, business sector, location, sales estimates, etc.) - Pedestrian traffic information (number of pedestrians and population distribution data by specific time of day, etc.) - Nearby festival schedules Demographic information - Population by region, population distribution by age, population distribution by gender, etc. Economic Indicator Information - Income levels by region, consumption expenditure, etc. Customer Reviews and Rating Information - Ratings, review content, authors, comments, etc. of specific products / services - Search frequency, duration, related keywords, etc. of specific keywords - Mention frequency, hashtags, posts, etc. of specific keywords
[0052] Weather information may include various weather information. For example, weather information may include at least one of weather, temperature, humidity, precipitation, rainfall, wind speed, sunrise / sunset time, and solar radiation. However, the present embodiment is not limited thereto.
[0053] In addition, weather information may include weather change data created by processing the basic data mentioned above. For example, various types of weather judgments, such as whether it snows and the temperature has risen by 7°C or whether it rained in the morning and cleared up before lunchtime, can be pre-set in a binary data format. This may be data regarding weather changes that empirically affect sales of a specific menu item.
[0054] Local festival schedules may refer to information regarding the dates of local festivals held near the franchise store. Since local festival schedules significantly influence foot traffic, they are a factor that can affect the franchise store's sales.
[0055] The keyword search frequency of a portal site may also be included. In this case, the search frequency for a specific keyword to be determined using the above data may be determined in advance. For example, the name of a franchise store, menu, etc., may be included in the keywords. In this case, the keyword search frequency may be provided in a normalized form. That is, the keyword search frequency may be collected as a number between 0 and 100, with a maximum value of 100 and a minimum value of 0, according to a pre-set standard. However, the present embodiment is not limited thereto.
[0056] External data may include economic indicator information. Economic indicators may include daily and / or monthly data. However, the present embodiment is not limited thereto. Additionally, economic indicators may include information on the value of various virtual currencies and exchange rates, etc.
[0057] Monthly data may include at least one of the Economic Policy Uncertainty (EPU) index data, Consumer Price Index data, Producer Price Index data, Consumer Sentiment Index data, Economic Sentiment Index data, Accommodation and Restaurant Production Index data, and Gross Domestic Product (GDP) data. Since these economic indicators naturally influence public consumption, they can be factors to be considered when forecasting sales for franchisees.
[0058] Meanwhile, in this specification, raw data generated by a component constituting the system (10) of the present invention is defined as 'Raw Internal Data (RID),' and raw data generated physically or functionally outside the system (10) is defined as 'Raw External Data (RED).' That is, in this specification, the raw data exemplified in Table 1 collected from the control server (100) is referred to as Raw Internal Data (RID), and the raw data exemplified in Table 2 collected from the web server (WS) is referred to as Raw External Data (RED).
[0059] The big data analysis server (200) collects internal data (RID) and external data (RED) from the control server (100) and the web server (WS), respectively, and based on this, automatically generates various analysis information for increasing sales, such as sales analysis of franchise stores, peak time analysis, waiting time analysis, customer behavior analysis (e.g., frequency of revisit, time of stay, etc.), and competitor analysis, and transmits it to the user terminal (300) through the network.
[0060] The big data analysis server (200) may be a web server that provides a web page viewable using a web browser running on a user terminal (300), or an application service server that communicates with said application to enable the operation of said application running on the user terminal (300).
[0061] The user terminal (300) is a device capable of communicating by connecting to a big data analysis server (400), and includes a terminal possessed by a subscriber who wishes to receive a sales diagnosis service for a franchisee. The user terminal (300) may include any computing device such as a mobile communication terminal such as a smartphone, a desktop, a laptop, a PDA (personal digital assistant), an e-book reader, a tablet, a smart watch, smart glasses, a set-top box for IPTV (Internet Protocol Television), etc., but is not limited thereto.
[0062] A subscriber using a user terminal (300) can perform an authentication procedure for using the service and transmit merchant identification information to a big data analysis server (400) through a membership registration and login request. Here, the merchant identification information may include a store ID, business name, location, industry, business registration number, etc.
[0063] Meanwhile, the user terminal (300) may be restricted from using or accessing certain services according to a billing policy predetermined by the system (10). For example, if specific content is provided only to paid subscribers, access to the content may be restricted if the user terminal (300) does not have a paid account, and an 'access restricted' message may be displayed when attempting to access it. Additionally, the billing policy may vary depending on the subscriber's content consumption pattern. For example, content that was provided for free for a certain period may be converted to paid after the promotion period ends. In this case, the user terminal (300) will no longer be able to access the content for free, and may have to pay an additional fee if it wishes to continue using it.
[0064] FIG. 2 is a schematic block diagram showing the configuration of a big data analysis server according to one embodiment of the present invention.
[0065] Referring to FIG. 2, the big data analysis server (200) includes a communication module (210), an ETL module (220), a scraping module (230), a data processing module (240), and an analysis module (250). In addition, in one embodiment, the big data analysis server (200) may further include a database (DB) (260).
[0066] Each module constituting the big data analysis server (200) according to the embodiment may have aspects that are entirely hardware or partially hardware and partially software. For example, the communication module (210), ETL module (220), scraping module (230), data processing module (240), and analysis module (250) of the big data analysis server (200) may collectively refer to hardware and related software for processing data of a specific format and content or exchanging data via electronic communication.
[0067] In this specification, terms such as “part,” “module,” “device,” “terminal,” “server,” or “system” are intended to refer to a combination of hardware and software driven by said hardware. For example, the hardware may be a data processing device including a CPU or other processor. Additionally, the software driven by the hardware may refer to a running process, object, executable, thread of execution, program, etc.
[0068] Additionally, each component constituting the big data analysis server (200) is not intended to refer to a separate device that is physically separated from one another. That is, each module shown in FIG. 2 is merely a functional classification of the hardware constituting the big data analysis server (200) according to the operation performed by the hardware, and is not required to be provided independently of one another. Of course, depending on the embodiment, it is also possible for one or more of the communication module (210), ETL module (220), scraping module (230), data processing module (240), analysis module (250), and database (260) to be implemented as separate devices that are physically separated from one another.
[0069] The communication module (210) is a part that provides a user interface (UI) for a user utilizing the big data analysis server (200), such as a store owner of a franchise. The communication module (210) receives authentication information for user authentication of the system (10) and corresponding franchise identification information from the user terminal (300) and can store them in the member management database (261). Here, the authentication information may include the system ID and password set by the subscriber at the time of membership registration, the subscriber's biometric recognition information (fingerprint, facial recognition, iris recognition, etc.), and an authentication code or one-time password (OTP) sent to the user terminal (300).
[0070] Meanwhile, in the embodiment described in this specification, the big data analysis server (200) is described as a server that communicates with the control server (100), the web server (WS), and the user terminal (300). However, in other embodiments, the big data analysis server (200) may be implemented in the form of a user device rather than a server. That is, the big data analysis server (200) may be implemented in the form of a user device (e.g., a smartphone or PC) on which a computer program or application is executed to access the control server (100), crawl and scrape the web server (WS), and analyze the results. In this case, the big data analysis server (200) may receive authentication information via a direct input method through an input device (not shown) provided internally. Additionally, the big data analysis server (200) may display analysis information generated using information collected from the control server (100) and the web server (WS) on an output device (not shown) provided internally.
[0071] The ETL module (220) can perform the function of extracting internal data (RID) of the corresponding merchant from the control server (100) using merchant identification information corresponding to the user's authentication information, converting it into a specified format, and loading it into the database (260).
[0072] To implement the above operation, the ETL module (220) may be equipped with a data extraction unit (221), a data conversion unit (223), and a data loading unit (225).
[0073] The data extraction unit (221, Extract) accesses the control server (100) and obtains internal data (RID) related to the operation of the franchise store. An example of the internal data (RID) may include sales information, sales information, menu information, customer information, order information, terminal information, and customer interaction information of the franchise store that can be collected from the kiosk terminal, as described above in Table 1.
[0074] The data conversion unit (223, Transform) performs a preprocessing operation to standardize the format of the internal data (RID) and process it into the required form. That is, it removes errors or noise from the extracted internal data (RID) and converts it into data fields and attributes according to a specified format to maintain data integrity. For example, it may include standardizing date formats or customer information, and converting the currency of sales revenue.
[0075] The data loading unit (225, Load) loads the converted data into the ETL database (262) for storage and quickly accesses it when needed.
[0076] Meanwhile, Fig. 4 is a diagram comparing and illustrating the internal data before and after preprocessing according to an embodiment of the present invention.
[0077] Figure 4 (a) is an example of raw data received from a control server (100), and (b) shows an example of refined data obtained by performing ETL (Extract, Transformation, Load) processing on the raw data.
[0078] Returning to FIG. 2, the scraping module (230) collects external data (RED) that may affect the sales of a merchant from a web server (WS) through web crawling and data scraping. Examples of external data (RED) may include structured data such as sales information, purchase information, tax information, weather information, commercial area information, demographic information, and economic indicator information of the merchant, as well as unstructured data such as customer review information, as described above in Table 2.
[0079] The scraping module (230) may be configured to include a web crawler (231), a scraper (233), and a scheduler (235) as illustrated.
[0080] The web crawler (231) retrieves merchant identification information stored in the database (260) or entered by the user terminal (300) and performs crawling as follows.
[0081] The web crawler (231) initializes a list of URLs (Uniform Resource Locator) of web servers (WS) to be crawled and sets the base URL of the website to be crawled. Here, web servers (WS) may include, but are not limited to, the Credit Finance Association, the Public Data Portal, Home Tax, the National Tax Service, the Korea Meteorological Administration, the Commercial Area Analysis System, social network services (e.g., Instagram, Facebook, Twitter, TikTok, YouTube, etc.), and portal sites (e.g., Naver, Kakao, Google, etc.).
[0082] The web crawler (231) accesses the configured base URL and downloads the web page. It analyzes the HTML content of the web page to extract all links within the page, and the extracted links are added to a build list. The build list is a list of URLs to be crawled and can be used to explore the structure of the website. URLs that have already been crawled are excluded from the build list, and the build list is updated whenever a new link is found. Additionally, duplicate URLs can be removed and URLs sorted according to collection priority to create a list for efficient data collection.
[0083] The web crawler (231) sequentially explores URLs in the build list to structure, index, and index the main information of the web page (e.g., information such as the title of the data page, meta tags, and body content).
[0084] The scraper (233) scrapes external data (RED) by parsing the HTML structure of the crawled webpage. For example, it can traverse the DOM (Document Object Model) tree using HTML parsing libraries such as BeautifulSoup and Scrapy, which are already known, or use regular expressions to identify and collect external data (RED) based on specific tags, classes, IDs, etc.
[0085] The scheduler (235) performs the function of scheduling the scraping module (230) to run at a preset time. By doing so, web crawling and data scraping are automatically performed at specific times, and the work can be planned by taking into account time periods when the network load is low.
[0086] Additionally, the scheduler (235) can set up not only one-time scraping tasks but also regularly repeated tasks. For example, by using a scheduling tool such as cron to run the scraping module (230) daily, weekly, monthly, or at a period specified by the subscriber, the system operator can optimize network performance when collecting external data (RED).
[0087] In summary, the scraping module (230) can scrape data collected from a data collection source obtained through a web crawler (231) using a scraper (233), classifying sales information, purchase information, tax information, commercial area information, demographic information, economic indicator information, customer reviews and rating information, etc. that affect the sales of a franchisee into structured data and unstructured data, and store them in a scraping database (263).
[0088] The data processing module (240) is a part for performing data classification and preprocessing on scraped external data (RED).
[0089] The data processing module (240) can perform classification, filtering, morphological analysis and sentiment analysis of the scraped external data (RED).
[0090] The data processing module (240) may include a data classification unit (241), a text mining unit (243), and a data preprocessing unit (245).
[0091] The data classification unit (241) classifies the scraped external data (RED) into structured data and unstructured data according to the form of the data. Here, structured data can be defined as data that has a structured format and can be stored, searched, and analyzed according to a fixed schema. For example, it includes data that is easily stored and processed in a structure such as a spreadsheet in the form of numbers, dates, amounts, etc. Among the external data (RED), sales information, purchase information, tax information, commercial area information, demographic information, and economic indicator information can be classified as structured data. On the other hand, unstructured data refers to data that is in an unstructured format and does not have a fixed schema or format. For example, it includes text, images, videos, etc., and among the external data (RED), customer review information can be classified as unstructured data.
[0092] Additionally, the data classification unit (241) can process the classified structured data according to at least one attribute. For example, sales information among external data (RED) may be processed into sales status according to a unit period (hour / day / week / month, etc.) and product and / or menu, but is not limited thereto. Such sales status may also be processed into a sales ranking in which sales amounts are sorted based on the unit period / product / menu, etc. Additionally, in one embodiment, the sales amount of the sales information may represent data collected from multiple kiosk terminals equipped within one or more franchise stores, and the subscriber may manage sales across multiple franchise stores in an integrated manner through this.
[0093] The text mining unit (243) can perform natural language processing (NLP) techniques to convert unstructured data into structured data. This will be explained with reference to FIG. 5.
[0094] FIG. 5 is a diagram illustrating the step of converting unstructured data into structured data according to an embodiment of the present invention. FIG. 5 (a) shows unstructured data regarding customer review information, and (b) shows data in which the unstructured data is classified as positive or negative and converted into structured data.
[0095] Referring to FIG. 2 and FIG. 5 together, the text mining unit (243) extracts keywords related to the goods and / or services of a merchant through processes such as tokenization, morphological analysis, and stop word removal of customer review information classified as unstructured data among scraped external data (RED). Here, a review refers to a data object representing the sentiment of a user related to goods and / or services regardless of the data format, and includes various texts (51) regarding customer comments, reputation, opinions, etc. posted on social media and / or portal sites.
[0096] The text mining unit (243) can determine and / or classify each keyword included in the customer review information as either 'positive (52)' or 'negative (53)'. For example, 'positive' keywords may include "good," "cheap," "reasonable," "advantage," "satisfaction," "fast," etc., and 'negative' keywords may include "bad," "expensive," "dissatisfaction," "disadvantage," "slow," etc. The text mining unit (243) can store a sentiment dictionary defining these 'positive' or 'negative' keywords in advance in the sentiment dictionary database (264), and by calling it up and comparing and evaluating it overall with the keywords included in each customer review information, it can determine whether it corresponds to a positive review or a negative review.
[0097] The text mining unit (243) can attach a binary label indicating 'positive' or 'negative' to each customer review information based on the results of sentiment analysis. For example, the data can be standardized by assigning "1 (54)" to positive reviews and "0 (55)" to negative reviews.
[0098] And the text mining unit (243) can store the converted structured data of customer review information in the scraping database (263) and use it to analyze customer reactions to franchise stores.
[0099] Returning to Fig. 2, the data preprocessing unit (245) can preprocess the scraped external data (RED) through various methods such as data cleansing, encoding, and scaling.
[0100] The data preprocessing unit (245) performs a data cleansing operation to identify and remove or replace missing values and / or outliers of external data (RED). For example, data distributed in the lower 25% or upper 25% range can be considered as outliers and removed using the Interquartile Range (IQR) method.
[0101] The data preprocessing unit (245) performs data encoding operations by selectively applying label encoding and / or one-hot encoding according to the characteristics of the data and the purpose of analysis to convert categorical data into numerical data. Here, label encoding maps categories to numbers, and one-hot encoding converts each category into a binary vector.
[0102] The data preprocessing unit (245) performs data scaling to match the units of the data through normalization. For example, daily sales and average order amounts can be converted into values between 0 and 1 so that all characteristics have the same scale.
[0103] Meanwhile, the data preprocessing unit (245) selects at least one feature for a machine learning (ML) model based on the feature importance of the external data (RED). This allows the training time of the model to be shortened and performance to be improved.
[0104] The analysis module (250) is internal data (R) refined through the ETL module (220). eAnalysis information for real-time sales diagnosis is generated by classifying at least one analysis result among sales of a franchisee, peak time, waiting time, revisit frequency, dwell time, and competitor comparison based on at least one of unit time, region, commercial area, industry, menu, product, and weather information using external data (PED; Preprocessing External Data) processed through ID; Refined Inter Data) and a data processing module (240).
[0105] To this end, the analysis module (250) uses refined internal data (R e An integrated time-series dataset can be generated by reconfiguring the ID and processed external data (PED) at the same time unit and synchronizing them based on a preset timestamp. The data reconfiguration and synchronization process can be performed in the following ways.
[0106] 1. Setting Time Units and Reference Points
[0107] The analysis module (250) sets a time unit that serves as the standard for data synchronization. This can set an appropriate time unit based on the franchise operation status and the frequency of data. Additionally, it sets a point in time that serves as the standard for synchronization. For example, the start time of the day can be set to 0:00 or based on the start time of franchise operation, but it is not limited to these.
[0108] 2. Data Synchronization
[0109] The analysis module (250) is refined internal data (R eThe ID and processed external data (PED) are sorted in chronological order, and the sorted data are grouped into the time units set above. Data within each time unit is aggregated to calculate the average, sum, maximum value, minimum value, etc., of that time unit based on the characteristics of the data. Additionally, a timestamp is assigned to the grouped data to record the representative point in time of that time unit.
[0110] 3. Synchronization Process
[0111] The analysis module (250) uses the above data (R e A common time axis is created to synchronize ID, PED). The time axis is created based on the configured time unit and reference point, but based on the timestamp of each time unit. Based on the common time axis, the above data (R e Match ID, PED). Next, for each time unit, the above data (R e Match the timestamps of ID and PED, and integrate the data of the corresponding time unit to create a time series data set.
[0112] The analysis module (250) can generate analysis information for diagnosing sales of a franchisee, such as sales analysis, peak time analysis, waiting time analysis, and revisit frequency analysis, based on the time series data set, and transmit this to a user terminal (300).
[0113] The database (260) may include a member management database (261), an ETL database (262), a scraping database (263), a sentiment dictionary database (264), and an analysis database (265).
[0114] The member management database (261) can efficiently manage member information by mapping and storing the subscriber's authentication information and merchant identification information from the user terminal (300). Here, the authentication information may include the system ID and password set by the subscriber at the time of registration, the subscriber's biometric recognition information (fingerprint, facial recognition, iris recognition, etc.), and an authentication code or one-time password (OTP) sent to the user terminal (300). The merchant identification information may include the store ID, business name, location, industry, business registration number, etc.
[0115] The ETL database (262) is internal data (R) that has undergone the ETL (extraction, transformation, loading) process. e It can efficiently store ID). In addition, stored internal data (R e ID) is managed so that the big data analysis server (200) can search for and retrieve data by utilizing various query and analysis tools.
[0116] The scraping database (263) stores URL links and build lists for data collection sources obtained through the web crawler (231). Additionally, external data (RED) scraped by the scraper (233) can be classified into structured data and unstructured data and stored.
[0117] The sentiment dictionary database (264) analyzes and classifies sentimental content in text data and can systematically store words and phrases related to sentiment. Additionally, it classifies words and phrases into various sentiment categories and assigns positive / negative polarity tags. The sentiment dictionary database (264) can add new sentiment words and expressions or modify existing data, and can be regularly updated to maintain up-to-dateness.
[0118] The analysis database (265) can store and manage various analysis results and visualized information related to the sales diagnosis of franchise stores. The analysis database (265) stores the analysis results in the form of graphs, charts, and dashboards so that they can be intuitively understood. Additionally, reports in which a subscriber of the system (10) identifies the management status of a store and establishes strategies can be stored and managed. The reports may include reports on sales, customer analysis, inventory status, etc., on a weekly or monthly basis, and / or reports that allow for the immediate identification of the current store situation based on real-time data.
[0119] Meanwhile, an example of an analysis module (250) generating an integrated time-series data set through a data reconstruction and synchronization process is described below with reference to FIG. 6.
[0120] FIG. 6 is a diagram illustrating reconstruction and synchronization data in steps according to an embodiment of the present invention. For ease of understanding, internal and external data (ReID, PED) are described in a state prior to being refined or preprocessed.
[0121] Before explaining Figure 6, the necessity of the process of reconstructing and synchronizing data is mentioned below.
[0122] Referring to Table 2, estimating actual customer order times and predicting store peak times using external data (RED) scraped from web servers (WS) has limitations for the following reasons. First, the time spent in the store can vary for each customer depending on the purpose of the visit or the speed of service. Second, there is a high possibility of data incompleteness and variability in payment waiting times. Third, external factors such as weather, holidays, and special events can affect peak times. Therefore, attempts to predict peak times based solely on payment times may actually hinder the efficiency of store operations. Here, peak time refers to the time period when the highest transaction volume is recorded within the store.
[0123] The present invention is a system designed to solve the aforementioned immediate problem, and will be described by assuming an exemplary situation with reference to FIG. 6.
[0124] Figures 6 (a) to (c) are tables analyzed by a small business owner operating a cafe to accurately understand customer store visit patterns and to establish an operation strategy accordingly, by identifying which time slots have the most customers and which menu items are popular, in order to minimize waiting time and maximize sales.
[0125] The analysis module (250) is linked with the kiosk terminal to collect and refine internal data (R e When external data (PED) that has been scraped and processed is received through the ID and the web server (WS), the data is sorted according to the time series order based on the order ID, as shown in (a) of FIG. 6.
[0126] Subsequently, a synchronization reference point is set based on 10:00, the start time of franchise operations, and data is reorganized in 1-hour increments according to the subscriber's requirements (see Fig. 6(b)). At this time, order data (left side of Fig. 6(b)) and payment data (right side of Fig. 6(b)) are grouped respectively based on the set time zone.
[0127] For example, order data generates grouped data by calculating 'total order quantity', 'total order amount', 'top order items', etc., for each time period. Additionally, payment data generates grouped data by calculating 'total payment quantity', 'total payment amount', 'top payment methods', etc., for each time period.
[0128] Subsequently, the grouped order data and payment data are synchronized based on the same time zone and merged into a single row, and the average [order-payment] time for each time zone is calculated and added to the synchronized data (see (c) in Fig. 6).
[0129] Finally, the analysis module (250) analyzes the number of orders and sales by time period based on the synchronized data to identify the peak time. For example, it is confirmed that the number of orders and sales are highest between 10:00 AM and 11:00 AM, which is expected to be the peak time when customers flock to the cafe during commuting hours or breakfast time. Based on this, the analysis module (250) performs an analysis to secure sufficient stock of coffee and cakes that are most frequently ordered during the peak time and to deploy additional personnel to reduce customer waiting times, and can provide this analysis information to the user terminal (300) using a visualization function.
[0130] FIG. 3 is a flowchart illustrating each step of a method for providing a big data-based sales diagnosis service for small business owners according to an embodiment of the present invention. The method according to the present embodiment can be performed using a computing device, that is, a big data analysis server in the form of a user device or a server.
[0131] Referring to FIG. 3, the big data analysis server (200) can receive authentication information, which is membership information of a user who has joined the system (10), from a user terminal (300) (S31). For example, the big data analysis server (200) can receive authentication information entered by a subscriber into their user terminal (300) via a communication method through a network. However, this is exemplary, and in other embodiments, the big data analysis server (200) itself may be implemented as a user device, in which case step S31 may be omitted.
[0132] Next, the big data analysis server (200) can call merchant identification information corresponding to the subscriber's authentication information (S32).
[0133] The big data analysis server (200) transmits franchise identification information to the control server (100) (S33-1) and receives internal data (RID) related to the operation of the franchise from the control server (100) (S34-1).
[0134] And the big data analysis server (200) can extract, transform, and load internal data (RID) into a specified format (S34-2). Here, the control server (100) periodically and / or non-periodically interacts with at least one kiosk terminal (not shown) equipped at a franchise store and receives and stores the internal data (RID).
[0135] In addition, in one embodiment, the big data analysis server (200) transmits merchant identification information to the web server (WS) (S33-2), performs crawling on the web server (WS), and secures data collection data (S35-1).
[0136] Afterwards, the big data analysis server (200) collects external data (RED) that may affect the sales of franchise stores using a scraping method (S35-2).
[0137] In one embodiment, steps S33-1, S34-1, and S34-2 are depicted as chronologically preceding steps S33-2, S35-1, and S35-2; however, it is obvious to a person skilled in the art that in other embodiments, steps S33-1, S34-1, and S34-2 may follow steps S33-2, S35-1, and S35-2.
[0138] Next, the big data analysis server (200) can process data by classifying and filtering the scraped external data (RED), and performing morphological analysis and sentiment analysis on the text data (S36).
[0139] In the data processing process (S36), scraped external data (RED) is classified into structured and unstructured data according to the data type, and customer review information can be structured into positive or negative binary labels through text mining of the unstructured data. Additionally, outliers and / or missing values can be removed from the structured data through data cleansing, encoding, scaling, etc.
[0140] The big data analysis system (300) is internal data (R refined in step S34-2) e Using the ID) and the external data (PED) processed in step S36, at least one analysis result among the franchisee's sales, peak time, waiting time, revisit frequency, dwell time, and competitor comparison is classified according to at least one of unit time, region, commercial area, industry, menu, product, and weather information to generate analysis information for real-time sales diagnosis (S37).
[0141] Next, the big data analysis server (200) generates analysis information in the form of text and / or visualization of the analysis results (S38) and transmits it to the user terminal (300) (S39).
[0142] FIG. 7 is a diagram showing an example of a daily report generated by a big data analysis server specialized for small business owners according to one embodiment of the present invention.
[0143] The report generated by the big data analysis server (200) of the present invention visually provides sales and customer analysis information of the franchise store, thereby supporting small business owners in easily understanding their business status and making effective decisions.
[0144] Referring to Fig. 7, the total number of products sold is displayed at the top left with the title "Product Sales" (71). This simply illustrates the total amount of products sold on the day.
[0145] A bar graph showing the gender ratio of customers is displayed at the bottom left. With the title "Customer," the ratio of male customers to female customers is visually represented in green and orange, respectively (72). This makes it easy to identify the gender distribution of customers who visited the store during a specific period.
[0146] In the center is a bar graph titled "Peaktime Analysis." This graph visually indicates whether sales are concentrated in specific time periods by displaying the number of orders and payments by time period using green and orange bars, respectively (73). The time period when customers place the most orders is between 11:00 AM and 1:00 PM. In particular, orders are highly concentrated between 12:00 PM and 1:00 PM. Payments tend to be made mainly within 15 to 30 minutes after ordering, and the number of payments is also highest between 11:00 AM and 1:00 PM, similar to the order time. Peaktime analysis can prevent popular products from selling out and maximize sales opportunities by securing sufficient inventory during high-demand times. In particular, it can induce customer orders and increase sales through promotions.
[0147] On the right is a line graph titled "Delaytime Analysis." This graph shows the delay time by time of day, with the x-axis representing the time of day and the y-axis representing the delay time (74). This helps improve operational efficiency by identifying patterns where customer waiting times become longer at specific times of day. The average order-to-payment time interval is 17 minutes, and to reduce this interval, the order processing process can be optimized or the payment system improved. For example, additional personnel can be deployed between 9:00 AM and 10:00 AM to increase the speed of order processing.
[0148] As described above, the big data analysis server (200) of the present invention is designed to visually represent various analysis information so that the user can intuitively understand and analyze the data. Each analysis result can provide important information for small business owners to grasp the management status of their store in real time and make effective decisions. However, this is merely illustrative, and meaningful information can be provided to small business owners through the combination of various variables, such as sales trends over a unit period (hourly / daily / weekly / monthly), rankings of order volumes by product during peak times, increases or decreases in sales due to weather changes, and comparisons of franchise sales with surrounding commercial areas.
[0149] Although it has been described above that all components constituting an embodiment of the present invention operate as a single combined unit, the present invention is not necessarily limited to such an embodiment. That is, within the scope of the purpose of the present invention, all components may be selectively combined and operated in one or more ways. Furthermore, while all components may each be implemented as a single independent piece of hardware, they may also be implemented as a computer program having a program module that performs some or all of the combined functions on one or more pieces of hardware by selectively combining some or all of the components. The codes and code segments constituting the computer program can be easily inferred by those skilled in the art of the present invention. An embodiment of the present invention can be implemented by storing such a computer-readable storage medium and reading and executing it by a computer. The storage medium for the computer program may include magnetic recording media, optical recording media, etc.
[0150] Furthermore, terms such as "include," "compose," or "have" described above, unless specifically stated otherwise, mean that the relevant component may be inherent; therefore, they should be interpreted as allowing for the inclusion of additional components rather than excluding them. All terms, including technical or scientific terms, have the same meaning as generally understood by those skilled in the art to which the present invention pertains, unless otherwise defined. Commonly used terms, such as those defined in advance, should be interpreted in accordance with their meaning in the context of the relevant technology and should not be interpreted in an ideal or overly formal sense unless explicitly defined in the present invention.
[0151] Additionally, terms such as first, second, A, B, (a), (b), etc., may be used when describing the components of the present invention. These terms are intended only to distinguish the components from other components, and the nature, order, or sequence of the components is not limited by the terms. Where it is stated that a component is "connected," "connected," or "joined" to another component, it should be understood that the component may be directly connected or joined to the other component, but that another component may also be "connected," "connected," or "joined" between each component.
[0152] The methods described above can be implemented as computer-readable code on a computer-readable recording medium. Computer-readable recording media include all types of recording media in which data that can be decoded by a computer system is stored. Examples include ROM (Read Only Memory), RAM (Random Access Memory), magnetic tape, magnetic disk, flash memory, optical data storage devices, etc. Additionally, computer-readable recording media may be distributed across computer systems connected via a computer network, stored as code that can be read in a distributed manner, and downloaded to the corresponding device for execution.
[0153] Furthermore, although the present invention has been described above with reference to preferred embodiments, those skilled in the art will understand that various modifications and changes can be made to the invention without departing from the spirit and scope of the invention as described in the following claims.
Claims
Claim 1 A big data analysis server specialized for small business owners, capable of connecting to a control server and a web server via a network, comprising: a communication module that receives identification information of a franchisee from a user terminal; an ETL module that extracts, transforms, and loads internal data related to the operation of the franchisee from the control server using the identification information; a scraping module that collects external data affecting the sales of the franchisee from the web server through web crawling and data scraping; an analysis module that generates analysis information for real-time sales diagnosis of the franchisee using the internal data and the external data; and a data processing module that preprocesses the scraped external data; wherein the data processing module comprises a data classification unit that classifies the scraped external data into structured data or unstructured data according to the form of the data. Claim 2 A big data analysis server specialized for small business owners according to claim 1, wherein the internal data comprises at least one of individual sales information, sales information, menu information, customer information, order information, terminal information, and customer interaction information for each transaction of the franchisee. Claim 3 A big data analysis server specialized for small business owners according to claim 1, wherein the external data comprises at least one of daily or monthly sales information, purchase information, tax information, weather information, commercial area information, demographic information, economic indicator information, and customer review and rating information of the franchisee. Claim 4 A big data analysis server specialized for small business owners according to claim 1, wherein the analysis module reconstructs the internal data and the external data in the same time unit and synchronizes them based on a preset timestamp to generate a time-series data set. Claim 5 delete Claim 6 A big data analysis server specialized for small business owners according to claim 1, wherein the data processing module further includes a text mining unit that converts the classified unstructured data into structured data based on natural language processing, and the data classification unit processes the classified structured data according to at least one attribute. Claim 7 A big data analysis server specialized for small business owners according to claim 4, wherein the analysis information is generated by classifying at least one analysis result among sales, peak time, waiting time, revisit frequency, dwell time, and competitor comparison of the franchise store generated based on the time series data set, based on at least one of unit time, region, commercial area, industry, menu, product, and weather information. Claim 8 A big data analysis server specialized for small business owners according to claim 1, wherein the scraping module is executed at a preset time considering the load of the network. Claim 9 A method for providing a sales diagnosis service for small business owners on a big data analysis server capable of connecting to a control server and a web server via a network, comprising: receiving identification information of a franchisee from a user terminal; extracting, converting, and loading internal data related to the operation of the franchisee from the control server using the identification information; collecting external data affecting the sales of the franchisee from the web server through web crawling and data scraping; generating analysis information for real-time sales diagnosis of the franchisee using the internal data and the external data; and preprocessing the scraped external data; wherein the preprocessing is performed by a method including a step of classifying the scraped external data into structured data or unstructured data according to the form of the data. Claim 10 A method for providing a sales diagnosis service for small business owners, characterized in that, in claim 9, the internal data includes at least one of individual sales information, sales information, menu information, customer information, order information, terminal information, and customer interaction information for each transaction of the franchisee. Claim 11 In claim 9, the above external data is characterized by including at least one of daily or monthly sales information, purchase information, tax information, weather information, commercial area information, demographic information, economic indicator information, and customer review and rating information of the above-mentioned franchisee. A method for providing a sales diagnosis service for small business owners. Claim 12 A method for providing a sales diagnosis service for small business owners, characterized in that, in claim 9, the step of generating the analysis information comprises: reconstructing the internal data and the external data in the same time unit and synchronizing them based on a preset timestamp to generate a time-series data set. Claim 13 delete Claim 14 A method for providing a sales diagnosis service for small business owners, characterized in that, in claim 9, the preprocessing further comprises the step of converting the classified unstructured data into structured data based on natural language processing; and the step of processing the classified structured data according to at least one attribute. Claim 15 A method for providing a sales diagnosis service for small business owners, characterized in that, in claim 12, the step of generating the analysis information comprises classifying at least one analysis result among sales, peak time, waiting time, revisit frequency, dwell time, and competitor comparison of the franchise store generated based on the time series data set, based on at least one of unit time, region, commercial area, industry, menu, product, and weather information. Claim 16 A method for providing a small business sales diagnosis service according to claim 9, wherein the step of collecting external data is executed at a preset time considering the load of the network.
Citation Information
Patent Citations
System for forecasting store operation and Method for same
KR1020230011193A
System and method for analysis of stores using scraping and computer program for the same
KR1020230111734A