-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
375 lines (237 loc) · 15.2 KB
/
index.html
File metadata and controls
375 lines (237 loc) · 15.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
<!DOCTYPE html>
<html xmlns="https://www.w3.org/1999/xhtml" lang="es-ES">
<head>
<meta name="generator" content="Hugo 0.155.0">
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Adrian Abreu Data Engineering Blog</title>
<meta property='og:title' content='Adrián Abreu'>
<meta property='og:description' content=''>
<meta property='og:url' content='https://adrianabreu.com/'>
<meta property='og:site_name' content='Adrián Abreu'>
<meta property='og:type' content='website'><meta property='og:image' content='https://www.gravatar.com/avatar/a77b883f262f485b0135c6e352fc6b87?s=256'><meta property='article:section' content=''><meta property='og:updated_time' content='2026-01-27T11:40:43Z'/><meta name='twitter:card' content='summary'><meta name='twitter:site' content='@adrianabreudev'><meta name='twitter:creator' content='@adrianabreudev'>
<link rel="stylesheet" href="/css/style.css"/><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
<link rel="canonical" href="https://adrianabreu.com/">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="theme-color" content="#ffffff">
<meta property="og:image" content="/preview.png" />
<meta name="twitter:image" content="/preview.png" />
<script
defer
src="https://unpkg.com/@tinybirdco/flock.js"
data-token="p.eyJ1IjogImUzY2IxNjA4LThmYjEtNDBjNC04NzNlLTFmNjE3ZmI2NGMzMCIsICJpZCI6ICI1NzQ5MDAyMC02Yjg1LTQ2YjEtYWVmOS1lNzMwMjYwYmM1YmQiLCAiaG9zdCI6ICJldV9zaGFyZWQifQ.bcYOUv9CsZ5Fg6UoqxSZk-SYZ6Z_mdrzjbEiE4TPcAA">
</script>
</head>
<body>
<section class="section">
<div class="container">
<nav id="nav-main" class="nav">
<div id="nav-name" class="nav-left">
<a id="nav-anchor" class="nav-item" href="https://adrianabreu.com/">
<h1 id="nav-heading" class="title is-4">Adrián Abreu</h1>
</a>
</div>
<div class="nav-right">
<nav id="nav-items" class="nav-item level is-mobile"><a class="level-item" aria-label="github" href='https://github.com/adrianabreu'
target='_blank' rel='noopener'>
<span class="icon">
<i class><svg viewbox='0 0 24 24' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' aria-hidden='true'>
<path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"/>
</svg></i>
</span>
</a><a class="level-item" aria-label="twitter" href='https://twitter.com/adrianabreudev'
target='_blank' rel='noopener'>
<span class="icon">
<i class><svg viewbox='0 0 24 24' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' aria-hidden='true'>
<path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"/>
</svg></i>
</span>
target='_blank' rel='noopener'>
<span class="icon">
<i class><svg viewbox='0 0 24 24' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' aria-hidden='true'>
<path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"/>
<polyline points="22,6 12,13 2,6"/>
</svg></i>
</span>
</a><a class="level-item" aria-label="linkedin" href='https://linkedin.com/in/AdrianAbreu'
target='_blank' rel='noopener'>
<span class="icon">
<i class><svg viewbox='0 0 24 24' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' aria-hidden='true'>
<path stroke-width="1.8" d="m5.839218,4.101561c0,1.211972 -0.974141,2.194011 -2.176459,2.194011s-2.176459,-0.982039 -2.176459,-2.194011c0,-1.211094 0.974141,-2.194011 2.176459,-2.194011s2.176459,0.982917 2.176459,2.194011zm0.017552,3.94922l-4.388022,0l0,14.04167l4.388022,0l0,-14.04167zm7.005038,0l-4.359939,0l0,14.04167l4.360816,0l0,-7.370999c0,-4.098413 5.291077,-4.433657 5.291077,0l0,7.370999l4.377491,0l0,-8.89101c0,-6.915523 -7.829986,-6.66365 -9.669445,-3.259423l0,-1.891237z"/>
</svg></i>
</span>
</a></nav>
</div>
</nav>
<nav class="nav">
</nav>
</div>
<script src="/js/navicon-shift.js"></script>
</section>
<section class="section">
<div class="container">
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/data-engineering/">#data engineering</a>
| <a class="subtitle is-6" href="/tags/snowflkake/">#snowflkake</a>
| <a class="subtitle is-6" href="/tags/mcp/">#mcp </a>
</div>
<h2 class="subtitle is-6 date">January 27, 2026</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2026-01-27-stuck-snowflake-mcp-cursor/">Stuck connecting snowflake integrated mcp and cursor</a></h1>
<div class="content">
Lately I’m not exactly enjoying my job. Snowflake step curve from a data engineer perspective is really hard.
Yesterday my boss asked me to test the Snowflake integrated MCP from Cursor. He’d been looking into Snowflake OAuth access, so I went to check the resources. Once again—as of January 27th, 2026—the Terraform resource for this still doesn’t exist (though the data source does, for some reason).
For connecting to snowflake you need to define a security integration.
<a class="button is-link" href="https://adrianabreu.com/blog/2026-01-27-stuck-snowflake-mcp-cursor/" style="height:28px">
Read more
</a>
</div>
</article>
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/data-engineering/">#data engineering</a>
| <a class="subtitle is-6" href="/tags/snowflake/">#snowflake</a>
| <a class="subtitle is-6" href="/tags/rbac/">#rbac</a>
</div>
<h2 class="subtitle is-6 date">January 14, 2026</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2026-01-14-snowflake-questionable-choices/">Snowflake questionable choices</a></h1>
<div class="content">
I switched jobs all over again. I’m working in a data company called Shalion, where we provide insights about retail products online. If you’re brave enough to handle Snowflake’s quirks, we’re hiring…
I’m working on revamping our permission grant system from permifrost to a terraform managed approach.
We also decided to embrace a 2 layer permission grant, using Access Roles (AR) and Functional Roles (FR). The former has access to the resources with the typical permissions (SELECT, USAGE, CREATE)…, while the latter is the one that we assign to people and just groups access roles.
<a class="button is-link" href="https://adrianabreu.com/blog/2026-01-14-snowflake-questionable-choices/" style="height:28px">
Read more
</a>
</div>
</article>
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/data-engineering/">#data engineering</a>
| <a class="subtitle is-6" href="/tags/job/">#job</a>
</div>
<h2 class="subtitle is-6 date">January 6, 2026</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2026-02-13-learn-to-learn-again/">Aprender de nuevo</a></h1>
<div class="content">
2025 ha sido un año bastante loco.
Pasé la mayor parte del año sentando las bases de una startup en el mundo de la seguridad, haciendo frontend, backend, mucho devops y… poco data.
Me pilló de lleno la era de la AI y como siempre, el campo ajeno es más verde. Viví la burbuja de v0 y mi trabajo respecto a este, fue bastante miserable. El proyecto a medida que crecía dejaba de ser funcional. Un cambio manual que arreglase el mismo era incompatible.
<a class="button is-link" href="https://adrianabreu.com/blog/2026-02-13-learn-to-learn-again/" style="height:28px">
Read more
</a>
</div>
</article>
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/go/">#Go</a>
| <a class="subtitle is-6" href="/tags/vps/">#VPS</a>
</div>
<h2 class="subtitle is-6 date">January 13, 2025</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2025-01-13-building-stuff/">I’m Building Stuff – My New Motto</a></h1>
<div class="content">
For the past seven years, I worked in data, and I have mixed feelings about it. I still believe data is the most important part of any app, but it’s meaningless without the app itself.
Now that I’m working at a startup, I’ve decided to focus on building things. To start, I revisited one of my older projects: a PDF parser about professor designations in the Canary Islands, where one of my best friends works as a teacher.
<a class="button is-link" href="https://adrianabreu.com/blog/2025-01-13-building-stuff/" style="height:28px">
Read more
</a>
</div>
</article>
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/python/">#Python</a>
</div>
<h2 class="subtitle is-6 date">August 13, 2024</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2024-08-13-finding-pet-projects/">Finding pet projects</a></h1>
<div class="content">
As my company undergoes layoffs, I’m back on the job hunt. While I’m in the field of data, I often find myself missing the hands-on experience that comes from personal projects. I realized that I’m not practicing all the skills I need.
During a recent interview, I was asked about my experience with sending reports via email—something I hadn’t done in a few years. That got me thinking: could I turn this into a pet project?
<a class="button is-link" href="https://adrianabreu.com/blog/2024-08-13-finding-pet-projects/" style="height:28px">
Read more
</a>
</div>
</article>
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/spark/">#Spark</a>
| <a class="subtitle is-6" href="/tags/scala/">#Scala</a>
| <a class="subtitle is-6" href="/tags/wsl/">#WSL</a>
</div>
<h2 class="subtitle is-6 date">March 22, 2024</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2024-03-22-developing-on-windows/">Developing on windows</a></h1>
<div class="content">
Over the years, I’ve been using MacOS at work and Ubuntu at home for my development tasks. However, my Lenovo P1 Gen 3 laptop didn’t work well with Linux, leading to frequent issues with the camera and graphics (screen flickering, I’m looking at you, and it hurts).
I’ve triend Windows Subsystem for Linux (WSL) but it was quite bad to be honest. But as I’ve heard of WSL2 and WSLg, I decided to give it another shot.
<a class="button is-link" href="https://adrianabreu.com/blog/2024-03-22-developing-on-windows/" style="height:28px">
Read more
</a>
</div>
</article>
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/spark/">#Spark</a>
| <a class="subtitle is-6" href="/tags/databricks/">#Databricks</a>
| <a class="subtitle is-6" href="/tags/python/">#Python</a>
</div>
<h2 class="subtitle is-6 date">January 26, 2024</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2024-01-26-querying-the-databricks-api/">Querying the databricks api</a></h1>
<div class="content">
Exploring databricks SQL usage
At my company, we adopted databricks SQL for most of our users. Some users have developed applications that use the JDBC connector, some users have built their dashboards, and some users write plain ad-hoc queries.
We wanted to know what they queried, so we tried to use Unity Catalog’s insights, but it wasn’t enough for our case. We work with IOT and we are interested in what filters they apply within our tables.
<a class="button is-link" href="https://adrianabreu.com/blog/2024-01-26-querying-the-databricks-api/" style="height:28px">
Read more
</a>
</div>
</article>
<article>
<div class="subtitle tags is-6 is-pulled-right">
<a class="subtitle is-6" href="/tags/spark/">#Spark</a>
| <a class="subtitle is-6" href="/tags/databricks/">#Databricks</a>
| <a class="subtitle is-6" href="/tags/structured-streaming/">#Structured Streaming</a>
</div>
<h2 class="subtitle is-6 date">October 27, 2023</h2>
<h1 class="title"><a href="https://adrianabreu.com/blog/2023-10-27-tweaking-spark-kafka/">Tweaking Spark Kafka</a></h1>
<div class="content">
Well, I’m facing a huge interesting case. I’m working at Wallbox where we need to deal with billions of rows every day. Now we need to use Spark for some Kafka filtering and publish the results into different topics according to some rules.
I won’t dig deep into the logic except for performance-related stuff, let’s try to increase the processing speed.
When reading from Kafka you usually get 1 task per partition, so if you have 6 partitions and 48 cores you are not using 87.5 percent of your cluster. That could be adjusted with the following property **minPartitions.**
<a class="button is-link" href="https://adrianabreu.com/blog/2023-10-27-tweaking-spark-kafka/" style="height:28px">
Read more
</a>
</div>
</article>
</div>
</section>
<section class="section">
<div class="container">
<nav class="level is-mobile">
<div class="level-left">
<div class="level-item">
</div>
</div>
<div class="level-right is-marginless">
<div class="level-item">
<a class="button" href="/page/2/">
Older
<span class="icon is-small is-marginless">
<svg viewbox='0 0 24 24' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' aria-hidden='true'>
<polyline points="14 6 20 12 14 18"/>
</svg>
</span>
</a>
</div>
</div>
</nav>
</div>
</section>
<section class="section">
<div class="container has-text-centered">
<p>2017-2024 Adrián Abreu powered by Hugo and Kiss Theme</p>
</div>
</section>
</body>
</html>