發表文章

目前顯示的是 2020的文章

【MongoDB】複製

複製機制(Replication):備援機制,提升資料庫的可用性。利用「成員」來操作。 備援需 非同機備援 / 異地備援 命令:mongod --replSet "rs0" 成員身分: 主要primary 次要secondary 裁判:不儲存任何資料,只在主要成員發生連線異常時,負責從「次要」成員中挑選一個提昇為「主要」成員。 Replica Set設定至少需3台電腦:1主要、2個次要成員,用heartbeat檢測成員是否在線。 localhost:在打開gui MongoDB連線時會顯示。

【Cloudflare】SSL憑證+wordpress Post SMTP設定

圖片
Cloudflare SSL憑證 新增帳號、網域 修改Nameserver:從原本的主機商(原本在Freenom註冊網域 )中修改,把Freenom改成Cloudflare給的Nameserver,這樣就可以在Cloudflare中管理DNS紀錄。 讓Cloudflare分析你的網域DNS紀錄,Cloudflare會叫你至少設定 網域名稱的A紀錄 (主機的IPv4位置)、 www的A或CName紀錄 (同樣也是主機的IP)、 網域名稱的MA紀錄 ( 郵件伺服器 ,可以上網查詢到很多郵件伺服器,能同時有很多個紀錄,通常會有固定的優先順序,例如:aspmx.l.google.com 優先順序為1) 要使用SSL憑證就必須把網域名稱、www(網域別名)的A紀錄的Proxy狀態打開,這時你的IP位置必須是 固定IP 才能通過Proxy處理。 DNS設定好後,可以進入SSL/TLS設定,在概觀中選擇 彈性 。 然後進入【邊緣憑證】往下滑可以看到你的網域的狀態是Active,就表示SSL有正確的被啟動。 往下滑,將【一律使用 HTTPS】的按鈕開啟。 然後到【網頁規則】中建立網頁規則:在你的連結網址前後加上*號,以確保所有子連結都可以使用HTTPS。例如:http://*你的網域名稱/* 回到你的網站中重整檢查是否成功啟動HTTPS。 wordpress Post SMTP設定 「教學」WordPress 安裝 Post SMTP 使用 Gmail 帳號寄信 在【設定小幫手】中設定你的電子郵件 郵件伺服器要填你在Cloudflare的DNS中設定的MX紀錄的伺服器名稱,或者你可以將他自動偵測到的伺服器名稱加入你的DNS紀錄中。 通訊端選擇預設的即可。(如:SMTP - gmail.com:25) 登入 Google API Console設定Gmail API(照1.的教學操作)取得驗證,填入用戶端ID及密碼。 擴充功能可以直接跳過。 回到Post SMTP,要求 Google 授予權限。 完成後,會顯示「 Post SMTP已設定完畢 」 發送測試郵件:指定收件人、下一步出現「 傳送成功 」檢查一下你的信箱有沒有收到信,可能會出現在垃圾郵件中。(或許是和 SMTP的郵件伺服器 與 DNS的MX紀錄 之間的設定有關)

【MongoDB】聚合

聚合(aggregate):將很多次的單一查詢結合成一次。透過平行分散式運算處理。在MongoDB內進行資料分組與統計,優點:不需要傳輸所有的原始資料。 mapReduce(MR):透過最少2個、最多3個的資料處理階段,將資料轉換成聚合的結果。需要自己寫javascript程式(查詢Query)。 篩選和排序 分組(對映map):自訂程式 計算(歸納reduce):自訂程式 吐出結果(設定輸出位置/定型finalize):自訂變數(欄位) pipeline:以管線的概念來處理大量數據的內容。官方提供的管線操作: 篩選$match 分組$group 映射$project 輸出$out

【Mongo】cmd命令

圖片
  解決 'mongo' 不是內部或外部命令、可執行的程式或批次檔 / 解決 'mongo' 不是內部或外部命令,也不是可運行的程序的解決方法 @ 空境界 :: 痞客邦 :: (pixnet.net) 可點【瀏覽】找到安裝MongoDB的路徑,新增路徑後重開cmd(需以系統管理員身分開啟),再下mongo命令就可以執行。

【MIS】Beer game

圖片
介紹:  Beer Game 啤酒遊戲 – 特波國際 (top-boss.com) 玩法:扮演 Retailer、 Wholesaler、 Distributor、 Factory,進行交易活動。 除了零售商與消費者間沒有時間誤差外,其他與上下游的送貨都需要時間,玩家必須要想辦法如期取貨以供下游需求,並適時叫貨盡量降低庫存。 若消費者的需求為8,則retailer就需叫8個貨,而它的上游wholesaler也需要叫8個貨以供給 retailer, distributor同樣須向上游factory叫8個貨以提供給 wholesaler。 但因為有時間上的誤差,factory與原物料之間所需時間較短,所以生產啤酒的速度會比送出去給下游的速度快,如何掌控生產與叫貨就是降低cost的關鍵。

【資訊系統設計】Freenom免費網域

教學:  Freenom - 完全免費的頂級網域名稱註冊平台 (.tk,.ga,.ml,.cf,.gq) - 電腦王阿達 (kocpc.com.tw) 首頁選單【service】>【my domains】>網域的最右邊【manage domain】>【manage Freenom DNS】>可修改DNS紀錄: 新增DNS:【name】的欄位寫自己的domain,【Target】的欄位填自己主機的IP(從開始導覽列搜尋cmd開啟【命令提示字元】輸入指令" ipconfig "就可看到自己的IP)確定新增後,把自己的domain作為連結就會開啟wamp的localhost介面。(因為我是以wamp架設) DNS的type有A(主機)、AAAA(IPv6)等等。 TTL是生存時間(time to live),是 DNS 解析的時候在使用的,主要的作用是設定每一筆紀錄在 DNS 快取伺服器所保留的時間。( TTL 是什麼?要設定多久呢? | 哈部落 (30cm.gg) )

【DB】MongoDB基本操作:查詢(Find)

sql--查詢語法都是sql>使用於資料多是數字 nosql--查詢語法都不一樣,使用javascript(JASON檔)>使用於資料多是文字 下載: MongoDB 、 Robo 3T 比較: SQL:     attribute                                              ,tuple             ,table        ,schema NoSQL:attribute datatype(single/array),document  ,collection,ctructure (每一筆資料為一個document,查詢時在同一個collection可直接查詢,若為不同collection間要查詢則需使用另外的方法join) *在系統搜尋【服務】>找到【mongoDB】>右鍵【啟動】>這樣才可以連結到localhost *啟動【Robo 3T】mongoDB的GUI>【local】>右鍵【create database】>展開你的DB>【collections】>右鍵【create collections】>右鍵你的collections【insert Document】 【view Document】預設指令:db.getCollection('___').find({}) 查詢find:.find({屬性:{$運算子:{條件式}}}) 分類: 比較: 等於$eq、大於$gt、小於$lt… 陣列: 某陣列的內部元素符合條件式$elemMatch----找關鍵字(常用): find({document_name:{$elemMatch:{欄位名:/關鍵字/}}}) 某陣列的大小等於某個值$size 邏輯: 有多個條件式需要查詢時用$and 欄位: $exists查詢某個欄位存在(true)不存在(false) $type某個欄位的資料型態(BSON type)

【NoSQL】Mongo

 NoSQL非關聯式資料庫-不需要Schema 文件導向:Web環境下 列式(column):FB 鏈值(key-value):Amazon 圖形資料庫:社交媒體 滿足bigdata的3V(速度Velocity、多樣、資料量Volume)、5V(價值Value、 Veracity) web2.0的資料量龐大,傳統的關聯式資料庫效率不佳 NoSQL-水平擴充:用很多台電腦(每台單價可以不高) SQL-垂直提升:硬體的配備越來越好 結構化:關聯式資料庫 半結構化:用關聯式資料庫會要更多查詢時間 非結構化: *服務→找到MongoDB Server→啟動,將狀態改為執行中 *cmd: >show dbs admin     0.000GB config     0.000GB local       0.000GB >use csmu switched to db csmu >db.students.insert({}) WriteResult({"nInserted" : 1}) >show dbs admin    0.000GB config    0.000GB csmu        0.000GB local      0.000GB >db.student.insert([ { "profile":{name,id} "course":{course_id,course_name,credits} →{name,id,{course_id,course_name,credits}} →array-tape document(階層式)/另外還有純量式 }, { ...第二筆資料... } ]) →jason格式 >show collection students >db.student.count 3 >db.students.drop() true *GUI:Robo 3T MongoDB文件結構設計:schema list反正規化 每一筆資料就是一筆document simple structure(scalar)-純量 csv to jason: csv轉檔json *BIG5會出現亂碼:轉碼→記事本:UTF8編碼→存檔 local>crea

【SQL】上傳mdf檔案

要交作業需上傳mdf檔案時,若沒有在自己電腦裡的SQL先「卸離」使用中的資料庫,則會跳出「無法開啟」的警告提示。 「卸離」:進入SQL→選擇要卸離的資料庫→右鍵「工具」→卸離。會再跳出卸離視窗選擇要卸離的資料庫,按下確定即可卸離。 卸離後或想再修改可以利用「附加」資料庫,來對之前的資料庫進行修改。

【TCGA】資料下載方法

圖片
美國癌症基因體圖譜計畫TCGA (The Cancer Genome Atlas)是一個以促進研究者對癌症的分子機制 了解為目標的實用資源。 TCGA簡介 資料下載方法: 進入 TCGA首頁 ,點選"Using TCGA+" 選入"TCGA Computational Tools",裡面每個連結都是一個tool,我以 The Cancer Proteome Atlas Portal (TCPA) 為範例。 進入頁面後可看到他有三大主題,選一個你感興趣的,例如Patient Cohorts 然後再選一個你喜歡的,例如Summary 然後就可以看到很多資料集,可以點show detail就會有詳細的欄位說明。 之後你可以根據你想要下載的資料集的資訊,去左邊欄位中的"download"找到你想要的資料集並下載。

【Matlab】DICOM檔讀取、imshow

圖片
DICOM影像讀取: RadiAnt DICOM Viewer Matlab: 2D影像可直接讀取: info = dicominfo('000000.dcm'); 讀取檔頭(tag) img = dicomread('000000.dcm'); 讀取數值(image data) figure(1),imshow(img,[]) 秀出影像,[]內是範圍,用來調對比 figure(2),imshow(img,[40-400/2 40+400/2]) figure(1) figure(2) 非2D影像: 需要先分群:一個資料夾下可能有多筆檔案,先分有多少study(檢查),再分study下還有多少個series(檢查種類),再將series下的dcm檔案排序(因為圖檔名順序不代表實際順序)

【SQL】匯入資料、預存程式、自訂函數、觸發程式

圖片
匯入資料 建立資料庫 右鍵>工作>匯入資料 若資料檔案為.txt,則選擇資料來源為flat file source 確定資料規格後按下一步,到最後選擇本機為目的地 確後無誤後,一直下一步、finish 預存程式 影片教學: SQL Server 2012 create a stored procedure 預存優點: 執行效率高:將一些經常使用的操作寫成預存程序,來節省時間。 統一的操作流程:避免使用者操作錯誤。 重複使用:可模組化、使用者皆可呼叫。 安全性:可加密。 預存種類: 系統預存(system stored procedures):sp_開頭,系統本身就有,用來進行各項設定、取得資訊或相關管理工作。 延伸預存(Extended stored procedures):xp_開頭,大多是以傳統的程式語言(例如C++)撰寫而成,其內容不是儲存在SQL中,而是以DLL的形式單獨存在。 自訂預存(User-defined stored procedures):dbo.開頭,會被加入所屬資料庫的可程式性/預存程序中,以物件的形式儲存。 自訂函數 * return --函數最後一個敘述必是return 若要傳回字串,傳回指定變數前不可以有其他return數值的敘述,否則指定變數會被轉為int並轉換失敗。 觸發程式 觸發種類: 條件約束(constraint):直接設定於資料表內,通常不需另外撰寫程式。ex:defult、check 觸發程序(trigger):對單一資料表所撰寫的特殊預存程序。 用途: 檢查是否為合法的更改 進行其他相關資料的更改 發出更改或預警的通知 自訂錯誤訊息 更改原來所要進行的資料操作 檢視表(view)也可以有觸發 種類與觸發時機: after:在資料變動完成後,才會被啟動並進行必要的善後處理或檢查。 instead of:取代原本要進行的操作(保護你的資料表) *觸發程序會在設定的資料表底下顯示,不在「可程式性」底下 觸發程序的暫存表: 新增inserted 刪除deleted *更改的時候新增、刪除兩個表都要看 *check只能在一個資料表底下,after觸發程序可以透過其他資料表來觸發

【SQL】關聯表

圖片
 開啟SQL,打開物件總管詳細資料,點進資料庫,點進需要建立資料庫圖表的資料庫,在資料庫圖表按右鍵以新增資料庫圖表,加入欲畫關聯的資料表。 *要做連結前,資料類型要確認是一樣的才可連結,且要先設主鍵(PK) *更改資料類型後無法儲存圖表 無法儲存之警告:「防止儲存需要資料表重建的變更」 解決方法:在上方工具列選工具→選項→設計師→取消勾選「防止儲存需要資料表重建的變更」

【Endnote+Word】在word上加入文獻引用

圖片
步驟: 打開word,寫些描述,輸入鍵停留在需要引用的地方,在endnote點選欲引用的文章,回到word在工具列點選endnote,選取insert citation的insert select citation,就能自動加入註腳和在文末產生期刊標準的引用文字。 *若在文末已經有其他文字的舊檔加入引用文獻,可能會有錯誤產生,會自動關閉且不會儲存。我的解決方法:另開一個新文字檔,加入引用文獻後儲存,再將文字複製到舊檔中。

【MIS】管理資訊系統Ch1+2

圖片
今天小考題目很難,又跳章節,每個同學都叫苦連天,有人帶了一本厚厚的英文字典,但考試時間只有100分鐘,要如何逐字翻譯再回答問題?看著考卷讓我感覺似乎在考英語能力檢定,而不是管理學…… 以下是我回想今天的考試內容整理出的幾個重點:  Ch1 Information Systems in Global Business 1、Globalization全球化下,對世界經濟會有的影響: Internet has drastically reduced costs of operating on global scale(網路大大降低了全球範圍的經營成本) Increases in foreign trade , outsourcing(增加外國的貿易、外包服務/委外加工) Presents both challenges and opportunities (挑戰和機會) Global economy depends on imports and exports .(全球經濟依賴進口和出口) 2、fully digital firm(全數位化公司) Significant business relationships are digitally enabled and mediated.(以數位化的方式開啟與連接重要的 商業關係 --客戶Customers和供應商Suppliers) Core business processes are accomplished through digital networks.(核心的 商業過程 經由網路來完成) Key corporate assets are managed digitally.(主要的 企業資產 以數位方式來管理) 3、six strategic business objectives(六大戰略商業目標): Operational excellence/Improved Operational Efficiency(提高營運效率):包括精簡任務、改進技術或減少生產浪費。例如:Walmart, information system coupled with state of the art (Walmart有 最先進的 資訊系統) New products, services, and business mo