Natural Language Conversion Tool for Spatio-temporal Query论文学习
摘要
- 移动对象数据库:Moving Objects Database(MOD) ,是对移动对象的位置和其他相关信息描述、存储和处理的一种时空数据库系统。它是时空数据库的一个特例,直属于时空数据库的范围,是一个新兴的数据库分支。它主要针对离散的和连续变化的移动对象数据(尤其是轨迹数据)提供数据存储和查询支持。它基于时空数据库中对象的运动的特性,具有移动特性。
时空查询表达式
时空数据代数
数据库为时间类型提供了特殊的运算符,其中包括对时间和值范围的投影、与时间和值范围中的值或值集的交集,以及确定变化率的结果。此类运算符的示例如下:
- 在 SECONDO 数据库中,具有 mpoint 的属性的对象被称之为移动对象。mpoint 的属性内包含了时间以及地点信息,利用这个属性以及相关操作符可以构造时空查询语句。
- trajectory 将运动点投影到二维平面作为一个线值
- atperiod 将移动限制在一定的时间内,使用present检查运动物体是否在预定的时间或瞬间存在
- deftime 将运动投射到时间维度
- 操作 at 将移动点限制于它在区域内的时间,使用passes检查它是否曾经出现在区域内或在点上
- atinstant 计算给定时刻的移动点,返回一个由时刻和一个点组成的对
- ipoint 类型的值,inst 和 val 返回该值的组件。
元组流查询操作
- filter:从给定流中选择元组的子集。例子中,.Id表示关系Cars的一个属性
- extend:通过为每个新属性指定属性名称和表达式,将新属性添加到从现有属性中的值派生的元组中。例子中,添加的新属性,其名称为Dist,表达式为distance(.Trip,mehringdamm)
- project:是标准的关系投影,用来投影属性列表中给定的属性。例子中,投影到属性组[Id, Trip]上
- consume:将元组流收集到关系中,可创建一个适合保存和索引的持久关系。例子中,只收集满足条件[.Trip passes mehringdamm]的元组流
转换工具的使用手册
1. 运行环境
- Secondo数据库
- Ubuntu 20.04.3 LTS
- tomcat-10.0.10
- Eclipse IDE for Java Developers, Version: 2021-06 (4.20.0)
2. spaCy自然语言处理工具的安装
- 具体步骤详见文章:python+spaCy进行自然语言处理(NLP) - bky-16 - 博客园
- 注意注意:后续步骤需要用到anaconda,所以此处尽量按照原使用手册安装spaCy
- anaconda安装成功之后,进入终端如下所示
- 每次在命令行通过conda deactivate退出base环境回到系统自带的环境(点击查看详细信息)
3. java web相关部署
- 在ubuntu上安装java
- 参考文章安装OpenJDK11:如何在 Ubuntu 20.04 上安装 Java - 知乎
- 输入如下命令
-
sudo apt update sudo apt install openjdk-11-jdk
- 安装完成之后,可通过检测java版本来验证
-
java -version
- tomcat服务器下载及检测
- 官网下载tomcat10:https://tomcat.apache.org/download-10.cgi,如下图,选择Binary Distributions--Core--tar.gz
-
- 解压
- 进入到解压的tomcat目录下的子目录bin中,然后运行命令./startup.sh,这样tomcat服务器就开启了,打开ubuntu浏览器,输入地址http://localhost:8080/,若能打开网页即为服务器可以正常使用,再运行./shutdown.sh关闭服务器即可