2016年4月21日 星期四

mongoDB .Net Driver 使用 MapReduce

目前有一個需求,在 mongoDB的一個 collection,有一個屬性 created_date記錄資料建立時的日期,我希望利用這個屬性,以30天為一個單位找出每個間隔日期,在關連式資料庫會使用如下 SQL來完成需求:

SELECT CONVERT(varchar(10), DATEADD(d, (datediff(d,GETDATE(),created_date) /30)*30,GETDATE()),111)
 FROM [DATA].[dbo].[expense]
 group by CONVERT(varchar(10), DATEADD(d, (datediff(d,GETDATE(),created_date) /30)*30,GETDATE()),111)

這樣捉出來的資料如下:
2015/12/23
2015/10/24
2015/11/23

而我的專案是 ASP.Net MVC 5,所以有使用 mongoDB .Net Driver 2.2,一開始利用 LINQ寫法如下:
 var query = fRepo.GetAll().GroupBy(x =>
             DateTime.Now.AddDays(((int)(DateTime.Now.Subtract(DateTime.ParseExact(x.Date, "yyyy/MM/dd", System.Globalization.CultureInfo.InvariantCulture)).TotalDays) / Day30) * (-1 * Day30)).ToString("yyyy/MM/dd")
      
           ).Select(x => new DayPeriod { date1 =x.Key) }).OrderBy(x => x);

2016年3月31日 星期四

Docker for Mac and Windows Beta

文章來源:Docker for Mac and Windows Beta: the simplest way to use Docker on your laptop

之前在 windows上是使用 docker toolbox安裝 docker machine,再產生 virtualbox的 docker machine vm,以後就不用囉,有興趣的朋友可以試試

2016年3月11日 星期五

Java script chart

參考文章:15 JavaScript Libraries for Creating Beautiful Charts

這篇文章可以找到很多 chart元件可以使用,但有一些是沒有圖的物件,是要再額外再引用其它 library才可以。有的元件並非完全免費,有商業的版本,我測試後的分享如下:

ChartJS 目前專案有在使用,免費,目前版本 1.0.2,直接好用(但我更懷念那時開發 Flex程式就有內建的 Chart,那才是好用),今年應該會出 V2的版本

Chartist 還沒使用過,應該也是免費,但官網的 demo還不錯,可以試試

Google Chart 應該很多人在用,直接引用網路上的 library即可

Highcharts 商業用途必需收費,動畫方面表現好

Fusioncharts 商業用途也是要收費,使用免費版會有浮水印

Amcharts 有免費版但畫面都會出現官網連結,圖很多可以試試

CanvasJS 商業用途也是要收費,強調速度快

Angular-FusionCharts Angular + Funcsioncharts,有使用 Angular可以直接試試

2016年3月1日 星期二

Docker Cloud 發表

新聞連結:Announcing Docker Cloud
文件:Docker Cloud Documentation
入口: cloud.docker.com
論壇:forums docker cloud
先來測試吧~~~


.Net MongoDB Driver 學習文件

.NET MongoDB Driver Documentation (2.2),有在用 C#和 MongoDB開發相關系統的,這邊可以找到如何用 LINQ和其它技巧加速你的開發

MongoDB 管理工具

MongoDB Integration and Tools Admin UIs  , 2016 Best MongoDB GUI 這邊有介紹多個管理工具,第三方的大部份都是用 Node.js寫的,目前我只用過 NoSQL Manager for MongoDB試用版,因為它是 windows的,裝了就可以用,跟你使用 PL/SQL Developer連 Oracle DB是差不多的。如果不想直接下指令的可以參考看看,當然還有更強大的功能可以管你的 mongoDBs.

2016 Best MongoDB GUI