RU2010118074A - Многомерная база данных и способ управления многомерной базой данных - Google Patents
Многомерная база данных и способ управления многомерной базой данных Download PDFInfo
- Publication number
- RU2010118074A RU2010118074A RU2010118074/08A RU2010118074A RU2010118074A RU 2010118074 A RU2010118074 A RU 2010118074A RU 2010118074/08 A RU2010118074/08 A RU 2010118074/08A RU 2010118074 A RU2010118074 A RU 2010118074A RU 2010118074 A RU2010118074 A RU 2010118074A
- Authority
- RU
- Russia
- Prior art keywords
- identifiers
- identifier
- coordinate
- coordinates
- pointers
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
1. Многомерная база данных, физическая структура данных которой состоит из элементов, логически соответствующих точке входа, гиперкубам, измерениям, дескрипторам координат и координатам векторов данных многомерного пространства, отличающаяся тем, что каждый элемент представлен идентификатором, включающим адрес, равный величине смещения относительно начала физического файла записи (далее - файла) указанной многомерной базы данных, номер транзакции, в составе которой был записан идентификатор, код, соответствующий значению идентификатора, и набор указателей четырех типов, содержащих адреса связанных с ним идентификаторов и индикаторы, ! причем идентификатор точки входа расположен в начале файла, при этом его указатель первого типа содержит адрес идентификатора, записанного последним в файл, указатель второго типа содержит адрес второго экземпляра точки входа, указатель третьего типа содержит адрес корня двоичного дерева гиперкубов с нечетными кодами идентификаторов, указатель четвертого типа содержит адрес корня двоичного дерева гиперкубов с четными кодами идентификаторов; ! причем идентификаторы гиперкубов расположены в порядке записи в файл и связаны указателями первого и второго типов в двоичные деревья гиперкубов, при этом коды идентификаторов являются ключами поиска элементов в составе двоичных деревьев гиперкубов, указатели третьего типа содержат адреса корней двоичных деревьев измерений с нечетными кодами идентификаторов, указатели четвертого типа содержат адреса корней двоичных деревьев измерений с четными кодами идентификаторов; ! причем идентификаторы измерений расположены в пор�
Claims (4)
1. Многомерная база данных, физическая структура данных которой состоит из элементов, логически соответствующих точке входа, гиперкубам, измерениям, дескрипторам координат и координатам векторов данных многомерного пространства, отличающаяся тем, что каждый элемент представлен идентификатором, включающим адрес, равный величине смещения относительно начала физического файла записи (далее - файла) указанной многомерной базы данных, номер транзакции, в составе которой был записан идентификатор, код, соответствующий значению идентификатора, и набор указателей четырех типов, содержащих адреса связанных с ним идентификаторов и индикаторы,
причем идентификатор точки входа расположен в начале файла, при этом его указатель первого типа содержит адрес идентификатора, записанного последним в файл, указатель второго типа содержит адрес второго экземпляра точки входа, указатель третьего типа содержит адрес корня двоичного дерева гиперкубов с нечетными кодами идентификаторов, указатель четвертого типа содержит адрес корня двоичного дерева гиперкубов с четными кодами идентификаторов;
причем идентификаторы гиперкубов расположены в порядке записи в файл и связаны указателями первого и второго типов в двоичные деревья гиперкубов, при этом коды идентификаторов являются ключами поиска элементов в составе двоичных деревьев гиперкубов, указатели третьего типа содержат адреса корней двоичных деревьев измерений с нечетными кодами идентификаторов, указатели четвертого типа содержат адреса корней двоичных деревьев измерений с четными кодами идентификаторов;
причем идентификаторы измерений расположены в порядке записи в файл и связаны указателями первого и второго типов в двоичные деревья измерений, при этом коды идентификаторов являются ключами поиска элементов в составе двоичных деревьев измерений, указатели третьего типа содержат адреса корней двоичных деревьев дескрипторов с нечетными кодами идентификаторов, указатели четвертого типа содержат адреса корней двоичных деревьев дескрипторов с четными кодами идентификаторов;
причем идентификаторы дескрипторов расположены в порядке записи в файл и связаны указателями первого и второго типов в двоичные деревья дескрипторов, при этом коды идентификаторов являются ключами поиска элементов в составе двоичных деревьев дескрипторов, указатели третьего типа содержат адреса идентификаторов координат с совпадающими кодами, входящих в состав многосвязных списков координат и записанных последними по порядку, указатели четвертого типа содержат адреса идентификаторов координат с совпадающими кодами первых экземпляров многосвязных списков координат;
причем идентификаторы координат расположены в порядке записи в файл и связаны указателями в многосвязные списки координат, при этом указатели первого типа идентификаторов координат, записанных первыми по порядку, содержат адреса идентификаторов дескрипторов с совпадающими кодами, указатели первого типа идентификаторов координат, записанных следующими по порядку, содержат адреса предыдущих идентификаторов координат с совпадающими кодами, указатели второго типа содержат адреса идентификаторов координат, входящих в состав одного вектора данного, указатели третьего типа содержат адреса идентификаторов координат, входящие в состав одной иерархической группы вектора данного, указатели четвертого типа содержат адреса идентификаторов координат, входящих в состав одной вариантной группы вектора данного.
2. Многомерная база данных по п.1, отличающаяся тем, что индикаторы указателей идентификаторов содержат следующие значения
индикатор указателя первого типа идентификатора дескриптора содержит количество связанных с ним идентификаторов координат с совпадающим кодом;
индикатор указателя первого типа идентификатора координаты содержит количество связанных с ним идентификаторов координат с совпадающим кодом, предшествующих по порядку записи;
индикатор указателя второго типа идентификатора координаты содержит величину его смещения относительно идентификатора координаты, записанного первым по порядку в составе вектора данного;
индикатор указателя третьего типа идентификатора координаты содержит уровень иерархии координаты в составе иерархической группы координат вектора данного;
индикатор указателя четвертого типа идентификатора координаты содержит порядковый номер вариантной группы координат в составе вектора данного.
3. Многомерная база данных по п.1 или 2, отличающаяся тем, что
в состав базы данных входит служебный гиперкуб, включающий в себя полный набор измерений, каждое из указанных измерений включает в себя полный набор координат, при этом в набор измерений служебного гиперкуба входит служебное измерение, координатами указанного служебного измерения являются измерения многомерного пространства;
векторы данных, относящиеся к служебному гиперкубу, содержат наименования базы данных, гиперкубов, измерений и координат, соответствующие кодам идентификаторов координат и представленные в виде фрагментов неструктурированной информации, расположенных между идентификаторами координат;
в состав каждого вектора данного входят служебные идентификаторы координат, расположенные на первом и втором уровнях иерархии и относящиеся соответственно к измерению типов данных, входящих в подмножество гиперкуба, и к измерению уникальных идентификационных номеров данных, присваиваемых в порядке их включения в подмножество гиперкуба.
4. Способ управления многомерной базой данных по любому из пп.1-3, включающий операции записи, чтения, удаления, изменения, сжатия, многопользовательского доступа и восстановления внутренней непротиворечивости информации после аварийного завершения работы базы данных, отличающийся тем, что
запись информации производят в виде набора идентификаторов, входящих в состав одной транзакции,
запись новых значений идентификаторов точки входа, гиперкубов, измерений и дескрипторов, ранее записанных в файл, производят путем изменения ранее записанных значений этих идентификаторов,
запись идентификаторов координат, входящих в состав одной транзакции, производят в опережающем порядке относительно записи идентификаторов дескрипторов, входящих в состав той же транзакции;
чтение информации производят на основании ключа поиска, сформированного из кодов идентификаторов координат, входящих в состав искомых векторов данных,
чтение идентификаторов гиперкубов, измерений и дескрипторов производят путем последовательного поиска элементов физической структуры данных, коды которых соответствуют кодам идентификаторов координат ключа поиска,
чтение идентификаторов координат производят, начиная с выбора идентификатора дескриптора с наименьшим значением индикатора указателя третьего типа, перехода к идентификатору координаты с совпадающим кодом, чтения всех идентификаторов координат, входящих в состав одного вектора данного, включения вектора данного в отчет о поиске в случае совпадения идентификаторов координат с ключом поиска, выбора идентификатора координаты, входящего в ключ поиска и обладающего наименьшим значением индикатора указателя первого типа, и последовательного перехода к следующим идентификаторам координат в составе векторов данных вплоть до достижения идентификатора координаты с нулевым значением индикатора указателя первого типа;
удаление и изменение информации осуществляют на логическом уровне,
удаление идентификаторов гиперкубов, измерений и дескрипторов производят путем приравнивания нулю значений адресов указателей третьего и четвертого типов, при этом изменение идентификаторов гиперкубов, измерений и дескрипторов производят путем присваивания нулевых значений индикаторам указателей третьего и четвертого типов,
удаление идентификаторов координат производят путем записи новых версий векторов данных, в состав которых включены удаленные идентификаторы координат с нулевыми кодами и неизмененными значениями адресов, при этом изменение идентификаторов координат производят путем записи новых векторов данных, в состав которых включены измененные идентификаторы координат с измененными кодами и неизмененными значениями адресов;
сжатие информации производят путем записи вторых экземпляров идентификаторов точки входа, гиперкубов, измерений, дескрипторов и координат, консолидации векторов данных и последующего удаления из файла первых экземпляров идентификаторов,
запись вторых экземпляров идентификаторов гиперкубов, измерений и дескрипторов производят в составе одной транзакции с одновременным присваиванием нулевых значений адресов указателям третьего и четвертого типов ранее удаленных идентификаторов,
запись вторых экземпляров идентификаторов координат производят в составе разных транзакций после консолидации версий векторов данных без включения в состав консолидированных версий удаленных и измененных идентификаторов координат,
по окончанию сжатия запись и чтение информации производят на основании адресов указателей идентификаторов гиперкубов, измерений, дескрипторов и координат, соответственно увеличенных и уменьшенных на величину адреса, содержащуюся в идентификаторе точки входа;
многопользовательский доступ к информации обеспечивают посредством версионной записи вновь поступающей информации и чтения ранее сохраненной информации в виде консолидированных версий данных, сформированных на момент начала операции чтения,
запись удаленной или измененной информации производят после повторного чтения информации в порядке поступления команд пользователей на запись, блокировки записи удаляемых или изменяемых данных, сравнения номеров транзакций в составе удаленной или измененной информации и в составе прочитанной информации, повторного удаления или изменения информации в случае превышения номеров транзакций в составе прочитанной информации, снятия блокировки и записи удаленной или измененной информации;
восстановление внутренней непротиворечивости информации после аварийного завершения работы базы данных обеспечивают посредством контроля соответствия значений адресов указателей идентификаторов дескрипторов фактическому смещению идентификаторов координат относительно начала файла,
контроль соответствия начинают с чтения идентификаторов координат, входящих в состав последней по порядку записи транзакции, чтения идентификатора дескриптора, совпадающего по коду с первым идентификатором координаты в составе транзакции, и сравнения адреса указателя третьего типа идентификатора дескриптора с фактическим смещением первого идентификатора координаты,
в случае совпадения адреса указателя третьего типа идентификатора дескриптора с фактическим смещением первого идентификатора координаты осуществляют чтение, контроль и приведение в соответствие адресов указателей третьего типа остальных идентификаторов дескрипторов с фактическими смещениями остальных идентификаторов координат последней по порядку записи транзакции,
в случае несовпадения адреса указателя третьего типа идентификатора дескриптора с фактическим смещением первого идентификатора координаты все идентификаторы координат последней по порядку записи транзакции удаляют из файла.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2010118074/08A RU2010118074A (ru) | 2010-05-06 | 2010-05-06 | Многомерная база данных и способ управления многомерной базой данных |
PCT/RU2010/000532 WO2011139176A1 (en) | 2010-05-06 | 2010-09-27 | Multidimensional database and the method of control thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2010118074/08A RU2010118074A (ru) | 2010-05-06 | 2010-05-06 | Многомерная база данных и способ управления многомерной базой данных |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2010118074A true RU2010118074A (ru) | 2011-11-20 |
Family
ID=44025269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2010118074/08A RU2010118074A (ru) | 2010-05-06 | 2010-05-06 | Многомерная база данных и способ управления многомерной базой данных |
Country Status (2)
Country | Link |
---|---|
RU (1) | RU2010118074A (ru) |
WO (1) | WO2011139176A1 (ru) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3347845B1 (en) | 2015-09-11 | 2023-08-02 | Curtail, Inc. | Implementation comparison-based security system |
US10462256B2 (en) | 2016-02-10 | 2019-10-29 | Curtail, Inc. | Comparison of behavioral populations for security and compliance monitoring |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5257365A (en) * | 1990-03-16 | 1993-10-26 | Powers Frederick A | Database system with multi-dimensional summary search tree nodes for reducing the necessity to access records |
US5359724A (en) | 1992-03-30 | 1994-10-25 | Arbor Software Corporation | Method and apparatus for storing and retrieving multi-dimensional data in computer memory |
RU2389066C2 (ru) * | 2008-05-28 | 2010-05-10 | Андрей Евгеньевич Васильев | Многомерная база данных и способ управления многомерной базой данных |
-
2010
- 2010-05-06 RU RU2010118074/08A patent/RU2010118074A/ru not_active Application Discontinuation
- 2010-09-27 WO PCT/RU2010/000532 patent/WO2011139176A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2011139176A1 (en) | 2011-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101036141B (zh) | 具有持久性、用户可访问的位图值的数据库管理系统 | |
CN101553813B (zh) | 管理可单独访问的数据单元的存储器 | |
US10896156B2 (en) | Flexible synchronous file system replication | |
CN103733195A (zh) | 管理用于基于范围的搜索的数据的存储 | |
KR20110014987A (ko) | 개별 액세스 가능한 데이터 유닛의 스토리지 관리 | |
CN109918341B (zh) | 日志处理方法及装置 | |
US20140046928A1 (en) | Query plans with parameter markers in place of object identifiers | |
CN111475105B (zh) | 监控数据存储方法、设备、服务器及存储介质 | |
CN105027071A (zh) | 管理对存储数据单元的操作 | |
CN111177144A (zh) | 表同步方法、装置、设备、存储介质及系统 | |
CN112256698A (zh) | 一种基于多哈希函数的表关系自动关联方法 | |
CN105009068B (zh) | 管理对存储数据单元的操作 | |
AU2018345147B2 (en) | Database processing device, group map file production method, and recording medium | |
CN104636401A (zh) | 一种scada系统数据回滚的方法及装置 | |
US8190655B2 (en) | Method for reliable and efficient filesystem metadata conversion | |
CN114385587A (zh) | 一种面向关系型数据库版本快照的构建方法及查询方法 | |
Alam et al. | Performance of point and range queries for in-memory databases using radix trees on GPUs | |
RU2010118074A (ru) | Многомерная база данных и способ управления многомерной базой данных | |
CN101000621A (zh) | 一种ims数据库互动式访问方法和工具 | |
CN113297171A (zh) | 数据库迁移方法及装置、数据库集群 | |
CN104636471A (zh) | 一种程序代码的查找方法及装置 | |
CA2325252C (en) | Maintaining very large indexes supporting efficient relational querying | |
CN109344163B (zh) | 一种数据校验方法、装置和计算机可读介质 | |
RU2008120913A (ru) | Многомерная база данных и способ управления многомерной базой данных | |
US20210209087A1 (en) | Reorganization of Databases by Sectioning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FA93 | Acknowledgement of application withdrawn (no request for examination) |
Effective date: 20130507 |