diff options
author | Tathagata Das <tathagata.das1565@gmail.com> | 2016-06-14 17:58:45 -0700 |
---|---|---|
committer | Tathagata Das <tathagata.das1565@gmail.com> | 2016-06-14 17:58:45 -0700 |
commit | 214adb14b8d1f1c4dce0c97dd6dc09efedbaa643 (patch) | |
tree | 4933de7ffd5ff7f099957fceaf581b4519a0b2fa /python/pyspark/sql/context.py | |
parent | 5d50d4f0f9db3e6cc7c51e35cdb2d12daa4fd108 (diff) | |
download | spark-214adb14b8d1f1c4dce0c97dd6dc09efedbaa643.tar.gz spark-214adb14b8d1f1c4dce0c97dd6dc09efedbaa643.tar.bz2 spark-214adb14b8d1f1c4dce0c97dd6dc09efedbaa643.zip |
[SPARK-15933][SQL][STREAMING] Refactored DF reader-writer to use readStream and writeStream for streaming DFs
## What changes were proposed in this pull request?
Currently, the DataFrameReader/Writer has method that are needed for streaming and non-streaming DFs. This is quite awkward because each method in them through runtime exception for one case or the other. So rather having half the methods throw runtime exceptions, its just better to have a different reader/writer API for streams.
- [x] Python API!!
## How was this patch tested?
Existing unit tests + two sets of unit tests for DataFrameReader/Writer and DataStreamReader/Writer.
Author: Tathagata Das <tathagata.das1565@gmail.com>
Closes #13653 from tdas/SPARK-15933.
Diffstat (limited to 'python/pyspark/sql/context.py')
-rw-r--r-- | python/pyspark/sql/context.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/python/pyspark/sql/context.py b/python/pyspark/sql/context.py index 60f62b219b..a271afe4cf 100644 --- a/python/pyspark/sql/context.py +++ b/python/pyspark/sql/context.py @@ -430,6 +430,19 @@ class SQLContext(object): @property @since(2.0) + def readStream(self): + """ + Returns a :class:`DataStreamReader` that can be used to read data streams + as a streaming :class:`DataFrame`. + + .. note:: Experimental. + + :return: :class:`DataStreamReader` + """ + return DataStreamReader(self._wrapped) + + @property + @since(2.0) def streams(self): """Returns a :class:`ContinuousQueryManager` that allows managing all the :class:`ContinuousQuery` ContinuousQueries active on `this` context. |