Limitations et types pris en charge
Limitations générales
- Spark Thrift Server et Livy Thrift Server ne sont pas pris en charge.
- Les UDF Spark ne sont pas prises en charge lorsque les requêtes sont exécutées dans Hive.
- Les types UNION Hive ne sont pas pris en charge.
Limitations de l'API DataFrame
Lors de l'écriture avec le DataFrame writer HWC :
- Les statistiques de table ne sont pas générées automatiquement pour la table Hive cible.
- Il n'est pas possible de lire et écraser la même table dans une seule opération.
- Avec Spark 3, HWC ne crée pas automatiquement les tables pour append/overwrite.
Limitations du lecteur direct
Le lecteur direct est optimisé pour la vitesse mais présente des limites fonctionnelles :
- Il n'applique pas les politiques d'autorisation Ranger ou HS2.
- Il ne prend pas en charge les écritures ni les insertions en streaming.
- Il garantit un instantané cohérent par table, pas sur plusieurs tables.
Limitations du mode JDBC
Le mode JDBC convient aux jeux de résultats petits ou modérés. Pour des extractions de gros volumes, utiliser le lecteur direct ou l'accès sécurisé. En mode client, tous les résultats transitent par le driver.
Types pris en charge
Les types Spark suivants sont pris en charge en lecture ou écriture des tables Hive :
| Type Spark | Type Hive |
|---|---|
| ByteType | TinyInt |
| ShortType | SmallInt |
| IntegerType | Integer |
| LongType | BigInt |
| FloatType | Float |
| DoubleType | Double |
| DecimalType | Decimal |
| StringType | String, Char, Varchar |
| BinaryType | Binary |
| BooleanType | Boolean |
| TimestampType | Timestamp |
| DateType | Date |
| ArrayType | Array |
| StructType | Struct |
Types non pris en charge :
- CalendarIntervalType (intervalle Hive)
- MapType (map Hive)
- Types union
- NullType