Is it appropriate to run Spearman on a tiny dataset? Is it appropriate to do any statistical measures (apart from descriptive) on such a tiny dataset?  Spearman's correlation coefficient for example gave a result of s = 0, rho = 1, p = 0.01667 but I'm not sure how meaningful that actually is - is all it's really saying is that they're ranked in the same order?
cancer     tweets  clinicalTrials  
Lung        4323     1956  
Colorectal  2968     966  
Breast      16206    2941  
Prostate    3944     1599  
Pancreas    2236     763  

 A: Yes, I think it's meaningful. While this test is essentially comparing ranks, it does tell you the chance that this pattern is caused by coincidence, so I think it's meaningful to show that that chance is low because the effect seems so large. If you had a really large sample and a correlation of 0.01 that was significant, I wouldn't have considered it very meningful.
EDIT:
Based on the commentary I tried a simulation to test it. If we have two variables with 5 values (no ties) each and we randomize the order of both, what is the empirical probability to get such an extreme result as a perfect match or a perfect reversed order (for a two-tailed test)?
set.seed(1)
a <- NULL
b <- NULL
c <- NULL
d <- NULL
for (i in 1:100000) {
  a <- sample(1:5, 5)
  b <- sample(1:5, 5)
  c[i] <- sum(as.numeric(a==b))
  d[i] <- sum(as.numeric(a==order(b, decreasing=T)))
}
table(c)[5]/100000
table(d)[5]/100000

0.00828 # chance for same order or ranks
0.00823 # chance for reversed order of ranks

So the probability for a perfect match or a reversed order combined is 0.01651 in this experiment. Quite close to the p-value that you get from testing the Spearman correlation in R (without the "exact" command). I think this indicates that the association is unlikely to be caused by coincidence.
EDIT 2:
The numbers seem to represent percentages of tweets and trials that concern each cancer type. I assume that there are many trials and tweets of each type. If you use the real numbers instead and create two variables with 5 rows each, containing the real number of tweets and trials, you can then perhaps run a Poisson regression. I think this makes sense because you measure counts of something, and you can then model the number of tweets as a function of number of trials.
EDIT 3:
Using the actual numbers, we can try a quasi-poisson regression (the quasi- part allows for overdispersion which we'll have in this data). I'll try to predict the number of tweets from the number of trials (though the opposite could also be done, of course). Note that the number of clinical trials is divided by 1000 to make the interpretation easier:
tweets <- c(4323, 2968, 16206, 3944, 2236)
trials <- c(1.956, 0.966, 2.941, 1.599, 0.763)
model <- glm(tweets ~ trials, family=quasipoisson)
summary(model)

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   6.8251     0.2875  23.738 0.000164 ***
trials        0.9547     0.1205   7.921 0.004195 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for quasipoisson family taken to be 256.1175)

So the number of trials is highly significant in predicting the number of tweets. The model assumes a base number of tweets of exp(6.8251) = 921, and for each 1000 trials the number of tweets in this model is multiplied with exp(0.9547) = 2.6.
I think there are some problems with this model, but together with the calculation of Spearman's correlation, I think it's safe to say that there are clear indications that there is a strong relationship between the numbers of trials and tweets.
