incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alan Cabrera <l...@toolazydogs.com>
Subject Re: [VOTE] Accept Apache MetaModel into the Apache incubator
Date Sun, 09 Jun 2013 02:59:41 GMT
+1 - binding


Regards,
Alan

On Jun 6, 2013, at 3:30 PM, Henry Saputra <henry.saputra@gmail.com> wrote:

> Hi All,
> 
> I'd like to call a VOTE for acceptance of MetaModel into the Apache
> incubator.
> The vote will close on June 12, 2013 at 6:00 PM (PST).
> 
> [] +1 Accept MetaModel into the Apache incubator
> [] +0 Don't care.
> [] -1 Don't accept MetaModel into the incubator because...
> 
> Full proposal is pasted at the bottom on this email, and the corresponding wiki
> is:
> http://wiki.apache.org/incubator/MetaModelProposal.
> 
> Only VOTEs from Incubator PMC members are binding, but all are welcome to
> express their thoughts.
> 
> Thanks,
> 
> Henry Saputra
> Champion for Apache MetaModel
> 
> 
> P.S. Here's my +1 (binding)
> 
> 
> -------------------------------------------------
> 
> = MetaModel – uniform data access across datastores =
> 
> Proposal for Apache Incubator
> 
> == Abstract ==
> 
> MetaModel is a data access framework, providing a common interface for
> exploration and querying of different types of datastores.
> 
> == Proposal ==
> 
> MetaModel provides a uniform meta-model for exploring and querying the
> structure of datastores, covering but not limited to relational databases,
> various data file formats, NoSQL databases, Salesforce.com, SugarCRM and
> more. The scope of the project is to stay domain-agnostic, so the
> meta-model will be concerned with schemas, tables, columns, rows,
> relationships etc.
> 
> On top of this meta-model a rich querying API is provided which resembles
> SQL, but built using compiler-checked Java language constructs. For
> datastores that do not have a native SQL-compatible query engine, the
> MetaModel project also includes an abstract Java-based query engine
> implementation which individual datastore-modules can adapt to fit the
> concrete datastore.
> 
> === Background ===
> 
> The MetaModel project was initially developed by eobject.dk to service the
> DataCleaner application (http://datacleaner.org). The main requirement was
> to perform data querying and modification operations on a wide range of
> quite different datastores. Furthermore a programmatic query model was
> needed in order to allow different components to influence the query plan.
> 
> In 2009, Human Inference acquired the eobjects projects including
> MetaModel. Since then MetaModel has been put to extensive use in the Human
> Inference products. The open source nature of the project was reinforced,
> leading to a significant growth in the community.
> 
> MetaModel has successfully been used in a number of other open source
> projects as well as mission critical commercial software from Human
> Inference. Currently MetaModel is hosted at http://metamodel.eobjects.org.
> 
> === Rationale ===
> 
> Different types of datastores have different characteristics, which always
> lead to the interfaces for these being different from one another.
> Standards like JDBC and the SQL language attempt to standardize data
> access, but for some datastore types like flat files, spreadsheets, NoSQL
> databases and more, such standards are not even implementable.
> 
> Specialization in interfaces obviously has merit for optimized usage, but
> for integration tools, batch applications and or generic data modification
> tools, this myriad of specialized interfaces is a big pain. Furthermore,
> being able to query every datastore with a basic set of SQL-like features
> can be a great productivity boost for a wide range of applications.
> 
> === Initial goals ===
> 
> MetaModel is already a stable project, so initial goals are more oriented
> towards an adaption to the Apache ecosystem than about functional changes.
> 
> We are constantly adding more datastore types to the portfolio, but the
> core modules have not had drastic changes for some time.
> 
> Our focus will be on making ties with other Apache projects (such as POI,
> Gora, HBase and CouchDB) and potentially renaming the ‘MetaModel’ project
> to something more rememberable.
> This includes comply with Apache Software Foundation license for third
> party dependencies.
> 
> == Current status ==
> 
> === Meritocracy ===
> 
> We intend to do everything we can to encourage a meritocracy in the
> development of MetaModel. Currently most important development and design
> decisions have been made at Human Inference, but with an open window for
> anyone to participate on mailing lists and discussion forums. We believe
> that the approach going forward should be more encouraging by sharing all
> the design ideas and discussions in the open, not only just the topics that
> have been “dragged” into the open by third parties.  We believe that
> meritocracy will be further stimulated by granting the control of the
> project to an independent committee.
> 
> === Community ===
> 
> The community around MetaModel already exists, but we believe it will grow
> substantially by becoming an Apache project. With MetaModel used in a wide
> range of both open and closed source application, both at Human Inference
> (HIquality MDM), it’s open source projects DataCleaner, SassyReader and
> AnalyzerBeans and by other parties (such as the Quipo data warehouse
> automation project), we believe that the critical mass to sustain a
> community is there.
> 
> === Core developers ===
> 
> MetaModel was founded by Kasper Sørensen in 2009. Later it was incorporated
> as a core library by Human Inference, meaning that more than 20 developers
> have been involved in its making in this commercial setting. Furthermore a
> smaller number of contributors have submitted patches for the library.
> Others have started building other interesting data-oriented libraries on
> top of MetaModel, for instance the ‘vasc’ open source project by Willem
> Cazander, which is an implementation of the Java Persistence API (JPA) for
> all the datastores supported by MetaModel.
> 
> === Alignment ===
> 
> MetaModel already makes good usage of existing Apache projects such as POI,
> CouchDB and OpenOffice. Furthermore developers from the Apache Gora project
> have indicated a need for a project like MetaModel to solve specific
> uniform datastore access needs.
> 
> == Known risks ==
> 
> === Orphaned products ===
> 
> The contributors and the contributing organization (Human Inference) have a
> very strong dependence on MetaModel already and will continue to have that
> for a long time. The continued need for this vendor to support new types of
> datastores and maintain existing functionality will ensure that MetaModel
> is not in the risk of being orphaned.
> 
> === Inexperience with Open Source ===
> 
> MetaModel is already open source, and has been so for many years. Main
> contributors of the project have also contributed to other open source
> projects such as DataCleaner and Apache Mahout. The openness of Apache is
> arguably more extensive, but we are only encouraged and delighted to be
> handling the project in a more open manner.
> 
> === Homogenous Developers ===
> 
> Frequent committers are currently located in Denmark, The Netherlands and
> India. They are used to working in a distributed environment.
> 
> === Reliance on Salaried Developers ===
> 
> Initial committers for MetaModel will depends on salaried based developers
> to contribute to this project, but given the dependence on MetaModel from
> both commercial and open source projects, the project would continue
> without issue if no salaried developers contributed to the project.
> 
> The goal is build diverse community to contribute back to MetaModel project.
> 
> === Relationship with Other Apache Products ===
> 
> MetaModel depends on several Apache products including: commons-lang,
> commons-io, commons-codec, http-components, POI, CouchDB, OpenOffice and
> XMLBeans.
> 
> Furthermore MetaModel is built by Apache Maven.
> 
> === An Excessive Fascination with the Apache Brand ===
> 
> The ASF has a strong brand, and that brand is in itself very attractive.
> 
> We are interested in joining the ASF in order to increase our contacts and
> visibility in the open source world.
> Furthermore, we have been enthusiastic users of Apache Software Foundation
> projects, and would feel honored by getting the opportunity to join and
> contribute back to the community.
> 
> == Documentation ==
> 
> Information on MetaModel can be found at: http://metamodel.eobjects.org
> 
> === Initial source ===
> 
> MetaModel has been developed since 2009 and have undergone a couple of
> major changes (indicated by the 2.x and 3.x versions).
> 
> The code is used in mission critical systems and is considered very stable
> and high performing.
> 
> The source includes a fork of the xBaseJ project’s code, which will be
> removed upon incubation. This code was originally GPL licensed, but granted
> with a special license to MetaModel to be forked and relicensed using the
> current LPGL license of MetaModel.
> 
> Removal of the xBaseJ code will effectively mean that the Apache variant of
> MetaModel will not have support for dBase database files. We imagine that
> the dBase module could live on as a separate pluggable module under the
> LGPL license, outside of Apache.
> 
> === External dependencies ===
> 
> The dependencies all have Apache compatible licenses. These include BSD and
> MIT licensed dependencies.
> 
> == Required resources ==
> 
> === Mailing lists ===
> 
> * metamodel-private (with moderated subscription)
> * metamodel-dev
> * metamodel-commits
> 
> === Subversion directory ===
> A subversion (http://svn.apache.org/repos/asf/incubator/metamodel/trunk/)
> or git (https://git-wip-us.apache.org/repos/asf/incubator-metamodel.git)
> repository is needed.
> 
> Currently MetaModel’s code is hosted at
> http://eobjects.org/svn/MetaModelbut will be moved to an Apache
> repository.
> 
> === Issue tracking ===
> 
> JIRA MetaModel (METAMODEL)
> 
> === Other resources ===
> 
> We would like to have wiki page located at: http://wiki.apache.org/MetaModel
> 
> In later development phase a set of database servers (specifically MongoDB,
> CouchDB, MySQL, PostgreSQL, MS SQL Server (Express), Firebird) should be
> made available for integration testing.
> Currently this is done internally at Human Inference.
> 
> === Initial committers ===
> 
> Kasper Sørensen (i.am.kasper.sorensen [at] gmail.com), Project Founder,
> works at Human Inference
> 
> Ankit Kumar (ak.ankitkumar [at] gmail.com), works at Human Inference
> 
> Sameer Arora (sameer11sep [at] gmail.com)
> 
> Henry Saputra (hsaputra [at] apache.org)
> 
> Juan José van der Linden (delostilos [at] gmail.com), works for Quipu
> 
> Arvind Prabhakar (arvind at apache dot org)
> 
> Matt Franklin (mfranklin at apache dot org)
> 
> Noah Slater (nslater at apache dot org)
> 
> 
> == Sponsors ==
> 
> === Champion ===
> 
> Henry Saputra  (hsaputra at apache dot org)
> 
> === Nominated mentors ===
> 
> Henry Saputra  (hsaputra at apache dot org)
> 
> Arvind Prabhakar (arvind at apache dot org)
> 
> Matt Franklin (mfranklin at apache dot org)
> 
> Noah Slater (nslater at apache dot org)
> 
> === Sponsoring entity ===
> 
> The Apache Incubator.


---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
For additional commands, e-mail: general-help@incubator.apache.org


Mime
View raw message