瑞艾特

2010年9月10日 星期五

MongoDB用Java寫Map/Reduce的方法

官方的API
http://api.mongodb.org/java/2.1/index.html

public MapReduceOutput mapReduce(String map,
String reduce,
String outputCollection,
DBObject query)
throws MongoException

最讓人迷惑的,應該就是String map和String reduce這二個參數吧,
參考http://github.com/mongodb/mongo-java-driver/commit/fa003adc5db8a6c4efe0279c74973af15d99e6ed
簡單的說,就是硬上就對啦,
String m = "function(){ for ( var i=0; i<this.x.length; i++ ){ emit( this.x[i] , 1 ); } }";
String r = "function(key,values){ var sum=0; for( var i=0; i<values.length; i++ ) sum += values[i]; return sum;}";
coll.mapReduce(m , r , null , null);
就搞定。

2010年8月16日 星期一

連上遠端的HBase

        hbConfiguration    =    new HBaseConfiguration();
        hbConfiguration.set("hbase.zookeeper.property.clientPort", dbPort);
        hbConfiguration.set("hbase.zookeeper.quorum", dbSite);

        try
        {
            hbAdmin    =    new HBaseAdmin(hbConfiguration);
            System.out.println("connectioned");
        }
        catch (MasterNotRunningException e)
        {
            System.out.println("connection fail");
            e.printStackTrace();
        }

2010年8月2日 星期一

以(0,0)為中心,90度為單位向右旋轉座標速算法

向右轉90度:x和y對調後,新的x*-1。
向右轉180度:x、y各自*-1。
向右轉270度:x和y對調後,新的y*-1。

2010年4月3日 星期六

Python,比我想像的還合我的胃口

  • 多重繼承
  • 執行期改變Class
  • 執行期改變繼承鏈
  • 動態型別
  • 運算子覆寫
這些都是春節時想在as3上實現的功能,
想不到Python全有…
連實作的方法也和春節時做的AdvancedObject相仿…

缺點:
  • 變數名稱只能用底線和英數字
  • 殘缺的物件導向,缺乏封裝
  • 部份語法詭異

2010年3月31日 星期三

ActionScript 3.0 Closure(封合、閉鎖) 初探

初步測試,運作良好。
使用getPow這個函式工廠取回的function中的傳入值v,正確的被記住。
下一步測試其範圍。

2010年3月30日 星期二

[食譜]梅子綠茶啤酒

材料:梅子綠茶(大瓶)。
作法:

  1. 直接對嘴喝到剩四分之一。
  2. 蓋上瓶蓋。
  3. 靜待二天的醞釀。
  4. 神奇的事就這樣發生了…

附註:好孩子千萬不要喝喔,不然醫生叔叔等著你。

2010年3月9日 星期二

方法名稱翻譯器




追蹤者