pyspark的helpers和syntax sugar。

sparkl的Python项目详细描述


Sparkly PyPi VersionSparkly Build StatusDocumentation Status

pyspark的helpers&syntax sugar。有几个功能可以让您的生活更轻松:

  • 在代码中定义spark包、外部jar、udf和spark选项;
  • Cassandra、Elastic、MySQL、Kafka的简化读写器API;
  • Spark应用程序的测试框架。

有关详细信息,请参见the official documentation

安装

Sparkly本身易于安装:

pip install sparkly

棘手的部分是pyspark。没有关于 皮皮。作为解决方法,我们建议:

  1. 使用env变量PYTHONPATH指向Spark安装, 例如:

    export PYTHONPATH="/usr/local/spark/python/lib/pyspark.zip:/usr/local/spark/python/lib/py4j-0.10.4-src.zip"
    
  2. 使用我们的setup.py文件作为pyspark。把这个加到你的 requirements.txt

    -e git+https://github.com/Tubular/spark@branch-2.1.0#egg=pyspark&subdirectory=python
    

在tubular中,我们向内部pypi发布了pyspark。 储存库。

开始

下面是一个小代码片段,演示如何轻松读取cassandra表 并将其内容写入ElasticSearch索引:

from sparkly import SparklySession


class MySession(SparklySession):
    packages = [
        'datastax:spark-cassandra-connector:2.0.0-M2-s_2.11',
        'org.elasticsearch:elasticsearch-spark-20_2.11:6.5.4',
    ]


if __name__ == '__main__':
    spark = MySession()
    df = spark.read_ext.cassandra('localhost', 'my_keyspace', 'my_table')
    df.write_ext.elastic('localhost', 'my_index', 'my_type')

参见the online documentation了解 更多细节。

测试

要运行测试,必须有dockerdocker-compose安装在 系统。如果您正在使用macos,我们强烈建议您使用 docker-machine。一旦 上面提到的工具已经安装,您只需运行:

make test

支持的Spark版本

目前我们支持:

sparkly >= 2.7 | Spark 2.4.x
sparkly 2.x | Spark 2.0.x and Spark 2.1.x and Spark 2.2.x
sparkly 1.x | Spark 1.6.x

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用从PreparedStatement返回的RowId。getGeneratedKeys()?   selenium chrome驱动程序中下一个网站url的java空白页   java如何将参数化匿名类转换为lambda?   java JUnit在AfterClass上获取测试结果   java将动态XML/JSON内容与静态标记化负载进行比较,并检索标记值   java共享一个需要数据持久性的项目[数据库]   java在调用方法时获取意外的参数类型。getParameterTypes()   java如何用jdbc在swing中用另一个字段替换外键?   需要java Jersey Tomcat CDI依赖项解释   java如何生成UML图   java如何编写Jersey rest服务可以通过给定的spring代码访问   SpringMaven存储库管理器Nexus与Java依赖项的Artifactory   java将包从另一个项目导入eclipse中的当前项目   加密Java使用密码加密文件