Database system for managing 20,000 20-inch PMTs at JUNO

2022-05-12 07:53JunWangNikolayAnfimovJingYuanGuoYuGuHangHuMinLiQiuMeiMaAlexanderOlshevskiyZhaoYuanPengZhongHuaQinAlexanderTietzschBjornWonsakWeiWangZhiMinWangMeiHangXuWanXieZhengYunYouHaiQiongZhangRongZhao
Nuclear Science and Techniques 2022年3期

Jun Wang· Nikolay Anfimov · Jing-Yuan Guo · Yu Gu · Hang Hu ·Min Li · Qiu-Mei Ma · Alexander Olshevskiy · Zhao-Yuan Peng ·Zhong-Hua Qin,6 · Alexander Tietzsch · Bjo¨rn Wonsak · Wei Wang,9·Zhi-Min Wang · Mei-Hang Xu,6 · Wan Xie · Zheng-Yun You·Hai-Qiong Zhang · Rong Zhao

Abstract A database system, known as the large PMT characterization and instrumentation database system(LPMT-CIDS), was designed and implemented for the Jiangmen Underground Neutrino Observatory (JUNO).The system is based on a Linux + Apache + MySQL +PHP (LAMP) server and focuses on modularization and architecture separation. It covers all the testing stages for the 20-inch photomultiplier tubes (PMTs) at JUNO and provides its users with data storage, analysis, and visualization services. Based on the successful use of the system in the 20-inch PMT testing program, its design approach and construction elements can be extended to other projects.

Keywords LAMP · Photomultiplier tubes · Jiangmen underground neutrino observatory · Data visualization

1 Introduction

A photomultiplier tube(PMT)is a photosensitive device that converts optical signals into electrical signals using the photoelectric effect combined with secondary emission.PMTs are widely used in modern nuclear physics and particle physics experiments [1-9], especially in some reactor neutrino oscillation experiments, such as at the Jiangmen Underground Neutrino Observatory (JUNO),which require tens of thousands of PMTs [10].

Many experiments (such as IMB [35], IceCube [36],MiniBooNE [37, 38], Daya Bay [39], Chooz [40],LHAASO [41], and KM3Net [42], etc.) have tested numerous PMTs. However, handling the copious amounts of results data, performing all the analysis steps over long time scales, and sharing the data with collaborator while maintaining access control constitutes a major challenge.It is particularly challenging, at JUNO, to overcome these difficulties when testing the large number of PMTs involved.This makes a database system for managing PMT testing data essential for JUNO.

Therefore, we designed and implemented a database system based on a LAMP server, a well-known opensource web development platform. The four software components that are combined to form an LAMP server are a Linux operating system, Apache web server, MySQL/MariaDB/MongoDB database software, and PHP/Perl/Python programming language. LAMP servers have become popular among developers because of their advantages in terms of cross-platform capabilities, cost effectiveness,security,stability,and fast web page loading,which provide a powerful and convenient deployment environment. This paper focuses on the database system applied to the LPMT testing program for JUNO,henceforth denoted as the ‘‘large PMT characterization and instrumentation database system’’ (LPMT-CIDS).

2 Description of the LPMT characterization and instrumentation station

JUNO collaboration rented a warehouse with an area of~4500 m2from Zhongshan Pan-Asia Electric Co.,Ltd.(Pan-Asia) to build a LPMT characterization and instrumentation station.As shown in Fig.1,this warehouse contains 35 rows of shelves, a visual inspection station, a potting station [34], two scanning stations [33], four container systems (i.e., PMT mass testing systems[22, 23, 33]), an office, a dressing room, eight servers, an uninterruptible power supply(UPS),80 sets of temperature and humidity sensors, three Wi-Fi routers, and free space.Figure 2 shows photos of the warehouse interior.

The shelves are used to store LPMTs. The visual inspection station is used to check whether the LPMTs meet the JUNO acceptance criteria in terms of bubbles,weight,glass-shell thickness,foreign matter,and geometric dimensions. The 80 sets of temperature and humidity sensors were installed 1.5 m and 5 m above the ground.The 40 sets of temperature and humidity sensors on the lower floor have light-emitting diode (LED) displays that monitor their readout in real time. The signals from the 3 Wi-Fi routers cover the entire warehouse to ensure that all mobile devices in the warehouse can connect to the LAMP server. There is sufficient free space in the warehouse to move and temporarily store PMTs. In addition, the warehouse is equipped with air conditioners, surveillance cameras, and smoke alarms (these are unrelated to our LAMP server and are thus not shown in Fig. 1).

Figure 3 illustrates the standard process flow for the LPMTs at JUNO.The LPMTs were registered immediately upon reception at the warehouse after purchase. The packaging was checked for damage. Then, the LPMT performance parameter data provided by the vendor and the registration data were entered into the database.Manual checking of all the registered LPMTs by trained staff at the visual inspection station was mandatory. The LPMTs that passed a visual inspection were loaded into container systems #A and #B for mass testing, to examine and characterize their performance.These two container systems were used to obtain characteristic parameters such as the photon detection efficiency(PDE),peak-to-valley ratio,dark count rate (DCR), rise time, fall time, high voltage (HV), and timing resolution at an operating gain of 1×107. We then sampled at least 16.5% of the LPMTs that had been tested in the container system and sent them to a scanning station for precise testing. The scanning stations were used to obtain characteristic LPMT parameters such as the nonuniformity of the PDE along the photocathode surface,the DCR, and the after-pulse. We also sampled dozens of LPMTs sent to be container system#C for long-term aging tests.

The LPMTs that passed both the container system and scanning station testing processes were stored on the shelf,pending the next processing stage. LPMTs that failed the visual inspection or electrical performance assessment were returned. After the construction of the potting station was completed, we removed the LPMTs from the shelves and assembled the corresponding potting modules (including multiple waterproof seals, a stainless-steel shell,and an HV divider [13, 34]) to determine whether each LPMT was to be used in the CD or the veto (WP)[23, 43-45]. At least 30% of the potted LPMTs were thensampled to retest for performance using container systems#A, #B, and #D. The retested and qualified LPMTs were then stored on the shelf again, pending subsequent transport to the JUNO site. It was necessary to register all the LPMTs again before they left the warehouse.

Fig. 1 (Color online)Warehouse layout

The process flow described above highlights the need for smooth and accurate information exchange between the various subsystems and for seamless and efficient collaboration among staff. These requirements can be met through the LPMT-CIDS. In addition, the LPMT-CIDS offers functionalities such as software automation, data quality monitoring, and data visualization for subsystems.

3 System design

3.1 Architecture and structure

The LPMT-CIDS was implemented by separating the front and back ends.The front end was developed based on the Amaze UI framework[46],whereas the back end was a custom framework programmed using the object-oriented scripting language PHP. The Amaze UI framework was developed for mobile devices that contain rich modularized components and provide smooth and highly efficient interactions and animations [46]. The LPMT-CIDS can thus be accessed through a user-friendly website that iscompatible with various popular browsers and adapts automatically to the device screen size.

Fig. 3 (Color online) Standard process flow for the JUNO LPMTs

As illustrated in Fig. 4, the LPMT-CIDS uses a classic LAMP server architecture consisting of Scientific Linux[47], Apache [48], MySQL [49], and PHP [50]. In the scheme adopted for the LPMT-CIDS, the website and database are deployed to two separate servers, corresponding to the Apache web server and the MySQL database server. The Apache web server opens port 80,allowing access from the external network, whereas the MySQL database server opens port 3306, allowing only internal network access.The Apache web server has six 16 GB DDR4 memory cards,and the MySQL database server has eight 16 GB DDR4 memory cards. The hardware configurations of both servers are otherwise similar, comprising two E5-2696V3 CPUs(2.3 GHz/18 cores),two 180 GB solid-state drives (SSDs), two 1 TB enterprise-class hard drives, and a gigabit network card.

The LPMT-CIDS working mechanism was illustrated using two cases. In the first case, a client requests a static resource and the Apache web server directly returns it to the client. In the second case, a client requests a dynamic resource, the Apache web server processes the request and accesses the PHP application through the common gateway interface,and the PHP modules perform the corresponding dynamic resource operation. If the process requires operation parameters to be taken from the database, the PHP connects to the MySQL database server through the php_mqsqli driver to obtain the data and then performs the operation.The result is then converted into static resources and returned to the client by the Apache web server. A client can exchange data with-and transmit data to-the Apache web server over the Internet or the local area network using the hypertext transfer protocol (HTTP).

Fig. 4 (Color online)Architecture design of the LPMT-CIDS

Fig. 5 (Color online) Structure and data flows of the LPMTCIDS

As shown in Fig. 5, the LPMT-CIDS consists of 10 software subsystems and covers all stages in Fig. 3. The vendor subsystem is designed to support the uploading of LPMT performance parameter data obtained from vendors and the downloading and visualization of data shared with vendors by JUNO. The registration subsystem is used to register the records of the LPMTs entering and leaving the warehouse.In particular,there are multiple reasons why an LPMT may leave the warehouse: unqualified LPMT appearance,unqualified LPMT electrical performance,and transportation to the JUNO site,etc.Hence,we designed an intelligent assistance function for the registration subsystem to help identify the corresponding LPMTs. The core warehouse components are the visual inspection station, container systems, scanning stations, and potting station, all of which are associated with process stages involving the participation of experts. The data corresponding to these four systems are input by the corresponding experts. Therefore, we designed four corresponding expert subsystems to help handle specific tasks, such as automatically analyzing LPMT test results,generating test logs, classifying and grading LPMT performance, and generating statistics. The PMT tracking subsystem is designed to monitor the presence of LPMTs in the warehouse and performs the functions of recording,updating, and displaying LPMT locations. The toolbox subsystem consists of several tools, including two custom search engines,four full-screen models,six related links,a notice board, a data dictionary, and a data briefing.

The user management subsystem manages user-related affairs. It is a critical subsystem of the LPMT-CIDS, with functions including user registration, deregistration, login and logout,authority management,accessing logs,personal information management, system announcements, and other advanced administrator functions. The data from all temperature and humidity sensors were collected by the corresponding industrial personal computer(IPC)once per second, stored locally, and transmitted to the database server in real time. The temperature and humidity monitoring subsystem is responsible for the real-time visualization of these data on the web page to support the monitoring of the temperature and humidity in the warehouse, and hence to enable adjustments within an allowed range.

In general, these software subsystems output information to users in the form of statistical charts and data tables.However, we also use Amaze UI components such as dialogs,messages,progress bars,and tooltips to implement information interactions in real time. Users can use the custom graphical user interface (GUI) controls of the LPMT-CIDS for most interface operations. In particular,users can control the display mode of statistical charts and data tables through the GUI for better visualization.

3.2 System authority management

Authority management is a common requirement of multi-user system design. We designed the authorization management function of the LPMT-CIDS based on datasecurity considerations and on the responsibilities of each role, as illustrated in Fig. 6, as a part of the user management subsystem.

LPMT-CIDS users are classified into three categories:administrators,recorders,and guests.Recorders are further categorized as registrars, visual inspection experts, container testing experts, scanning station experts, or potting station experts. Guests are categorized as JUNO members or vendors.

An administrator has complete authority over all the LPMT-CIDS subsystems. The toolbox subsystem, vendor subsystem,temperature&humidity-monitoring subsystem,and personal information management function of the user management subsystem are open to all users. However,registrars, visual inspection experts, container testing experts, scanning station experts, and potting station experts can access only the subsystems for which they are responsible, i.e., in which they have the authority to enter,update, delete, and select data. In practice, a registrar has complete authority over the PMT tracking subsystem because the registrars also have the task of recording the LPMT storage locations. A JUNO member can access all the subsystems but has no authority to use the advanced functions that are reserved for administrators and recorders.The vendor subcategory of users is designed specifically to support our LPMT vendors in obtaining the information shared by JUNO.

Fig. 6 (Color online) Authority management design of the LPMT-CIDS

3.3 Main system interface

A user must be logged into the LPMT-CIDS to access the main system interface. Its layout (Fig. 7) consists of a header,a side panel,a main panel,and a footer.The header is divided into two parts: the title and toolbox. The title displays the official name of the system and allows the user to return quickly to the homepage by clicking on it. The toolbox integrates the logout system, search engine, fullscreen switching mode, and administrator menu. The side panel is divided into three parts:the side navigation menu,the notice board, and related links. The multilevel parentchild structure of the side navigation menu allows navigation to the functional pages of each subsystem. The notice board is used to display system announcements issued by the administrator. The related links panel contains links to often-visited websites outside the system.The main panel displays the main system components. The Footer provides copyright information about the system and the email address and correspondence address for receiving comments and questions.

Fig. 7 Main interface layout design of the LPMT-CIDS

This interface layout is suitable for a modular design scheme, in which the interface is split into several parts with independent functions.Some common components of the interface can be reused thanks to this modular design,which shortens the project development cycle. In Fig. 7,the header, side panel, and footer are all common components of the interface. Subpages are embedded in the main panel. This is realized by using the jQuery html() function to bind a given subpage to the<div>tag corresponding to the main panel.

We have also written JavaScript files for interface reference to provide the system with several common functions, such as logging out automatically, obtaining user login information, detecting permissions, and capturing abnormal operations. The permission detection function queries the permissions granted to the logged-in user and automatically hides non-permitted elements and components in the interface. It also prevents users from overstepping their permissions for accessing pages and functions. We also inserted a special <div>tag into the implementation code of the common interface components as the embedding point for a modal window.Such a modal window can be an alert box, prompt box, or notification box, all of which are implemented as a floating layer overlaid on the interface. In most cases, these modal windows are triggered by custom JavaScript functions.

3.4 MySQL database

We created three databases based on MySQL software:a user database,a temperature&humidity database,and an LPMT characterization and instrumentation database. We used a multitable approach to design the corresponding data models.This approach establishes a clear structure for the data model and facilitates modifications. This is especially important in scenarios where PMT testing and system development are performed simultaneously.

The user database is used to store the LPMT-CIDS user information, access logs, system notices, illegal operation logs, etc. This is critical for the operation of the user management subsystem. The temperature & humidity database is used to store the real-time data transmitted by the IPC from 80 sets of temperature and humidity sensors in the warehouse. The LPMT characterization and instrumentation database, one of the core components of the LPMT-CIDS, is designed to store all data generated at all stages,as shown in Fig. 3.We have added the same field to each table in this database to record the serial numbers(SNs) of the PMTs (i.e., the PMT IDs). This allows the joint analysis of data from multiple tables based on the SN.

We regularly perform a full backup of the LPMT characterization and instrumentation database to the local server and incrementally back it up to the Institute of High Energy Physics (IHEP) server. The institutional members of JUNO can copy the database from both servers. We created three accounts for the LPMT characterization and instrumentation database, namely db_administrator,db_recorder,and db_guest,corresponding to the three user categories shown in Fig. 6. For all tables in the LPMT characterization and instrumentation database, the db_administrator account granted all permissions, the db_recorder account granted insert, select, delete and update permissions, the db_guest account granted select permission. LPMT-CIDS back-end programs can use these three sets of account permissions to operate the database. For JUNO members who wish to use script programs to obtain data directly from the database for research, there is no need to create new application programming interfaces(APIs). This is because those users can use the corresponding MySQL connector module and the db_guest account’s information is open to all JUNO members.

4 Visualization

4.1 Statistical charts

Statistical analysis is essential for studying PMT performance. Converting data into statistical charts is a common approach for data visualization. For high-energy physics experiments, Matplotlib [51] and CERN-ROOT[52, 53] are typically used to perform this conversion.However,in front-end web pages,it is more appropriate to use professional JavaScript-based visualization libraries such as Apache ECharts [54, 55], Highcharts [56], and JSROOT [57]. Given the features and advantages of the Apache ECharts library (e.g., abundant available chart types, powerful rendering engines, high customizability, excellent compatibility, and being completely free to use), it was chosen as the charting engine to develop statistical chart tools for the LPMT-CIDS. This subsection demonstrates how three typical charts help users understand the content and meaning of the data.

Fig.8 (Color online)Statistical histogram for the incoming and outgoing LPMTs at the scanning stations

The first chart is a classic histogram illustrating the statistics of the incoming and outgoing LPMTs at the scanning stations, as shown in Fig. 8. It was drawn using the data in the container system table and the scanning station table of the database. This represents the workload and working pressure of the scanning stations. In Fig. 8,the custom button group is a radio button with four mutually exclusive options, namely, daily, weekly,monthly, and yearly, which was developed based on the components of Amaze UI.The other components enclosed in black boxes are the Apache EChart components. The legend is an interactive data component that the user can click to toggle the display of different series in the chart.The extrema (shown in bubbles) and the averages (shown by horizontal arrows on the right-hand side) change automatically when the data zoom component is adjusted. A tooltip is triggered when the mouse hovers over a histogram bin, displaying detailed information on the corresponding bin.From left to right,the icons in the toolbox are used to zoom in, undo zoom, set data, switch to a line graph, switch to a histogram, restore to the original state,and download the current image (in the .png file format).These components can be freely combined and customized according to the specific chart requirements. Moreover,most of these data components are interactive, allowing users to produce various visualization effects to extract more information from the data.

The second chart is a heat map representing the testing conclusions for each container system. Details on the configuration,operation methods,and performance of these container systems can be found in Refs. [22, 23]. Each container system has a shelf system with 36 drawer boxes in each of container systems #A and #B (arranged in four rows and nine columns) and 32 in each of container systems#C and#D(arranged in four rows and eight columns).Each drawer box serves as an independent testing device to test the dynode PMT or MCP-PMT contained therein.Each container system was equipped with data-acquisition software to output the raw waveform data and raw count data generated by the test LPMT in each drawer box. The parallel operation of all the drawer boxes in a container is called mass testing. We analyzed the acquired raw measurement data to obtain data on the electrical performance parameters of the LPMTs and entered them into the corresponding database table.The LPMT-CIDS then retrieved these parameter data from the database table, drew conclusions for the current mass testing batch based on the performance requirements for JUNO LPMTs, and visualized those conclusions.

The visualization example in Fig. 9 summarizes the results of the 863rd round of mass testing conducted in container system #A on May 20, 2021. This heat map representation directly conveys the mass testing results, to help staff efficiently label the tested LPMTs with corresponding color labels for grouping processing. The upper,middle, and lower strings in each grid cell are the channel ID (i.e., drawer box ID), the PMT SN, and the testing conclusion,respectively.The different cell colors represent different types of conclusions. Green indicates that the LPMT is a reference PMT or demonstrates qualified performance. Pink indicates that the LPMT has a DCR that is close to the performance requirement threshold and needs to be sent to a scanning station for retesting. Yellow indicates the LPMT has a PDE close to the performance requirement threshold and needs to be sent to a scanning station for retesting, or that it needs to be retested in the container system because of,e.g.,disqualified performance in the first test or a connection error caused by poor contact between the LPMT and the base. Gray indicates that the corresponding drawer box is not working correctly. Red indicates that the LPMT failed the test. Orange, blue, and silver also indicate abnormal performance of the reference PMT, special testing, and a potted LPMT, respectively.

Fig. 9 (Color online)Visualization example based on the conclusions obtained from the 863rd round of mass testing in container system #A on May 20, 2021, Beijing time

The third chart type consists of two polar heat maps displaying the PDE and gain scanning results of an LPMT tested at a scanning station. This can also be used as a monitoring tool for displaying the scanning progress to staff in real time. The scanning stations were designed to study PDE nonuniformity along the photocathode surface for LPMTs that have already been tested in the container systems, to reveal potential problems (see Ref. [33] for details). The core component of a scanning station is a rotating frame equipped with seven self-stabilizing LED light sources, placed at seven different zenith angles that can accommodate either a dynode PMT or an MCP-PMT.The entire photocathode surface is distributed with 168 test points,such that the PDF and gain can be obtained from the charge spectra at each point. Figure 10 displays the scanning results for MCP-PMT PA1708-1287 obtained from scanning station #1 on May 20, 2021. The floating layer with a white background and a blue border is a tool tip component. It is triggered when the mouse hovers over a grid cell and displays the corresponding detailed information. The color bar is an interactive data component called a visual map in the Apache ECharts library, which maps the data to visual channels. We can easily see the homogeneity of the characteristics over the entire LPMT photocathode surface based on these two scanning maps.

In addition to the above three charts, we have also designed many pie charts, line charts, scatter charts, and combinations thereof in the LPMT-CIDS to reveal various problems and relationships. Numerous examples and introductory descriptions are provided in Refs. [54, 55].

4.2 Data tables

Mapping data to data tables (in HTML) is another common data visualization approach. In many database systems, data tables are regarded as essential components,as are LPMT-CIDS. Although Amaze UI includes integrated table components, it is insufficient to meet our complex requirements in practice. Therefore, we used the DataTables [58] plug-in, which offers many advanced interaction controls, to create the HTML tables of the LPMT-CIDS. DataTables is a free open-source jQuery JavaScript library that can use almost any data source,such as DOM, Ajax, and server-side processing. However, we replaced the DataTables default style file with a customized Amaze UI CSS file to ensure that the DataTables-based HTML tables are compatible with the front-end design of the LPMT-CIDS, to make the user experience as seamless as possible.

Fig. 10 (Color online) Two polar heat maps for visualizing(left) the PDE and (right) the gain scanning results for MCPPMT PA1708-1287, obtained from scanning station #1 on May 20, 2021

The mapping of the container testing results from May 20, 2021, to an HTML table is illustrated in Fig. 11. This example shows that a DataTables-based HTML table is a highly flexible tool with functionalities such as searching,sorting, and pagination. The page length option is used to control the number of data entries displayed on each page.The column in the table can be sorted in the desired order by clicking the corresponding ordering option icon. The filtering input can be used to perform a global fuzzy search on the data in the table.The table provides the total number of data entries and the beginning and ending indices of the data entries displayed on the current page. The individual column selection input is used to search for a specific column. A pagination navigation bar is used to navigate pages rapidly. The components inside the black boxes and the overall layout of the table are all customizable.For the data in columns 5-13, green shading indicates that the corresponding electrical performance meets the JUNO requirements, red indicates that it does not meet those requirements, yellow indicates that it is at the requirement threshold, and no shading indicates that it is irrelevant to the requirements. The colors in the last column are consistent with those shown in Fig. 9.

The electrical performance parameter data of the LPMTs are visualized in Fig. 11. The use of different colors helps the staff to quickly assess the data quality and locate abnormal data. In this example, Ajax technology was used to interact with the PHP data to form the Ajax data source, allowing the table to be updated without refreshing the entire page. In general, we combined the visualizations of the types shown in Figs. 9 and 11 with data analysis logs for a joint review to form a complete mass-testing report.

We also created many HTML tables using server-side processing data sources in the LPMT-CIDS.This approach was adopted because using the Ajax data source method to load large amounts of data into an HTML table extends the rendering time of DataTables.In contrast,when server-side processing is enabled,DataTables hands over tasks such as paging, ordering, and searching to the server, where PHP scripts can be used to perform them on the database.Therefore, each action performed on this HTML table queries the server for the required data to redraw the table without refreshing. Regardless of whether an Ajax data source or a server data source is used, the data returned by the server are sent to DataTables for processing in JSON format.

5 Advantages and potential

As of May 20, 2021, the LPMT-CIDS has been in use for more than four years and has been iterated to version 7.0.Owing to the introduction of many modular designs(to include page modularization and custom function modularization) and long-term optimization, the LPMT-CIDS has become a lightweight system. The file sizes of the components are listed in Table 1. The size of the entire LPMT characterization and instrumentation database is~1.07 GB, of which the scanning station table accounts for ~94.39%of the total size because of the stored LPMT scanning maps. The net growth of the database size per working day was at most 2 MB. Furthermore, because the database uses a multitable design data model and has an independent server, its I/O pressure is negligible for the JUNO user group served by the LPMT-CIDS.

Fig.11 (Color online)Example of a DataTables-based HTML table to which are mapped the container testing data from May 20, 2021

Table 1 File size details of each component of the LPMT-CIDS(version 7.0)

We transferred all the intensive statistical calculations of the LPMT-CIDS to PHP, to be completed on the Apache web server. The processed results are returned to the remote client in JSON format for response and rendering.Accordingly, the LPMT-CIDS requires relatively little computing power for the client. The LPMT-CIDS was thoroughly tested and runs smoothly on various clients(desktops, laptops, and tablets), operating systems (Windows,Linux,macOS,and iPadOS),and browsers(Chrome,Edge, Firefox, and Safari).

The LPMT-CIDS mission will be considered to be successfully achieved upon completion of the LPMT inspection and testing program. The database operation will then terminated at the appropriate time. The LPMT characterization and instrumentation database have been used for JUNO simulation work and will be merged with the databases of the other JUNO groups in the future.Moreover, the framework, components, and function libraries developed for the LPMT-CIDS can be extended to other projects, such as the SPMT testing program for JUNO.

6 Conclusion

We designed and developed a database system, denoted as LPMT-CIDS, based on a LAMP server, to manage the testing data for 20,000 LPMTs at JUNO. The service content of the LPMT-CIDS covers all processing procedures performed at the LPMT characterization and instrumentation station. Advantages of the LPMT-CIDS include its light weight, negligible I/O pressure, and a cross-platform. The LPMT-CIDS has run smoothly for more than four years and has become an indispensable data management tool for PMT testing programs. Its design approach and construction elements have also been used to build an SPMT instrumentation database system for JUNO.