KR20160100219A - Method and device for constructing on-line real-time updating of massive audio fingerprint database - Google Patents

Method and device for constructing on-line real-time updating of massive audio fingerprint database Download PDF

Info

Publication number
KR20160100219A
KR20160100219A KR1020150181165A KR20150181165A KR20160100219A KR 20160100219 A KR20160100219 A KR 20160100219A KR 1020150181165 A KR1020150181165 A KR 1020150181165A KR 20150181165 A KR20150181165 A KR 20150181165A KR 20160100219 A KR20160100219 A KR 20160100219A
Authority
KR
South Korea
Prior art keywords
audio fingerprint
key value
audio
recognitions
key
Prior art date
Application number
KR1020150181165A
Other languages
Korean (ko)
Inventor
레이 왕
Original Assignee
레이 왕
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 레이 왕 filed Critical 레이 왕
Publication of KR20160100219A publication Critical patent/KR20160100219A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • G06F17/30377
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • G06F16/2386Bulk updating operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/61Indexing; Data structures therefor; Storage structures
    • G06F17/30743
    • G06F17/30778
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Library & Information Science (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)

Abstract

Provided are a method and a device for constructing online real-time updating of a massive audio fingerprint database, which can solve the technical problem of the prior art that a massive audio fingerprint database is inconveniently updated online in real time. The method for constructing online real-time updating of a massive audio fingerprint database comprises the steps of: establishing a corresponding relationship between audio fingerprints with the same key value and the key value; establishing an index list including each key value and the audio fingerprints corresponding to the key value and allowing each key value in the index list to point the corresponding audio fingerprints in the form of a pointer; and continuously storing the audio fingerprints with the same key value.

Description

대규모 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법 및 디바이스{METHOD AND DEVICE FOR CONSTRUCTING ON-LINE REAL-TIME UPDATING OF MASSIVE AUDIO FINGERPRINT DATABASE}METHOD AND DEVICE FOR CONSTRUCTION ON-LINE REAL-TIME UPDATING OF MASSIVE AUDIO FINGERPRINT DATABASE BACKGROUND OF THE INVENTION [0001]

본 발명은 오디오 지문인식 식별의 기술 분야에 관한 것이고, 특히 대규모 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법 및 디바이스에 관한 것이다.The present invention relates to the technical field of audio fingerprint identification, and more particularly to a method and device for configuring on-line real-time updating of a large scale audio fingerprint database.

대규모 오디오 지문인식 데이터베이스를 업데이트하기 위한 방법에 대해, 인덱스 데이터가 메모리 조각에 연속 저장되기 때문에, 일반적인 솔루션으로 오디오 지문인식 인덱스 데이터를 온라인으로 추가, 삭제하는 것은 매우 어려우며, 모든 업데이트는 서버를 재시작하도록 요구한다. 도 1에 도시된 바와 같이, 종래의 솔루션에서, 대규모 지문인식 인덱스 데이터베이스는 일반적으로, 다수의 고정된-소형 오디오 지문인식 데이터베이스(조각 1, 조각 2, ... 조각 n)로 나누어지고, 특정 수의 새로운 데이터가 축적된 후, 마지막 하나의 전체가 아닌 오디오 지문인식 데이터베이스(조각 n)를 오프라인으로 재구축한 다음, 서비스를 재시작하고(서비스를 재시작하고 조각 n을 업데이트하고), 위태로운(on the line) 최신 오디오 지문인식 데이터베이스를 교체하는 것이 필요하다. 따라서, 오프라인으로 데이터베이스를 구축하고 서비스를 재시작하는 인덱스 데이터 업데이트 방법은 지루한 동작, 시간에 맞지 않은 업데이트의 고유한 결함들을 가지고 신곡 검색 서비스를 시간에 맞춰 제공할 수 없음을 알 수 있고, 따라서 대규모 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트 인덱스 데이터를 개발하는 것이 필요하다.As for how to update a large-scale audio fingerprint database, it is very difficult to add and delete the audio fingerprint index data online with a common solution because index data is stored in memory fragments continuously, and all updates are required to restart the server Demand. As shown in Figure 1, in a conventional solution, a large fingerprint identification index database is generally divided into a number of fixed-miniature audio fingerprint databases (piece 1, piece 2, ... piece n) After a new number of new data has been accumulated, the last one non-full audio fingerprint database (fragment n) is rebuilt offline, then the service is restarted (restarting the service and updating the fragment n) on the line) It is necessary to replace the latest audio fingerprint database. Thus, the index data update method of building the database offline and restarting the service can not provide the new song search service in time due to the tedious operation, the inherent flaws of the non-timed update, It is necessary to develop the online real-time update index data of the fingerprint recognition database.

이를 위해, 본 발명은 종래 기술 분야의 대규모 오디오 지문인식 데이터베이스에 대한 불편한 온라인 실시간 업데이트의 기술적 문제를 해결할 수 있는, 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법 및 디바이스를 제안한다. To this end, the present invention proposes a method and a device for configuring on-line real-time updating of an audio fingerprint recognition database, which can overcome the technical problems of an uncomfortable online real-time update to a large-scale audio fingerprint database in the prior art.

본 발명은 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법을 제공하고, 상기 방법은: 동일한 키 값을 가진 오디오 지문인식들과 키 값 사이의 대응 관계를 확립하는 단계; 각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하고, 인덱스 리스트의 각각의 키 값이 포인터 방식으로 대응하는 오디오 지문인식들에 포인팅하도록 허용하는 단계; 및 동일한 키 값을 가진 오디오 지문인식들을 연속 저장하는 단계를 포함하고, 상기 방법은 오디오 지문인식들을 온라인으로 추가하는 단계를 더 포함하고, 상기 추가 단계는: 추가-대상 오디오 지문인식들을 대응하는 키 값들에 따라 그룹화하는 단계로서, 각각의 그룹의 추가-대상 오디오 지문인식들은 동일한 키 값을 가지는, 상기 그룹화 단계; 업데이트-대상 오디오 지문인식들을 배치하기 위해, 인덱스 리스트에서, 대응하는 키 값과 동일한 값을 룩업(look-up)하는 단계; 업데이트-대상 오디오 지문인식들을 복사하는 단계; 새로운 오디오 지문인식들을 획득하기 위해, 업데이트-대상 오디오 지문인식들 및 추가-대상 오디오 지문인식들을 연속 저장하는 단계; 업데이트-대상 오디오 지문인식들의 키 값에 포인팅하는 인덱스 리스트의 포인터가 새로운 오디오 지문인식들에 포인팅하도록 허용하는 단계; 및 업데이트-대상 오디오 지문인식들을 지연-삭제(delay-deleting)하는 단계를 포함한다.The present invention provides a method for configuring on-line real-time updating of an audio fingerprint recognition database, comprising: establishing a correspondence between key fingerprint values and audio fingerprint recognition with the same key value; Establishing an index list comprising respective key values and corresponding audio fingerprint recognitions and allowing each key value of the index list to point to corresponding audio fingerprint recognitions in a pointer manner; And continuously storing audio fingerprint recognizations having the same key value, the method further comprising the step of adding audio fingerprint recognitions online, wherein the adding step comprises: adding the additional-target audio fingerprint recognitions to the corresponding key Grouping audio fingerprints of each group, the group-of-group audio fingerprints of each group having the same key value; Looking up the same value in the index list as the corresponding key value to place update-subject audio fingerprints; Copying the update-subject audio fingerprint recognition; Successively storing update-subject audio fingerprints and add-on audio fingerprint recognizations to obtain new audio fingerprint recognitions; Allowing pointers to an index list pointing to key values of update-subject audio fingerprints to point to new audio fingerprint recognitions; And delay-deleting the update-subject audio fingerprint.

본 발명은 온라인 서비스 엔진이 1초 내에 종료될 수 있는 노래 지문인식들을 검색 서비스에 영향을 미치지 않고 실시간 추가, 삭제하는 것을 지원하도록 허용할 수 있음으로써, 오프라인 데이터베이스 구축 및 서비스 재시작에 의해 야기되는 지루하고 시간-소모적인 동작을 회피하고, 대규모 오디오 지문인식 데이터베이스의 데이터 적시성(data timeliness)을 보장하고; 최신곡들을 온라인 서비스 상으로 추가하고, 온라인 서비스로부터 시대에 뒤떨어지거나 문제가 있는 노래들을 삭제할 수 있으며, 이것은 제 2 수준의 데이터 업데이트에 필요한 반응성(responsiveness)을 실현하고, 데이터의 오디오 검색 서비스, 즉 서비스에 대한 큰 의미를 가진다.The present invention allows the online service engine to support adding and deleting song fingerprints that may end within one second in real time without affecting the search service, thereby reducing the tedious and time consuming Avoid time-consuming operations, ensure data timeliness of large-scale audio fingerprint databases; It is possible to add the latest songs on the online service and delete outdated or problematic songs from the online service, which realizes the responsiveness necessary to update the second level of data, It has a big meaning for.

도 1은 종래 기술의 대규모 오디오 지문인식 데이터베이스를 업데이트하기 위한 방법의 개략도를 도시한다.
도 2는 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법의 흐름도를 도시한다.
도 3은 동일한 키 값을 가진 오디오 지문인식들과 키 값 사이의 대응 관계의 개략도를 도시한다.
도 4는 인덱스 리스트의 실시예의 단계 개략도를 도시한다.
도 5는 인덱스 리스트의 구성 개략도를 도시한다.
도 6은 각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하는 특정 동작을 위한 흐름도를 도시한다.
도 7은 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법의 흐름도를 도시한다.
도 8은 오디오 지문인식들을 온라인으로 추가하기 위한 동작 흐름도를 도시한다.
도 9는 지연-삭제를 위한 동작 흐름도를 도시한다.
도 10은 특정 조건 하에서 오디오 지문인식들을 온라인으로 추가하기 위한 동작 흐름도를 도시한다.
도 11은 오디오 지문인식들을 온라인으로 추가하기 위한 동작 흐름도를 도시한다.
도 12는 오디오 지문인식들을 온라인으로 삭제하기 위한 동작 흐름도를 도시한다.
도 13은 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 디바이스의 구성 개략도를 도시한다.
도 14는 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 디바이스의 구성 개략도를 도시한다.
도 15는 오디오 지문인식들을 온라인으로 추가하기 위한 디바이스의 구성 개략도를 도시한다.
도 16은 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 디바이스의 구성 개략도를 도시한다.
도 17은 오디오 지문인식을 온라인으로 추가하기 위한 디바이스의 구성 개략도를 도시한다.
도 18은 온라인 실시간 업데이트를 지원하는 대규모 오디오 지문인식 데이터베이스의 구성 개략도를 도시한다.
도 19는 오디오 지문인식을 온라인 실시간 추가하기 위한 방법의 개략도를 도시한다.
도 20은 오디오 지문인식을 온라인 실시간 삭제하기 위한 방법의 개략도를 도시한다.
Figure 1 shows a schematic diagram of a method for updating a large-scale audio fingerprint database of the prior art.
Figure 2 shows a flow diagram of a method for configuring on-line real-time updating of an audio fingerprint database.
FIG. 3 shows a schematic diagram of the correspondence between key fingerprint values and key values with the same key value.
Figure 4 shows a step schematic diagram of an embodiment of an index list.
5 shows a schematic configuration diagram of the index list.
Figure 6 shows a flow diagram for a particular operation for establishing an index list comprising each key value and corresponding audio fingerprint recognition.
Figure 7 shows a flow diagram of a method for configuring an online real-time update of an audio fingerprint database.
Figure 8 shows an operational flow diagram for adding audio fingerprint recognitions on-line.
Figure 9 shows an operational flow diagram for delay-erasure.
Figure 10 shows an operational flow for adding audio fingerprint recognitions online under certain conditions.
Figure 11 shows an operational flow diagram for adding audio fingerprint recognitions on-line.
Figure 12 shows an operational flow diagram for deleting audio fingerprint recognitions on-line.
13 shows a configuration schematic diagram of a device for constituting an online real-time update of an audio fingerprint database.
14 shows a schematic configuration diagram of a device for constituting an online real-time update of an audio fingerprint database.
15 shows a configuration schematic diagram of a device for adding audio fingerprint recognitions on-line.
Figure 16 shows a schematic diagram of the configuration of a device for configuring on-line real-time updating of an audio fingerprint database.
17 shows a configuration schematic diagram of a device for adding audio fingerprint recognition on-line.
18 shows a configuration schematic diagram of a large-scale audio fingerprint database supporting online real-time updating.
Figure 19 shows a schematic diagram of a method for adding on-line real time audio fingerprint recognition.
Figure 20 shows a schematic diagram of a method for on-line real-time deletion of audio fingerprint recognition.

본 발명에 관련된 용어들에서: 용어 "연속 저장(continuous storage)"은 오리지널 파일 정보 후에 새롭게 추가된 파일 컨텐트 정보를 연속으로 보충 및 추가하는 것을 의미하며, 이것은 이전의 동일-타입의 파일이 저장된 동일한 파일 어드레스 하에서 순차 번호에 의해 또는 동시적으로 파일을 저장함으로써 다음-순서 파일 문서를 연속으로 추가하는 단계와 유사하고, 병렬의 순차 저장(parallel in-sequence storage)의 의미를 가진다. 용어 "지연-삭제(delay-deleting)"는 어떤 시간 기간 동안의 지연 후에 삭제-대상 파일을 삭제하는 것을 의미하며, 삭제 전에, 삭제-대상 파일은 일반적으로 액세스되거나 브라우징될 수 있고, 진행중인 액세스가 종료된 후에 파일이 삭제되고; 본 발명의 양호한 삭제 솔루션은 현재 스레드의 정상적인 활용에 영향을 미치지 않고, 지연 후 배경 스레드에 의해 비동기적으로 삭제를 수행하는 것이다. In the context of the present invention: the term "continuous storage" means continuously replenishing and adding newly added file content information after the original file information, which means that the previous same- Sequential file document by storing the file by sequential number under the file address or by concurrently storing it, and has the meaning of parallel in-sequence storage. The term "delay-deleting" means deleting a delete-destination file after a delay of some time period, before deletion, the delete-destination file can generally be accessed or browsed, The file is deleted after it is terminated; The preferred deletion solution of the present invention is to perform deletion asynchronously by the background thread after the delay without affecting the normal utilization of the current thread.

예 1:Example 1:

일반성을 잃지 않고, 도 2에 도시된 바와 같이, 종래 기술의 대규모 오디오 지문인식 데이터베이스에 대한 불편한 온라인 실시간 업데이트의 기술적 문제를 해결하기 위하여, 본 발명은 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법을 제공하며, 상기 방법은:In order to solve the technical problem of the uncomfortable online real-time update to the large-scale audio fingerprint database of the prior art as shown in FIG. 2 without losing the generality, Said method comprising the steps of:

S1000. 동일한 키 값을 가진 오디오 지문인식들과 키 값 사이의 대응 관계를 확립하는 단계; S1000. Establishing a correspondence between key fingerprint values and key fingerprints having the same key value;

S2000. 각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하고, 인덱스 리스트의 각각의 키 값이 포인터 방식으로 대응하는 오디오 지문인식들에 포인팅하도록 허용하는 단계; 및 S2000. Establishing an index list comprising respective key values and corresponding audio fingerprint recognitions and allowing each key value of the index list to point to corresponding audio fingerprint recognitions in a pointer manner; And

S3000. 동일한 키 값을 가진 오디오 지문인식들을 연속 저장하는 단계를 포함한다. S3000. And successively storing the audio fingerprint recognitions having the same key value.

노래가 다수의 오디오 지문인식들을 가질 수 있고, 각각의 오디오 지문인식이 하나의 키 값을 가질 수 있지만, 동일한 키 값은 종래 기술의 다수의 상이한 노래들에서 반복적으로 출현할 것이다. 따라서, 다수의 상이한 노래들에는 동일한 값을 가진 다수의 오디오 지문인식들이 존재한다. 따라서, 도 3에 도시된 바와 같이, 본 발명의 단계(S1000), 즉 동일한 키 값을 가진 오디오 지문인식들과 키 값 사이의 대응 관계를 확립하는 단계를 수행하는 것이 필요하다. A song may have multiple audio fingerprint recognitions, and each audio fingerprint recognition may have a key value, but the same key value will appear repeatedly in a number of different songs of the prior art. Thus, there are multiple audio fingerprint perceptions with the same value in a number of different songs. Therefore, as shown in FIG. 3, it is necessary to perform step (S1000) of the present invention, that is, establishing a correspondence between the key value and the audio fingerprint recognitions having the same key value.

배치되어야 할 업데이트-대상 오디오 지문인식을 신속히 검색하기 위하여, 본 발명의 단계(S2000)는 각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하고, 인덱스 리스트의 각각의 키 값이 포인터 방식으로 대응하는 오디오 지문인식들에 포인팅하도록 허용하는 단계를 포함하고; 단계(S3000)는 동일한 키 값을 가진 오디오 지문인식들을 연속 저장하는 단계를 포함한다. In order to quickly retrieve the update-subject audio fingerprint recognition to be placed, step S2000 of the present invention establishes an index list including each key value and corresponding audio fingerprint recognition, and each key value of the index list Allowing the user to point to corresponding audio fingerprint recognitions in a pointer manner; Step S3000 includes continuously storing the audio fingerprint recognizations having the same key value.

인덱스 리스트에서, 키 값은 어레이로 "key1、key2、key3……"의 형태로 순차적으로 저장되고, 이것은 복수의 대응하는 오디오 지문인식들에 각각 순차적으로 포인팅되고; 그 후에 동일한 키 값을 가진 오디오 지문인식들(값)은 대응하는 키 값 다음에 연속으로 저장되고, 예를 들면 value1 및 value4가 키 값 - key1 값을 가지는 경우에, value1 및 value4는 key1 값 다음에 저장되도록 요구된다.In the index list, the key values are sequentially stored in the form of "key1, key2, key3 ......" in an array, which is sequentially pointed to each of a plurality of corresponding audio fingerprint recognitions; Subsequently, the audio fingerprint values (values) having the same key value are stored consecutively after the corresponding key value, for example, when value 1 and value 4 have the key value-key 1 value, the value 1 and value 4 is required to be stored after key 1 value.

예 2:Example 2:

바람직하게, 본 발명의 상기 인덱스 리스트는 순차적으로 배열되는 다수의 어레이를 확립함으로써 실현될 수 있다. 또한, 도 4에 도시된 바와 같이, 단계(S1000)는:Preferably, the index list of the present invention can be realized by establishing a plurality of arrays arranged in sequence. Also, as shown in Figure 4, step S1000 comprises:

S1100: 동일한 키 값을 가진 오디오 지문인식들을 동일한 어레이로 분류하는 단계를 더 포함한다. S1100: Classifying audio fingerprint recognitions having the same key value into the same array.

예를 들면, 도 5에 도시된 바와 같이, key1, value1 및 value4는 제 1 어레이로서 분류되고, 나머지는 순차적으로 배열된다. For example, as shown in FIG. 5, key 1 , value 1, and value 4 are classified as a first array, and the rest are sequentially arranged.

또한, 도 6에 도시된 바와 같이, 단계(S2000)에서 각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하는 단계는: Also, as shown in Figure 6, establishing an index list comprising each key value and corresponding audio fingerprint recognitions at step S2000 includes:

S2100: 인덱스 리스트가 키 값들과 동일한 수(number)를 가진 어레이들을 포함하도록 허용하는 단계를 더 포함한다. S2100: The method further comprises allowing the index list to include arrays having the same number as the key values.

도 5에 도시된 바와 같이: 세로 열에 키 값과 동일한 수를 가진 대응하는 어레이들이 있고, 상이한 어레이들의 키 값은 다수의 오디오 지문인식들(값)에 대응할 수 있다.As shown in FIG. 5: there are corresponding arrays with the same number as the key value in the column, and the key value of the different arrays may correspond to a plurality of audio fingerprint values (values).

예 3:Example 3:

바람직하게, 종래 기술에서 온라인으로 추가되어야 할 오디오 파일들의 수가 일반적으로 대규모이기 때문에, 각각의 오디오 파일은 일반적으로 복수의 키 값들을 포함하고, 각각은 하나의 오디오 지문인식에 대응하고; 이들 오디오 지문인식들에서, 동일한 키 값을 가진 다수의 오디오 지문인식들이 존재하고, 따라서 도 7에 도시된 바와 같이, 본 발명은:Preferably, since the number of audio files to be added on-line in the prior art is generally large, each audio file typically includes a plurality of key values, each corresponding to one audio fingerprint recognition; In these audio fingerprint perceptions, there are a plurality of audio fingerprint perceptions with the same key value, and therefore, as shown in Figure 7, the invention comprises:

S4000: 오디오 지문인식들을 온라인으로 추가하는 단계를 더 포함한다. S4000: Adding the audio fingerprint recognitions online.

또한, 도 8에 도시된 바와 같이, 단계(S4000)는:Also, as shown in Figure 8, step S4000 includes:

S4100: 추가-대상 오디오 지문인식들을 대응하는 키 값들에 따라 그룹화하는 단계로서, 각각의 그룹의 추가-대상 오디오 지문인식들은 동일한 키 값을 가지고, 이것은 다음 단계에서, 각각의 그룹의 대응하는 키 값에 따라 인덱스 리스트에 오디오 지문인식들을 배치하고 보충하는 것을 용이하게 하고, 여기서 그룹을 단위로 취하여 오디오 지문인식을 추가함으로써 추가 속도를 크게 향상시킬 수 있어서, 액세스 어드레스를 위한 횟수 및 시간을 더욱 절감할 수 있는, 상기 그룹화 단계.S4100: grouping add-on audio fingerprints according to corresponding key values, wherein each group of add-on audio fingerprints has the same key value, which in a next step corresponds to the corresponding key value of each group To facilitate arranging and supplementing the audio fingerprint perceptions in the index list, wherein the additional speed can be greatly improved by taking the group as a unit and adding audio fingerprint recognition, thereby further reducing the number of times and time for the access address Said grouping step.

S4200: 업데이트-대상 오디오 지문인식들을 배치하기 위해, 인덱스 리스트에서, 대응하는 키 값과 동일한 값을 룩업하는 단계; 및 업데이트-대상 오디오 지문인식들을 복사하는 단계로서, 모든 다음의 추가 동작들은 오디오 지문인식 데이터베이스의 업데이트 동안 온라인 액세스에 영향을 미치지 않고, 복사에 의해 형성되는 복사 텍스트로 구현되는, 상기 룩업 단계 및 복사 단계.S4200: in the index list, looking up the same value as the corresponding key value, to place update-subject audio fingerprints; And copying update-subject audio fingerprintings, wherein all subsequent actions are implemented with copy text formed by copying without affecting online access during updating of the audio fingerprint database, step.

S4300: 복사 파일에서, 새로운 오디오 지문인식들을 획득하기 위해, 업데이트-대상 오디오 지문인식들 및 추가-대상 오디오 지문인식들을 연속 저장하는 단계로서, 새로운 오디오 지문인식들은 오디오 지문인식들에 추가된 후에 복사 파일을 형성하는, 상기 연속 저장 단계.S4300: successively storing update-subject audio fingerprints and add-on audio fingerprint recognitions, in order to obtain new audio fingerprint recognitions, in a copy file, wherein the new audio fingerprint recognitions are added to the audio fingerprint recognitions, Wherein said step of forming said file forms said file.

S4400: 업데이트-대상 오디오 지문인식들의 키 값에 포인팅하는 인덱스 리스트의 포인터가 새로운 오디오 지문인식들에 포인팅하도록 허용하는 단계, 및 온라인 업데이트 동작을 종료하는 단계로서; 새로운 오디오 지문인식들은 대응하는 키 값들에 따라 오디오 지문인식 데이터베이스에 추가되었고, 대응하는 위치 포인터들은 인덱스 리스트에서 획득되는, 상기 허용 단계 및 종료 단계.S4400: allowing a pointer of an index list pointing to a key value of update-subject audio fingerprints to be pointed to new audio fingerprint recognitions, and ending an online update operation; Wherein the new audio fingerprint recognitions have been added to the audio fingerprint database according to corresponding key values and corresponding position pointers are obtained from the index list.

S4500: 업데이트-대상 오디오 지문인식들을 지연-삭제(delay-deleting)하는 단계로서, 오리지널 복사된 오디오 지문인식 파일에 대한 후속 삭제 동작을 수행하는 것을 의미하고, 이것은 서버에서 이중 파일에 의해 점유되는 저장 공간을 해제하기 위해 중복 파일을 삭제하는 것을 목표로 하는, 상기 지연-삭제 단계를 포함한다. S4500: Delay-deleting update-subject audio fingerprints, which means performing a subsequent delete operation on the original copied audio fingerprint file, which means that the storage occupied by the duplicate file at the server Deleting-deleting step of deleting the duplicate file to release the space.

바람직하게, 삭제 동작이 현재 실행 프로세스와 아무런 상관도 없기 때문에, 서버가 비지(busy) 상태가 아닐 때 지연-삭제 동작을 수행하기 위해 다른 스레드가 개시될 수 있다. 따라서, 도 9에 도시된 바와 같이, 단계(S4500)는:Preferably, another thread may be started to perform a delay-delete operation when the server is not busy, since the delete operation has nothing to do with the current execution process. Thus, as shown in Figure 9, step S4500 comprises:

S4510: 배경 스레드에 의해 구현되는 지연-삭제 단계를 더 포함한다. S4510: further includes a delay-deleting step implemented by the background thread.

바람직하게, 추가-대상 오디오 지문인식들의 키 값이 인덱스 리스트에 포함되지 않는 경우, 도 10에 도시된 바와 같이, 단계(S4500)는:Preferably, if the key value of the add-on audio fingerprints is not included in the index list, step S4500 as shown in FIG. 10:

S4600: 새로운 키 값을 새롭게-구성된 키 값으로 간주하는 단계S4600: Step to regard the new key value as a newly-configured key value

S4700: 업데이트된 인덱스 리스트를 획득하기 위해, 새롭게-구성된 키 값을 인덱스 리스트에 연속으로 추가하는 단계S4700: successively adding the newly-configured key value to the index list to obtain the updated index list

S4800: 업데이트-대상 오디오 지문인식들에서 새롭게-구성된 키 값에 대응하는 오디오 지문인식들을 연속으로 저장하는 단계로서, 새롭게 추가되는 오디오 지문인식들의 액세스 어드레스는 인덱스 리스트에 새롭게 추가되는 새롭게-구성된 키인, 상기 연속 저장 단계를 더 포함한다. S4800: successively storing audio fingerprint recognitions corresponding to a newly-configured key value in update-subject audio fingerprint recognitions, wherein the access address of the newly added audio fingerprint recognitions is a newly-configured key that is newly added to the index list, And the continuous storing step.

예 4:Example 4:

바람직하게, 구형 오디오 파일을 때맞춰 제거하기 위하여, 도 11에 도시된 바와 같이, 본 발명은:Preferably, in order to remove the old audio file at the same time, as shown in Figure 11, the present invention comprises:

S5000: 오디오 지문인식들을 온라인으로 삭제하는 단계를 더 포함한다.S5000: Deleting the audio fingerprint recognitions online.

또한, 도 12에 도시된 바와 같이, 단계(S5000)는:Further, as shown in Fig. 12, step S5000 includes:

S5100: 모든 삭제-대상 오디오 파일들의 오디오 지문인식들에 따라, 모든 삭제-대상 오디오 지문인식들을 요약하는 단계;S5100: Summarizing all delete-target audio fingerprint recognitions according to the audio fingerprint recognitions of all delete-target audio files;

S5200: 각각의 그룹의 삭제-대상 오디오 지문인식들이 동일한 대응하는 키 값을 가지도록 허용하기 위해, 삭제-대상 오디오 지문인식들을 키 값들에 따라 그룹화하는 단계로서, 그룹을 단위로 취하여 배치하고 삭제하는 것을 용이하게 하는, 상기 그룹화 단계;S5200: grouping the deletion-subject audio fingerprint recognitions according to the key values to allow deletion-subject audio fingerprint recognition of each group to have the same corresponding key value, Said grouping step facilitating said grouping;

S5300: 삭제-대상 오디오 지문인식들을 배치하기 위해, 인덱스 리스트에서, 대응하는 키 값과 동일한 키 값을 룩업하는 단계;S5300: looking up a key value in the index list that is the same as the corresponding key value, in order to place delete-target audio fingerprints;

S5400: 추가 동작과 유사하게, 삭제-대상 오디오 지문인식들을 복사하는 단계로서, 모든 다음의 삭제 동작들은 온라인 액세스에 영향을 미치지 않고 복사-형태 텍스트로 구현되는, 상기 복사 단계;S5400: copying deletion-target audio fingerprints, similar to an additional operation, wherein all subsequent deletion operations are implemented in copy-form text without affecting online access;

S5500: 새로운 오디오 지문인식들을 획득하고 삭제 동작을 종료하기 위하여, 그룹들의 오디오 지문인식들과 동일한 복사된 오디오 지문인식들을 삭제-대상 오디오 지문인식들에서 삭제하고, 후속적으로 위치 포지셔너들을 수정하는 것만 요구하는 단계; S5500: In order to acquire new audio fingerprint recognitions and terminate the deletion operation, the same copied audio fingerprint recognitions as the audio fingerprint recognitions of the groups are deleted from the deletion-target audio fingerprint recognizations and subsequently only the position positioners are modified A requesting step;

S5600: 삭제-대상 오디오 지문인식들의 키 값들에 포인팅하는 인덱스 리스트의 포인터들이 새로운 오디오 지문인식들에 포인팅하도록 허용하고, 온라인으로 삭제 동작을 종료하는 단계로서; 상기 삭제된 오디오 지문인식들은 대응하는 키 값들에 따라 액세스되는 오디오 지문인식들에 포함되지 않는, 상기 허용 및 종료 단계;S5600: allowing the pointers of the index list pointing to the key values of the delete-target audio fingerprints to be pointed to the new audio fingerprint recognitions, and terminating the delete operation on-line; Wherein the deleted audio fingerprint recognitions are not included in the audio fingerprint recognitions accessed according to corresponding key values;

S5700: 삭제-대상 오디오 지문인식들이 현재 액세스 프로세스에 영향을 미치지 않기 때문에, 본 발명은 삭제-대상 오디오 지문인식들을 지연-삭제하는 단계를 더 포함한다.S5700: Since deletion-subject audio fingerprints do not affect the current access process, the present invention further comprises deleting-deleting deletion-target audio fingerprints.

바람직하게, 단계(S5700)에서, 서버가 비지 상태가 아닐 때 삭제 동작을 수행하기 위해 다른 배경 스레드가 개시될 수 있으며, 이것은 서버의 동작 부하를 경감하면서 공간을 해제한다. Preferably, in step S5700, another background thread may be initiated to perform a delete operation when the server is not in a busy state, which releases the space while alleviating the operational load of the server.

예 5:Example 5:

본 기술분야의 통상의 기술자가 이 기술적 솔루션을 더욱 편리하게 적용하도록 허용하기 위하여, 도 13에 도시된 바와 같이, 본 발명은 또한 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 디바이스를 제공하고, 상기 디바이스는:To allow the skilled artisan to more easily apply this technical solution, as shown in FIG. 13, the present invention also provides a device for configuring on-line real-time updates of an audio fingerprint database, The device comprising:

동일한 키 값을 가진 오디오 지문인식들과 키 값 사이의 대응 관계를 확립하기 위한 유닛(100); 각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하기 위한 유닛(200)으로서, 인덱스 리스트의 각각의 키 값은 포인터 방식으로 대응하는 오디오 지문인식들에 포인팅하는, 상기 확립 유닛(200); 및 동일한 키 값을 가진 오디오 지문인식들을 연속 저장하기 위한 유닛(300)을 포함한다. A unit (100) for establishing a correspondence relationship between audio fingerprint recognitions having the same key value and a key value; A unit (200) for establishing an index list comprising respective key values and corresponding audio fingerprint recognitions, wherein each key value of the index list points to corresponding audio fingerprint recognitions in a pointer manner, 200); And a unit 300 for continuously storing audio fingerprint recognizations having the same key value.

예 6:Example 6:

또한, 도 14에 도시된 바와 같이, 본 발명에서 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 디바이스는:14, a device for configuring on-line real-time updating of an audio fingerprint database in the present invention includes:

오디오 지문인식들을 온라인으로 추가하기 위한 유닛(400)을 더 포함한다. And a unit 400 for adding the audio fingerprint recognitions on-line.

또한, 도 15에 도시된 바와 같이, 오디오 지문인식들을 온라인으로 추가하기 위한 유닛(400)은: 추가-대상 오디오 지문인식들을 대응하는 키 값들에 따라 그룹화하기 위한 유닛(410)으로서, 각각의 그룹의 추가-대상 오디오 지문인식들은 동일한 대응하는 키 값을 가지는, 상기 그룹화 유닛(410); 업데이트-대상 오디오 지문인식들을 배치하기 위해, 인덱스 리스트에서, 대응하는 키 값과 동일한 값을 룩업하기 위한 유닛(420); 업데이트-대상 오디오 지문인식들을 복사하기 위한 유닛(430); 새로운 오디오 지문인식들을 획득하기 위해, 동일한 키 값을 가진 업데이트-대상 오디오 지문인식들 및 추가-대상 오디오 지문인식들을 연속 저장하기 위한 유닛(440); 업데이트-대상 오디오 지문인식들의 키 값에 포인팅하는 인덱스 리스트의 포인터가 새로운 오디오 지문인식들에 포인팅하도록 허용하기 위한 유닛(450); 및 업데이트-대상 오디오 지문인식들을 지연-삭제하기 위한 유닛(460)을 포함한다.15, a unit 400 for adding audio fingerprint recognitions on-line includes: a unit 410 for grouping add-on audio fingerprint recognitions according to corresponding key values, Wherein the add-on audio fingerprints have the same corresponding key value; A unit (420) for, in the index list, for looking up the same value as the corresponding key value, for placing update-subject audio fingerprints; A unit 430 for copying update-subject audio fingerprints; A unit 440 for continuously storing update-subject audio fingerprints and add-on audio fingerprints with the same key value to obtain new audio fingerprint recognizations; A unit (450) for allowing a pointer to an index list pointing to key values of update-subject audio fingerprints to point to new audio fingerprints; And a unit 460 for delay-deleting the update-subject audio fingerprint.

예 7: Example 7:

또한, 이 기술적 문제를 더욱 용이하게 구현하기 위하여, 도 16에 도시된 바와 같이, 본 발명에서 오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 디바이스는: 오디오 지문인식들을 온라인으로 삭제하기 위한 유닛(500)을 더 포함한다. In order to more easily implement this technical problem, as shown in FIG. 16, a device for configuring on-line real-time updating of an audio fingerprint recognition database in the present invention comprises: a unit for deleting audio fingerprint recognitions 500).

또한, 도 17에 도시된 바와 같이, 오디오 지문인식들을 온라인으로 삭제하기 위한 유닛(500)은: 삭제-대상 오디오 지문인식들을 대응하는 키 값들에 따라 그룹화하기 위한 유닛(510)으로서, 각각의 그룹의 삭제-대상 오디오 지문인식들은 동일한 대응하는 키 값을 가지는, 상기 그룹화 유닛(510); 삭제-대상 오디오 지문인식들을 배치하기 위해, 인덱스 리스트에서, 대응하는 키 값과 동일한 값을 룩업하기 위한 유닛(520); 삭제-대상 오디오 지문인식들을 복사하기 위한 유닛(530); 새로운 오디오 지문인식들을 획득하기 위해, 그룹들의 오디오 지문인식들과 동일한 복사된 오디오 지문인식들을 삭제-대상 오디오 지문인식들에서 삭제하기 위한 유닛(540); 삭제-대상 오디오 지문인식들의 키 값에 포인팅하는 인덱스 리스트의 포인터가 새로운 오디오 지문인식들에 포인팅하도록 허용하기 위한 유닛(550); 및 삭제-대상 오디오 지문인식들을 지연-삭제하기 위한 유닛(560)을 포함한다.17, a unit 500 for deleting audio fingerprint recognitions on-line includes: a unit 510 for grouping deletion-subject audio fingerprints according to corresponding key values, - the grouping unit (510), wherein the target audio fingerprint recognitions have the same corresponding key value; A unit (520) for, in the index list, for looking up the same value as the corresponding key value, for placing target audio fingerprints; A unit 530 for copying the target audio fingerprints; A unit 540 for deleting copied audio fingerprint perceptions identical to the audio fingerprint perceptions of the groups in the delete-target audio fingerprint perceptions to obtain new audio fingerprint perceptions; A unit (550) for allowing a pointer of an index list pointing to a key value of the target audio fingerprint recognitions to point to new audio fingerprint recognitions; And a unit 560 for delay-deleting deletion-subject audio fingerprint acknowledgments.

상기 기술적 솔루션에 따라, 특정 실시예가 다음과 같이 구현된다:According to the above technical solution, a specific embodiment is implemented as follows:

(1) 모든 오디오 데이터의 오디오 지문인식 데이터를 이용하여 글로벌 대규모 오디오 지문인식 데이터베이스를 구축하고, 키 값들에 따라 분류하고, 하드 디스크 상에 저장하여, 각각의 키 값이 일정한 규칙에 따라 지정된 카탈로그에 저장되는 하나의 파일에 대응하고; 특정 구성은 도 18에 도시된다;(1) A global large-scale audio fingerprint database is constructed by using audio fingerprint data of all audio data, classified according to key values, stored on a hard disk, and each key value is stored in a designated catalog Corresponding to one file to be stored; The specific configuration is shown in Figure 18;

(2) 어레이를 메모리에 구성하고, 어레이의 첨자를 키 값과 일치하게 유지하면서 키리스트로서 기록하고, 어레이의 요소를 널 포인터(null pointer)로 초기화하고; 그 후에 조각-연속 메모리에 각각의 키의 파일을 각각 업로드하고, 값들로서 기록하고, 대응하는 값들에 포인팅하는 포인터가 되도록 어레이의 첨자 위치에 대응하는 데이터를 업데이트한다. (2) configuring the array in memory, recording the index of the array as a key list while keeping the subscripts consistent with the key value, and initializing the elements of the array with a null pointer; And then updates the data corresponding to the subscript position of the array so that it is a pointer to upload each file of each key into the fragment-continuation memory, write each as a value, and point to the corresponding values.

(3) 검색을 위해, 먼저 키 값에 기초하여 키리스트에서 값들을 찾고, 값들에서 적격 데이터(eligible data)를 필터링한다. (3) For the search, first finds values in the key list based on the key value and filters the eligible data in the values.

도 19에 도시된 바와 같이, 노래 지문인식들을 온라인으로 추가하는 것이 필요하고 노래 지문인식들(n(키, 값) 쌍들로 구성되고, 여기서 n은 일반적으로 수 천이다)이 추가될 때, 본 발명의 실시예가 다음과 같이 구현된다:As shown in FIG. 19, when it is necessary to add song fingerprint recognitions online and song fingerprint identifiers (consisting of n (key, value) pairs, where n is generally a few thousand) An embodiment of the invention is implemented as follows:

그룹화: 노래 지문인식들을 키 값들에 따라 그룹화함으로써, 그룹을 단위로 취함에 의해 동일한 키 값을 가진 노래 지문인식들의 삽입 방식의 추가를 용이하게 한다; Grouping : By grouping song fingerprint perceptions according to key values, thereby facilitating the addition of a way of inserting song fingerprint perceptions having the same key value by taking groups as a unit;

배치: 각각의 그룹의 키 값에 따라, 인덱스 리스트에서 업데이트-대상 오디오 지문인식들(값들)을 찾고, 구형-값들로서 기록하고; 인덱스 리스트에는 오디오 지문인식 데이터베이스의 모든 키 값들이 온라인 적용으로 및 모든 오디오 지문인식들과 모든 키 값들의 대응하는 키 값들 사이의 대응 관계로 포함되고, 대응 관계는 포인터 방식으로 실현되는 것이 바람직하다; Locate : update-target audio fingerprints (values) in the index list according to the key value of each group, record as spherical-values; Preferably, the index list includes all the key values of the audio fingerprint database in on-line application and in correspondence between all audio fingerprints and corresponding key values of all key values, and the correspondence is realized in a pointer manner;

복사 및 삽입: 구형-값들의 컨텐트를 복사하고, 구형-값들을 가진 키 그룹에서 모든 값들을 조합하고, 신형-값들을 재구성하고, 그 신형-값들에 키리스트의 키 위치들이 포인팅해야 한다; Copy and insert : copy the content of the spherical-values, combine all the values in the key-group with the spherical-values, reconstruct the new-values, and point the key-positions of the keylist to the new-values;

포인터를 오프셋: 키리스트의 키 위치들에 있는 포인터들이 신형-값들에 포인팅하도록 허용한다;Allow pointers to point pointers in key positions of offset : key list to new-values;

구형 데이터를 교체, 비동기적으로 삭제: 구형-값들의 포인터들이 이용되는 것을 회피하기 위하여, 구형-값들의 포인터들을 큐(queue)에 추가하고, 이들을 배경 스레드에 의해 지연-삭제한다. Replace, asynchronously delete old data : To avoid using pointers to old-value, add pointers to old-value pointers to the queue and delay-delete them by the background thread.

파일들을 비동기적으로 업데이트: 신형-값들로서 키에 대응하는 파일들의 컨텐트를 하드 디스크 상에 비동기적으로 업데이트한다. Update files asynchronously : Asynchronously updates the contents of the files corresponding to keys with new-values on the hard disk.

단계들: 포인터 제거 단계, 및 구형 데이터를 교체하고 비동기적으로 삭제하는 단계들은 듀얼-스레드형 병렬 동작이고, 시간 순차적이지 않음을 유념해야 한다.Steps: The pointer removal step, and replacing and asynchronously deleting the old data, are dual-threaded parallel operations and are not time sequential.

도 20에 도시된 바와 같이, 노래 지문인식들을 온라인으로 삭제하는 것이 필요하고, 노래 지문인식들(n(키, 값) 쌍들로 구성되고, 여기서 n은 일반적으로 수 천이다)이 삭제될 때, 종래 기술 분야의 방법이 채택되는 경우, 온라인 액세스에 영향이 미치고, 삭제 동작은 과도하게 지루하고, 반복 동작 횟수들이 중복되며; 본 발명의 개선된 실시예는 다음과 같이 구현된다:As shown in FIG. 20, when it is necessary to delete song fingerprint recognitions online, and when the song fingerprint recognitions (consisting of n (key, value) pairs, where n is generally a few thousand) are deleted, When a method in the prior art is employed, it affects on-line access, the delete operation is unduly tedious, and the number of iterations is duplicated; An improved embodiment of the present invention is implemented as follows:

그룹화: 삭제-대상 오디오 지문인식 리스트에 따라 삭제-대상 오디오 지문인식들에 대한 통계를 수행하고, 삭제-대상 오디오 지문인식들을 키 값들에 따라 그룹화한다; Grouping : deletion-performs statistics on deletion-target audio fingerprint recognition according to the target audio fingerprint recognition list, and groups delete-target audio fingerprint recognition according to key values;

배치: 각각의 그룹의 키 값에 따라, 인덱스 리스트(키리스트)의 업데이트-대상 값들을 찾고, 구형-값들로서 기록한다; Placement : Locate update-target values of the index list (key list) according to the key value of each group and record as spherical-values;

복사 및 삭제: 구형-값들에서 컨텐트를 복사하고, 그 값들에서 타겟 값을 찾아 삭제하고, 나머지 데이터를 신형-값들로 재구성한다; Copy and delete : copy content from spherical-values, find and delete target values from those values, and reconstruct the remaining data into new-values;

포인터를 오프셋: 키리스트의 신형-키 위치들에 있는 포인터들이 신형-값들에 포인팅하도록 허용한다;Allow pointers to point pointers to new-values in the new-key positions of the offset : key list;

구형 데이터를 교체, 비동기적으로 삭제: 구형-값들의 포인터들이 이용되는 것을 회피하기 위하여, 구형-값들의 포인터들을 큐에 추가하고, 이들을 배경 스레드에 의해 지연-삭제한다. Replace, asynchronously delete old data : To avoid using pointers to old-value pointers, add pointers to old-value pointers and delay them by the background thread.

파일들을 비동기적으로 업데이트: 신형-값들로서 키에 대응하는 파일들의 컨텐트를 하드 디스크 상에 비동기적으로 업데이트한다. Update files asynchronously : Asynchronously updates the contents of the files corresponding to keys with new-values on the hard disk.

Claims (4)

오디오 지문인식 데이터베이스의 온라인 실시간 업데이트를 구성하기 위한 방법에 있어서:
동일한 키 값을 가진 오디오 지문인식들과 키 값 사이의 대응 관계를 확립하는 단계;
각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하고, 상기 인덱스 리스트의 각각의 키 값이 포인터 방식으로 대응하는 오디오 지문인식들에 포인팅하도록 허용하는 단계; 및
상기 동일한 키 값을 가진 상기 오디오 지문인식들을 연속 저장하는 단계를 포함하고;
상기 방법은:
오디오 지문인식들을 온라인으로 추가하는 단계를 더 포함하고, 상기 추가 단계는:
추가-대상 오디오 지문인식들을 대응하는 키 값들에 따라 그룹화하는 단계로서, 각각의 그룹의 상기 추가-대상 오디오 지문인식들은 동일한 키 값을 가지는, 그룹화 단계;
업데이트-대상 오디오 지문인식들을 배치(position)하기 위해, 상기 인덱스 리스트에서, 상기 대응하는 키 값과 동일한 값을 룩업(look-up)하는 단계;
상기 업데이트-대상 오디오 지문인식들을 복사하는 단계;
새로운 오디오 지문인식들을 획득하기 위해, 상기 업데이트-대상 오디오 지문인식들 및 상기 추가-대상 오디오 지문인식들을 연속 저장하는 단계;
업데이트-대상 오디오 지문인식들의 상기 키 값에 포인팅하는 상기 인덱스의 상기 포인터가 상기 새로운 오디오 지문인식들에 포인팅하도록 허용하는 단계; 및
상기 업데이트-대상 오디오 지문인식들을 지연-삭제(delay-deleting)하는 단계를 포함하는, 온라인 실시간 업데이트 구성 방법.
A method for configuring an online real-time update of an audio fingerprint database, comprising:
Establishing a correspondence between key fingerprint values and key fingerprints having the same key value;
Establishing an index list comprising respective key values and corresponding audio fingerprint recognitions and allowing each key value of the index list to point to corresponding audio fingerprint recognitions in a pointer fashion; And
Continuously storing the audio fingerprint recognizations having the same key value;
The method comprising:
Further comprising adding the audio fingerprint recognitions online, the adding further comprising:
Grouping the add-on audio fingerprints according to corresponding key values, wherein the add-on audio fingerprints of each group have the same key value;
Looking up the same value in the index list as the corresponding key value to position update-subject audio fingerprints;
Copying the update-subject audio fingerprint identifications;
Continuously storing the update-subject audio fingerprint recognizations and the add-on audio fingerprint recognizations to obtain new audio fingerprint recognizations;
Allowing the pointer of the index pointing to the key value of update-subject audio fingerprint notions to point to the new audio fingerprint recognitions; And
And delay-deleting the update-subject audio fingerprints.
제 1 항에 있어서,
동일한 키 값을 가진 오디오 지문인식들과 키 값 사이의 대응 관계를 확립하는 상기 단계는:
상기 동일한 키 값을 가진 상기 오디오 지문인식들을 동일한 어레이로 분류하는 단계를 포함하고;
각각의 키 값 및 대응하는 오디오 지문인식들을 포함하는 인덱스 리스트를 확립하는 상기 단계는:
상기 인덱스 리스트가 상기 키 값들과 동일한 수(number)를 가진 어레이들을 포함하도록 허용하는 단계를 포함하는, 온라인 실시간 업데이트 구성 방법.
The method according to claim 1,
The step of establishing a correspondence relationship between the audio fingerprint recognitions having the same key value and the key value comprises:
Classifying the audio fingerprint recognitions having the same key value into the same array;
Wherein the step of establishing an index list comprising each key value and corresponding audio fingerprint recognition comprises:
And allowing the index list to include arrays having the same number as the key values.
제 1 항에 있어서,
오디오 지문인식들을 온라인으로 삭제하는 단계를 더 포함하고, 상기 온라인 삭제 단계는:
각각의 그룹의 삭제-대상 오디오 지문인식들이 상기 동일한 대응하는 키 값을 가지도록 허용하기 위해, 상기 삭제-대상 오디오 지문인식들을 상기 키 값들에 따라 그룹화하는 단계;
상기 삭제-대상 오디오 지문인식들을 배치하기 위해, 상기 인덱스에서, 상기 대응하는 키 값과 동일한 키 값을 룩업하는 단계;
상기 삭제-대상 오디오 지문인식들을 복사하는 단계;
새로운 오디오 지문인식들을 획득하기 위해, 상기 그룹들의 상기 오디오 지문인식들과 동일한 상기 복사된 오디오 지문인식들을 상기 삭제-대상 오디오 지문인식들에서 삭제하는 단계;
삭제-대상 오디오 지문인식들의 상기 키 값들에 포인팅하는 상기 인덱스 리스트의 상기 포인터들이 상기 새로운 오디오 지문인식들에 포인팅하도록 허용하는 단계;
상기 삭제-대상 오디오 지문인식들을 지연-삭제하는 단계를 포함하는, 온라인 실시간 업데이트 구성 방법.
The method according to claim 1,
Further comprising deleting the audio fingerprint recognitions online, wherein the deleting the online step comprises:
Grouping the deletion-subject audio fingerprints according to the key values to allow deletion-subject audio fingerprints of each group to have the same corresponding key value;
Looking up a key value in the index that is the same as the corresponding key value to place the deletion-subject audio fingerprint recognitions;
Copying the delete-target audio fingerprint recognizers;
Deleting the copied audio fingerprint identifications identical to the audio fingerprint recognitions of the groups in the deletion-subject audio fingerprint recognitions to obtain new audio fingerprint recognitions;
- allowing the pointers in the index list pointing to the key values of the target audio fingerprint recognitions to point to the new audio fingerprint recognitions;
And delaying and deleting the deletion-subject audio fingerprint recognizations.
제 1 항 또는 제 3 항에 있어서,
상기 지연-삭제 단계는 배경 스레드(background thread)에 의해 실현되는, 온라인 실시간 업데이트 구성 방법.
The method according to claim 1 or 3,
Wherein the deleting-deleting step is implemented by a background thread.
KR1020150181165A 2015-02-13 2015-12-17 Method and device for constructing on-line real-time updating of massive audio fingerprint database KR20160100219A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510079627.5 2015-02-13
CN201510079627.5A CN104679847B (en) 2015-02-13 2015-02-13 A kind of method and apparatus constructing online real-time update magnanimity audio-frequency fingerprint library

Publications (1)

Publication Number Publication Date
KR20160100219A true KR20160100219A (en) 2016-08-23

Family

ID=53314889

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020150162353A KR20160100211A (en) 2015-02-13 2015-11-19 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020150170033A KR102431806B1 (en) 2015-02-13 2015-12-01 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020150181165A KR20160100219A (en) 2015-02-13 2015-12-17 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020160004208A KR101740271B1 (en) 2015-02-13 2016-01-13 Method and device for constructing on-line real-time updating of massive audio fingerprint database

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020150162353A KR20160100211A (en) 2015-02-13 2015-11-19 Method and device for constructing on-line real-time updating of massive audio fingerprint database
KR1020150170033A KR102431806B1 (en) 2015-02-13 2015-12-01 Method and device for constructing on-line real-time updating of massive audio fingerprint database

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020160004208A KR101740271B1 (en) 2015-02-13 2016-01-13 Method and device for constructing on-line real-time updating of massive audio fingerprint database

Country Status (3)

Country Link
KR (4) KR20160100211A (en)
CN (1) CN104679847B (en)
DE (1) DE102016001035A1 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334514B (en) * 2017-01-20 2020-11-03 北京京东尚科信息技术有限公司 Data indexing method and device
CN107066861B (en) * 2017-03-20 2020-01-14 Oppo广东移动通信有限公司 Fingerprint event processing method and mobile terminal
CN106970813A (en) * 2017-03-31 2017-07-21 广东欧珀移动通信有限公司 Software updating control method, device and electronic equipment
CN107731220B (en) 2017-10-18 2019-01-22 北京达佳互联信息技术有限公司 Audio identification methods, device and server
KR102494591B1 (en) 2018-09-18 2023-02-03 삼성전자주식회사 Electronic apparatus, control method thereof and electronic system
CN109597024B (en) * 2018-11-19 2020-05-12 南京财经大学 Indoor area positioning method and system based on asynchronous sensing data
CN109657093A (en) * 2018-11-27 2019-04-19 腾讯音乐娱乐科技(深圳)有限公司 Audio search method, device and storage medium
CN109726307A (en) * 2018-12-26 2019-05-07 合肥凯捷技术有限公司 A kind of inter-network interconnected audio big data memory search method
CN109871463B (en) * 2019-03-06 2024-04-09 腾讯音乐娱乐科技(深圳)有限公司 Audio processing method, device, electronic equipment and storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101777075B (en) * 2010-02-05 2015-02-11 上海全土豆网络科技有限公司 Method for searching parallel audio fingerprint
CN102289518B (en) 2011-09-13 2013-03-27 盛乐信息技术(上海)有限公司 Method and system for updating audio fingerprint search library
CN103870516B (en) * 2012-12-18 2019-10-25 北京三星通信技术研究有限公司 Retrieve the method for image, paint in real time reminding method and its device
CN104123300B (en) * 2013-04-26 2017-10-13 上海云人信息科技有限公司 Data distribution formula storage system and method
CN103995890A (en) 2014-05-30 2014-08-20 杭州智屏软件有限公司 Method for updating and searching for data of real-time audio fingerprint search library

Also Published As

Publication number Publication date
KR20160100216A (en) 2016-08-23
CN104679847A (en) 2015-06-03
KR101740271B1 (en) 2017-05-26
KR20160100226A (en) 2016-08-23
KR102431806B1 (en) 2022-08-12
DE102016001035A1 (en) 2016-08-18
KR20160100211A (en) 2016-08-23
CN104679847B (en) 2019-03-15

Similar Documents

Publication Publication Date Title
KR20160100219A (en) Method and device for constructing on-line real-time updating of massive audio fingerprint database
US20200159628A1 (en) Systems and methods of restoring a dataset of a database for a point in time
CN110799960B (en) System and method for database tenant migration
US8200633B2 (en) Database backup and restore with integrated index reorganization
EP3519986B1 (en) Direct table association in in-memory databases
US20120259948A1 (en) Asynchronous distributed object uploading for replicated content addressable storage clusters
CN107766374B (en) Optimization method and system for storage and reading of massive small files
CN110799961B (en) System and method for creating and deleting tenants in database
CN111427847A (en) Indexing and query method and system for user-defined metadata
US11327999B2 (en) Reorganization of partition by growth space with LOB columns
US10346256B1 (en) Client side cache for deduplication backup systems
JP2011191835A (en) Computer system and method of executing application program
US8032617B2 (en) Application settings migration using virtualization
CN112334891A (en) Centralized storage for search servers
KR101989074B1 (en) Migration based on replication log in database sharding environment
CN111522827A (en) Data updating method and device and electronic equipment
CN111290700A (en) Distributed data reading and writing method and system
US20220365905A1 (en) Metadata processing method and apparatus, and a computer-readable storage medium
CN108292316A (en) Increment type synchronizes hierarchical system and restores
CN113608724A (en) Offline warehouse real-time interaction method and system based on model cache
Lee et al. Boosting compaction in B-tree based key-value store by exploiting parallel reads in flash ssds
JP5832592B1 (en) Data management device
CN117555877A (en) Data migration method and device
JP2023539811A (en) How to load data into the target database system
AU2013209349B2 (en) Asynchronous distributed object uploading for replicated content addressable storage clusters

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application