The case is the databases and tables are not similar.

Sample case:
database1: city_population_data
database2:city_financial_data
database3: city_sports_data

while the 3 databases have SOME common information (cities), the other data
are not common.

so, in my application, I need to get cities data from diferent sources.

What I think to do is create a interface like phpmyadmin, that discover and
show the data from databases.
But, unlike phpmyadmin, is database neutral, so it can be conected to
postgresql and others databases.

>The last 4 operations are performed at the web2py level, not the db
>level so they may use lots memory and IO.

I think to improve performance, it can use temporary tables, kind of a
ad-hoc datawarehouse.



2010/10/2 mdipierro <mdipie...@cs.depaul.edu>

> say you have two databases
>
>  db1=DAL(...)
>  db2=DAL(...)
>
> and they contains a similar table
>
>  table1=db1.define_table('person',Field('name'))
>  table2=db2.define_table('person',table1) # same fields a table1
>
> and you want all records from both
>
>  rows=db(table1.id>0).select()&db(table2.id>0).select()
>
> now you can sort them by name
>
>  rows=rows.sort(lambda row: row.name)
>
> or you can get all records without duplicates
>
>  rows=db(table1.id>0).select()|db(table2.id>0).select()
>
> and filter those that start with 'a'
>
>  rows=rows.find(lambda row: row.name.startswith('a'))
>
> etc.
>
> The last 4 operations are performed at the web2py level, not the db
> level so they may use lots memory and IO.
>
>
> Massimo
>
>
>
>
>
> On Oct 2, 3:59 am, Alexandre Andrade <alexandrema...@gmail.com> wrote:
> > (this text was translated by google)
> >
> > Hi folks,
> >
> > I'll have to develop an application on my service that uses data from
> > several databases.
> >
> > I'm the one time looking for a way to solve this problem within the
> web2py
> > and the solution is pictured below.
> >
> > I wonder if anyone has a similar situation and considerations that would
> > have the following possible solution:
> >
> > --------------------------------------------------
> > --------------------------------------------------
> > ------------------
> >
> > A Universal Interface for Databases is a webservice that centralizes
> access
> > to all databases of a company.
> >
> > Although in most cases applications use only one database, on the whole,
> a
> > company has multiple databases.
> >
> > In many cases they are redundant and have duplicate information in
> several
> > ways.
> >
> > This means that in practice, developers or duplicate the information have
> to
> > create ad hoc solutions to integrate systems.
> >
> > This also requires that to generate management information, there is a
> need
> > to create "data warehouses" to gather all the information and extract
> > reports.
> >
> > The purpose of the UDI is to serve as sole access to all information from
> > all databases of the company.
> >
> > Thus, the developer connects your application to a single point, and
> calls
> > through the UDI all the information your application needs, as well as
> > forward all information necessary for the UDI provide storage.
> >
> > The functions of the IDU are:
> >
> >   0. Manage the connection and communication with all legacy databases.
> >   1. List all databases, tables and data fields available, with metadata,
> if
> > any
> >   2. Allow queries that retrieve information from different databases, as
> if
> > they were one (least of records)
> >   3. Let me set the mapping between the data required by the application
> > with the various databases in a visual interface, even to the programmer.
> >   4. Store information received as a single record distributing it in
> > different fields of databases and tables if needed.
> >   5. Setting a standard database application, which will store the
> mappings
> > of the data with all other existing databases, and to store the
> application
> > specific data, not available elsewhere.
> >   6.Possuir a tool for generating reports and dashboards for nontechnical
> > users.
> >
> > In web2py, it would be a standalone application as well as the admin, and
> > would be used in applications as a substitute for DAL, yet remains easy
> to
> > generate the forms.
> >
> > The big difference, and allows using data from several sources, is that
> the
> > data (tables and fields) present in other banks would not need to be
> > defined, but only mapped, and both the mapping and the possible creation
> of
> > tables and fields would be in a graphical interface.
> >
> > --
> > Atenciosamente
> >
> > --
> > =========================
> > Alexandre Andrade
> > Hipercenter.com
>



-- 
Atenciosamente

-- 
=========================
Alexandre Andrade
Hipercenter.com

Reply via email to