Modules
Interactua con el datalake.
Modulos exportados por este paquete.
Datalake
: Clase principal para interactuar con el datalake.
Main module.
Datalake
¶
Bases: object
Clase para representar operaciones de Datalake.
Source code in azure_datalake_utils/azure_datalake_utils.py
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 |
|
__init__(datalake_name, tenant_id, account_key=None, fsspec_cache=True)
¶
Clase para interactuar con Azure Dalake.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
datalake_name |
str
|
nombre de la cuenta de Azure Datalake Gen2. |
required |
tenant_id |
str
|
Identificador del tenant, es valor es proporcionado por arquitectura de datos, debe conservarse para un correcto funcionamiento. |
required |
account_key |
Optional[str]
|
key de la cuenta. Por defecto es None y es ignorado. |
None
|
fsspec_cache |
bool
|
indica si se va usar la funcionalidad de cache de fsspec.
NOTA: se recomienda usar Para ver los efectos, ver los siguientes issues: - https://github.com/fsspec/adlfs/issues/391 - https://github.com/Azure/azure-sdk-for-python/issues/28312 |
True
|
Source code in azure_datalake_utils/azure_datalake_utils.py
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
|
from_account_key(datalake_name, account_key, fsspec_cache=True)
classmethod
¶
Opcion de inicializar con account key.
Source code in azure_datalake_utils/azure_datalake_utils.py
70 71 72 73 |
|
generar_url_con_sas_token(path, duration, unit='hour', ip=None)
¶
Genera un link sas.
Source code in azure_datalake_utils/azure_datalake_utils.py
303 304 305 306 307 |
|
read_csv(ruta, **kwargs)
¶
Leer un archivo CSV desde la cuenta de datalake.
Esta función hace una envoltura de pd.read_csv. usar la documentación de la función para determinar parametros adicionales.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
ruta |
Union[str, List[str]]
|
Ruta a leeder el archivo, debe contener una referencia a un archivo
|
required |
**kwargs |
Optional[Any]
|
argumentos a pasar a pd.read_csv. El unico argumento que es ignorado es storage_options. |
{}
|
Returns:
Type | Description |
---|---|
pd.DataFrame
|
Dataframe con la informacion del la ruta. |
Source code in azure_datalake_utils/azure_datalake_utils.py
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
|
read_csv_with_partition(ruta, partition_cols=None, partition_exclusion=None, partition_inclusion=None, last_modified_last_level=True, **kwargs)
¶
Leer un archivo CSV desde la cuenta de datalake con particiones Hive.
Una partición tipo Hive son archivos almacenados de la forma /ruta/to/archivo/particion_1=1/particion2=2/archivo_con_info.extension.
IMPORTANTE: por el momento el funcionamiento de esta función es solo soportada
si el objeto fue creado mediante from_account_key
.
Esta función hace una envoltura de read_csv
que asu vez usa pd.read_csv.
usar la documentación de la función para determinar parametros adicionales.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
ruta |
str
|
Ruta a leeder el archivo, esta ruta debe contener archivos guardados siguiendo |
required |
la |
convección de la partición Hive. Ejemplo si la estructura de los archivos es
|
required | |
partition_cols |
Dict[str, List[str]]
|
Definir que particionews incluir, se asume que se sabe a priori la
estructura. Si se pasa |
None
|
partition_exclusion |
Dict[str, List[str]]
|
Definir que particiones excluir, es más util cuando no se ha definido
|
None
|
partition_inclusion |
Dict[str, List[str]]
|
Definir la particiones a incluir, es más util cuando no se ha definido
|
None
|
last_modified_last_level |
bool
|
Define si el ultimo nivel no se tiene en cuenta para particiones y se carga el archivo que fue modificado de manera más reciente. |
True
|
**kwargs |
Optional[Any]
|
argumentos a pasar a pd.read_csv. El unico argumento que es ignorado es storage_options. |
{}
|
Returns:
Type | Description |
---|---|
pd.DataFrame
|
Dataframe con la informacion del la ruta. |
Source code in azure_datalake_utils/azure_datalake_utils.py
211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 |
|
read_excel(ruta, experimental=False, **kwargs)
¶
Leer un archivo Excel desde la cuenta de datalake.
Esta función hace una envoltura de [pd.read_excel]. Por favor usar la documentación de la función para determinar parametros adicionales.
[[pd.read_excel]]:(https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_excel.html)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
ruta |
str
|
Ruta a leeder el archivo, debe contener una referencia a un archivo
|
required |
force_client |
Bandera para forzar el uso del cliente. Es flag todavia es experimental Y en futuras versiones se va ha eliminar. Solo funciona con un solo archivo de excel. |
required | |
**kwargs |
Optional[Any]
|
argumentos a pasar a pd.read_excel. |
{}
|
Returns:
Type | Description |
---|---|
pd.DataFrame
|
Dataframe con la informacion del la ruta. |
Source code in azure_datalake_utils/azure_datalake_utils.py
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 |
|
read_json(ruta, **kwargs)
¶
Leer un archivo Json desde la cuenta de datalake.
Esta función hace una envoltura de [pd.read_json]. Por favor usar la documentación de la función para determinar parametros adicionales.
[[pd.read_json]]:(https://pandas.pydata.org/docs/reference/api/pandas.read_json.html)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
ruta |
str
|
Ruta a leeder el archivo, debe contener una referencia a un archivo
|
required |
**kwargs |
Optional[Any]
|
argumentos a pasar a pd.read_json. |
{}
|
Returns:
Type | Description |
---|---|
pd.DataFrame
|
Dataframe con la informacion del la ruta. |
Source code in azure_datalake_utils/azure_datalake_utils.py
158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 |
|
read_parquet(ruta, **kwargs)
¶
Leer un archivo parquet desde la cuenta de datalake.
Esta función hace una envoltura de [pd.read_parquet]. Por favor usar la documentación de la función para determinar parametros adicionales.
[[pd.read_parquet]]:(https://pandas.pydata.org/pandas-docs/version/1.5/reference/api/pandas.read_parquet.html)
Parameters:
Name | Type | Description | Default |
---|---|---|---|
ruta |
str
|
Ruta a leeder el archivo, debe contener una referencia a un archivo
|
required |
**kwargs |
Optional[Any]
|
argumentos a pasar a pd.read_parquet. |
{}
|
Returns:
Type | Description |
---|---|
pd.DataFrame
|
dataframe con la ruta |
Source code in azure_datalake_utils/azure_datalake_utils.py
186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 |
|
write_csv(df, ruta, **kwargs)
¶
Escribir al archivo.
Source code in azure_datalake_utils/azure_datalake_utils.py
278 279 280 281 282 283 284 285 |
|
write_excel(df, ruta, **kwargs)
¶
Escribir al archivo al datalake.
Source code in azure_datalake_utils/azure_datalake_utils.py
287 288 289 290 291 |
|
write_json(df, ruta, **kwargs)
¶
Escribir al archivo al datalake.
Source code in azure_datalake_utils/azure_datalake_utils.py
293 294 295 296 297 |
|
write_parquet(df, ruta, **kwargs)
¶
Escribir al archivo al datalake.
Source code in azure_datalake_utils/azure_datalake_utils.py
299 300 301 |
|