原创 VSCode遠程連接開發機.md

背景 VSCode可以使用插件遠程連接開發機來進行文件的編輯,這樣就不用再登錄到服務器上進行命令行操作修改文件了,可以提高在服務器上編寫文件的效率。 過程 遠程主機安裝ssh-server 如果已經安裝了可以忽略,沒安裝的可以在

原创 MySQL中查詢表的總行數該用什麼命令?

背景 我們經常會使用到一個SQL語句,就是查詢某張表的總行數。常常使用的查詢命令有幾種,比如:select count(*) from t,select count(id) from t(id爲主鍵),select count(1

原创 Golang的值接收者與指針接收者

背景 Go語言中有着面向對象的思想,當我們創建了一個類型之後,可以給這個類型添加不同的方法,給類型添加方法的方式類似於創建一個函數,只是在func和函數名中添加一個(類型名 類型)。這個東西就是所謂的接收者,也就是類型作爲接收者接

原创 Warning: (1265, u"Data truncated for column 'XXX' at row 1")問題解決

背景 在使用MySQL數據庫時,有時會遇到Warning: (1265, u"Data truncated for column ‘XXX’ at row 1")這樣的報錯信息。 具體可以考慮哪些問題呢?這裏簡單記錄一下問題原因與

原创 MySQL中常用於檢索的字符串字段如何創建索引?

背景 我們在業務場景中經常會碰到通過某個字符串查詢對應記錄的情況。比如常見的郵箱登錄、或是手機號登錄。 如果不給它創建索引,則MySQL就會進行全局掃描,非常耗時。那麼,類似郵箱地址這樣的字符串,我們應該如何給它創建索引呢?這裏簡

原创 在Mysql中執行一條SQL,會經歷什麼?

背景 我們都經常使用Mysql作爲數據庫來存儲與查詢較常用的數據。當我們輸入一行如SELECT * FROM table_name WHERE id=26這樣的語句之後,Mysql如果正確執行的情況下,會輸出你想要的信息。 那麼,

原创 mysql報錯:2003, "Can't connect to MySQL server on ' ' [Errno 99] Cannot assign requested address 解決方法

背景 使用Python腳本高併發的連接Mysql數據庫時遇到了此報錯。 但是場景不僅限於Python,其它程序在高併發連接Mysql數據庫時也可能會遇到此問題。 原因定位 出現該報錯信息是因爲在高併發連接Mysql數據庫時,由於同

原创 Druid安裝(單機環境)

背景 本篇文章將簡單介紹Druid在單機上的安裝與安裝過程中可能會遇到的問題。主要目的是供初次接觸Druid的同學瞭解Druid所用。 準備工作 軟件 Java8(8u92+) Linux或其他類Unix系統 硬件 4CPU

原创 Apache Druid設計——Segment

原文鏈接:http://druid.apache.org/docs/latest/design/segments.html Apache Druid在segment文件中存儲數據指標,s

原创 Apache Druid介紹

原文鏈接:http://druid.apache.org/docs/latest/design/index.html 什麼是Apache Druid? Apache Druid是一個專爲

原创 數據結構之堆

什麼是堆 堆是一種特殊的樹,需要滿足兩點要求: 是完全二叉樹 每個節點都大於等於(或小於等於)其左右子節點 注:每個節點都大於等於其左右子節點的叫做大頂堆,每個節點都小於等於其左右子節點的叫做小頂堆。 堆的操作 往堆中插入一個元

原创 數據結構之紅黑樹

紅黑樹的由來 紅黑樹的引入是用來解決二叉查找樹在頻繁的插入、刪除操作的情況下,可能會出現的性能快速退化的問題。二叉查找樹最壞的情況下可能退化爲鏈表,成爲O(n)O(n)O(n)的時間複雜度。 用來解決這種問題的二叉查找樹叫做平衡二叉查

原创 數據結構之二叉樹基礎

樹是什麼 計算機中的樹是一種數據結構,它是由n個有限節點組成一個具有層次關係的集合。把它叫做樹是因爲它看起來像一棵倒掛的樹,也就是說它是根在上而葉子在下。 樹的特點 每個節點有零個或多個子節點 沒有父節點的節點稱爲根結點 每一個非根

原创 算法之二分查找

概念 二分查找針對的是一個有序的數據集合,查找思想有點類似分治思想,每次都通過跟區間的中間元素對比,將待查找的區間縮小爲之前的一半,直到找到想要查找的元素,或是區間被縮小爲0。 時間複雜度 二分查找的時間複雜度爲O(logn)O(lo

原创 算法之遞歸

何時用遞歸 需滿足三個條件: 一個問題的解可以分解爲幾個子問題的解 這個問題與分解之後的子問題,除了數據規模不同,求解思路完全一樣 存在遞歸終止條件 使用遞歸時注意要點 要注意避免堆棧溢出 要注意不要過量的重複性計算(可以利用m