白雪公主

By , December 21, 2014 2:21 pm

wanqing_snowwhite_01

wanqing_snowwhite_02

《白雪公主》
蒋婉清,10岁

月亮

By , December 21, 2014 2:19 pm

yunshu_moon_01

yunshu_moon_02

《月亮》
蒋云舒,4 岁

Full Text Search: Sphinx on Ubuntu 14.04

By , December 5, 2014 4:08 am

Below is some quick notes on how to setup a simple PHP based website with full text search capability. The content to be searched is stored in a MySQL database, and the full text search engine is Sphinx.

Step 1 – Launch an EC2 instance on AWS, the operating system is Ubuntu 14.04.

Step 2 – SSH into the EC2 instance, install MySQL server and set up a test database. In this demo, our test database have one table “document” with three columns id, uuid, and content. Sphinx will create a search index based on the information stored in the “document” table.

$ sudo apt-get update
$ sudo apt-get install mysql-server
$ mysql -u root -p
Your MySQL connection id is 43
Server version: 5.5.40-0ubuntu0.14.04.1 (Ubuntu)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database test;
Query OK, 1 row affected (0.00 sec)

mysql> use test;
Database changed
mysql> create table document (id int, uuid varchar(80), content text);
Query OK, 0 rows affected (0.01 sec)

mysql> insert into document (id, uuid, content) values (1, 1234567890, 'cloud computing');
Query OK, 1 row affected (0.00 sec)

mysql> insert into document (id, uuid, content) values (2, 1234567891, 'expensive cloud computing');
Query OK, 1 row affected (0.01 sec)

mysql> insert into document (id, uuid, content) values (3, 1234567892, 'green expensive cloud computing');
Query OK, 1 row affected (0.00 sec)

mysql> insert into document (id, uuid, content) values (4, 1234567893, 'scheduling algorithm green expensive cloud computing');
Query OK, 1 row affected (0.00 sec)

mysql> exit
Bye

Step 3 – Install Sphinx

$ sudo apt-get install sphinx search
$ cd /etc/sphinxsearch
$ sudo cp sphinx.conf.sample sphinx.conf

Edit /etc/sphinxsearch/sphinx.conf to reflect your MySQL username and password. Also, find the following SQL statement

       sql_query               = \
               SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \
               FROM documents

and replace it with the following SQL statement (because in our test database, our “document” table only contains three columns: id, uuid, and content.

        sql_query               = \
                SELECT id, uuid, content FROM document

Also, comment out the following two lines in /etc/sphinx/sphinx.conf, because we do not have these two columns (group_id, date_added) in our test database:

# sql_attr_uint         = group_id
# sql_attr_timestamp    = date_added

Then, edit /etc/default/sphinxsearch, change “START=no” to “START=yes“. Then start sphinx:

$ sudo indexer --all 
$ sudo service sphinxsearch start

STEP 4 – Install Apache and PHP

$ sudo apt-get install apache2 php5 php5-mysql
$ cd /var/www
$ sudo chown -R ubuntu:ubuntu html

Step 5 – A Quick Demo PHP Page

Create the following PHP page /var/www/html/sphinx.php, with the following content:

<?php
$conn = new mysqli('127.0.0.1', "", "", "", 9306);
if ($conn->connect_error) 
{
        throw new Exception('Connection Error: ['.$conn->connect_errno.'] '.$conn->connect_error, $conn->connect_errno);
}
 
$resource = $conn->query("select * from test1 where match('green computing')");
$results = array();
while ($row = $resource->fetch_assoc()) 
{
        $results[] = $row;
}
$resource->free_result();
 
var_dump($results);
?>

科里欧迪娜

By , November 30, 2014 6:25 pm

在芬尼安人统治爱尔兰的时代,阿尔斯特的王子,卷发的恰尔班,曾经去过马楠楠的国度

那时,恰尔班是世界上最英俊的男子。他的美貌赛过一切其他王子,就像月亮赛过一切星星。爱尔兰所有已婚和未婚的女人都爱慕他,但是爱尔兰的贵族都憎恨他。芬尼对恰尔班宠爱有加,但是考虑到贵族们强烈的妒忌心,他只好将恰尔班放逐到爱尔兰之外。

恰尔班离开阿尔斯特,一直来到Cairn的海边。在那里,恰尔班独自登上一条细尾的小船。随从们问他:“恰尔班,您这是打定主意要离开爱尔兰了吗?”恰尔班回答说:“是的。在爱尔兰已经没有我的容身之地了。”随从们看着渐渐远去的恰尔班痛哭不止,就像是失去了自己的亲人一样。

恰尔班乘船在海上航行。滔天的波浪在船的两侧此起彼伏。大浪甚至把海地的鲑鱼和卵石都抛到空中。恰尔班的心里感到恐惧,心里暗自说道:“如果在陆地上的话,我肯定可以设法躲过难关。现在可怎么办呢?”

就在他惶恐不安的时候,一位骑手骑着一匹戴着金辔头的黑马朝他飞奔过来。大浪一次又一次地将骑手淹没,但是浪头过去之后,他的身上一点都没有湿。骑手向恰尔班问道:“如果我把你救出来的话,你怎么样答谢我呢?”恰尔班苦笑着说:“我现在两手空空,哪里还有什么东西能够给你呢?”骑手说:“如果我救了你,你要侍奉我。”恰尔班表示同意,骑手就把他拉上马去。他们拖着恰尔班的小船,一直来到应许之地的Tir Tairngaire。在那里他们下了马,经过矮人湖来到马楠楠的领地。人们为恰尔班准备了丰盛的筵席。英俊的僮仆戴着光滑的牛角来往穿梭,他们在竖琴上奏出甜美的音乐充满了整个宫殿。

宴会上来了很多杂耍艺人,有人长着长鼻,有人踩着高跷,有人光着脑袋,有人满脸通红。其中一个杂耍是一个人单腿站立将九根柳木棍高高扔起,然后用一只手把它们一一接住。杂耍艺人们都觉得没有其他人能够完成这个动作。有时他们还故意邀请陌生人来尝试一下,等着看他们出洋相。这一晚,他们表演完后也请一位客人来做同样的表演。他们看见恰尔班在所有人当中相貌出众,举止非凡,就把九根柳木棍塞到恰尔班手里。恰尔班从容地走到屋子中间,无师自通地把这个杂技表演了一遍。

马楠楠的首席魔术师格班有个女儿,也就是银发的科里欧迪娜。科里欧迪娜没有爱上过任何男人,却对恰尔班一见钟情。第二天,她和恰尔班偷偷地乘上小船返回爱尔兰。他们回到爱尔兰南部的Teite海滩。恰尔班首先上岸寻找一只躲藏在森林里的小鹿,把科里欧迪娜一个人留在船里。这时马楠楠的人驾着四十条船追了上来。Iuchnu登上科里欧迪娜的小船,用音乐将科里欧迪娜催眠。一阵巨浪打上岸来,将科里欧迪娜连人带船一起卷走了。

从此,这里的大浪就叫做银发科里欧迪娜的海浪。

马楠楠三次召唤柯马克

By , November 22, 2014 7:28 pm

Conn的孙子、妲珐山的国王柯马克也去过马楠楠的国度。有一天,柯马克独自在妲珐山上,看到一位身穿铠甲的男子向他走来。他相貌高贵,银发飘逸,衣服上绣着金线,脚上穿着白铜靴子。他的肩上扛着一枝金树枝,树枝上挂着九只苹果。树枝晃动时发出的声音令人心旷神怡,能够让人忘记一切疲劳、欲望和忧愁。一个人不管心里有多少烦恼,都会随着这美妙的声音雨消云散。

柯马克和这男子互相问好,并询问他的来历。他说:“我从真理的国度来。那里没有时间也没有衰老,没有压迫也没有哀伤,没有嫉妒也没有骄傲。”柯马克说:“我们这里可不是这样的。我很希望能够得到您的友谊。”这男子说:“我很乐意成为你的朋友。”柯马克问:“那你愿意把这金树枝连同您的友谊一起给我吗?”这男子说:“非常乐意,如果您也愿意给我三样礼物的话。”柯马克说:“非常乐意。咱们一言而定。”

这男子给柯马克留下金树枝就消失了。柯马克回到宫殿里,所有的人都对他手里的金树枝啧啧称奇。他对人们摇了摇树枝,他们就马上进入梦乡,一直到第二天才醒过来。

一年以后,这男子回来索要他的第一个礼物。他说:“今天我要带走您的女儿艾丽。”柯马克说:“不管你要什么,就尽管拿去吧。”于是他就带走了柯马克的女儿艾丽。整个爱尔兰的女人都为王的女儿恸哭流涕。但是柯马克摇了摇金树枝,她们就忘记了悲伤,睡着了。

一个月后,这个男子又来了。这次他带走了了柯马克的儿子卡普里。人们因为王子的夭折悲痛欲绝,茶饭不思,夜不成眠。但是柯马克摇了摇金树枝,人们又一次忘记了悲伤。

这男子第三次来的时候,柯马克问他这回想要什么。他说:“这次我要带走您的妻子依娜。”说完这话,他就把皇后依娜带走了。

但是柯马克再也无法容忍了,他带着随从紧紧追赶。他们追到一片大平原的中央,突然来了一阵迷雾将他们团团围住。等到云消雾散时,柯马克发现狂野上只剩下他一个人。平原上有一座巨大的城堡,城堡的四周围着一道青铜城墙。一座白银宫殿耸立在城堡中央,屋顶的半面铺着白色的羽毛。宫殿的周围有好多西荷的士兵,他们怀里满满地抱着白色的羽毛。但是当他们将羽毛铺道屋顶上时,就会有一阵大风将羽毛吹走。

城堡里有一个烧火的人。他将一棵粗大的橡树放到火上,然后去砍伐另一棵树。等到他将第二棵树带回来时,前一棵树已经烧光了。他就这么周而复始,不停地砍树烧火。柯马克对他说:“这样看着你真是无聊。没有人告诉我你在做什么,我不明白你这样做的意义何在。”

柯马克又来到另外一座巨大的皇家城堡。城堡的四周同样围着一道青铜城墙,城堡的里面有四座宫殿。其中一座是富丽堂皇的皇宫,皇宫的柱子是青铜铸就,墙壁是白银铺成,屋顶上铺着白色的羽毛。草地中间有一眼泉水,从泉水那里分出五条小溪,九棵永不落叶的榛树将小溪覆盖在树荫底下,士兵们都轮流着从小溪里喝水。熟透的榛子从树上掉到溪水里,五条鲑鱼把榛子吃掉,它们吐出来的壳就顺着溪水漂流而下。潺潺的流水比任何歌声都更加好听。

柯马克走进皇宫,一男一女正在里面等他。他们个子很高,身上穿着华丽的衣服。男子身材俊美,和蔼可亲。年轻的女子有一头黄色的秀发,戴着一顶金头盔,比世界上任何女子都要惹人喜欢。皇宫里有一个浴池,热石头自己在水里跳出。柯马克跳进浴池里,美美地洗了个澡。洗完澡后,年轻的女子对那男子说:“起来吧,宫殿的主人。今天我们有一位尊贵的客人。把我们最好的食物拿来招待他吧。”男子站起来说:“我只有七头猪,但是能够养活世界上所有的人。这些猪今天被杀来吃掉,但是第二天又完好无损。”

过了一会,一个厨子走进屋来。他左手抱着一根木头,右手拿着一把斧头,身后跟着一头猪。厨子说:“现在就开始准备吧,因为我们今天有一位尊贵的客人。”接着他杀了猪,劈开木头,生了堆火,将猪放在一口大锅里煮。过了一会,主人问道:“是不是该翻一翻了?”厨子回答说:“光翻是没有用的。每讲一件真实的事情,就会有四分之一的猪肉变成熟的。不然的话猪肉永远都不会熟。”主人说:“那你就先讲吧。”

于是厨子讲了这样一个故事:“有一天,我发现别人的一群奶牛进入我的领地,我就把它们全都关进我的牛栏里。奶牛的主人找上门来,愿意用这把斧头赎回他的奶牛。我放了他的奶牛,换到了这把斧头。我用这把斧头杀猪,也用它来劈柴。劈出的柴火不仅够煮肉,还够给宫殿取暖。更重要的是,这根木头第二天就会完好如初。从那时候起就一直如此。”

主人说:“这确实是件真实的事情。”他们把锅里的猪翻了个面,发现果然有四分之一已经熟了。他们就说:“那我们再讲一件真实的事情吧。”主人说:“这回该我讲了。”

于是主人讲了这样一个故事:“耕种的季节到来了。当我们想要耕地的时候,就会发现地已经耕好耙好,并且播种了小麦的种子。当我们想要收割的时候,就会发现麦子已经收进了粮仓,上面盖着干草。那粮堆从来不见变大也从来不曾变小,从那时候起就一直如此。”

他们又把锅里的猪翻了个面,发现又有四分之一已经变熟了。年轻的女子说:“这回该我讲了。”

于是年轻的女子讲了这样一个故事:“我有七头奶牛和七只绵羊。这七头奶头所产的奶足够应许之地所有的人喝,这七只绵羊剪下的毛可以给世界上所有的人做衣服。”讲完这个故事,锅里的猪有四分之三已经熟了。

柯马克对主人说:“如果这些故事都是真的,那您就是马楠楠,她就是您的妻子。世界上除了您,没有人拥有这些珍宝。是您在应许之地找到了您的妻子,而这些奶牛就是她的嫁妆。”

大家都说这回轮到柯马克了。柯马克就源源本本地讲述了他的妻子、儿子和女儿如何被带走以及他如何追赶并来到这个地方的经过。等他讲完了,整个猪都熟透了。他们把猪切开,并把柯马克的一份摆在他的面前。但是柯马克觉得很难过,他说:“没有家人陪着,我吃一点都不下。”主人就给他唱了一首催眠曲让他进入梦乡。等他醒来的时候,发现身边多了五十位士兵,还有他的妻子、儿子和女儿,顿时惊喜万分。美酒和食物源源不断地给所有的人送上来。柯马克注意到主人手里拿着一只雕刻精美的金杯,赞叹不已。主人说:“这只金杯还有一样特异之处。如果有人对它说上三句谎言,它就会碎成三瓣。如果有人对它说上三句真话,它又会完好如初。”主人对着杯子说了三句谎话,它果然就碎成了三瓣。主人接着说:“为了把它修好,现在得给它说三句真话。自从他们被带到这里,您的妻子和女儿从来没有见过任何男人,您的儿子也从来没有见过任何女子。”话音刚落,碎了的金杯一下子就完好如初。主人接着说:“戴着您的妻子、儿子和女儿回去吧。把这只金杯也带上,这样您就可以判断真假。那枝金树枝我也留给您,供您消遣。但是您死去的时候,这两样东西都会被收回。至于我嘛,我就是马楠楠,李尔的儿子,应许之地的王。为了我们之间的友谊,是我用魔法把您带到这里来过一晚上。”

马楠楠接着说:“那些给屋顶铺羽毛的士兵,代表艺术家、诗人、寻宝者、牧人和守财奴。他们出门谋生,但是一生都积蓄不下什么财产。代代相传,无不如此。”

那个伐木烧火的人,代表年轻的贵族。他们乐善好施,甚至倾其所有。得益于他们的辛勤工作,爱尔兰所有的人都衣食有靠。”

那眼泉水就是智慧之泉,那五条小溪就是知识的河流。既没有喝过泉水也没有喝过溪水的人,目不识丁。喝过泉水或者溪水的人,多才多艺。”

第二天早上,柯马克从睡梦中醒来,发现自己和妻子、儿子和女儿躺在妲珐山的草地上,自己手里拿着金树枝和金杯。这只金杯就叫做柯马克的圣杯,用来在盖尔人当中判断真伪。但是,就像马楠楠所预言的那样,圣杯和金树枝在柯马克死去之后就一同消失了。

Panorama Theme by Themocracy