descargar - metastore_db creado donde ejecuto Hive
hive installation guide (2)
La propiedad de interés aquí es javax.jdo.option.ConnectionURL
. El valor predeterminado de esta propiedad es jdbc:derby:;databaseName=metastore_db;create=true
. Este valor especifica que utilizará Derby incrustado como su almacén de metadatos de Hive y la ubicación del almacén de metástasis es metastore_db
. También se creará el metastore si no existe ya.
Tenga en cuenta que la ubicación de la metastore ( metastore_db
) es una ruta relativa. Por lo tanto, se crea desde donde ejecutas Hive. Si actualiza esta propiedad (en su hive-site.xml) para que sea, digamos una ruta absoluta a una ubicación, se utilizará la metastore desde esa ubicación.
Sin embargo, debo advertirle que solo un usuario puede acceder a metastore de Derby incrustado a la vez. Hive utiliza Derby incorporado de forma predeterminada para permitir una experiencia inmediata y para facilitar la prueba. Para cualquier sistema práctico, recomendaría pasar a una base de datos "real" independiente como MySQL o PostgreSQL. Las instrucciones sobre cómo hacerlo están disponibles here .
La carpeta metastore_db
se crea en cualquier directorio donde ejecuto la consulta de Hive. ¿Hay alguna forma de tener solo un metastore_db
en una ubicación definida y evitar que se cree en todos los lugares? ¿Tiene algo que ver con hive.metastore.local
?
Ya que usas el modo Derby incrustado. Para utilizar una sola ubicación metastore_db. Necesita cambiar las siguientes propiedades.
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby:;databaseName=/<file-location>/metastore_db;create=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
Espero que esto ayude. Para más detalles haz click aquí.