Трансляция запросов с языка sql в язык Mongo QL

  • Николай Константинович Самойлов Воронежский государственный университет
Ключевые слова: транслятор, грамматика, нечёткое значение, лингвистическая переменная, геометрия, mongodb, линейная ломаная

Аннотация

Для хранения нечётких значений часто используются реляционные СУБД, но при этом возникают проблемы размещения таких данных в табличной форме. Кроме того, появляется проблема хранения как чётких, так и нечётких данных, относящихся к одной предметной области, в одном столбце реляционной таблицы. В данной статье рассматривается механизм хранения чётких и нечётких значений и лингвистических переменных в документоориентированной СУБД Mongo. Данные хранятся в коллекции как GeoJSON геометрия, для различных вариантов данных используются различные геометрии. Описана возможность хранения в документах коллекции чётких скалярных значений, наборов чётких значений, интервалов чётких значений и нечётких значений. Для обработки данных посредством запросов языка SQL описывается контекстно-свободная грамматика подмножества языка SQL, по которой генерируются лексический анализатор и синтаксический анализатор. Для формирования структуры абстрактного синтаксического дерева реализована соответствующая объектная модель. Разработано приложение транслятора, которое позволяет преобразовывать SQL-запросы по чётким и нечётким данным в запросы на языке Mongo QL. Предложен алгоритм процесса трансляции нечётких запросов, описана геометрическая интерпретация операций сравнения данных. В примерах приведены варианты операций нечёткого сравнения для различных вариантов значений.

Скачивания

Данные скачивания пока не доступны.

Биография автора

Николай Константинович Самойлов, Воронежский государственный университет

ассистент кафедры программирования и информационных технологий Воронежского государственного университета

Литература

1. Pivert, O. Fuzzy Preference Queries to Relational Databases / O. Pivert, P. Bosc – London : Imperial College Press, 2012. – 347 p.
2. Bosc, P. SQLf: a relational database language for fuzzy querying / Pivert O., Bosc P. // IEEE T. Fuzzy Systems. – 1995. – Vol. 3. – P. 1–17.
3. Urrutia, A. FSQL and SQLf: Towards a standard in fuzzy databases / A. Urrutia, L. Tineo, C. Gonzalez // Handbook of Research on Fuzzy Information Processing in Databases. – 2008. – Vol. 1. – P. 270–298.
4. Copeland, R. MongoDB Applied Design Patterns / R. Copeland – Sebastopol CA: O’Reilly Media, 2013. – 160 p.
5. Hows, D. The definitive guide to MongoDB / Hows D., Membrey P., Plugge E. – Apress, 2015. – 361 p.
6. Zadeh, L. The concept of a linguistic variable and its application to approximate reasoning / L. Zadeh // Information Sciences. – 1975. – Vol. 8. – P. 199–249.
7. The GeoJSON Format. – URL: https://tools.ietf.org/html/rfc7946
8. Толстобров, А. П. Управление данными : учебное пособие / А. П. Толстобров. – Воронеж : ИПЦ ВГУ, 2007. – 205 с.
9. Parr, T. The Definitive ANTLR 4 Reference / T. Parr – Dallas: The Pragmatic Bookshelf, 2013. – 305 p.
10. Системы искусственного интеллекта. Практический курс : Учеб. пособие / под ред. И. Ф. Астаховой. – М. : Бином. Лаборатория знаний, 2008. – 292 с.
11. Тюкачёв, Н. А. Алгоритм построения оверлея многоугольников и многогранников / Н. А. Тюкачёв // Вестник ВГТУ. – 2009. – No 6. – С. 141–144.
12. Margalit, A. An algorithm for computing the union, intersection or difference of two polygons / A. Margalit, G. D. Knott // Computers & Graphics. – 1989. – Vol. 13, No. 2. – P. 167–183.
13. O’Rourke, J. A new linear algorithm for intersection convex polygons / J. O’Rourke, C. B. Chien, T. Olson // Computer graphics and Image Processing. – 1982. – Vol. 19. – P. 384–391.
14. Скворцов, А. В. Построение объединения, пересечения, и разности произвольных многоугольников в среднем за линейное время с помощью триангуляции / А. В. Скворцов // Вычислительные методы и программирование. – 2002. – Т. 3. – С. 116–123.
15. Скворцов, А. В. Линейно-узловой алгоритм построения оверлеев двух полигонов / А. В. Скворцов // Вестник ТГУ. – 2002. – No 275. – С. 99–103.
Опубликован
2019-06-25
Как цитировать
Самойлов, Н. К. (2019). Трансляция запросов с языка sql в язык Mongo QL. Вестник ВГУ. Серия: Системный анализ и информационные технологии, (3), 104-111. https://doi.org/10.17308/sait.2019.3/1311
Раздел
Современные технологии разработки программного обеспечения