xubo245 opened a new pull request #3478: [CARBONDATA-3255] CarbonData provides python interface to support to write and read structured and unstructured data in CarbonData
URL:
https://github.com/apache/carbondata/pull/3478
Apache CarbonData already provide Java/ Scala/C++ interface for users, and more and more people use python to manage and analysis big data, so it's better to provide python interface to support to write and read structured and unstructured data in CarbonData, like String, int and binary data: image/voice/video. It should not dependency Apache Spark. We called it is PYSDK.
PYSDK based on CarbonData Java SDK, use pyjnius to call java code in python code. Even though Apache Spark use py4j in PySpark to call java code in python, but it's low performance when use py4j to read bigdata with CarbonData format in python code, py4j also show low performance when read big data in their report:
https://www.py4j.org/advanced_topics.html#performance. JPype is also a popular tool to call java code in python, but it already stoped update several years ago, so we can not use it. In our test, pyjnius has high performance to read big data by call java code in python, so it's good choice for us.
We already work for these feature several months in
https://github.com/xubo245/pycarbon Goals:
1. PYSDK should provide interface to support read data
2. PYSDK should provide interface to support write data
3. PYSDK should support basic data types
4. PYSDK should support projection
5. PYSDK should support filter
Be sure to do all of the following checklist to help us incorporate
your contribution quickly and easily:
- [ ] Any interfaces changed?
- [ ] Any backward compatibility impacted?
- [ ] Document update required?
- [ ] Testing done
Please provide details on
- Whether new unit test cases have been added or why no new tests are required?
- How it is tested? Please attach test report.
- Is it a performance related change? Please attach the performance test report.
- Any additional information to help reviewers in testing this change.
- [ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[hidden email]
With regards,
Apache Git Services