CN103383688B - 用于地理编码/地理处理的内存空间数据库 - Google Patents
用于地理编码/地理处理的内存空间数据库 Download PDFInfo
- Publication number
- CN103383688B CN103383688B CN201210135239.0A CN201210135239A CN103383688B CN 103383688 B CN103383688 B CN 103383688B CN 201210135239 A CN201210135239 A CN 201210135239A CN 103383688 B CN103383688 B CN 103383688B
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- memory database
- address date
- database
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
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
-
- 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/29—Geographical information databases
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)
- Remote Sensing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
实施例提供一种内存数据库系统,包括:提取模块,被配置为从一个或多个外部数据源提取数据(例如,商务数据和地址数据),并且将数据转换成为标准格式;地理编码器,被配置为基于地址数据使用内部参考表格对包括获得的空间数据的地址数据进行地理编码;以及内部数据库,被配置为存储内部参考表格、商务数据、地址数据和空间数据。
Description
技术领域
本描述涉及一种具有一个或多个地理处理特征的内存空间数据库。
背景技术
因为地理信息系统(GIS)技术向用户提供直观的方式来观看、理解和分析多维度数据,所以GIS技术在软件应用中扮演着相对重要的角色。然而,随着能处理相对大量数据并提供实时或准实时分析的软件应用的发展,结合GIS技术的结合呈现出它自己的在常规软件应用范例中未遇到的一组挑战。具体地,因为它提供用于实时处理的数据,所以提取、变换、加载(ETL)处理是相对复杂、费时的过程。来自诸如数据库、应用乃至数据编辑/电子表格程序中的非结构化数据的不同系统的事务性原始数据可以采用不同的数据结构和不同的地址格式。因为整个ETL处理相对复杂和费时,所以向用户提供实时分析会相对困难,特别是在一些收集的数据必须转变为空间数据(例如,点、多线(polylines)或多边形)以便实现地理处理的情况下。
涉及在相对大量数据上的复杂空间计算的地理处理的传统方法相对较慢,特别是在用户想要访问实时或准实时分析报告的情况下。
发明内容
实施例提供一种内存数据库系统,包括:提取模块,被配置为从一个或多个外部数据源提取数据(例如,商务数据和地址数据),并且将数据转换成为标准格式;地理编码器,被配置为基于地址数据使用内部参考表格对包括获得的空间数据的地址数据进行地理编码;以及内部数据库,被配置为存储内部参考表格、商务数据、地址数据和空间数据。
根据一个实施例,所述提取模块可以被配置为通过一个或多个实时作业实时地从一个或多个外部数据源提取数据。可选地,所述提取模块可以被配置为通过一个或多个批作业以时间间隔从一个或多个外部数据源提取数据。
所述提取模块被配置为将数据转换成为标准格式,可以包括被配置为将数据清理并合并成为标准格式的数据质量单元。所述来自一个或多个外部数据源的数据可以包括具有不同格式的数据。
被配置为对地址数据进行地理编码的所述地理编码器可以包括:作业状态监视器,被配置为监视通过提取模块的提取和转换的状态。所述作业状态监视器可以被配置为确定地址数据被包含在提取的数据中,并且所述地理编码器可以被配置为使用由作业状态监视器确定的地址数据查询内部参考表格、确定内部参考表格中的匹配地址数据、并且从内部参考表格获得对应的空间数据。
所述空间数据可以包括与地址数据对应的经度和纬度信息。并且,所述空间数据以基于列的格式存储在内部数据库中。
所述的内存数据库系统还可以包括:地理处理模块,被配置为根据空间进程信息地理上地处理空间数据,包括根据空间进程信息在空间数据上执行一个或多个空间查询。
在一个实施例中,所述地理处理模块可以被配置为向外部地理信息系统(GIS)应用发送一个或多个空间查询的结果用于更进一步的处理。
而且,所述地理处理模块、提取模块、地理编码器和内部数据库可以位于相同的数据库层中。
所述内存数据库系统可以还包括:建模模块,被配置为创建用于内部数据库的数据库视图,该数据库视图可以包括属性视图、分析视图和计算视图中的至少一个。所述建模模块可以被配置为向用户界面组件发送用于显示的一个或多个数据库视图。
实施例还可以提供一种用于通过内存数据库系统对地址数据进行地理编码的方法,所述方法可以包括:
通过内存数据库系统从一个或多个外部数据源提取数据(例如商务数据和地址数据);通过内存数据库系统将数据转换成为标准格式;通过内存数据库系统基于地址数据使用内部参考表格对包括获得的空间数据的地址数据进行地理编码;以及在内存数据库系统中存储内部参考表格、商务数据、地址数据和空间数据。
在一个实施例中,所述提取步骤可以通过一个或多个实时作业实时地从一个或多个外部数据源提取数据。可选地,所述提取步骤可以通过一个或多个批作业以时间间隔从一个或多个外部数据源提取数据。
所述方法还可以包括:通过内存数据库系统根据空间进程信息地理上地处理空间数据,包括根据空间进程信息在空间数据上执行一个或多个空间查询。所述方法还可以包括:通过内存数据库系统创建用于内部数据库的数据库视图,所述数据库视图包括属性视图、分析视图和计算视图中的至少一个。
实施例还提供一种有形地具体实现在非瞬时计算机可读存储介质上并包括可执行代码的计算机程序产品,该可执行代码被配置为当被运行时使得内存数据库系统执行如下步骤:从一个或多个外部数据源提取数据(例如,商务数据和地址数据);将数据转换成为标准格式;
基于地址数据使用内部参考表格对包括获得的空间数据的地址数据进行地理编码;以及在内存数据库系统中存储内部参考表格、商务数据、地址数据和空间数据。
而且,当被运行时,所述可执行码可以被配置为使得内存数据库系统执行如下步骤:根据空间进程信息地理上地处理空间数据,包括根据空间进程信息在空间数据上执行的一个或多个空间查询。
在附图和下面的描述中阐述一个或多个实施方式的细节。其它特征将由从描述和附图、以及从权利要求书中变得清楚。
附图说明
图1示出根据实施例的具有内存数据库系统的系统;
图2示出根据实施例的内存数据库系统;
图3描述示出根据实施例的、图1和图2的内存数据库系统的示例操作的流程图;
图4描述示出根据另一实施例的、图1和图2的内存数据库系统的示例操作的流程图;以及
图5示出根据另一实施例的内存数据库系统。
具体实施方式
所述实施例提供一种可以将实时提取能力与包括地理编码和地理处理的地理处理能力一起提供的内存数据库系统。例如,内存数据库系统可以从多个不同的数据源接收数据、实时地(或准实时地)统一数据、以及对来自该统一数据的合适的地址数据进行地理编码,从而获得诸如经度和纬度信息的空间数据,例如,然后将空间数据存储在内存数据库系统中。此外,内存数据库系统提供在内存中执行的可以提高计算性能的地理处理计算能力。换句话说,因为地理处理逻辑被转换成为内存数据库级别,所以全部计算在内存内执行,这可以提高计算性能。此外,与传统的软件应用的三层结构相比较,因为中间层相对薄(例如,应用服务器层),所以从应用服务器到内存数据库的减小的网络通信可以帮助提高计算性能并潜在地减小部署复杂度和配置管理问题。
图1示出根据实施例的具有内存数据库系统115的系统100。例如,系统100包括诸如个人计算机105-1和移动单元105-2的多个设备105、提供一个或多个网络服务的应用服务器110、以及内存数据库115。每个设备105可以是具有一个或多个处理器和存储单元的任何类型的计算设备,并且应用服务器110可以包含本领域已知的任何类型的应用服务器。根据本领域公知的方法,可以在设备105和应用110,以及应用服务器110和内存数据库115之间交换信息。
内存数据库系统115可以是支持实时分析和事务性处理的一种数据库系统。例如,内存数据库系统115可以包括使用基于行、基于列、和/或基于目标的存储技术的并行处理数据存储。在一个实施例中,内存数据库系统115可以是由SAP开发的HANA企业1.0(任何其它版本)。如下面更进一步阐明地,内存数据库系统115可以配备有在内存数据库级别而不是应用服务器级别中执行的地理编码和地理处理。应当注意内存数据库系统115不仅支持存储地理信息(例如,GIS参考表格和空间数据),而且具有运行地理处理(例如,空间查询)的能力。结果,用户将能从相对大量的提取的数据中获得更有意义的、深入的内容。此外,如图1所示,因为在内存数据库系统级别中执行地理编码和地理处理计算,所以应用服务器级别会相对较薄。
图2示出根据实施例的内存数据库系统115。内存数据库系统115可以包括地理处理模块120、地理编码模块130、提取模块136和建模模块146。内存数据库系统115可以包括为本领域普通技术人员所知的其它组件。内存数据库系统115可以从诸如数据库152-1、XML文件152-2、Excel文件152-3、Access文件152-4以及任何其它类型文件152-2之类的多个外部数据源152接收数据。如图2所示,内存数据库系统115可以接收具有许多不同格式的数据。该数据可以是与由应用服务器110提供的网络服务有关的任何数据的类型,可以包括商务数据(例如,主数据和/或事务性数据)以及相关联地址数据。地理处理模块120、地理编码模块130、提取模块136以及建模模块146可以位于相同的数据库层。例如,参照三层应用结构,可以跨网络(用户)应用层、服务器应用程序层和数据库层实现网络服务。通常,在服务器应用程序层中执行大部分计算,并且数据库层通常与用于非空间数据的存储的存储单元有关。然而,根据实施例,地理编码和/或地理处理功能被传送到数据库层,该数据库层还包括与空间数据一起存储的非空间数据。
提取模块136可以被配置为从一个或多个外部数据源152提取数据,并且将数据转换成为标准格式。此外,数据可以包括商务数据,商务数据包括主数据和/或事务性数据。提取模块136可以包括具有数据质量单元140、批作业142和实时作业144的数据服务单元138。来自不同的外部数据源152的具有不同格式的数据可以通过数据服务单元138被清理、合并和转换。数据服务单元138可以提供到数据库、应用、传统系统和文件格式的连接,并且可以通过诸如批作业142和/或实时作业144之类的作业将数据提取、转换和加载到内存数据库系统115中。提取、转换和加载可以被称作提取、转换、加载(ETL)操作。然而,该实施例包含为本领域普通技术人员所知的任何类型的提取和转换方法。提取模块136可以通过一个或多个实时作业114实时地从一个或多个外部数据源152提取数据,和/或提取模块136可以通过一个或多个批作业142以时间间隔从一个或多个外部数据源152提取数据。对于批作业142,每个批作业142可以被调度为在特定开始时间,或时间间隔运行以用于delta上传。换句话说,可以根据两个不同类型的方法-实时模式或批模式-来执行数据的收集。在批模式中,经由批作业142收集数据,批作业142在设定时间间隔期间收集来自外部数据源152的全部数据。可以取决于数据收集频率而调整、配置或修改该设定时间间隔。相反,在实时模式中,当信息正在数据源152中消耗时,提取模块136可以实时地或准实时地从数据源152收集数据。
数据质量单元140可以被配置为将数据清理并合并成为标准格式。标准格式可以是与由内存数据库系统115使用的格式对应的格式。在ETL处理之内,数据质量单元140可以使用定义的数据质量控制包或自备逻辑来清理并合并数据。此外,如果数据质量单元140识别数据当中的地址信息,则数据质量单元140可以在地址信息上执行地址清理处理。在数据被清理并合并之后,数据可以存储在内部数据库150中,如建模模块146中所示。然而,如果数据包括需要被地理编码的地址数据,则触发地理编码处理,在该地理编码中首先将地址数据提供到对地址数据进行地理编码的地理编码模块130并且将被地理编码的地址数据提供给内部数据库150。换句话说,在提取模式136已经提取、清理并转换输入数据之后,如果发现地址数据,则触发地理编码处理。在一个实施例中,提取模块136可以对于每个数据服务作业(例如,批作业142或实时作业144)提供用于数据质量处理的完成的状态消息和/或测试消息,并且当对应作业包括这种信息时,提取模块136可以将合适的状态消息和/或测试消息标记为包括地址数据。如下面更进一步阐明地,由地理编码模块130(例如,作业状态监视器133)监视提取模块136的状态。此外,如图2所示,内部数据库150可以存储数据150A和空间数据150B,以及任何内部参考表格(例如,内部参考表格134)。如下面更进一步阐明地,数据150A可以表示从提取模块136提取的任何类型的数据,诸如商务数据(例如,主数据和/或事务性数据),并且空间数据150B可以表示从地理编码模块130中获得的空间内容。
地理编码模块130可以被配置为对地址数据进行地理编码,包括使用一个或多个内部参考表格134基于地址数据获得空间数据。虽然在图2中将内部数据库表格134示出为与地理编码器部分关联,并且对于内部数据库150示出数据150A和空间数据150B,但是内部参考表格134实际上存储在与数据150A和空间数据150B相同的数据库之内,例如,内部数据库150。地理编码模块130可以包括被配置为对地址数据进行地理编码的地理编码器132、被配置为监视通过提取模块136提取和转换的状态(例如,批作业142或实时作业142是否完成)的作业状态监视器133、以及内部参考表格134。内部参考表格134可以是存储地区或世界地图信息的世界范围的GIS参考表格或任何类型的表格。为建模地理景观,内部参考表格134可以使用不同类型的几何实体,诸如点、多线和/或多边形以,例如,抽象和描述地球上的诸如公路、河流和陆块之类的真实的地貌的真实表面特征。在本领域中已知这种内部参考表格134的构造。
作业状态监视器133可以被配置为监视通过提取模块136的提取和转换的状态,并且确定地址数据是否包含在提取的数据中。如果地址数据包含在提取的数据中,则地理编码器132可以被配置为使用由作业状态监视器133确定的地址数据查询内部参考表格134、确定内部参考表格143中的匹配地址数据、并且从内部参考表格134获得对应的空间数据。空间数据150B可以包括与地址数据对应的经度和纬度信息,以及在空间上描述地址数据的任何其它类型的信息。作业状态监视器133可以被配置为根据特定时间间隔或实时地通过检查作业状态来监视每个作业(例如,批作业142和实时作业144)。当成功地完成提取和转换处理时,作业状态监视器133可以通过被标记为包括地址数据的状态消息和/或测试消息来确定地址数据包括在提取的数据中。此后,地理编码模块130可以滤出全部地址数据并触发地理编码处理。如上所指出,内部参考表格134可以存储在内存数据库系统115的内部数据库150中,其中地理编码器132对于每个输入地址数据查询内部参考表格134中的全部数据以获得诸如地址匹配和/或邮政编码匹配之类的匹配点以确定地址点的最近似坐标。然后返回的空间数据150B直接存储在内存数据库115中,诸如在内部数据库150中。现在,商务数据150A和空间数据150B在内存数据库系统115中就绪用于如下面描述的更进一步的计算或处理。
地理处理模块120可以被配置为根据空间进程信息(spatial procedureinformation)地理上地处理空间数据150B,包括根据空间进程信息执行在空间数据150B上的一个或多个空间查询。空间进程信息可以是指定许多地理处理操作的计算机可读代码。在图5中更进一步地示出空间进程信息(例如,空间进程信息160)。在一个实施例中,地理处理模块120可以提供开发接口122用于开发包括,例如,拓扑124、空间查询126和投影128的一个或多个地理处理。拓扑124、空间查询126和投影128的每一个可以表示地理处理进程的子集。例如,空间查询126可以包括诸如spatial_intersects、spatial_within、spatial_overlap、spatial_contains和/或find_nearest之类的功能。拓扑124可以表示在几何实体之间的诸如计算交点之类的拓扑操作,该计算交点是公共的拓扑操作。此外,投影128可以表示本领域已知的任何类型投影计算。可以通过空间进程信息定义拓扑124、空间查询126和投影128。在一个实施例中,地理处理模块120可以被配置为向外部GIS应用发送以上操作的结果用于更进一步的处理。例如,外部GIS应用可以在应用显示部件上提供结果信息的图形显示。可替换地,可以内部地使用计算的结果以生成通过建模模块146提供的多个不同的视图,下面更进一步地进行阐明。
在一个实施例中,空间数据150B存储在具有基于列的格式的内部数据库150中,该格式可以允许高压缩比和高处理速度。此外,非空间数据(例如,数据150A)也存储在与空间数据150B相同的数据库中。因而,地理处理模块120可以在数据150A和空间数据150B上联合地执行地理处理。在一个示例中,用户将能分析位置和销售额之间的关系,以使得用户可以选择最好位置以扩展新的分店。地理处理模块120可以向用户界面组件传送结果用于显示,这与外部GIS厂家是独立的。此外,地理处理模块120可以使用多处理器和核计算机执行多线程计算。此外,在这种计算期间并行化可以显著地提高性能。
建模模块146可以被配置为对于存储在内部数据库150中的数据150A和空间数据150B创建数据库视图。数据库视图可以包括,例如,在图5中更进一步示出的属性视图、分析观看和/或计算视图。换句话说,取决于计算逻辑,用户可以创建进程或不同的视图以将计算推送到内存数据库系统115里。
图3是示出根据实施例的图1和图2的内存数据库系统115的示例操作的流程图。虽然将图3示出为操作的顺序的有序列表,但是清楚地是可以以不同的次序、或并行、或迭代地、或可以在时间上重叠地发生一些或全部操作。
来自一个或多个外部数据源的数据可以被提取并转换成标准格式(302)。例如,提取模块136可以从一个或多个外部数据源152提取数据,并且将数据转换成为标准格式。数据可以包括商务数据和地址数据。提取模块136可以包括具有数据质量单元140、批作业142和实时作业144的数据服务单元138。来自不同的外部数据源152的具有不同格式的数据可以通过数据服务单元138被清理、合并和转换。提取、转换和加载可以被称作提取、转换、加载(ETL)操作,ETL操作是共同用于这种数据采集的术语。然而,该实施例包含为本领域普通技术人员所知的任何类型的提取和转换方法。提取模块136可以通过一个或多个实时作业114实时地从一个或多个外部数据源152提取数据,和/或提取模块136可以通过一个或多个批作业142以时间间隔从一个或多个外部数据源152提取数据。
地址数据可以被地理编码,地理编码可以包括基于地址使用内部参考表格获得空间数据(304)。例如,地理编码器132可以对地址数据进行地理编码,包括基于地址数据使用内部参考表格134获得空间数据。地址编码器132可以与监视通过提取模块136的提取和转换的状态的作业状态监视器133关联。此外,作业状态监视器133可以确定地址数据是否包含在提取的数据中。如果地址数据包含在提取的数据中,则地理编码器132可以被配置为使用由作业状态监视器133确定的地址数据来查询内部参考表格134、确定内部参考表格143中的匹配地址数据、并且从内部参考表格134获得对应的空间数据。空间数据150B可以包括与地址数据对应的经度和纬度信息,以及在空间上描述地址数据的任何其它类型的信息。作业状态监视器133可以被配置为根据特定时间间隔或实时地通过检查作业状态来监视每个作业(例如,批作业142和实时作业144)。一旦成功地完成提取和转换处理,作业状态监视器133可以通过被标记为包括地址数据的状态消息和/或测试消息来确定地址数据包括在提取的数据中。此后,地理编码模块130可以滤出全部地址数据并触发地理编码处理。
内部参考表格134、商务数据、地址数据和空间数据可以存储在内部数据库中(306)。例如,内部数据库150可以存储内部参考表格134、商务数据、地址数据和空间数据。
图4是示出根据实施例的、图1和图2的内存数据库系统115的示例操作的流程图。虽然将图4示出为操作的顺序的有序列表,但是清楚地是可以以不同的次序、或并行、或迭代地、或可以在时间上重叠地发生一些或全部操作。
在开始收集处理之后(402),可以执行提取、转换和加载(ETL)处理(404)。例如,提取模块136可以在来自一个或多个外部数据源152的数据上执行ETL处理。
将作业状态确定为完成(406)。如上面阐明的,在提取模块136已经提取、清理并转换输入数据之后,如果发现地址数据,则触发地理编码处理。提取模块136可以对于每个数据服务作业(例如,批作业142或实时作业144)提供用于数据质量处理的完成的状态消息和/或测试消息,并且当对应作业包括这种信息时,提取模块136可以将合适的状态消息和/或测试消息标记为包括地址数据。作业状态监视器133可以被配置为监视通过提取模块136的提取和转换的状态。具体地,作业状态监视器133被配置为通过状态消息和/或测试消息来检查作业状态而监视每个作业。
一旦ETL处理完成,地址数据被确定为正包括在提取的数据中(408)。例如,一旦成功地完成提取和转换处理,作业状态监视器133可以通过被标记的状态消息和/或测试消息来确定地址数据包括在提取的数据中。如果确定地址数据正包括在提取的数据中,则处理进行到410。如果未确定地址数据包括在提取的数据中,则处理结束(414)。
一旦地址数据被确定为正包括在提取的数据中,则选择(410)和地理编码(412)地址数据。例如,地理编码模块130可以被配置为对地址数据进行地理编码,包括基于地址数据使用内部参考数据库134获得空间数据。
图5示出根据另一实施例的内存数据库115。例如,内存数据库系统115可以包括空间进程160,空间数据150B和诸如主数据150A和事务性数据150A的商务数据150A,常规进程168,和诸如属性视图162、分析视图164和计算视图166之类的多种不同的视图。空间进程是与地理处理(例如,使用地理处理模块120)有关的进程,而常规进程164与常规数据处理技术有关。例如,地理处理模块120可以被配置为根据空间进程信息160地理上地处理空间数据150B,可以包括根据空间进程信息160在空间数据150B上执行的一个或多个空间查询126。
根据一个示例,假定用户想要计算中国的公路网和特定行之间的交点。在公路网中,可能有超过三百七十万个特征,这个计算量相对较大。在传统数据库中,处理速度相对较慢。然而,执行根据实施例的在内存数据库115中的这种计算,可以显著地更快速地执行计算(例如,适当的157秒)来获得全部交点。
例如,提取模块136可以用来将地图数据引入内存数据库115中,然后将地图数据以二维表格存储为内部参考表格134,例如一个维度表格将存储诸如公路段的名称的属性数据,而另一个维度表格将存储诸如来自公路段多线的每个顶点的坐标之类的空间数据。两个表格可以共享相同的主关键字以记录映射关系。此处,因为内部参考表格134可以利用基于列的存储机制,所以内存和磁盘空间成本将小于传统数据库。
如上面阐明的,内存数据库系统115不仅存储空间数据15A,而且包括在相同层中的地理处理的能力。与内存技术一起,内存数据库系统115可以减小在网络交通和磁盘空间方面的不必要的时间成本。此外,基于L语言的多线程处理也可以加速该过程。HASH分区机制用于根据服务器的核数目使列表格成为若干分区。程序确定每个公路段和特定行之间的交叉点情况。下面是用于实现这种计算的空间进程160的例子。
总之,内存数据库系统115支持将属性数据和空间数据两者一起存储在相同的数据库中,以及在属性数据和空间数据两者上操作的联合处理。此外,内存数据库系统115支持来自不同的数据源的运行时数据合并、批量地理编码、以及描述性地址数据和地理坐标之间的反向地理编码。内存数据库系统115可以基于内存和并行计算技术来提高地理处理性能。此外,内存数据库系统115可以通过将用于商务数据和/或空间数据的计算逻辑放到数据库级别中来减小景观复杂度,从而减小中间层(例如应用)和数据库层之间的交互,作为回报可以提高整个应用性能以及减小部署努力。
可以在数字电子线路中实现此处描述的各种技术的实施方式,或在计算机硬件、固件、软件或它们的组合中实现。实施方式可以被实现为计算机程序产品,即,有形地包括在信息载体,例如,在机器可读存储设备或传播信号中的计算机程序,用于通过数据处理装置运行,或控制,例如,可编程处理机、计算机、或多个计算机的数据处理装置的操作。诸如上面描述的计算机程序的计算机程序可以以任何形式的程序设计语言编写,包括编译或解释语言,并且它可以以任何形式布置,包括作为独立程序或作为模块、组件、子例程、或适合用在计算环境中的其它单元。可以布置计算机程序以在位于一个地点或分布于多个地点并由通信网络互连的一个计算机或多个计算机上执行。
可以通过运行计算机程序的一个或多个可编程处理器执行方法步骤以通过在输入数据上操作并生成输出来执行功能。方法步骤也可以由专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的专用逻辑电路。
适合于计算机程序的执行的处理器包括例如通用和特定用途微处理器二者以及任何种类的数字计算机的任何一个或多个处理器。一般地,处理器将从只读存储器或随机存取存储器或这二者接收指令和数据。计算机的元件可以包括用于执行指令的至少一个处理器和用于存储指令和数据的一个或多个存储器件。一般地,计算机还可以包括一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,或计算机可操作地耦接到该一个或多个大容量存储设备以从其接收数据或向其传送数据或二者皆有。适合于具体实现计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,例如包括:半导体存储器件,例如EPROM、EEPROM和闪速存储器件;磁盘,例如内部硬盘或活动磁盘;磁光盘;和CDROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的交互,实施方式可以被实现在具有例如CRT(阴极射线管)或LCD(液晶显示器)监视器之类的用于向用户显示信息的显示设备以及键盘和例如鼠标或跟踪球之类的指示设备的计算机上,通过这些,用户可以向计算机提供输入。另一种设备也可以用于提供与用户的交互;例如,向用户提供的反馈可以是任何传感反馈的形式,例如,视觉反馈、听觉反馈、或触觉反馈;并且来自用户的输入可以以任何形式被接收,包括声波、语音或触觉的输入。
实施方式可以被实现在如下的计算系统中,包括后端组件,例如作为数据服务器;或包括中间件组件,例如应用服务器;或包括前端组件,例如具有图形用户界面或网络浏览器的客户端计算机,通过图形用户界面或网络浏览器,用户可以与此说明书描述的主题的实施方式交互;或一个或多个这样的后端、中间件或前端组件的任何组合。组件可以由任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如互联网。
虽然已经如此处描述的示出描述的实施方式的特定特征,但是本领域技术人员现在将想到许多修改、替换、改变和等同物。因此,将理解所附的权利要求意图覆盖落入实施例范围的所有这种修改和改变。
Claims (20)
1.一种计算机实现的系统,包括:
内存数据库,被配置为与承载一个或多个网络服务的应用服务器接口,所述内存数据库被配置为执行提取、转换和载入(ETL)操作以从一个或多个外部数据源收集数据并对所述数据执行地理编码和地理处理,使得所述地理编码和地理处理不在所述应用服务器处执行,而是在由所述内存数据库表示的数据库层处执行,所述内存数据库包括:
提取模块,被配置为从一个或多个外部数据源提取数据,并且将数据转换成为标准格式,所述数据包括商务数据和地址数据;
地理编码器,被配置为基于地址数据使用内部参考表格对包括获得的空间数据的地址数据进行地理编码;以及
存储器,被配置为存储所述空间数据和所述商务数据。
2.如权利要求1所述的系统,其中所述提取模块被配置为通过一个或多个实时作业实时地从一个或多个外部数据源提取数据。
3.如权利要求1所述的系统,其中所述提取模块被配置为通过一个或多个批作业以时间间隔从一个或多个外部数据源提取数据。
4.如权利要求1所述的系统,其中所述提取模块被配置为将数据转换成为标准格式,包括:
数据质量单元,被配置为将数据清理并合并成为标准格式。
5.如权利要求1所述的系统,其中所述来自一个或多个外部数据源的数据包括具有不同格式的数据。
6.如权利要求1所述的系统,其中被配置为对地址数据进行地理编码的所述地理编码器包括:
作业状态监视器,被配置为监视通过提取模块的ETL操作的状态,
所述作业状态监视器被配置为确定地址数据被包含在提取的数据中,其中所述地理编码器被配置为使用由作业状态监视器确定的地址数据查询内部参考表格、确定内部参考表格中的匹配地址数据、并且从内部参考表格获得对应的空间数据。
7.如权利要求1所述的系统,其中所述空间数据包括与地址数据对应的经度和纬度信息。
8.如权利要求1所述的系统,其中所述存储器包括基于列的存储器、基于行的存储器、和基于目标的存储器,所述空间数据存储在基于列的存储器中。
9.如权利要求1所述的系统,还包括:
地理处理模块,被配置为根据空间进程信息地理上地处理空间数据,包括根据空间进程信息在空间数据上执行一个或多个空间查询。
10.如权利要求9所述的系统,其中所述地理处理模块被配置为向外部地理信息系统(GIS)应用发送一个或多个空间查询的结果用于更进一步的处理。
11.如权利要求9所述的系统,其中所述地理处理模块、提取模块、地理编码器和存储器位于相同的数据库层中。
12.如权利要求1所述的系统,还包括:
建模模块,被配置为创建用于存储在所述存储器中的商务数据和空间数据的数据库视图,该数据库视图包括属性视图、分析视图和计算视图中的至少一个。
13.如权利要求12所述的系统,其中所述建模模块被配置为向用户界面组件发送用于显示的一个或多个数据库视图。
14.一种用于通过内存数据库对地址数据进行地理编码的方法,所述方法包括:
通过内存数据库对来自一个或多个外部数据源的数据执行包括将所述数据转换为与所述内存数据库相关联的标准格式的提取、转换和载入(ETL)操作;
如果在所述数据内部发现地址数据,则通过所述内存数据库触发地理编码过程;
通过内存数据库基于地址数据,使用存储在内存数据库的地理信息系统(GIS)表格对包括获得的空间数据的地址数据进行地理编码,使得所述地理编码在由内存数据库表示的数据库层处而不是在应用服务器被执行;以及
将空间数据和所述数据存储在内存数据库系统的存储器中。
15.如权利要求14所述的方法,其中执行ETL操作包括通过一个或多个实时作业实时地从一个或多个外部数据源提取所述数据。
16.如权利要求14所述的方法,其中执行ETL操作包括通过一个或多个批作业以时间间隔从一个或多个外部数据源提取数据。
17.如权利要求14所述的方法,还包括:
通过内存数据库根据空间进程信息地理上地处理空间数据,包括根据空间进程信息在空间数据上执行一个或多个空间查询。
18.如权利要求14所述的方法,还包括:
通过内存数据库创建用于存储在内存数据库的存储器中的所述数据和空间数据的数据库视图,所述数据库视图包括属性视图、分析视图和计算视图中的至少一个。
19.一种有形地具体实现在非瞬时计算机可读存储介质上并包括可执行代码的计算机程序产品,该可执行代码被配置为当被运行时使得至少一个处理器执行如下步骤:
通过内存数据库对来自包括可执行代码的一个或多个数据源的商务数据执行包括提取、转换和载入(ETL)操作,以将所述数据转换为与内存数据库相关联的标准格式;以及
通过内存数据库联合地触发对商务数据和空间数据的地理处理,使得位置和商务数据之间的关联性被得到,所述地理处理在数据库层处被处理而不是在应用服务器处理。
20.如权利要求19所述的计算机程序产品,其中商务数据包括与现有位置相关联的销售数据,并且所得到的关联性基于销售数据预测一个或多个新的位置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210135239.0A CN103383688B (zh) | 2012-05-02 | 2012-05-02 | 用于地理编码/地理处理的内存空间数据库 |
US13/675,871 US8996545B2 (en) | 2012-05-02 | 2012-11-13 | In-memory spatial database for geocoding/geoprocessing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210135239.0A CN103383688B (zh) | 2012-05-02 | 2012-05-02 | 用于地理编码/地理处理的内存空间数据库 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103383688A CN103383688A (zh) | 2013-11-06 |
CN103383688B true CN103383688B (zh) | 2018-11-02 |
Family
ID=49491478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210135239.0A Active CN103383688B (zh) | 2012-05-02 | 2012-05-02 | 用于地理编码/地理处理的内存空间数据库 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8996545B2 (zh) |
CN (1) | CN103383688B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090198954A1 (en) * | 2008-02-01 | 2009-08-06 | Electronic Data Systems Corporation | Method and system for generating location codes |
US9031579B2 (en) * | 2012-10-01 | 2015-05-12 | Mastercard International Incorporated | Method and system for providing location services |
US9110935B2 (en) * | 2013-02-26 | 2015-08-18 | Sap Se | Generate in-memory views from universe schema |
US9264857B1 (en) * | 2013-10-15 | 2016-02-16 | Google Inc. | Compact codes for geographic locations |
US10181107B2 (en) * | 2014-06-25 | 2019-01-15 | Oracle International Corporation | Using consumption data and an inventory model to generate a replenishment plan |
US10002364B2 (en) | 2014-06-25 | 2018-06-19 | Oracle International Corporation | Consumption-driven forecasting using multi-level heterogeneous input data |
CN105022770B (zh) * | 2015-01-07 | 2019-01-25 | 泰华智慧产业集团股份有限公司 | 一种基于智慧城市的地理编码方法及系统 |
US9912545B2 (en) * | 2015-03-20 | 2018-03-06 | International Business Machines Corporation | High performance topology resolution for non-instrumented nodes |
CN104881465A (zh) * | 2015-05-26 | 2015-09-02 | 北京挺软科技有限公司 | 一种只读内存数据库的实现方法和系统 |
US10929417B2 (en) * | 2015-09-11 | 2021-02-23 | International Business Machines Corporation | Transforming and loading data utilizing in-memory processing |
US10673945B2 (en) * | 2016-11-04 | 2020-06-02 | Sap Se | Framework for data geocoding |
CN106611060A (zh) * | 2016-12-29 | 2017-05-03 | 苏碧云 | 一种用于gis的数据处理方法 |
CN106649802A (zh) * | 2016-12-29 | 2017-05-10 | 广东精规划信息科技股份有限公司 | 一种地址云服务平台 |
US10928202B2 (en) | 2016-12-30 | 2021-02-23 | Geo-Comm Inc. | System and methods for three-dimensional volumetric indoor location geocoding |
US10771551B2 (en) | 2017-03-28 | 2020-09-08 | Sap Se | Dynamic topology switch for data replication |
US10616412B1 (en) | 2017-12-20 | 2020-04-07 | Geo-Comm, Inc. | Processing an emergency services call |
CN111435360B (zh) * | 2019-01-15 | 2023-08-29 | 菜鸟智能物流控股有限公司 | 地址类型识别方法和装置以及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075247A (zh) * | 2007-06-22 | 2007-11-21 | 上海众恒信息产业有限公司 | 一种地理信息系统的配置服务系统及其方法 |
CN101896952A (zh) * | 2007-12-13 | 2010-11-24 | 佳明有限公司 | 自动识别文本数据中的位置信息 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5720031A (en) * | 1995-12-04 | 1998-02-17 | Micron Technology, Inc. | Method and apparatus for testing memory devices and displaying results of such tests |
US5961572A (en) * | 1997-04-01 | 1999-10-05 | Bellsouth Intellectual Property Corporation | System and method for identifying the geographic region of a geographic area which contains a geographic point associated with a location |
US5796634A (en) * | 1997-04-01 | 1998-08-18 | Bellsouth Corporation | System and method for identifying the geographic region of a geographic area which contains a geographic zone associated with a location |
US5991739A (en) * | 1997-11-24 | 1999-11-23 | Food.Com | Internet online order method and apparatus |
US6868410B2 (en) * | 2000-06-05 | 2005-03-15 | Stephen E. Fortin | High-performance location management platform |
EP1402472A4 (en) * | 2001-05-31 | 2007-10-31 | Mapinfo Corp | SYSTEM AND METHOD FOR GEOCODING DIVERSE ADDRESS FORMATS |
WO2004059538A2 (en) * | 2002-12-16 | 2004-07-15 | Questerra Llc | Method, system and program for network design, analysis, and optimization |
US7469182B2 (en) * | 2004-05-20 | 2008-12-23 | Motorola, Inc. | Intelligent geocoding of location information |
US7617246B2 (en) * | 2006-02-21 | 2009-11-10 | Geopeg, Inc. | System and method for geo-coding user generated content |
US7840340B2 (en) * | 2007-04-13 | 2010-11-23 | United Parcel Service Of America, Inc. | Systems, methods, and computer program products for generating reference geocodes for point addresses |
US9946975B2 (en) * | 2007-08-24 | 2018-04-17 | At&T Intellectual Property I, L.P. | Method and apparatus to identify influencers |
US8239368B2 (en) * | 2007-08-29 | 2012-08-07 | International Business Machines Corporation | Apparatus, system, and method for executing a distributed spatial data query |
US8171014B2 (en) * | 2007-08-29 | 2012-05-01 | International Business Machines Corporation | Apparatus, system, and method for executing a distributed spatial data query |
US7987218B2 (en) * | 2008-05-05 | 2011-07-26 | West Corporation | Method and system for establishing a spatial street address data set |
US8271510B2 (en) * | 2009-12-28 | 2012-09-18 | Verizon Patent And Licensing Inc. | Translating and geocoding addresses |
US20110161320A1 (en) * | 2009-12-29 | 2011-06-30 | Mckesson Financial Holdings Limited | Methods, apparatuses, and computer program products for geocoding data |
-
2012
- 2012-05-02 CN CN201210135239.0A patent/CN103383688B/zh active Active
- 2012-11-13 US US13/675,871 patent/US8996545B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075247A (zh) * | 2007-06-22 | 2007-11-21 | 上海众恒信息产业有限公司 | 一种地理信息系统的配置服务系统及其方法 |
CN101896952A (zh) * | 2007-12-13 | 2010-11-24 | 佳明有限公司 | 自动识别文本数据中的位置信息 |
Also Published As
Publication number | Publication date |
---|---|
US8996545B2 (en) | 2015-03-31 |
US20130297556A1 (en) | 2013-11-07 |
CN103383688A (zh) | 2013-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103383688B (zh) | 用于地理编码/地理处理的内存空间数据库 | |
JP7273045B2 (ja) | Sqlクエリプランを最適化するための次元コンテキスト伝搬技術 | |
AU2017321715B2 (en) | Managed query service | |
CN104205039B (zh) | 使用兴趣驱动数据管线进行数据分析的兴趣驱动商业智能系统和方法 | |
CN103177057B (zh) | 用于内存列存储数据库的多核算法 | |
EP2341451A1 (en) | Optimizing data transfer time on graphics processor units | |
US9720966B2 (en) | Cardinality estimation for optimization of recursive or iterative database queries by databases | |
US20190272315A1 (en) | Dynamic retrieval and rendering of user interface content | |
US9396446B2 (en) | Modeling properties of data and events as transformations of document data and system values | |
JP2022505230A (ja) | 多次元データベース環境における依存関係分析のためのシステムおよび方法 | |
Domanski et al. | Applications of heterogeneous computing in computational and simulation science | |
EP1383064A2 (en) | System and method for analytically modeling data organized according to related attributes | |
TW201445341A (zh) | 基於範圍選取的搜索系統及方法 | |
CA2684106A1 (en) | Performing enterprise planning and economics analysis for reservoir-related services | |
Nikitenko et al. | The Top50 list vivification in the evolution of HPC rankings | |
JP7245954B2 (ja) | 大量の時系列データの滑らか且つ解像度が扱いやすいビュー | |
Xiong et al. | HiGIS: An open framework for high performance geographic information system | |
Grochow et al. | Client+ cloud: Evaluating seamless architectures for visual data analytics in the ocean sciences | |
Chen et al. | Interpretation-oriented information interface for manufacturing enterprises | |
US20240119045A1 (en) | Systems and Methods for Intelligent Database Report Generation | |
Dorier | Addressing the challenges of I/O variability in post-petascale HPC simulations | |
Zhou et al. | Tile‐based polygon overlay of vector data in a virtual globe | |
WO2022212438A1 (en) | Integrated energy data science platform | |
Odun-Ayo et al. | A SYSTEMATIC MAPPING STUDY OF CLOUD COMPUTING MIDDLEWARE, STACKS, TOOLS, DELIVERY NETWORKS | |
Jiang et al. | Building business intelligence applications having prescriptive and predictive capabilities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: German Waldo Applicant after: SAP AG Address before: German Waldo Applicant before: SAP AG |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: SAP AG TO: SAP EUROPE AG |
|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |