KR102564543B1 - 행렬식 텍스트를 저장하는 방법, 장치 및 전자기기 - Google Patents
행렬식 텍스트를 저장하는 방법, 장치 및 전자기기 Download PDFInfo
- Publication number
- KR102564543B1 KR102564543B1 KR1020210002399A KR20210002399A KR102564543B1 KR 102564543 B1 KR102564543 B1 KR 102564543B1 KR 1020210002399 A KR1020210002399 A KR 1020210002399A KR 20210002399 A KR20210002399 A KR 20210002399A KR 102564543 B1 KR102564543 B1 KR 102564543B1
- Authority
- KR
- South Korea
- Prior art keywords
- determinant
- text
- data
- type
- subtype
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 행렬식 텍스트를 저장하는 방법, 장치 및 전자기기를 개시하고, 데이터 처리 기술 분야에 관한 것이다. 구체적인 구현방식은, 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하는 단계; 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 단계; 복수의 필드 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 단계; 및 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장하는 단계를 포함한다. 당해 방법은 행렬식 텍스트 데이터의 데이터 설명 영역 및 값 저장 영역을 결정하여 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장함으로써, 행렬식 텍스트 데이터의 저장 압축률 및 데이터의 검색 효율을 향상시킨다.
Description
본 발명은 데이터 처리 기술 분야에 관한 것으로, 구체적으로 텍스트 저장 기술 분야에 관한 것이며, 특히 행렬식 텍스트를 저장하는 방법, 장치, 전자기기 및 컴퓨터 판독가능 저장 매체에 관한 것이다.
그래프 데이터베이스의 근원은 오일러 및 그래프 이론이고, 그래프 지향/그래프 기반 데이터베이스 (graph-oriented/graph-based database)라고도 지칭될 수도 있으며, 대응하는 영어는 Graph Database이다. 그래프 데이터베이스의 기본적인 의미는 이미지를 저장하는 데이터베이스가 아니라 "그래프"와 같은 데이터 구조로 데이터를 저장 및 조회하는 것이다. 그래프 데이터베이스의 주요한 입력 데이터는 행렬식 텍스트이고, 데이터의 검색은 대규모 행렬식 텍스트 데이터의 저장을 통해 실현된다.
관련 기술에서, 행렬식 텍스트는 일반적으로 2 가지 방식으로 저장된다. 첫번째 방법은 행렬식 텍스트 데이터를 JSON으로 변환하여 저장하는 것인데, 실제 저장 과정에서는 데이터 확장이 엄청나게 커져서 검색에 오랜 시간이 걸린다. 두번째 방법은 행렬식 텍스트 데이터를 순차적으로 저장하는 것인데, 행렬식 텍스트를 순차적으로 저장할 때 저장 압축률이 부족하고, 중복 필드가 너무 많고, 검색 효율이 낮은 등의 단점이 있다.
본 발명은 행렬식 텍스트를 저장하는 방법을 제공하며, 행렬식 텍스트 데이터의 데이터 설명 영역 및 값 저장 영역을 결정하여 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장함으로써, 행렬식 텍스트 데이터의 저장 압축률 및 데이터의 검색 효율을 향상시킨다.
본 발명의 제1 측면에 따르면, 행렬식 텍스트를 저장하는 방법을 제공하며, 당해 방법은,
복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하는 단계;
상기 복수의 필드 중 유효 필드를 획득하고, 상기 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 단계;
상기 복수의 필드 콘텐츠 및 상기 필드 유형 테이블에 따라 상기 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 단계; 및
상기 데이터 설명 영역 및 상기 값 저장 영역으로 상기 행렬식 텍스트 데이터를 구성하여 저장하는 단계; 를 포함한다.
본 발명의 실시예의 가능한 제 1 구현방식으로서, 상기 필드 유형 테이블은 여러 가지 유형을 포함하고, 각 유형은 대응하는 유형 식별자 및 서브 유형 세트를 포함하며, 각 서브 유형은 대응하는 서브 유형 일련 번호 및 속성을 가지며, 상기 속성은 속성 번호, 속성 유형, 디폴트 값, 및 널 (null)값이 허용되는지 여부를 포함한다.
본 발명의 실시예의 가능한 제 2 구현방식으로서, 상기 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 단계는,
상기 행렬식 텍스트에 대응하는 상기 필드 유형 테이블 내의 유형을 획득하고, 대응하는 유형의 유형 식별자에 따라 유형 ID 데이터를 생성하는 단계;
상기 유효 필드에 대응하는 상기 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득하는 단계;
대응하는 서브 유형 일련 번호에 따라 속성 값 데이터를 생성하는 단계;
상기 유형 ID 데이터 및 상기 속성 값 데이터에 따라 상기 데이터 설명 영역을 생성하는 단계를 포함한다.
본 발명의 실시예의 가능한 제 3 구현방식으로서, 상기 복수의 필드 콘텐츠 및 상기 필드 유형 테이블에 따라 상기 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 단계는,
상기 유효 필드에 대응하는 서브 유형 일련 번호를 획득하고, 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치를 획득하는 단계;
상기 유효 필드가 문자열인 것으로 결정될 경우, 상기 유효 필드의 문자열 콘텐츠를 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치에 저장하는 단계;
상기 유효 필드가 문자열이 아닌 것으로 결정될 경우, 상기 유효 필드에 대응하는 서브 유형의 속성 값을 획득하고, 상기 속성 값을 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치에 저장하는 단계; 를 포함한다.
본 발명의 실시예의 가능한 제 4 구현방식으로서, 상기 유형 ID 데이터 및 상기 속성 값 데이터는 가변 길이 정수 유형 저장이다.
본 발명의 제 2 측면에 따르면, 행렬식 텍스트를 저장하는 장치를 제공하며, 당해 장치는,
복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하는 획득모듈;
상기 복수의 필드 중 유효 필드를 획득하고, 상기 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 생성모듈;
상기 복수의 필드 콘텐츠 및 상기 필드 유형 테이블에 따라 상기 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 결정모듈; 및
상기 데이터 설명 영역 및 상기 값 저장 영역으로 상기 행렬식 텍스트 데이터를 구성하여 저장하는 저장모듈; 을 포함한다.
본 발명의 제 3 측면에 따르면, 전자기기를 제공하며, 당해 전자기기는,
적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서에 통신 가능하게 연결되는 메모리를 포함하고,
상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되어 있고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 실행되어, 상기 적어도 하나의 프로세서가 상기 실시예에 따른 행렬식 텍스트를 저장하는 방법을 수행하게 한다.
본 발명의 제 4 측면에 따르면, 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독가능 저장 매체를 제공하며, 상기 컴퓨터 명령은 상기 컴퓨터가 상기 실시예에 따른 행렬식 텍스트를 저장하는 방법을 수행하게 한다. 또한, 본 발명의 제 5 측면에 따르면, 비일시적 컴퓨터 판독가능 저장 매체에 저장되어 있는 컴퓨터 프로그램을 제공하며, 상기 컴퓨터 프로그램은 상기 컴퓨터가 상기 실시예에 따른 행렬식 텍스트를 저장하는 방법을 수행하게 한다.
상기 발명의 일 실시예는 다음과 같은 이점 또는 유익한 효과를 갖는다. 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하며; 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하며; 복수의 필드 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정하며; 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장한다. 이 방법은 행렬식 텍스트 데이터의 데이터 설명 영역 및 값 저장 영역을 결정하여 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장함으로써, 행렬식 텍스트 데이터의 저장 압축률 및 데이터의 검색 효율을 향상시킨다.
전술한 선택적인 방식의 다른 효과는 이하 특정 실시예를 참조하여 설명될 것이다.
첨부된 도면은 본 발명의 해결방법을 보다 잘 이해하기 위해 사용되며, 본 발명을 한정하지 않는다.
도 1은 본 발명의 제 1실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 2는 본 발명의 제 1 실시예에 따른 행렬식 텍스트를 저장하는 예시적인 도면이다.
도 3은 본 발명의 제 2 실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 4는 본 발명의 제 3 실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 5는 본 발명의 제 4 실시예에 따른 행렬식 텍스트를 저장하는 장치의 구조도이다.
도 6은 본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 방법을 구현하기 위한 전자기기의 블록도이다.
도 1은 본 발명의 제 1실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 2는 본 발명의 제 1 실시예에 따른 행렬식 텍스트를 저장하는 예시적인 도면이다.
도 3은 본 발명의 제 2 실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 4는 본 발명의 제 3 실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 5는 본 발명의 제 4 실시예에 따른 행렬식 텍스트를 저장하는 장치의 구조도이다.
도 6은 본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 방법을 구현하기 위한 전자기기의 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명의 예시적인 실시예를 설명하고, 이해를 돕기 위해 본 발명의 실시예의 각종 세부사항을 포함하지만 단지 예시적인 것으로 간주하여야 한다. 따라서, 당업자는 본 발명의 범위 및 사상으로부터 벗어나지 않고 본 명세서에 기술된 실시예들에 대한 다양한 변경 및 수정이 이루어질 수 있다는 것을 이해할 것이다. 또한, 공지된 기능 및 구조에 대한 설명은 명확성과 간결성을 위해 다음의 설명에서 생략된다.
본 발명은, 관련 기술에서의 행렬식 텍스트 저장 방식에 존재하는 압축률 부족, 검색효율 저하 등의 문제를 해결하기 위해, 행렬식 텍스트를 저장하는 방법을 제공하는바, 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하는 단계; 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 단계; 복수의 필드의 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 단계; 및 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장하는 단계; 를 포함한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 방법, 장치 및 전자기기를 설명한다.
도 1은 본 발명의 제 1실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 1에 도시된 바와 같이, 당해 행렬식 텍스트를 저장하는 방법은 다음과 같은 단계를 포함할 수 있다.
단계(101)에서, 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득한다.
본 발명의 실시예에서, 행렬식 텍스트는 쉼표로 구분된 값(Comma-Separated Values, CSV) 텍스트라고도 부르며, 텍스트 파일의 형태로 저장된 테이블 데이터이다. 예를 들어, 다음의 테이블은 행렬식 텍스트이다.
이름(name) | 나이(age) | 거주지(city) |
장삼 | 20 | 북경 |
이사 | 26 | 상해 |
왕오 | 30 | 광주 |
본 발명의 실시예에서, 저장될 행렬식 텍스트를 데이터베이스에 저장하기 전에, 저장될 행렬식 텍스트를 먼저 획득하고, 저장될 행렬식 텍스트는 복수의 필드를 포함한다.
상기 테이블로부터 알 수 있는 바와 같이, 행렬식 텍스트를 저장할 때, 저장될 행렬식 텍스트는 복수의 필드를 포함하고, 테이블의 "열"은 필드라고 부를 수 있고, 각 필드는 특정 주제에 대한 정보를 포함한다. 예를 들어 상기 행렬식 텍스트에는 "이름" 필드, "나이" 필드, 및 "거주지" 필드가 포함된다. 또한, 예를 들어, "주소록" 데이터베이스에서, "이름", "연락번호"는 테이블 내의 모든 행의 공유된 속성이며, 따라서 이들 열은 "이름" 필드 및 "연락번호" 필드라고 부른다.
단계(102)에서, 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성한다.
단계(103)에서, 복수의 필드 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정한다.
본 발명의 실시예에서, 필드 유형 테이블은 여러 가지 유형을 포함하고, 각 유형은 대응하는 유형 식별자 및 서브 유형 세트를 포함하며, 각 서브 유형은 대응하는 서브 유형 일련 번호 및 속성을 가지며, 속성은 속성 번호, 속성 유형, 디폴트 값, 및 널(null) 값이 허용되는지 여부를 포함한다.
본 발명의 실시예에서, 행렬식 텍스트에 포함된 복수의 필드 중 유효 필드는 저장될 행렬식 텍스트 중의 저장할 필요가 있는 필드를 지칭할 수 있다.
본 발명의 실시예에서, 저장될 행렬식 텍스트는 2 개의 영역, 즉 데이터 설명 영역 및 값 저장 영역으로 분할된다.
본 발명의 실시예에서, 저장될 행렬식 텍스트를 획득한 후에, 행렬식 텍스트에 포함된 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성한다.
본 발명의 실시예에서, 저장될 행렬식 텍스트에 포함된 복수의 필드의 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정할 수 있다.
단계(104)에서, 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장한다.
본 발명의 실시예에서, 저장될 행렬식 텍스트 데이터의 데이터 설명 영역 및 값 저장 영역을 생성한 후에, 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여, 구성된 행렬식 텍스트 데이터를 저장하도록 한다. 따라서, 행렬식 텍스트를 압축하여 저장하는 것이 달성되고, 데이터의 저장 압축률이 향상된다.
행렬식 텍스트 데이터의 대부분의 데이터가 디폴트 값일 경우, 예를 들어, "본적"은 "한족"으로 묵인될 수 있고, "성별" 은 "남성" 또는 "여성"으로 묵인될 수 있다. 폭 넓게 사용하는 값(value)에 대해, 디폴트 값을 설정할 수 있는데, 저장 시에 저장할 필요가 없고, 하나의 비트를 이용하여 표시할 수 있어, 행렬식 텍스트 데이터의 저장 압축률이 매우 높다.
일 예로서, 도 2에 도시된 바와 같이, 데이터(data)에 대해, 그레이(gray) 부분은 데이터 설명 영역이다. 도 2에서 유효 필드가 표시되고, 행렬식 텍스트 데이터는 명칭: "샤오두 온라인"; 회사 속성: "과학기술혁신" 이다. 행렬식 텍스트 데이터에 "법인", "설립 시간" 및 "등록 자본"이 존재하지 않기 때문에, 구성된 행렬식 텍스트 데이터를 저장할 때, "법인", "설립 시간" 및 "등록 자본"을 저장할 필요가 없고 속성 상태에만 표시하면 된다. "회사 속성"의 경우, 0으로 직접 쓰여있기에, 행렬식 텍스트를 조회한 결과 당해 필드가 열거값이며 0이 열거의 첫번째 값을 나타내기 때문에 "회사 속성"의 값은 "과학기술혁신"이다.
"설립 시간" 필드가 획득되면, 속성 상태를 통해 당해 필드가 존재하지 않는 다는것을 알수 있으므로, 행렬식 텍스트 데이터를 직접 조회하여, 디폴트 값이 존재하면 디폴트 값으로 리턴된다.
행렬식 텍스트 데이터를 순차적으로 저장함에 따른 검색 효율 저하 문제와 비교하면, 행렬식 텍스트 데이터를 저장한 후 행렬식 텍스트 데이터의 콘텐츠를 검색할 때, 속성 번호부터 전체 데이터 설명 영역까지 모두 저장가능하기 때문에, 검색 시 필드의 상태, 예를 들어 필드의 존재 여부, 필드가 존재할 경우 값 저장 영역의 몇 번째가 되는 것인지 매우 신속하게 파악할 수 있다.
본 발명의 실시예에서, 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하며; 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하며; 복수의 필드의 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정하며; 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장한다. 상기 방법은 행렬식 텍스트 데이터의 데이터 설명 영역 및 값 저장 영역을 결정하여 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장함으로써, 행렬식 텍스트 데이터의 저장 압축률 및 데이터의 검색 효율을 향샹시킨다.
하나의 가능한 구현방식으로서, 상기 단계(102)에서, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성할 때, 행렬식 텍스트에 대응하는 필드 유형 테이블 내의 유형을 획득하고, 대응하는 유형의 유형 식별자에 따라 유형 ID 데이터를 생성하며; 유효 필드에 대응하는 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득하며; 대응하는 서브 유형 일련 번호에 따라 속성 값 데이터를 생성하며; 유형 ID 데이터 및 속성 값 데이터에 따라 데이터 설명 영역을 생성할수 있다. 이하, 도 3을 참조하여 구체적인 구현과정을 설명하며, 도 3은 본 발명의 제 2 실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 3에 도시된 바와 같이, 당해 행렬식 텍스트를 저장하는 방법은 다음과 같은 단계를 더 포함할 수 있다.
단계(201)에서, 행렬식 텍스트에 대응하는 필드 유형 테이블 내의 유형을 획득하고, 대응하는 유형의 유형 식별자에 따라 유형 ID 데이터를 생성한다.
본 발명의 실시예에서, 필드 유형 테이블 내의 유형은 정수 유형, 부동 소수점 유형, 문자열 유형, 열거 유형, 및 날짜 및 시간 유형일 수 있다.
여기서, 열거 유형은 매우 특별한 유형이고, 기타 데이터베이스에는 거의 없다. MySQL??의 외래 키 테이블(foreign key table)과 유사하며, 실제 사례에서 대부분의 필드 유형의 데이터가 열거 유형이다. 예를 들어, "회사 종류", "소속 업종", "성별", "거래 유형", "국가&지역" 등이다.
본 발명의 실시예에서, 행렬식 텍스트에 포함된 복수의 필드를 획득한 후, 대응하는 필드 유형 테이블에서 각 필드가 속하는 유형을 결정하고, 각 필드에 대응하는 유형 식별자에 따라 유형 ID 데이터를 생성한다.
예를 들어, 행렬식 텍스트가 회사 필드, 뱅크 필드, 및 개인 필드를 포함하면, 각 필드는 하나의 유형 ID 데이터에 대응하고, 예를 들어, 회사 필드에 대응하는 유형 ID 데이터는 num1일 수 있다.
단계(202)에서, 유효 필드에 대응하는 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득한다.
본 발명의 실시예에서, 행렬식 텍스트에 포함된 복수의 필드 중 모든 필드가 유효한 필드인 것은 아니고, 행렬식 텍스트의 저장 압축률을 향상시키기 위해, 유효 필드에 대응하는 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득하면 된다.
단계(203)에서, 대응하는 서브 유형 일련 번호에 따라 속성 값 데이터를 생성한다.
본 발명의 실시예에서, 각 서브 유형의 서브 유형 일련 번호를 획득한 후, 각 서브 유형이 행렬식 텍스트에 존재하는지 여부에 따라 속성 값 데이터를 생성한다.
일 예로서, 행렬식 텍스트에서 필드 유형 테이블에 포함된 필드의 유형이 "명칭", "법인", "회사 속성", "설립 시간" 및 "등록 자본"이며, 필드의 유형이 "회사 속성"인 유형에 대응하는 서브 유형 세트는 "과학기술혁신", "농림", "교육" 및 "기타"이다. 유효 필드에 대응하는 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득한 후, "명칭" 및 "회사 속성"인 유형의 속성 값 데이터는 1이고, 나머지 유형에 의해 생성된 속성 값 데이터는 모두 0인 것으로 결정될 수 있다. 행렬식 텍스트 내의 각 필드에 대응하는 속성 값 데이터가 0인 필드는 저장할 필요가 없어 데이터 저장 시 데이터 압축률을 향상시키고 저장 공간을 절약한다.
단계(204)에서, 유형 ID 데이터 및 속성 값 데이터에 따라 데이터 설명 영역을 생성한다.
여기서, 유형 ID 데이터 및 속성 값 데이터는 모두 가변 길이 정수 유형 저장이고, 기준 길이에 스텝 길이를 추가하는 모드를 채용하여 유형 ID 데이터 및 속성 값 데이터를 압축 및 저장하여, 데이터 저장시 많은 공간을 확보할 필요가 없고, 데이터 저장 압축률이 향상되고, 데이터 저장 공간이 절약된다.
가변 길이 정수는 1 개의 플래그 비트 및 7 개의 데이터 비트를 사용하여 양의 정수 값을 압축하는데, 플래그 비트는 7 비트 데이터 비트를 제외한 나머지 데이터 비트의 값이 0 인지 여부를 나타내는 역할을 한다. 구체적인 계산 방법은 값과 0x7f를 AND연산하여, 값이 0인 경우, 이 값의 유효 데이터 비트가 7 비트이고, 그렇지 않고 값이 1인 경우, 유효 데이터가 여전히 존재한다는 것을 나타내고, 값을 오른쪽으로 7 비트만큼 시프트하여 0이 될 때까지 이전 단계를 계속함으로써, 데이터의 압축 저장이 달성되고, 데이터 압축률이 향상된다.
본 발명의 실시예에서, 행렬식 텍스트 내의 각 필드에 대응하는 유형 ID 데이터 및 유효 필드에 대응하는 속성 값 데이터를 결정한 후, 유형 ID 데이터 및 속성 값 데이터에 따라 데이터 설명 영역을 생성할 수 있다.
본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 방법은, 행렬식 텍스트에 대응하는 필드 유형 테이블 내의 유형을 획득하고, 대응하는 유형의 유형 식별자에 따라 유형 ID 데이터를 생성하며; 유효 필드에 대응하는 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득하며; 대응하는 서브 유형 일련 번호에 따라 속성 값 데이터를 생성하며; 유형 ID 데이터 및 속성 값 데이터에 따라 데이터 설명 영역을 생성한다. 따라서, 데이터 저장 시 데이터 압축률을 향상시키고 저장 공간을 절약한다.
하나의 가능한 구현방식으로서, 상기 단계(103)에서, 복수의 필드의 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정할 때, 유효 필드에 대응하는 서브 유형 일련 번호를 획득하고, 값 저장 영역에서의 서브 유형 일련 번호의 저장 위치를 획득하여, 유효 필드가 문자 열인지 여부에 따라 유효 필드를 저장하도록 할수 있다. 이하, 도 4를 참조하여 전술한 구체적인 구현과정을 설명하며, 도 4는 본 발명의 제 3 실시예에 따른 행렬식 텍스트를 저장하는 방법의 흐름도이다.
도 4에 도시된 바와 같이, 당해 행렬식 텍스트를 저장하는 방법은 다음과 같은 단계를 더 포함할수 있다.
단계(301)에서, 유효 필드에 대응하는 서브 유형 일련 번호를 획득하고, 값 저장 영역에서의 서브 유형 일련 번호의 저장 위치를 획득한다.
본 발명의 실시예에서, 저장될 행렬식 텍스트를 획득하고 행렬식 텍스트에 포함된 복수의 필드 중 유효 필드를 결정하며, 또한 유효 필드에 대응하는 서브 유형 일련 번호 및 값 저장 영역에서의 서브 유형 일련 번호의 저장 위치를 획득한다.
일 예로서, 저장될 행렬식 텍스트가 "회사" 유형, "은행" 유형, 및 "개인" 유형을 포함하면, "회사" 유형은 서브 유형인 "명칭", "법인", "회사 속성", "설립 시간" 및 "등록 자본"을 포함한다. 한편, 각 서브 유형은 대응하는 서브 유형 일련 번호 및 속성을 가지고, 속성은 속성 번호, 속성 유형, 디폴트 값 및 널값이 허용되는지 여부를 포함한다.
도 2에 도시된 바와 같이, 저장될 행렬식 텍스트가 명칭: "샤오두 온라인"; 회사 속성: "과학기술혁신" 일 경우, 저장될 행렬식 텍스트의 유효 필드에 대응하는 서브 유형은 "명칭" 및 "회사 속성"이다. 또한, 유효 필드에 대응하는 서브 유형 일련 번호 및 값 저장 영역에서의 서브 유형 일련 번호의 저장 위치를 획득할 수 있다.
단계(302)에서, 유효 필드가 문자열인지 여부를 판단한다.
본 발명의 실시예에서, 저장될 행렬식 텍스트의 유효 필드를 획득한 후, 유효 필드의 유형이 문자열인지 여부를 판단하여, 유효 필드에 대응하는 유형에 따라 유효 필드를 저장하도록 한다.
단계(303)에서, 유효 필드가 문자열인 것으로 결정될 경우, 유효 필드의 문자열 콘텐츠를 값 저장 영역에서의 서브 유형 일련 번호의 저장 위치에 저장한다.
본 발명의 실시예에서, 저장될 행렬식 텍스트의 유효 필드가 문자열인 것으로 결정될 경우, 유효 필드의 문자열 콘텐츠를 값 저장 영역에서의 서브 유형 일련 번호의 저장 위치에 저장할 수 있다.
단계(304)에서, 유효 필드가 문자열이 아닌 것으로 결정될 경우, 유효 필드에 대응하는 서브 유형의 속성 값을 획득하고, 속성 값을 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치에 저장한다.
본 발명의 실시예에서, 저장될 행렬식 텍스트의 유효 필드가 문자열이 아닌 것으로 결정될 경우, 유효 필드에 대응하는 서브 유형의 속성 값을 획득하고, 속성 값을 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치에 저장한다.
일 예로서, 도 2를 참조하면, "회사 속성"에 대응하는 서브 유형의 속성 값이 0이기 때문에, 필드 유형 테이블을 조회하여, "회사 속성"에 대응하는 필드가 열거 유형이라고 결정할 수 있고, 0은 열거 유형의 첫번째 값을 나타내고, "회사 속성"에 대응하는 값은 "과학기술혁신"이다. 따라서, "회사 속성"에 대응하는 서브 유형의 속성 값을 획득한 후, 속성 값을 값 저장 영역에서의 서브 유형 일련 번호의 저장 위치에 저장한다.
본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 방법은, 유효 필드에 대응하는 서브 유형 일련 번호를 획득하고, 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치를 획득하며; 유효 필드가 문자열인 것으로 결정될 경우, 유효 필드의 문자열 콘텐츠를 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치에 저장하며; 유효 필드가 문자열이 아닌 것으로 결정될 경우, 유효 필드에 대응하는 서브 유형의 속성 값을 획득하고, 속성 값을 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치에 저장한다. 따라서, 저장될 행렬식 텍스트의 저장 압축률을 향상시키고 저장 공간을 절약한다.
전술한 실시예를 구현하기 위해, 본 발명의 실시예는 행렬식 텍스트를 저장하는 장치를 제공한다.
도 5는 본 발명의 제 4 실시예에 따른 행렬식 텍스트를 저장하는 장치의 구조도이다.
도 5에 도시된 바와 같이, 당해 행렬식 텍스트를 저장하는 장치(400)는 획득모듈(410), 생성모듈(420), 결정모듈(430) 및 저장모듈(440)을 포함할 수 있다.
획득모듈(410)은 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득한다.
생성모듈(420)은 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성한다.
결정모듈(430)은 복수의 필드의 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정한다.
저장모듈(440)은 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장한다.
하나의 가능한 구현방식으로서, 필드 유형 테이블은 여러 가지 유형을 포함하고, 각 유형은 대응하는 유형 식별자 및 서브 유형 세트를 포함하며, 각 서브 유형은 대응하는 서브 유형 일련 번호 및 속성을 가지며, 속성은 속성 번호, 속성 유형, 디폴트 값, 및 널값이 허용되는지 여부를 포함한다.
다른 가능한 구현방식으로서, 생성모듈(420)은 또한, 행렬식 텍스트에 대응하는 필드 유형 테이블 내의 유형을 획득하고, 대응하는 유형의 유형 식별자에 따라 유형 ID 데이터를 생성하며; 유효 필드에 대응하는 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득하며; 대응하는 서브 유형 일련 번호에 따라 속성 값 데이터를 생성하며; 유형 ID 데이터 및 속성 값 데이터에 따라 데이터 설명 영역을 생성한다.
또 다른 가능한 구현방식으로서, 결정모듈(430)은 또한, 유효 필드에 대응하는 서브 유형 일련 번호를 획득하고, 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치를 획득하며; 유효 필드가 문자열인 것으로 결정될 경우, 유효 필드의 문자열 콘텐츠를 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치에 저장하며; 유효 필드가 문자열이 아닌 것으로 결정될 경우, 유효 필드에 대응하는 서브 유형의 속성 값을 획득하고, 속성 값을 값 저장 영역 에서의 서브 유형 일련 번호의 저장 위치에 저장한다.
또 다른 가능한 구현방식으로서, 유형 ID 데이터 및 상기 속성 값 데이터는 가변 길이 정수 유형 저장이다.
본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 장치는, 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하며, 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하며, 복수의 필드 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정하며, 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장한다. 당해 방법은 행렬식 텍스트 데이터의 데이터 설명 영역 및 값 저장 영역을 결정하여 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장함으로써, 행렬식 텍스트 데이터의 저장 압축률 및 데이터의 검색 효율을 향상시킨다.
본 발명의 실시예에 따르면, 본 발명은 전자기기 및 판독가능 저장 매체를 제공한다. 또한, 본 발명의 실시예에 따르면, 비일시적 컴퓨터 판독가능 저장 매체에 저장되어 있는 컴퓨터 프로그램을 제공하며, 상기 컴퓨터 프로그램은 상기 컴퓨터가 본 발명에서 제공하는 행렬식 텍스트를 저장하는 방법을 수행하게 한다
도 6에 도시된 바와 같이, 도 6은 본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 방법을 구현하기 위한 전자기기의 블록도이다. 전자기기는 랩탑 컴퓨터, 데스크탑 컴퓨터, 워크스테이션, 개인 정보 단말기, 서버, 블레이드 서버, 메인프레임 컴퓨터, 및 다른 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내는 것이다. 전자기기는 또한 개인 디지털 프로세서, 셀룰러 폰, 스마트 폰, 웨어러블 장치, 및 다른 유사한 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타낼 수도 있다. 본 명세서에서 나타낸 부품, 그들의 연결 및 관계, 및 그들의 기능은 단지 예시적인 것이며, 본 명세서에서 설명 및/또는 요구하는 본 발명의 구현을 제한하도록 의도되지 않는다.
도 6에 도시된 바와 같이, 당해 전자기기는 하나 또는 복수의 프로세서(601), 메모리(602), 및 고속 인터페이스 및 저속 인터페이스를 포함하는 각 부품을 연결하기 위한 인터페이스를 포함한다. 각 부품은 상이한 버스를 이용하여 상호 연결되고, 공통 마더보드 상에 장착되거나 또는 필요에 따라 다른 방식으로 장착될 수도 있다. 프로세서는 전자기기 내에서 실행되는 명령을 프로세싱할 수 있고, 외부 입력/출력 장치(예를 들어, 인터페이스에 결합된 디스플레이 장치) 상에 GUI의 그래픽 정보를 디스플레이하기 위해 메모리 또는 메모리 상에 저장된 명령을 포함한다. 다른 실시예에서, 필요에 따라 복수의 프로세서 및/또는 복수의 버스를 복수의 메모리와 함께 사용할 수 있다. 또한, 복수의 전자기기를 연결할수 있고, 각 기기는 필요한 동작의 일부를 제공할수 있다 (예를 들어, 서버 어레이, 한 그룹의 블레이드 서버, 또는 멀티 프로세서 시스템). 도 6에서는 하나의 프로세서(601)를 예로 든다.
메모리(602)는 본 발명에서 제공하는 비일시적 컴퓨터 판독가능 저장 매체이다. 상기 메모리에는 적어도 하나의 프로세서에 의해 실행가능한 명령이 저장되고, 상기 적어도 하나의 프로세서가 본 발명에서 제공하는 행렬식 텍스트를 저장하는 방법을 수행하게 한다. 본 발명의 비일시적 컴퓨터 판독가능 저장 매체에는 컴퓨터가 본 발명에서 제공하는 행렬식 텍스트를 저장하는 방법을 실행하게 하기 위한 컴퓨터 명령이 저장된다.
메모리(602)는 비일시적 컴퓨터 판독가능 저장 매체로서, 본 발명의 실시예에 따른 행렬식 텍스트를 저장하는 방법에 대응하는 프로그램 명령/모듈(예를 들어, 도 4에 도시된 획득모듈(410), 생성모듈(420), 결정모듈(430), 및 저장모듈(440))과 같은 비일시적 소프트웨어 프로그램, 비일시적 컴퓨터 실행가능 프로그램 및 모듈을 저장하는데 사용될 수 있다. 프로세서(601)는 메모리(602)에 저장된 비일시적 소프트웨어 프로그램, 명령 및 모듈을 실행함으로써 서버의 다양한 기능 애플리케이션 및 데이터 처리를 실행하며, 즉 전술한 방법의 실시예에서 제공하는 행렬식 텍스트를 저장하는 방법을 구현한다.
상기 메모리(602)는 프로그램 저장영역 및 데이터 저장영역을 포함할 수 있으며, 프로그램 저장영역은 운영 체제, 적어도 하나의 기능에 필요한 애플리케이션 프로그램을 저장할 수 있고, 데이터 저장영역은 행렬식 텍스트를 저장하는 방법에 따른 전자기기의 사용에 의해 생성된 데이터 등을 저장할 수 있다. 또한, 메모리(602)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 적어도 하나의 자기 디스크 저장 장치, 플래시 메모리 장치, 또는 다른 비일시적 솔리드 스테이트 저장 장치와 같은 비일시적 메모리를 포함할 수도 있다. 일부 실시예에서, 메모리(602)는 선택적으로 프로세서(601)에 대해 원격으로 설치된 메모리를 포함할 수 있고, 당해 원격 메모리는 네트워크를 통해 행렬식 텍스트를 저장하는 전자 기기에 연결될 수 있다. 이러한 네트워크의 예는 인터넷, 인트라넷, 로컬 영역 네트워크, 이동 통신 네트워크, 및 이들의 조합을 포함하지만, 이에 제한되지 않는다.
행렬식 텍스트를 저장하는 방법의 전자기기는 입력장치(603) 및 출력장치(604)를 더 포함할 수 있다. 프로세서(601), 메모리(602), 입력장치(603), 및 출력장치(604)는 버스 또는 다른 수단에 의해 연결될 수 있으며, 도 6에서 버스를 통한 연결이 예시되어 있다.
입력장치(603)는 입력된 숫자 또는 문자 정보를 수신할 수 있을 뿐만 아니라, 행렬식 텍스트를 저장하는 전자기기의 사용자 설정 및 기능제어에 관련된 키 신호 입력을 생성할 수 있으며, 예를 들어, 터치 스크린, 키패드, 마우스, 트랙패드, 터치패드, 포인팅 스틱, 하나 또는 복수의 마우스 버튼, 트랙볼, 조이스틱 등과 같은 입력장치이다. 출력장치(604)는 디스플레이 장치, 보조 조명 장치(예를 들어, LED), 및 햅틱 피드백 장치(예를 들어, 진동 모터)등을 포함할 수 있다. 당해 디스플레이 장치는 액정표시장치(LCD), 발광 다이오드(LED) 디스플레이, 및 플라즈마 디스플레이를 포함할 수 있지만, 이에 한정되지 않는다. 일부 실시방식에서, 디스플레이 장치는 터치 스크린일 수 있다.
본 명세서에 기술된 시스템 및 기술의 다양한 실시방식은 디지털 전자 회로 시스템, 집적 회로 시스템, 전용ASIC(특정 용도 지향 집적 회로), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 구현될 수 있다. 이들 다양한 실시예는 하나 또는 복수의 컴퓨터 프로그램에서 구현하는 것을 포함할 수 있으며, 당해 하나 또는 복수의 컴퓨터 프로그램은 적어도 하나의 프로그램 가능 프로세서를 포함하는 프로그램 가능한 시스템 상에서 실행 및/또는 해석될 수 있고, 이 프로그램 가능 프로세서는 전용 또는 일반 프로그램 가능 프로세서일 수 있으며, 저장 시스템, 적어도 하나의 입력장치, 및 적어도 하나의 출력장치로부터 데이터 및 명령을 수신하고, 데이터 및 명령을 당해 저장 시스템, 적어도 하나의 입력장치, 및 적어도 하나의 출력장치에 송신할 수 있다.
이들 컴퓨팅 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 또는 코드로 또한 지칭됨)은 프로그램 가능 프로세서의 기계 명령을 포함하며, 하이 레벨 절차 및/또는 객체 지향 프로그래밍 언어, 및/또는 어셈블리/기계 언어로 구현될 수 있다. 본 명세서에서 사용되는 바와 같이, "기계 판독가능 매체”및 "컴퓨터 판독가능 매체”라는 용어는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서에 제공하기 위한 임의의 컴퓨터 프로그램 제품, 디바이스, 및/또는 장치(예를 들어, 자기 디스크, 광 디스크, 메모리, 프로그래머블 논리 소자(PLD))를 지칭하며, 기계 판독 가능 신호인 기계 명령을 수신하기 위한 기계 판독가능 매체를 포함한다. "기계 판독 가능 신호”라는 용어는 기계 명령 및/또는 데이터를 프로그램 가능 프로세서에 제공하는데 사용되는 임의의 신호를 지칭한다.
사용자와의 대화를 제공하기 위해, 본 명세서에서 설명된 시스템 및 기술를 컴퓨터 상에서 구현할 수 있으며, 당해 컴퓨터는 사용자에게 정보를 디스플레이하기 위한 디스플레이 장치(예를 들어, 음극선관(CRT) 또는 액정표시장치(LCD) 모니터), 및 키보드 및 포인팅 장치(예를 들어, 마우스 또는 트랙볼)을 가지고, 사용자는 당해 키보드 및 당해 포인팅 장치를 통해 컴퓨터에 입력을 제공할 수 있다. 다른 종류의 장치도 사용자와의 대화를 제공하기 위해 사용될 수 있으며, 예를 들어, 사용자에게 제공되는 피드백은 임의의 형태의 감각 피드백(예를 들어, 시각적 피드백, 청각적 피드백, 또는 촉각적 피드백) 일 수 있고, 임의의 형태(음향 입력, 음성 입력, 또는 촉각 입력을 포함함)로 사용자로부터의 입력을 수신할 수 있다.
본 명세서에서 설명된 시스템 및 기술은 백그라운드 컴포넌트를 포함하는 컴퓨팅 시스템(예를 들어, 데이터 서버), 또는 미들웨어 컴포넌트를 포함하는 컴퓨팅 시스템 (예를 들어, 애플리케이션 서버), 또는 프론트 엔드 컴포넌트를 포함하는 컴퓨팅 시스템(예를 들어, 그래픽 사용자 인터페이스 또는 웹 브라우저를 갖는 사용자 컴퓨터이고, 사용자는 당해 그래픽 사용자 인터페이스 또는 웹 브라우저를 통해 본 명세서에 기술된 시스템 및 기술의 실시예와 대화할 수 있다), 또는 이러한 백그라운드 컴포넌트, 미들웨어 컴포넌트 또는 프론트 엔드 컴포넌트의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 컴포넌트는 임의의 형태 또는 매체의 디지털 데이터 통신(예를 들어, 통신 네트워크)에 의해 상호 연결될 수 있다. 통신 네트워크의 예는 근거리 통신망(LAN), 광역통신망(WAN) 및 인터넷을 포함한다.
컴퓨터 시스템은 클라이언트 및 서버를 포함할 수 있다. 클라이언트와 서버는 일반적으로 서로 떨어져 있으며, 통상적으로 통신 네트워크를 통해 대화한다. 클라이언트와 서버 사이의 관계는 대응하는 컴퓨터 상에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램에 의해 생성된다.
본 발명의 실시예에 따른 기술안은, 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하며; 복수의 필드 중 유효 필드를 획득하고, 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하며; 복수의 필드 콘텐츠 및 필드 유형 테이블에 따라 행렬식 텍스트 데이터의 값 저장 영역을 결정하며; 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장한다. 당해 방법은 행렬식 텍스트 데이터의 데이터 설명 영역 및 값 저장 영역을 결정하여 데이터 설명 영역 및 값 저장 영역으로 행렬식 텍스트 데이터를 구성하여 저장함으로써, 행렬식 텍스트 데이터의 저장 압축률 및 데이터의 검색 효율을 향상시킨다.
전술한 다양한 형태의 흐름을 사용하여, 단계를 재배열, 부가 또는 삭제할 수 있다는 것을 이해해야 한다. 예를 들어, 본 발명에 기재된 각 단계는 본 발명에 개시된 기술안의 원하는 결과를 구현할 수 있는 한, 병렬로 또는 순서로 또는 상이한 순서로 수행될 수 있으며, 본 명세서에서는 제한하지 않는다.
상기 상세한 실시방식은 본 발명의 청구항을 제한하는 것으로 의도되지 않는다. 다양한 수정, 조합, 서브 조합, 및 대체가 설계 요건 및 다른 요인을 고려하여 이루어질 수 있다는 것은 당업자에게 명백할 것이다. 본 발명의 사상 및 원리 내에서 이루어진 임의의 수정, 동등한 교체, 및 개선 등은 본 발명의 청구 범위 내에 포함된다.
Claims (13)
- 행렬식 텍스트를 저장하는 장치에 의해 수행되는 행렬식 텍스트를 저장하는 방법에 있어서,
복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하는 단계;
상기 복수의 필드 중 유효 필드를 획득하고, 상기 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 단계;
복수의 필드 콘텐츠 및 상기 필드 유형 테이블에 따라 상기 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 단계; 및
상기 데이터 설명 영역 및 상기 값 저장 영역으로 상기 행렬식 텍스트 데이터를 구성하여 저장하는 단계; 를 포함하고,
상기 필드 유형 테이블은 여러 가지 유형을 포함하고, 각 유형은 대응하는 유형 식별자 및 서브 유형 세트를 포함하며, 각 서브 유형은 대응하는 서브 유형 일련 번호 및 속성을 가지며, 상기 속성은 속성 번호, 속성 유형, 디폴트 값, 및 널(null)값이 허용되는지 여부를 포함하고,
상기 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 단계는,
상기 행렬식 텍스트에 대응하는 상기 필드 유형 테이블 내의 유형을 획득하고, 대응하는 유형의 유형 식별자에 따라 유형 ID 데이터를 생성하는 단계;
상기 유효 필드에 대응하는 상기 유형의 서브 유형 세트 내의 서브 유형의 서브 유형 일련 번호를 획득하는 단계;
대응하는 서브 유형 일련 번호에 따라 속성 값 데이터를 생성하는 단계; 및
상기 유형 ID 데이터 및 상기 속성 값 데이터에 따라 상기 데이터 설명 영역을 생성하는 단계; 를 포함하는
것을 특징으로 하는 행렬식 텍스트를 저장하는 방법. - 제1항에 있어서,
상기 복수의 필드 콘텐츠 및 상기 필드 유형 테이블에 따라 상기 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 단계는,
상기 유효 필드에 대응하는 서브 유형 일련 번호를 획득하고, 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치를 획득하는 단계;
상기 유효 필드가 문자열인 것으로 결정될 경우, 상기 유효 필드의 문자열 콘텐츠를 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치에 저장하는 단계; 및
상기 유효 필드가 문자열이 아닌 것으로 결정될 경우, 상기 유효 필드에 대응하는 서브 유형의 속성 값을 획득하고, 상기 속성 값을 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치에 저장하는 단계; 를 포함하는
것을 특징으로 하는 행렬식 텍스트를 저장하는 방법. - 제1항에 있어서,
상기 유형 ID 데이터 및 상기 속성 값 데이터는 가변 길이 정수 유형 저장인
것을 특징으로 하는 행렬식 텍스트를 저장하는 방법. - 복수의 필드를 포함하는 저장될 행렬식 텍스트를 획득하는 획득모듈;
상기 복수의 필드 중 유효 필드를 획득하고, 상기 유효 필드에 따라 필드 유형 테이블을 조회하여 행렬식 텍스트 데이터의 데이터 설명 영역을 생성하는 생성모듈;
복수의 필드 콘텐츠 및 상기 필드 유형 테이블에 따라 상기 행렬식 텍스트 데이터의 값 저장 영역을 결정하는 결정모듈; 및
상기 데이터 설명 영역 및 상기 값 저장 영역으로 상기 행렬식 텍스트 데이터를 구성하여 저장하는 저장모듈; 을 포함하고,
상기 필드 유형 테이블은 여러 가지 유형을 포함하고, 각 유형은 대응하는 유형 식별자 및 서브 유형 세트를 포함하며, 각 서브 유형은 대응하는 서브 유형 일련 번호 및 속성을 가지며, 상기 속성은 속성 번호, 속성 유형, 디폴트 값, 및 널값이 허용되는지 여부를 포함하고,
상기 생성모듈은 또한,
상기 행렬식 텍스트에 대응하는 상기 필드 유형 테이블 내의 유형을 획득하고, 대응하는 유형의 유형 식별자에 따라 유형 ID 데이터를 생성하며;
상기 유효 필드에 대응하는 상기 유형의 서브 유형 세트 내의 서브 유형의 서브유형 일련 번호를 획득하며;
대응하는 서브 유형 일련 번호에 따라 속성 값 데이터를 생성하며;
상기 유형 ID 데이터 및 상기 속성 값 데이터에 따라 상기 데이터 설명 영역을 생성하는
것을 특징으로 하는 행렬식 텍스트를 저장하는 장치. - 제4항에 있어서,
상기 결정모듈은 또한,
상기 유효 필드에 대응하는 서브 유형 일련 번호를 획득하고, 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치를 획득하며;
상기 유효 필드가 문자열인 것으로 결정될 경우, 상기 유효 필드의 문자열 콘텐츠를 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치에 저장하며;
상기 유효 필드가 문자열이 아닌 것으로 결정될 경우, 상기 유효 필드에 대응하는 서브 유형의 속성 값을 획득하고, 상기 속성 값을 상기 값 저장 영역 에서의 상기 서브 유형 일련 번호의 저장 위치에 저장하는
것을 특징으로 하는 행렬식 텍스트를 저장하는 장치. - 제4항에 있어서,
상기 유형 ID 데이터 및 상기 속성 값 데이터는 가변 길이 정수 유형 저장인
것을 특징으로 하는 행렬식 텍스트를 저장하는 장치. - 적어도 하나의 프로세서; 및
상기 적어도 하나의 프로세서에 통신 가능하게 연결되는 메모리; 를 포함하고,
상기 메모리에는 상기 적어도 하나의 프로세서에 의해 실행 가능한 명령이 저장되어 있고, 상기 명령은 상기 적어도 하나의 프로세서에 의해 실행되어, 상기 적어도 하나의 프로세서가 제1항 내지 제3항 중 어느 한 항에 따른 행렬식 텍스트를 저장하는 방법을 수행하게 하는
것을 특징으로 하는 전자기기. - 컴퓨터 명령이 저장되어 있는 비일시적 컴퓨터 판독가능 저장 매체에 있어서,
상기 컴퓨터 명령은 상기 컴퓨터가 제1항 내지 제3항 중 어느 한 항에 따른 행렬식 텍스트를 저장하는 방법을 수행하게 하는
것을 특징으로 하는 비일시적 컴퓨터 판독가능 저장 매체. - 비일시적 컴퓨터 판독가능 저장 매체에 저장되어 있는 컴퓨터 프로그램에 있어서,
상기 컴퓨터 프로그램은 상기 컴퓨터가 제1항 내지 제3항 중 어느 한 항에 따른 행렬식 텍스트를 저장하는 방법을 수행하게 하는
것을 특징으로 하는 비일시적 컴퓨터 판독가능 저장 매체에 저장되어 있는 컴퓨터 프로그램.
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010025931.2A CN111259107B (zh) | 2020-01-10 | 2020-01-10 | 行列式文本的存储方法、装置以及电子设备 |
CN202010025931.2 | 2020-01-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210090558A KR20210090558A (ko) | 2021-07-20 |
KR102564543B1 true KR102564543B1 (ko) | 2023-08-04 |
Family
ID=70950328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210002399A KR102564543B1 (ko) | 2020-01-10 | 2021-01-08 | 행렬식 텍스트를 저장하는 방법, 장치 및 전자기기 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11334551B2 (ko) |
EP (1) | EP3848816A1 (ko) |
JP (1) | JP7096917B2 (ko) |
KR (1) | KR102564543B1 (ko) |
CN (1) | CN111259107B (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11561948B1 (en) * | 2021-03-01 | 2023-01-24 | Era Software, Inc. | Database indexing using structure-preserving dimensionality reduction to accelerate database operations |
CN113792095A (zh) * | 2021-08-31 | 2021-12-14 | 通号城市轨道交通技术有限公司 | 信号系统接口信息转换方法、装置、电子设备和存储介质 |
US11734318B1 (en) | 2021-11-08 | 2023-08-22 | Servicenow, Inc. | Superindexing systems and methods |
CN114615232B (zh) * | 2022-05-12 | 2022-08-12 | 南京赛宁信息技术有限公司 | 一种主动防御网关访客标识生成方法与系统 |
CN115543977B (zh) * | 2022-09-29 | 2024-07-19 | 河北雄安睿天科技有限公司 | 一种供水行业数据清洗方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305822A (ja) | 1999-04-26 | 2000-11-02 | Denso Corp | データベース管理装置,データベースレコード抽出装置,データベース管理方法及びデータベースレコード抽出方法 |
US20080243770A1 (en) | 2007-03-29 | 2008-10-02 | Franz Inc. | Method for creating a scalable graph database |
JP2014511587A (ja) | 2011-01-28 | 2014-05-15 | アビニシオ テクノロジー エルエルシー | データパターン情報の生成 |
US20150347484A1 (en) * | 2014-05-30 | 2015-12-03 | International Business Machines Corporation | Combining row based and column based tables to form mixed-mode tables |
JP2016053976A (ja) | 2015-11-18 | 2016-04-14 | 富士通株式会社 | データ生成方法、装置及びプログラム、検索処理方法、装置及びプログラム |
US20180295506A1 (en) | 2017-04-10 | 2018-10-11 | Qualcomm Incorporated | Representing unique device identifiers in hierarchical device certificates as fully qualified domain names (fqdn) |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9320404D0 (en) * | 1993-10-04 | 1993-11-24 | Dixon Robert | Method & apparatus for data storage & retrieval |
US6032151A (en) * | 1997-11-17 | 2000-02-29 | Sun Microsystems, Inc. | Database system employing polymorphic entry and entry matching |
US8037108B1 (en) * | 2009-07-22 | 2011-10-11 | Adobe Systems Incorporated | Conversion of relational databases into triplestores |
US20110208759A1 (en) * | 2010-02-23 | 2011-08-25 | Paul Zellweger | Method, Apparatus, and Interface For Creating A Chain of Binary Attribute Relations |
US8984031B1 (en) * | 2010-09-29 | 2015-03-17 | Emc Corporation | Managing data storage for databases based on application awareness |
WO2016171927A1 (en) * | 2015-04-20 | 2016-10-27 | Unified Compliance Framework (Network Frontiers) | Structured dictionary |
US10445350B2 (en) * | 2015-11-15 | 2019-10-15 | Microsoft Technology Licensing, Llc | Optimizing content for consistent presentation through collaboration database service |
CN105426541B (zh) * | 2015-12-23 | 2019-03-08 | 北京奇虎科技有限公司 | 一种通用数据的存储方法和装置 |
CN107015985B (zh) * | 2016-01-27 | 2021-03-30 | 创新先进技术有限公司 | 一种数据存储与获取方法及装置 |
US10180992B2 (en) * | 2016-03-01 | 2019-01-15 | Microsoft Technology Licensing, Llc | Atomic updating of graph database index structures |
CN107273485A (zh) * | 2017-06-13 | 2017-10-20 | 苏州弘铭检测科技有限公司 | 一种基于可配置数据库的数据存储结构及数据库重置方法 |
CN108052659B (zh) * | 2017-12-28 | 2022-03-11 | 北京百度网讯科技有限公司 | 基于人工智能的搜索方法、装置和电子设备 |
CN108304472A (zh) * | 2017-12-28 | 2018-07-20 | 中国银联股份有限公司 | 一种数据压缩存储方法以及数据压缩存储装置 |
CN110109910A (zh) * | 2018-01-08 | 2019-08-09 | 广东神马搜索科技有限公司 | 数据处理方法及系统、电子设备和计算机可读存储介质 |
CN109522405A (zh) * | 2018-09-29 | 2019-03-26 | 南昌与德软件技术有限公司 | 文件信息处理方法、电子设备以及计算机可读存介质 |
CN109815228A (zh) * | 2018-12-14 | 2019-05-28 | 深圳壹账通智能科技有限公司 | 数据库表的创建方法、装置、计算机设备及可读存储介质 |
CN110147413B (zh) * | 2019-04-26 | 2023-06-02 | 平安科技(深圳)有限公司 | 数据存储方法、数据查询方法、装置、设备及存储介质 |
CN110427524B (zh) * | 2019-08-05 | 2022-03-08 | 北京百度网讯科技有限公司 | 知识图谱补全的方法、装置、电子设备及存储介质 |
CN110659287A (zh) * | 2019-09-11 | 2020-01-07 | 北京亚信数据有限公司 | 一种表格的字段名处理方法及计算设备 |
-
2020
- 2020-01-10 CN CN202010025931.2A patent/CN111259107B/zh active Active
- 2020-09-30 US US17/038,276 patent/US11334551B2/en active Active
- 2020-10-07 EP EP20200480.0A patent/EP3848816A1/en active Pending
-
2021
- 2021-01-07 JP JP2021001601A patent/JP7096917B2/ja active Active
- 2021-01-08 KR KR1020210002399A patent/KR102564543B1/ko active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000305822A (ja) | 1999-04-26 | 2000-11-02 | Denso Corp | データベース管理装置,データベースレコード抽出装置,データベース管理方法及びデータベースレコード抽出方法 |
US20080243770A1 (en) | 2007-03-29 | 2008-10-02 | Franz Inc. | Method for creating a scalable graph database |
JP2014511587A (ja) | 2011-01-28 | 2014-05-15 | アビニシオ テクノロジー エルエルシー | データパターン情報の生成 |
US20150347484A1 (en) * | 2014-05-30 | 2015-12-03 | International Business Machines Corporation | Combining row based and column based tables to form mixed-mode tables |
JP2016053976A (ja) | 2015-11-18 | 2016-04-14 | 富士通株式会社 | データ生成方法、装置及びプログラム、検索処理方法、装置及びプログラム |
US20180295506A1 (en) | 2017-04-10 | 2018-10-11 | Qualcomm Incorporated | Representing unique device identifiers in hierarchical device certificates as fully qualified domain names (fqdn) |
Non-Patent Citations (1)
Title |
---|
SCOTT Mark, et al, "A framework for user driven data management", pp36-58, 10 December 2013 |
Also Published As
Publication number | Publication date |
---|---|
CN111259107A (zh) | 2020-06-09 |
JP7096917B2 (ja) | 2022-07-06 |
KR20210090558A (ko) | 2021-07-20 |
JP2021111405A (ja) | 2021-08-02 |
CN111259107B (zh) | 2023-08-18 |
EP3848816A1 (en) | 2021-07-14 |
US20210216520A1 (en) | 2021-07-15 |
US11334551B2 (en) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102564543B1 (ko) | 행렬식 텍스트를 저장하는 방법, 장치 및 전자기기 | |
US11847164B2 (en) | Method, electronic device and storage medium for generating information | |
EP3937027B1 (en) | Method and apparatus for processing label data, device, and storage medium | |
KR102521765B1 (ko) | 인과 관계의 판별 방법, 장치, 전자 기기 및 저장 매체 | |
EP3832484A2 (en) | Semantics processing method, semantics processing apparatus, electronic device, and medium | |
CN112269789B (zh) | 存储数据的方法和装置、以及读取数据的方法和装置 | |
CN111523001B (zh) | 用于存储数据的方法、装置、设备以及存储介质 | |
CN111177476B (zh) | 数据查询方法、装置、电子设备及可读存储介质 | |
EP3923205A1 (en) | Method and apparatus for distilling model, electronic device, and storage medium | |
CN111241108B (zh) | 基于键值对kv系统的索引方法、装置、电子设备和介质 | |
US12105750B2 (en) | Method and apparatus for mining entity relationship, electronic device, and storage medium | |
KR102606514B1 (ko) | 유사도 처리 방법, 장치, 서버, 저장 매체 및 컴퓨터 프로그램 | |
CN111459882B (zh) | 分布式文件系统的命名空间事务处理方法和装置 | |
CN110795456B (zh) | 图谱的查询方法、装置、计算机设备以及存储介质 | |
CN113220710B (zh) | 数据查询方法、装置、电子设备以及存储介质 | |
KR102531507B1 (ko) | 정보 출력 방법, 장치, 기기 및 저장 매체 | |
US11562241B2 (en) | Data output method, data acquisition method, device, and electronic apparatus | |
CN111290714B (zh) | 数据读取方法和装置 | |
JP7146986B2 (ja) | 情報抽出方法、情報抽出装置及び電子機器 | |
US20210224139A1 (en) | Method and apparatus for graph computing, electronic device and storage medium | |
JP3208635U (ja) | 切替式漢字組立システム | |
KR102718950B1 (ko) | 음성 인터랙션 방법, 장치, 전자 기기, 판독 가능 저장 매체 및 컴퓨터 프로그램 제품 | |
CN117667976A (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN112183041A (zh) | 一种基于指标的报表调整方法、装置、设备和存储介质 | |
CN115981657A (zh) | 代码生成方法、装置、电子设备及可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |