# A New Functional Approach to Complex Types in Apache Hive

DevFeed: [A New Functional Approach to Complex Types in Apache Hive](<https://devfeed.tech/articles/a-new-functional-approach-to-complex-types-in-apache-hive-27969.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/2019-01-30-functional-approach-complex-types-apache-hive/>)

Author: Jan Filipiak Software programmer; Constantly Surprised By How Stupid Computers Are Still Knows Where His Towel Is

Published: 2019-01-30T00:00:00Z

Content type: article

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [SQL](<https://devfeed.tech/topics/sql.md>), [NoSQL](<https://devfeed.tech/topics/nosql.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Apache Spark](<https://devfeed.tech/topics/spark.md>)

Tags: [arrays](<https://devfeed.tech/tags/arrays.md>), [data-science](<https://devfeed.tech/tags/data-science.md>), [java](<https://devfeed.tech/tags/java.md>), [jvm](<https://devfeed.tech/tags/jvm.md>), [maps](<https://devfeed.tech/tags/maps.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [nosql](<https://devfeed.tech/tags/nosql.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [sql](<https://devfeed.tech/tags/sql.md>), [structure](<https://devfeed.tech/tags/structure.md>), [table](<https://devfeed.tech/tags/table.md>)

## AI overview

This article examines how Apache Hive handles complex data types such as maps, arrays, and structs. It explains how Hive can process these types through SQL, custom programs, JVM-based user-defined functions, and table-generating functions such as explode() and inline().

## Source excerpt

When faced with the challenge to store, retrieve and process small or large amounts of data, structured query languages are typically not far away. These languages serve as a nice abstraction be...