Bring a large pot of salted water to a boil. Add spaghetti and cook until al dente. Drain and keep warm.
While pasta is cooking heat a large frypan over medium-high heat. Place olive oil, butter and liquid from artichoke hearts in frypan. Cut artichoke hearts into bite-size pieces. When olive oil mixture is hot, add onion and garlic. Saute until soft and lightly browned.
Stir in artichoke hearts and saute until heated through. Season with salt, black pepper, cayenne pepper and oregano. Remove from heat and stir in cottage cheese and sour cream. Toss mixture with cooked pasta and top with Parmesan cheese.