Coconut Macadamia Nut Pineapple Upside Down Cake

Description
Adapted from here

Pineapple mixture and topping

 * 1 (20 ounces) can pineapple slices in natural juices
 * 1 teaspoon fresh ginger, finely grated
 * 1 tablespoon dark rum
 * 1/2 cup sweetened coconut, shredded
 * 6 tablespoons (3 ounces) unsalted butter, cut into 6 pieces
 * 1/2 cup (4 ounces) light brown sugar, packed
 * 1/4 teaspoon fine sea salt
 * 1 tablespoon lemon juice, freshly squeezed
 * 1 tablespoon dark rum

Cake

 * 1/2 cup sweetened shredded coconut
 * 1 cup (5 ounces) all-purpose flour
 * 1/2 teaspoon baking soda
 * 1/2 teaspoon ground cinnamon
 * 1/4 teaspoon ground ginger
 * 1/4 teaspoon fine sea salt
 * 1/2 cup macadamia nuts
 * 1/2 cup (4 ounces) light brown sugar, packed
 * 6 tablespoons (3 ounces) unsalted butter, cut into 6 pieces
 * 1 large egg, room temperature
 * 1/2 cup sour cream
 * 1 teaspoon fresh ginger, finely grated
 * 1 teaspoon pure vanilla extract

Topping

 * 1) Adjust oven rack to middle position and heat oven to 325°F. Place six 3-inch cake pan on baking sheet, set aside.
 * 2) Select 6 rings of pineapple on paper towel and press another layer of paper towel on top to absorb the juices, set aside until ready to use.
 * 3) Chopped up remaining (4 slices) pineapple and place it in a small sauce pan; add 1 tablespoon of pineapple juice and ginger. Cook mixture over medium heat until almost dry and slightly caramelized. Stir in rum and continue to cook until mixture becomes sticky, about 3 minutes. Remove from heat and stir in coconut, cool mixture to room temperature.
 * 4) Combine butter, sugar and salt in a medium saucepan, cook over medium heat until sugar has melted and fully incorporated. Continue to cook until mixture starts to bubble around the edges, about 3 minutes. Remove from heat and stir in lemon juice and rum (Mixture will bubble up slightly, so be careful). Divide mixture evenly among six baking pans; place reserved pineapple ring, one each in baking pans. Set aside

Cake

 * 1) Combine flour, baking soda, cinnamon, ginger and salt in a small bowl, set aside.
 * 2) In a food processor, add nuts and sugar, process until nuts are finely chopped, about 20-30 seconds. Add flour mixture and process until just combined, 15 seconds. Add butter and pulse until mixture resembles coarse sand, about ten 1-second pulses.
 * 3) Add egg, sour cream and extract; process until smooth, about 5 seconds (scrape bowl if needed). Add pineapple mixture and pulse until just combined, about five 1-second pulses (mixture should not be 100% smooth).
 * 4) Divide batter evenly among cake pans, spread batter evening to pan edges and smooth surface with small spatula. Bake until cake is golden brown and toothpick inserted into center comes out clean, 35-45 minutes. Cool in pan for 15 minutes, invert onto plates. Serve warm or at room temperature.