1)什麼是索引?
索引是一種特殊的檔案(innodb資料表上的索引是表空間的乙個組成部分),它們包含著對資料表裡所有記錄的引用指標。更通俗的說,索引就相當於目錄。當你在用新華字典時,幫你把目錄撕掉了,你查詢某個字開頭的成語只能從第一頁翻到第一千頁。累!把目錄還給你,則能快速定位!
2)索引的優缺點:
可以大大加快資料的檢索速度,這也是建立索引的最主要的原因。,且通過使用索引,可以在查詢的過程中,使用優化隱藏器,提高系統的效能。但是,索引也是有缺點的:索引需要額外的維護成本;因為索引檔案是單獨存在的檔案,對資料的增加,修改,刪除,都會產生額外的對索引檔案的操作,這些操作需要消耗額外的io,會降低增/改/刪的執行效率。
mysql的索引有哪些型別?
mysql目前主要有以下幾種索引型別:
是最基本的索引,它沒有任何限制.
與前面的普通索引類似,不同的就是:索引列的值必須唯一,但允許有空值。如果是組合索引,則列值的組合必須唯一.
是一種特殊的唯一索引,乙個表只能有乙個主鍵,不允許有空值。
指多個欄位上建立的索引,只有在查詢條件中使用了建立乙個字段,索引才會被使用。使用組合索引時遵循最左字首。
主要用來查詢文字中的關鍵字,而不是直接與索引中的值相比較.fulltext索引跟其它索引大不相同,它更像是乙個搜尋引擎,而不是簡單的,其中語句的引數匹配.fulltext索引配合匹配操作使用,而不是一般的where語句加像。它可以在create table,alter table,create index使用,不過目前只有char,varchar,text列上可以建立全文索引。值得一提的是,在資料量較大時候,現將資料放入乙個沒有全域性索引的表中,然後再用create index建立全文索引,要比先為一張表建立全文然後再將資料寫入的速度快很多。
索引是不是越多越好?
答案:是並不是越多越好,原因如下:
1。雖然索引大大提高了查詢速度,同時卻會降低更新表的速度,如對表進行插入,更新和刪除。因為更新表時,不僅要儲存資料,還要儲存一下索引檔案.
2。建立索引會占用磁碟空間的索引檔案。一般情況這個問題不太嚴重,但如果你在乙個大表上建立了多種組合索引,索引檔案的會增長很快。索引只是提高效率的乙個因素,如果有大資料量的表,就需要花時間研究建立最優秀的索引,或優化查詢語句。
索引的資料結構是什麼?
答案:索引的資料結構是b-tree和b + tree
It面試問題
一般第一輪技術面都是來考察你最基本的技術功底。招聘季節,隨處可見抱著厚厚的 程式設計師面試寶典 啃的學生。偶爾也能看見 程式設計之美 劍指offer 的神書。這些經驗書確實有用。但是要想全面的掌握筆試面試的基礎考點,還是需要完整的複習。其實,筆試面試對計算機基礎的考察是萬變不離其宗的。其考點無非分為...
面試 Hbase面試問題
1.hbase怎麼預分割槽?2.hbase怎麼給web前台提供介面來訪問?3.htable api有沒有執行緒安全問題,在程式中是單例還是多例?4.hbase有沒有併發問題?5.metaq訊息佇列,zookeeper集群,storm集群,就可以完成對 推薦系統功能嗎?還有沒有其他的中介軟體?6.st...
面試問題 十大面試問題
在面試中,你會被問到的問題將是 對於許多不同型別的工作,一般問題可以是相同的。以下是一些可以被問到的常見問題。1.你的技能 您的面試官想知道您是否具備完成工作的技能,因此他們可能會問 了解自己的優勢,並提及與您正在接受面試的工作相關的優勢。盡可能提供您之前的工作或生活經歷的例子。雇主尋求的典型優勢是...