首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

自动分区推断

表分区是一种常见的优化方式,比如Hive中就提供了表分区的特性。在一个分区表中,不同分区的数据通常存储在不同的目录中,分区列的值通常就包含在了分区目录的目录名中。Spark SQL中的Parquet数据源,支持自动根据目录名推断出分区信息。例如,如果将人口数据存储在分区表中,并且使用性别和国家作为分区列。那么目录结构可能如下所示: tableName |- gender=male |- country=US ... ... ... |- country=CN ... |- gender=female |- country=US ... |- country=CH ... 如果将/tableName传入SQLContext.read.parquet()或者SQLContext.read.load()方法,那么Spark SQL就会自动根据目录结构,推断出分区信息,是gender和country。即使数据文件中只包含了两列值,name和age,但是Spark SQL返回的DataFrame,调用printSchema()方法时,会打印出四个列的值:name,age,country,gender。这就是自动分区推断的功能。 此外,分区列的数据类型,也是自动被推断出来的。目前,Spark SQL仅支持自动推断出数字类型和字符串类型。有时,用户也许不希望Spark SQL自动推断分区列的数据类型。此时只要设置一个配置即可, spark.sql.sources.partitionColumnTypeInference.enabled,默认为true,即自动推断分区列的类型,设置为false,即不会自动推断类型。禁止自动推断分区列的类型时,所有分区列的类型,就统一默认都是String。 案例:自动推断用户数据的性别和国家

01

从单细胞基因表达数据推断细胞特异性基因调控网络

本文介绍由佐治亚理工学院计算科学与工程系的Xiuwei Zhang等人的研究成果。基因调控网络(GRN)可以被视为细胞的另一个特征,有助于发现每个细胞的独特性。然而,目前仍然缺少重建细胞特异性GRN的方法。作者提出了一种从单细胞基因表达数据推断细胞特异性GRN的方法(简写为CeSpGRN)。CeSpGRN使用高斯加权核,从发育过程中的细胞以及该细胞上游和下游细胞的基因表达谱中构建给定细胞的GRN。CeSpGRN可用于推断任何轨迹或簇结构的细胞群中的细胞特异性GRN,并且不需要额外输入细胞的时间信息。经实验证明,CeSpGRN在重建每个细胞的GRN以及检测细胞间的相互调节作用方面性能优越。

02
领券