[jira] [Updated] (CARBONDATA-2961) Simplify SDK API interfaces

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Updated] (CARBONDATA-2961) Simplify SDK API interfaces

Akash R Nilugal (Jira)

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

Ajantha Bhat updated CARBONDATA-2961:
-------------------------------------
    Description:
CARBONDATA-2961 Simplify SDK API interfaces

problem: current SDK API interfaces are not simpler and don't follow builder pattern.
If new features are added, it will become more complex.

Solution: Simplify the SDK interfaces as per builder pattern.

*Refer the latest sdk-guide.*

*Added:*

*changes in Carbon Writer:*
public CarbonWriterBuilder withThreadSafe(short numOfThreads)
public CarbonWriterBuilder withHadoopConf(Configuration conf)

public CarbonWriterBuilder withCsvInput(Schema schema)
public CarbonWriterBuilder withAvroInput(org.apache.avro.Schema avroSchema)
public CarbonWriterBuilder withJsonInput(Schema carbonSchema)

public CarbonWriter build() throws IOException, InvalidLoadOptionException

*Changes in carbon Reader*
public CarbonReaderBuilder withHadoopConf(Configuration conf)
public CarbonWriter build() throws IOException, InvalidLoadOptionException

*Removed:*

*changes in Carbon Writer:*
public CarbonWriterBuilder isTransactionalTable(boolean isTransactionalTable)

{{public CarbonWriterBuilder persistSchemaFile(boolean persist);}}

setAccessKey
setAccessKey
setSecretKey
setSecretKey
setEndPoint
setEndPoint

public CarbonWriter buildWriterForCSVInput(Schema schema, Configuration configuration)
public CarbonWriter buildThreadSafeWriterForCSVInput(Schema schema, short numOfThreads,Configuration configuration)
public CarbonWriter buildWriterForAvroInput(org.apache.avro.Schema avroSchema,Configuration configuration)
public CarbonWriter buildThreadSafeWriterForAvroInput(org.apache.avro.Schema avroSchema,short numOfThreads, Configuration configuration)
public JsonCarbonWriter buildWriterForJsonInput(Schema carbonSchema, Configuration configuration)
public JsonCarbonWriter buildThreadSafeWriterForJsonInput(Schema carbonSchema, short numOfThreads,Configuration configuration)

*Changes in carbon Reader*
public CarbonReaderBuilder isTransactionalTable(boolean isTransactionalTable)
public CarbonWriter build(Configuration conf) throws IOException, InvalidLoadOptionException

  was:
[CARBONDATA-2961] Simplify SDK API interfaces

problem: current SDK API interfaces are not simpler and don't follow builder pattern.
If new features are added, it will become more complex.

Solution: Simplify the SDK interfaces as per builder pattern.

*Refer the latest sdk-guide.*

*Added:*

*changes in Carbon Writer:*
public CarbonWriterBuilder withThreadSafe(short numOfThreads)
public CarbonWriterBuilder withHadoopConf(Configuration conf)

public CarbonWriterBuilder withCsvInput(Schema schema)
public CarbonWriterBuilder withAvroInput(org.apache.avro.Schema avroSchema)
public CarbonWriterBuilder withJsonInput(Schema carbonSchema)

public CarbonWriter build() throws IOException, InvalidLoadOptionException

*Changes in carbon Reader*
public CarbonReaderBuilder withHadoopConf(Configuration conf)
public CarbonWriter build() throws IOException, InvalidLoadOptionException

*Removed:*

*changes in Carbon Writer:*
public CarbonWriterBuilder isTransactionalTable(boolean isTransactionalTable)

setAccessKey
setAccessKey
setSecretKey
setSecretKey
setEndPoint
setEndPoint

public CarbonWriter buildWriterForCSVInput(Schema schema, Configuration configuration)
public CarbonWriter buildThreadSafeWriterForCSVInput(Schema schema, short numOfThreads,Configuration configuration)
public CarbonWriter buildWriterForAvroInput(org.apache.avro.Schema avroSchema,Configuration configuration)
public CarbonWriter buildThreadSafeWriterForAvroInput(org.apache.avro.Schema avroSchema,short numOfThreads, Configuration configuration)
public JsonCarbonWriter buildWriterForJsonInput(Schema carbonSchema, Configuration configuration)
public JsonCarbonWriter buildThreadSafeWriterForJsonInput(Schema carbonSchema, short numOfThreads,Configuration configuration)

*Changes in carbon Reader*
public CarbonReaderBuilder isTransactionalTable(boolean isTransactionalTable)
public CarbonWriter build(Configuration conf) throws IOException, InvalidLoadOptionException


> Simplify SDK API interfaces
> ---------------------------
>
>                 Key: CARBONDATA-2961
>                 URL: https://issues.apache.org/jira/browse/CARBONDATA-2961
>             Project: CarbonData
>          Issue Type: Improvement
>            Reporter: Ajantha Bhat
>            Assignee: Ajantha Bhat
>            Priority: Minor
>          Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> CARBONDATA-2961 Simplify SDK API interfaces
> problem: current SDK API interfaces are not simpler and don't follow builder pattern.
> If new features are added, it will become more complex.
> Solution: Simplify the SDK interfaces as per builder pattern.
> *Refer the latest sdk-guide.*
> *Added:*
> *changes in Carbon Writer:*
> public CarbonWriterBuilder withThreadSafe(short numOfThreads)
> public CarbonWriterBuilder withHadoopConf(Configuration conf)
> public CarbonWriterBuilder withCsvInput(Schema schema)
> public CarbonWriterBuilder withAvroInput(org.apache.avro.Schema avroSchema)
> public CarbonWriterBuilder withJsonInput(Schema carbonSchema)
> public CarbonWriter build() throws IOException, InvalidLoadOptionException
> *Changes in carbon Reader*
> public CarbonReaderBuilder withHadoopConf(Configuration conf)
> public CarbonWriter build() throws IOException, InvalidLoadOptionException
> *Removed:*
> *changes in Carbon Writer:*
> public CarbonWriterBuilder isTransactionalTable(boolean isTransactionalTable)
> {{public CarbonWriterBuilder persistSchemaFile(boolean persist);}}
> setAccessKey
> setAccessKey
> setSecretKey
> setSecretKey
> setEndPoint
> setEndPoint
> public CarbonWriter buildWriterForCSVInput(Schema schema, Configuration configuration)
> public CarbonWriter buildThreadSafeWriterForCSVInput(Schema schema, short numOfThreads,Configuration configuration)
> public CarbonWriter buildWriterForAvroInput(org.apache.avro.Schema avroSchema,Configuration configuration)
> public CarbonWriter buildThreadSafeWriterForAvroInput(org.apache.avro.Schema avroSchema,short numOfThreads, Configuration configuration)
> public JsonCarbonWriter buildWriterForJsonInput(Schema carbonSchema, Configuration configuration)
> public JsonCarbonWriter buildThreadSafeWriterForJsonInput(Schema carbonSchema, short numOfThreads,Configuration configuration)
> *Changes in carbon Reader*
> public CarbonReaderBuilder isTransactionalTable(boolean isTransactionalTable)
> public CarbonWriter build(Configuration conf) throws IOException, InvalidLoadOptionException



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)