Knowledge point management method and device, medium, and computer equipment in online teaching
By dividing the partitions of grades and subjects in the online teaching system and building a basic knowledge tree, the problems of dispersed knowledge point management and insufficient correlation in the existing system are solved, and efficient query of knowledge points and teaching resources is achieved.
Patent Information
- Application Number
- CN202411885526.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-19
- Publication Date
- 2025-04-01
AI Technical Summary
The existing online learning platforms and teaching resource libraries have problems of dispersion and weak correlation in knowledge point management, which makes it difficult for teachers and students to quickly locate the required knowledge points and their teaching resources.
By pre-dividing different partitions, each partition corresponds to a grade and subject. The basic knowledge tree under each partition contains all the knowledge points and response teaching resources in that grade and subject, increasing the correlation between knowledge points and knowledge points, as well as between knowledge points and teaching resources.
It improves the efficiency of querying knowledge points, allowing users to simply and conveniently find knowledge points and teaching resources in specific grades and subjects.
Smart Images

Figure CN119739903A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a knowledge point management method and device, storage medium, and computer equipment in online teaching. Background Art
[0002] With the rapid development of educational informatization, knowledge management and teaching resource integration have become key links in improving teaching quality and efficiency. Traditional teaching methods often rely on paper textbooks and teachers' personal teaching experience, making it difficult to achieve knowledge systematization and effective resource sharing. With the continuous advancement of Internet technology and information technology, digital teaching resources have gradually become richer, but how to efficiently organize these resources to match specific teaching needs has become an urgent problem to be solved.
[0003] At present, although there are some online learning platforms and teaching resource libraries on the market, which provide a large amount of course materials and teaching resources including videos, test questions, etc., in actual application, the management of these teaching resources and course materials, as well as different knowledge points, is relatively scattered and the correlation is weak. With the continuous increase and adjustment of knowledge content, it takes a long time to find specific knowledge points, making it difficult for teachers and students to quickly locate the required knowledge points and their teaching resources. Summary of the invention
[0004] In view of this, the present application provides a knowledge point management method and device, storage medium, and computer equipment in online teaching. By pre-dividing different partitions, each partition corresponds to a grade and a subject. The basic knowledge tree under each partition corresponds to all the knowledge points and corresponding teaching resources under the grade and subject, which greatly increases the correlation between each knowledge point and the knowledge point, as well as between the knowledge point and the teaching resources. At the same time, when the user searches for knowledge points under a certain grade and a certain subject, he can directly search the basic knowledge tree under the corresponding partition, which is simple and convenient, and helps to improve query efficiency.
[0005] According to one aspect of the present application, a knowledge point management method in online teaching is provided, which is applied to a first client, and the method includes:
[0006] In response to the first knowledge point management instruction, a first partition index mapping table is obtained, and based on a selection instruction for any partition in the first partition index mapping table, a target first partition is determined, wherein the first partition index mapping table includes a plurality of first partitions, each first partition corresponding to a combined label determined by a grade and a subject;
[0007] Taking each knowledge point corresponding to the first target partition as a tree node, recursively constructing a knowledge tree under the first target partition to obtain an initial basic knowledge tree corresponding to the first target partition;
[0008] For each final node in the initial basic knowledge tree, obtain the teaching resources corresponding to the final node, determine the target teaching resources from the teaching resources, bind the target teaching resources to the final node, obtain the basic knowledge tree under the target first partition, and store the basic knowledge tree under the target first partition in the server.
[0009] According to another aspect of the present application, a method for managing knowledge points in online teaching is provided, which is applied to a server, wherein the server stores a basic knowledge tree generated by any one of the methods for managing knowledge points in online teaching applied to a first client, and the method comprises:
[0010] In response to a data query request sent by a second client, determining a target query range indicated by the data query request, and judging whether the basic knowledge trees cached in a preset cache space include a basic knowledge tree corresponding to the target query range;
[0011] When the cached basic knowledge trees do not include the basic knowledge tree corresponding to the target query scope, retrieving the basic knowledge tree corresponding to the target query scope from the target database, storing the basic knowledge tree corresponding to the target query scope in the preset cache space, and returning the basic knowledge tree corresponding to the target query scope to the second client;
[0012] When the cached basic knowledge trees include the basic knowledge tree corresponding to the target query scope, the basic knowledge tree corresponding to the target query scope is obtained from the cached basic knowledge trees, and the basic knowledge tree corresponding to the target query scope is returned to the second client.
[0013] According to another aspect of the present application, a knowledge point management device in online teaching is provided, which is applied to a first client, and the device includes:
[0014] A partition module, configured to obtain a first partition index mapping table in response to a first knowledge point management instruction, and determine a target first partition based on a selection instruction for any partition in the first partition index mapping table, wherein the first partition index mapping table includes a plurality of first partitions, each of which corresponds to a combined label determined by a grade and a subject;
[0015] A first construction module is used to take each knowledge point corresponding to the target first partition as a tree node, recursively construct a knowledge tree under the target first partition, and obtain an initial basic knowledge tree corresponding to the target first partition;
[0016] The second construction module is used to obtain the teaching resources corresponding to each final node in the initial basic knowledge tree, determine the target teaching resources from the teaching resources, bind the target teaching resources to the final node, obtain the basic knowledge tree under the target first partition, and store the basic knowledge tree under the target first partition in the server.
[0017] According to another aspect of the present application, a knowledge point management device in online teaching is provided, which is applied to a server, wherein the server stores a basic knowledge tree generated by any one of the knowledge point management methods in online teaching applied to a first client, and the device includes:
[0018] A query response module, configured to respond to a data query request sent by a second client, determine a target query range indicated by the data query request, and determine whether the basic knowledge trees cached in a preset cache space contain a basic knowledge tree corresponding to the target query range;
[0019] a cache module, configured to retrieve the basic knowledge tree corresponding to the target query scope from the target database when the cached basic knowledge trees do not contain the basic knowledge tree corresponding to the target query scope, store the basic knowledge tree corresponding to the target query scope in the preset cache space, and return the basic knowledge tree corresponding to the target query scope to the second client;
[0020] The data returning module is used to obtain the basic knowledge tree corresponding to the target query scope from the cached basic knowledge trees when the cached basic knowledge trees contain the basic knowledge tree corresponding to the target query scope, and return the basic knowledge tree corresponding to the target query scope to the second client.
[0021] According to another aspect of the present application, a storage medium is provided, on which a computer program is stored, and when the program is executed by a processor, the method for managing knowledge points in online teaching is implemented.
[0022] According to another aspect of the present application, a computer device is provided, including a storage medium, a processor, and a computer program stored on the storage medium and executable on the processor, wherein the processor implements the above-mentioned knowledge point management method in online teaching when executing the program.
[0023] By means of the above technical scheme, the present application provides a knowledge point management method and device, storage medium, and computer equipment in online teaching. First, the first client responds to the first knowledge point management instruction, obtains and displays the pre-stored first partition index mapping table, where the first partition index mapping table includes multiple first partitions, each of which corresponds to a combination label, which is determined by the grade and the subject. After that, the target first partition can be determined according to the selection instruction of any first partition in the first partition index mapping table, and the first client starts to build an initial basic knowledge tree under this partition. The primary basic knowledge tree is a hierarchical structure used to represent the relationship between knowledge points. For each terminal node in the initial basic knowledge tree, that is, a tree node that no longer has child nodes, all teaching resources related to the terminal node (such as teaching videos, test questions, etc.) can be obtained. Then, select a suitable one from these teaching resources as the target teaching resource, and bind the target teaching resource to the terminal node to obtain the basic knowledge tree. Finally, the constructed basic knowledge tree containing the target teaching resources is stored on the server, so that users can access these knowledge points and teaching resources at any time and on any device. The embodiment of the present application pre-divides different partitions, each partition corresponds to a grade and a subject, and the basic knowledge tree under each partition corresponds to all the knowledge points and corresponding teaching resources under the grade and subject, which greatly increases the correlation between each knowledge point and between the knowledge point and the teaching resources. At the same time, when the user searches for knowledge points under a certain grade and a certain subject, he can directly search the basic knowledge tree under the corresponding partition, which is simple and convenient, and helps to improve query efficiency.
[0024] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0026] Figure 1 A schematic diagram of a process of managing knowledge points in online teaching provided by an embodiment of the present application is shown;
[0027] Figure 2 A schematic diagram showing a flow chart of another method for managing knowledge points in online teaching provided by an embodiment of the present application;
[0028] Figure 3A schematic diagram of the structure of a knowledge point management device in online teaching provided by an embodiment of the present application is shown;
[0029] Figure 4 A schematic diagram showing the structure of another knowledge point management device in online teaching provided by an embodiment of the present application is shown;
[0030] Figure 5 A schematic diagram of the device structure of a computer device provided in an embodiment of the present application is shown. DETAILED DESCRIPTION
[0031] The present application will be described in detail below with reference to the accompanying drawings and in combination with embodiments. It should be noted that the embodiments and features in the embodiments of the present application can be combined with each other without conflict.
[0032] In this embodiment, a knowledge point management method in online teaching is provided, which is applied to a first client, such as Figure 1 As shown, the method includes:
[0033] Step 101, in response to the first knowledge point management instruction, obtain the first partition index mapping table, and determine the target first partition based on the selection instruction of any partition in the first partition index mapping table, wherein the first partition index mapping table includes multiple first partitions, each first partition corresponds to a combined label determined by grade and subject.
[0034] A knowledge point management method in online teaching provided by an embodiment of the present application can be applied in a first client, where the first client refers to a client corresponding to a staff member who manages knowledge points in online teaching. In order to improve the management efficiency and relevance of knowledge points in online teaching, the staff can build a basic knowledge tree based on the knowledge points. First, the staff can log in to the knowledge point management system through the first client, trigger the first knowledge point management icon, and generate a first knowledge point management instruction. After that, the first client responds to the first knowledge point management instruction, obtains and displays the pre-stored first partition index mapping table, where the first partition index mapping table is an index for organizing and classifying knowledge points. The first partition index mapping table includes multiple first partitions, each of which corresponds to a combination label, which is determined by the grade and the subject. For example, the combination label can be grade + subject. When the staff wants to build a basic knowledge tree for grade A + subject B, the first partition corresponding to grade A + subject B can be selected in the first partition index mapping table. The first client can use the first partition corresponding to grade A + subject B as the target first partition according to the staff's selection, and subsequently build the basic knowledge tree corresponding to grade A + subject B under the target first partition.
[0035] Step 102: Take each knowledge point corresponding to the target first partition as a tree node, recursively construct a knowledge tree under the target first partition, and obtain an initial basic knowledge tree corresponding to the target first partition.
[0036] In this embodiment, after determining the target first partition, the first client starts to build an initial basic knowledge tree under this partition. The primary basic knowledge tree is a hierarchical structure used to represent the relationship between knowledge points. Each knowledge point is represented as a tree node. By recursively building this tree, starting from the broadest concept and gradually deepening into more specific knowledge points, when all knowledge points exist as tree nodes, the initial basic knowledge tree is obtained.
[0037] Step 103, for each final node in the initial basic knowledge tree, obtain the teaching resources corresponding to the final node, and determine the target teaching resources from the teaching resources, bind the target teaching resources to the final node, obtain the basic knowledge tree under the target first partition, and store the basic knowledge tree under the target first partition in the server.
[0038] In this embodiment, for each final node in the initial basic knowledge tree, that is, a tree node that no longer has a child node, all teaching resources (such as teaching videos, test questions, etc.) related to the final node can be obtained. Then, select the appropriate one from these teaching resources as the target teaching resource, and bind the target teaching resource to the final node. In this way, when a user clicks on a final knowledge point, the relevant teaching resources can be directly accessed. Here, after getting all the teaching resources of a certain final node, the first client can automatically select a part from them as the target teaching resource, for example, sort the teaching videos in all the teaching resources according to the amount of playback, the praise rate, etc., and use the teaching videos ranked in the front k as the target teaching video. Similarly, select the test questions ranked in the front k from the test questions as the target teaching test questions, merge the target teaching video and the target teaching test questions together, and the target teaching resource can be obtained. In addition, the target teaching resource can also be manually screened out from all the teaching resources by the staff. Finally, the constructed basic knowledge tree containing the target teaching resource is stored on the server, so that the user can access these knowledge points and teaching resources at any time and on any device.
[0039] By applying the technical solution of this embodiment, first, the first client responds to the first knowledge point management instruction, obtains the pre-stored first partition index mapping table and displays it, where the first partition index mapping table includes multiple first partitions, each of which corresponds to a combination label, which is determined by the grade and the subject. Afterwards, the target first partition can be determined according to the selection instruction of any first partition in the first partition index mapping table, and the first client begins to build an initial basic knowledge tree under this partition. The primary basic knowledge tree is a hierarchical structure used to represent the relationship between knowledge points. For each end-level node in the initial basic knowledge tree, that is, a tree node that no longer has child nodes, all teaching resources related to the end-level node (such as teaching videos, test questions, etc.) can be obtained. Then, select an appropriate one from these teaching resources as the target teaching resource, and bind the target teaching resource to the end-level node to obtain the basic knowledge tree. Finally, the constructed basic knowledge tree containing the target teaching resources is stored on the server, so that users can access these knowledge points and teaching resources at any time and on any device. The embodiment of the present application pre-divides different partitions, each partition corresponds to a grade and a subject, and the basic knowledge tree under each partition corresponds to all the knowledge points and corresponding teaching resources under the grade and subject, which greatly increases the correlation between each knowledge point and between the knowledge point and the teaching resources. At the same time, when the user searches for knowledge points under a certain grade and a certain subject, he can directly search the basic knowledge tree under the corresponding partition, which is simple and convenient, and helps to improve query efficiency.
[0040] In an embodiment of the present application, optionally, after step 103, the method further includes: in response to a second knowledge point management instruction, obtaining a second partition index mapping table, and determining a target second partition based on a selection instruction for any partition in the second partition index mapping table, wherein the second partition index mapping table includes multiple second partitions, each second partition corresponds to a combined label determined by the grade, subject and textbook version; constructing a root node and a first-level tree node of a textbook version knowledge tree under the target second partition, and for each of the first-level tree nodes, finding a basic knowledge tree that matches the grade and subject included in the combined label of the target second partition from the basic knowledge tree stored in the server, pulling a subtree corresponding to the first-level tree node from the matching basic knowledge tree, binding the pulled subtree under the first-level tree node, obtaining a textbook version knowledge tree under the target second partition, and storing the textbook version knowledge tree under the target second partition in the server.
[0041] In this embodiment, one or more basic knowledge trees have been stored in the server, and these basic knowledge trees represent the knowledge system of different grades and subjects but have not yet been specific to a certain textbook version. In order to manage the knowledge points more finely, the textbook version knowledge tree can be further constructed. Each textbook version knowledge tree corresponds to a grade, a subject and a textbook version, such as the textbook version knowledge tree of the first grade mathematics people's education version. When constructing the textbook version knowledge tree, the staff of the first client can trigger the second knowledge point management icon to generate a second knowledge point management instruction. After that, the first client responds to the second knowledge point management instruction, obtains the pre-stored second partition index mapping table and displays it. Here, the second partition index mapping table is also an index for organizing and classifying knowledge points. The second partition index mapping table includes multiple partitions, each partition corresponds to a combination label, and the combination label is determined by the grade, subject and textbook version. For example, the combination label can be grade+subject+textbook version. When the staff wants to build a textbook version knowledge tree for grade A + subject B + textbook version C, they can select the second partition corresponding to grade A + subject B + textbook version C in the second partition index mapping table. The second client can use the second partition corresponding to grade A + subject B + textbook version C as the target second partition based on the staff's selection, and subsequently build the textbook version knowledge tree corresponding to grade A + subject B + textbook version C under the target second partition.
[0042] After determining the target second partition, a new knowledge tree can be constructed under this target second partition, called the textbook version knowledge tree. The construction process of this knowledge tree includes: first, creating a root node and a first-level tree node, where the first-level node represents the main chapters or units of the textbook under the textbook version. For each first-level tree node, a basic knowledge tree that matches the combined label (grade, subject) of the target second partition can be found from the basic knowledge tree previously stored on the server. For example, if the staff wants to build a textbook version knowledge tree for grade A + subject B + textbook version C, then the basic knowledge tree for grade A + subject B can be found from the server as the matching basic knowledge tree. Next, pull the subtree corresponding to each first-level tree node from the matching basic knowledge tree. This subtree contains all knowledge points related to the current first-level tree node (such as a chapter or unit), as well as all target teaching resources bound under the last-level node. Afterwards, bind the pulled subtree to the corresponding first-level tree node to complete the construction of the textbook version knowledge tree. Finally, store the constructed textbook version knowledge tree on the server for subsequent use and management. The embodiment of the present application provides a flexible way to manage and update the knowledge point content under different grades, subjects and textbook versions. By constructing and storing the textbook version knowledge tree, more refined management of knowledge points of different textbook versions can be achieved.
[0043] In an embodiment of the present application, optionally, the method also includes: in the process of constructing the initial basic knowledge tree, generating node attributes corresponding to each tree node, storing the node attributes in the tree node, and generating a knowledge point index mapping table according to the knowledge point name corresponding to each tree node and the node unique identifier, wherein the node attributes include the node unique identifier, the parent node unique identifier, the child node list and the node hierarchy; accordingly, the "pulling the subtree corresponding to the first-level tree node from the matching basic knowledge tree, binding the pulled subtree under the first-level tree node, and obtaining the textbook version knowledge tree under the target second partition" includes: determining the node unique identifier corresponding to the first-level tree node according to the knowledge point name corresponding to the first-level tree node and the knowledge point index mapping table; determining the node attributes corresponding to the first-level tree node from the matching basic knowledge tree according to the node unique identifier corresponding to the first-level tree node, and pulling the subtree corresponding to the first-level tree node according to the node attributes, binding the pulled subtree under the first-level tree node, and obtaining the textbook version knowledge tree under the target second partition.
[0044] In this embodiment, in the process of recursively constructing the initial basic knowledge tree, a set of node attributes can be generated for each tree node. These attributes include but are not limited to: node unique identifier: each node has a unique identifier for uniquely identifying the node; parent node unique identifier: a unique identifier pointing to the parent node of the node, which helps to build the structure of the tree and determine the hierarchical relationship between nodes; child node list: a list of unique identifiers of all child nodes of the node, which also helps to build and traverse the structure of the tree, and at the same time, the sibling relationship between each child node can be known; node level: represents the hierarchical depth of the node in the tree, which helps to understand the position of the node in the knowledge system. These generated node attributes are stored in the corresponding tree nodes, so that each node contains information about its position and structure in the tree. In addition, a knowledge point index mapping table can be generated based on the knowledge point name corresponding to each tree node and the node unique identifier. This table is also an index, through which the corresponding node unique identifier can be quickly found according to the knowledge point name.
[0045] When constructing the textbook version knowledge tree under a specific textbook version, first determine the node unique identifier of the first-level tree node according to the knowledge point name corresponding to the first-level tree node and the knowledge point index mapping table generated before. After determining the node unique identifier of the first-level tree node, the corresponding node can be found from the matching basic knowledge tree using this node unique identifier. Then, pull the subtree corresponding to the first-level tree node according to the node attribute of the node found, and this subtree contains all knowledge points and target teaching resources related to the current first-level tree node. Finally, bind the pulled subtree to the corresponding first-level tree node, thereby completing the construction of the textbook version knowledge tree. This process is carried out under the target second partition, ensuring that the constructed textbook version knowledge tree matches a specific grade, subject and textbook version. The embodiment of the present application can efficiently construct and manage the textbook version knowledge tree of different textbook versions by generating and storing node attributes and knowledge point index mapping tables, so that the knowledge points are associated with the textbook version, and the diversified online teaching needs can be better addressed.
[0046] In an embodiment of the present application, optionally, the method further includes: according to a preset polling mechanism, periodically sending the latest data acquisition request for each knowledge tree to the server, determining the knowledge tree with updated data based on the latest data returned by the server, and performing local updates on the knowledge tree with updated data, and, if any knowledge tree is not updated within a preset time interval, increasing the time interval for sending the latest data acquisition request to the server according to preset rules.
[0047] In this embodiment, the polling mechanism is a periodic query mechanism, which is used to periodically send requests to the server to obtain the latest data of each knowledge tree. Specifically, the first client can periodically (such as every certain period of time) send a request to the server to obtain the latest data of each knowledge tree according to the preset polling mechanism. This request can include a unique identifier of the knowledge tree so that the server can return the latest data of the corresponding knowledge tree.
[0048] After receiving the request, the server returns the latest data of each knowledge tree, which may include node attributes of the knowledge tree. Afterwards, the first client can receive and process the latest data, and determine which knowledge trees have data updates by comparing the locally stored knowledge tree data with the latest data returned by the server. For knowledge trees with data updates, the first client can perform local update operations, such as replacing the old node structure, updating node attributes, adding or deleting knowledge points, etc. The update operation can ensure that the locally stored knowledge tree is consistent with the corresponding knowledge tree on the server.
[0049] In addition, the first client can also monitor whether each knowledge tree is updated within a preset time interval. If no knowledge tree is updated within the preset time interval (i.e., the data of all knowledge trees are the latest), the time interval for sending the latest data acquisition request to the server is increased according to the preset rules, which can reduce unnecessary network requests and improve the efficiency and performance of the system. Here, the preset rule can be a fixed time interval each time, or a gradually increasing time interval, which is not limited here.
[0050] In the embodiment of the present application, the first client can obtain the latest data of the knowledge tree on the server in a timely manner through regular polling, thereby ensuring the real-time nature of local data; the polling time interval is dynamically adjusted according to the update frequency of the knowledge tree, thereby achieving a balance between data synchronization and system performance.
[0051] In an embodiment of the present application, optionally, the "determining the knowledge tree with data update based on the latest data returned by the server, and locally updating the knowledge tree with data update" includes: reading the timestamp file corresponding to each knowledge tree, wherein the timestamp file is generated when the knowledge tree is locally constructed or updated; for a first knowledge tree for which a timestamp file does not exist, if the server returns the latest data of the first knowledge tree, the first knowledge tree is determined to be a knowledge tree to be updated, and the first knowledge tree is locally updated based on the latest data returned by the server, and a timestamp file for the first knowledge tree is generated based on the current time; for a second knowledge tree for which a timestamp file exists, determining whether the second knowledge tree is a knowledge tree to be updated based on the first update time recorded in the timestamp file and the second update time of the latest data corresponding to the second knowledge tree, and when the second knowledge tree is the knowledge tree to be updated, locally updating the second knowledge tree based on the current data of the second knowledge tree and the latest data returned by the server, and replacing the first update time in the timestamp file with the current time.
[0052] In this embodiment, whether the local knowledge tree needs to be updated can be determined in the following manner: First, read the locally stored timestamp file corresponding to each knowledge tree. These timestamp files are generated when the knowledge tree is constructed or updated locally, and are used to record the time when the knowledge tree was last updated.
[0053] For those knowledge trees without timestamp files (called first knowledge trees), it means that these knowledge trees have not been stored locally. If the server returns the latest data of these knowledge trees, these knowledge trees will be determined as knowledge trees to be updated. Then, according to the latest data returned by the server, these knowledge trees to be updated are updated locally. After the update is completed, the timestamp files of these knowledge trees can be generated according to the current time for subsequent comparison.
[0054] For those knowledge trees with timestamp files (referred to as second knowledge trees), the first update time recorded in the timestamp file can be read. The first update time is the last local update time of the knowledge tree. At the same time, the second update time of the latest data on these knowledge trees on the server is obtained. By comparing these two timestamps, that is, comparing the first update time and the second update time, it can be determined whether these knowledge trees are knowledge trees to be updated. Specifically, if the first update time is consistent with the second update time, it means that the knowledge tree currently stored locally is already the latest and does not need to be updated again; if the first update time is inconsistent with the second update time, it means that the knowledge tree currently stored locally is not the latest and needs to be updated again. At this time, these knowledge trees can be determined as knowledge trees to be updated. Once determined as knowledge trees to be updated, the second knowledge tree can be locally updated based on the current data of the second knowledge tree and the latest data returned by the server. After the update is completed, the first update time in the timestamp file is replaced with the current time to reflect the latest local update time of the knowledge tree. The embodiment of the present application can efficiently identify the local knowledge tree that needs to be updated through the timestamp file, thereby ensuring that the locally stored knowledge tree is the latest, avoiding the lag of manually pulled update operations, and when the staff forgets to pull the latest data, it directly affects the accuracy of the subsequent work of the staff, and may even cause duplication of work and greatly affect work efficiency.
[0055] In an embodiment of the present application, optionally, the target teaching resources include test questions; the method also includes: in response to a test question grouping instruction, determining the test questions to be moved from the current test question group, and the target test question group corresponding to the test questions to be moved, updating the state variables corresponding to the test questions to be moved based on the current test question group and the target test question group, asynchronously updating the state variables corresponding to the test questions to be moved to the server, and after the server moves the test questions to be moved to the target test question group based on the state variables of the test questions to be moved, displaying the updated test question grouping results through a callback function.
[0056] In this embodiment, the target teaching resources under each terminal node may include teaching videos and may also include teaching questions. When the target teaching resources include questions, the staff may also group the questions under each terminal node. It should be noted that there may be multiple question groups corresponding to each terminal node. For example, question groups of different difficulty levels (5-star difficulty, 4-star difficulty, etc.), question groups of different types (multiple-choice questions, fill-in-the-blank questions, etc.). When grouping, the staff may issue a question grouping instruction through the first client, which may include an identification (such as ID) of the question to be moved, an identification of the current question group to which the question to be moved belongs, and an identification of the target question group to which the question to be moved wants to be moved.
[0057] The first client can search and determine the test questions to be moved from the current test question group according to the test question grouping instruction. At the same time, identify and determine the target test question group, that is, the test question group to which the test questions to be moved will be moved. Afterwards, based on the information of the current test question group and the target test question group, update the state variables of the test questions to be moved. The state variables may include the current test question group information, the target test question group information, etc. The updating of the state variables is a key step to ensure that the test questions can be correctly moved to the target test question group.
[0058] Further, the first client asynchronously sends the updated state variable to the server. After receiving the updated state variable, the server moves the test question to be moved to the target test question group according to the updated content. When the server successfully completes the test question moving operation, the first client can update the user interface through the callback function to display the latest test question grouping information.
[0059] The embodiment of the present application improves the system response speed and user experience through an asynchronous update mechanism; enables the first client to obtain and display the latest test question grouping results in real time by using a callback function; and enables the test questions to be correctly moved to the target test question group by updating the state variables, thereby maintaining the accuracy and consistency of the data.
[0060] In this embodiment, a knowledge point management method in online teaching is provided, which is applied to a server, wherein the server stores a basic knowledge tree generated by any of the above-mentioned knowledge point management methods in online teaching, such as Figure 2 As shown, the method includes:
[0061] Step 201, in response to a data query request sent by a second client, determining a target query range indicated by the data query request, and judging whether the basic knowledge trees cached in a preset cache space include a basic knowledge tree corresponding to the target query range.
[0062] The knowledge point management method in online teaching provided by the embodiment of the present application can be applied to the server side. It should be noted that the server here refers to the server storing the basic knowledge tree. After the basic knowledge tree is stored in the server, the user can further access the server through the second client to query the knowledge point from the server.
[0063] When a user wants to query a knowledge point, a data query request can be generated through the second client. Then, the server can respond to the data query request and determine the target query range contained in the data query request. Next, the server can search in the preset cache space whether a basic knowledge tree matching this target query range has been stored. For example, if a user wants to query the knowledge points of first-grade mathematics, the server can determine whether the basic knowledge tree cached in the preset cache space contains the basic knowledge tree of first-grade mathematics. Here, the preset cache space can be a Redis cache, etc.
[0064] Step 202, when the cached basic knowledge tree does not contain the basic knowledge tree corresponding to the target query scope, retrieve the basic knowledge tree corresponding to the target query scope from the target database, store the basic knowledge tree corresponding to the target query scope in the preset cache space, and return the basic knowledge tree corresponding to the target query scope to the second client.
[0065] In this embodiment, if a basic knowledge tree matching the target query scope is not found in the preset cache space, a basic knowledge tree matching the target query scope can be retrieved from the target database. After the matching basic knowledge tree is retrieved, it can be stored in the preset cache space so that similar query requests can be responded to more quickly in the future. At the same time, the newly retrieved basic knowledge tree can also be returned to the second client. It should be noted that after the staff has constructed the basic knowledge tree, the basic knowledge tree is stored in the target database of the server.
[0066] Step 203: when the cached basic knowledge trees contain the basic knowledge tree corresponding to the target query scope, obtain the basic knowledge tree corresponding to the target query scope from the cached basic knowledge trees, and return the basic knowledge tree corresponding to the target query scope to the second client.
[0067] In this embodiment, if a basic knowledge tree matching the target query range is found in the preset cache space, the basic knowledge tree can be directly retrieved from the preset cache space and returned to the second client without accessing the target database. Since reading data from the cache is usually much faster than retrieving from the database, this can significantly improve the response speed of the system.
[0068] By applying the technical solution of this embodiment, first, the server can respond to the data query request sent by the second client and determine the target query range contained in the data query request. Next, the server can find out whether a basic knowledge tree matching the target query range has been stored in the preset cache space. If the basic knowledge tree matching the target query range is not found in the preset cache space, the basic knowledge tree matching the target query range can be retrieved from the target database. After the matching basic knowledge tree is retrieved, it can be stored in the preset cache space so that similar query requests can be responded to more quickly in the future. At the same time, the newly retrieved basic knowledge tree can also be returned to the second client. If a basic knowledge tree matching the target query range is found in the preset cache space, the basic knowledge tree can be directly taken out from the preset cache space and returned to the second client. The embodiment of the present application reduces the number of visits to the target database by utilizing the preset cache space, thereby improving the response speed and efficiency. In addition, even in the case of cache misses, the required data can be retrieved from the target database and returned to the user, and the cache is updated to support future query requirements, so that various query requests can be processed more flexibly, improving the user experience.
[0069] In an embodiment of the present application, optionally, after receiving the basic knowledge tree corresponding to the target query range, the second client divides the target data corresponding to the basic knowledge tree into blocks in the main thread to obtain multiple data blocks, and allocates each of the data blocks to different working threads, respectively, and builds a target subtree based on the allocated data blocks by each working thread, merges the target subtrees corresponding to different working threads, obtains a restored basic knowledge tree and displays it.
[0070] In this embodiment, after the second client successfully receives the basic knowledge tree returned for its query request, a series of processing steps can be started in the main thread. Through these steps, the target data of the basic knowledge tree returned by the server can be efficiently processed so as to be presented to the user in a clear and organized manner.
[0071] First, the main process of the second client cuts the target data contained in the basic knowledge tree into multiple smaller data blocks. Then, these divided data blocks can be assigned to different worker threads (such as Web Workers) and processed in parallel by different worker threads, thereby improving processing efficiency. Each worker thread is responsible for processing one or more data blocks and constructing corresponding target subtrees based on these data blocks. Among them, the target subtree is part of the basic knowledge tree, which contains all the information and structure in the data block.
[0072] When all worker threads have completed their respective target subtree construction tasks, the main process of the second client can collect these target subtrees and merge them to recombine all target subtrees into a complete basic knowledge tree, which is consistent with the basic knowledge tree originally received in structure and content.
[0073] Finally, the basic knowledge tree obtained after the merging process is displayed to the user. In this way, the user can intuitively see the query results and can perform further analysis or operations as needed. For example, if the user is querying the knowledge points of first-grade mathematics, the basic knowledge tree of first-grade mathematics at the first N levels can be returned to the user and displayed to the user. At this time, the user can clearly see what knowledge points there are in first-grade mathematics and the relationship between each knowledge point. After that, the user can further click on a certain knowledge point to further query, such as querying the subdivided content under the knowledge point, or the target teaching resources under the knowledge point, etc.
[0074] The embodiment of the present application realizes efficient processing of the basic knowledge tree on the second client side through multiple steps such as block processing, parallel construction and merging processing, and provides the user with a clear and organized query result display.
[0075] In an embodiment of the present application, optionally, before step 201, the method further includes: determining the number of threads in a working state, and determining the total number of idle connections in the connection pool according to the preset number of idle connections corresponding to each thread and the number of threads; when the total number of idle connections is less than or equal to the preset maximum number of idle connections, creating idle connections in the connection pool based on the total number of idle connections; when the total number of idle connections is greater than the preset number of idle connections, creating idle connections in the connection pool based on the maximum number of idle connections; the "determining the target query range indicated by the data query request in response to the data query request sent by the second client" in step 201 includes: obtaining idle connections from the connection pool in response to the data query request sent by the second client, and obtaining a basic knowledge tree corresponding to the target query range indicated by the data query request based on the idle connections.
[0076] In this embodiment, before processing the data query request of the second client, the server can first establish an appropriate number of idle connections in the connection pool, and optimize the data access efficiency through the pre-established idle connections. First, the server can determine the number of threads currently in working state, which can be background threads for processing various requests. Then, according to the preset number of idle connections corresponding to each thread and the current number of threads, the total number of idle connections in the connection pool is calculated. For example, the preset number of idle connections is 2, and the number of threads currently in working state is n, then the total number of idle connections in the connection pool can be 2n.
[0077] After calculating the total number of idle connections, the total number of idle connections can be further compared with the preset maximum number of idle connections (used to limit the maximum number of idle connections in the connection pool to prevent resource waste). When the total number of idle connections is less than or equal to the preset maximum number of idle connections, the server can create idle connections in the connection pool based on the current total number of idle connections to ensure that there are enough idle connections in the server for threads to use, so as to improve the concurrency and efficiency of data access.
[0078] However, when the total number of idle connections is greater than the preset number of idle connections, the server can create idle connections in the connection pool based on the maximum number of idle connections to ensure that there are enough idle connections in the server for threads to use without causing resource waste and excessively increasing the burden on the server.
[0079] Subsequently, when the second client sends a data query request, the server first obtains an idle connection from the managed connection pool, and then uses the idle connection obtained from the connection pool to obtain the corresponding basic knowledge tree according to the target query range specified in the data query request.
[0080] The embodiment of the present application optimizes the efficiency and performance of data access by pre-managing the idle connections in the connection pool. When the second client sends a data query request, it can quickly obtain an idle connection from the connection pool and use the connection to perform a query operation, thereby obtaining the basic knowledge tree corresponding to the target query range. This method not only improves the response speed, but also reduces resource occupation and waste through effective connection management.
[0081] In an embodiment of the present application, optionally, after creating an idle connection in the connection pool, the method further includes: monitoring the number of threads in a working state at a preset frequency, and dynamically adjusting the total number of idle connections according to the preset number of idle connections corresponding to each thread and the monitored number of threads, and creating or closing idle connections in the connection pool based on the adjusted total number of idle connections; and / or, monitoring the idle time corresponding to each idle connection in real time, and closing any idle connection when the idle time corresponding to any idle connection is greater than a preset time threshold.
[0082] In this embodiment, resource utilization can also be optimized by dynamically adjusting the number of idle connections and closing idle connections that have not been used for a long time. Specifically, the server can monitor the number of threads in working state at a preset frequency (for example, every few minutes). This frequency can be determined based on factors such as server load and resource availability, with the purpose of reflecting the current thread usage as accurately as possible without affecting server performance. Subsequently, based on the monitored number of threads and the preset number of idle connections corresponding to each thread, the server can recalculate the total amount of idle connections required.
[0083] If the calculated total number of idle connections is inconsistent with the number of idle connections in the current connection pool, the server can make corresponding adjustments. Specifically, if the calculated total number of idle connections is more than the number of currently existing idle connections, new idle connections can be created in the connection pool; if the calculated total number of idle connections is less than the number of currently existing idle connections, some unnecessary idle connections can be closed in the connection pool to release resources.
[0084] In addition, the server can also monitor the idle time of each idle connection in real time. The idle time refers to the time period from when the connection is released back to the connection pool to when it is used again. When the idle time of an idle connection is monitored to exceed the preset time threshold, it means that the idle connection has not been used for a long time. At this time, the operation of closing the idle connection can be triggered, so that resources that have not been used for a long time can be released to avoid unnecessary resource occupation and waste. Here, the preset time threshold can be determined based on experience.
[0085] The embodiment of the present application can more effectively manage the resources in the connection pool by dynamically adjusting the total amount of idle connections and real-time monitoring and closing idle connections that have not been used for a long time. This dynamic management strategy not only improves the resource utilization of the system, but also maintains good performance when the server load changes. At the same time, by closing idle connections that have not been used for a long time, the server can reduce unnecessary resource occupation and waste.
[0086] In an embodiment of the present application, optionally, the method also includes: when receiving a tree node update instruction of any basic knowledge tree, determining the target tree node corresponding to the tree node update instruction, identifying the textbook version knowledge tree containing the target tree node, and sending an update prompt of the target tree node to the management terminal of the textbook version knowledge tree.
[0087] In this embodiment, the staff can also update the tree nodes of the basic knowledge tree stored in the server, such as deleting a certain tree node, moving a certain tree node, etc. After the server receives the update instruction, it can parse this instruction to determine which tree node specifically needs to be updated. Specifically, the node unique identifier specified in the instruction can be identified so that the target tree node can be accurately located in the huge knowledge tree structure. Since the target tree node may have been used for different textbook version knowledge trees before, therefore, after the target tree node is updated, the server can identify which textbook version knowledge trees contain the target tree node. Once the textbook version knowledge tree containing the target tree node is determined, the server can send an update prompt to the terminal (such as the first client of the above-mentioned staff) responsible for managing the textbook version knowledge tree. This prompt can contain enough information to let the staff of the management terminal know which tree node needs to be updated, and the required update content. The embodiment of the present application can ensure that the relevant staff can timely understand and process the update requirements of the tree node by automatically pushing the update prompt, thereby ensuring the accuracy and timeliness of the update of the relevant textbook version knowledge tree.
[0088] Further, as Figure 1 The specific implementation of the method, the embodiment of the present application provides a knowledge point management device in online teaching, which is applied to a first client, such as Figure 3 As shown, the device comprises:
[0089] A partition module, configured to obtain a first partition index mapping table in response to a first knowledge point management instruction, and determine a target first partition based on a selection instruction for any partition in the first partition index mapping table, wherein the first partition index mapping table includes a plurality of first partitions, each of which corresponds to a combined label determined by a grade and a subject;
[0090] A first construction module is used to take each knowledge point corresponding to the target first partition as a tree node, recursively construct a knowledge tree under the target first partition, and obtain an initial basic knowledge tree corresponding to the target first partition;
[0091] The second construction module is used to obtain the teaching resources corresponding to each final node in the initial basic knowledge tree, determine the target teaching resources from the teaching resources, bind the target teaching resources to the final node, obtain the basic knowledge tree under the target first partition, and store the basic knowledge tree under the target first partition in the server.
[0092] Optionally, the device further comprises:
[0093] The partitioning module is further configured to, after storing the basic knowledge tree under the target first partition in the server, obtain a second partition index mapping table in response to a second knowledge point management instruction, and determine the target second partition based on a selection instruction for any partition in the second partition index mapping table, wherein the second partition index mapping table includes a plurality of second partitions, each second partition corresponding to a combined label determined by a grade, a subject, and a textbook version;
[0094] The third construction module is used to construct the root node and the first-level tree node of the textbook version knowledge tree under the target second partition. For each of the first-level tree nodes, a basic knowledge tree matching the grade and subject contained in the combined label of the target second partition is found from the basic knowledge tree stored in the server, and the subtree corresponding to the first-level tree node is pulled from the matching basic knowledge tree, and the pulled subtree is bound to the first-level tree node to obtain the textbook version knowledge tree under the target second partition, and the textbook version knowledge tree under the target second partition is stored in the server.
[0095] Optionally, the device further comprises:
[0096] A node attribute generation module, used to generate node attributes corresponding to each tree node in the process of constructing the initial basic knowledge tree, store the node attributes in the tree node, and generate a knowledge point index mapping table according to the knowledge point name and node unique identifier corresponding to each tree node, wherein the node attributes include a node unique identifier, a parent node unique identifier, a child node list, and a node level;
[0097] Accordingly, the third building block is used to:
[0098] Determine a node unique identifier corresponding to the first-level tree node according to the knowledge point name corresponding to the first-level tree node and the knowledge point index mapping table;
[0099] According to the node unique identifier corresponding to the first-level tree node, the node attribute corresponding to the first-level tree node is determined from the matching basic knowledge tree, and the subtree corresponding to the first-level tree node is pulled according to the node attribute, and the pulled subtree is bound to the first-level tree node to obtain the textbook version knowledge tree under the target second partition.
[0100] Optionally, the device further includes a polling module; the polling module is used to:
[0101] According to a preset polling mechanism, a request for obtaining the latest data of each knowledge tree is periodically sent to the server, and based on the latest data returned by the server, a knowledge tree with updated data is determined, and local updates are performed on the knowledge tree with updated data, and,
[0102] If any knowledge tree is not updated within a preset time interval, the time interval for sending the latest data acquisition request to the server is increased according to a preset rule.
[0103] Optionally, the polling module is further used to:
[0104] Reading a timestamp file corresponding to each knowledge tree, wherein the timestamp file is generated when the knowledge tree is locally constructed or updated;
[0105] For a first knowledge tree for which a timestamp file does not exist, if the server returns the latest data of the first knowledge tree, the first knowledge tree is determined as a knowledge tree to be updated, the first knowledge tree is locally updated according to the latest data returned by the server, and a timestamp file of the first knowledge tree is generated according to the current time;
[0106] For a second knowledge tree having a timestamp file, determine whether the second knowledge tree is a knowledge tree to be updated based on a first update time recorded in the timestamp file and a second update time of the latest data corresponding to the second knowledge tree. When the second knowledge tree is a knowledge tree to be updated, locally update the second knowledge tree based on the current data of the second knowledge tree and the latest data returned by the server, and replace the first update time in the timestamp file with the current time.
[0107] Optionally, the target teaching resource includes test questions; and the device further includes:
[0108] A grouping module is used to respond to a question grouping instruction, determine the questions to be moved from the current question group, and the target question group corresponding to the questions to be moved, update the state variables corresponding to the questions to be moved based on the current question group and the target question group, asynchronously update the state variables corresponding to the questions to be moved to the server, and after the server moves the questions to be moved to the target question group based on the state variables of the questions to be moved, display the updated question grouping results through a callback function.
[0109] Further, as Figure 2 The specific implementation of the method, the embodiment of the present application provides a knowledge point management device in online teaching, which is applied to a server, and the server stores a basic knowledge tree generated by any of the above-mentioned knowledge point management methods in online teaching, such as Figure 4 As shown, the device comprises:
[0110] A query response module, configured to respond to a data query request sent by a second client, determine a target query range indicated by the data query request, and determine whether the basic knowledge trees cached in a preset cache space contain a basic knowledge tree corresponding to the target query range;
[0111] a cache module, configured to retrieve the basic knowledge tree corresponding to the target query scope from the target database when the cached basic knowledge trees do not contain the basic knowledge tree corresponding to the target query scope, store the basic knowledge tree corresponding to the target query scope in the preset cache space, and return the basic knowledge tree corresponding to the target query scope to the second client;
[0112] The data returning module is used to obtain the basic knowledge tree corresponding to the target query scope from the cached basic knowledge trees when the cached basic knowledge trees contain the basic knowledge tree corresponding to the target query scope, and return the basic knowledge tree corresponding to the target query scope to the second client.
[0113] Optionally, after receiving the basic knowledge tree corresponding to the target query range, the second client divides the target data corresponding to the basic knowledge tree into blocks in the main thread to obtain multiple data blocks, and allocates each of the data blocks to different working threads, and builds a target subtree based on the allocated data blocks by each working thread, merges the target subtrees corresponding to different working threads, obtains a restored basic knowledge tree, and displays it.
[0114] Optionally, the device further includes an idle connection creation module; the idle connection creation module is used to:
[0115] The step of determining the number of threads in working state in response to the data query request sent by the second client before determining the target query range indicated by the data query request, and determining the total number of idle connections in the connection pool according to the preset number of idle connections corresponding to each of the threads and the number of threads;
[0116] When the total number of idle connections is less than or equal to a preset maximum number of idle connections, creating idle connections in the connection pool based on the total number of idle connections;
[0117] When the total number of idle connections is greater than a preset number of idle connections, creating an idle connection in the connection pool based on the maximum number of idle connections;
[0118] The query response module is used to:
[0119] In response to a data query request sent by the second client, an idle connection is obtained from the connection pool, and a basic knowledge tree corresponding to a target query range indicated by the data query request is obtained based on the idle connection.
[0120] Optionally, the device further includes an idle connection adjustment module; the idle connection adjustment module is used to:
[0121] After creating idle connections in the connection pool, monitoring the number of threads in working state at a preset frequency, dynamically adjusting the total number of idle connections according to the preset number of idle connections corresponding to each thread and the monitored number of threads, and creating or closing idle connections in the connection pool based on the adjusted total number of idle connections; and / or,
[0122] The idle time corresponding to each idle connection is monitored in real time, and when the idle time corresponding to any idle connection is greater than a preset time threshold, the any idle connection is closed.
[0123] Optionally, the device further comprises:
[0124] The update push module is used to determine the target tree node corresponding to the tree node update instruction when receiving the tree node update instruction of any basic knowledge tree, and identify the textbook version knowledge tree containing the target tree node, and send the update prompt of the target tree node to the management terminal of the textbook version knowledge tree.
[0125] It should be noted that for other corresponding descriptions of the functional units involved in the knowledge point management device in online teaching provided in the embodiment of the present application, reference can be made to Figure 1 to Figure 2 The corresponding description in the method will not be repeated here.
[0126] The present application also provides a computer device, which may be a personal computer, a server, a network device, etc. Figure 5 As shown, the computer device includes a bus, a processor, a memory and a communication interface, and may also include an input and output interface and a display device. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store location information. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, the steps in each method embodiment are implemented.
[0127] Those skilled in the art will understand that Figure 5 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0128] In one embodiment, a computer-readable storage medium is provided. The computer-readable storage medium may be non-volatile or volatile, and stores a computer program thereon. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0129] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0130] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties.
[0131] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.
[0132] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0133] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be construed as limiting the scope of the present application. It should be noted that, for a person of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A knowledge point management method in online teaching, characterized in that: Applied to a first client, the method includes: In response to the first knowledge point management instruction, a first partition index mapping table is obtained, and based on a selection instruction for any partition in the first partition index mapping table, a target first partition is determined, wherein the first partition index mapping table includes a plurality of first partitions, each first partition corresponding to a combined label determined by a grade and a subject; Taking each knowledge point corresponding to the first target partition as a tree node, recursively constructing a knowledge tree under the first target partition to obtain an initial basic knowledge tree corresponding to the first target partition; For each final node in the initial basic knowledge tree, obtain the teaching resources corresponding to the final node, determine the target teaching resources from the teaching resources, bind the target teaching resources to the final node, obtain the basic knowledge tree under the target first partition, and store the basic knowledge tree under the target first partition in the server.
2. The method according to claim 1, characterized in that After storing the basic knowledge tree under the target first partition in the server, the method further includes: In response to the second knowledge point management instruction, a second partition index mapping table is obtained, and based on a selection instruction for any partition in the second partition index mapping table, a target second partition is determined, wherein the second partition index mapping table includes a plurality of second partitions, each second partition corresponds to a combined label determined by a grade, a subject, and a textbook version; Construct a root node and a first-level tree node of the textbook version knowledge tree under the target second partition. For each of the first-level tree nodes, find a basic knowledge tree that matches the grade and subject contained in the combined label of the target second partition from the basic knowledge tree stored in the server, pull the subtree corresponding to the first-level tree node from the matching basic knowledge tree, bind the pulled subtree under the first-level tree node, obtain the textbook version knowledge tree under the target second partition, and store the textbook version knowledge tree under the target second partition in the server.
3. The method according to claim 2, characterized in that The method further comprises: In the process of constructing the initial basic knowledge tree, node attributes corresponding to each tree node are generated, the node attributes are stored in the tree node, and a knowledge point index mapping table is generated according to the knowledge point name corresponding to each tree node and the node unique identifier, wherein the node attributes include the node unique identifier, the parent node unique identifier, the child node list and the node level; Correspondingly, the subtree corresponding to the first-level tree node is pulled from the matching basic knowledge tree, and the pulled subtree is bound to the first-level tree node to obtain the textbook version knowledge tree under the target second partition, including: Determine a node unique identifier corresponding to the first-level tree node according to the knowledge point name corresponding to the first-level tree node and the knowledge point index mapping table; According to the node unique identifier corresponding to the first-level tree node, the node attribute corresponding to the first-level tree node is determined from the matching basic knowledge tree, and the subtree corresponding to the first-level tree node is pulled according to the node attribute, and the pulled subtree is bound to the first-level tree node to obtain the textbook version knowledge tree under the target second partition.
4. The method according to any one of claims 1 to 3, characterized in that The method further comprises: According to a preset polling mechanism, a request for obtaining the latest data of each knowledge tree is periodically sent to the server, and based on the latest data returned by the server, a knowledge tree with updated data is determined, and local updates are performed on the knowledge tree with updated data, and, If any knowledge tree is not updated within a preset time interval, the time interval for sending the latest data acquisition request to the server is increased according to a preset rule.
5. The method according to claim 4, characterized in that The step of determining the knowledge tree with updated data according to the latest data returned by the server, and locally updating the knowledge tree with updated data includes: Reading a timestamp file corresponding to each knowledge tree, wherein the timestamp file is generated when the knowledge tree is locally constructed or updated; For a first knowledge tree for which a timestamp file does not exist, if the server returns the latest data of the first knowledge tree, the first knowledge tree is determined as a knowledge tree to be updated, the first knowledge tree is locally updated according to the latest data returned by the server, and a timestamp file of the first knowledge tree is generated according to the current time; For a second knowledge tree having a timestamp file, determine whether the second knowledge tree is a knowledge tree to be updated based on a first update time recorded in the timestamp file and a second update time of the latest data corresponding to the second knowledge tree. When the second knowledge tree is a knowledge tree to be updated, locally update the second knowledge tree based on the current data of the second knowledge tree and the latest data returned by the server, and replace the first update time in the timestamp file with the current time.
6. The method according to any one of claims 1 to 3, characterized in that The target teaching resources include test questions; the method further includes: In response to a question grouping instruction, questions to be moved are determined from the current question group, as well as a target question group corresponding to the questions to be moved, state variables corresponding to the questions to be moved are updated based on the current question group and the target question group, the state variables corresponding to the questions to be moved are asynchronously updated to the server, and after the server moves the questions to be moved to the target question group based on the state variables of the questions to be moved, the updated question grouping result is displayed through a callback function.
7. A knowledge point management method in online teaching, characterized in that: Applied to a server, the server storing a basic knowledge tree generated by the knowledge point management method in online teaching according to any one of claims 1 to 6, the method comprising: In response to a data query request sent by a second client, determining a target query range indicated by the data query request, and judging whether the basic knowledge trees cached in a preset cache space include a basic knowledge tree corresponding to the target query range; When the cached basic knowledge trees do not include the basic knowledge tree corresponding to the target query scope, retrieving the basic knowledge tree corresponding to the target query scope from the target database, storing the basic knowledge tree corresponding to the target query scope in the preset cache space, and returning the basic knowledge tree corresponding to the target query scope to the second client; When the cached basic knowledge trees include the basic knowledge tree corresponding to the target query scope, the basic knowledge tree corresponding to the target query scope is obtained from the cached basic knowledge trees, and the basic knowledge tree corresponding to the target query scope is returned to the second client.
8. The method according to claim 7, characterized in that After receiving the basic knowledge tree corresponding to the target query range, the second client divides the target data corresponding to the basic knowledge tree into blocks in the main thread to obtain multiple data blocks, and allocates each of the data blocks to different working threads. Each working thread builds a target subtree based on the allocated data blocks, and merges the target subtrees corresponding to different working threads to obtain a restored basic knowledge tree and display it.
9. The method according to claim 7, characterized in that: Before determining, in response to the data query request sent by the second client, the target query range indicated by the data query request, the method further includes: Determine the number of threads in working state, and determine the total number of idle connections in the connection pool according to the preset number of idle connections corresponding to each thread and the number of threads; When the total number of idle connections is less than or equal to a preset maximum number of idle connections, creating idle connections in the connection pool based on the total number of idle connections; When the total number of idle connections is greater than a preset number of idle connections, creating an idle connection in the connection pool based on the maximum number of idle connections; The step of determining, in response to the data query request sent by the second client, a target query range indicated by the data query request includes: In response to a data query request sent by the second client, an idle connection is obtained from the connection pool, and a basic knowledge tree corresponding to a target query range indicated by the data query request is obtained based on the idle connection.
10. The method according to claim 9, characterized in that After creating an idle connection in the connection pool, the method further includes: Monitoring the number of threads in working state at a preset frequency, dynamically adjusting the total number of idle connections according to the preset number of idle connections corresponding to each thread and the monitored number of threads, and creating or closing idle connections in the connection pool based on the adjusted total number of idle connections; and / or, The idle time corresponding to each idle connection is monitored in real time, and when the idle time corresponding to any idle connection is greater than a preset time threshold, the any idle connection is closed.
11. The method according to claim 1, characterized in that: The method further comprises: When receiving a tree node update instruction of any basic knowledge tree, determine the target tree node corresponding to the tree node update instruction, identify the textbook version knowledge tree containing the target tree node, and send an update prompt of the target tree node to the management terminal of the textbook version knowledge tree.
12. A knowledge point management device in online teaching, characterized in that: Applied to a first client, the device comprises: A partition module, configured to obtain a first partition index mapping table in response to a first knowledge point management instruction, and determine a target first partition based on a selection instruction for any partition in the first partition index mapping table, wherein the first partition index mapping table includes a plurality of first partitions, each of which corresponds to a combined label determined by a grade and a subject; A first construction module is used to take each knowledge point corresponding to the target first partition as a tree node, recursively construct a knowledge tree under the target first partition, and obtain an initial basic knowledge tree corresponding to the target first partition; The second construction module is used to obtain the teaching resources corresponding to each final node in the initial basic knowledge tree, determine the target teaching resources from the teaching resources, bind the target teaching resources to the final node, obtain the basic knowledge tree under the target first partition, and store the basic knowledge tree under the target first partition in the server.
13. A knowledge point management device in online teaching, characterized in that: Applied to a server, the server storing a basic knowledge tree generated by the knowledge point management method in online teaching according to any one of claims 1 to 6, the device comprising: A query response module, configured to respond to a data query request sent by a second client, determine a target query range indicated by the data query request, and determine whether the basic knowledge trees cached in a preset cache space contain a basic knowledge tree corresponding to the target query range; a cache module, configured to retrieve the basic knowledge tree corresponding to the target query scope from the target database when the cached basic knowledge trees do not contain the basic knowledge tree corresponding to the target query scope, store the basic knowledge tree corresponding to the target query scope in the preset cache space, and return the basic knowledge tree corresponding to the target query scope to the second client; The data returning module is used to obtain the basic knowledge tree corresponding to the target query scope from the cached basic knowledge trees when the cached basic knowledge trees contain the basic knowledge tree corresponding to the target query scope, and return the basic knowledge tree corresponding to the target query scope to the second client.
14. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 11 is implemented.
15. A computer device comprising a storage medium, a processor, and a computer program stored in the storage medium and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 11 is implemented.