2023 Sioux Falls Marathon Runcation

On August 27, 2023, I ran the Sioux Falls Marathon. It was my 23rd full marathon and my 10th U.S. State.

I am now eligible to become a Standard Member of the 50 States Marathon Club, so I decided to join. I have done numerous marathons in the same state several times, but I’m going to try to spread the marathon love across the U.S.A. now and try to see our beautiful country in the process. I don’t know if I will manage to get all the states or not, but I think I will have a lot of fun trying!

I usually only go for a day or two when I travel for marathons, but I try to see a couple of things while I am there. Sioux Falls, although it is the largest city in South Dakota, was a small town by my standards. As such, it’s not somewhere I would ever live, but it is charming, and I did very much enjoy my brief visit.

I flew in Friday night. On Saturday morning I went to the Expo to pick up my bib and t-shirt, then headed out for a little sightseeing. I walked around downtown, went into Zandbroz Variety, a quirky and cool store, ate at Pho Thai Sioux Falls, then ventured off to Garretson and visited Devil’s Gulch, Split Rock Park, and Palisades State Park.

The marathon course was serene, and mostly flat, with some rolling hills. It was hot and full sun for all but the first hour. After my experience at the Area 13.1 Alien Half Marathon last weekend, when I very nearly needed Medical after the race from heat exhaustion, I was extremely cautious in the heat. Heat and full sun affect me so much. I managed to avoid the same fate this weekend by dialing it back.

I finished with a time of 4:29:31, and 26.64 miles. It felt like eternity. The voices in my head were not my friend after a couple of things went mildly wrong during mile five. Something started making me cough. Thank goodness that eventually went away, but not for a couple of miles. I had a gel explode in my hands during mile six. Ugh. So gross. When I was trying to get the gel off my hands, I ended up with some of it on my chin, where it remained for the duration of the race (so I had to edit myself out of a lot of the video footage I took, because I looked ridiculous). Then, the Volta died. It had begun to feel heavy as well, as I was trying to hold it way above my head, which was not great running form and not sustainable.

For the record, the GoPro Volta does not last 4 hours like it says it does. I threw away the box or I might return it. I removed the camera from it, pulled the battery out and reset the GoPro during mile seven. By the time I was done with all that it was mile eight, hot and sunny, and I was not in the best part of the course. That’s when the voices began to work against me. All the inner complaining I fought with diligence to silence but it sure did persist. It made for a long day. The mind is the toughest battle in an endurance game.

I’m 100% a city girl. People are nice here but there just aren’t enough of them and everything is so spread out. It felt like such a long marathon, and it was a little over the distance but that’s not why it felt that way. While much of it was pretty, it just felt like a long solo run in a very spread out and lonely place to me, and a lot of that is my own fault, I’m sure. It could have been more enjoyable if it were overcast and cool, and if those few dumb things didn’t go wrong, but anyway, it’s done. Whew!

I’m still glad that I came here. I saw some cool stuff and the race experience I had wasn’t _that_ bad, after all. I’m ok and everything. I got it in under 4:30, thankfully. I’m in this life to have experiences, and I have had some while visiting here that I am glad to have had.

But yeah, no small towns for me, other than to visit, and the heat and the Sun are miserable. Give me 50 degrees and overcast, please!

It’s no wonder that “a small-town girl, livin’ in a lonely world, took the midnight train going anywhere.” I totally would.

I made a couple of videos, which I have posted to my YouTube Channel. I made one of the whole “Runcation” experience (about 12 minutes, and yes it is a little cheesy but I think it’s fun), and another of just the marathon (5 minutes 30 seconds), for those just wanting to check out the race. I edited out my suffering, so that others could enjoy the course preview. Be sure to like and subscribe, as I’m going to try to keep doing these marathon runcation videos, and I hope to make some diving videos eventually as well.

Thanks for reading and checking out my videos! I love my internet family!!! 🖤

(I dated this post to the day after the marathon, for timeline purposes, but I really wrote it on 2023-09-06, after finally finishing and publishing my 2 videos.)

I’m going to go ahead and embed both videos here, for people who don’t feel like clicking on a YouTube link.

The Runcation (12 minutes): In this video I check out a cool store downtown and see some sculptures on the Sculpture Walk, eat some Pho, visit several gorgeous state parks, and, of course, run a marathon.
This is just my GoPro footage from running the 2023 Sioux Falls Marathon. I noticed that there really wasn’t a full course preview online that I could find, so I hope you find this useful. It’s a comprehensive look at the full marathon course. (5 1/2 minutes)

freestyle summer – PRP mixtape 7 – Summer 2023

speed skate

I finally thought of the last song for this mixtape, to make it reach 23 songs, a couple of days ago. I put it as the first song because I was so happy when I remembered this one. I didn’t get a mixtape out in July, so there are two for August because this group of songs belongs in the Summertime. This vibe takes me back to the Summers of early middle school, when I’d get dropped off at the skating rink and stay there all day with my speed skates and my Jordache jeans and money for a couple of popsicles, some nachos, and a video game or two. While I did also enjoy classic rock back then as well, and things like ACDC and Rush were sure to bring me rushing to the rink in my black and white striped speed skates, for some reason Latin Freestyle reminds me more of the era. Enjoy!

(…and yes, I know we call them playlists these days, not mixtapes, but I am from the cassette tape era, so that is why I call them)

Here are the other mixtapes: https://pinarosana.wordpress.com/category/mixtape/

Here is my profile on Spotify.

Spotify introduced a new feature in 2023 that allows listeners to exclude a playlist from their taste profile. It’s a great option for when you are listening to someone else’s stuff from their profile, or you have guests visiting, and you aren’t sure you want Spotify crafting playlists for you based upon their taste. If you want to explore my playlists and not have it affect your listening profile and song suggestions on Spotify, here’s how to use the handy “exclude from my taste profile” feature, which was introduced in 2023.

Track # – Artist – Song
1 – Lydia Lee Love – Don’t Take Your Love
2 – Debbie Deb – Lookout Weekend
3 – Shannon – Let The Music Play
4 – Stevie B – Spring Love
5 – Gina Lanze – I Will Carry On
6 – Nice & Wild – Diamond Girl
7 – Johnny O. – Dream Boy / Dream Girl
8 – Lil Suzy – Take Me In Your Arms
9 – Fantasy Girl – Fantasy Girl
10 – Noel – Silent Morning (2002 Mix)
11 – Collage – I’ll Be Loving You
12 – Freestyle – Don’t Stop The Rock
13 – Rockell – In A Dream – Freestyle Mix
14 – Shannon – Give Me Tonight
15 – Pure Pleazure – When Will You Come Back To Me
16 – Lil Suzy – Promise Me
17 – Stephanie Marano – Edge of a Broken Heart
18 – Denine – I’ll Remember You
19 – Marc Anthony – Express Your Feelings
20 – TKA – Maria
21 – Debbie Deb – When I Hear Music
22 – Pure Pleazure – I Need You Now
23 – Newcleus – Jam On It

A Case for Columnstore

Let me start by saying this is by no means a technical document. There are SQL Server giants out there who are doing that excellently. This post is just a recap for myself, and a brief intro for people not in the the industry, maybe, if anyone cases. When I got started with databases, these were not a thing, and they hadn’t really come up for me in the wild, other than theoretically, until recently when I was completely blown away by the performance advantage in my use case. So, I wanted to pay a brief tribute here, for my memory, of the occasion.

I recently had to move a large fact table into a database. After doing so, I really began to appreciate the value of a clustered columnstore index. The table had approximately 2.15 billion rows and was comprised of a bigint (primary key), an int (foreign key), and 2 nvarchar columns, one for key and one for value. The table had to be quickly restored from a replicated production database, which contained the most recent data, and then batch-backfilled from a restored backup of a data warehouse table. The process took most of the day to complete. Once it had finally finished, however, I discovered that the table was basically unusable. The process of replication gave the table the index from the production database, which was a primary key on the bigint ID column. This had worked fine for the 32 million rows in the production database but was impossible to query for the 2.15 billion rows on the reporting server. To give an example, a COUNT_BIG(Id) query had to eventually be killed after an hour because it was holding up replication and other reporting tasks (never mind the fact that this information could more quickly be obtained by querying the sys.partitions Catalong View instead, or the sys.dm_db_partition_stats DMV, since those defeat the purpose of the example and the point of this discussion). There is no telling how long this simple query would have taken had I not killed it. Everything had come to a grinding halt in the attempt. Skipping ahead to the contrasted scenario, once a clustered columnstore index was implemented on the table, the same COUNT_BIG(Id) query finished in 00:00:01, while rows were also being inserted into the table by replication and while the table was also under load from reporting queries.

Why was it so much more dramatically efficient? A columnstore index uses batch mode execution, also known as vector-based execution, which allows SQL Server to process multiple rows, each stored in a separate memory area, at the same time. A columnstore index also reads fewer rows by using rowgroup elimination, in which by storing the min and max of each rowsegment it eliminates the need to read any unnecessary rowgroups. Column elimination, also known as segment elimination, is also possible since, in a columnstore index, the data is organized and compressed by column, so if a wide table only uses several columns in the query, those are the only columns that need to be read from disk. With rowstore, the column values for each row are stored together and are not easily separated. Finally, there can be a huge compression advantage. A columnstore index can provide about 10 times the level of data compression to a B-tree index, the self-balancing tree which is the typical data structure used for indexing row-oriented data pages. This high level of compression allows for a smaller memory footprint. The compression is achieved by columns storing values in rowgroups of similar values, greatly reducing I/O.

Why not just always use columnstore then? A rowstore (or B-tree) table might perform better. Columnstore is best for very large tables, or tables in which you can not predict the filter columns, or if you don’t need all the columns. It is not ideal for tables with frequent updates. Here is some design guidance from Microsoft on the topic.

A few other useful links about the topic:

monsters and mercy – PRP mixtape 6 – August 2023

Kill the Light

I started but didn’t finish this mixtape in time to publish it last month, but today I needed something besides the sound of my own heart beating to get me through whatever it is that I’m feeling right now.

Thankfully, the mixtape was almost done, and I only had to add a few to complete it. I found them easily.

Songs from the experience of my July and August, 2023. Welcome to my world.

Here are the other mixtapes: https://pinarosana.wordpress.com/category/mixtape/

Here is my profile on Spotify.

Spotify introduced a new feature in 2023 that allows listeners to exclude a playlist from their taste profile. It’s a great option for when you are listening to someone else’s stuff from their profile, or you have guests visiting, and you aren’t sure you want Spotify crafting playlists for you based upon their taste. I remember when I made a Latin music playlist and then it took forever to get Spotify to stop sending me Reggeton in my Discover Weekly. It got very annoying after a while. Sure, I love musica Latina, but it’s not my overall profile. I was just on a binge listen for a bit. Anyway, here’s how to use the handy “exclude from my taste profile” feature, which was introduced in 2023.

Track # – Artist – Song
1 – Korine – Cruel
2 – Minuit Machine – Honey
3 – Twin Tribes, Nite – Upir – NITE remix
4 – House of Harm – In Threes
5 – Empathy Test – Monsters
6 – Deus Ex Lumina – Take Me Away
7 – Nosferatu – Silver
8 – The Cure – It Can Never Be The Same – Live
9 – ††† Crosses – This Is a Trick
10 – Madrugada – Norwegian Hammerworks Corp.
11 – The Cult – Give Me Mercy
12 – Goldfrapp – Ocean
13 – The Mission – Deliverance
14 – Forever Grey – Labor of Death
15 – ACTORS – Post Traumatic Love
16 – Rosetta Stone – An Eye For The Main Chance
17 – HOST – Hiding From Tomorrow
18 – The Chameleons – In Shreads
19 – Soulsavers – Take Me Back Home
20 – Aron Wright – I Don’t Believe in Satan
21 – The Gutter Twins – The Stations
22 – Swans – Power and Sacrifice
23 – System Syn – Kill the Light