delta spark
由Apache Spark的原始开发人员创建的Databricks公司已经发布了Delta Lake ,它是Spark的开源存储层,可提供ACID事务和其他数据管理功能,以进行机器学习和其他大数据工作。
许多类型的数据工作都需要功能,例如ACID事务或模式实施以保持一致性,元数据管理以提高安全性以及使用离散版本的数据的能力。 并非所有数据源都具备类似这些功能的标准,因此Delta Lake为任何Spark DataFrame数据源提供了这些功能。
Delta Lake可用作访问HDFS等存储系统的替代产品。 通过Delta Lake吸收到Spark中的数据以Parquet格式存储在您选择的云存储服务中。 开发人员可以使用他们选择的Java,Python或Scala访问Delta Lake的API集。
Delta Lake支持用于读取和写入数据的大多数现有Spark SQL DataFrame函数。 它还支持Spark结构化流作为源或目标,尽管不是DStream API。 每次通过Delta Lake进行的读取和写入都具有ACID事务保证,因此,多个写入器会将其写入序列化,并且多个读取器将看到一致的快照。
读取特定版本的数据集(Delta Lake文档称为“时间旅行”),只需读取带有相关时间戳或版本ID的DataFrame即可。 Delta Lake还确保要写入的DataFrame的架构与要写入的表相匹配; 如果不匹配,它将引发异常而不是更改架构。 (在这种情况下,Spark的文件API将替换该表。)
Delta Lake的未来版本可能会支持Spark的更多公共API集,尽管DataFrameReader / Writer是目前的主要重点。
翻译自: https://www.infoworld.com/article/3391065/delta-lake-gives-apache-spark-data-sets-new-powers.html
delta spark