[ 
https://issues.apache.org/jira/browse/ATLAS-5220?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pinal Shah updated ATLAS-5220:
------------------------------
    Description: 
*Issue:*

Atlas server currently includes dependencies for multiple storage and index 
backends regardless of which backend is configured at runtime.

Storage backend:
 * HBase
 * Cassandra
 * RDBMS

Index backend:
 * Solr
 * Elasticsearch

*Purpose:*

Reduce Atlas server footprint by excluding unused backend/index libraries at 
build/package time, improving
 * eliminate potential dependent library version conflicts across different 
backend and index stores
 * classpath size
 * deployement size
 * container image size

*Impact (Low):*

With same artifact, user will not be able to switch the backends.

*Acceptance Criteria:*
 * Default server build: mvn -Pdist package produces war and distro package 
with HBase + Solr only.
 * Variant server build produces war and distro package containing only the 
selected backend/index deps.
 * Atlas starts without class-init failures when unused backend jars are absent.
 * WAR WEB-INF/lib does not contain unnecessary backend/index jars for the 
chosen profile.

*Areas to be modified:*
 * create profiles 
 * introduce properties for storage.backend, index.backend, audit.backend
 * atlas-graphdb-janus should be profile driven
 * atlas-repository for audit backends
 * AtlasJanusGraphDatabase should be updated accordingly
 * AtlasJanusGraphIndexClient should be updated (we only have solr support)

  was:
*Issue:*

Atlas server currently includes dependencies for multiple storage and index 
backends regardless of which backend is configured at runtime.

Storage backend:
 * HBase
 * Cassandra
 * RDBMS

Index backend:
 * Solr
 * Elasticsearch

*Purpose:*

Reduce Atlas server footprint by excluding unused backend/index libraries at 
build/package time, improving
 * classpath size
 * deployement size
 * container image size

*Impact (Low):*

With same artifact, user will not be able to switch the backends.

*Acceptance Criteria:*
 * Default server build: mvn -Pdist package produces war and distro package 
with HBase + Solr only.
 * Variant server build produces war and distro package containing only the 
selected backend/index deps.
 * Atlas starts without class-init failures when unused backend jars are absent.
 * WAR WEB-INF/lib does not contain unnecessary backend/index jars for the 
chosen profile.

*Areas to be modified:*
 * create profiles 
 * introduce properties for storage.backend, index.backend, audit.backend
 * atlas-graphdb-janus should be profile driven
 * atlas-repository for audit backends
 * AtlasJanusGraphDatabase should be updated accordingly
 * AtlasJanusGraphIndexClient should be updated (we only have solr support)


> Add Maven profiles to build slim server by selecting only required 
> storage/index backend
> ----------------------------------------------------------------------------------------
>
>                 Key: ATLAS-5220
>                 URL: https://issues.apache.org/jira/browse/ATLAS-5220
>             Project: Atlas
>          Issue Type: Improvement
>          Components:  atlas-core
>            Reporter: Pinal Shah
>            Assignee: Pinal Shah
>            Priority: Major
>
> *Issue:*
> Atlas server currently includes dependencies for multiple storage and index 
> backends regardless of which backend is configured at runtime.
> Storage backend:
>  * HBase
>  * Cassandra
>  * RDBMS
> Index backend:
>  * Solr
>  * Elasticsearch
> *Purpose:*
> Reduce Atlas server footprint by excluding unused backend/index libraries at 
> build/package time, improving
>  * eliminate potential dependent library version conflicts across different 
> backend and index stores
>  * classpath size
>  * deployement size
>  * container image size
> *Impact (Low):*
> With same artifact, user will not be able to switch the backends.
> *Acceptance Criteria:*
>  * Default server build: mvn -Pdist package produces war and distro package 
> with HBase + Solr only.
>  * Variant server build produces war and distro package containing only the 
> selected backend/index deps.
>  * Atlas starts without class-init failures when unused backend jars are 
> absent.
>  * WAR WEB-INF/lib does not contain unnecessary backend/index jars for the 
> chosen profile.
> *Areas to be modified:*
>  * create profiles 
>  * introduce properties for storage.backend, index.backend, audit.backend
>  * atlas-graphdb-janus should be profile driven
>  * atlas-repository for audit backends
>  * AtlasJanusGraphDatabase should be updated accordingly
>  * AtlasJanusGraphIndexClient should be updated (we only have solr support)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to