EP2869220B1 - Vernetztes datenbanksystem - Google Patents

Vernetztes datenbanksystem Download PDF

Info

Publication number
EP2869220B1
EP2869220B1 EP14190178.5A EP14190178A EP2869220B1 EP 2869220 B1 EP2869220 B1 EP 2869220B1 EP 14190178 A EP14190178 A EP 14190178A EP 2869220 B1 EP2869220 B1 EP 2869220B1
Authority
EP
European Patent Office
Prior art keywords
database
source
view
source databases
views
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
Application number
EP14190178.5A
Other languages
English (en)
French (fr)
Other versions
EP2869220A1 (de
Inventor
Andreas Kemmler
Torsten Kamenz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SAP SE
Original Assignee
SAP SE
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SAP SE filed Critical SAP SE
Publication of EP2869220A1 publication Critical patent/EP2869220A1/de
Application granted granted Critical
Publication of EP2869220B1 publication Critical patent/EP2869220B1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP

Definitions

  • the present disclosure relates to a networked database system configured to generate a report.
  • a company more than likely has a need to, and indeed does, generate a multitude of reports about its workflow processes and operations relating to several topics such as manufacturing control, process monitoring and optimization, human resources, fleet management, etc.
  • the company may use different systems and/or sub-systems in generating these reports, including different processors, databases, and other computer system components.
  • the different systems may comprise legacy systems and differ significantly in respect to their age, complexity, runtime environment and data organization. Creating reports for two or more or even all system components may require complex manual modifications of a query interface by multiple system designers and programmers being familiar with the particularities of each individual sub-system and implementing special program routines for integrating data provided by different subsets of the legacy computer systems.
  • EP 1241593 A2 describes a method and system for interacting with devices having different capabilities.
  • Server-side objects are used to translate information and commands to and from various formats depending on the requirements and capabilities of the target device.
  • a device interaction component transforms a menu in a manner appropriate to the device the user is using.
  • the invention relates to a networked database system.
  • the networked database system comprises a computer processor, an in-memory database and a network interface for coupling the in-memory database to a plurality of computer systems via a telecommunication network.
  • Each of said computer systems comprises a source database.
  • the networked database system further comprises a configuration.
  • the configuration comprises a selection of one or more of the source databases.
  • Each of the source databases selected in the configuration has assigned a database schema.
  • Each schema is indicative of how the data contained in said source database is organized.
  • the networked database system further comprises an interface to a portable battery powered telecommunication device of a user. The interface enables the user to modify the selection in the configuration.
  • the in-memory database comprises, for each of the source databases, a database view being associated with said source database.
  • Each database view comprises program logic configured to create a report for said source database in response to being called.
  • the creation of the report comprises retrieving data from at least one database table, the at least one database table being stored in said source database and/or being stored in the in-memory database as a copy of a database table of said source database.
  • the processor is configured for:
  • Said features may provide for a particularly flexible networked database system which may be capable of dynamically combining data for generating a cross-system report for a dynamically determined sub-set of source databases.
  • the meta-view may be created in response to the request and may be configured to call merely the sub-set of the available source databases selected by a user via the configuration, it is not necessary to implement specially adapted report-generating interfaces for generating different types of cross-system reports covering different subsets of the source databases.
  • the networked database system may be connected to source databases A, B, C, D, E and F.
  • a first type of cross system report may cover source databases A, B and E while a second type of cross system report may cover B, C and D.
  • the meta view may be dynamically created for generating a report that covers any possible sub-set of the source databases selected in the configuration. Any possible combination of source databases may be covered without having to implement a particularly adapted query interface in advance. Thus, the time and effort for providing and maintaining a reporting interface for complex and heterogeneous cross-system reports may greatly be facilitated.
  • a highly flexible, distributed database system whose coverage is dynamically adapted in accordance to a configuration. That the data retrieved from the various source databases is combined by database operations provided by the in-memory database rather than an application layer logic may significantly increase the performance, because a) database operations are much more performant than application-layer data processing operations because database operations are optimized for efficiently processing the data stored in or organized by said in-memory database. And because b) only the data that is really needed in the report is retrieved from the database layer and transferred to the application layer.
  • the networked database system is highly flexibly adaptable in respect of the source databases to be covered by the report, embodiments of the invention may allow for a highly performant report generation basically relying only on inbuilt database operations provided by one or more database views.
  • Creating the database views by an automated copying and modification process may accelerate and facilitate the provision of the flexible reporting systems, in particular in environments where many source systems have the same structure.
  • the processor is configured for evaluating the request of the telecommunication device for identifying an estimated display size of the telecommunication device.
  • the evaluation may comprise evaluating the device-type or size of the telecommunication device by evaluating some parameters specified in the request. Said parameters, e.g. a device-type ID or some settings in the operating system of the telecommunication device may be part of the request and may be used for automatically determining the size of the display of said device.
  • the processor is further configured for automatically modifying the configuration. The larger the estimated display size, the larger the number of source databases selected in the modified configuration. This may be advantageous, because display-size specific reports may be generated.
  • some source databases which may merely comprise some supplementary data, e.g. some background information on the supplier, may automatically be deselected in the configuration to reduce the size of the report and to allow displaying the whole report on the small display.
  • the database server hosting the in-memory database may comprise some application program logic and/or rules for selecting or deselecting some of the source databases in the configuration in dependence on the display size and/or a device type.
  • said supplementary source databases may automatically be selected in the configuration to include also said supplementary details in the cross-system report and to display them in the display.
  • the telecommunication device is one of a plurality of telecommunication devices operatively coupled to the in-memory database via the telecommunication network.
  • the configuration comprises, for each of the telecommunication devices, a specification of the one or more selected source databases associated with said telecommunication device.
  • the processor may be configured for evaluating, upon receiving the request for a cross-system report from one of the telecommunication devices, the configuration for identifying the one or more selected source databases associated with a device type of said telecommunication device. Said association may be stored in the configuration.
  • the processor may further be configured for using the identified selected source databases for creating a telecommunication-device type specific version of the meta view.
  • the telecommunication device type specific version of the meta view is configured for retrieving data from at least one database table of each of said one or more identified and selected source databases, said source databases being assigned to said telecommunication device in the configuration.
  • the configuration may comprise different sets of selected source databases which are associated with a respective device type such as "smartphone” or "tabloid computer".
  • Providing a device-type specific configuration and a device-type specific meta-view may allow for the automated creation of a particular type of cross system report that is specially adapted to the particularities or capabilities of the respective device type.
  • a first device type may consist of a set of telecommunication devices assigned to a first user or a first user group.
  • a second device type may consist of a set of telecommunication devices assigned to a second user or a second user group.
  • group- or user- specific sub-sets of source databases may automatically be selected and group- or user-specific reports comprising selectively the data required by said group or user may be generated automatically.
  • the interface enables a user to modify the configuration such that multiple telecommunication devices have assigned the same list of selected source databases.
  • the configuration may be modified automatically upon receiving the request for the cross-system view and the request may comprise configuration data or modifications thereof.
  • each of one or more of the database views is a root node of a hierarchical graph of interconnected nodes.
  • the interconnected nodes of each of said hierarchical graph comprise one or more of the database tables whose data is retrieved by the database view acting as the root node upon being called, and comprise one or more further database views.
  • Each of said further database views is configured to retrieve data from one or more of said database tables of said hierarchical graph upon being called by another one of the further database views or by the root node view of said hierarchical graph.
  • At least a first one of the hierarchical graphs comprises database tables respectively acting as a node of said first hierarchical graph.
  • Said database tables are stored in the in-memory database and are created as a copy of database tables in one of the source databases.
  • Each hierarchical graph may have received its tables from a respective one of the source databases.
  • At least a second one of the hierarchical graphs comprises database tables respectively acting as a node of said second hierarchical graph.
  • Said database tables are stored in one of the source databases. No copies of said tables may have been stored in the in-memory database.
  • the data retrieved from said database tables is retrieved by the processor via the telecommunication network.
  • the calling of each of said database views by the meta view comprises calling the further database views of said hierarchical graph in a cascaded manner starting with the execution of the root node and returning the data retrieved from the database tables constituting nodes of said hierarchical graph.
  • the hierarchical organization of further views and the database tables as described may allow the specification of a complex, cascaded data retrieval logic which is optimized to retrieve data, e.g.
  • That data of some of the source databases may be received via a network in response to the request from said source databases while others may be retrieved from a local source database copy in the in-memory database may further increase the flexibility of the system: data which needs to reflect the most recent state of the data in the source database may be retrieved in response to the request dynamically while other data may be replicated only once or in predefined time intervals of e.g. days, month or years to reduce network traffic.
  • the dynamic data retrieval from remote databases may be implemented, for example, by using "Smart Data Access" data virtualization technology of SAP HANA.
  • each of the database views has assigned access permission information.
  • the request for generating the cross-system report has assigned a user-ID or group-ID.
  • the automatic creation of the meta view comprises evaluating the access permissions assigned to the database views associated with the one or more source databases selected in the configuration, and creating the meta view.
  • the meta view is created such that the generated meta view is configured for selectively calling, upon said meta view being called, the database views associated with the one or more source databases selected in the configuration which have assigned access permission information indicating that a user having assigned said user-ID or group-ID is allowed to access said database view.
  • the view-based access permission management may allow for a highly flexible and dynamically adaptable access permission management and thus may provide for a particularly flexible system for creating cross-system reports.
  • the database operation is a SQL UNION operation.
  • the creation of the meta view comprises automatically identifying, within each of the database views assigned to one of the source databases selected in the configuration, a database sub-query.
  • Each database sub-query is configured to:
  • a sub-query may be an SQL SELECT statement contained in the program logic of the database view, the database view being assigned to one of the source databases selected in the configuration.
  • creating the database views by an automated copying and modification process may accelerate and facilitate the provision of the flexible reporting systems, in particular in environments where many source systems have the same structure.
  • three source databases may have stored attributes of employees of a company.
  • the three source databases may have the same database schema, e.g. a table "Employee” with three columns respectively having assigned the column names "ID", "name” and "salary”. Columns of different source databases being contained in a table with the shared name "Employee” and sharing the same column name, e.g. "name” store the same type of attributes.
  • one source database may comprise the attributes of US-employees
  • another source database may comprise attributes of employees in Brazil
  • the third database may comprise the data of German employees. In such cases, only one single view for the data model "employee" needs to created manually, e.g.
  • All other views capable of generating a report for the other source databases comprising employee attributes can be created automatically by copying and modifying said single view of the US-employees.
  • the modification may merely consist in a replacement of the name of the source database to be accessed and/or, in case a local (i.e., stored in the in-memory database) database copy is accessed, in a replacement of a table name prefix of a database table of the in-memory database, whereby the replaced table name prefix is indicative of the source database from which the data was replicated to the in-memory database.
  • This may result in a great facilitation for creating cross-system reports e.g.
  • the processor may be capable of automatically determining the ones of the source databases having the same structure.
  • the configuration may comprise an association of each of the source databases and a database schema of said source database, the database schema being indicative of the structure of the tables and/or views of said source database.
  • the automated identification of the two or more of the selected source databases sharing a common database schema comprises identifying all columns in the source databases selected in the configuration which have different column names but have stored attributes of the same semantic concept, and mapping said different column names to a shared column name for retrieving data from said selected source databases according to a common database schema, the common database schema comprising the shared column name.
  • the configuration may comprise a table with the following columns: A column “source” comprising an identifier and/or an address of one of the source databases.
  • a column “table” comprising a table name of a table of a source database identified in the column "source”.
  • said table could have the table name "Employee”.
  • the table of the configuration could comprise one or more further columns referred to e.g. as “Field1", “Field2", etc. respectively comprising column names like "ID”, "Name” and/or "Salary”, whereby said column names are the names of the columns of the source database table whose name is contained in the "Table” column.
  • the same semantic content "Salary” may be stored in different source databases in columns of different names ("Income” or "Salary”).
  • Each record of said table may be considered, alone or in combination with additional data (e.g. with mapping data exemplary specified in the next table) as a "schema" of the respective source database.
  • the database schema may comprise the column names of respective columns of one or more of the tables of the source database and may comprise a mapping of column names representing the same semantic concept to each other.
  • the column name "Salary" of source database and corresponding computer system CS1 relates to the same semantic concept as "Income” of source database and corresponding computer system CS2 and as "Earning" of a further source database and corresponding source computer system.
  • Source Table Field1 Field2 Field3 Field4 ... CS1 Employee ID Name Salary Gender ... CS2
  • Employee ID Name Income - ... DB-schema table a part of the configuration; specifies a database schema for a respective one of the source databases;
  • mapping shown above may comprise multiple semantic concepts and one or more different column names of different source databases which are all mapped to said semantic concept and thus are specified to be synonyms.
  • the configuration may specify that the cross-system report should solely cover data which is stored in database columns of a source database whose column names are identical or whose column names are mapped to each other as synonyms representing the same semantic concept.
  • the following database statement could be executed for creating the meta view in such a scenario:
  • the configuration may specify that the cross-system report should cover all data which is stored in database columns of a selected source database whose column names are contained in the database schema stored for said source database in the configuration.
  • the following database statement could be executed for creating the meta view in such a scenario:
  • the copying process may comprise identifying a SELECT statement contained in the program logic of the at least one identified database view. Said copying process may further comprise replacing the name of one or more database tables and/or database columns of the source database from which data was retrieved by the at least one identified database view by one or more column and/or table names of another one of the source databases from which the copied database view shall retrieve data.
  • the identified SELECT statement may comprise the table name "CS1.Employee" for accessing a local copy of the table "Employee" having been replicated to the in-memory database from a first computer system CS1 hosting a first source database.
  • the modified copy of the SELECT statement may comprise the table name "CS2.Employee” instead of "CS1.Employee” and thus may be used for retrieving data from a local copy of the "Employee" table having been replicated to the in-memory database from a second computer system CS2 hosting a second source database.
  • "CS1" and "CS2" may act as table name prefixes. The syntax of said prefixes may depend on the in-memory DBMS used.
  • the modified copy of the view may comprise all data necessary to establish a database connection to said remote source database.
  • each of the source databases selected in the configuration has assigned a database schema being indicative of how the data contained in said source database is organized.
  • the processor is further configured for:
  • the processor is a processor of a server computer hosting the in-memory database.
  • the processor is configured for:
  • the source database comprises at least two of the hierarchical graphs whose node structure and/or node number or topology of nodes differs from each other.
  • the structure e.g. the number, sequence, constraints and names of the columns of a table, of all database views and the structure of the meta view is specified by a shared database schema.
  • This may be advantageous because the topology of the graph may be different for different source databases for providing optimal data retrieval performance in the respective source system.
  • the different kinds of retrieval logic may be accessed by respective root nodes (views) having the same structure. This may ease the automated combining of data retrieved by calling the different root node views.
  • that two or more source databases share the same schema implies that the root nodes in the form of database views have the same tabular structure, e.g. the same name and sequence of columns.
  • Each of said columns of a view representing a root node may represent an attribute of a data model represented by said root node.
  • the processor is operable to automatically generate the meta view by including modified copies of database query statements and including said copied statements in the program logic of the meta view.
  • the copied database query statements were originally contained in the program logic of the database views configured for retrieving data from the one or more source databases selected in the configuration.
  • At least some of said database views may be created automatically as described above for various embodiments.
  • the processor is operable to generate the database views and/or the meta view by using a database query statement implemented in an in-memory DBMS operating the in-memory database.
  • the database query statement may be an SQL CREATE statement.
  • At least one of the database views upon being called, retrieves the data from database table copies.
  • the database table copies have been automatically created from database tables of one of the source databases and have been automatically transferred from said source database to the in-memory database.
  • at least a further one of the database views upon being called, retrieves the data from database tables of another one of the source databases by accessing said source database hosted by one of the computer systems via the telecommunication network.
  • accessing a source database via the telecommunication network may be implemented by means of "Smart Data Access" data virtualization technology of SAP HANA which allows accessing remote sources such as Hadoop, Oracle, SQL server. This may be beneficial e.g. in cases where the data in the report must consist of the most recent available data. Transferring data to the in-memory database may involve some latency time and the transferred data may already be outdated.
  • one or more columns of each of the database views respectively represent an attribute contained in the report generated by said database view.
  • one or more columns of the meta view respectively represent an attribute contained in the cross-system report generated by said meta view.
  • database views delivered by a software vendor for representing a data model of a software or a source database provided by said vendor may be used (as they are or with slight manual modifications) for retrieving the data from the source database tables.
  • the database views may respectively represent a Virtual Data Model (VDM) delivered by the software vendor to offer analytic insight into one system/database schema, but not on several other system/database schemas. However, often cross system reports covering the data in multiple source databases are required.
  • VDM Virtual Data Model
  • the reporting system allows generating a consolidated analytic meta view on these multiple systems using one or more of the vendor-provided VDM views.
  • a software tool is provided that can be used to generate a cross schema variant of a complex data model view that is originally designed for only a single source database and a corresponding database schema. The generation is executed by replacing the database table access of the vendor-provided views with a corresponding access to the tables in the relevant other source databases and corresponding database schemas. The data from the different tables and retrieved by one or more vendor-provided views are combined, for example, via a UNION ALL SQL statement contained in the program logic of the meta view.
  • the generation of the meta view comprises automatically evaluating user- specific or user-group-specific settings in the configuration and/or evaluating a database schema of a source database stored in the configuration.
  • the resulting customer specific variant of the Virtual Data Model (VDM) can then be used for source system specific and for cross system analytic scenarios, automatically including the data from different source databases and respective schemas as if they belong to the same database schema and if said source databases were selected in the configuration.
  • VDM Virtual Data Model
  • embodiments may provide a networked database system capable of generating analytical reports and applications for transactional data easily, flexibly and automatically.
  • the new analytical data model supporting these scenarios is implemented in an in-memory database as database views that may be directly called by a dynamically generated meta view. Said called views may be referred to as a virtual data model (VDM).
  • VDM virtual data model
  • the VDM does not change the existing data model or database table structure. To benefit from the new data model, data do not need to be extracted and there is no additional persistence needed. Rather, the view-based data model may be based on the original (or existing) data.
  • the VDM can be accessed via standard access protocols like multidimensional expressions (MDX) and structured query language (SQL).
  • MDX multidimensional expressions
  • SQL structured query language
  • VDM is an enabler for a new openness and flexibility in the analytic world. Every analytic tool that is able to connect via SQL or MDX (like MS Excel, Crystal Reports, or Business Object Explorer) can be used to directly access the VDM for analytics and reporting on operational data.
  • SQL simple X
  • MDX like MS Excel, Crystal Reports, or Business Object Explorer
  • the processor is configured for automatically identifying, in response to receiving a request for generating a report for one of the computer systems, by the database system, the one of the database views assigned to said one computer system for which the report was requested, and directly calling the one identified database view.
  • the invention relates to a computer-implemented reporting method comprising:
  • the invention relates to a computer readable medium comprising instructions that when executed by a processor causes the processor to execute a method according to any one of the above embodiments.
  • An "in-memory database” is a database managed by an in-memory database management system (DBMS).
  • DBMS in-memory database management system
  • An in-memory DBMS primarily relies on main memory for storing the data contained in the in-memory database. It is contrasted with database management systems that employ a disk storage mechanism.
  • main memory databases are faster than disk-optimized databases since the internal optimization algorithms are simpler and execute fewer CPU instructions. Accessing data in memory eliminates seek time when querying the data, which provides faster and more predictable performance than disk.
  • a “configuration” as used herein is a data structure, e.g. a file, a set of database records, a database table or the like that comprises some configuration data.
  • the configuration data may specify from which source databases or respective copies in the in-memory databases data shall be retrieved, and thus, may specify the dynamically created program logic of the meta view.
  • the configuration may further comprise database schemas of the source databases. It may be modifiable by a user via an interface, e.g. a graphical user interface (GUI).
  • GUI graphical user interface
  • the GUI may be implemented, for example, by an HTML page provided by the analytical system 118 via the network 117 and displayed on the screen of the user's portable battery powered telecommunication device 120 by a browser.
  • a “database view” is a tabular data structure including some program logic consisting of database operations that may be performed by a database management system (DBMS), e.g. the DBMS of an in-memory database.
  • the program logic may consist of stored SQL queries capable of retrieving a result set from one or more database tables and/or further database views.
  • a user may query a database view just in the same way as he or she would do in a persistent database collection object (e.g. a table). This pre-established program logic may be kept in the database dictionary.
  • a database view does not form part of the physical schema: as a result set, it is a virtual table computed or collated dynamically from data in the database when access to said database view is requested. Changes applied to the data in a relevant underlying table are reflected in the data shown in subsequent invocations of the view.
  • A, telecommunication device' may be any kind of data processing device, for example and without limitation, a notebook computer, a smartphone, a tabloid PC or the like that is connected or connectable to a mobile telecommunication network.
  • A, database schema' as used herein is any kind of information being indicative of the structure of a source database or a copy of said source database or parts thereof having been replicated to the in-memory database.
  • the schema may comprise all information necessary for creating one or more database tables from scratch or may comprise only some aspects of the structural organization of the data, e.g. one or more table names and their respective column names.
  • a 'telecommunication network' or "network” as used herein is a data communication network such as, for example, the internet or an Intranet.
  • the telecommunication network may be a wireless network, e.g. a mobile communication network, also known as 'cellular network' distributed over land areas called cells, each served by at least one fixed-location transceiver, known as a cell site or base station.
  • a network interface is any hardware, firmware and/or software component configured to connecting a computer, e.g. an analytical system 118 and/or a telecommunication device 120 to the network.
  • a 'report' as used herein is a data set comprising data of a single source database.
  • a 'cross system report' as used herein is a data set comprising data that was stored in two or more source databases. The data may be retrieved dynamically from the source database(s) for creating the (cross system) report via the network and/or may be retrieved from a copy of a source database, the copy being stored in the in-memory database.
  • the in-memory database allows the integration of online transaction-based (OLTP) processes and online analytics-based (OLAP) processes on one database platform.
  • OTP online transaction-based
  • OLAP online analytics-based
  • the online/in-memory database makes it possible to run applications, especially analytical applications, directly on the database without the necessity of an application server.
  • Such in-memory database systems can include several parts. There is first the in-memory database that has column and row store capabilities. An in-memory database allows high-performance processing and analysis of data that is already on the database, and it therefore does not require the transfer of data from the database to an application server. With an in-memory database, it is possible to push performance-critical parts of the business logic down to the database.
  • An in-memory database can also include administration and development tools.
  • the in-memory database can also include tools for the integration of data from one or more source databases.
  • An in-memory database can be delivered as an appliance, that is, a combination of specific hardware and software.
  • One or more of the views may allow generating an analytical report for an individual source database although the database schema of the source database may be optimized for storing transactional data.
  • the added views may be identical or modified copies of views already existing in the source databases and/or may be created de novo in the in-memory database. It is also possible that for some source databases, existing views are copied to the in-memory database while for other source databases a respective new view is created and stored in the in-memory database.
  • an in-memory database can be deployed in at least two different manners.
  • the in-memory database can be used as the primary database of the reporting system, thereby replacing any other standard database used as source database.
  • This first deployment scenario enables direct analytical access to the data stored in the business in-memory database via analytical tools provided e.g. from the in-memory database management system (DBMS) or an external application.
  • DBMS in-memory database management system
  • the in-memory database is installed as a secondary database side-by-side with the existing source databases.
  • the data of the source databases and corresponding computer systems that are needed for the analytical applications and/or for generating the cross-system report can be replicated in 'real-time' to the in-memory database. Consequently, the data are in sync between the in-memory system and the computer systems comprising the source databases.
  • the analytical applications are then executed on the in-memory database, and the existing computer systems and their source databases are not influenced or changed.
  • FIG. 1 illustrates a networked database system 100 that includes multiple computer systems 110.A.-.110.C respectively hosting an application server 111.A-111.C and a source database 112.A-112.C.
  • Each source database respectively includes one or more source database tables 113.A-113.C.
  • Each source database may be managed by a respective database management system (DBMS).
  • DBMS database management system
  • the database tables 113 can be replicated in real time to the in-memory database 121, and stored as database table copies 123 in the in-memory database 121.
  • Views 122.A-122.C provide analytical access into the in-memory database tables 123.A-C, i.e., allow to generate individual reports or, by means of a meta view discussed later, a cross-system report covering the data of multiple ones of the tables 113 and/or tables 123.
  • a mobile telecommunication device 120 e.g. a Smartphone or a notebook of a user 101, uses the views 122 to access the in-memory database tables 123.
  • one or more of the views 122 may even allow for a remote access of the tables 113 in the source databases 112.
  • the views 122.A-122.C may be called individually for retrieving a report for a single one of the source database systems or may be called collectively by a dynamically generated meta view for generating a cross-system report.
  • database 110.A may comprise human resource information on its European employees
  • database 110.B that relates to human resource information for its Australian employees may have a slightly differing data structure compared to database 110.A.
  • the data of both databases 110.A, 110.B may be replicated automatically to the in-memory database without any change in the structure of the replicated database tables.
  • Database schemata 160.A, 160.B are created after having finished the replication.
  • the database views 122 may have a tabular structure and some program logic for retrieving data from the respective replicated source tables.
  • the structural information contained in the schemas 160 e.g. column names, may be used for automatically or semi-automatically creating a respective database view 122.
  • the tabular structure of the database views 122.A, 122.B may be identical. This may allow for an easy and automated combination of the retrieval results generated by the respective views 122.A, 122.B, because the syntax of any select statement capable of retrieving data from view 122.A will also be capable of retrieving data from view 122.B.
  • the data retrieval logic of the views 122.A, 122.B may slightly differ to allow the view 122.A to retrieve data from the tables 123.A and to allow the view 122.B to retrieve data from the tables 123.B, whereby said tables may have a slightly differing structure.
  • the schemas 160.A and 160.B specify the tabular structure of the respective database view 122.
  • the equality of the two or more schemas 160.A-160.C indicates that the structure of the respective database views 122.A-122.C, i.e., the name and type of columns of said views, are identical.
  • database views provided by a software vendor of a legacy application of a source system 110.A-110.C are transferred to the in-memory database 121 and used as a data model.
  • Calls to the database views 122 may be integrated in the program logic of an automatically and dynamically generated meta view 126.
  • the meta view creates a cross-system report covering the data of all source databases (or their respective copies in the in-memory database) selected in a configuration 127.
  • a client e.g.
  • a telecommunication device 120 of a user 101 may get a "cross system report" by calling the meta-view, wherein the meta view covers not only the data of one replicated system but of several replicated source databases or parts thereof and optionally also one or more non-replicated source databases.
  • Some of the views 122 called by the meta view 126 may be copied from a respective one of the source databases, some of the views 122 may be manually created and some of the views 122 may be created automatically or semi-automatically by copying and modifying one of the existing views in the in-memory database (replicated ones or manually created ones).
  • the processor 119 may determine that database schemas 160.A, 160.B and 160.C may be identical.
  • database schemas 160.A, 160.B and 160.C may already exist in the in-memory database 121.
  • schemas 160.B and 160.C which may be identified as being identical to schema 160.A, no corresponding database view may yet be contained in the in-memory database 121.
  • the processor may create a copy of the database view 122.A for generating database view 122.B, whereby the SELECT query contained in the program logic of the copied database view 122.B is modified such that the modified SELECT query does not any more retrieve data from source database 110.A (as is the case with view 122.A) but rather from source database 110.B.
  • Analogous actions may be performed for creating database view 122.C.
  • multiple database views may be created automatically provided that the schemas of said views are identical and that at least one database view was already created, e.g. by means of a database import operation or by a user manually creating said database view 122.A.
  • the generation of the other database views 122.B, 122.C is based on replacement of the database table access statements contained in database view 122.A.
  • the generation of the meta view may be based on creating the meta view's program logic by combining the select statements 312.A-312.C of the individual views by UNION statements.
  • the database query statements SELECT of the individual database views 122.A-122.C may be combined for generating the meta view 126.
  • UNION ALL statements as depicted in Fig. 3 may be used to generate the meta view.
  • the database query statements contained in the individual database views 122 and in the meta view 126 are SQL query statements.
  • the database view assigned to one of the source databases and the corresponding database schema is used as a template to generate other database view having assigned the same schema or even a slightly deviating database schema.
  • the schema of e.g. view 122.B slightly deviates from the schema 122.A acting as the template, e.g. because the schema 122.B comprises additional column names and/or table names of the source database
  • the database view 122.B is automatically created such that the modified SELECT statement also retrieves data from said additional columns and/or tables.
  • program modules include routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types may be described herein either by referring to said routines or components or by referring to a corresponding method or method step.
  • Terms referring to a hardware, software or firmware component such as 'module', 'unit' or 'program logic' should be considered as also describing and referring to a respective method step and vice versa.
  • Each of the computer systems 110.A-110.C and/or the telecommunication device 120 and/or the analytical system 118, e.g. a server, hosting the in-memory database 121 may comprise a processor for processing data, e.g. processor 119 of analytical system 118 hosting the in-memory database 121.
  • Each of said systems may in addition comprise a main memory and a non-volatile storage medium.
  • the network 117 may be, for example, a local area network (LAN), e.g. an intranet, and/or a wide area network (WAN), e.g. the Internet.
  • the analytical system 118 may comprise a network interface 113, e.g. a modem, an Ethernet card, a WLAN adapter or the like, to the network 117, e.g. the internet. It may also provide an interface 115 for receiving queries Q from one or more portable telecommunication devices 120 via the network 117.
  • the interface may be, for example, an HTML GUI interface provided by the analytical system 118 and displayed in a browser of the mobile device 120.
  • FIG. 2 is a block diagram of a system 200, the diagram illustrating the relationships and connectivity of multiple source databases and an in-memory database.
  • the system 200 includes several source computer systems 110.A, 110.B, and 110.C. These multiple computer systems can be associated with a single user or said user's mobile telecommunication device 120.
  • the database schemas for one or more of these source databases 112 of the computer systems are replicated into the in-memory database. Specifically, the replication results in a database schema 160.A for computer system 110.A, a database schema 160.B for computer system 110.B, and a database schema 160.C for computer system 110.C.
  • the analytical reporting system 118 uses the database views 122 to generate a cross system report for the databases 112.A-112.C.
  • the networked database system comprises a software tool that creates, based on the one of the database views 122 fitting to a single schema, a variant of this database view, the variant being fitted to a slightly different database schema.
  • said database view variant may comprise a different set of column names and table names from which data shall be retrieved.
  • the tool may provide a GUI enabling a user to modify a database schema stored in a configuration 127, whereby said schema is used as a structural template for automatically generating a database view 122 by said tool in accordance with a respective schema 160.
  • the software tool evaluates the configuration and the schemas 160 for generating the views.
  • the tool and/or a component of the in-memory database may create, in response to receiving a query Q - see Fig. 1 - the meta view.
  • the tool or the in-memory database may use one of the views 122 as a template, replace the part of the template (that is, the database query language) that accesses a database table with a corresponding access to multiple database tables from different source databases being selected in configuration 127. This functionality is illustrated in FIG. 3 .
  • FIG. 3 illustrates a set 310 of database query statements that are used for creating database views and the meta view.
  • a database view e.g. 122.A
  • a corresponding cross-schema view 320 is created using configuration 127, which allows a user to select the source databases and corresponding schemas 160 that the user would like to view.
  • the processor 119 Based on the user's selection, the processor 119 generates database query statements 312A, 312B, and 312C such as SELECT ⁇ fieldlist > from CS1.TABLE_A, CS2.TABLE_A, and CS3.TABLE_A.
  • the part of the view that accesses a database table (e.g., SELECT ⁇ fieldlist> FROM CS1.TABLE_A) is replaced by an access of the same table in multiple source databases (312A, 312B, 312C).
  • the result is stored as a new view (the meta view 126) in a content package in a user namespace.
  • Users can specify different source database selections for different types of mobile telecommunication devices 120 such as Smartphones, tabloid computers or notebooks. Accordingly, different kinds of meta views capable of generating different kinds of cross system reports may be generated.
  • the selection of the source databases in the configuration may be user-specific, it may be possible to get a 'user specific' sight on the data.
  • the meta view is generated as follows: data of the connected computer systems 110 are replicated to the in-memory database.
  • the customer/user specifies the in-memory database schemas 160 and corresponding source databases that are to be considered for the cross system report generation in a configuration.
  • the customer may also specify the selection of source databases in a device type or user group specific manner.
  • Fig. 4 illustrates a configuration comprising some user specific and device specific settings and selections of some of the source databases 112.A-112.C.
  • some user-IDs or group-IDs may be specified.
  • a user may have assigned user-ID 2355.
  • one or more device types may be specified.
  • the device types specify the type of a mobile telecommunication device 120 assigned to a user, whereby said device type may be indicative of the display size.
  • the configuration may comprise a selection of one or more of the plurality of source databases 112.A, 112.B, 112.C from which data shall be retrieved when generating a cross-system report.
  • each of the source databases identified in a table column 346 may have assigned a respective database schema stored e.g. in a further column 348 of the configuration.
  • Each schema may specify the columnar data structure of a respective one of the source database specific views.
  • the schemas may be user-modifiable.
  • the schemas may be evaluated by the processor 119 for automatically creating further database views 122 whose schema is identical to an existing database view 112.
  • the processor may evaluate the schemas in order to automatically assemble a meta view capable of retrieving data from the selected source databases by calling the respective database views assigned to the selected source databases in the configuration 127.
  • the schema may specify the column and table names of the source databases from which data for a source database specific report shall be retrieved. By adding, modifying or removing column names and table names in the schema, the user may trigger the automated re-creation of a respective database view.
  • FIG. 5 illustrates in a block diagram the above-disclosed processes and mechanisms for generating analytic reports on a computer system, and in particular, a computer system that includes an in-line memory database for the generation of the a cross-system report.
  • FIG. 5 may reorder the blocks, omit one or more blocks, and/or execute two or more blocks in parallel using multiple processors or a single processor organized as two or more virtual machines or sub-processors.
  • still other examples can implement the blocks as one or more specific interconnected hardware or integrated circuit modules with related control and data signals communicated between and through the modules.
  • any process flow is applicable to software, firmware, hardware, and hybrid implementations. Referring now specifically to FIG.
  • a plurality of database tables are replicated from a plurality of computer systems 110.A-110.C via a network to the in-memory database.
  • Each of the plurality of database tables or their replicated copy is associated with its respective source computer system, and each source computer system is associated with a particular database schema.
  • the plurality of computer systems includes one or more legacy systems, i.e., systems whose software based program logic cannot or shall not be changed at all or only to a very small degree.
  • each of the plurality of database tables of at least one source database is stored in the in-memory database according to the particular schema assigned to said source database.
  • Operations 605, 606, 610, and 611 permit a replication of multiple source databases to an in-memory database via a network.
  • a plurality of database views is created and stored in the in-memory database.
  • Each of the plurality of views 112 is associated with a particular database schema 160.
  • one or more of the database views have assigned multiple database schemas that may be used in dependence on the user having requested the cross system report.
  • a configuration table is generated comprising the particular schemas of each of the source databases of the plurality of computer systems.
  • An example implementation of the configuration table 127 is illustrated in Fig. 4 .
  • the software vendor delivers the configuration table to its customers and the customers create entries in the configuration table. These customer-created entries specify which of the source databases shall be covered by a cross-system report.
  • the configuration table of the particular source databases of each of the plurality of computer systems is displayed on a display of a mobile telecommunication device.
  • the user having modified the configuration may be a customer of a software vendor of the source database software.
  • a selection of one or more source databases from the display is received by a processor of a server hosting the in-memory database.
  • the entries selected or entered by a user are stored on a database and are therefore available for the generation of views.
  • a database view from one of the selected source databases used as a template to generate a view for all of the selected source databases for creating the meta view.

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)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Claims (14)

  1. Vernetztes Datenbanksystem (100), umfassend:
    - einen Computerprozessor (119);
    - eine In-Memory-Datenbank (121);
    - eine Netzschnittstelle (113) zum Koppeln der In-Memory-Datenbank mit einer Vielzahl von Computersystemen (110.A-110.C) über ein Telekommunikationsnetz (117), wobei jedes der Computersysteme eine Quelldatenbank (112.A-112.C) umfasst;
    - eine Konfiguration (127), die eine Auswahl von einer oder mehreren der Quelldatenbanken umfasst, wobei jeder von den Quelldatenbanken, die für die Konfiguration ausgewählt worden sind, ein Datenbankschema (160.A-160.C) zugeordnet ist, wobei jedes Schema angibt, wie die in der Quelldatenbank enthaltenen Daten organisiert sind;
    - eine Schnittstelle (115) zu einer tragbaren, batteriebetriebenen Telekommunikationsvorrichtung (120) eines Anwenders (101), wobei die Schnittstelle den Anwender in die Lage versetzt, die Auswahl in der Konfiguration zu modifizieren;
    wobei die In-Memory-Datenbank umfasst:
    ∘ für jede der Quelldatenbanken (112.A-112.C) eine Datenbankansicht (122.A-122.C), die zu der Quelldatenbank gehört, wobei jede Datenbankansicht Programmlogik umfasst, die dafür ausgelegt ist, als Antwort auf einen an sie ergangenen Aufruf einen Bericht für die zugeordnete Quelldatenbank zu erzeugen, wobei die Erzeugung des Berichts ein Abrufen von Daten aus mindestens einer Datenbanktabelle umfasst, wobei die mindestens eine Datenbanktabelle in der Quelldatenbank gespeichert ist und/oder in der In-Memory-Datenbank als Kopie einer Datenbanktabelle der Quelldatenbank gespeichert ist;
    wobei der Prozessor für Folgendes ausgelegt ist:
    - automatisch Evaluieren der Konfiguration (127) zur Erkennung von zwei oder mehr der ausgewählten Quelldatenbanken, die ein Datenbankschema gemeinsam haben;
    - automatisch Erkennen mindestens einer der Datenbankansichten, die dafür ausgelegt sind, Daten aus einer der durch das Evaluieren erkannten Quelldatenbanken abzurufen, und die im Augenblick der Evaluierung bereits in der In-Memory-Datenbank enthalten sind;
    - automatisch Erkennen einer oder mehrerer der durch das Evaluieren erkannten Quelldatenbanken, für die der In-Memory-Datenbank eine entsprechende Datenbankansicht, die dafür ausgelegt ist, Daten aus der Quelldatenbank abzurufen, fehlt;
    - automatisch Erzeugen der Datenbankansichten, die dafür ausgelegt sind, Daten aus der einen oder den mehreren erkannten Datenbanken abzurufen, durch:
    ▪ Erzeugen einer Kopie der Programmlogik der mindestens einen erkannten Datenbankansicht für die eine oder für jede von den mehreren erkannten Quelldatenbanken;
    ▪ Modifizieren der erzeugen Kopien, um zu bewirken, dass die modifizierte Programmlogik Daten aus der einen oder den mehreren erkannten Quelldatenbanken abruft;
    - Empfangen einer Anfrage (Q) nach Erstellung eines systemübergreifenden Berichts (230) von der Telekommunikationsvorrichtung über das Telekommunikationsnetz (117), wobei der systemübergreifende Bericht Daten umfasst, die über mehreren der Quelldatenbanken gespeichert sind;
    - als Antwort auf den Empfang der Anfrage: Evaluieren der Konfiguration für ein automatisches Erzeugen einer Meta-Ansicht (126), wobei die Meta-Ansicht eine weitere Datenbankansicht der In-Memory-Datenbank ist, und Erzeugen der Meta-Ansicht, wobei die Meta-Ansicht Programmlogik umfasst, die dafür ausgelegt ist, den systemübergreifenden Bericht zu erzeugen durch:
    ∘ selektives Aufrufen der Datenbankansichten, die zu den in der Konfiguration ausgewählten Quelldatenbanken gehören, auf einen an die Meta-Ansicht ergangenen Aufruf hin, wodurch selektiv Daten aus den ausgewählten Quelldatenbanken abgerufen werden, und
    ∘ Kombinieren der Daten, die durch die einzelnen aufgerufenen Datenbankansichten abgerufen werden, durch Ausführen einer Datenbankoperation, die in einem In-Memory-DBMS implementiert ist, das die In-Memory-Datenbank betätigt, wodurch der systemübergreifende Bericht bereitgestellt wird;
    - als Antwort auf den Empfang der Anfrage: automatisches Aufrufen der erstellten Meta-Ansicht zur Erstellung des systemübergreifenden Berichts; und
    - Rücksenden einer Antwort (R) an die Telekommunikationsvorrichtung (120) über das Telekommunikationsnetz, wobei die Antwort den erstellten systemübergreifenden Bericht umfasst.
  2. Datenbanksystem nach Anspruch 1,
    wobei der Prozessor für Folgendes ausgelegt ist:
    - Evaluieren der Anfrage (Q) der Telekommunikationsvorrichtung zur Erkennung einer geschätzten Anzeigegröße der Telekommunikationsvorrichtung;
    - automatisch Modifizieren der Konfiguration, wobei die Anzahl der Quelldatenbanken, die in der modifizierten Konfiguration ausgewählt werden, umso größer ist, je größer die geschätzte Anzeigegröße ist.
  3. Datenbanksystem nach einem der vorangehenden Ansprüche,
    - wobei die Telekommunikationsvorrichtung eine von einer Vielzahl von Telekommunikationsvorrichtungen ist, die jeweils über das Telekommunikationsnetz betriebsmäßig mit der In-Memory-Datenbank gekoppelt sind;
    - wobei die Konfiguration für jede der Telekommunikationsvorrichtungen eine Spezifikation der einen oder der mehreren ausgewählten Quelldatenbanken umfasst, die zu einem Vorrichtungstyp der Telekommunikationsvorrichtung gehören;
    wobei der Prozessor für Folgendes ausgelegt ist:
    - auf den Empfang der Anfrage (Q) nach dem systemübergreifenden Bericht von einer der Telekommunikationsvorrichtungen hin: Evaluieren der Konfiguration zur Erkennung der einen oder der mehreren ausgewählten Datenbanken, die zu der Telekommunikationsvorrichtung gehören; und
    - Verwenden der erkannten ausgewählten Quelldatenbanken zur Erzeugung einer für den Typ der Telekommunikationsvorrichtung spezifischen Version der Meta-Ansicht, wobei die für den Typ der Telekommunikationsvorrichtung spezifische Version der Meta-Ansicht dafür ausgelegt ist, Daten aus mindestens einer Datenbanktabelle der einen oder jeder der mehreren erkannten ausgewählten Quelldatenbanken abzurufen.
  4. Datenbanksystem nach einem der vorangehenden Ansprüche,
    - wobei die eine oder jede von den mehreren Datenbankansichten (122.A-122.C) ein Wurzelknoten eines hierarchischen Graphen untereinander verbundener Knoten ist; und
    - wobei die untereinander verbundenen Knoten von jedem der hierarchischen Graphen eine oder mehrere von den Datenbanktabellen umfassen, deren Daten durch die Datenbankansicht, die als der Wurzelknoten agiert, abgerufen werden, nachdem sie aufgerufen worden ist, wobei die untereinander verbundenen Knoten von jedem der hierarchischen Graphen eine oder mehrere weitere Datenbankansichten umfassen, wobei jede von den weiteren Datenbankansichten dafür ausgelegt ist, Daten aus einer oder mehreren der Datenbanktabellen des hierarchischen Graphen abzurufen, nachdem sie von einer anderen der weiteren Datenbankansichten oder von der Wurzelknotenansicht des hierarchischen Graphen aufgerufen worden ist;
    - wobei zumindest ein erster von den hierarchischen Graphen Datenbanktabellen umfasst, die jeweils als Knoten des ersten hierarchischen Graphen agieren, wobei die Datenbanktabellen in der In-Memory-Datenbank gespeichert sind und eine Kopie von Datenbanktabellen in einer der Quelldatenbanken darstellen; und
    - wobei mindestens ein zweiter der hierarchischen Graphen Datenbanktabellen umfasst, die jeweils als Knoten des zweiten hierarchischen Graphen agieren, wobei die Datenbanktabellen in einer der Quelldatenbanken gespeichert sind, und wodurch die Daten, die aus den Datenbanktabellen abgerufenen werden, als Antwort auf einen an den Wurzelknoten des zweiten hierarchischen Graphen ergehenden Aufruf über das Telekommunikationsnetz aus den Datenbanktabellen abgerufen werden; und
    - wobei das Aufrufen der einzelnen Datenbankansichten durch die Meta-Ansicht das Aufrufen der weiteren Datenbankansichten des hierarchischen Graphen auf kaskadische Weise, beginnend mit der Ausführung des Wurzelknotens, und das Rücksenden der abgerufenen Daten aus den Datenbanktabellen, die Knoten des hierarchischen Graphen darstellen, umfasst.
  5. Datenbanksystem nach einem der vorangehenden Ansprüche,
    - wobei jeder der Datenbankansichten Zugriffserlaubnisinformationen zugeordnet sind;
    - wobei der Anfrage (Q) nach Erzeugung des systemübergreifenden Berichts eine Anwender-ID oder eine Gruppen-ID des Anwenders zugeordnet ist; und
    - wobei das automatische Erzeugen der Meta-Ansicht umfasst: Evaluieren der Zugriffserlaubnisse, die den Datenbankansichten zugeordnet sind, die zu der einen oder den mehreren in der Konfiguration ausgewählten Quelldatenbanken gehören, und Erzeugen der Meta-Ansicht so, dass die erzeugte Meta-Ansicht dafür ausgelegt ist, auf einen Aufruf an die Meta-Ansicht hin, die Datenbankansichten, die zu der einen oder den mehreren in der Konfiguration ausgewählten Quelldatenbanken gehören und denen Zugriffserlaubnisinformationen zugeordnet sind, die angeben, dass der Anwender, dem die Anwender-ID oder Gruppen-ID zugeordnet ist, die Erlaubnis hat, auf die Datenbankansicht zuzugreifen, selektiv aufzurufen.
  6. Datenbanksystem nach einem der vorangehenden Ansprüche, wobei das Erzeugen der Meta-Ansicht umfasst:
    - innerhalb von jeder der Datenbankansichten, die einer der in der Konfiguration ausgewählten Quelldatenbanken zugeordnet sind: automatisch Erkennen einer Datenbank-Unterabfrage, die für folgendes ausgelegt ist:
    ∘ Abrufen von Daten aus einer der Quelldatenbanken über das Telekommunikationsnetz; oder
    ∘ Abrufen von Daten aus einer Kopie der einen Quelldatenbank, wobei die Kopie in der In-Memory-Datenbank gespeichert ist,
    - Kombinieren der erkannten Unterabfragen zur Erzeugung einer kombinierten Datenbankabfrage, wobei die kombinierte Datenbankabfrage Teil der Programmlogik der Meta-Ansicht ist, wobei die Programmlogik dafür ausgelegt ist, den systemübergreifenden Bericht zu erstellen.
  7. Datenbanksystem nach einem der vorangehenden Ansprüche, wobei jeder von den Quelldatenbanken, die in der Konfiguration ausgewählt sind, ein Datenbankschema (160.A-160.C) zugeordnet ist, gemäß dem die Daten, die in der Quelldatenbank enthalten sind, organisiert sind, wobei der Prozessor ferner für Folgendes ausgelegt ist:
    - automatisch Evaluieren der Konfiguration zur Erkennung einer ersten ausgewählten (112.A) von den Quelldatenbanken, der ein erstes Schema (160.A) zugeordnet ist, und einer zweiten ausgewählten (112.B) von den Quelldatenbanken, der ein zweites Schema (160.B) zugeordnet ist, wobei die Spaltennamen des ersten Schemas ein Untersatz der Spaltennamen des zweiten Schemas sind.
    - automatisch Erkennen von Spaltennamen von Tabellen der zweiten Quelldatenbank, die in dem zweiten Schema enthalten sind und die im ersten Schema nicht vorhanden sind;
    - automatisch Erzeugen einer der Datenbankansichten, die dafür ausgelegt ist, Daten aus der zweiten Datenbanken abzurufen, durch:
    ∘ automatisch Erzeugen einer Kopie der Datenbankansicht, die dafür ausgelegt ist, Daten aus der erkannten ersten Quelldatenbank abzurufen;
    ∘ automatisch Modifizieren der Kopie, um zu bewirken, dass die modifizierte Programmlogik Daten aus der zweiten Quelldatenbank oder aus einer Kopie der zweiten Quelldatenbank, die in der In-Memory-Datenbank gespeichert ist, abruft, wodurch die Programmlogik der kopierten Datenbankansicht mit einer oder mehreren WÄHLEN-Bedingungen (312.A) ergänzt wird, in denen die erkannten Spaltennamen adressiert werden.
  8. Datenbanksystem nach einem der vorangehenden Ansprüche, wobei der Prozessor für Folgendes ausgelegt ist:
    - Empfangen von Kopien der Datenbanktabellen der Quelldatenbanken aus den Computersystemen;
    - Speichern der empfangenen Kopien der Datenbanktabellen in der In-Memory-Datenbank;
    - Ergänzen der kopierten Datenbanktabellen mit der einen von den Datenbankansichten, die dafür ausgelegt ist, Daten aus den kopierten Datenbanktabellen abzurufen, und Ergänzen der kopierten Datenbanktabellen mit weiteren Datenbankansichten, wobei die kopierten Datenbanktabellen, die eine Datenbankansicht und die weiteren Datenbankansichten einen hierarchischen Graphen untereinander verbundener Knoten darstellen, wobei die Datenbankansicht, die dafür ausgelegt ist, Daten aus den Kopien der Datenbanktabellen abzurufen, als Wurzelknoten des hierarchischen Graphen agiert.
  9. Datenbanksystem nach Anspruch 8,
    - wobei die Quelldatenbank mindestens zwei von den hierarchischen Graphen umfasst, die sich in ihrer Knotenstruktur und/oder Knotenzahl und/oder Knotentopologie voneinander unterscheiden; und
    - wobei die Struktur aller Datenbankansichten (112) und die Struktur der Meta-Ansicht von einem gemeinsamen Datenbankschema (160) spezifiziert werden.
  10. Datenbanksystem nach einem der vorangehenden Ansprüche, wobei der Prozessor dazu dient, die Meta-Ansicht automatisch unter Einbeziehung modifizierter Kopien von Datenbankabfrageanweisungen in die Programmlogik der Meta-Ansicht zu erzeugen, wobei die kopierten Datenbankabfrageanweisungen ursprünglich in der Programmlogik der Datenbankansichten enthalten sind, die dafür ausgelegt sind, Daten aus der einen oder den mehreren in der Konfiguration ausgewählten Quelldatenbanken abzurufen.
  11. Datenbanksystem nach einem der vorangehenden Ansprüche, wobei der Prozessor dazu dient, die Datenbankansichten zu erzeugen und/oder die Meta-Ansicht zu erzeugen unter Verwendung einer Datenbankabfrageanweisung (311), die in einem In-Memory-DBMS implementiert ist, das die In-Memory-Datenbank betätigt.
  12. Datenbanksystem nach einem der vorangehenden Ansprüche, wobei
    - mindestens eine von den Datenbankansichten auf einen an sie ergangenen Aufruf hin die Daten aus den Kopien der Datenbanktabellen abruft, wobei die Kopien der Datenbanktabellen automatisch aus Datenbanktabellen von einer der Quelldatenbanken erzeugt und automatisch von der Quelldatenbank auf die In-Memory-Datenbank übertragen worden sind, und/oder
    - mindestens eine weitere von den Datenbankansichten auf einen an sie ergangenen Aufruf hin die Daten aus Datenbanktabellen einer anderen von den Quelldatenbanken abruft, durch Zugreifen auf die Quelldatenbank, die auf einem der Computersysteme gehostet ist, über das Telekommunikationsnetz.
  13. Computerimplementiertes Berichtserstellungsverfahren, umfassend:
    - Bereitstellen eines vernetzten Datenbanksystems (100), das eine In-Memory-Datenbank (121) hostet, wobei das vernetzte Datenbanksystem über ein Telekommunikationsnetz (117) betriebsmäßig mit einer Vielzahl von Computersystemen (110.A-110.C) gekoppelt ist, wobei jedes Computersystem eine Quelldatenbank (112.A-112.C) umfasst, wobei die In-Memory-Datenbank für jede der Quelldatenbanken eine Datenbankansicht (122.A-122.C) umfasst, jede Datenbankansicht zu der Quelldatenbank gehört, jede Datenbankansicht Programmlogik umfasst, die dafür ausgelegt ist, als Antwort auf einen an sie ergangenen Aufruf einen Bericht für die Quelldatenbank zu erzeugen, wobei die Erzeugung des Berichts das Abrufen von Daten aus mindestens einer Datenbanktabelle umfasst, wobei die mindestens eine Datenbanktabelle in der Quelldatenbank gespeichert ist und/oder als Kopie einer Datenbanktabelle der Quelldatenbank in der In-Memory-Datenbank gespeichert ist;
    - Modifizieren einer Auswahl einer oder mehrerer von den Quelldatenbanken einer Konfiguration (127) des vernetzten Datenbanksystems über eine Schnittstelle (115) durch eine tragbare, batteriebetriebene Telekommunikationsvorrichtung (120) eines Anwenders (101), wobei die Auswahl in der Konfiguration des vernetzten Datenbanksystems gespeichert ist, wobei jeder von den Quelldatenbanken, die in der Konfiguration ausgewählt sind, ein Datenbankschema (160.A-160.C) zugeordnet ist, wobei jedes Schema angibt, wie die in der Quelldatenbank enthaltenen Daten organisiert sind;
    - automatisch Evaluieren der Konfiguration (127) zur Erkennung von zwei oder mehr der ausgewählten Quelldatenbanken, die ein Datenbankschema gemeinsam haben;
    - automatisch Erkennen mindestens einer der Datenbankansichten, die dafür ausgelegt sind, Daten aus einer der durch das Evaluieren erkannten Quelldatenbanken abzurufen, und die im Augenblick der Evaluierung bereits in der In-Memory-Datenbank enthalten sind;
    - automatisch Erkennen einer oder mehrerer der durch das Evaluieren erkannten Quelldatenbanken, für die der In-Memory-Datenbank eine entsprechende Datenbankansicht, die dafür ausgelegt ist, Daten aus der Quelldatenbank abzurufen, fehlt;
    - automatisch Erzeugen der Datenbankansichten, die dafür ausgelegt sind, Daten aus der einen oder den mehreren erkannten Datenbanken abzurufen, durch:
    ▪ Erzeugen einer Kopie der Programmlogik der mindestens einen erkannten Datenbankansicht für die eine oder für jede von den mehreren erkannten Quelldatenbanken;
    ▪ Modifizieren der erzeugen Kopien, um zu bewirken, dass die modifizierte Programmlogik Daten aus der einen oder den mehreren erkannten Quelldatenbanken abruft;
    - Empfangen einer Anfrage (Q) nach Erstellung eines systemübergreifenden Berichts (230) von der Telekommunikationsvorrichtung über das Telekommunikationsnetz, wobei der systemübergreifende Bericht Daten umfasst, die über mehreren der Quelldatenbanken gespeichert sind;
    - als Antwort auf den Empfang der Anfrage: Evaluieren der Konfiguration zum automatischen Erzeugen einer Meta-Ansicht (126), wobei die Meta-Ansicht eine weitere Datenbankansicht der In-Memory-Datenbank ist und Programmlogik umfasst, die dafür ausgelegt ist, den systemübergreifenden Bericht zu erzeugen durch:
    ∘ selektives Aufrufen der Datenbankansichten, die zu den in der Konfiguration ausgewählten Quelldatenbanken gehören, auf einen an die Meta-Ansicht ergangenen Aufruf hin, wodurch selektiv Daten aus den ausgewählten Quelldatenbanken abgerufen werden, und
    ∘ Kombinieren der Daten, die durch die einzelnen aufgerufenen Datenbankansichten abgerufen werden, durch Ausführen einer Datenbankoperation, die von der In-Memory-DBMS bereitgestellt wird, um den systemübergreifenden Bericht bereitzustellen;
    - als Antwort auf den Empfang der Anfrage: automatisches Erzeugen der Meta-Ansicht und Aufrufen der erstellten Meta-Ansicht zur Erstellung des systemübergreifenden Berichts; und
    - Rücksenden einer Antwort (R) an die Telekommunikationsvorrichtung über das Telekommunikationsnetz, wobei die Antwort den erstellten systemübergreifenden Bericht umfasst.
  14. Computerlesbares Medium (152), das Befehle umfasst, die bei ihrer Ausführung durch einen Prozessor (119) bewirken, dass der Prozessor ein Verfahren nach Anspruch 13 ausführt.
EP14190178.5A 2013-10-30 2014-10-23 Vernetztes datenbanksystem Active EP2869220B1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US14/067,187 US9305034B2 (en) 2013-10-30 2013-10-30 Enhanced reporting system

Publications (2)

Publication Number Publication Date
EP2869220A1 EP2869220A1 (de) 2015-05-06
EP2869220B1 true EP2869220B1 (de) 2019-07-17

Family

ID=51794775

Family Applications (1)

Application Number Title Priority Date Filing Date
EP14190178.5A Active EP2869220B1 (de) 2013-10-30 2014-10-23 Vernetztes datenbanksystem

Country Status (2)

Country Link
US (1) US9305034B2 (de)
EP (1) EP2869220B1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230140122A1 (en) * 2021-10-29 2023-05-04 Sap Se Data plane authorization

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9712405B2 (en) * 2015-03-31 2017-07-18 Sap Se Integrated reporting for on-demand and on-premise solutions
US9875276B2 (en) * 2015-06-15 2018-01-23 Sap Se Database view generation
US9922085B2 (en) * 2015-07-30 2018-03-20 Sap Se Template based generation of cross views
US11544239B2 (en) * 2018-11-13 2023-01-03 Thoughtspot, Inc. Low-latency database analysis using external data sources
US11586620B2 (en) 2019-07-29 2023-02-21 Thoughtspot, Inc. Object scriptability
US11379495B2 (en) 2020-05-20 2022-07-05 Thoughtspot, Inc. Search guidance
US11580111B2 (en) 2021-04-06 2023-02-14 Thoughtspot, Inc. Distributed pseudo-random subset generation

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060173873A1 (en) * 2000-03-03 2006-08-03 Michel Prompt System and method for providing access to databases via directories and other hierarchical structures and interfaces
US7380250B2 (en) 2001-03-16 2008-05-27 Microsoft Corporation Method and system for interacting with devices having different capabilities
US20040024867A1 (en) 2002-06-28 2004-02-05 Openwave Systems Inc. Method and apparatus for determination of device capabilities on a network
US7644361B2 (en) * 2002-12-23 2010-01-05 Canon Kabushiki Kaisha Method of using recommendations to visually create new views of data across heterogeneous sources
US7007033B1 (en) * 2003-04-28 2006-02-28 Microsoft Corporation Management of markup language data mappings available to a spreadsheet application workbook
US9690811B1 (en) * 2003-11-05 2017-06-27 Hewlett Packard Enterprise Development Lp Single repository manifestation of a multi-repository system
US7457817B2 (en) * 2003-12-12 2008-11-25 Oracle International Corporation Versioning in an integration platform
US7475093B2 (en) * 2004-10-15 2009-01-06 Microsoft Corporation Memory cache management in XML/relational data mapping
EP1818813A1 (de) * 2006-02-02 2007-08-15 Research In Motion Limited System, Verfahren und Vorrichtung zur Verwendung von UML-Tools zur Definition von webdienstgebundenen Komponentenanwendungen
WO2008143855A2 (en) * 2007-05-14 2008-11-27 Dataupia, Inc. Network-attached storage devices
US20090070121A1 (en) * 2007-09-11 2009-03-12 Jean-Baptiste Leonelli System, Method And Graphical User Interface For Workflow Generation, Deployment And/Or Execution
US10997531B2 (en) * 2007-09-11 2021-05-04 Ciambella Ltd. System, method and graphical user interface for workflow generation, deployment and/or execution
EP2040180B1 (de) 2007-09-24 2019-01-16 Hasso-Plattner-Institut für Digital Engineering gGmbH ETL-loses null-redundantes System und Verfahren zum Melden von OLTP-Daten
US8560568B2 (en) 2008-08-26 2013-10-15 Zeewise, Inc. Remote data collection systems and methods using read only data extraction and dynamic data handling
US20100094716A1 (en) * 2008-10-15 2010-04-15 Ganesan Chandramouli Method and computer-readable storage media to determine and access provisioning services
US20100235725A1 (en) * 2009-03-10 2010-09-16 Microsoft Corporation Selective display of elements of a schema set
US8650150B2 (en) * 2011-03-14 2014-02-11 Sap Ag System and method of relating data and generating reports

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230140122A1 (en) * 2021-10-29 2023-05-04 Sap Se Data plane authorization

Also Published As

Publication number Publication date
US9305034B2 (en) 2016-04-05
EP2869220A1 (de) 2015-05-06
US20150120785A1 (en) 2015-04-30

Similar Documents

Publication Publication Date Title
US20230376487A1 (en) Processing database queries using format conversion
EP2869220B1 (de) Vernetztes datenbanksystem
US10545992B2 (en) Accelerator based data integration
US8655861B2 (en) Query metadata engine
CA2754915C (en) Method and system of unifying data
US20190121819A1 (en) Relational modeler and renderer for non-relational data
EP2577507B1 (de) Automatisierung von data-marts
US20140337373A1 (en) System for managing graph queries on relationships among entities using graph index
US20170139891A1 (en) Shared elements for business information documents
US9805137B2 (en) Virtualizing schema relations over a single database relation
US10289622B2 (en) Ranking using data of continuous scales
US20110066654A1 (en) operationally complete hierarchical repository in a relational database
US20100235344A1 (en) Mechanism for utilizing partitioning pruning techniques for xml indexes
US20090077012A1 (en) Displaying relevant abstract database elements
US9177037B2 (en) In-memory runtime for multidimensional analytical views
US8090737B2 (en) User dictionary term criteria conditions
US8316013B2 (en) Programmatic retrieval of tabular data within a cell of a query result
US10311049B2 (en) Pattern-based query result enhancement
Silva et al. Logical big data integration and near real-time data analytics
US11048695B2 (en) Context-aware data commenting system
US10558637B2 (en) Modularized data distribution plan generation
US20200004848A1 (en) Semantic layer generation
US10769164B2 (en) Simplified access for core business with enterprise search
Popa Heterogeneous database integration using hibernate mapping files

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20141023

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

R17P Request for examination filed (corrected)

Effective date: 20150616

RBV Designated contracting states (corrected)

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20170725

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20181207

GRAJ Information related to disapproval of communication of intention to grant by the applicant or resumption of examination proceedings by the epo deleted

Free format text: ORIGINAL CODE: EPIDOSDIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

GRAJ Information related to disapproval of communication of intention to grant by the applicant or resumption of examination proceedings by the epo deleted

Free format text: ORIGINAL CODE: EPIDOSDIGR1

INTC Intention to grant announced (deleted)
INTC Intention to grant announced (deleted)
REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Ref document number: 602014050073

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016270000

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 16/28 20190101ALI20190405BHEP

Ipc: G06F 16/27 20190101AFI20190405BHEP

INTG Intention to grant announced

Effective date: 20190426

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602014050073

Country of ref document: DE

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 1156492

Country of ref document: AT

Kind code of ref document: T

Effective date: 20190815

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20190717

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 1156492

Country of ref document: AT

Kind code of ref document: T

Effective date: 20190717

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191017

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191118

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191017

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191018

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20191117

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20200224

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602014050073

Country of ref document: DE

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG2D Information on lapse in contracting state deleted

Ref country code: IS

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20191031

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20191031

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20191023

26N No opposition filed

Effective date: 20200603

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20191031

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20191031

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20191023

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20141023

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20190717

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20231020

Year of fee payment: 10

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20231025

Year of fee payment: 10

Ref country code: DE

Payment date: 20231020

Year of fee payment: 10