原创 java設計模式示例

創建模式 1.工廠方法模式(Factory Method)  將程序中創建對象的操作,單獨出來處理,創建一個產品的工廠接口,把實際的工作轉移到具體的子類。大大提高了系統擴展的柔性,接口的抽象化處理給相互依賴的對象創建提供了

原创 java+db 樹的存儲和查詢

存儲樹形結構有很多種方式 1 存儲父的ID 2 存儲樹的前序、中序、後序等關係 3 存儲左右節點的順序   第一種呢,數據存儲比較簡單,但是應用層構造樹的時候,會比較複雜,畢竟遞歸性能不好。 第二、三種插入節點的時候 計算節點的順序比較

原创 java+db 樹的存儲和查詢

存儲樹形結構有很多種方式 1 存儲父的ID 2 存儲樹的前序、中序、後序等關係 3 存儲左右節點的順序   第一種呢,數據存儲比較簡單,但是應用層構造樹的時候,會比較複雜,畢竟遞歸性能不好。 第二、三種插入節點的時候 計算節點的順序比較

原创 strom之nimbus

Storm Storm的主線主要包括4條:nimbus, supervisor, worker和task。 Nimbus 要了解nimbus的具體做的操作,可以從提交一個topology的流程開始。 1.1  Prepare Nimbu

原创 Twitter Strom UI

解釋下storm ui上各項屬性的含義。 1. mainpage     首頁主要分爲3塊:     a. Cluster Summary     Nimbus uptime: nimbus的啓動時間     Superviso

原创 JAVA多線程

Java併發編程---學習筆記 1.   多線程 Java併發編程是採用多線程進行編程。多線程的引入可以提高程序運行的效率。 1.1     線程 創建一個線程一般有三種方法: 1.1.1 Runnable (1) 創建一個實現了R

原创 CAP理論

CAP理論由Eric Brewer在ACM PODC會議上的主題報告中提出,這個理論是NoSQL數據管理系統構建的基礎,如下圖所示: ▲CAP理論   其中字母“C”、“A”、“P”分別代表以下三個特徵: ·強一致性(Co

原创 ZeroMQ之消息丟失解決方法

圖中所說的"slow join"的解釋如下: Making a TCP connection involves to and fro handshaking that takes several milliseconds de

原创 ZeroMQ之PUB/SUB模式

PUB/SUB模式: 發佈/訂閱模式。該模式是單向的,發佈者send msg, 訂閱者receive msg.  一旦有消息發出,pub會發送給所有的sub。. 模式如下圖: 可以看出發佈者綁定綁定一個端口,訂閱者通過連接發佈者接受訂閱

原创 Mahout介紹

What is Mahout, why need it? Mahout 是機器學習和數據挖掘的一個分佈式框架,區別於其他的開源數據挖掘軟件,它是基於hadoop之上的; 所以hadoop的優勢就是Mahout的優勢。官網http://m

原创 數組轉換成字符串

不建議用if來判斷是否是數組的最後一個元素   public static void main(String[] args) throws ParseException { int[] arr = { 0, 1, 2,

原创 數組轉換成字符串

不建議用if來判斷是否是數組的最後一個元素   public static void main(String[] args) throws ParseException { int[] arr = { 0, 1, 2,

原创 Hbase簡介

HBase簡介 HBase – Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分佈式存儲系統,利用HBase技術可在廉價PC Server上搭建起大規模結構化存儲集羣。 HBase是Google Bigta

原创 ZeroMQ之PUSH/PULL模式

PUSH: 用於發送消息,定義一個zeromq的socket實例,用於send msg PULL: 用於接收消息,recv msg API:http://api.zeromq.org/ push/pull模式如下圖:(圖源自http://

原创 樹的存儲和構建

在關係型數據庫中,經常需要存儲樹狀結構的數據。 1. 通常的做法是每個子節點上增加父節點。 例如: ID(節點ID) Data(數據) ParentID(父節點ID) 分析:這種存儲結構在DB層來說很簡單,只需要增加一個字段。 J