[PredictionIO]how to build a Recommendation engine via predictionIO Machine Learning Server

Apach PredictionIO是一個用scala語言編寫的open source,

提供RESTFul API幫助我們方便使用recommendation engine,

也有提供client SDK如Java、Python,PHP,同時也是一個可擴展的Machine Learning應用(支援Spark MLib),

並提供各種Engine模板、演算法..等,也相當容易和Spark、MLlib、Hbase、MySQL、Hadoop、Elasticsearch搭配,

簡化並加速可擴展Machine Learning基礎建置管理,透過PredictionIO我們可以從零開始並快速建立一個推薦引擎。

...繼續閱讀 »

[SQL Server]Let's Clear Checkpoint process of In-Memory

Disk的checkpoint主要是將記憶體中的dirty pages和交易紀錄資訊寫入disk,

所以dirty pages的數量和checkpoint作業時間為線性關係,SQL Server會自動調整checkpoint作業頻率(預設60秒),

這樣做是要降低其他應用程式所受到的效能影響,如果減少頻率,則會拉長完成時間,

增加頻率,則會影響效能(資料庫一般I/O活動會大幅增加),

如果沒有特別理由,建議由SQL Server自行決定checkpoint頻率。

...繼續閱讀 »

[Kafka]performance tools

LinkedIn幫Kafka做了很多吞吐量效能測試,他們以RabbitMQ benchmark為範本來進行一連串的效能測試,

單一producer、100 bytes、3x async-replication每秒高達75MB(每秒可發送786432 的message),

sync-replication約40MB(每秒可發送419430的message)。單一Consumer則每秒有89.7MB(每秒可接收940573的message),

三個Consumer約為249.5MB(每秒可接收2616197.12的message),

而End to End的Producer’s latency平均2 ms,一整個讓我驚艷。

...繼續閱讀 »

[C#]Using RX

我之前在開發Consumer API時,對於Message的接收是使用callback function+event,code review時,

同事建議為什麼不用RX來簡化code,並更簡單處理非同步error handle和multiple threads的concurrency問題。

...繼續閱讀 »

[Kafka]Kafka Eagle

目前我使用Kafka-manager 管理公司的kafka cluster,但管理上我覺得有些地方很不方便,

偏偏其中有一點是我個人覺得很重要的,所以昨天就嘗試了Kafka Eagle用來補足Kafka-manager的不足,

另外我也大概玩了KafkaOffsetMonitor(太久沒更新,無法支援kafka 0.10.2.X)和linkedin/kafka-monitor(可支援kafka 0.10.2.X,但太多javascripts錯誤,我改到一半就放棄了)。

...繼續閱讀 »